Программа
Для управления сервомоторами робота используем стандартную библиотеку Servo. Движение сервомоторов на заданный угол осуществляется при помощи функции write. Для управления сервомоторов, необходимо подать на него ШИМ сигнал управления с помощью функции attach. А функция detach отключит сервомотор.
Ознакомиться с основами работы с сервомоторами в среде Arduino IDE можно в уроке управление сервоприводом.
Вращение сервомоторов
Напишем программу, которая сначала повернёт моторы в исходное положение — угол 90 градусов. Затем последовательно повращает все четыре мотора. В конце — отключит моторы.
#include "Servo.h"
byte servoPins[4] = {2,3,4,5};
Servo srv[4];
void setup() {
for(byte i=0; i<4; i++){
srv[i].attach(servoPins[i]);
}
// сброс сервомоторов в центральное положение
for(byte i=0; i<4; i++){
srv[i].write(90);
}
delay(3000);
// вращение в стороны
for(byte i=0; i<4; i++){
srv[i].write(80); // движение против часовой на 10 градусов
delay(1000);
srv[i].write(100); // движение по часовой на 10 градусов
delay(1000);
srv[i].write(90); // возвращение в исходное
delay(1000);
}
delay(3000);
// отключение сервомоторов
for(byte i=0; i<4; i++){
srv[i].detach();
}
}
void loop() {
}