BZ (I)
Offline
Brattain Member
Karma: 162
Posts: 15726
+39 349 2158303
|
 |
« Reply #45 on: June 26, 2010, 07:49:18 am » |
Só di essere noioso perché mi ripeto. Perché non misuri il tempo fra 2 impulsi? In questo modo sei indipendente dal dover aspettare un tempo determinato per contare gli impulsi. passi: Inizi la misura aspettando il primo impulso Aspetti il secondo impulso. Calcoli la velocitá e la metti sul display inizi da capo.
Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Milano Italy
Offline
Jr. Member
Karma: 0
Posts: 61
Arduino <3
|
 |
« Reply #46 on: June 26, 2010, 12:57:01 pm » |
eh ma se con questa storia del tempo tra un impulso e l'altro che non scende... non funzionerebbe comunque...
|
|
|
|
|
Logged
|
|
|
|
|
Deep south of Italy
Offline
Faraday Member
Karma: 6
Posts: 2954
The quieter you become, the more you can hear
|
 |
« Reply #47 on: June 26, 2010, 01:21:15 pm » |
a che velocità corrisponderebbe una lettura di un 1mpulso ogni dieci microsecondi?
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Sr. Member
Karma: 0
Posts: 489
Arduino addicted
|
 |
« Reply #48 on: June 26, 2010, 06:34:52 pm » |
Se può essere utile ho trovato questo: http://www.arduino.cc/playground/Learning/Tachometernon ho dato un'occhiata al codice anche perchè ci avrei capito poco, per ora, ehehe  Vedi se ti può servire 
|
|
|
|
|
Logged
|
|
|
|
|
BZ (I)
Offline
Brattain Member
Karma: 162
Posts: 15726
+39 349 2158303
|
 |
« Reply #49 on: June 27, 2010, 12:02:50 am » |
ciao a tutti
@ Locke : non ho capito cosa vuoi dire. @ NetWorm : il link descrive la misura la velocitá di rotazione di un motore con attacata un elica di un modellino di aereo. @ brainbooster con un impulso per giro della ruota ad una velocitá supersonica.
Ciao Uwe
|
|
|
|
|
Logged
|
|
|
|
|
Deep south of Italy
Offline
Faraday Member
Karma: 6
Posts: 2954
The quieter you become, the more you can hear
|
 |
« Reply #50 on: June 27, 2010, 01:24:38 am » |
allora prova a fare un piccolo esperimento:
int ledPin = 13; // seleziono un pin per il LED volatile int state = LOW; // ricorda lo stato corrente
void setup() { pinMode(ledPin, OUTPUT); //dichiara ledPin come OUTPUT Serial.begin(9600); attachInterrupt(0, check, CHANGE); // attacca un interrupt (interrupt 0 = digital pin 2) }
void loop() { digitalWrite(ledPin, state); }
void check() { // Interroga il relè per conoscere lo stato state = !state; Serial.print("Stato cambiato a: "); Serial.print(state); Serial.print(".\n"); }
CHANGE è usato per riconoscere il cambiamento di stato ma puoi usare RISING se ti interessa solo l'impulso in salita o FALLING per la discesa. con questo dovresti ricevere sulla seriale una notifica ogni volta che il sensore cambia il suo stato a qualsiasi velocità.
|
|
|
|
« Last Edit: June 27, 2010, 02:54:10 am by brainbooster »
|
Logged
|
|
|
|
|
0
Offline
Sr. Member
Karma: 0
Posts: 489
Arduino addicted
|
 |
« Reply #51 on: June 27, 2010, 06:58:51 am » |
@uwefed: lo so quello  se il problema iniziale è che non riesce a leggere il valore del sensore sulla ruota perchè è troppo veloce questo non dovrebbe risolvere la cosa? Non penso che la ruota di una moto giri più velocemente di un motore da modellismo  C'è il discorso che usa un sensore ottico che è molto più veloce a commutare di uno meccanico...
|
|
|
|
|
Logged
|
|
|
|
|
Milano Italy
Offline
Jr. Member
Karma: 0
Posts: 61
Arduino <3
|
 |
« Reply #52 on: June 27, 2010, 08:46:27 am » |
Innanzi tutto ringrazio tutti quanti per l'aiuto  Ho provato il tuo sketch brain, il risultato: Se mando a Vcc non succede nulla, se mando a massa parte una sfilza di cambi di stato e non si ferma finchè non riporto a Vcc il pin... 
|
|
|
|
|
Logged
|
|
|
|
|
cuneo
Offline
God Member
Karma: 3
Posts: 777
|
 |
« Reply #53 on: June 27, 2010, 09:10:48 am » |
perchè devi mettere un condesatore da 0,1n sul pin sennò gli sbalzi di tensione fanno rilevare vari impulsi
|
|
|
|
|
Logged
|
|
|
|
|
Milano Italy
Offline
Jr. Member
Karma: 0
Posts: 61
Arduino <3
|
 |
« Reply #54 on: June 27, 2010, 09:19:15 am » |
non credo... è proprio un errore a livello di codice penso, va avanti all'infinito a meno che non dia un impulso a Vcc
|
|
|
|
|
Logged
|
|
|
|
|
cuneo
Offline
God Member
Karma: 3
Posts: 777
|
 |
« Reply #55 on: June 27, 2010, 10:52:05 am » |
prova il codice sembra giusto
|
|
|
|
|
Logged
|
|
|
|
|
Milano Italy
Offline
Jr. Member
Karma: 0
Posts: 61
Arduino <3
|
 |
« Reply #56 on: June 27, 2010, 10:58:50 am » |
In parallelo o in serie? luca
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Full Member
Karma: 0
Posts: 185
Arduino rocks
|
 |
« Reply #57 on: June 27, 2010, 12:27:31 pm » |
il condensatore va tra il pin digitale 2 e gnd. se hai fatto le prove con un filo volante al quale fai fare contatto un colpo a gnd, un colpo a vcc prendi sicuramente del rumore dovuto all'accoppiamento del filo con il corpo umano che fa fare in continuazione false transizioni
|
|
|
|
|
Logged
|
|
|
|
|
Deep south of Italy
Offline
Faraday Member
Karma: 6
Posts: 2954
The quieter you become, the more you can hear
|
 |
« Reply #58 on: June 28, 2010, 06:52:01 am » |
quel codice era solo un "motore di acquisizione degli impulsi", quindi così com'è rileva le "variazioni" sia in salita che in discesa, e dovrebbe farlo anche alla velocità che serve a tè. (gli interrupt sono più affidabili per queste cose). comunque è da modificare... per il condensatore è ok, ti fà da "antirimbalzo". P.S. almeno durante le prove tieni i fili corti.
|
|
|
|
|
Logged
|
|
|
|
|
Milano Italy
Offline
Jr. Member
Karma: 0
Posts: 61
Arduino <3
|
 |
« Reply #59 on: June 28, 2010, 07:42:01 am » |
Perfetto allora per come lo hai pensato fuziona perfettamente, ma resta il problema che non ferma il conteggio una volta finito l'impulso, ma solo fino al ritorno a low...
|
|
|
|
|
Logged
|
|
|
|
|
|