Downloads
BOB (Bot On a Board) Design files
BOB Source Code (OOPic 6.0 Beta)
The following BOB Lessons illustrate the new OOPic 6.0 improved C Syntax as applied to the BOB robot.
- PBot_BOB-A_VC6.osc
BOB Lesson A LED Test
It makes sense to start with the most basic and/or the most useful robot function. For BOB this means checking out the LED indicators.
- PBot_BOB-B_VC6.osc
BOB Lesson B Obstacle Detectors
Here I verify that the three Eyes work by hooking them up to three of the LEDs. Eyes are great for finding opponents or preventing BOB from running into walls.
- PBot_BOB-C_VC6.osc
BOB Lesson C Motor control
Here I make sure I can control BOB's wheels. I ensure that the correct wheel is turning in the right direction, and that I can vary the speed.
- PBot_BOB-D_VC6.osc
BOB Lesson D Line detection and SUMO sample.
By adding the software to detect lines with the short range IR reflective sensors, we now have enough pieces to put together a SUMO robot.
- PBot_BOB-E_VC6.osc
BOB Lesson E Sensing wheel rotation
Now that we can turn the wheels, it's important to see that we can measure the rotation using BOB's optical encoders. This is one thing that sets BOB apart from any robot that uses hacked Servos to drive the wheels.
- PBot_BOB-F_VC6.osc
BOB Lesson F Closed Loop Position Control using Virtual Circuits.
Here I show how to connect interface objects with Virtual Circuits to perform automated functions.
- PBot_BOB-G_VC6.osc
BOB Lesson G Closed Loop Speed Control using Virtual Circuits.
Here I show how to connect interface objects with Clocked Virtual Circuits to perform automated functions.
Mark III SUMO Source Code (OOPic 6.0 Beta)
This updated oUserClass and these calling programs work with the pending OOPic 6.0 release. The code is much more "C" like, and more functionality has been moved into the UserClass. Get the new compiler from www.OOPic.com
- PBot_MkIII_1.0_VC6.osc
New and improved oUserClass Object for MkIII Mini Sumo. Works with VC6 programs (below)
- PBot_MkIII_Sumo-A_VC6.osc
Defensive Sumo program that uses PBot_MkIII_1.0_VC6 User Class
Edge avoidance is given priority (OOPic 6.0)
- PBot_MkIII_Sumo-B_VC6.osc
Aggressive Sumo program that uses PBot_MkIII_1.0_VC6 User Class.
Attack is given priority (OOPic 6.0)
- PBot_MkIII_Sumo-C_VC6.osc
Hunter/Seeker Sumo program that uses PBot_MkIII_1.0_VC6 User Class.
Seeking out the opponent is given priority (OOPic 6.0)
Mark III SUMO Source Code (OOPic V5.0)
- PBot_MkIII_VC.osc
oUserClass Object for MkIII Mini Sumo (OOPic 5.0)
- PBot_Sumo_VC1.osc
Defensive Sumo program that uses PBot_MkIII_VC User Class
Uses 3 priority levels (OOPic 5.0)
- PBot_Sumo_VC2.osc
Aggressive Sumo program that uses PBot_MkIII_VC User Class.
Uses 4 priority levels (OOPic 5.0)
General Purpose OOPic 6.0 Utility programs/samples
- PBot_RateServo_1.0_VC6.osc
This is an oUserClass file for defining a single rate controlled servo. Well, that was the intent, to prove that an OOPic can control the speed that a servo uses to move between two positions. In the end, it turned out that the OOPic doesn't have the fine position controll needed for a smooth slow speed servo motions, but the code worked nevertheless. As such, it's still a good example of how to combine several Virtual Circuit objects to coordinate a controlled motion in the background.
- PBot_RateServo_Test_VC6.osc
This is a test program that illustrates using the RateServo object created by the program above. It sets up two servos (using the oUserClass object) and then sends them through a coordinated motion.
Other Source Code
- PBot_ServoHack1.asm
This Assembly code is used as part of an RC Servo Variable Speed Controller Hack.
The code runs on an 8-pin DIP Microchip PIC12F683 processor and replaces the logic inside of a Futaba RC Servo. It samples the Servo Control Pulse and converts it into two PWM signals that are fed to the Motor Driver chip on remaining in the servo. 10 forward and 10 reverse speeds are generated.
Web content is copyright © PhilBot.com
2005, Deep Creek Lake, MD.
Contact: Phil Malone 301.387.2331, webmaster
@
PhilBot.com