1
\$\begingroup\$

I have to drive a total of four motors with a Raspberry Pi Pico. I designed this schematic, but before ordering the PCB I would like to get validation from someone more experienced than me.

The whole thing is supposed to control a small car, with 4 motors via PWM.

my schematic

Any advice is welcome and since this is my first question asking here please correct me if something is wrong with the phrasing.


UPDATE:
Following all the important directions given in the responses and comments I have made changes to my circuit, below is the schematic.

new schematic

The bypass capacitors are all in the right corner. In the PCB I place them as close to the ICs as possible.

I hope the majority of the errors are gone, thank you all for your help.

\$\endgroup\$
2
  • \$\begingroup\$ That's a pretty open-ended question. Do you want opinion-based generic feedback or a list of items that are simply incorrect? It would be impossible to know which errors are small enough you can live with them and which errors are large enough so you want to correct them, so where should the line be drawn? Also, you never described what the device is and what it should do to evaluate if the design does what it is intended to do. \$\endgroup\$
    – Justme
    Aug 5, 2021 at 8:02
  • \$\begingroup\$ Hi @Justme and thank you for the comment. The whole thing is supposed to control a small car, with 4 motors via PWM. I would need to know if the design can work - ideally - and if there is anything I can improve. \$\endgroup\$
    – lasb3tas
    Aug 5, 2021 at 8:14

4 Answers 4

6
\$\begingroup\$

There is an almost fatal error: the IRFZ44N are standard level MOSFETs and need to be driven with 10-15V on the gate to fully enhance. You are powering your gate drivers with 5V which is not enough to make them work correctly (especially in PWM).

This is easily fixed since you have a 12V rail. 47 ohm is a little high as a gate resistor but should work (depending on your PWM frequency).

I don't see the input and output capacitors for the LDOs, they are required (maybe they are some of those in the lower left corner?). The gate drivers also need their own bypass cap, check the datasheet.

A bonus side note about MLCCs: most of the time (unless they are NP0) their value depends on the voltage so you need to derate them.

\$\endgroup\$
2
  • \$\begingroup\$ Thank you for the reply and for these valuable advices. The bypass capacitators are the ones in the corner, I just place they near the ICs in the PCB. So by following your advice I have to power the mosfet drivers with +12V, is that right? \$\endgroup\$
    – lasb3tas
    Aug 5, 2021 at 8:34
  • \$\begingroup\$ Exactly, if you see their rating they are more than sufficient. 99% of the MOSFET can be driven efficiently with only 10V but the Vgs limit is usually higher and 12V is convenient. IGBTs usually need 15V. On the other hand, very low level MOSFETs can have a Vgs limit of 8V or less. A little trick: see for what voltage they declare the Rds(on); 4.5V are logic level and can be driven with 5V, 10V are standard drive. There are also intermediate level at 6.5V but they are often simply driven at 10V anyway: even a logic level is more efficient if you can drive it at 10V \$\endgroup\$ Aug 6, 2021 at 7:14
3
\$\begingroup\$

Pin 3 of U2 appears unconnected?

VDD pins of U1 and U8 are unreadable, maybe 5V?

No idea what Q5 is for?

Voltage regulators should have decoupling capacitors next to them - both on the schematic and on the board.

Separate flyback diodes for motors would be a good idea. No idea of motor power spec? Don't forget to ensure adequate trace width and heat sinking.

Since the Pi outputs will be floating when it's powered on, and for several seconds while it's booting, you should put pulldown resistors of 10k-100k on them so that the MOSFET driver does not accidentally turn on the motors.

Minor point: GND arrows should point downwards.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you for your reply and for the advices! I forgot to attach IO_VDD. The dec capacitators are the ones in the corner. Yes, I will add flyback diode directly on the motor and some pulldown resistors on the pi pico pins. \$\endgroup\$
    – lasb3tas
    Aug 5, 2021 at 8:38
3
\$\begingroup\$

All but one GND pin of Raspberry Pi is left open. Do you really want to use one single ground pin for all AC and DC signal return paths?

Are you sure the 10k I2C pull-up resistors allow you to communicate at the speed you want?

Do all chips have their own supply bypass caps?

That and what everyone else said already.

\$\endgroup\$
3
  • \$\begingroup\$ Thank you for the reply. Yes, each ic have a bypass cap near it. Will connect all the gnd pins to gnd. About the i2c: How can I choose a proper resistor? \$\endgroup\$
    – lasb3tas
    Aug 5, 2021 at 8:50
  • \$\begingroup\$ Resistor selection is discussed for example in I2C specification and there is plenty of literature as application notes how it is done. Basically you need to know what speed you want to use or is possible with the devices you are using and what are the electrical characteristics of the I2C pins of the chips, and how much capacitance the wiring may have. You can just look at the datasheets for suggestions, and it's always a trade-off between speed, distance and power consumption. \$\endgroup\$
    – Justme
    Aug 5, 2021 at 9:02
  • \$\begingroup\$ Oh, thank you. I'll take a look. \$\endgroup\$
    – lasb3tas
    Aug 5, 2021 at 9:04
3
\$\begingroup\$

As addition to the other answers: if you use a logic-level MOSFET (like BUK9M10) or any NMOS with a gate-source threshold voltage below ~1.6V you wouldn't need the MOSFET drivers at all in my opinion. Anoter thing: you need freewheeling diodes accross the motors, especially if you want to run it with strong motors.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you for the reply. I will add the diodes directly to the motors, they are pretty strong, 12V - 35W \$\endgroup\$
    – lasb3tas
    Aug 6, 2021 at 6:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.