My First Robot

Posted on 02/01/2012 by nilsb
Modified on: 13/09/2018
Project
Press to mark as completed
Introduction
This is an automatic import from our previous community platform. Some things can look imperfect.

If you are the original author, please access your User Control Panel and update it.

While I wait for the geared motors to arrive in my mail, I have continued the work on the software.  Since it is my first robot with behavior a bit more complex than the Gwünderer ( https://www.robotshop.com/letsmakerobots/node/30544 ) it is programmed a bit more Clean Code style. The behavior of this robot is implemented with the state-pattern in combination with the strategy-pattern. The state is determined by the sensor and contains the relevant motor configuration to apply. That might be ...


My First Robot

While I wait for the geared motors to arrive in my mail, I have continued the work on the software. 

Since it is my first robot with behavior a bit more complex than the Gwünderer ( https://www.robotshop.com/letsmakerobots/node/30544 ) it is programmed a bit more Clean Code style.

The behavior of this robot is implemented with the state-pattern in combination with the strategy-pattern. The state is determined by the sensor and contains the relevant motor configuration to apply. That might be "Don't Panic! Go Ahead!" or "Turn Left (since there is most space)" or "Backwards now!". The strategy determines how this is fulfilled. So is a "Go Ahead" a simple motor forward while a "Backwards" is a motor backward followed by a u-turn.

You find the source code here: https://github.com/mnemonia/robotix/tree/master/MyFirstRobot

 

 

Navigate around via ultrasound

  • Control method: Full autonomous
  • CPU: arduino uno
  • Power source: one 9 volt for logic and batter pack for motor
  • Programming language: C
  • Sensors / input devices: HC-SR04 ultrasonic sensor
  • Target environment: indoor
Flag this post

Thanks for helping to keep our community civil!


Notify staff privately
It's Spam
This post is an advertisement, or vandalism. It is not useful or relevant to the current topic.

You flagged this as spam. Undo flag.Flag Post