The last piece of the quad A1 puzzle that I didn't have on mjbots.com is here, the pi3hat
This is a Raspberry Pi (4b or 3b+) hat that provides 4 CAN-FD ports (up to 5Mbps), a low speed CAN port, an IMU, a DC/DC converter to power the Raspberry Pi from bus voltage, and a port to connect an nrf24l01 module.
I also wrote a brand new standalone client library which is a single C++11 header and source file with no dependencies. It lets you access all of the features of the pi3hat in a performant way, although the SPI register mappings are publicly documented in github for writing your own client library.
I tested this version of the board and library in-situ with the quad A1:
After some optimization, I was able to get a full cycle of commanding and querying all 12 servos and reading the IMU down to 740us:
If you do that on one core of the raspberry pi, that leaves the other 3 cores for doing control work, and would let you achieve a 1kHz update rate.
As I mentioned, with the pi3hat, all of the custom boards and servos for the quad A1 are now up at mjbots.com, (the controllers and servos with now significantly reduced prices):
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.