Away for a bit

For the next couple of weeks I shall be away on holiday in the Peak District, so I will not be able to make any progress on the modular robot, including blog posts.

Thanks for reading

New boards have arrived

The new boards

To produce the latest revisions of the modular robotics boards I again used OSH Park. Although their quality is of a very high standard, they are particularly slow and relatively expensive, so I may re-consider using a different PCB production service.


The most complex board previously was the Edgebot and this ironically required little work;

The new Edgebot PCB

However, with the motor controller I removed the voltage regulator as it is currently not required and using space, this allowed for a secondary trim-pot. The outline also had re-work as there would be no price difference (OSH Park charge for the bounding box area, not the actual area) while providing a larger area, therefore components were less constrained to layout;
The new motor controller

As the previous Photovore PCB did not seem to work at all and required a quick perfboard prototype, the PCB had to be completely re-designed;
The new Photovore PCB

I hope to assemble them in the next few days, I will post results on how that goes.

Hacked bumper mechanism

Having completed the new revisions of the circuit boards and sending them to be made by OSH Park, one of the few things that needs to be re-done/altered is the bumper required for operation as an Edgebot.

The hack, consisting of little more than a nail and rubber band

Previously it was unable to move backwards an forwards easily, this was because when you attached the bottom fastening plate, it sandwiched the slider between the bottom fastening plate and the top plate. I managed to fix this by applying a small amount of double sided tape to space the bottom fastening plate slightly and this provided the slider with enough room the slide relatively easily.

However, the micro lever switch does not have an adequate amount of force to push the slider forwards on its own. To fix this I made a slight hack to the design by adding a (blunted) nail through the back of the slider and attaching a small rubber band to the two screws either side of the newly added nail and the nail itself. This then provided a small amount of force to the slider to make sure that it is normally forwards, but with a small amount of pressure still allows it to move back and press the switch.

This hack will be implemented in the next version of the robot chassis.

I'm finally done with the ball caster wheel

The very last (hopefully) ball caster wheel

The final design uses a more simplistic approach than previous iterations. It incorporates only one through-hole turn slot, as opposed to at least two on previous versions, the reduction in tabs did not decrease the structural strength, moreover, it increased the soundness of the design as there were less weak points and the design did not protrude from the central rotation as much, therefore any forces on the caster wheel would have less of a lever effect on the acrylic. Another reason to reduce the footprint size was the fact that the original designs required large slots that would be a great distance from the central rotatory axis and they too far apart for the latest chassis design to accommodate.

It has been a few days since it was first laser cut and assembled and this version has withstood more pressure and force than any of the previous designs and it is yet to break, however, as I still only have one, I am reluctant to put it through a stress test to see how strong it really is. Although the material is white as opposed to the semi-opaque blue of previous versions, it is the same material and was ordered on the same day, so the increase of structural strength is purely design caused.


A side-on view shows that the ridges are still present

This design has a raised slot, meaning that the chassis would no longer be a flat bed and this would have to either be ignored, or more preferably, fixed another way. This would be likely to involve lowering the motor mounts at the back-end of the chassis, to raise the back-end of the robot. 

This design (v0.8) can currently be found on Dropbox.

Updated motor controller

The re-designed motor controller

The motor controller has had the largest update of all the boards, however the general function of the board remains the same.

On the schematic the voltage regulator was removed as it is not required for the current generation of boards as they all run on a standard 5v TTL signal that is currently provided by the battery pack, the voltage regulator and the complimentary components also took up a large amount of room, which could have been used for other components or to provide more space the current parts.


A secondary trim-pot has been added, this allows for control over the speed of both wheels, so that it can be calibrated to go in a straight line, or if you reduce the speed of both wheels evenly, you could make the robot go slowly. Minor changes to the bottom and top silkscreens were made to help make the pin-outs and board labelling easier to understand, especially when viewing the board from the top.


The perimeter shape of the board has been altered to make better use of the paid-for area (You pay for a bounding box at OSH Park, so any cut-outs would be costly) This was also required for the second trim-pot as there would not have been enough room previously. I was also able to re-arrange various components to allow for more space between parts. Due to the extensive amount of redoing the tracks on the board, no vias were required, and there is a large amount of room between the majority of the tracks. 


The increase in spare space on the board enabled me to move the PCB switch location to a more suitable position, so that it would not be obscured by the shields that would be stacked on top. A secondary switch pin-out was put onto the board, in parallel to the first, this would allow you to add an external switch on the chassis (for example) and could provide the user with more elegant switch in order to turn the robot on.


A single 2-pin header was added to the board, which, when a shunt (shorter) is put on, it would short the VCC and the forward control pins of both motors, this would cause the robot to move forwards to allow the user to calibrate the trim-pots to make the robot move forwards in a straight line.


One aspect of the motor controller PCB that is yet to be updated is the layout of the mounting holes, so that it would be impossible for the motor controller, and therefore the shields with inputs/outputs, to be incorrectly orientated on the chassis.


The motor controller Eagle files discussed in this post (v0.5) can be downloaded from Dropbox.