пятница, 29 июня 2012 г.

Seeeduino V2.21(ATmega 168) и H-Bridge моторный модуль (L298)

Привет.Сегодня рассмотрим связку Seeduino на чипе Atmega168 и моторного модуля H-Bridge на чипе L298N

Выбор мой пал на эти платы из-за того что они дешевые Seeeduino V2.21 (ATmega 168) обошелся в 559 рублей(если покупаете это устройство то советую сразу же заказать Mini USB кабель за 59 руб,чего я сразу не сделал купил в переходе на речном),а H-Bridge моторный модуль (L298) в 679 рублей. Все эти платы были куплены в разное время т.к у студентов всегда денег мало=)


На сайте seeedstudio.com можно найти инструкцию для подключения этих устройств туц, но она на Английском языке.
И так нам ещё понадобится провода можно тоже купить (чего я не сделал и придется теперь крутить простые проводочки)  купить контактные кабеля.
Соединяем вот таким образом к Seeduino ну или к Arduino таким же образом

А к моторному модулю

Если заметить то наш моторный модуль будет питаться от Seeduino
Если вам мало то подключайте дополнительный источник питания (такого на данный момент у меня нет)
Все подключено теперь подключаем MiniUsb к ПК и запускаем arduino-1.0
Я решил долго не думать и дать вам код который прописан в примере,но перед этим сделав себе такую шпаргалку







 Её можно найти в руководстве H-Bridge(Указывал выше)
Все очень просто если на порты 8 и 9 подать сигнал HIGH и LOW,а на порт 11 задать скорость к примеру 50 то получится вот так:
analogWrite(11,50);
digitalWrite(8,HIGH);
digitalWrite(9,LOW); 
То наш мотор будет крутиться против часовой.Поменяв значения можно заставить его крутиться по часовой.Для того что бы остановить достаточно на 8 и 9 послать  HIGH и HIGH  

Вот сам пример из руководства

int pinI1=8;//define I1 port
int pinI2=9;//define I2 port
int speedpin=11;//define EA(PWM speed regulation)port
void setup()
{
  pinMode(pinI1,OUTPUT);//define this port as output
  pinMode(pinI2,OUTPUT);
  pinMode(speedpin,OUTPUT); 
}

void loop()
{
  analogWrite(speedpin,100);//Устанавливаем скорость 
  delay(2000);//Задержка 2 сек 
  digitalWrite(pinI1,LOW);// крутиться по часовой стрелке
  digitalWrite(pinI2,HIGH); 
  analogWrite(speedpin,100);
  delay(2000); //Задержка 2 сек 
  digitalWrite(pinI1,HIGH);// крутиться против часовой 
  digitalWrite(pinI2,LOW);
  analogWrite(speedpin,100); 
  delay(2000); //Задержка 2 сек 
  digitalWrite(pinI1,HIGH);// остановить 
  digitalWrite(pinI2,HIGH);
  delay(2000); //Задержка 2 сек 
}


После того как вы загрузили код в Seeduino или Arduino должно работать таким образом


Вот и все!

1 комментарий:

  1. Добрый день. А от отдельного источника питания уже пробовали запускать Н-мост? мне интересно как от 12В он будет работать.
    Я спаял уже третий Н-мост на мосфетах, от ардуины норм работает, подаю 12, так барахлить начинает. вот и думаю стоит ли брать уже готовую плату...

    ОтветитьУдалить