So, the hardware was finished and basically tested. Time to go for the software and get all this stuff to actually do something together. 🙂
I had to spend some time updating my motor “device driver” module to be compatible with Njay’s new power bridges. I took my “latest and greatest” version (which had been developed to use the MD03 robotic bridges and has a lot of bells and whistles like asynchronous control, fault tolerance, and debugging info) and changed the registers and a few small behaviours to customize it for the new bridges.
And here is the video of the system bring-up, with the RasPi telling the two bridges to accelerate, reverse, and decelerate, and collecting some information back. No motors yet, because we can’t be too careful. 😉 Wouldn’t want to burn the whole thing just now when it’s starting to work. The PC is just acting like a large terminal, the software is actually running on the RasPi and I’m logging in via WiFi with Putty. I love developing with Python, it’s such a fast test&correct cycle. 🙂
The lights on the top board reflect the communications bus activity, the ones on the controller board indicate an I²C packet was received for that specific bridge, and the lights on the bottom board light up when the corresponding FETs are active.
Since I’m just starting, I’ve set the driver to query the bridges only 10 times per second. Njay warned me that the current implementation of the bridge controller may degrade PWM performance if I send too many I²C packets. We’ll see about that with real-world testing. 😉