The Bliss Robot

Please meet the Bliss Robot!

v1: August 19, 2011

This is my Arduino-based SHR, and my very first robot.

It is inspired by the start here robot and by Penny.

I used the Ro-Bot-X Robot Builder's Shiled V3 which has worked flawlessly and has great code samples in its assembly guide.

Maybe To Do List

  • Build a 2-decks chassis, that can allocate a flat 6xAA battery holder on the lower deck and the board/shield on the upper one
  • Use some "attaching" methods better than the 2-sides tape... though it works great! :-) (like motor brackets)
  • Improve the wiring (to sensor and to motors)... I have to make up my mind and start soldering!

The Future

  • Continuously scan what is in front to decide a path without ever stopping...

v2: August 31, 2011

The Bliss Robot is getting smarter.

He continuously scans a 60 degree arc in front of him in order to avoid obstacles.
He tries to avoid them gently but if he sees no way to continue he turns, stops, re-scans and keeps moving.

In the second video you can see him wandering around my living room and avoiding obstacles... with a fair amount of luck :-)

I kept the old chassis and I still use the 2-sides tape (though I bought a better one). However I finally started soldering! This was crucial to avoid false readings on the ultrasonic sensor.

The future of The Bliss Robot is open: learning the map, be autonomous and RC controlled (like a "go home" function)... who knows, I keep reading to get interesting ideas... suggestions welcome!

Navigates around via ultrasound

  • Actuators / output devices: Hitec HS-422 servo, 2 x 120:1 Pololu plastic gearmotors
  • CPU: Arduino Duemilanove
  • Power source: 6 x AA batteries
  • Programming language: Arduino
  • Sensors / input devices: Maxbotix EZ1
  • Target environment: indoor

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/the-bliss-robot

Nice work. I’m hoping to try

Nice work. I’m hoping to try out some of Ro-Bot-X’s new stuff soon.

Glad to see the robot

Glad to see the robot working! Great job! Did you end up using the PWM out or analog (on the sensor)?

 

Hey, the 2nd video with

Hey, the 2nd video with continuous scanning represents a very nice programming improvement. Congratulations!

PWM

Thanks a lot!

I finally used PWM, as I read somewhere that it was more accurate than analog (at least on this sensor) and it was equaly easy to program… it works really well (very very few wrong measures).

Thx

Thanks a lot,

After thinking/tweaking a bit more… I think if you want to be seroius about object avoidance at a decent speed I should have (at least) 6 sensors. This is 2 for left, 2 for front and 2 for right.

  • Not needing a servo will definitelly saves a lot of time of just waiting for the servo to position
  • 2 sensors per position is because i think I should use both an IR and a Ultrasonica sensor. As both have some situations where they fail… this would allow to avoid mostly any king of object shape

What do you think? Any suggested link to a “next level” object avoidance robot?

Some sensor thoughts…

That’s a serious amount of sensors.

Consider two IR sensors mounted at angles at the front two corners of the robot. Choose an angle that gives you good coverage. Some people cross fire their IR sensors, so they cross each others path. This gives good coverage at the front and a bit to the sides. You just have to take one reading at a time to avoid interference.

You can mount IR sensors fairly low to the ground, which is good for avoiding low obstacles. 

An ultrasonic can be servo mounted, or fixed straight ahead. Mount your ultrasonic a bit higher than your IR sensors, because you can get weird reflections off the ground, especially carpet.

IR doesn’t work well in bright sunlight. It is also sometimes obsorbed by very dark material and doesn’t relect well. Ultrasonics have limitations too, so combining a bit of both can be a good strategy.

Some physical bump sensors can also help, especially if you have some blind spots. You could put a bump sensor in back in case you back into something, and then you don’t have waste an IR or sonar for that purpose.

Too many sensors can be a lot to process, and you need to be careful about interference between sensors of similar types. It also adds expense to your robot, which may be a factor.

Good luck!

Hi

Hey is it possible to post the program, I am currently using 2 dc motor for Arduino 328 Romeo. By the way, is the continouus servo for the ping sensor, is it uploaded in the same board as the rest of the program

Great job! Your bot seems to

Great job! Your bot seems to have a little personality ofits own with it’s continual checking :slight_smile: Very cool.