Go Down

Topic: Analisi impulsi contatto a tapparella per antifurti (Read 6784 times) previous topic - next topic

diablotron

comunque mi stavo complicando la vita quando in realtà
non dovevo fare altro che caricare lo sketch "button"
contenuto tra gli esempi di Arduino, senza il debounce,
e poi invertire lo stato degli ingressi in modo che il led
mi risultasse spento qualora fosse presente la 5v sul pin 2,
e si accendesse qualora venisse a mancare la tensione..

con stupore mi accorgo che Arduino già di suo non perde neanche un impulso..

clicca qui

poi è stato sufficiente aggiungere un delay di 3 secondi per fare in modo
che ci fosse un'uscita ben presente, anche al minimo impulso,
per eventuali futuri relè..

clicca qui

pertanto abbiamo completato il primo step, cioè quello di leggere gli impulsi..
perchè nel caso avessi una centralina di antifurto vecchia, che non li legge,
posso utilizzare Arduino in questo modo, e con l'uscita attiva per 3s
posso star sicuro di poter attivare un relè che mi chiude un contatto
a bordo centrale..

ringrazio niki77 per i consigli sullo sketch "button"..

ora passiamo al "secondo step", provocare l'accensione del led per 3s
soltanto dopo il terzo impulso..
quindi la strada dell'INTERRUPT con il CHANGE è quella giusta?

pablos

Quote
i prodotti di antifurto che io tratto a momenti fanno anche il caffè,

che prodotti usi? lavazzasecurity  :D
no comment


niki77

Dai un po curioso sono , che antifurti installi e/o preferisci installare?
Io mi sono montato un bramhs, che ne pensi?
Per la tua applicazione ci devi dire che tipo di analisi vuoi applicare al segnale poi possiamo aiutasti a pensarla.
Quelli commerciali fanno un analisi tipo impulsi/tempo, ovvero vanno in allarme se rilevano tot impulsi in un determinato tempo.
Vuoi applicare questo metodo anche tu?
Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

diablotron


Dai un po curioso sono , che antifurti installi e/o preferisci installare?
Io mi sono montato un bramhs, che ne pensi?
Per la tua applicazione ci devi dire che tipo di analisi vuoi applicare al segnale poi possiamo aiutasti a pensarla.
Quelli commerciali fanno un analisi tipo impulsi/tempo, ovvero vanno in allarme se rilevano tot impulsi in un determinato tempo.
Vuoi applicare questo metodo anche tu?

non conosco bene la bramhs, non so chi dei miei fornitori ce l'abbia,
ma penso nessuno perchè altrimenti sarebbero già passati a proporla
e di sicuro qualche brochure o qualche centrale in conto visione
ma l'avrebbero lasciata..
comunque a seconda della zona in Italia puoi trovare alcuni marchi altri no..

noi della ditta di famiglia abbiamo installato Bentel per tanti anni,
poi però col passare degli anni abbiamo cominciato ad abbandonarla,
sia perchè il numero di guasti cresceva sia perchè in fatto di innovazione
il marchio è rimasto parecchio indietro rispetto agli altri,
e per stare in mercato e proporre roba alla pari abbiamo fanno le nostre selezioni..

Attualmente di marchi ne installiamo più di uno, a seconda dell'esigenza:
- Per gli impianti cablati semplici da negozietto, tipo un paio di rivelatori e qualche inerziale
installiamo centrali AMC C24 con combinatore GSM incorporato, che vanno molto bene
e costano una sciocchezza..
- Per gli impianti cablati un pò più complessi su abitazioni montiamo Combivox, molto più completa.
- Per il via radio montiamo Jablotron, che vanta una portata dei sensori fuori dal comune e una durata della batteria molto lunga, anche se gli ultimi 2 impianti ci ha dato dei problemi di sabotaggio sui sensori radio abbinati ai contatti a fune che non si capisce la natura, neanche gli ingegneri che ci lavorano sopra sanno che pesci pigliare, perciò in questo periodo stiamo visionando alternative.
Proprio ieri un fornitore mi ha portato una centrale Aritech (General Electrics) ibrida che sto visionando.. Un pò complessa nella programmazione, ma mi da l'impressione di solidità.
- Per conto di una ditta di vigilanza della mia zona installiamo RISCO mod. Light SYS, e queste restano le mie preferite anche se più costose, ma sono dei veri carri armati.

Comunque, ora che ci penso, mi pare che Brahms viaggi su di un mercato differente, cioè quello degli elettricisti, in quanto facente parte della catena BPT, come bticino o vimar. E' un prodotto che non conosco perciò non ti so dire perchè i fornitori del ramo sicurezza non lo trattano.

Tornando agli esperimenti Arduino, appurato che la scheda non si lascia sfuggire un impulso,
mi piacerebbe che il led si accendesse al 3 impulso, quindi nella programmazione dovremmo aggiungere un contatore che quando raggiunge l'== 3 mi attiva il led.

diablotron

e si, il lasso di tempo in cui memorizzare questi 3 impulsi,
quello sarebbe stato il terzo step..  :)

niki77

che ne dici di passare alla soluzione interrupt proposta da tuxduino?
Alla lunga ti agevola se vorrai fare ci se poi complicate.
Se decidi di passare a quella versione utilizza il CHANGE al posto di FALLING , e nel loop aggiungi un controllo sul tempo che ogni tot millisecondi ti azzera cmq la variabile cnt.
Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

diablotron


che ne dici di passare alla soluzione interrupt proposta da tuxduino?
Alla lunga ti agevola se vorrai fare ci se poi complicate.
Se decidi di passare a quella versione utilizza il CHANGE al posto di FALLING , e nel loop aggiungi un controllo sul tempo che ogni tot millisecondi ti azzera cmq la variabile cnt.



infatti vorrei analizzare meglio il codice che ha scritto tuxduino,
perchè io sono agl inizi e alcune parti non le comprendo ancora,
non mi va di scrivere il codice "alla cieca", non imparo niente così..

comunque ieri sera navigando sul sito ho trovato questo
http://arduino.cc/en/Tutorial/ButtonStateChange
che già mi risulta più comprensivo da leggere,
voi che dite, può funzionare?
Ovviamente sostituendo la parte serial con il solito output pinled..

niki77

Bhe non utilizza interrupt, quindi alla fine è identico a quello che hai.
Cosa non capisci del codice di tux?
Possiamo sempre chiarirti qualcosa che non capisci invece di cambiare approccio,impari anche qualcosa di nuovo.
Vi è una spiegazione scientifica a tutto.
La fede è solo quell'anello che si porta al dito dopo il matrimonio.

diablotron


Code: [Select]
volatile byte cnt = 0;
cos'è volatile, che fa byte?

Code: [Select]
void isr() {
    cnt++;
}

cos'è isr? che fa ++ su cnt, incrementa di 1?

Code: [Select]
attachInterrupt(0, isr, FALLING);
cos'è attachInterrupt e perchè ci sono 3 voci anzichè 2 tra parentesi?
Code: [Select]

if (cnt >= MAX_IMPULSI) {
        cnt = 0;
        }

questo se ho capito bene dice che
se cnt raggiunge un valore maggiore o uguale a 5
riporta il suo valore a zero, giusto?

quindi prima di chiudere la parentesi graffa posso anche aggiungere
Code: [Select]
digitalWrite (ledPin, HIGH);
delay (3000);

anzichè la comunicazione su display, che non ho?

pietro78

Quote
faccio impianti da 15 anni..


Caro diablotron ...finalmente un mio collega...anche io faccio il tuo mestiere da quasi 13 anni e sinceramente la tua trovata è almeno per me geniale...sai non ci avevo ancora pensato e per questo onore al merito...

Una scheda contaimpulsi per un solo contatto tapparella sappiamo bene quanto costa e con un solo arduino1 possiamo in pratica interfacciare 8 tapparelle come ingressi e ripetere lo stato allarme con 8 uscite a transistor oppure 8 relè con un semplice Uln2804...bravo...

Io poi sono di Chieti o meglio provincia...cià paesà...
Teniamoci in contatto e adesso provo anche io a fare quello che dici e in più ti dò un'altra idea o meglio si può anche pensare di usare una scheda Arduino 1 con una sola uscita relè da collegare alla centrale d'allarme e poi collegare un display lcd per la memoria...
Incomincio a smanettare...

Michele Menniti


Quote
faccio impianti da 15 anni..


Caro diablotron ...finalmente un mio collega...anche io faccio il tuo mestiere da quasi 13 anni e sinceramente la tua trovata è almeno per me geniale...sai non ci avevo ancora pensato e per questo onore al merito...

Una scheda contaimpulsi per un solo contatto tapparella sappiamo bene quanto costa e con un solo arduino1 possiamo in pratica interfacciare 8 tapparelle come ingressi e ripetere lo stato allarme con 8 uscite a transistor oppure 8 relè con un semplice Uln2804...bravo...

piano con le attribuzioni delle idee e dei meriti XD Quando ho realizzato a parlato dei miei nanetti voi forse qui ancora nemmeno c'eravate ;)
Battute a parte io ho progettato i miei nanetti (chiamati così per le loro dimensioni e per il fatto che ne ho giusto sette montati su tutte le tapparelle di casa). Nel mio caso ho dovuto interfacciarli ai sensori tapparella rotativi, che sono terribili, dal punto di vista degli impulsi, e a dei trasmettitori radio,il tutto alimentato a batteria, visto che ho un sistema wireless. Da allora ho risolto il problema dei falsi allarmi delle mie tapparelle. Non badate alla parte "commerciale" perché non esiste: non produco e non fornisco né PCB né schemi e né circuito, è una cosa che ho fatto per me a scopo di studio e che probabilmente quest'anno sarà pubblicato come lavoro. ;)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

pietro78

Quote
piano con le attribuzioni delle idee e dei meriti

Contentissimo di un suo intervento caro professore le posso dire con tutta onestà che non avevo dubbi riguardo alla sua genialità...
Semplicemente se mi permette la sua idea del nanetto è molto simpatica ma l'idea che ha avuto "diablotron" è forse un tantino più specializzata al nostro settore in quanto l'esigenza nostra è piu mirata sui sensori roller a filo quindi ad esempio:

Roller1---PIN2 Arduino1---che muove---PIN out 6---uscita transistor o relè a 12volt
Roller2---PIN3 Arduino1---che muove---PIN out 7---uscita transistor o relè a 12volt
Roller3---PIN4 Arduino1---che muove---PIN out 8---uscita transistor o relè a 12volt
Roller4---PIN5 Arduino1---che muove---PIN out 9---uscita transistor o relè a 12volt     etc...etc.... alla modica cifra dell'arduino 1 e qualche transistor...

Resta comunque il merito che in tempi non sospetti lei aveva già acceso la lampadina dell'idea primordiale riguardo a tale argomento...ma per curiosità il chip in figura del nanetto è per caso un ATtiny xx ??



diablotron

caro pietro78,
sono contento di aver trovato un collega che ha capito "pienamente"
il motivo per il quale sto cercando di realizzare tutto questo,
infatti la mia idea era quella di sfruttare 6 pin per input e 6 pin per output,
proprio come hai detto tu, per risparmiare il costo di una scheda di analisi
moltiplicata per 6..
è chiaro che, di centraline che non analizzano impulsi ce ne sono poche,
com'è anche chiaro che, e lo dico perchè questo è un forum pubblico,
non so fino a che punto "la legge" ci permetta di sfruttare Arduino
per realizzare un prodotto commerciale a tutti gli effetti,
che noi abbineremo agli impianti.

Per questo io ci tengo a precisare che tutto questo lo faccio per studio,
come forma di prototipazione di un qualcosa che poi andrei
a sviluppare personalmente con i miei mezzi e le mie (poche) conoscenze..
Un passo alla volta..

Non so tu a che livelli stai ma io per ora sono proprio principiante da far pena,
quindi se finisci prima di me fammi sapere!  :D

L'idea della segnalazione generica in centrale con memoria su display
e a dir poco geniale, non ci avevo proprio pensato,
forse proprio perchè ho appena cominciato con Arduino
e di idee di sviluppo ne ho ben poche..

buon lavoro allora!

diablotron



Quote
faccio impianti da 15 anni..


Caro diablotron ...finalmente un mio collega...anche io faccio il tuo mestiere da quasi 13 anni e sinceramente la tua trovata è almeno per me geniale...sai non ci avevo ancora pensato e per questo onore al merito...

Una scheda contaimpulsi per un solo contatto tapparella sappiamo bene quanto costa e con un solo arduino1 possiamo in pratica interfacciare 8 tapparelle come ingressi e ripetere lo stato allarme con 8 uscite a transistor oppure 8 relè con un semplice Uln2804...bravo...

piano con le attribuzioni delle idee e dei meriti XD Quando ho realizzato a parlato dei miei nanetti voi forse qui ancora nemmeno c'eravate ;)
Battute a parte io ho progettato i miei nanetti (chiamati così per le loro dimensioni e per il fatto che ne ho giusto sette montati su tutte le tapparelle di casa). Nel mio caso ho dovuto interfacciarli ai sensori tapparella rotativi, che sono terribili, dal punto di vista degli impulsi, e a dei trasmettitori radio,il tutto alimentato a batteria, visto che ho un sistema wireless. Da allora ho risolto il problema dei falsi allarmi delle mie tapparelle. Non badate alla parte "commerciale" perché non esiste: non produco e non fornisco né PCB né schemi e né circuito, è una cosa che ho fatto per me a scopo di studio e che probabilmente quest'anno sarà pubblicato come lavoro. ;)


molto interessanti questi nanetti,
potrebbero risolvermi un problema di sabotaggi che ho
su dei contatti radio.. Tali contatti hanno un ingresso AUX
che analizza impulsi dei contatti a fune, che io ho per l'appunto utilizzato..
Mi risultavano frequenti sabotaggi che non si sono più verificati
quando ho chiuso direttamente l'ingresso AUX verso GND, in gergo "ponticellato"..

Perciò, è chiaro che il problema stava nel circuito del contatto a fune..
Potrei provare con questi nanetti,
se si potesse avere lo schema..
:smiley-red:

Go Up