goksurahsan Ответов: 1

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


#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
}


Что я уже пробовал:

Я работаю над arduino и HC_SR04. Я просмотрел большую часть документов, но не решил нашу проблему. Мой вопрос заключается в том, как прочитать значение, взятое из библиотеки NewPing. Спасибо

[no name]

Что вы пробовали? Что здесь непонятно: http://playground.arduino.cc/Code/NewPing

hairy_hats

Для конкретных проблем Arduino вам, возможно, лучше спросить об этом на форумах Arduino.

1 Ответов

Рейтинг:
1

KarstenK

Непонятно, о чем вы просите, но первый пункт, где вы должны искать, находится в Новая документация.

Совет: для четкого кода это состояние искусства, чтобы написать заголовки сверху, а затем реализовать и инициализировать таким образом:

#include <servo.h>;
#include <newping.h>
//start with constants
#define echopin 11 //set echopin (I hope you know why that value)
#define trigpin 12 //set trigpin (I hope you know why that value)

const int MAX_DISTANCE = 400;//better for type checks
//implement global objects
Servo robotArm;
NewPing sonar(trigpin, echopin, MAX_DISTANCE);
int distance = MAX_DISTANCE;//initialize</newping.h></servo.h>