Hello,
I'm a first year student of robotics and now with the exams finished I wanted to start my own new project which I am sure I will need your help for. I have been reading this forum and every tutorial since I joined a couple of months ago and it really helped me for some projects for uni so I thank everybody for making a good forum and webpage just like this one. I first hope this is the right part of the forum where to put it as I mainly need help with the software.
What I'm planning to do is to make my lawn mower at home "autonomous" so I don't have to do it when I go back

. I know, it might be a big thing and thats why I will be starting from a small prototype and if it work I will then make a 1:1 scale of the lawn mower prototype and if it then work I will move to modify my lawn mower.
what I'm planning to do is to make the robot move through a map (the garden) but in a special sequence. So I would like it to go forward, parallel to the wall, when it finds the end of the garden, move 90 degrees go forward parallel to the wall until the garden ends then move 180 degrees and go back and more or less like that.
Now knowing the basis of how it should work Ill give a more detailed description: I will use a frontal sonar to detect when it is at "x" cm of the wall and to find obstacles. it will also have 2 encoders which I was planning to use the disc method with photoresistors for the first prototypes to measure the distance and then go through the map. Then, 2 IR sharp sensor on each side for obstacle avoidance and to measure the distance between the walls. For all that I might use the arduino duemilanove as its quite simple to use and i have been using it for the last weeks.
I will explain now the first prototype and as soon as it work I will move to the next step, as I learned in robotics, the best way to make something work is to start from the most simple thing. Thats why, I bought a cheap 20cm RC car and used the structure of it, the wheels and the battery. Then, I put 2 servo motors on the back wheels. For now, I put an IR sharp as the front sensor. The next step is to put the encoders for which I will print a disc with black and white stripes and then buy 2 photosensors:
http://www.active-robots.com/products/sensors/sensors-fairchild.shtml. With that I should be able to move a certain distance, see objects and move through a simple programmed map.
The first objective of this first prototype is to be able to move through the path I want it to move with the most accuracy possible. I will just make it run in my room with the same pattern as the lawn mower it should move (go forwards until reached to the last slot of the map, detect distance and move 180 degrees). If it works, later I might use a compass to make that turn as it should be more accurate than the encoders when turning.
As I will progress in this project I will start putting some picks and sketches which I have, but all in paper

. What I would need now while I finish constructing the modified car is you to recommend me a program for this type of mapping (A*? wavefront?) and if the sensor and disk for the encoders would be good enough for this task.
any help or comment would really be appreciated! I'm looking forward for your comments as I have been thinking on this project for a while! and I didn't want to put much on it, even though I couldn't! until I finished the exams. I have quite more to detail about this but I don't want to make a massive post that nobody would be interested in reading so Little by little I will be making some more detailed comments.
thanks a lot! and please comment!