Hexapod... the theoretical part!

Hello, I’m just putting on paper the main plan to design a hexapod that will use 18 servos to move…

I’m planning to use one Arduino NANO as the main microcontroller and a Maestro to handle all the locomotion on the unit, the NANO will have a small OLED display to show the basic status of the hexapod and a wireless transceiver to connect with the PC to send and receive information and a couple of sensors (IR for obstacle detection and two microswitches to detect collision)…

I have already worked on the wireless communication and display, I can turn on or off a led sending commands from the serial terminal and showing all the details on the display, so my next step its the communications between the arduino and the maestro…

I have read some of the posts here and as far as I understand I can use the software on the PC to generate the series of movements on the servos and create a script for basic actions like forward, back, rotation CW and CCW, etc… then load them on the Maestro and use the Arduino to let the Maestro know that it need to run the script, with this approach I can add more sensors to the Arduino later because I will be using only 2 pins to control movement instead of one per each servo that it’s moving, and will make my code on the NANO smaller because I don’t have to program each servo action.

I just want to know if I got the details right and my plan it’s going on the right direction or it’s DOA…

Plus, do you have a “Maestro For Dummies” link somewhere? hahaha…

Thanks!

Hello.

Your plan sounds reasonable. We have some documentation available for the Maestros under the “Resources” tabs of their respective product pages. For instance:

pololu.com/product/1354/resources

There is a user’s guide there you will probably find helpful. There is also a link to our Pololu Maestro Servo Controller library for Arduino, which should help simplify the code you need to control your Maestro.

-Nathan

Thanks! I Already have the documentation and the arduino library installed (with the basic examples) what is really good start to get me to understand how to trigger different sections of the main script stored on the Maestro (easier than write 1000 lines with code for controlling each one of the 18 servos on synchrony!).

I have almost all the hardware ready, but I will be traveling out of the country and at least for a week all my personal projects are going to be on standby (I need to find a place on the hexapod to fix the wireless module and the display, install the voltage step down module for all the additional hardware that runs on 5v and solder the wires on the other step down regulator that powers the servos)… something that I have not being able to find it’s more details and info on what is sended by the maestro back to the Arduino via the TX pin or if even some of the info makes sense to the arduino or if is only useful for the desktop application.

I will keep reading and making notes until I can get back to the soldering iron and the big keyboard!

PS the link “Pololu Mini Maestro and Arduino Tutorial” is down… do you know of another good site to check?

Hello.

The “Serial Servo Commands” and “Serial Script Commands” sections of the user’s guide provide descriptions of the serial commands available to communicate with the Maestro. You might look at those to see if there are any commands that provide feedback from the Maestro to the Arduino that will be useful to you.

Thanks for letting us know about the broken link. It was a tutorial one of our maestro users published, but it looks like his website is no longer around, and we are not sure where else we could link to, so we removed the broken link from the resources section of the user’s guide.

-Nathan

Thanks… I think that I got most of the basic stuff right and I can start with the basic part of the design on the Maestro (tripod gait, rotation, adjusting servos, setting home position for all the servos) and the Arduino programing (wireless communication between hexapod and PC, the display, sensors tests and adjustment) and on general performance test for the 2 LiPo batteries (running time before the voltage drops to the point of being unable to run the system).

I will post more details on the progress as soon as I have something beyond wires and screws everywhere!