A lot of progress has been made since the Christmas time ! article and I have to say I feel relieved now that the body is finished. I spent hours to craft all the body parts because I have few tools during the holydays : I'm far from my workshop ! The thing is you need to be really patient because you have to do the same operations six times, but you also need to be very carefull as the Plexyglas is a fragile material. I broke several legs because of a tough drilling or a too fast sawing. You have to anticipate a lot too if you don't want to lose time taking of a leg to pieces before assembling it again.
Another thing that requires a lot of time is the servomotors' calibration. It's very repetitives and I did it very slowly to be sure to not damage the servos. What I call calibration is assembling the servos on the legs with the same start angle. In order to have generic C++ objects for the servos and the legs, I need to be sure that when I command the six knees servos, they all go to the same position in relation to their respective legs.
To command my servos, I'm working on Debian with a simple Python script. This is the easiest way I found to use the serial and even if I'm not comfortable with the Python langage, I do not need a lot of features. Once the first tests are finished (idle state, sleep state, simple moves), I'll go for a more complex C++ code with the neural network part. During the calibration, I realised that my power suply isn't powerfull enough, actually it can't provide more than 450mA, which is ridiculous. Each servomotor (HS485-HB) may need up to 180mA while in load. For now, it is impossible for me to move the hexapod and I'll have to wait few days before I can go back to the workshop and use a stabilized source that provides a descent amount of electric current.
The ssC32, the seromotors controller |
Some small changes need to be done like finding a good way to arrange the servomotors' wires as it's really messy, but the result is satisfying and I feel like the worst part (the manufacturing) is behind me.