Un Arduino
Et voir la vidéo:))
-------
Idée :
L’idée est de changer la tension de l’émetteur et de détecter à distance basé sur la fonction carte de...
-------
Code
-------
#define pIRR 10
#define pIRE 3
Vitesse de détection Ms
int Captspeed = 50 ;
void setup() {}
Serial.Begin (9600) ;
pinMode (pIRR, entrée) ;
pinMode (pIRE, sortie) ;
pinMode (sortie 11) ;
}
float voltMin = 1,9 ;
float voltMax = 5 ;
void loop() {}
flotteur de tension = voltMin ;
étapes d’int = 0 ;
tandis que (tension < = voltMax)
{
int av = ConvertVoltToAnalog(voltage) ;
tension + = 0,1 ;
analogWrite(pIRE,av) ;
Delay(5) ;
int comingIR = digitalRead(pIRR) ;
Delay(1) ;
if(comingIR == 0)
{
digitalWrite(11,HIGH) ;
tension = 99 ;
rupture ;
}
digitalWrite(11,LOW) ;
mesures ++ ;
Delay(25) ;
}
float distance = 99 ;
Si (étapes! = 0 & & tension == 99)
{
distance = map(steps,1,31,-4,31) ;
Serial.Print ("Distance à l’objet =") ;
Serial.println(distance) ;
}
d’autre
{
Serial.println ("rien détecté!") ;
digitalWrite(11,LOW) ;
}
Delay(Captspeed/2) ;
analogWrite(pIRE,0) ;
Delay(Captspeed/2) ;
}
int ConvertVoltToAnalog (int tension)
{
res int = 0 ;
res = map(voltage,0,5,0,255) ;
retour res ;
}