Hai ragione. Avevo letto male. Grazie per la precisazione.
Inviato dal mio Redmi 4X utilizzando Tapatalk
Sensori ds18b20 errore lettura
Re: Sensori ds18b20 errore lettura
Questa mattina finalmente ho avuto modo di fare le modifiche suggerite da Flane.
Ho messo una resistenza da 2kohm e per ora sembra tutto funzionare a dovere.
Ho solo un problema con un termometro che non riesco a fare funzionare in nessuna maniera. Ho provato a sostituirlo con uno che mi avanzava e niente. In pratica da putty li vedo correttamente e se li interrogo entrambi mi restituiscono il valore corretto.
Da metern invece nulla da fare. Ho ricontrollato tutti i passaggi e mi sembrano essere corretti. Anche cambiando seriale con l'altro termometro il problema rimane.
Il meterID in questione è il 15
reqsdm:
/etc/cron.d/ds18b20:
Qualche suggerimento?
Ho messo una resistenza da 2kohm e per ora sembra tutto funzionare a dovere.
Ho solo un problema con un termometro che non riesco a fare funzionare in nessuna maniera. Ho provato a sostituirlo con uno che mi avanzava e niente. In pratica da putty li vedo correttamente e se li interrogo entrambi mi restituiscono il valore corretto.
Da metern invece nulla da fare. Ho ricontrollato tutti i passaggi e mi sembrano essere corretti. Anche cambiando seriale con l'altro termometro il problema rimane.
Il meterID in questione è il 15
reqsdm:
Codice: Seleziona tutto
#!/usr/bin/php
<?php
// This script will output a meterN compatible format for the main or live command
// You'll need to setup correct permission
// chmod +x reqsdm.php
// then
// ln -s /var/www/comapps/reqsdm.php /usr/local/bin/reqsdm
// Request command with 'reqsdm tensione' or 'reqsdm corrente' or ......
if (isset($_SERVER['REMOTE_ADDR'])) {
die('Direct access not permitted');
}
if (!isset($argv[1])) {
die("Abording: no valid argument given.\n");
} elseif ($argv[1] == 'tensione') {
$outstr = exec('cat /dev/shm/metern2.txt | egrep "^2_1\(" | grep "*V)"');
} elseif ($argv[1] == 'corrente') {
$outstr = exec('cat /dev/shm/metern2.txt | egrep "^2_2\(" | grep "*A)"');
} elseif ($argv[1] == 'freq') {
$outstr = exec('cat /dev/shm/metern2.txt | egrep "^2_3\(" | grep "*Hz)"');
} elseif ($argv[1] == 'cospi') {
$outstr = exec('cat /dev/shm/metern2.txt | egrep "^2_4\(" | grep "*F)"');
} elseif ($argv[1] == 'cpu-temp') {
$outstr = exec('cat /sys/class/thermal/thermal_zone0/temp');
$outstr = $outstr/1000;
$outstr = "cpu($outstr*°C)";
} elseif ($argv[1] == 'condizionatore-live') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*W)"');
} elseif ($argv[1] == 'condizionatore-main') {
$outstr = exec('cat /dev/shm/metern6.txt | egrep "^6\(" | grep "*Wh)"');
} elseif ($argv[1] == 'pdc-live') {
$outstr = exec('cat /dev/shm/metern7.txt | egrep "^7\(" | grep "*W)"');
} elseif ($argv[1] == 'pdc-main') {
$outstr = exec('cat /dev/shm/metern7.txt | egrep "^7\(" | grep "*Wh)"');
} elseif ($argv[1] == 'tempDS1') {
$outstr = exec('cat /dev/shm/metern12.txt | egrep "^12\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS2') {
$outstr = exec('cat /dev/shm/metern13.txt | egrep "^13\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS3') {
$outstr = exec('cat /dev/shm/metern14.txt | egrep "^14\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS4') {
$outstr = exec('cat /dev/shm/metern16.txt | egrep "^15\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS5') {
$outstr = exec('cat /dev/shm/metern16.txt | egrep "^16\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS6') {
$outstr = exec('cat /dev/shm/metern17.txt | egrep "^17\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS7') {
$outstr = exec('cat /dev/shm/metern18.txt | egrep "^18\(" | grep "*C)"');
} elseif ($argv[1] == 'tempDS8') {
$outstr = exec('cat /dev/shm/metern19.txt | egrep "^19\(" | grep "*C)"');
// and so on ....
} else {
die("Usage: reqsdm (tensione|corrente|freq|cospi|cpu-temp)\n");
}
echo "$outstr";
?>
/etc/cron.d/ds18b20:
Codice: Seleziona tutto
#!/bin/bash
SHELL=/bin/bash
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""
# Minute Hour Day of Month Month Day of Week User Command
# (0-59) (0-23) (1-31) (1-12 or Jan-Dec) (0-6 or Sun-Sat)
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 02119177aef0 12 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 02149177741a 13 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 021491776b0e 14 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 02119177c7b0 15 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 020b91772d4c 16 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 021891775c73 17 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 02119177b5bc 18 > /dev/null 2>&1
4,9,14,19,24,29,34,39,44,49,54,59 * * * * root /usr/local/bin/ds18b20 02119177aaa1 19 > /dev/null 2>&1
Qualche suggerimento?
Re: Sensori ds18b20 errore lettura
Ho fatto un casino. Questa mattina volevo provare ad aggirare il problema creando due nuove righe sotto ai sensori esistenti con dei nuovi ID ma devo aver fatto qualche casino....
Ora non funziona nessun sensore temperatura. Appena collegati da putty si vedevano. Poi una volta modificati i file con i nuovi ID non ha funzionato piu niente. Ora nemmeno da putty vedo più i sensori....
Ecco quello che dice putty:
Qualche suggerimento?
Aggiungo contenuto del file /etc/systemd/system/ds18b20.service
Ho anche copia/incollato i file postati ieri che erano funzionanti ma niente...
Ora non funziona nessun sensore temperatura. Appena collegati da putty si vedevano. Poi una volta modificati i file con i nuovi ID non ha funzionato piu niente. Ora nemmeno da putty vedo più i sensori....
Ecco quello che dice putty:
Qualche suggerimento?
Aggiungo contenuto del file /etc/systemd/system/ds18b20.service
Codice: Seleziona tutto
[Unit]
Description=DS18B20 sensor service
Requires=local-fs.target
Requires=network-online.target
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/ds18b20 02119177aef0 12
ExecStart=/usr/local/bin/ds18b20 02149177741a 13
ExecStart=/usr/local/bin/ds18b20 021491776b0e 14
ExecStart=/usr/local/bin/ds18b20 02119177c7b0 15
ExecStart=/usr/local/bin/ds18b20 020b91772d4c 16
ExecStart=/usr/local/bin/ds18b20 021891775c73 17
ExecStart=/usr/local/bin/ds18b20 02119177b5bc 18
ExecStart=/usr/local/bin/ds18b20 02119177aaa1 19
[Install]
WantedBy=multi-user.target
Ho anche copia/incollato i file postati ieri che erano funzionanti ma niente...
Re: Sensori ds18b20 errore lettura
dal messaggio che ti dà putty, sembrerebbe che il sensore sia scollegato. Prova a verificare il collegamento elettrico.
Re: Sensori ds18b20 errore lettura
Il collegamento elettrico è ok, appena ricontrollato.
Il sensori li ho collegati e li vedevo tutti da putty. Poi ho fatto le modifiche ai vari file come da guida. Da li sono cominciati i problemi.
Il sensori li ho collegati e li vedevo tutti da putty. Poi ho fatto le modifiche ai vari file come da guida. Da li sono cominciati i problemi.
Re: Sensori ds18b20 errore lettura
Ferma i vari servizi e metern e ripristina i vari script come da wiki
Re: Sensori ds18b20 errore lettura
Devo ripartire come una installazione da zero o da un determinato punto della guida?
Chiedo per non fare ulteriori casini visto che per oggi ne ho fatti che basta.....
Grazie.
Chiedo per non fare ulteriori casini visto che per oggi ne ho fatti che basta.....
Grazie.
Re: Sensori ds18b20 errore lettura
Ho riprovato a risistemare i vari scripts come suggerito da Flane.
Ho rifatto tutti i passaggi della guida tranne per questo (non ero sicuro che fosse buona cosa reinstallare il software già installato):
Ho riavviato il tutto ed il problema rimane. Ho testato lo stato del servizio come consigliato in guida con questo comando
Il risultato è il seguente:
La prima parte del risultato mi sembra il linea quello scritto in guida, per quel poco che ne capisco.
La penultima riga mi fa pensare possa essere un problema di collegamento come suggerito da @Carest
L'unica cosa e che si sia bruciata la resistenza. Dovrei controllare.
Qualche altro suggerimento?
Grazie.
Ho rifatto tutti i passaggi della guida tranne per questo (non ero sicuro che fosse buona cosa reinstallare il software già installato):
Ho riavviato il tutto ed il problema rimane. Ho testato lo stato del servizio come consigliato in guida con questo comando
Codice: Seleziona tutto
sudo systemctl status ds18b20.service
Il risultato è il seguente:
Codice: Seleziona tutto
● ds18b20.service - DS18B20 sensor service
Loaded: loaded (/etc/systemd/system/ds18b20.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Wed 2019-10-30 05:51:09 CET; 2min 49s ago
Process: 696 ExecStart=/usr/local/bin/ds18b20 02119177aef0 12 (code=exited, status=0/SUCCESS)
Main PID: 696 (code=exited, status=0/SUCCESS)
ott 30 05:51:09 FTV5kw systemd[1]: Starting DS18B20 sensor service...
ott 30 05:51:09 FTV5kw ds18b20[696]: Traceback (most recent call last):
ott 30 05:51:09 FTV5kw ds18b20[696]: File "/usr/local/bin/ds18b20.py", line 5, in <module>
ott 30 05:51:09 FTV5kw ds18b20[696]: sensor = W1ThermSensor(W1ThermSensor.THERM_SENSOR_DS18B20, address)
ott 30 05:51:09 FTV5kw ds18b20[696]: File "build/bdist.linux-armv7l/egg/w1thermsensor/core.py", line 160, in __init__
ott 30 05:51:09 FTV5kw ds18b20[696]: w1thermsensor.errors.NoSensorFoundError: No DS18B20 temperature sensor with id '02119177aef0' found
ott 30 05:51:09 FTV5kw systemd[1]: Started DS18B20 sensor service.
~
La prima parte del risultato mi sembra il linea quello scritto in guida, per quel poco che ne capisco.
La penultima riga mi fa pensare possa essere un problema di collegamento come suggerito da @Carest
L'unica cosa e che si sia bruciata la resistenza. Dovrei controllare.
Qualche altro suggerimento?
Grazie.
Re: Sensori ds18b20 errore lettura
America ho perso il filo..... Quale è il tuo problema ?
Re: Sensori ds18b20 errore lettura
In pratica non vedo più nessun sensore ne da metern ne da putty. Domenica mattina ho messo le mani dove non dovevo ed ho combinato qualcosa.
Ho messo i vari screen shot e contenuto dei vari file nei post precedenti.
Oggi mi è venuto in mente che possa essere andata la resistenza da 2kohm che mi avevi consigliato di mettere qualche tempo fa. I collegamenti non li ho toccati quindi per escludo problemi di collegamenti. In ogni caso venerdi ricontrollo tutto il discorso collegamenti.
Che ne dici?
Ho messo i vari screen shot e contenuto dei vari file nei post precedenti.
Oggi mi è venuto in mente che possa essere andata la resistenza da 2kohm che mi avevi consigliato di mettere qualche tempo fa. I collegamenti non li ho toccati quindi per escludo problemi di collegamenti. In ogni caso venerdi ricontrollo tutto il discorso collegamenti.
Che ne dici?
Chi c’è in linea
Visitano il forum: Nessuno e 2 ospiti