Начнем с алгоритма работы нашей программы!

1. Зададим частоту ШИМ сигнала в Гц.

2. Создадим переменную скорость в которой будем менять обороты двигателя.

3. Сформируем ШИМ сигнал на ножках микроконтроллера.

4. В бесконечном цикле будем крутить колесами с определенной частотой.

Перейдем к написанию программы и рисованию электрической схемы!

 

И так схема у нас есть, на ней обозначены микроконтроллер,ножка gnd, к портам D15, D16, D22, D23 подключен драйвер двигателя на микросхеме MX1508, два электрических мотор-редуктора, а также блок питания на 6В, подключенный для питания драйвера двигателей, ниже распиновка и характеристики драйвера двигателей MX1508, которые нам нужны будут для управления моторами робота.

Напряжение для моторов: 2-10 В
Напряжение для управляющих контактов: 1,8-7 В
Номинальный (рабочий) ток для каждого мотора: 1,5 А
Максимальный ток для каждого мотора: 2,5 А
Потребляемый ток в режиме ожидания:  0,1 мА
Тип драйвера:    Н-мост

Практически к каждому материалу есть видеоролик на  YouTube  и  RUTUBE каналах, теорию можно прочитать в статье, а как работает устройство в железе, посмотреть в видеоролике!

 

Вернемся к программе.

Драйвер двигателей у нас подключен к портам D15, D16, D22, D23, сформируем ШИМ сигнал  в программе на ножках портов D15, D16, D22, D23 и укажем частоту freq сигнала на данных ножках равной 10Гц, допишем в программе in1 = PWM(Pin(15), freq), in2 = PWM(Pin(16), freq), in3 = PWM(Pin(22), freq), in4 = PWM(Pin(23), freq), создадим переменную "skorost", равной 500%, изменяя которую будем менять обороты двигателей. С настройкой портов закончили, далее чтобы наша программа работала добавим в нее модуль import machine, который содержит необходимые функции, для работы платы, строкой from machine import Pin, PWM укажем чтобы нам постоянно не повторять machine в коде.

В бесконечном цикле while True, командами in1.deinit() - выключаем ШИМ сигнал, а in2.duty(skorost) - включаем ШИМ сигнал, аналогично и на управление второго двигателя in4.deinit() - выключаем ШИМ сигнал, а in3.duty(skorost) - включаем ШИМ сигнал, если мы хотим заставить крутиться наши мотор-редукторы в другую сторону, то просто меняем в программе in1,in2 местами и in3,in4 соответственно.

Исходный код программы Скачать архив

Понравился проект? Не забудь поделиться им с друзьями в соц. сетях.

А также подписаться на наш канал на YouTube и RUTUBE !

  • СПАСИБО ЗА ПРОСМОТР.
  • С уважением.
  • Электроника и Робототехника!