This page (revision-7) was last changed on 2021-10-28 12:09 by Murray Altheim

This page was created on 2020-07-17 09:49 by Murray Altheim

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
7 2021-10-28 12:09 5 KB Murray Altheim to previous
6 2021-10-28 12:05 5 KB Murray Altheim to previous | to last
5 2021-10-28 12:04 5 KB Murray Altheim to previous | to last
4 2021-10-28 12:03 5 KB Murray Altheim to previous | to last
3 2021-10-27 18:54 5 KB Murray Altheim to previous | to last
2 2020-09-12 00:32 5 KB Murray Altheim to previous | to last
1 2020-07-17 09:49 5 KB Murray Altheim to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 1 changed one line
The following is some advice provided me by David Anderson of the Dallas Personal Robotics Group (DPRG), which is what he called a "build sequence". It's basically a plan of action that will help anyone focus on getting their robot going, step by step.
The following is some advice provided me by [David Anderson] of the Dallas Personal Robotics Group ([DPRG|http://dprg.org/]), which is what he called a "build sequence". It's basically a plan of action that will help anyone focus on getting their robot going, step by step.
At line 7 added one line
%%(margin-left:2em; font-size: 95%; color:#330000;)
At line 11 changed one line
# Run the robot.  Does it run in a straight line, or veer left or right?  Can you make it run in a straight line by adjusting the two motors to different speeds?  What is the slowest it can run? On a hard surface? On carpet? What is the slowest it can run and maintain a straight line.  Can it climb over things?  Like a doorway threshold or a book?  What about with one wheel on carpet and one on a hard surface?   It is good to know what problems encoders and PID are intended to solve.
# Run the robot.  Does it run in a straight line, or veer left or right?  Can you make it run in a straight line by adjusting the two motors to different speeds?  What is the slowest it can run? On a hard surface? On carpet? What is the slowest it can run and maintain a straight line?  Can it climb over things?  Like a doorway threshold or a book?  What about with one wheel on carpet and one on a hard surface?   It is good to know what problems encoders and PID are intended to solve.
At line 13 changed 2 lines
# Run the robot. A lot. The robot should be able to survive on its own in any environment.  Watch it and see how it does. Does it get stuck and require human intervention? How could it recover from the situation on its own?  What information does it need to know it's stuck?  What should it's response be? How can you solve the stuck-in-a-corner condition of the bump and run algorithm?
# Once you are confident the robot can survive on its own, start thinking about other sensors. Photo sensors, (basically just a cadmium sulfide cell as half of a voltage divider connected to an A/D input[3]), in a pair pointing forward, angled slightly left and right, is an easy sensor/behavior to get working, and the results are quite satisfying. Turn toward the brighter side, perhaps with a deadzone in the center. The robot can seek toward bright lights, which change with it's position, so it can apparently navigate a space quite intelligently.  Or seek away from bright lights (turn away from brighter side). This plus the bumper should give you a robot you can play with, in any space.
# Run the robot. A lot. The robot should be able to survive on its own in any environment.  Watch it and see how it does. Does it get stuck and require human intervention? How could it recover from the situation on its own?  What information does it need to know it's stuck?  What should its response be? How can you solve the stuck-in-a-corner condition of the bump and run algorithm?
# Once you are confident the robot can survive on its own, start thinking about other sensors. Photo sensors, (basically just a cadmium sulfide cell as half of a voltage divider connected to an A/D input[3]), in a pair pointing forward, angled slightly left and right, is an easy sensor/behavior to get working, and the results are quite satisfying. Turn toward the brighter side, perhaps with a deadzone in the center. The robot can seek toward bright lights, which change with its position, so it can apparently navigate a space quite intelligently.  Or seek away from bright lights (turn away from brighter side). This plus the bumper should give you a robot you can play with, in any space.
At line 19 changed 2 lines
Now time to start thinking about higher level behaviors.  So that means going back and implementing encoders, PID, and [odometry]. Those things open a whole new world, with its
accompanying complexities, so it's good to actually have a functioning robot before getting to that stage. And if one never does get to that stage, you still have a functioning robot you can play with and show off to your friends.
Now time to start thinking about higher level behaviors.  So that means going back and implementing encoders, PID, and [odometry]. Those things open a whole new world, with its accompanying complexities, so it's good to actually have a functioning robot before getting to that stage. And if one never does get to that stage, you still have a functioning robot you can play with and show off to your friends.
At line 27 added one line
%%