In addition to the future work items listed in my thesis, there are a number of other things that could be improved on MantisBot.
New Electronics Mounting Board
The acrylic board for mounting the electronics has a number of things wrong with it. I attempted to cut a new one (see the wall of shame), but the laser cutter was not properly calibrated that day and none of the mounting holes were the proper distance apart. In the current model, the hole in the front for the support rope is not large enough, and when MantisBot pitches forward the rope falls against the edge of this hole, putting a shear load on the mounting board. Aside from that other changes are all aesthetic – getting rid of mis-cut extraneous holes, centering all the branding, and engraving the branding at 600 DPI.
I threw together a stand to hold the body of MantisBot secure for kinematic similarity tests. Unfortunately the joints and fasteners available in the lab for aluminum extrusion at the time were sub-par. The stand is not very secure. I would recommend adding gusset plates to hold the smaller vertical extrusion more secure with respect to the larger extrusion that sits on the ground. Better extrusion fasteners should also be purchased. There are two pairs of holes for the bars that hold the body piece in place. This is not an error – the bars can be rearranged to hold either the thorax or prothorax.
Currently the on/off switch on a power strip serves as MantisBot’s E-stop. This is not optimal since it is convenient to plug other things into the strip as well, and the strip is continually powered on and off. Additionally, there is about a 1 second delay between throwing this switch and the robot losing power due to the nature of the power supply. A more direct switch should probably be added between the power supply and the robot.
Mechanical Stops for Rearing
The rearing joint is likely to remain fully flexed or fully extended during almost all experimentation. While this is not a problem given the genius design of the 4-bar-mechanism, it could be convenient to have a way to hold the robot in each of these positions mechanically without putting any load on the rearing servo.
Range of Motion Problem
The low-level neural structure controls the servos by commanding positions a given angular distance away to elicit a given torque output. Unfortunately, this does not work near the end of the robot’s range of motion. Software limits are imposed on the range of motion to better model the insect, but as a result, the servo’s full torque capabilities are not available in the direction of a limit within approximately 30 degrees of this limit. This has not yet been a problem for MantisBot, but could be one day.
Additional Data from AnimatLab
The dynamixel servos are capable of returning an impressive array of data. However, Animatlab does not currently support retrieving all of it. Of particular interest are things like load, electrical current draw, temperature, and various error/status messages.
Automate the Setting of P Gains and Compliance Slopes
Currently these servo properties reset to their default values every time the robot is powered off. This is inconvenient since a sketch must be uploaded every time the robot powers on. My hope is that there is some way to automate this process, or include these properties in AnimatLab so that they are set at the start of every robot run in the same way that AnimatLab sets joint limits at the start of every run.