Ein Arduino
Und sehen Sie das Video :))
-------
Idee:
Die Idee ist, ändern Sie die Emitter-Spannung und Distanz basierend auf Map-Funktion zu erkennen...
-------
Code
-------
#define pIRR 10
#define pIRE 3
Geschwindigkeit der Erkennung Ms
Int Captspeed = 50;
void setup() {}
Serial.Begin (9600);
PinMode (pIRR, Eingabe);
PinMode (pIRE, OUTPUT);
PinMode (11, OUTPUT);
}
Float VoltMin = 1,9;
VoltMax schweben = 5;
void loop() {}
Float Spannung = VoltMin;
Int Schritte = 0;
während (Spannung < = VoltMax)
{
Int-Av = ConvertVoltToAnalog(voltage);
Spannung += 0.1;
analogWrite(pIRE,av);
Delay(5);
Int ComingIR = digitalRead(pIRR);
Delay(1);
If(comingIR == 0)
{
digitalWrite(11,HIGH);
Spannung = 99;
zu brechen;
}
digitalWrite(11,LOW);
Schritte ++;
Delay(25);
}
Entfernung zu schweben = 99;
Wenn (Schritte! = 0 & & Spannung == 99)
{
Abstand = map(steps,1,31,-4,31);
Serial.Print ("Entfernung zum Objekt =");
Serial.println(Distance);
}
anderes
{
Serial.println ("nichts erkannt!");
digitalWrite(11,LOW);
}
Delay(Captspeed/2);
analogWrite(pIRE,0);
Delay(Captspeed/2);
}
Int ConvertVoltToAnalog (Int Spannung)
{
Int Res = 0;
Res = map(voltage,0,5,0,255);
Res zurück;
}