• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
sensori cam2 luminosità modulo sensore i2c altri e

[Risolto] sensore luminosità, altri sensori I2C e modulo cam2
#61
(03/08/2023, 20:02)speedyant Ha scritto: Se i test in ambiente "controllato" davano esito positivo, ovvero funzionava tutto regolarmente, partendo dal principio che gli alimentatori fossero gli stessi, non escludo un problema nella "qualità" della tensione di rete presente in serra.

Buongiorno,
Effettivamente non ci avevo pensato. In serra c'è un cavo con la 220 a cui ho attaccato una ciabattina con interruttore con l'alimentatore per il modem, la corrente per il faretto e l'alimentatore ufficiale del RPi.
Non so se l'alimentatore è sufficiente ad assorbire eventuali sbalzi o non qualità della tensione di rete.
Posso approfondire
Grazie
Saluti
LaPa
With a little/big help from my friends Rolleyes
Risposta
#62
(02/08/2023, 17:04)ippogrifo Ha scritto: Infatti non devi rinunciare ma individuare cosa manda in tilt il sistema. Ripeti  le prove con un singolo sensore per volta. mantenendo scollegati gli altri.
A maggio, durante la prima prova in campo, quando i miei sospetti principali erano sul sensore luce TSL2561 che andava in saturazione avevo incominciato a provare un sensore alla volta. Speravo che il problema fosse dovuto ad un sensore e che bastava sostituirlo però almeno 2 hanno avuto dei problemi.
Avevo fatto una routine che interrogava il singolo sensore e per ogni interrogazione creava un file col nome dell'ora del rilievo e in caso di errori con il traceback al suo interno però tenendo collegati tutti gli altri.
Il TSL2561 non ha determinato la perdita degli indirizzo I2C
il Sensore bagnatura suolo con indirizzo 22 ha determinato perdita d'indirizzo dopo 7 ore di funzionamento
Il sensore BME280 (T e UR) ha dato perdita d'indirizzo dopo 24 ore.
Prove in campo attuali:
Ho lasciato il RPi acceso per qualche giorno con tutti i sensori collegati ma senza lanciare nessuna interrogazione per capire se le condizioni di serra creano problemi: nessun problema.

Seguendo il tuo suggerimento, ho staccato altri 3 sensori e ho collegato solo il BME280, lanciato la routin che legge ogni 5 minuti e crea il file di verifica.
Dopo circa 24 ore tutto ok.
Lascio che la prova duri qualche giorno poi passo al nuovo sensore luce VEML7700
poi all'altro sensore di bagnatura del suolo https://www.tindie.com/products/miceuz/i...re-sensor/# (quello con indirizzo 24) che non avevo provato la precedente volta ed infine al sensore bagnatura del suolo (con indirizzo 22) che aveva dato dei problemi nella seconda prova di campo proprio perché aveva cambiato indirizzo e sto sostituendo.


Spero non debba fare le misure con il tester in quanto tutte le connessioni sono protette da guaine termorestringenti e dovrei fare degli innesti con terminali di jumper usando il saldatore in serra il che non mi sembra agevole.
In attesa di aggiornamenti vi ringrazio per l'interessamento e per i suggerimenti.
Saluti
LaPa
With a little/big help from my friends Rolleyes
Risposta
#63
Aggiornamento!
Ho provato per alcuni giorni i singoli sensori: BME280 (Temperatura ed umidità relativa) e VEML7700 (Luce) funzionano correttamente. I due sensori di bagnatura e temperatura del suolo (Catnip electronics) invece non funzionano: cambiano l'indirizzo I2C e poi lo perdono.
Ho scollegato solo i sensori che non vanno e attualmente la strumentazione sta funzionando rilevando i 3 dati, in contemporanea sta andando anche la parte multimediale che produce foto (che riportano data ora e 3 dei 7 dati rilevati). Funzionamento ok da 5 gg.
Una cosa importante: ripensandoci ci sono 2 differenze tra il funzionamento a casa e quello in serra:
1) i sensori di umidità del suolo in serra sono completamente interrati mentre a casa erano infilati parzialmente in un vaso.
2) Accanto al RaspberryPi c'è un relay a casa per simulare l'accensione della lampada avevo messo una pila di 9 volt con un led. In serra invece il relay accende una lampada led da 50 watt. collegata alla 220 v. forse questo può creare qualche interferenza.

Ho contattato l'ingegnere che ha progettato e venduto i 2 sensori di bagnatura del suolo e ho descritto il problema vi posto (traduzione con Google traduttore) la mia descrizione e le sue considerazioni e domande, le mie risposte. Sono in attesa di ulteriori repliche. Ma penso che dovrò comprare una nuova versione dei sensori.

Mia descrizione del problema
Citazione:Rispettabile Catnip Electronics, ho usato per diversi mesi due della versione robusta del tuo sensore di umidità del suolo I2C, con script Raspberry Pi e Python, in una pianta in vaso a casa mia. Uno dei due sensori ho cambiato l'indirizzo I2C da 24 a 22. Ha funzionato molto bene per più di un anno. Il Raspberry Pi ha altri due sensori I2C: BME280 e VEML7700. Quando ho provato lo stesso strumento in serra. Per evitare il problema dei cavi lunghi con connessioni I2C ho aggiunto un estensore LTC4311 I2C e uno step-down da 5 V a 3,3 V. Inoltre ho sostituito i cavi di tutti i sensori con cavi ethernet cat 5e. Il BME280 e il VEML7700 stanno funzionando bene in serra, invece i due vostri sensori di umidità del suolo sono cambiati dopo poche ore lavorando improvvisamente all'indirizzo I2C da 22 o 24 a 05. Ho cambiato lo script per continuare a funzionare ma i valori dai sensori erano fuori range. Successivamente i sensori hanno cambiato nuovamente l'indirizzo I2C. La differenza tra la mia casa e la serra è che nella serra i sensori di umidità del suolo sono completamente interrati. Ora vado a sostituire i tuoi sensori hai qualche consiglio per evitare problemi?

Risposta

Citazione:Ciao,
Riesci a ricordare, quando approssimativamente hai acquistato i sensori? La comunicazione I2C spuria potrebbe far sì che il sensore interpreti il ​​rumore come un comando di modifica dell'indirizzo, ma ho implementato una soluzione alternativa per questo problema molto tempo fa nel firmware del sensore. Cose da provare: velocità del bus I2C inferiore, valore inferiore dei resistori di pullup, assicurarsi che non vi siano diafonia sulle linee I2C da altri segnali. Dici di aver implementato la connessione tramite cavo cat5: come sono configurate le linee I2C nel cavo? Sono sullo stesso doppino intrecciato? Ci sono altri segnali nel cavo, come forse un'alta potenza commutata su solenoidi o pompe?

Risposte mie alle sue domande



Citazione:Grazie per la tua risposta:
"Ricordi, quando approssimativamente hai comprato i sensori?"
Ho comprato i sensori nel 2018. Ho quelli giusti?

"Dici di aver implementato la connessione tramite cavo cat5 - come sono configurate le linee I2C nel cavo? Sono sullo stesso doppino intrecciato?"

Il cavo Cat5 ha 4 doppini intrecciati: bianco-arancio, bianco-verde, bianco-marrone, bianco-blu, un filo di rame nudo e la rete di schermatura. Lato RaspberryPi ho usato un solo filo verde di doppino twistato bianco-verde per SDA, un solo filo blu di doppino twistato bianco-blu per SCL, due fili bianchi di doppino twistato bianco-verde e di doppino bianco-blu saldati insieme per 3.3 V, l'unico filo marrone del doppino twistato bianco-marrone, il filo di rame nudo e la rete schermata saldati insieme per la massa.
lato sensore: il filo di terra, il filo di rame nudo e la rete schermata saldati insieme.

"Ci sono altri segnali nel cavo, come forse un'alta potenza commutata su solenoidi o pompe?" Vicino al RaspberryPi c'è un relè che accende e spegne la lampada a 220 V. Il filo della lampada è abbastanza vicino ai fili di due sensori di umidità del suolo.
Distinti saluti
LaPa
Benvengano suggerimenti e considerazioni.

Grazie per l'attenzione

Saluti

LaPa
With a little/big help from my friends Rolleyes
Risposta
#64
Il problema con i relè meccani è lo scintillamento dei contatti in fase di apertura degli stessi. Come è pilotato il relè? Per verificare una possibile interferenza, scollega la lampada o ripristina il circuito come simulato a casa. Sempre come prova puoi posizionare i sensori di umidità come a casa e vedere se cambiano indirizzo. Nel caso potresti utilizzare un relè a stato solido che possono essere pilotati direttamente da un pin del Pi.
Risposta
#65
anche questo
Citazione:1) i sensori di umidità del suolo in serra sono completamente interrati mentre a casa erano infilati parzialmente in un vaso.
completamente interrati che significa? anche i terminali dove arrivano i cavetti? in quel caso l'umidità del terreno potrebbe metterli in collegamento tra loro creando un corto circuito anche se non netto, che resetta il sensore.
Risposta
#66
Nelle specifiche sono indicati come "rugged", quindi teoricamente impermeabili. Già dalle foto viste precedentemente qualche dubbio mi era venuto. Senza averne uno tra le mani, però il tutto è aleatorio.

P.S.
Quale modello di sensore hai? Nelle modalità di installazione è indicata la max profondità raggiungibile: sino alla riga bianca sul case. Se così non possono essere interrati.
Risposta
#67
Buonasera,
Aggiornamento.
1) sensori umidità del suolo: ho la versione "rugged" che sono garantiti per andare sottoterra. Però io poi, secondo le indicazioni, ho cambiato il cavo con quello Ethernet Cat 5. Tuttavia le connessioni le ho avvolte da guaina termorestringente e nei punti di passaggio tra la guaina e il cavo ho messo Attack per rendere il tutto di nuovo impermeabile. Non penso entri acqua dalle connessioni. Teniamo conto che i sensori non sono completamente immersi in acqua ma nel terreno che ha solo un certo grado di umidità, è diverso dall'immersione in acqua.

La comunicazione con Catnip Electronics ha subito un'interruzione penso a causa della pausa di Ferragosto che ho capito si festeggia anche in Lituania Smile .
Nelle precedenti comunicazioni mi aveva chiesto che versione del sensore ho utilizzato e io gli ho mandato una foto del sensore.
Lunedì mi ha risposto:

"
Ciao,

Sì, è una versione firmware precedente che è suscettibile al rumore sulle linee I2C che viene interpretata come un comando di modifica dell'indirizzo. Hai accesso all'oscilloscopio? Puoi esaminare i segnali I2C sul lato del sensore?

La soluzione migliore è migliorare la qualità/robustezza del segnale I2C: provare a utilizzare un cavo più corto, rallentare la velocità di clock I2C, utilizzare resistori pullup inferiori, provare a tenere i cavi ad alta potenza separati dal cavo I2C."

Alcuni suggerimenti posso metterli in atto:
a) comprerò 2 sensori con firmware aggiornato sempre "rugged"
b) cercherò di calcolare con precisione la minima lunghezza dei cavi.
c) posso prevedere l'uscita della 220 v. separata dalla scatola e poi tenere i cavi del sensore e quello della lampada separati (diciamo di circa 10 Cm. ).
d) velocità del clock della porta I2C a questo proposito ho un serie di domande a cui non so rispondere e chiedo il vostro aiuto:
Qual è la frequenza standard della porta I2C?
è possibile diminuirla? l'eventuale diminuzione determinerebbe un funzionamento anomalo degli altri sensori collegati su quella porta?
La diminuzione del clock si può comandare via script Python di lettura del singolo sensore?

Se gli accorgimenti di cui sopra non dovessero bastare potrei prendere in considerazione posizionare il relay in una scatola separata.

2) sensore di Luminosità Veml7700 anche qui ho contattato il costruttore perché i valori rilevati mi sembravano un po' bassi (essendoci in serra una copertura con una vernice ombreggiante mi aspetto valori intorno a 20-25000 Lux. invece i massimi valori sono intorno a 18000. Gli ho inviato lo script che utilizzavo per il rilievo, il costruttore mi ha dato una prima risposta con una documentazione che riporta una formula di correzione da applicare per valori maggiori di 1000 Lux che l'ingegnere che mi ha risposto ha notato che non avevo applicato nello script che sto utilizzando. https://www.vishay.com/docs/84323/designingveml7700.pdf
Ho cercato di applicare la formula nel mio script, che però non sembra funzionare bene, ho inviato lo script ma anche questo ingegnere è in ferie fino al 6 settembre. Attenderò, sembra essere molto disponibile.
Nel frattempo ho ricollegato il vecchio sensore luce TSL2561 per confrontare i rilievi dei 2 sensori. Nelle ore centrali del giorno il TSL2561 va in saturazione. Quando misura, valori comunque maggiori 1000 lux rileva circa 1/3 maggiore del VEML 7700 quindi forse è necessario un fattore di correzione.

3) per il resto il tutto continua a girare: conserva valori nel datalogger, fa foto, invia il tutto in remoto e provvede a fare time-lapse ogni 3 o 4 gg. , con le foto effettuate, ed ad inviarli web dove si possono vedere. Il tutto in un ambiente che in alcuni momenti del giorno ha lavorato a temperature di 40° C.

Vi ringrazio

Un caro saluto

LaPa
With a little/big help from my friends Rolleyes
Risposta
#68
La velocità del clock del bus i2C dovrebbe essere di 400 KHz (sul Pi4 lo è) e può essere variata dal file /boot/config.txt. Vedi il link di seguito: https://www.raspberrypi-spy.co.uk/2018/0...bus-speed/.
La diminuzione di velocità non crea problemi di comunicazione, ne semplifica il funzionamento.
Per il relè a 220 VAC ti suggerisco l'uso di uno allo stato solido, tipo https://www.amazon.it/Modulo-Keenso-trig...B07QJFQWF3, poichè non creano interferenze nella commutazione.
Risposta
#69
(27/08/2023, 06:13)ippogrifo Ha scritto: La velocità del clock del bus i2C dovrebbe essere di 400 KHz (sul Pi4 lo è) e può essere variata dal file /boot/config.txt. Vedi il link di seguito: https://www.raspberrypi-spy.co.uk/2018/0...bus-speed/.
La diminuzione di velocità non crea problemi di comunicazione, ne semplifica il funzionamento.
Per il relè a 220 VAC ti suggerisco l'uso di uno allo stato solido, tipo https://www.amazon.it/Modulo-Keenso-trig...B07QJFQWF3, poichè non creano interferenze nella commutazione.

Grazie molto Ippogrifo per la tua risposta,

ho cercato un po' in rete e ho trovato questo comando da terminale per controllare la velocità del clock del bus I2C.

Codice:
sudo cat /sys/kernel/debug/clk/clk_summary


e quello sul mio RPI è 100000 penso corrisponda a 100 KHz a quanto mi consigliate di abbassarlo?

Saluti

LaPa
With a little/big help from my friends Rolleyes
Risposta
#70
Prova con 50 KHz, nel caso scendi ancora.
Risposta
  


Vai al forum:


Navigazione: 1 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect