Jump to content
PLC Forum


Sign in to follow this  
ic910

Rilevazione Di Un Battito Di Mani Con Pic

Recommended Posts

ic910

Salve a tutti stò realizzando un interruttore fonico con Pic 16f628.

Per la sezione del segnale analogico captato dal microfono ho preso spunto da questo schema trovato in rete.

http://imgchili.net/show/69090/69090556_stadio.png.

L'ultimo operazionale utilizzato nello schema come comparatore io l'ho tolto e ho fatto eseguire la comparazione del segnale dal comparatore interno al 16f628.

Lo schema trovato in rete è alimentato a 9 V invece io, ho alimentato il tutto a 5 V .La resistenza di retroazione (R15 270Kohm) dell'ultimo operazionale l'ho alzata di valore portandola a 820 Kohm.Tramite software mi son portato fuori l'uscita del comparatore interno collegandola a questa resistenza di 820Kohm.

Il programma che ho fatto prevede 2 battiti di mani per azionare il carico .I 2 battiti di mani devono avvenire al massimo a 4 secondi di distanza.

Ora il problema che ho è la cattiva discriminazione dei rumori .Infatti anche un fischio mi riesce ad attivare il carico .

Il primo operazionale viene utilizzato se non vado errato come amplificatore ,chiedo a voi , viene anche utilizzato come filtro ?

Stavo pensando che per discriminare al meglio i rumori ci serve un filtro passa banda ma su quale frequenza bisogna tararlo, visto che nel battito delle mani ce ne sono diverse ?

Grazie mille.

Edited by ic910

Share this post


Link to post
Share on other sites

Livio Orsini

Hai messo il link ad un sito di modelle discinte, invece che allo schema. :lol:

Magari è più piacevole studiare l'anatomia di una giovinotta rotondetta piuttosto che studiare un'arido schema, però.....non sappiamo cosa hai fatto. :smile:

Piuttosto che lavorare sulla frequenza è meglio lavorare sull'attacco del suono.

Un battito di mani è quello che tecnicamente si dice "burst" ovvero un pacchetto di freqaunze ad attacco rapido e rapido decadimento, il cui inviluppo è assimilibile ad un impulso.

Meglio derivare il segnale e lavorare sulla derivata.

Share this post


Link to post
Share on other sites
ic910

Mi scuso sull' accaduto. Provando a cliccare sull link io vedo lo schema non vedo modelle o giovinotte. Forse riconosce il mio indirizzo ip non riesco a spiegarlo neanche io scusate ancora.

Lo schema che ho cercato di postare se non si riesce a vedere e stato realizzato da una nota rivista di ellettronica , in caso posso mettere direttamente il linK al sito della rivista che però fà anche vendita ?

Share this post


Link to post
Share on other sites
ic910

Livio dimmi tu se posso inserire il link diretto ?

Share this post


Link to post
Share on other sites
dott.cicala

Io lo schema lo vedo....

bb7cc93f10b1c489f58460c6acd19056.PNG

e vedo pure che c'è anche un filtro attivo passa banda...che se non hai implementato ecco perché il tuo circuito reagisce a qualsiasi frequenza.

Sarebbe interessante anche vedere il tuo circuito, per capire come entra il segnale nel pic, se c'è un minimo di filtro software ecc ecc

Edited by dott.cicala

Share this post


Link to post
Share on other sites
ic910

Lo schema da me fatto è lo stesso dell' immagine . L'unica differenza è l'alimentazione a 5 V e invece di utilizzare l'ultimo operazionale Ic1d come comparatore ho utilizzato il comparatore interno al 16f628 cosi invece di mettere un LM324 mi è bastato mettere un Lm358.

Dott. Cicala sicuramente il primo operazionale è configurato come passa banda l'ho intuito . I passa banda che ho sui vari libri di testo sono un pò differenti da questa configurazione utilizzata. Potresti illustrare come si dimensionano i vari componenti che lo costituiscono.

In modo tale cerco di capire perchè nel mio caso anche con il passa banda non vi è molta selettività verso i rumori indesiderati per l'attivazione.

Dimenticavo ho anche implementato un filtro software che tramite un contatore mi conta le battute e mi attiva il carico.

Inoltre ogni singola battuta la riconosco buona solo se cè stata una variazione logica dell'uscita del comparatore interno da 0 a 1 per poi ritornare a 0 e essere nuovamente disponibile per rilevare una nuova battuta.

Edited by ic910

Share this post


Link to post
Share on other sites
gabri-z
Provando a cliccare sull link io vedo lo schema non vedo modelle o giovinotte.

HA , anche a me salta fuori un ''coso'' free ... Ehh , è la dimostrazione che la mia moglie non mette le mani sul mio PC rottame :superlol: !

Share this post


Link to post
Share on other sites
Livio Orsini

Adesso compare lo schema contornato dalle solite giovinotte allegre e pimpanti, in più c'è anche una pubblicità di un macchina per masturbazioni.

A parte questo.

Intanto le prestazioni dei 2 operazionali, Lm324 e LM358, sono piuttosto differenti; il 358 ha una banda passante molto maggiore del 324.

Il passa banda è forse più...... un passa alto, specialmente con l'uso del 358. Dipende molto dal rapporto C9-C6.

Se hai omesso l'ultimo stadio la R15 non c'è, intendi forse la R8? Attenzione che quel circuito mi sembra un rivelatore di picco (non sono ancora ben sveglio perchè son solo al primo caffè a quest'ora :smile: )

Poi come ti ho scritto prima, se vuoi avere come comando solo il battito di mani, devi agire non sul livello del segnale ma sulla derivata dell'attacco.

40 anni fa risolsi così un tele comado per accendere le luci di una camera oscura.

Share this post


Link to post
Share on other sites
ic910

Cosa significa aggire sulla derivata dell attacco ?

L'ultimo stadio non l'ho omesso ma la sua funzionalità l ho fatta svolgere dal comporatore interno al Pic.

La R15 nel mio circuito è presente mi serve a far caricare e scaricare il condensatore C10 da 1 uF posto su un pin del pic.

Quando l'uscita del comparatore interno è alta per tirarmela fuori porto alto un pin del pic , invece quando è bassa porto a livello logico 0 un pin del pic.

Edited by ic910

Share this post


Link to post
Share on other sites
dott.cicala

Lo schema sembra tratto da Elettronica In.

Il passa banda è realizzato intorno a Ic1a dove la frequenza di taglio superiore è data da

F[kHz] = 159000/ R7*C9 con R in Kohm e C in pF

La frequenza di taglio inferiore, con T1 interdetto è data da

F[kHz] = 159000/ R2*C6 con R in Kohm e C in pF -

T1 pone in parallelo a R2 la R10 in base a quanto è polarizzato. Modifica il guadagno dello stadio, che è un ampli in AC,

per quanto riguarda la risposta alle frequenze più basse.

Nel rivelatore di picco Ic1b, c'è un'altra cella - R11-C7 che determina la risposta in frequenza dello stadio.

Nel trigger di Schmitt, C10 svolge la funziona di memoria di picco del segnale di ingresso e fornisce una costante di tempo che dipende anche da R13.

R15 serviva per determinare l'isteresi del comparatore a trigger di Schmitt che comunque si può realizzare semplicemente via firmware

Share this post


Link to post
Share on other sites
Livio Orsini

Stefano le formule delle freqeunze limite che hai scritto sone vere entro certi limiti.

Con questo cricuito, a meno di strani valori di R7 e R2, in pratica tutto dipende dal rapporto tra C9 e C6, perchè entrambi influenzano pesantemente il guadagno

Anche C8 ha la sua influenza come passa alto.

Inoltre lo LM324, ha un banda passante limitata che influenza la risposta, cosa che invece praticamente non fa il 358 stante la sua banda che è almeno 30 volte quella del 324.

Quando l'uscita del comparatore interno è alta per tirarmela fuori porto alto un pin del pic

Invece di fare tutta questa complicazione ti leggi direttamente il segnale su D15 tramite l'ingresso analogico e lo elabori come vuoi.

Lavorare sulla derivata dell'attacco del "bump" sigifica discriminare un segnale che cresce velocemente e decade altrettanto velocemente.

Il battito delle mani è un schiocco, mentre il fischi è praticamente un'onda quasi sinusoidale.

Se disponi dell'oscilloscopio prova a verificare fischiando nel microfono e battendo le mani.

nel caso del fischio vedi un segnale continuo, nel caso del battito vedi proprio un qualche cosa che sale rapidamente e rapidamente decade, quasi un impulso della durata di circa 0.1" o anche meno.

Share this post


Link to post
Share on other sites
dott.cicala

...e lo so, ma non ha messo nemmeno un valore :senzasperanza:

Io userei una capsula preamplificata, col 358 ci farei un filtro attivo di 4°ordine e il resto lo lascerei fare al pic al quale alla fine rimarrebbe il trigger di schmitt e il contatore.

Mi viene il dubbio che con un LM324 e un 4013 si riesca ad ottenere la stessa identica funzione....mi sembra sprecato un F628

Share this post


Link to post
Share on other sites
ic910

Grazie intanto delle risposte

Allora scusate se non ho messo i valori . R7 = 100 Kohm il C9 = 22nF mentre R2 = 10 Kohm , C6 = 100nF , R11= 1Kohm ed infine C7 = 100 nF. R13 è da 1 ohm io neanche l'ho messa .

Calcoli indicati da Dott.Cicala :

Calcolando la frequenza di taglio superiore 159000 / 100 * 22000 = 0,072 Khz ( non mi convince come valore di frequenza di taglio superiore non sò se ho sbagliato l'equazione)

Calcolando la frequenza di taglio inferiore 159000 / 10 * 100000 = 0,159 Khz

Per quanto riguarda il condensatore in ingresso C8 da schema è indicato come un 3.3 nF. Per reattanza capacitiva più basso è il valore di questo condensatore più le frequanze audio

basse vengono attenuate se non vado errato.

Ho utilizzato un 628 perchè non devo controllare solo il battito e l'attivazione del carico.

Per quanto riguarda la derivata Livio potresti porre un esempio pratico di come trattare il segnale una volta ricevuto nel Pic ?

Inoltre pensi di trattarlo tramite un ADC ?

Share this post


Link to post
Share on other sites
Livio Orsini

Il derivatore non è altro che una capacità in serie ad una resistenza; se ecciti questo circuito con un impulso unitario ottieni un picco positivo sul fronte di salita ed uno negativo sul fronte di discesta.

Se cerchi in rete "circuito derivatore" avrai migliaia di risposte tra cui scegliere.

Io ricordo vagamente come avevo fatto. Primo stadio amplificatore con il solo condensatore di accoppiamento come passa alto (C8) ed un condensatore in reazione come passa basso (C9). Raddrizzatore di picco come il secondo stadio (all'incirca), derivatore e comparatore a trigger che pilotava un bistabile con D FF, poi il triac per comandare le almpade.

Ausando un PIC dipende da cosa deve fare, oltre a riconoscere il battito di mano.

L'idea di Stefano merita un approfondimento.

Share this post


Link to post
Share on other sites
dott.cicala

Le frequenze sono indicative, se hai un generatore di segnali e un oscilloscopio, lo puoi verificare velocemente. Si può usare anche un ddm. Un qualsiasi multimetro un minimo decente ha un'impedenza di almeno 20M e una banda passante di almeno 10KHz, quindi si potrebbe usare in sostituzione all'oscilloscopio.

In pratica IC1a è un amplificatore in AC dove le due celle determinano la banda passante. Un battito di mani dovrebbe stare tra qualche centinaio di Hz e sicuramente sotto il KHz.

Non vorrei che il problema fosse determinato da troppa sensibilità. Per verificarlo basta inserire un potenziometro da 47K tra R1 e massa e il cursore collegarlo a C8

Edited by dott.cicala

Share this post


Link to post
Share on other sites
Livio Orsini
Un battito di mani dovrebbe stare tra qualche centinaio di Hz e sicuramente sotto il KHz.

Ma anche il fischio; in genere siamo nell'intorno dei 400 Hz di fondamentale, con poche armoniche. Anche il fischiettio modulato che riproduce una musica è conteunto entro un'ottava, a meno di fischiettatori particolarmente abili ed artistici.

Il battito di mani, invece, è un classico burst somma di parecchie frequenze non armoniche tra loro

Edited by Livio Orsini

Share this post


Link to post
Share on other sites
ic910

Io la rete Cr la conosco sotto il nome di differenziatore mentre la rete Rc la conosco sotto il nome di integratore.

Non sapevo che si poteva anche chiamare derivatore.

Si infatti anche un fischietto riesce ad attivarmi. Niente aggiungendo questo derivatore (differenziatore) si riuscirà a risolvere il problema ?

Per quanto riguarda il fischio come dice Livio è un onda modulata con il derivatore dovrei risolvere.

Share this post


Link to post
Share on other sites
Livio Orsini
Non sapevo che si poteva anche chiamare derivatore.

male, perchè è il suo nome corretto. E' il dispositvo duale dell'integratore.

In pratica la rete CR, essendo un passa alto, è un anticipo di fase ed evidenzia le brusche variazioni.

Normalmente i testi la denominano come "rete derivativa" così come l'integratore, che è un ritardo, viene denominato come "rete integrativa".

Niente aggiungendo questo derivatore (differenziatore) si riuscirà a risolvere il problema ?

Questo dipende dalla tua capicità di messa a punto del circuito. ;)

Edited by Livio Orsini

Share this post


Link to post
Share on other sites
dott.cicala

insisto col provare ad attenuare....altrimenti ci vole un filtro con una bella pendenza, almeno di 4° ordine. Lo si fa con 2 operazionali....ma poi, sei attrezzato per tararlo?

Altrimenti è inutile

Share this post


Link to post
Share on other sites
ic910

Ho il generatore di funzioni un pò messo male dovrei rivederlo e sistemarlo l'oscillo è ok

Share this post


Link to post
Share on other sites
dott.cicala

Ok....con l'oscillo sei a cavallo.....per il generatore, basta che scarichi un qualsiasi programmino che usa la scheda audio del pc e hai il tuo bel generatore bf.

Per i filtri attivi...c'è un bel programmino della Texas Instruments....FilterPro desktop....col quale puoi dimensionare i tuoi filtri

Edited by dott.cicala

Share this post


Link to post
Share on other sites
dott.cicala

Ecco un esempio di passa basso 4°ordine tagliato per 400Hz con 20dB di guadagno (10 volte in tensione) per alimentazione duale.

Per alimentarlo in singola, basta fornire vcc/2 agli ingressi [+] e non dimenticare il c di disaccoppiamento per ognuno

1182c62b1f8f6ffe446c69b9572c5ef1.jpg

Edited by dott.cicala

Share this post


Link to post
Share on other sites
ic910

Grazie Stefano per le info . Sono andato sul sito Texas ma il programma vero è proprio non l'ho trovato , puoi tramite il loro sito dimensionare i filtri.Sai dove scaricare il programma ?

Facendo le prove con l'oscilloscopio ho potuto constatare che un fischio può andare da 130 Hz a 800 Hz .

Invece un battito di mani può arrivare anche a un picco di 5 Khz

Share this post


Link to post
Share on other sites
Livio Orsini

Il problema non è il filtro, il problema è la frequenza. :smile:

Puoi fare il filtro con fianchi ripidissimi finchè vuoi, ma qualsiasi frequenza che è in banda chiara passa. Il povero filtro non sa se chi ha generato la frequneza è un fischio o un battito di mani o una pernacchia.

Quindi, come prima cosa dovresti verificare cosa esce dal microfono, o dal primo stadio dell'ampli, quando batti lle mani, poi mettere a punto un circuito che è in gradi di rivelare quel tipo di suono e solo quel tipo di suono.

Edited by Livio Orsini

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...