Building a home robot: Part 3 - the chassis

(see all parts of "building a home robot")

If you want to build an autonomous robot there are at least two things to solve: Battery power and automatic charging.
Nobody wants to build a robot which needs to be charged by hand.  But building and programming a chassis that can find its docking station and charge automatic is complex and/or expensive.

So it is great that there is an existing consumer product you can use: The roomba vacuum robot from iRobot. You can get a used one for round about 150 €. If its vacuum or brush unit is broken it may cost less - and you don’t need these units.

The Roomba also supports an official and well documented serial port to control it and read its sensors.

So for my robot project I used an old iRobot Roomba.It was originally white color – but after some years of usage and sunlight some sort of ugly yellow instead.

To refurbish it I sanded it, painted it in my favorite color and bought a new battery.


In my case I wanted to use MakerBeans to build the main body of the home robot. So I mounted a small base of MakerBeans to the iRobot chassis. 

To find Roombas serial port you have to remove the robots cover. Next to the serial port there are some screws you can use to attach your own robot parts to the chassis:

 

 

PaperMe ported from silverlight to HTML5 and bootstrap

PaperMe is a tool to design papercrafts from photos. I created it in 2010 using Silverlight which seemed to become a good alternative to flash.

Unfortunately flash *and* Silverlight “died” because they are not supported on mobile devices.
So it was time for a total makeover.



It took a lot of work porting PaperMe to HTML5 and responsive Design, but now it´s finished.



If you are interested to create a personal papercraft of yourself, your partner or your favorite celebrities –  just give PaperMe a try :-)


Creating self growing level

For my last game Project Pumpkin Jumpin 80 level had to be created. That made up a large part of the work. In addition, a level editor had to be created.

Because
the work on the game logic was much more fun to me, I decided that my next game will use automatically generated levels.

Although it was quite a bit of work, but now the first version of the self-growing city is ready.
The algorithm
is still not perfect: The density of roads is still too high and the street pattern still look too synthetic.

Here are the first animated screenshots:

 

A very simple version of the traffic network system is presentable now

After creating the road system, now the traffic system has to be programmed.

First conceptual drawings for the traffic system:



The goal was to create a self-connecting traffic network, which should work for left- and right-hand traffic.
Everything went fine until the cars had to drive around corners.
But a little bit later (and with some vector calculation) this also works very well.

A view of the transport system in the editor. The red squares and red lines represent the center lines of the street.

A first animated video

First visible results with the pedestrian system

When creating the city map system for the new game I decided to use a block size of 10 meters x 10 meters. 

First conceptual drawings for the road system:

I have set The level of detail of the pedestrian-map to 50 cm x 50 cm. Both together should allow a fairly high degree of flexibility when auto-generating the maps without too much memory or processing power needed.

For tests of the pedestrian system a simple road forming a closed loop should be optimal:


For debugging purposes it is useful to draw logical information (e.g. places a pedestrian is allowed to walk) on the screen. In Unity3d this is very simple to handle using the OnDrawGizmos functionality.

On the green areas, the pedestrian are allowed to walk:

The next step will be to design the traffic system.