Arduino – Range finder (sketch)

Qui trovate l’articolo
Il video può essere visualizzato anche su youtube
Supportami su Patreon!
Seguimi anche sulla pagina di facebook! e sul canale di youtube

di seguito lo sketch (il software che fa funzionare il tutto):


#include ;

Servo myServo;
const int triggerPin = 2;
const int echoPin = 3;
const int servoPin = 9;
long duration = 0;
int distance[12];
int servoPosition[] = {0, 15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180};

void setup()
{
pinMode(triggerPin, OUTPUT);
pinMode(echoPin, INPUT);
myServo.attach(servoPin);
Serial.begin(9600);
}

void loop()
{
for(int i = 0; i < 12; i ++) { delay(100); myServo.write(servoPosition[i]); delay(100); digitalWrite(triggerPin, LOW); delayMicroseconds(2); digitalWrite(triggerPin, HIGH); delayMicroseconds(10); digitalWrite(triggerPin, LOW); duration = pulseIn(echoPin, HIGH); distance[i] = duration / 59; Serial.print("Angolo: "); Serial.print(servoPosition[i]); Serial.print(" gradi"); Serial.print(" distanza: "); Serial.println(distance[i]); } for(int i = 11; i > 0; i--)
{
delay(100);
myServo.write(servoPosition[i]);
delay(100);
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance[i] = duration / 59;
Serial.print("Angolo: ");
Serial.print(servoPosition[i]);
Serial.print(" gradi");
Serial.print(" distanza: ");
Serial.println(distance[i]);
}
}

Ti piaciono i miei tutorial e progetti? Aiutami a realizzarne altri. Supporta Zamein – Tutorials & Projects su Patreon!

One thought on “Arduino – Range finder (sketch)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *