Асмотор говорящит "servo does not name a type"

Я сделал sumobot с помощью arduino, экрана асинхронного двигателя и 4-контактного датчика ping, когда я загружаю свой код, он продолжает выдавать мне эту ошибку: "" Сервопривод "не называет тип" вот мой код.

#include <AFMotor.h>
#include <NewPing.h>
#include <Servo.h>

#define TRIGGER_PIN  A0  // Arduino pin tied to trigger pin on the ultrasonic sensor.
#define ECHO_PIN     A2  // Arduino pin tied to echo pin on the ultrasonic sensor.
#define MAX_DISTANCE 200 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.

 //speed variables for the left and right motor
int Lspeed = 180;
int Rspeed = 255;

//declaring the left and right motors and attaching them to 
//their corresponding connector on the motor shield
Servo leftMotor;
Servo rightMotor;

void setup() {
  Serial.begin(115200);
  //sets initial speed
  leftMotor.setSpeed(Lspeed);
  rightMotor.setSpeed(Rspeed);
}

void loop() {
  unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS).
  unsigned int CM = uS / US_ROUNDTRIP_CM;
  
  if (CM &lt; 15 && CM &gt; 0) {
    int iteration = 0;
    while( iteration == 0){
      leftMotor.run(FORWARD);
      rightMotor.run(BACKWARD);
      iteration = 1;
    }
    delay(600);
  }
  
  //starts motors going forward
  leftMotor.run(FORWARD);
  rightMotor.run(FORWARD);
  
  Serial.print("Ping: ");
  Serial.print(uS / US_ROUNDTRIP_CM); // Convert ping time to distance in cm and print result (0 = outside set distance range)
  Serial.println("cm");
}

, 👍0

Обсуждение

Попробуйте #включить<Servo.h>, @Mikael Patel

В качестве любезности по отношению к людям, которые читают ваш вопрос и пытаются ответить, пожалуйста, включите свой код в вопрос, а не ссылаться на него. Кроме того, включение кода гарантирует, что он останется доступным., @dlu

хорошо, но вставка кода продолжала давать сбои и просто показывала искаженный текст, выделенный жирным шрифтом и кодом, @parseguy

также я использую 2 сервопривода paralax (большие), @parseguy

Возможный дубликат Почему в нем говорится, что "Сервопривод" не называет тип, @Roberto Lo Giacco


1 ответ


1

Вы создаете сервообъекты вместо объектов AF_DCMotor. Измените это:

Servo leftMotor;
Servo rightMotor;

на это:

AF_DCMotor leftMotor(1);   // Измените эти номера на правильные номера двигателей
AF_DCMotor rightMotor(2);  // вы используете на щите
,