Motor driver for Pi Zero

Hi team,

Any suggestion on motor driver and DC servo motor for Raspberry Pi Zero?

Any comment on the following?

Vs.

VS

1 Like

Hi Riddhi,

All three of those motor drivers are very similar in that they all communicate via I2C protocol with a Pi Zero and will be able to use an external power supply to drive a motor.

Have you got a motor in mind you want to drive or can you give us some more details about your requirements?
One of those motor drivers is 16 channels, how many motors do you need to control and what type of motor will they be?

2 Likes

Thanks Trent,

We are building a cable cam so basically only 1 motor needed. The cable cam will have a total weight of around 1kg. It will stop at every 5meter interval. For motor, we are thinking these options:

Thanks.

2 Likes

Hi Riddhi,

Sounds like a cool project, a motor with an encoder would be a lot easier to keep track of if you wanted to move the camera fixed distances without having to adjust with a human operator. Keep in mind your motor stall current will determine the maximum load that will be placed on the motor driver.

The drivers you’ve linked are mostly good for up to 1.2A and some of these gearmotors have a stall current of 3.2A.

2 Likes

Thanks Trent,

For a load of 1kg and to be on safe side, lets consider it 2kg, which of these motors would you suggest? I am leaning towards DFRobot Driver with 6v 10kg 210rpm motor from dfrobot

1 Like

Hi Trent, further to my previous message…
i get what you mean now… i did not even check the stall current on mentioned motors because DFRobot seems to be showing those motors as compatible with this driver. Here on this page: DC Motor Driver HAT for Raspberry Pi Wiki - DFRobot

Will this impact only the speed or is it going to kill my hardware?

2 Likes

Hi Riddhi,

I see what you mean DFRobot is linking to that motor as a required part but then also warning to ensure that the motor’s current stays below 2A. I think this is a mistake

When sizing up components in a drive system some things can feel like a bit of a chicken and egg scenario, where chosing one part impacts another and vise versa. The typically way to size a drivetrain is as follows:

  • Start from the force required and work out a motor and gearbox combination that can output the required speed and torque.
  • Then once you know the operating voltage and stall current of the motor find a driver that can supply more of both (you always want a little headroom to be safe).
  • Then check that your power supply or battery can supply the maximum output of the driver, you may need a regulator between your driver and power supply/battery.

In all cases the load determines the first requirement, then everything else must meet or exceed those specs back towards the power supply.

A good way to think of it is that your load (the motor) draws whatever power it needs. The driver or power supply doesn’t push current, the load pulls it.

4 Likes

Thanks Trent,

I will start looking for motors based on a weight capacity of 2kg and check what amp current are the selection options. However, in case I cannot find any motor for less than 3.6a stall current, which motor driver (with encoder support) would you recommend?

1 Like

Do you think any of the following will work for my use case?:

1 Like

Hi Riddhi,

You’re in luck! Those Pololu motors have an excellent table in the product description that lays out the capabilities and requirements of all those motors:

So just follow Trent’s instruction above, (work out the torque required etc.) and you should be on your way!

-James

2 Likes

Thanks Trent and James,

Exactly what doctors ordered! :slight_smile:

2 Likes

Hello there,

I received my motors yesterday and seem to be working as expected. Could you please suggest some ideas for setting position/location control? I am using Polulu motor with DFRobot Motor Driver Hat v1

3 Likes

Hi Riddhi,

I’d have a look at using a linear encoder or distance sensor such as an ultrasonic or TOF sensor. There are lots to choose from but are project dependent on length, speed that the vehicle will be travelling at etc.

2 Likes

Hi Liam, I am using this motor with built-in encoder: 47:1 Metal Gearmotor 25Dx67L mm LP 12V with 48 CPR Encoder | POLOLU-4885 | Core Electronics Australia

Will this be the best choice if I want to stop motor at certain distance for few seconds and then move it again. Total distance 50m in one direction and then move back to its starting position.

2 Likes

If you know how many turns of the shaft there are in 50m of movement, then you can multiply that by 48 and turn the motor while you count that many ticks of the encoder. Then wait a few seconds before reversing the motor direction and counting the same number back to the start.

2 Likes

Thanks, Jeff, Not sure why I was making it too complex. sometimes the simplest way is the right way :).

2 Likes

It is almost ready for me. Now have one quick question regarding power source. I was thinking of using a single powerbank as a power source to provide current to the Pi Juice and the motor. However, the variable voltage power bank with the capability to provide up to 20v seems to be sending only 5v to the DFRobot Motor Driver. Any suggestions?

2 Likes

Hi Riddhi

If we knew exactly what that was we might be able to suggest something.

Power bank or power supply. This subject has come up so many times over the past couple of years there should be a heading for it at the top of the page.
They are 2 entirely different devices. The power bank is good for charging phones and similar battery operated devices while a power supply does what it says, supplies power.

I am not going into it all again. Suggest you apply some filtering on a search and try to find previous posts on the subject.

For your application I believe you should be using a power SUPPLY.
Cheers Bob

4 Likes

How have you configured the power bank? What have you set the voltage to? Note that the PiJuice has a maximum allowable supply voltage at J4 of 10v - that is not enough to drive the motor reliably, so it might not be possible to power both the PiJuice and the motor from one source.

3 Likes

I learned it hard way that the actual usb source power is not more than 5v. I then got an external power source that supplies 9v. It is surely supplying 9v, however, as soon as i plug the external power source to my motor driver, it also supplies power to Pi zero and every other hat in the mix. Any way to stop the motor driver from doing this?

Btw, i am using this motor driver: DC Motor Driver HAT(V1.0) | DFRobot DFR0592 | Core Electronics Australia

1 Like