Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Ricerca personalizzata

software per il problema di debounce

Progetti, interfacciamento, discussioni varie su questa piattaforma.

Moderatori: Foto UtenteMassimoB, Foto UtenteWALTERmwp, Foto Utentexyz

0
voti

[1] software per il problema di debounce

Messaggioda Foto Utenteluchinho » 22 giu 2017, 23:20

Ciao a tutti, il mio obiettivo è quello di contare il numero di giri ogni 10 sec di una ruota bianca segnata con una striscia nera attraverso un infrarosso ma il fatto è che quando a basse velocità le letture si sfalsano perciò io non capisco nonostante l'hardware non riesca a risolvere il problema, perciò il software è l'ultima soluzione il fatto è che con l'interrupt questo non è possibile a causa della velocità ci sono dei consigli?
Avatar utente
Foto Utenteluchinho
0 3
 
Messaggi: 17
Iscritto il: 15 giu 2017, 22:24

0
voti

[2] Re: software per il problema di debounce

Messaggioda Foto UtenteAjeieBrazov » 22 giu 2017, 23:41

La riga nera deve essere molto, ma molto coprente. Non basta che sia nera alla vista perché il sensore a forcella usa gli infrarossi.
Verificata la totale e netta opacità della linea si può poi proseguire con il software, sempre che il problema si ripresenti.
Ho avuto questo problema con un'asticella di plastica di 1mm di spessore che sembrava opaca, ma per gli infrarossi non lo era completamente.
Avatar utente
Foto UtenteAjeieBrazov
1.450 4 9
---
 
Messaggi: 596
Iscritto il: 23 mag 2017, 21:53

0
voti

[3] Re: software per il problema di debounce

Messaggioda Foto Utenteluchinho » 24 giu 2017, 12:41

AjeieBrazov ha scritto:La riga nera deve essere molto, ma molto coprente. Non basta che sia nera alla vista perché il sensore a forcella usa gli infrarossi.


Quello l'ho verificato e ne sono certo, il problema è che nel confine tra bianco e nero a basse velocità utilizzndo l'interrupt è un casino, fa letture false, può centrare la stabilità?
Avatar utente
Foto Utenteluchinho
0 3
 
Messaggi: 17
Iscritto il: 15 giu 2017, 22:24

0
voti

[4] Re: software per il problema di debounce

Messaggioda Foto UtenteAjeieBrazov » 24 giu 2017, 12:45

Puoi fare una serie di letture cadenzate nel tempo e decidere quante letture fare.
Ad esempio puoi dire di essere sicuro nel momento in cui hai 10 letture tutte uguali con cadenza 1ms.
Se in queste 10 letture ne leggi una diversa, resetti il tutto e riparti da zero.
In ogni caso mi permetto di insistere sulla opacità della linea.
Tieni presente che il fascio di IR, al massimo, è largo 0,5mm.
In un prototipo interrompevo il fascio con un oggetto largo 3mm e spesso 1 di nylon blu.
Per non avere la transizione lenta ho dovuto immergerlo nella vernice nera, e sto parlando di un oggetto di 1mm di spessore!
Prova a realizzare la linea con una strisciolina di metallo, di alluminio per esempio (quello del cuki).
Avatar utente
Foto UtenteAjeieBrazov
1.450 4 9
---
 
Messaggi: 596
Iscritto il: 23 mag 2017, 21:53

0
voti

[5] Re: software per il problema di debounce

Messaggioda Foto Utenteluchinho » 24 giu 2017, 14:03

AjeieBrazov ha scritto:.
Per non avere la transizione lenta ho dovuto immergerlo nella vernice nera, e sto parlando di un oggetto di 1mm di spessore!
Prova a realizzare la linea con una strisciolina di metallo, di alluminio per esempio (quello del cuki).


Scusa ma non ho capito cosavuoi intendere con quel tipo di prova?
Avatar utente
Foto Utenteluchinho
0 3
 
Messaggi: 17
Iscritto il: 15 giu 2017, 22:24

0
voti

[6] Re: software per il problema di debounce

Messaggioda Foto UtenteAjeieBrazov » 24 giu 2017, 14:07

Hai parlato di "linea" senza dire altro. Ho supposto che tu abbia tracciato una linea con una vernice o qualcosa del genere, in un supporto trasparente.
Se la mia supposizione è esatta (e qui dovresti fornire più particolari) la linea che hai tracciato può essere trasparente (ed è molto probabile che lo sia), anche se appare nera o opaca.
Invece di una linea puoi incollare una strisciolina sottile di alluminio, quello per gli alimenti, al posto della linea.
In questo modo saresti certo dell'opacità.
Ed è l'unico sistema per eliminare la variabile dell'opacità
Se poi ritieni (sarebbe bella sapere su che basi) che sia inutile, non lo fare.

Con i raggi infrarossi fanno le fotografie alle nebulose (opache e nere alla luce visibile) per vedere le stelle che sono all'interno.
Avatar utente
Foto UtenteAjeieBrazov
1.450 4 9
---
 
Messaggi: 596
Iscritto il: 23 mag 2017, 21:53

0
voti

[7] Re: software per il problema di debounce

Messaggioda Foto UtenteAjeieBrazov » 24 giu 2017, 14:34

Ok, da quello che hai scritto in privato (anche se sarebbe stato meglio usare il forum) non usi un sensore a forcella ma una coppia fotodiodo/fototransistor che lavora per riflessione.
Il metodo da utilizzare è quello che ti ho indicato al post [4] : letture consecutive intervallate da un ritardo.
Consideri il segnale ok quando, ad esempio, per 10 letture hai avuto lo stesso risultato (1 o 0 che sia).
Non conviene usare le interrupt perché non ti devi fidare del singolo impulso, meglio campionare il sensore ad intervalli regolari compatibili con la velocità del disco (devi essere sicuro d'intercettare il marcatore, la linea).
Oppure, se proprio vuoi usare le interrupt, questa ti serve per settare un flag di richiesta di campionamento.
Avatar utente
Foto UtenteAjeieBrazov
1.450 4 9
---
 
Messaggi: 596
Iscritto il: 23 mag 2017, 21:53

0
voti

[8] Re: software per il problema di debounce

Messaggioda Foto Utentelelerelele » 24 giu 2017, 16:27

luchinho ha scritto:il problema è che nel confine tra bianco e nero a basse velocità utilizzndo l'interrupt è un casino, fa letture false, può centrare la stabilità?

perché l'interrupt è un casino? mi rispondo da solo, perché vado a leggere un segnale che non è un gradino, oppure questo segnale è sporco assai.

parto dal presupposto che ti sei creato il sensore, (giustissimo, faccio così anche io), mi verifichi i livelli di soglia che ti fornisce il sensore? a livello basso ed a livello alto che tensione ti fornisce? se questi due livelli sono netti e puliti l'interrupt deve andare benissimo.
poi per filtrare comunque l'ingresso, hai differenze di velocità notevoli? cioè misuro in 10 secondi da un minimo di 5 giri ad un massimo di 5000? oppure da 5 a 25 giri. ti ho fatto questo esempio perché puoi contare sia a livello basso che a livello alto su una variabile, quindi dopo un periodo di tempo ragionevole farne una media; oppure dare un tempo minimo di ritardo ogni lettura fatta sia in su che in giu del segnale di ingresso.

le vie sono molteplici, ma devono essere vagliate nel tuo caso specifico per trovare la migliore.

saluti.
Avatar utente
Foto Utentelelerelele
1.618 1 6 8
Expert EY
Expert EY
 
Messaggi: 1834
Iscritto il: 8 giu 2011, 8:57
Località: Reggio Emilia

0
voti

[9] Re: software per il problema di debounce

Messaggioda Foto UtenteWALTERmwp » 24 giu 2017, 22:28

luchinho ha scritto:(...) ma il fatto è che quando a basse velocità le letture si sfalsano perciò io non capisco nonostante l'hardware non riesca a risolvere il problema, perciò il software è l'ultima soluzione il fatto è che con l'interrupt questo non è possibile a causa della velocità ci sono dei consigli?
qui ci sono due affermazioni che non comprendo: una che lega il problema alle basse velocità, l'altra che vede una difficoltà nell'uso dell'interrupt.

Se hai riscontrato delle anomalie con una rotazione lenta, come fai ad escludere il fatto di non averne a velocità superiori (magari interpreto io in modo errato)?
L'impiego dell'interrupt dovrebbe migliorare l'efficienza del codice, non diventare un impedimento, o no ?

Come è stato scritto si dovrebbe partire da un segno (linea) caratterizzato in modo adeguato, e penso che a parità di "condizione del segno" restino valide le mie perplessità.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
19,9k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 5992
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

1
voti

[10] Re: software per il problema di debounce

Messaggioda Foto UtenteAjeieBrazov » 24 giu 2017, 22:32

Foto Utenteluchinho posta nella discussione il messaggio privato che mi hai mandato. Di sicuro aiuterà tutti nel trovare una soluzione.
Sono informazioni importanti, basilari direi.
Avatar utente
Foto UtenteAjeieBrazov
1.450 4 9
---
 
Messaggi: 596
Iscritto il: 23 mag 2017, 21:53

Prossimo

Torna a Arduino

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti