Controllare 20 reed con un multiplexer

Ciao Guglielmo, lettura estremamente interessante, grazie.

L'indirizzo di residenza del mio allarme è e resterà il lato sinistro della mia scrivania, si tratta più che altro di un espediente per imparare a fare cose cercando di dargli un senso piuttosto che impararle in astratto, d'altra parte non metterei mai la sicurezza di casa mia nelle mani di un allarme basato sulle mie saldature, e, sinceramente, ammesso che io saldi bene, non avrei la minima idea di come valutare l'affidabilità di un componente comprato per pochi centesimi o pochi euro su ebay.

Ciò nonostante intendo inserire nel progetto tutte le variabili che un vero allarme deve gestire, numerosità dei sensori, sicurezza, ridondanza, interfaccia web... chiamatela perdita di tempo, ma mi piace così.

GP

Grazie.

Perfetto :slight_smile: ... vedo che hai ben capito che un conto è stuadiare/realizzare un modello e un conto è la ... SICUREZZA :wink:

Guglielmo

Scusa, e chi lo dice? A parte il fatto che se vuoi semplificare le cose ti basta usare un Mega invece di UNO, se gli impianti di allarme hanno il concetto di "zona di allarme" c'è un motivo, ed è (anche) di cablaggi. Lo scopo primario di un allarme è emettere l'allarme (appunto) quando anche solo UN sensore va in allarme (aridaje). Se tu metti in serie tutti i sensori di una stessa stanza (porte, finestre..) puoi implementare una "zona", e quindi invece di 4 o 5 linee da portare "a stella" al sistema centrale, ne porti UNA. Che poi sapere che in quella stanza è andata in allarme la finestra 1 invece della 2, è una informazione quasi sempre superflua.

Insomma, il mio consiglio è di fare "zone" e quindi gestire tutto anche conuna normale UNO, oppure fare come desideri e passare ad una Mega, evitando le complicazioni dei tanti cablaggi e dei multiplexer. Insomma, il principio del "rasoio di ockam" diciamo. :wink: O, più sinteticamente, "perché complicarsi inutilmente la vita se esistono soluzioni più sempici?".

La monitoria dei singoli sensori è utile per individuare difetti nei sensori, quando c'è un allarme ma tutto sembra a posto.

Doc, lo so che potrei accorpare più sensori e avere un allarme per stanza anche se in quella stanza ho due finestre con due reed e un volumetrico, è esattamente la configurazione del mio tecnoalarm di casa, ma per scopi didattici, o se preferisci per mio vezzo, vorrei avere l'allarme puntuale sul sensore "x" piuttosto che genericamente sulla stanza, alla fine vorrei vedere via web il pallino rosso che lampeggia in corrispondenza del sensore scattato, per questo ho deciso di abbandonare l'encoder e passare al bus I2C, proprio nell'ottica del famoso rasoio.

Portando alle estreme conseguenze il ragionamento metti tutto in serie su una sola zona "casa" e non saprai mai cosa succede, ma anche non arrivando a questo paradosso, secondo me non tutti i sensori hanno lo stesso peso e la stessa importanza.

Se scatta un sensore al centro della casa mentre nessun perimetrale e nessun volumetrico delle stanze intorno segnala niente, è quasi certamente un falso allarme, oppure se mi scatta un allarme sulla zona "camera da letto" io non ho modo di sapere se è un vero allarme o se semplicemente è una botta di vento che è passata dalla finestra aperta a vasistas e ha fatto muovere la tenda che ha fatto scattare il volumetrico, mentre se so che è il volumetrico e il reed tace, magari non mi preoccupo tanto, viceversa se mi va in allarme prima il reed della finestra e poi il volumetrico della stanza sono abbastanza sicuro che c'è qualcosa che non va.

Senza contare che un sensore a caso può andare in tilt, ma se tutti gli altri tacciono te ne fai una ragione, invece senza un minimo di dettaglio non lo potrai capire mai.

Come preferisci, comunque in questo caso la soluzione più semplice c'è. Una Mega. :wink:

Sto guardando le caratteristiche.

:wink:

Effettivamente ci starebbe di tutto di più. Ma volendo non sarebbe anche meglio un DUE? Più ram, processore più potente, più potenza sui singoli pin, clock più alto...

Non sono tanto esperto di arduino da poter scegliere, tu hai detto mega perchè hai già preso in considerazione il due e l'hai scartato? Perchè?

Lascia stare ... è nata obsoleta ... figurati oggi ...

  1. Arduino DUE è molto poco supportato e pochissime librerie di terze parti sono state convertite per funzionarci.

  2. Molti pochi shield sono fatti per funzionare su Arduino DUE.

  3. La scheda funziona esclusivamente a 3.3V e molti dei suoi pin sono in grado di dare un decimo della corrente (max 3 mA) dei pin degli altri Arduino (max 40 mA). I rimanenti comunque non danno più di 15 mA.

  4. E' sicuramente un processore molto più complesso da utilizzare. Basta guardare le oltre 1400 pagine di cui è composto il datasheet

  5. Difficilmente vedrà ulteriori sviluppi dato che ... ora ci sono tutte le nuove schede.

  6. E' una scheda totalmente obsoleta.

Guglielmo

Direi che è un giudizio terminale...

Scusa, ma un allarme in bassa tensione che fa scattare una sirena o fa una chiamata sms o telegram non penso che vada annoverato nell'art. 15.5.
Che poi sia più o meno affidabile non ha niente a che vedere con la sicurezza della persona.
O sbaglio ?
Se poi, al posto di leggere dei red sulle finestre uno vuole leggere dei sensori di fumo o di fiamma, allora sono d'accordissimo. ma non mi sembra questo il caso.

Le sirene degli allarmi non devono suonare, né gli impianti chiamare i carabinieri, senza una valida ragione. Anche per la durata del suono delle sirene per valida ragione c'è una norma.

Naturalmente, se il sistema d'allarme si limita a mandare un avviso personale tramite SMS o web, non ci sono problemi.

... e cosa questo ha che vedere con il punto 15.5 che parla di normative e certificazioni per prodotti civili/industriali e l'uso di Arduino classico in apparecchiature reali?

Arduino non rispetta i requisiti richiesti dalle varie certificazioni per l'uso in ambito civile/industriale/militare etc. (salvo forse la nuova linea Pro che è soggetta ad alcune certificazioni), pertanto non può essere utilizzato per nessun scopo che non sia la realizzazione di prototipi, test di laboratorio, supporto allo sviluppo, studio e ricerca.

In linea di massima, con Arduino puoi fare quello che ti pare a patto che rimane sul tavolo del laboratorio e non lo colleghi a nessun impianto dove è obbligatorio usare solo parti certificate/omologate, p.e. l'impianto elettrico di casa.

Quanto sopra si applica a tutte le schede Arduino, nessuna è certificata per uso industriale/civile (... ripeto, forse la linea Pro ha le dovute cerificazioni, ma non è quella di cui stiamo parlando) e non sono in nessun modo certificabili a tale uso; questo non significa però che non si può usare l'ambiente di sviluppo (IDE) di Arduino per prodotti commerciali, puoi farlo a patto che sviluppi un hardware Arduino Like che sia in regola con le vigenti normative per la destinazione d'uso.

Rimane comunque vietato, senza se e senza ma, l'uso di Arduino in tutti quei settori ove ci sono anche delle restrizioni software oltre che hardware, p.e. nel mondo automotive non potrai mai usare Arduino perché il suo ambiente di programmazione (IDE) non risponde alle specifiche richieste, molto severe per ovvi motivi.

Guglielmo

Infatti, dicevo, dato che non lo connetti all'impianto elettrico di casa (se non per attaccarci l'alimentatore), che problema c'è?

Io avevo risposto a questa osservazione che faceva riferimento al 15.5

@steve-cr: se fosse un VERO antifurto, anche se per uso privato, sarebbe comunque soggetto a delle normative ... inutile che ogni volta insiti!

Fortunatamente il OP ci ha già spiegato che è una cosa di studio e non un prodotto reale collegato alla rete elettrica e quant'altro, quindi ... la cosa si interrompe qui.

Guglielmo

Ma no, ma quale "vero antifurto". E' il classico "antifurto casereccio" che ti fai per uso personale, mica per venderlo :grinning_face_with_smiling_eyes:
Penso che ognuno di noi lo abbia pensato almeno una volta per casa sua.
Ho visto anche che usano gli ESP-32 con la cam ma non ho approfondito perché non mi interessa. Io stesso ci avevo pensato, magari con dei sensori infrarossi, tutto supervisionato da un Wemos che mi poteva inviare un messaggio via Telegram. Una cosa simpatica.
Non è che "insisto", non stiamo parlando nemmeno della 230V, è che mi sembrava strano richiamare un articolo di sicurezza e certificazione impianti elettrici con un antifurto da mettere a guardia delle galline....
Tutto qui. :grinning:

T'ho già detto che casareccio o meno "un antifurto" DEVE rispettare delle normative ... specie perché è oggetto che rischia di creare disturbo della quiete pubblica.

Ulteriori post sull'argomento verranno cancellati dato che, oltretutto, NON è quello che l'OP sta facendo.

Guglielmo

Cosa vulo dire "OP"?

Grazie.

gp

OP = original poster, la persona che ha aperto il thread, in questo caso, tu (maledetta mania degli inglesismi :crazy_face:)

Ma non hai pensato ad una catena di shift register 74hc165 ? ... con 3 hai 24 ingressi, non importa quali o quanti contatti si chiudono perche' li vedi tutti, certo vanno letti a bytes (ogni byte sono 8 ingressi, tre bytes per tutti e 24), avendo un latch non sono influenzati dalla variazione dello stato di un ingresso che capiti esattamente al momento della lettura ... ogni volta che vuoi leggerli, abbassi il latch (o load, come e' chiamato in alcuni datasheet), lo rialzi (in questo momento lo stato degli ingressi e' memorizzato nel chip), fai tre shiftin da 8 bit (ognuna in una variabile diversa), ed hai le tue tre variabili che contengono lo stato in binario di tutti i 24 ingressi (o per essere precisi, lo stato che gli ingressi avevano nell'istante in cui hai alzato il pin di load)

Il tutto con un pin di clock, uno di load ed uno per la lettura :wink: