0
\$\begingroup\$

I have build a solution that looks almost like this: enter image description here The wires that does the communication between the Micro Maestro and the two Jrk's and the RoboClaw are not included, so this is not a perfect drawing but maybe you get an impression on how this looks.

I power my Micro maestro from the battery, and then power my Arduino mega from the Micro Maestro (5V) and also my Jrk's are powered from my micro maestro (this is not shown in the image).

The communication is done by sending commands from Arduino using serial communication (pin 10 and 11 on the Arduino) with the micro maestro and the micro maestro sends commands to the 3 motor controllers (jrk's and RoboClaw). This works ok for some minutes.

When I run this system for a while (3-5 min) I get an error from the Micro Maestro saying

Serial Error 0x0001

At the same time one of my jrk's gets really hot (an IC called MC33926)

I am now wondering if there is a connection between the serial error and the very hot component or whether it is the serial communication between the Arduino and micro maestro is going wrong.

\$\endgroup\$
1
1
\$\begingroup\$

The MC33926 IC is the PWM motor control driver. Since it's rated for 5A, you can expect it to get hot. (That's 25 watts at 5V, inside a small IC package, which means high temperature.) It can operate to 150°C provided that there's adequate heatsinking, and has built-in thermal shutdown at around 175° and above.

The reason I left a comment about a schematic is because the diagram you posted is not clear about what pins are being used on the motor drivers and microcontroller, etc. As-is, it requires anyone reviewing it to go look up the pinouts of the various parts. It's better to show the distinct, relevant connections and leave out all of unused bits. For example, how am I supposed to know exactly how you connected the JRK controllers to the motors?

Here's the Pololu diagram for the JRK 21v3 USB Motor Controller. (Is this even the one you're using? They make a lot of them.)

Pololu JRK 21v3 USB Motor Controller Wiring Diagram

Your diagram makes it look as though the motors are on different pins of the header rather than the screw terminals labeled "A/B motor outputs."

Original "wiring diagram"

Here's my expectation: The MC33926 is getting hot and entering thermal shutdown. At that point, serial communication fails because it's, well, shut down. (Since you say you can run the project for a few minutes, I'm assuming that the communications wiring is correct.)

What is the motor doing? What kind of motor is it? Is it loaded? Stalled? Is the controller rated for the motor current? Have you measured current draw on the motor(s)?

Possible fixes:

  • Check current ratings on all components, make sure you're not pulling more than the controller is rated for.
  • Check that the motor isn't stalled or over-loaded. If it pulls the max-rated current, it will drive the controller temperature up.
  • Consider adding heatsinking or active cooling (fan) to the controller if the above things are in spec.
  • You might need a more robust controller.

Hopefully this helps somewhat, but more information is needed to be more specific. (You should edit your question to include more info, such as a schematic.)

\$\endgroup\$
2
  • \$\begingroup\$ Thanks for all your help! I will check out your possible fixes and improve this question - add schematics etc. \$\endgroup\$
    – bjornsing
    May 8 '20 at 9:55
  • \$\begingroup\$ You were right @JYelton. The motor pulled more current than the controller was rated for (at least without any cooling) \$\endgroup\$
    – bjornsing
    May 15 '20 at 9:30
0
\$\begingroup\$

This is the motor controller we use: a jrk 21v3 image of jrk 21v3 Specifications jrk 21v3:

|---------------------------------------------|------------------|
|      Recommended max operating voltage      |       28 V       |
|---------------------------------------------|------------------|
|      Max nominal battery voltage            |       24 V       |
|---------------------------------------------|------------------|
|Max continuous current(no additional cooling)|       2.5 A      |
|---------------------------------------------|------------------|

The motor we use: a LACT4-12V-20 image of LACT4-12V-20

"These actuators have a stall current of 7 A at 12 V, but they will, on average, draw far less than this when used within their load ratings.
They draw around 1 A with no load and can exceed 3 A at their maximum rated dynamic load, so we have found they generally work well with our lower-power jrk 21v3 motor controller with feedback "

The motor is programmed to go, periodically, in and out. After debugging it we found out that the motor gets really heavy loaded the last millimeters of the working range and then draws maximum current (which was measured to be approximately 3.3 A). This heats our jrk 21v3 so much that it eventually causes the serial error at the Pololu Micro Maestro.

This problem is more of a mechanical problem in our case, but we also put in some safety by changing the current limit in the jrk 21v3 settings from 3 A to 2 A. Hopefully this will prevent the motor from pulling more current then approximately 2 A (we probably don't need more than 1 A for these motor at nominal workloads)

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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