Движение робота «восьмеркой»
В конце предыдущего задания, в котором мы измеряли максимальную скорость движения робота, мы остановились на том, что готовы проектировать различные маршруты движения, например, движение по квадрату или «восьмеркой».
В настоящем задании предлагаем написать программу движения робота восьмеркой. Для этого попеременно устанавливаем разное значение ШИМ для правого и левого колёс. Соответственно колеса будут вращаться с разной скоростью, и наш робот будет двигаться змейкой.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#define DIR_R 2 #define SPEED_R 3 #define DIR_L 4 #define SPEED_L 5 void setup() { pinMode (DIR_R, OUTPUT); pinMode (SPEED_R, OUTPUT); pinMode (DIR_L, OUTPUT); pinMode (SPEED_L, OUTPUT); } void loop() { digitalWrite (DIR_R, HIGH); analogWrite (SPEED_R, 0); digitalWrite (DIR_L, HIGH); analogWrite (SPEED_L, 0); delay(1000);// пауза 1 сек. digitalWrite (DIR_R, HIGH); analogWrite (SPEED_R, 100); digitalWrite (DIR_L, HIGH); analogWrite (SPEED_L, 255); delay(1000); digitalWrite (DIR_R, HIGH); analogWrite (SPEED_R, 255); digitalWrite (DIR_L, HIGH); analogWrite (SPEED_L, 100); delay(1000); } |
Итак, код программы готов, сравните ваш код с нашим образцом.
Тэги:
arduino