Работа с digitemp

Модератор: Модераторы разделов

sapsann
Сообщения: 40

Работа с digitemp

Сообщение sapsann »

Добрый день!
Прикрутил достаточно давно к ПК датчик температуры DS1820, год работал он нормально, недавно начал сбоить (показывать 85 градусов). Решил сделать "отстрел" ошибок на программном уровне и написать скрипт:


#!/bin/bash
old=$(cat /srv/www/htdocs/termoz.txt) # считывание предыдущего значения (для отладки)
err='85.0' # значение
trm=$(digitemp -q -a) # опрос датчика

if [ $trm = $err ] ; then
until [ $trm != $err ]; do # проверка на наличии ошибки
echo Warnink $trm # вывод сообщения об ошибке
sleep 5 # пауза в 5 секунд до повторного опроса датчика
trm=$(digitemp -q -a) # опрос датчика
done
fi
echo $trm°C > /srv/www/termo.txt # вывод показаний в файл
echo $trm > /srv/www/htdocs/termoz.txt # вывод показаний в файл

#echo End



Столкнулся с одной проблемой, при выполнении скрипта вручную, скрипт периодически пропускает значение с "ошибкой", в случае выполнения скрипта cron'ом выводится "пустое значение".
Спасибо сказали:
Аватара пользователя
AestheteAnimus
Сообщения: 135
ОС: FreeBSD 8.0-RELEASE amd64

Re: Работа с digitemp

Сообщение AestheteAnimus »

Гм... А датчик менять не пробовали? В исходниках digitetrm пока не копался, но при чтении обычно проверяют контрольную сумму. Так что, если вы получили 85 градусов, то, скорее всего, такое число выдал датчик.
Спасибо сказали:
Аватара пользователя
Portnov
Модератор
Сообщения: 1786
Статус: Матёрый линуксоид
ОС: Debian testing/unstable

Re: Работа с digitemp

Сообщение Portnov »

Вспоминается история (ithappens?), когда товарищ звонил в техподдержку хостера - "у меня на дедике что-то с lm_sensors, показывает 400 градусов!?" - "ой, это у нас пожар в дата-центре" :)
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали:
sapsann
Сообщения: 40

Re: Работа с digitemp

Сообщение sapsann »

Portnov писал(а):
14.03.2010 21:17
Вспоминается история (ithappens?), когда товарищ звонил в техподдержку хостера - "у меня на дедике что-то с lm_sensors, показывает 400 градусов!?" - "ой, это у нас пожар в дата-центре" :)

lm_sensor и digitemp совершенно разные проги и назначение у них тоже разное.
Спасибо сказали: