Difference between revisions of "Candi"
m (→Electrical Issues & Improvements) |
m (→Versions) |
||
Line 150: | Line 150: | ||
=== At Competition === | === At Competition === | ||
+ | |||
+ | |||
+ | ----- | ||
=== Mechanical Issues & Improvements === | === Mechanical Issues & Improvements === | ||
+ | |||
+ | |||
+ | ----- | ||
=== Electrical Issues & Improvements === | === Electrical Issues & Improvements === | ||
Line 165: | Line 171: | ||
* Add "Power Arduino" | * Add "Power Arduino" | ||
* Fix: Wheel Encoders will be communicating over SPI | * Fix: Wheel Encoders will be communicating over SPI | ||
+ | |||
+ | |||
+ | ----- | ||
=== Software Issues & Improvements === | === Software Issues & Improvements === | ||
Line 183: | Line 192: | ||
=== At Competition === | === At Competition === | ||
+ | |||
+ | |||
+ | ----- | ||
=== Mechanical Issues & Improvements === | === Mechanical Issues & Improvements === | ||
Candiii's body has remained essentially the same for the last 2 years. | Candiii's body has remained essentially the same for the last 2 years. | ||
+ | |||
+ | |||
+ | ----- | ||
=== Electrical Issues & Improvements === | === Electrical Issues & Improvements === | ||
Line 198: | Line 213: | ||
*Motor encoders | *Motor encoders | ||
*Motor currents | *Motor currents | ||
+ | |||
+ | |||
+ | ----- | ||
=== Software Issues & Improvements === | === Software Issues & Improvements === |
Revision as of 15:49, 30 June 2019
Candiii | |
---|---|
[[]] | |
Year Of Creation | 2006-2007 |
Versions | |
Current Version | deprecated |
Update Year | 2007-2008, 2008-2009 |
Information and Statistics | |
Farthest Distance | 235 feet |
Fastest Time | n/a |
Highest Placement AutoNav | 6th |
Highest Placement Design | 9th |
Contents
Competitions
IGVC 2007
- Bot Version: Candi
- Results
- Distance: 123 feet
- Design Competition Placement: 9th (743 / 1100 points)
- AutoNav Competition Placement: 7th
IGVC 2008
- Bot Version: Candii
- Results:
- Distance: 185 feet
- Design Competition Placement: 18th (778.33 / 1100 points)
- AutoNav Competition Placement: 9th
IGVC 2009
- Bot Version: Candiii
- Results:
- Distance: 235 feet
- Design Competition Placement: 21st (476.67 / 1100 points)
- AutoNav Competition Placement: 6th
Versions
Candi (V1.0)
At Competition
Mechanical Issues & Improvements
Old BattleBots motors.
A new frame is currently being fabricated from 1" square tubing.
New body will have front suspension and a giant ball caster in the rear.
Electrical Issues & Improvements
- Router: Motorola WR850GP
- Hardware
- Broadcom 4712 @ 200MHz
- Storage: 4MB Flash
- Ram: 16MB
- Wireless: Integrated Broadcom
- Switch: ADM6996L (4 Port)
- Serial: Two headers
- Power: +12VDC, 0.5A
- Software
- OpenWrt (White Russian 0.9)
- 2.4.30 Kernel
- Available Software
- OpenWrt (White Russian 0.9)
- Hardware
- Monitor
- Positioning system: IMU 5 Degrees of Freedom
- Computer
- Processor: Intel Pentium 4 CPU 2.40GHz
- Physical Memory: 512 MB RAM
- IDE Master
- 30GB ATA-5 4200RPM HD
- File system partition = dev/hda2 18GB
- Power System
- Motor System (see Optoisolator interface diagram)
Software Issues & Improvements
Code from Graduate Students - Restricted access (must be logged in to access)
Path Planning Algorithms: Logan proposes that Robojackets consider the use of Support Vector Machine Path Planning as a method of creating an optical set of (x,y) waypoints that Candi may follow in order to dodge obstacles and follow lines. First, check out the wikipedia article on Support Vector Machines to help understand the theory.
Now, I have posted a paper that explains how this regression method is used in a larger algorithm to find best paths between two data sets. Have a look at it, but skip the first section where they explain the theory (it's the same information as Wikipedia, only a lot less understandable).
As for implementation, we should look at/borrow from/use the SVMlight program - an implementation of SVM in C. Apparently it is quite optimized too (the people who wrote the nice paper used it for experiments). There is a link to it on the Wikipedia page.
Robot Vision:
There are two perspective transforms that need to be implemented, the rectilinearizing transform and the planar perspective transform.
- Rectilinearizing Transform
- Simple in theory. Very hard to make work fast though. I have posted preliminary MATLAB code and am hoping to use vertex shaders to speed processing and autofill data gaps, but I don't know what hardware is available at the moment or how to write Cg.
- Scratch that, I have an OpenGL version working in C so the MATLAB one is unnecessary. Right now the OGL app is stand alone and only works on pictures named "pic.bmp" that are a 720x480 image in the bottom left corner of a 24bit 1024x1024 bmp image. Included is the Cygwin makefile(should work on any system with glut in $INCLUDE but give a warning), the pic.bmp test image, and source. Press any key to quit the program. The source code is massive, so a good text editor will be needed to edit.
- Planar Perspective Transform: Version 1.0
- Very simple and fast if data given in a convenient format. In development, I will post when I have a semistable implementation.
- HOLY SH*T!!!
- I went to the railroad today, took a picture with the camera, and dvgrabbed it back home.
- I was going to do some math and such, but then I thought, "What the hell, lets see what happens if I just stick it into the transform..." and LOOK WHAT I SAW!:
- OGMWTFBBQ&HOW!
- I knew it was good, but that is amazing!--Paul 11:32, 20 May 2007 (EDT)
Candii (V2.0)
At Competition
Mechanical Issues & Improvements
Electrical Issues & Improvements
Needs correction:
- GPS communicates over COM2(/dev/ttyS1)
- Time server (NTP) runs on the TS board reading the Data Carrier Detect (DCD) line of COM2
- Add: TS Board is running an NTP server to define robot time
- Software modules should be included
- Rename "Arduino" -> "Motor Arduino"
- Add "Power Arduino"
- Fix: Wheel Encoders will be communicating over SPI
Software Issues & Improvements
Our code for this year is stored in Subversion and is accessible at https://svn.robojackets.org/igvc/2008. The laptop codebase will be written in C++.
Contributers to the laptop codebase should ensure that they are following our coding conventions.
Player/Stage:
We are using the Player/Stage robot server as the communication layer between our device drivers and our processing/controlling software modules.
As we've used the Player server, occasionally we've needed to patch it to better suit our needs. Below are our custom patches:
Candiii (V3.0)
At Competition
Mechanical Issues & Improvements
Candiii's body has remained essentially the same for the last 2 years.
Electrical Issues & Improvements
Candiii has two isolated power systems: one for the motors and one for the other electronics.
Other Electronics:
- Camera
- LIDAR
- IMU
- GPS
- Compass
- Motor encoders
- Motor currents
Software Issues & Improvements
Localization and Mapping:
Controls:
- PI-Lead control(?)
- Joystick