Oricom Technologies
www.oricomtech.com

Return to main Projects page.
Project Roland - the R.A.D. Hack
Index:
|> Original Base Platform
|> Basic Design Info
|> Software Design + Zigbee Comms

--- UNDER CONSTRUCTION ---


We're working up this robot as a platform for sensor testing, development of subsumption-based robotic control software, and also multi-robot RF communications [in the future].

Original Base Platform. This is a continuation of the R.A.D. the Robot Hack page, which shows the orignal R.A.D. base and how it was salvaged for this project.


[blow-up]
conceptual - [blow-up]

Basic Design Info.
After removing the top-body unit, and replacing the 6v NiCd battery with a larger capacity NiMH battery, we added an OricomTech
OOBOT40-3 Controller board for motor and behavioral control. This controller is programmable from a Windows PC using a standard RS232 serial port.

Secondly, we added zigbee transceivers inline in the serial line between PC and OOBOT40-3 board, to perform wireless program downloading to the OOPic controller, and also for RF remote-control of the robot. The transceivers are used to send control information from the PC to the robot, and status information from the robot back to the PC.

Thirdly, we added a 2.4-Ghz wireless video camera to the robot base. This way, we can remotely view where the robot is going and what it is doing, and use the zigbee link to control its actions.

Strictly speaking, the robot is being constructed as an autonomous machine, and the zigbee link and wireless video link are mainly for debugging purposes. Eg, downlink control codes can direct the robot to travel in a certain direction, after which the internal code in the robot will execute the actions, and perform its own collision detection and avoidance behaviors.



PRACTICALITIES

1. The first thing we discovered on running the modifed RAD base around is that it bounces a lot on hard surfaces. This seems to be a factor of both having reduced the weight by removing the heavy top body-unit, and that the tracks are made of hard rubber with distinctive "cleats". It seems to bounce less when using the high-gear ratio, which has lower torque, and it runs fine on carpeted floors.

2. This base is big and fast and powerful, compared to the small mini-sumo sized bases we've been playing with for several years, and at first, we were equivocal about whether it needed mechanical bumpers. However, after running the hacked base around for a while, and quickly running into various obstacles, we decided bumpers were necessary as the "last resort" behavior in the subsumption hierarchy.


FEATURES

Behaviors

  • forward, backwards, left-turn, right-turn
  • variable speed control

    Main base

  • 12" long by 12" wide by 15" tall
  • weight: about 6-lbs [???]
  • RAD robot mobile base unit, with 2 motor-geartrains
  • differential tracked steering
  • 2-speed transmission, about __ in/sec max in low-gear, and ___ in/sec max in high-gear
  • NiMH 6-cell AA, 2500-mAhr rechargeable battery pack - powers motors, servos, and also controller logic and zigbee transceiver

    Controllers

  • OOBOT40-3 Controller Board with L298N dual-channel 2-Amp h-bridge
  • Sensors

  • (1/ea) pushbutton switch for selecting operating mode, etc
  • (2/ea) A/D channels for monitoring of battery pack voltages
  • pan+tilt turret - 2-D servo platform
  • (1/ea) Ping))) sonar - frontal, on pan+tilt
  • future:
  • --- (3/ea) PIR movement detectors
  • --- (2/ea) CdS photosensors - for differential light monitoring
  • --- (4/ea) IR proximity detecotr channels
  • --- (3/ea) collision bumpers

    Miscellaneous

  • (1/ea) Servo-Dog - Led display that operates from a standard 3-pin R/C servo connection, used for servo pulsewidth calibrations, plus mode displays (to signal operating mode, battery voltages, sonar measurements, etc)

  • COMMUNICATIONS LINKS - (Download, Debug + Monitor)

    The goal of this project is to develop an autonomous mobile robot, but we are using wireless RF links to both generally control and monitor the vehicle parameters, as well as to provide a video uplink to visually monitor the vehicle's movements remotely.

  • Zigbee transceivers - provide wireless program downloading from PC to controller board, plus 2-way wireless control and monitoring of robot from PC. The transceivers connect to a host PC having no RS232 comm-ports via an off-the-shelf USB-to-RS232 adapter (eg, IOGear GUC232A).
  • 2.4-Ghz wireless video camera, mounts to flange on top of pan+tilt turret - used to remotely view location and behaviors of robot.
  • Command Interface - we wrote a simple command interface for the OOPic which allows us to send simple movement commands via the Zigbee downlink, and receive back status info via the Zigbee uplink. On a terminal emulator, or using the OOPic IDE comm-window, we can press single keyboard keys to command the robot. These include: "F"=forward, "B"=back-up, "A"=accelerate, "D"=decelerate, "L"=turn-left, "R"=turn-right, and "S"=stop. We also added the ability to remotely move the video camera in pan+tilt dimensions on the servo mount, in order to better follow the robot's behavior.

    Commands are sent over the RF, and then the robot sends back status info, such as left-right motor speed and direction, as well as battery voltage plus various sensor readings. We can watch the robot directly, or monitor its behavior remotely via the wireless video uplink.

    For now, we won't worry about doing a more complex software console for the PC as, first, that would be a major undertaking, and secondly, we only want rudimentary remote control of the bot, as the main purpose is to develop software for autonomous operation of the robot. Rather than control the robot ourselves, it will be much more fun to watch the robot, and read its internal parameters, while it makes most of its own decisions.


    SOFTWARE

    The main purpose of Roland robot is to develop and test sensor-based and subsumption-based software. The 2-way Zigbee link is mainly used for debug and monitoring purposes, at present. It can be used to instruct the robot to move in a certain direction, after which the robot is on its own, regards path-execution, collision avoidance, etc.

    Follows is some preliminary OOPic code for commanding Roland using ASCII command characters via Windows Hyperterminal or other terminal emulator program: jp1-1 (text file), jp1-code.zip (.OSC file). This software works the same whether the PC serial port is directly connected to the robot, or whether the ZiRF-Link modules are in-line for RF-comms.

    ----[ MORE to COME ]----

    <| TOP


    © Oricom Technologies, Nov 2006, updated June 2007