Real-Time Control and Latency Confusion

Hi, I am working on a robot that uses an inverted reaction wheel pendulum to balance. It also has other actuation systems — in total, there are seven actuators, which all need to be controlled with PID loops using relative encoders. The other actuators will not be moving as much as the reaction wheel motor does and will usually be holding a specific position.

I was originally planning to use a Beaglebone Black Wireless to control the robot. However, I have learned that the PRUs are difficult to use and limited in scope. I have simulated and designed the control system in Matlab/Simulink and was planning to upload to the Beaglebone, but it seems that there’s no direct compatibility between Simulink and the PRUs. The Beaglebone’s main processor may work on the order of milliseconds, and I was told by a friend that this wouldn’t be good enough for what I want to do, especially without real-time control. I was told to try STM32 instead of Beaglebone.

Additionally, I was planning on using a BNO055 orientation sensor for roll/pitch/yaw feedback – but I’ve heard sensor fusion solutions have have latency in the tens of milliseconds or more.

I’ve never worked on a robot that has to react this fast before, and I am at an impasse here because I don’t know what my requirements for time step size should be, how necessary RTC is, and what I can do to meet those requirements. Can anyone point me in the right direction?

submitted by /u/LocknutBushing
[link] [comments]