1010motor povorot
Перейти к навигации
Перейти к поиску
//////////////////////////////////////////////
// 2019.07.19 woronin, umkiedu@gmail.com
// движение на 4-х моторах с поворотом
// Robot UMKI controller K6_3
// самостоятельно добится чтобы получилась езда по квадрату
//////////////////////////////////////////////
int motorR1=2; // 2 контакт определяет направление вращения первого правого мотора
int motorR2=6; // 6 контакт определяет направление вращения второго правого мотора
int motorL1=4; // 4 контакт определяет направление вращения первого левого мотора
int motorL2=7; // 7 контакт определяет направление вращения второго левого мотора
int mLspeed=3; // 3 управляет вращением левого мотора
int mRspeed=5; // 5 управляет вращением правого мотора
void setup() {
pinMode(mLspeed, OUTPUT);
pinMode(mRspeed, OUTPUT);
pinMode(motorR1, OUTPUT);
pinMode(motorR2, OUTPUT);
pinMode(motorL1, OUTPUT);
pinMode(motorL2, OUTPUT);
// Драйвер управляется выходными сигналами с Ардуино.
//Поэтому определяем все контакты , как OUTPUT
}
void loop()
{
//Двигаемся вперед
digitalWrite (motorR1, HIGH);// Команда digitalWrite устанавливает на контакте 2 высокий уровень
digitalWrite (mRspeed, HIGH); // высокий уровень на контакте 3 разрешает драйверу
digitalWrite (motorL1, HIGH);
digitalWrite (mLspeed, HIGH);
delay(2000); // Вращаем 1 сек
// стоп
digitalWrite (mRspeed, LOW);
digitalWrite (mLspeed, LOW);
delay(500); // 1 сек
//Дигаемся вправо
digitalWrite (motorR1, HIGH);// Команда digitalWrite устанавливает на контакте 2 высокий уровень
digitalWrite (mRspeed, HIGH); // высокий уровень на контакте 3 разрешает драйверу
digitalWrite (motorL1, LOW);
digitalWrite (mLspeed, HIGH);
delay(600); // поворот на 90 градусов - добивается подбором времени
// стоп
digitalWrite (mRspeed, LOW);
digitalWrite (mLspeed, LOW);
delay(500); // 1 сек
}