Как управлять рукой робота с помощью ультразвукового датчика и Arduino

Я работаю над Arduino и HC_SR04. Я искал большинство документов, но они не решили нашу проблему.

Мой вопрос заключается в том, как прочитать значение, которое берется из библиотеки <NewPing>,

#define echopin 11 //set echopin
#define trigpin 12 //set trigpin

#include <Servo.h>;

Servo robotArm;

#include <NewPing.h>

#define MAX_DISTANCE 400

NewPing sonar(trigpin, echopin, MAX_DISTANCE);

int distance;

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
robotArm.attach(9); //attach our servo
robotArm.writeMicroseconds(150);
}

void loop() {
// put your main code here, to run repeatedly:
robotArm.write(90); //always set to servo 90 to position it to the middle
//codes of ultrasonic sensor
distance=digitalRead(echopin);
if (distance <= 20) //if ultrasonic sensor detects on obstacle less than 20 cm in 90 degree angle
{
robotArm.write(0); //dervo rotates at full speed to the right
delay(60);
}

else
{
robotArm.write(90); //else servo stays at 90 degree angle
delay(60);
}
Serial.print(distance); //print distance
Serial.println("cm"); //print distance unit cm
}

0

Решение

Вместо distance=digitalRead(echopin); попробуйте использовать distance = sonar.ping_cm(),

0

Другие решения

Других решений пока нет …