Single PLC to control Industrial Robot Arm

At Blue Button Technologies we are developing two approaches to minimizing the envelope and cost for control of an industrial robot arm.  Now our heads are not in the clouds, we are talking an arm with a reach of 1.5- 2 m (4.5 – 6 feet) and being able to lift a load of 1Kg (2lbs) at full reach.  Our goal is to use our standard Chameleon NetPLC enclosure and have all drivers inside.  Even to us this seems like a Mission Impossible – We need your help.

To some extent the number of axis is not the problem, we are looking at 10-13 DOF, it is the mix that constrains the total number of axis; steppers have a larger footprint than servos., and our servo channels have torque sensing (how hard you grip or what the load strain is).  We are long a mix of small servos for human like robot hands, wrist manipulation can be either more powerful servos or steppers.  Axis like azimuth and  shoulder could use stepper worm drives as the built-in bearings are very strong. DC actuator drives with voltage-position feedback could be used for shoulder elevation and elbow.   Using external stepper drives frees up a lot of space, but each external stepper drive, even though more capable, is about the same size as a standard Blue Button module.  We can include a basic controller CPU (RP2040) besides the two processors needed to control the steppers and servos, but this reduces space for axes - Degrees Of Freedom (DOF / axes).

You can imagine the amount of effort this will take.  One size will not fit all so we want to cram as many channels of stepper, servos, and actuators in as we can.  Just because the number of processor pins required we will need a CPU servos and actuators and one for steppers.  These would be preprogrammed to control their respective motor types.  The module can be an Extender to a Controller (see our website), the Controller would have a minimal controller CPU embedded in the module with WiFi, SD and HMI.  The two sub processors act like extenders and look like C++ software objects to the user’s controller code using ChamNet.

We have come up with two potential configurations we will pursue that may fit the enclosure footprint:

Motor Controller Module

Controller CPU

  • User programmable RP2040 with WiFi (ext antenna), SD card, HMI, user programmable, RTC and Crypto options
  • ChamNet running in 2nd core with Event messaging

Motion CPUs

  • 2 x RP2040 processors preprogrammed for synchronized motion control
  • ChamNet running in 2nd core with Event messaging
  • Motors look like C++ software objects

Steppers

  • 2 x TMC2209 2A rms (2.8A peak) stealth ultra-quiet controller chip
  • Software controlled current
  • Software controlled mode (M1, M2, M3)
  • Homing input for each motor

Servos

  • 5 x 5V Servos with torque sensing/control
  • 1 x Externally Powered Servos up to 24V with torque sensing/control

Actuator

  • 2 x 1.8A 24V with current sense and voltage position feedback

 

Motor Extender Module (needs separate controller)

Motion CPUs

  • 2 x RP2040 processors preprogrammed for synchronized motion control
  • ChamNet running in 2nd core with Event messaging
  • Motors look like C++ software objects

Steppers

  •  4 x TMC2209 2A rms (2.8A peak) stealth ultra-quiet controller chip
  • Software controlled current
  • Software controlled mode (M1, M2, M3)
  • Homing input for each motor

Servos

  • 5 x 5V Servos with torque sensing/control
  • 3 x Externally Powered Servos up to 24V with torque sensing/control

Actuator

  • 1 x 1.8A 24V with current sense and voltage position feedback

 

But we need your help.  This is your opportunity to influence product design and even to get a motor controller designed to your requirements.  Motor control does not have to cost thousands like some other companies charge; these proposed motion solutions will be congruent with normal Blue Button pricing.  This is what we think it would take for the robot arm we described at the start:

 

2 x steppers with worm drives – azimuth and shoulder vertical

1 x stepper with worm drive – elbow elevation or

1 x actuator – elbow elevation

2 x higher power servo - wrist swivel and elevation with torque sensing/control

1 x higher power servo – end effector clamp with torque/grip sensing/control or

5 x 5V servos for robotic hand with torque/grip sensing/control for each finger/thumb. Providing grip controlled object wrapping capability, like gripping an egg.

Which gives 2-3 x steppers, 0-1 x actuators, 2-3 x high power servos, up to 5 x 5V hand servos with this requirement only really fitting the Motor 1 Extender.  Please email us with what you think we should put in a Motor controller extender or controller; we will probably have more than one of each type and we really want your input.  We may dialogue with you personally to get more in depth and will put you on our mailing list and update you as our motor modules development progresses.  Worm drives are very useful in magnifying the torque of steppers, they are small but 100mm3 (4in3) and obviate the need for external bearings.  Our architecture allows for standalone I2C and SPI modules for bump/g force and angle sensing.  Our feeling is a 2 module solution offers most flexibility with a complete comms suite, SD and HMI, plus a host of other I/O including DAC, ADC, and 2A solenoid/DC motor drive control.

Back to blog