First Robot on a Big Track chassis
Here is my first robot project. After watching and lurking for several months I've decided to reveal my project.
It's based on a "Big Track" toy I picked up cheap in the after Christmas sales last year. I don't have really mechanical engineering facilities so I thought this was a chassis with motors, battery holder etc ready made - just a bit of "de-engineering".
With a motor shield on the Arduino Uno I had the chassis running and some digital IR sensors (GP2Y0D810Z0F) provided a sort of colision reaction. I then added a servo with an analog output IR GP2Y0A21YK sensor.
The basic unit I had up and running very quickly - always a good motivator.
I discovered that the scanner detection seemed to favour one side more than the other. A bit of research on LMR found guillermobarbadillo's article in TIPS which answered the question. I've added two sensors now mounted vertically with one favouring up and one favouring down. The idea being it should avoid running under chairs and see low objects in front of it. From the video and the fight with the cardboard box you'll see that low objects are missed by the scanner. I think I'll replace it with an ultrasonic and see how it goes.
I came accross some "Meccano" clone kits on sale in a toyshop for about £2 each so hence the use as part of the sensor supports.
The sensors are all infra red. The scanner sensors are GP2Y0A21YK and the fixed bump sensors are GP2Y0D810Z0F.
There is a problem with he Big Track chassis. The two motors have a magnetic coupling which ensures that when both motors are running in the same direction they are "synched" and the vehicle travels in a straight line. However the coupling on mine is so strong that if you only power one motor the other motor will quite often turn as well so the beast goes in a straight line still. The only way it seems to turn is actually drive one motor in reverse and one in forward giving a spin on the spot. I wanted some curved paths rather than a skid spin. In the video when the vehicle is reversing only one motor is being driven. You will see sometimes it curves and sometime runs straight with a increased motor noise as one motor drives the other via the magnetic clutch.
I think I'm going to have to disect it and remove the magnetic coupling or somehow reduce its effectiveness. More videos when I can get control of this.
I would just like to thank the LMR comunity in general for the inspiration and ideas freely shared. Even just little things like Oddbot's sugestion for using TABS in the Arduino IDE made my programming be a bit more sensible and less chaotic, - thanks.
I'd like to add a "frustration" sense, that when its been fighting one object several times it will turn completely and head off in a different direction.
Success !!
After a major rebuild . . . .
I removed the magnetic coupling between the motors. It turned out to be quite easy as the magnets were mounted in plastic cups with a wimpy glue. I prized one magnet out without destroying anything. Result true independant motor running.
It runs well in a straight line however in my cluttered room there is not too much opportunity for a long run.
As this involved the complete dissassembly of the robot I made some more changes on
I replaced the IR scanning sensor with an ultrasonic and moved the analog IR sensors to the right and left.
I upgraded its brain to a Mega Arduino to allow for future expansion.
The final video has a robot which navigates without running into things and she has developed a real paranoia about chair legs.
There are a number of situations where she appears to make the wrong decision about which way to turn and then changes her mind. Hmmmm.
Also there is no routine which gives a 180 deg turn, however she executes this when faced with a swivel chair legs.
I am happy with her object avoidance however she does come to grief on the chrome base of the stool when one of her wheels is off the ground - doesn't think to try the other wheel - Oh well some more development.
This stage of the development I think is complete - object avoidance. Now to give her something to achieve - but maybe it will be something like "here is your mission should you choose to accept it" . . . . .
Bumble around trying not to run into things
- Actuators / output devices: Built in Big Track motors
- CPU: Arduino
- Power source: Motor 3 x D cells, electronics 7.2v rechargable
- Sensors / input devices: Sharp IR
- Target environment: indoor