8(495)912-63-37
gmc@edu.mos.ru
vk g twit yut picassa odkl facebook

Четверг, 30 Март 2017 11:46

Задание 3. Движение робота «восьмеркой»

В конце предыдущего задания № 2, в котором мы измеряли максимальную скорость движения робота, мы остановились на том, что готовы проектировать различные маршруты движения, например, движение по квадрату или «восьмеркой».

В настоящем задании предлагаем написать программу движения робота восьмеркой. Для этого попеременно устанавливаем разное значение ШИМ для правого и левого колёс. Соответственно колеса будут вращаться с разной скоростью, и наш робот будет двигаться змейкой.
 
#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);
    }
Итак, код программы готов. Код здесь, сравните ваш код с нашим образцом.

Материал подготовил методист Разумов Ю. И.