LTU Armadillo Jeremy Gray BSEE Shawn Ellison MSCS
LTU Armadillo Jeremy Gray, BSEE; Shawn Ellison, MSCS; Phil Munie, MSCS; Brandon Bell, MSCS 2007 IGVC
Features and Innovations • • Low cost Simple Design Relies only on two cameras for sensor input Written in C#/. NET
Development and Testing Methodology • Final hardware platform was not ready until late in the development cycle • Used a low cost L 2 Bot and LTU’s previous IGVC entry “Think Tank” as development and testing platforms
Hardware Overview
Hardware • Roboteq AX 3500 dual-channel digital motor controller • Elexol I/O 24 relay output board • Dell Inspiron E 1505, 2. 0 GHz Duo-Core processor • 2 Panasonic PV-GS 320 digital camcorders • Logitech Cordless Rumblepad 2 wireless controller
Motor Controller • Roboteq AX 3500 dual-channel digital motor controller • One channel controls the overall speed for the two connected motors • The other channel controls the difference in speed between the two connected motors, which is Roboteq AX 3500 Motor Controller used for turning • Communicates via a RS-232 serial port using simple hexadecimal commands and responses
Power Relay Output Board Elexol I/O 24 Relay Output Board • Communicates with the laptop via a USB connection • Waits for simple hexadecimal commands that are encoded in byte format • Upon completion of a command, turns on/off the appropriate relay channel • Used for routing power to the JAUS warning signal
Remote Control Communication • Wireless controller sends the controller state information to the wireless receiver • Laptop interprets the controller state information and converts this information into motor controller commands • Laptop sends motor controller command over the RS-232 serial communication connection
Sensors • Armadillo’s sensor design uses only two cameras connected through a USB connection for visual interpretation. • The visual information gathered from these cameras is the only data available for decision making. • Advantages: – Low-cost decision making. • Disadvantages: – No back-up method available. – Sometimes difficult to convert the 2 D images into 3 D information.
Sensors – Camera Specs • Armadillo utilizes two Panasonic PV-GS 320 digital camcorders for its visual recognition • The effective resolution of the cameras is 1. 89 megapixels, with a video resolution of 320 x 240 @ 15 frames per second (fps).
Software Architecture • Software written in C#, using Microsoft’s. Net 2. 0 framework • The Direct. X SDK is also used to interface with the camcorders and wireless controller
Autonomous Challenge – Image Processing • Each camera captures a 160 x 120 colored image. • These colored images are then combined to create a single wide-view image, through the Image Fusion module. • The wide-view image is then run through a color recognition module, which recreates the image using only a few basic colors that are in its palette.
Autonomous Challenge – Lane Following • • • Divide the color recognized image into a 6 x 4 grid. Each grid section is analyzed for signs of a lane, and if discovered within the grid section, the whole grid section is activated. Once all grid sections have been initialized, a set of rules are used to determine which direction to turn so that the lane can be followed. Decision making is done by iterating through each row of the grid until a turn is requested for that row If all rows have been evaluated without a turn decision being made, Armadillo defaults to going straight ahead. Rules are applied to the rows closest to the robot first, because these rows represent the most immediate dangers.
Autonomous Challenge – Obstacle Avoidance • Obstacle avoidance is also handled by the lane following module. • This is accomplished by having the objects internally seen as part of the lane. • Thus, the objects are combined with the lane to make a larger, less elegant version of the lanes.
JAUS Challenge • Jaus. Communicator handles all communication with the OCU • Jaus. Communicator passes data to the Jaus. Handler as a Jaus. Message • Jaus. Handler validates all messages and if valid, it fires the appropriate event
- Slides: 15