Go Down

Topic: misurare numero di giri cosa fareste in questo caso (Read 685 times) previous topic - next topic

gingardu

Apr 10, 2013, 05:47 pm Last Edit: Apr 10, 2013, 05:59 pm by gingardu Reason: 1
Ciao ho ripreso un vecchio progettino  per misurare il numero di giri  di un   "motore"

personalmente ho già provato con diodo e fotodiodo su un pin analogico  e sembra funzionare ma ho dei dubbi quando il motore sarà a velocita massima 1500 giri minuto  o addirittura 3000,

gli interrupt NON POSSO USARLI perché li usa già il programma,
vorrei confrontare (o anche adottarlo) il vostro parere, meglio se lo schemino completo con componenti specifici,

ho realizzato il disco forato (foto) con un  grosso anello di acciaio (C40) e un piatto di hard disk  
gli ho fatto 10 fori  il tutto abbastanza preciso e robusto (fatto al tornio)

come ingresso lettura posso utilizzare un pin analogico o un pin digitale  ma non gli interrupt
Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

PaoloP

Ti costruisci una mini board con un tiny85 e gli fai leggere con un interrupt le rotazioni del motore.
Poi lo interroghi via I2C o seriale per leggere il dato.
Anche a 8MHz, con l'oscillatore interno, dovresti riuscire a leggere i giri.
Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

ratto93


Ti costruisci una mini board con un tiny85 e gli fai leggere con un interrupt le rotazioni del motore.
Poi lo interroghi via I2C o seriale per leggere il dato.
Anche a 8MHz, con l'oscillatore interno, dovresti riuscire a leggere i giri.


concordo mi pare la soluzione più semplice....
Non so poi se esistano ma mi par di everli visti da qualche parte degli integrati che usando una coppia di fotodiodi ti restituiscano un valore di tensione in base ai giri.
Forse erano della serie TL ma se esistono ancora sono integrati molto vecchi e non so quanto precisi...
Se corri veloce come un fulmine, ti schianterai come un tuono.

gingardu

quindi...  "nulla di fatto"   
un convertitore frequenza>tensione   e poi fare analoRead ( ) ?

Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

ratto93


quindi...  "nulla di fatto"   
un convertitore frequenza>tensione   e poi fare analoRead ( ) ?



Esattamente.... forse potresti farne uno con doppio led , il ricevitore carica un condensatorino e ne misuri o amplifichi e poi misuri la tensione in uscita, dovrebbe essere proporzionale all'aumentare di giri ma non avendo mai provato non posso confermartelo...
Se corri veloce come un fulmine, ti schianterai come un tuono.

gingardu

mah..   
quello che mi interessa per primo  e l'interfaccia rotella forata segnale di uscita,

che diodo e fototransistor/fotodiodo  si potrebbe adoperare   e in che modo collegarli per avere un segnale di uscita  pulsante (o il "più pulsante" possibile) 0 - 5 volt
non sono nemmeno troppo convinto dei fori cosi piccoli che ho fatto sul disco   :~
Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

ratto93


mah..   
quello che mi interessa per primo  e l'interfaccia rotella forata segnale di uscita,

che diodo e fototransistor/fotodiodo  si potrebbe adoperare   e in che modo collegarli per avere un segnale di uscita  pulsante (o il "più pulsante" possibile) 0 - 5 volt
non sono nemmeno troppo convinto dei fori cosi piccoli che ho fatto sul disco   :~

Ti basta un sensore a forcella, non so dirti la sigla sono quelli che trovi negli encoder delle stampanti..
Se corri veloce come un fulmine, ti schianterai come un tuono.

leo72

Hai detto che gli interrupt non puoi usarli perché li usi già da un'altra parte. Immagino ti riferisci agli INT0 e INT1.
Ma tu sai che su ognuno dei 23 pin del microcontrollore usati come I/O esistono altri interrupt detti PCINT?
Non è facile usarli come i primi due perché non sono supportati ufficialmente dal core ma con la giusta libreria si può fare  ;)
http://code.google.com/p/arduino-pinchangeint/

gingardu



quindi...  "nulla di fatto"   
un convertitore frequenza>tensione   e poi fare analoRead ( ) ?



Esattamente.... forse potresti farne uno con doppio led , il ricevitore carica un condensatorino e ne misuri o amplifichi e poi misuri la tensione in uscita, dovrebbe essere proporzionale all'aumentare di giri ma non avendo mai provato non posso confermartelo...

comunque a pensarci bene il doppio led è impossibile che funzioni  :~ 

più va piano il disco  e più luce prende il led con il problema che se si ferma su un foro prende la massima luce con il disco fermo ......   assurdo
Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

Go Up