Author Topic: Best way to control an old educational robotic arm  (Read 859 times)

0 Members and 2 Guests are viewing this topic.

Offline firewalkerTopic starter

  • Super Contributor
  • ***
  • Posts: 2481
  • Country: gr
Best way to control an old educational robotic arm
« on: September 12, 2026, 12:12:42 pm »
I found in a basement of our school an old educational robotic arm. The issue is that the controller for the robot is nowhere to be found.

The robot is a 5 axis SCORBOT-ER 4PC.

https://downloads.intelitek.com/Manuals/Robotics/Discontinued_Machines/ER-4PC.pdf

It uses 12 volt dc motors equipped with optical quadrature encoders and limit switches.


What is the easiest way to control it? Is there any generic ready to use controller boards for robotic arms?

Use individual drivers like the one bellow (is it suitable) controlled by an mcu?

https://www.hiwonder.com/products/4-channel-encoder-motor-driver

Alexander.
« Last Edit: September 12, 2026, 04:11:24 pm by firewalker »
Become a realist, stay a dreamer.

 

Online RoGeorge

  • Super Contributor
  • ***
  • Posts: 8448
  • Country: ro
Re: Best way to control an old educational robotic arm
« Reply #1 on: September 12, 2026, 03:51:23 pm »
I've heard about ROS, https://en.wikipedia.org/wiki/Robot_Operating_System , free and open source, read about it some years ago, wanted to try it on a small DIY robot, but eventually never went to implement anything with ROS yet.

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 5317
  • Country: nl
Re: Best way to control an old educational robotic arm
« Reply #2 on: September 13, 2026, 02:42:23 pm »
ROS (Industrial) can be an option for all the "higher level" stuff, and there are a lot of (open sourced) robots that work with ROS so that is one way to search a bit more direct.

Chris Anin has opensourced  his AR4 (or is it AR5 now). It's a robot + controller, but as most small robotic arms, it's based on stepper motors, so the low level electronics hardware is different. But it is a current project that is being developed further (or at least, it was when I checked recently).

Any uC based BLDC motor driver can be used to drive a brushed motor, by just using two of the three half H-bridges, but the EUR 10 board you found is probably adequate. Many uC's have hardware onboard to track the position of a quadrature based encoder, and that makes software development easier, (else you would need an ISR for each of the encoder channels).

If you want to design / build your own motor controller (PCB's). There are a lot of IC's that implement a full power stage of an H-bridge. These things are used a lot in the automotive industry. But an H-bride is no rocket science, and building it with discrete power transistors is very doable too. And this avoids availability problems of highly integrated chips. Those highly integrated chips are also not much cheaper in low quantities.

It's probably doable to connect all motor drivers to a single microcontroller, but using a single uC for each motor driver, and then yet another system that does the higher level math and controls all the motor drivers is a more logical approach. Microcontrollers are so cheap that it does not make much sense to put everything in one uC. I do find it sort of impressive that the "Hiwonder" PCB you found can control 4 motors. It's max motor voltage is apparently 15V, so that is enough, but 2A can be a bit low for your motors, and that would be a limitation. You want high peak currents for quick acelleration. What are the specifications of the motors in the Scorbot?

You can also have a look at GRBL (Now: GRBL HAL) It spits out step and direction pulses made for stepper motor based systems, but it is also relatively common for motor drivers for DC motors to accept this as their input.

LinuxCNC is also an option. It's a very flexible system. It can do custom kinematics and also control a lot of motors, but it also has a quite steep learning curve.
« Last Edit: September 13, 2026, 03:09:18 pm by Doctorandus_P »
 

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 5317
  • Country: nl
Re: Best way to control an old educational robotic arm
« Reply #3 on: September 13, 2026, 03:20:10 pm »
There are a lot of different ways you can proceed with this, and you have to decide for yourself in which direction you want to go.

At school, we had a simple (stationary) motor setup to learn control theory. And that is a much better way to learn control theory. You can examine the results of different types of loads (Inertia, friction, constant "gravity", varying loads etc.) and then measure how your (presumably) PID loops for speed and position react to that. You have to learn this first before you can work with the varying loads of such a robot arm in a "sensible" way. It's easy to just make a motor move a bit, but to make it move just as much as you want it to move is a different task. At school I found out I had to compensate for the friction caused by the brushes in the motor commutator to improve the motor response. Such things are not trivial.

So learn to work with a single motor in a stationary setup first, then proceed to a more complex system.

(Again. The spam filter ate my previous amendment)
 
The following users thanked this post: tooki

Offline firewalkerTopic starter

  • Super Contributor
  • ***
  • Posts: 2481
  • Country: gr
Re: Best way to control an old educational robotic arm
« Reply #4 on: September 13, 2026, 03:43:34 pm »
I tend to believe that the easiest solution with a good educational result would be using a tensy 4.1. A fairly fast and powerful microcontroller board with 4 hardware quadratuture decoders. In combination with TB6612 motor driver. Arduino IDE with ready to use libraries is an extra for educational use.

Alexander.
Become a realist, stay a dreamer.

 

Offline Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 5317
  • Country: nl
Re: Best way to control an old educational robotic arm
« Reply #5 on: September 13, 2026, 03:59:21 pm »
Teensy 4.1 is an option. Chris Anin also used that at least in one of his older versions.

But it's a quite small niche where the 600MHz of this Teensy is actually useful and it's EUR 30 cost is warranted, compared with a microcontroller that is a lot cheaper. For example an STM32F411 (Black Pill, EUR 6 or so) also has 4 quadrature inputs. For a one off project the difference does not matter much, but for the Black Pill, it's much easier to just buy a hand full of them, in case you accidentally short one (or more) of them and damage them. Or to just have a few for "random projects".

On the other end. Doing the high level software development on a PC (or Linux SBC) is much more comfortable and has more compute power then a Teensy 4.1, and you can buy a full Linux capable SBC for less than the price of a teensy.

And again: motor current of a TB6612 is also quite low. So first figure out how much current you need for your motors before you select a motor driver IC.
 
The following users thanked this post: firewalker

Offline firewalkerTopic starter

  • Super Contributor
  • ***
  • Posts: 2481
  • Country: gr
Re: Best way to control an old educational robotic arm
« Reply #6 on: Yesterday at 05:44:12 pm »
I think another option is to use a pi pico and using PIO mode to read all the encoders. After that sending the values (via SPI) to an arduino that will control the motors. It seems to be the cheapest option? Pi pico + level shifter + arduino + motor drivers.

Alexander.
Become a realist, stay a dreamer.

 

Online RoGeorge

  • Super Contributor
  • ***
  • Posts: 8448
  • Country: ro
Re: Best way to control an old educational robotic arm
« Reply #7 on: Yesterday at 06:20:25 pm »
ROS has all kind of low level motor control solutions:
https://wiki.ros.org/Motor%20Controller%20Drivers

Aside from those, there are projects with DIY motor controllers from scratch, including custom motor drivers based on Arduino, Pi Pico, etc.


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf