Author Topic: Reality Check – Raspberry Pi & DC Motor Control  (Read 2119 times)

0 Members and 1 Guest are viewing this topic.

Offline RpiHackerTopic starter

  • Jr. Member
  • **
  • Posts: 12
  • Helpful? 0
Reality Check – Raspberry Pi & DC Motor Control
« on: October 24, 2014, 07:47:47 AM »
After reading the material on this site, and elsewhere, I believe I have a conceptual framework to proceed with detailed planning to provide locomotion to a Raspberry Pi based robot (Pi-Bot) equipped DC motor driven wheels.

That said, I would appreciate feedback from forum members to confirm, correct, and refine the following conceptual framework to provide locomotion and skid steering control to the Pi-Bot:

RPi  PWM → level shifter → L298 motor driver → DC motor
        ↑                                                                  ↓
PID feedback <--------------------------------< motor encoder

Based on my understanding of RPi PWM I do not believe it necessary to have a microcontroller between the RPi and the motor driver (L298).

My intent is to build-out the Bot slowly adding features, capabilities, support circuits, sensors, etc. after verifying the previous stages work properly.

With this in mind, I must take care to plan carefully for future build-out of the Pi-Bot so as not to do something in the early stages of the build-out that would require major rework to in order to meet the original design specs of the Pi-Bot.

Thank you for any feedback you may provide.

Regards,

Offline Fr0stAngel

  • Full Member
  • ***
  • Posts: 96
  • Helpful? 3
  • [O_O] what??
Re: Reality Check – Raspberry Pi & DC Motor Control
« Reply #1 on: October 28, 2014, 02:31:19 AM »
Since the RasPi I/O is supposed to work at 3.3, it'd be better to use the level shifter in between GPIO  and the L298 as you mentioned. You can also use optical isolation with level shifting to further ensure the safety of the RasPi.
I think your basic idea is sound, and you should go with it.. Good Luck! :)
'crazy' is the new hype! =)

 


Get Your Ad Here

data_list