Pagina 1 di 1

Antirimbalzo 24 V

MessaggioInviato: 1 mag 2014, 21:51
da Lemming
Ciao a tutti!
Vi vorrei sottoporre un piccolo problema che non riesco a risolvere in maniera efficace:
su un circuito che sto progettando, ho un solo pulsante normalmente aperto, che tramite un fotoaccoppiatore (4N35) va ad un microcontroller (ATTINY13). Il pulsante funziona a 24 V, mentre la logica del uC a 5V. Ho bisogno di creare un circuito antirimbalzo, ma essendo a 24 V, non posso utilizzare i classici circuiti CMOS per il buffer con schmitt trigger. che mi consigliate di fare? Vorrei evitare come la peste l'antirimbalzo software.
Avevo pensato di mettere il circuito dopo il transistor del fotoaccoppiatore, ma non so se è una soluzione ottimale o meno. Che ne dite?

Grazie a chi mi può aiutare.
Ciao!

Re: Antirimbalzo 24 V

MessaggioInviato: 1 mag 2014, 22:15
da Candy
Mah. Io invece ti invito calorosamente a pensare all'antirimbalzo software. Con poche righe di codice, pochissime, risolvi tutti i problemi senza toccare la circuiteria ed in tempi quasi nulli.
Diverso sarebbe il caso se la logica non fosse programmata o se la circuiteria fosse veramente fatta male.
Un anti-rimbalzo esterno potresti farlo con una rete RC oppure un flip flop ed un deviatore invece del pulsante. Come dire, in tutti i casi circuiti complessi: sostenere una corrente di antirimbalzo ad un fotoaccoppiatore non è scherzo di poco conto.

Re: Antirimbalzo 24 V

MessaggioInviato: 2 mag 2014, 18:59
da Lemming
Prima di tutto grazie per la risposta Candy!
Il problema dell'antirimbalzo lo escludevo per un fatto di "pigrizia", nel senso che il software gestisce eventi molto vicini, e, visto che non posso prevedere il tipo di pulsante che verrà usato, perché viene collegato dall'utente finale (che non sono io), mi tocca usare dei delay abbastanza lunghi per evitare rimbalzi con contatti di scarsa qualità.
Ci studio sopra un attimo... :roll:

Grazie ancora!
Ciao!

Re: Antirimbalzo 24 V

MessaggioInviato: 2 mag 2014, 19:17
da Candy
Per antirimbalzo devi rimuovere variazioni 0/1 inferiori a circa 20 ms / 30 ms. Non penso proprio che un pulsante ad azione manuale possa dare segnali a frequenza più elevata.
Le tecniche per arrivarci sono innumerevoli. Dipende anche dalla complessità o meno del programma.

Re: Antirimbalzo 24 V

MessaggioInviato: 4 mag 2014, 0:43
da WALTERmwp
Ciao Foto UtenteLemming,
aggiungo il mio commento a quello di @Candy che, di fatto, ti ha già scritto quasi tutto quello che ci sarebbe da considerare.
Lo faccio per rafforzare ulteriormente l'indicazione che ti è stata fornita.
Davvero non mi sembra ci siano validi motivi per ricorrere ad un hardware esterno quando con un dispositivo programmabile te la puoi cavare con poche righe di codice: proprio non c'è paragone nell'impegno.
L'unico dubbio è che tu non abbia la possibilità di scriverle ma, non credo si ricada in questa evenienza.
Molto dipende da quello che deve fare il pulsante: per quanto mi riguarda, per esempio, mi è capitato di inserire ritardi anche di mezzo secondo.
Per esasperare il principio è palese il fatto che se gestisci un "antirimbalzo" di tre secondi quando con la pressione del pulsate(ino) devi fare uno "scroll" di informazioni su un display, l'utente non se la cava più.
Se hai il "contorno" del microcontrollore consolidato dal punto di vista funzionale, completi il firmware, fai le tue prove e ... finito.
Saluti

Re: Antirimbalzo 24 V

MessaggioInviato: 4 mag 2014, 13:26
da Lemming
Grazie sia a Candy che ad WALTERmwp,
alla fine ho fatto la modifica al software del uC, ho dovuto studiarci su un attimo, visto che ancora non ho molta confidenza con l'assembly, ma pare che ce l'abbia fatta.
Appena ultimato il tutto vi faccio sapere se è uscito qualcosa di valido o meno.

Grazie ancora!