Oct 23

Each segment can hold it’s own battery pack to spread weight evenly over the snake. Since most servo’s require somewhere between 4.8 and 6.0V at least 4 NiMh batteries are needed per segment. There are 2500mAh versions available at reasonable cost providing enough power per servo to run for several hours.

Charging these batteries will require a simple circuit, the most simple is a current source that limits the charging current to 10% of the capacity, so 250mA in this case. Charging can continue for 15 hours after which it should be stopped. The micro controller that will be in the segment can be used to switch this circuit on and off depending the available of a higher voltage on a dedicated wire and can take care of stopping the charging process when the 15 hours have passed.

Since there are several AD-converters in most ATMEGA micro controllers it would also be possible to increase the charging current and measure the voltage over the battery pack to determine if the batteries are full. This allows quicker charging of the batteries and (using a small discharge circuit) do maintenance of the batteries by fully discharging them from time to time just before rapid charging. Measuring the voltage also allows the segment to check the battery level during operation.

When all segments are connected in parallel using a diode to prevent current flowing from one pack to another pack the brains can be supplied by any pack that still has some energy left. Since the brain can communicate with each segment and retrieve the current level of energy it can decide when it is time to search for food or when it ate enough.

It should not be a surprise that I’m not the first one to use a micro controller for charging, there is even a nice application note from ATMEL that gives examples on how to do this. Needless to say I will use this as reference for my own design.

One thing to think of in more detail, the servo can be connected directly to the battery or it can be connected to the main power line that also feeds the brain. Advantage of the first is that current spikes are kept local, disadvantage is that when one segment consumes more current the battery is faster empty then another segment which can cause problems during movement. Specially if one segment does not have any power at all in which case a servo will not move. Advantage of the second is that there is always power to the whole system if at least one pack has some energy. Downside is that than the whole system draws current from this single pack resulting in high peaks though the respective diode. Second downside is that the voltage available for the servos is reduced by the forward voltage of the diode which probably means raising the number of batteries per segment to 5.

Despite the downsides of the second option I feel this is still preferred. Normally the different packs should balance out themselves, if one pack has the highest voltage than most energy will be delivered from that one but it drops directly in voltage and so another pack has the highest voltage. Next to the fact that all segments will consume roughly the same amount of energy I feel this high current through the diode problem will not be big.

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.