RaginBot
From CajunBot Wiki
RaginBot, also known as CajunBot-II or simply CajunBot, is the second generation vehicle created by Team CajunBot.
Contents |
[edit] General Info
[edit] Platform
A 2004 Jeep Wrangler Rubicon with a 4.0 liter gasoline engine and automatic transmission with 4-wheel drive.
[edit] Electronics
Ragin'Bot houses many devices to enable sensor processing and autonomous vehicle control. The CajunBot software runs on three EPIC form factor computers, each powered by a 1.8GHz Intel Pentium M processor, housed in a single 1U rack mount case. Several devices convert various serial communications to Ethernet so data can be collected by all computers in the case of a failure of one computer. A custom dual alternator system powers the vehicle and on-board electronics. Redundant DC-to-DC converters transform the alternator voltage into a form usable by the various devices. A custom electronics box (EBOX) houses emergency stop control hardware and provides a central connection for all vehicle control hardware.
[edit] Sensors
Two Ibeo LIDAR sensors, three SICK LIDAR sensors and one Eaton Vorad Doppler radar detect obstacles. An Iteris lane departure warning system provides information about the position of the vehicle on the road. A C-Nav GPS receiver provides Starfire differential corrections, and an an Oxford inertial navigation sensor provides Kalman filter smoothing for GPS data and motion compensation via MEMS gyros and accelerometers.
[edit] Software
Custom software developed by Team CajunBot (cbsystem) does everything from object detection to path planning. Advanced Artificial Intelligence (AI) software developed at UL Lafayette allows Ragin' Bot to pick the shortest path while avoiding obstacles.
[edit] Photos
Below are various photos of CajunBot-II. You can hover over the various sensors to be redirected to the appropriate page.
[edit] Hardware devices and sensors
| List of Devices in the system | Device | Units | Device is present in the system | Driver | Description | Needed |
| Lidar System | ||||||
| Oscillating Sick | Sick LMS261 | 2 | N | Partial | Sick Laser Scanner | Sick driver exists, but scan_analysis_driver must be changed to support the continuously changing mounting angle of the oscillating sick sensor |
| IMSHome Motor/controller | 2 | N | N | Motor of Oscillating Sick | ||
| Pepperl-Fuchs Encoder | 2 | N | N | Absolute encoder for Oscillating sick | Must publish timestamped data to data queue | |
| Static Sick | Sick LMS261 | 3 | 4 sicks are present. | Partial | Sick Laser Scanner | Sick driver exists, but scan_analysis_driver must be changed to support the continuously changing mounting angle of the oscillating sick sensor |
| Other devices required for the Lidar System | Comtrol DeviceMaster UP | 1 | N | N/A | Ethernet to RS-422 converter for sick | Driver is not required. |
| Radar System | ||||||
| Static Radar | Vorad Radar | 1 | Y | Y | Motion-detecting radar | |
| Movable Radar | Vorad Radar | 2 | N | Y | Motion-detecting radar | |
| Motor not finalized | 2 | N | N | Motor to rotate the radar has not been finalized. | ||
| Encoder/switch not finalized | 2 | N | N | Encoder to find the position of the radar is not finalized | ||
| Navigation System | ||||||
| RT3102 | 1 | Y | Y | Inertial Navigation System | ||
| CNAV | 1 | Y | Y | Differential GPS receiver | ||
| ADR2205 | 1 | Y | Y | Digital I/O & relay board | ||
| Other Devices | ||||||
| DIGI Portserver TS8 | 1 | Y | Y | Ethernet to RS-232 converter | ||
| AEVIT Motor feedback | 1 | Y | Y | EMC steering position encoder over canbus | ||
| DAC converter board | 1 | Y | Y | Digital to analog converter PCI card | ||
| Labjack UE9 | 1 | N | N | Digital to analog converter & Digital I/O device | Must control all DAC lines and output lines, and read all input lines and place data in data queues | |
| Cameras | 3 | Y | Y | |||
| Devices not in Use | ||||||
| Honeywell Compass | 1 | N | Y | Magnetic compass and tilt sensor | ||
| Sureshot | 1 | N | Y | Single point laser range sensor | ||
[edit] Power budget
File:Raginbot power budget.ods
| ' | CajunBot-II Power Budget | ' | ' | ' |
| # | Item | Voltage | Power (W) | Total Power (W) |
| 1 | Primary computer | 110 | 260 | 260 |
| 1 | Vision computer | 110 | 260 | 260 |
| 2 | Mini-Itx computer | 110 | 180 | 360 |
| 1 | Control Box | 12 | 75 | 75 |
| 1 | Ethernet Switch | 110 | 15 | 15 |
| 1 | KVM Switch | 110 | ? | 1 |
| 4 | Sick LMS-291 | 24 | 44 | 176 |
| UPS | 110 | ? | 0 | |
| 1 | LCD Display | ? | 1 | |
| 1 | RT3102 INS | 12 | 15 | 15 |
| 1 | CNAV | 12 | 10.4 | 10.4 |
| 1 | Hawking 802.11 Router | 16 | 16 | |
| 1 | Hawking signal booster | 15 | 15 | |
| 1 | Strobe light bar | ? | 1 | |
| 1 | Siren | ? | 1 | |
| 1 | 3 Color light stack | ? | 1 | |
| 1 | EMC Gold system | 12 | 180 | 180 |
| 2 | EMC AEVIT module | 12 | 222 | 444 |
| 1 | EMC AUX Battery | 12 | 12 | 12 |
| 1 | Jeep air conditioner | 12 | 60 | 60 |
| 1 | Jeep Headlights | 12 | ? | 1 |
| 1 | Jeep Taillights | 12 | ? | 1 |
| 1 | Jeep Radio | ? | 1 | |
| 1 | Laptop Computer | 110 | 130 | 130 |
| Total Power: | 2036.4 | |||
| **All power numbers are MAX possible power draw** | ||||
File:Raginbot power budget dual alternator.ods
| ' | CajunBot-II Power Budget (Dual Alternator) | ' | ' | ' | ' | ' | ' | ' | ' | ' |
| All amperages +-5% | ||||||||||
| All voltages +-1.5% | ||||||||||
| # | Item | Voltage | Amps @ idle | Amps @ Full Load | Power @ idle(W) | Power @ Full Load(W) | Total Power @ idle(W) | Total Power @ Full Load(W) | ||
| 1 | Primary computer | 119.4 | 0.8 | 1.3 | 95.52 | 155.22 | 95.52 | 155.22 | ||
| 1 | Vision computer | 119.4 | 0.55 | 0.98 | 65.67 | 117.01 | 65.67 | 117.01 | ||
| 3 | Mini-Itx computer | 119.4 | 0.37 | 0.5 | 44.18 | 59.7 | 132.53 | 179.1 | ||
| 1 | CNAV | 12 | 0.9 | 0.9 | 10.8 | 10.8 | 10.8 | 10.8 | ||
| 1 | Ethernet Switch | 119.4 | 0.15 | 0.15 | 17.91 | 17.91 | 17.91 | 17.91 | ||
| 1 | KVM Switch | 119.4 | 0 | 0 | 0 | 0 | ||||
| 4 | Sick LMS-291 | 24 | 0.7 | 0.7 | 16.8 | 16.8 | 67.2 | 67.2 | ||
| 1 | UPS | 119.4 | 1.63 | 1.63 | 194.62 | 194.62 | 194.62 | 194.62 | ||
| 1 | LCD Display | 0 | 0 | 0 | 0 | |||||
| 1 | Control Box | 12 | 0.2 | 0.2 | 2.4 | 2.4 | 2.4 | 2.4 | ||
| 1 | RT3102 INS | 12 | 1.52 | 1.52 | 18.24 | 18.24 | 18.24 | 18.24 | ||
| 0 | Hawking 802.11 Router | 12 | 0 | 0 | 0 | 0 | ||||
| 0 | Hawking signal booster | 12 | 0 | 0 | 0 | 0 | ||||
| 0 | Laptop Computer | 119.4 | 130 | 0 | 0 | 0 | ||||
| @idle | @ Full Load | |||||||||
| Total Power before losses (W): | 604.9 | 762.5 | ||||||||
| Power loss due to inverter efficiency (86%) (W): | 84.69 | 106.75 | ||||||||
| Power loss due to UPS efficiency (95%)(W): | 4.23 | 5.34 | ||||||||
| Total Power including losses (W): | 693.82 | 874.59 | ||||||||
| Amps @ 12V before losses (W): | 50.41 | 63.54 | ||||||||
| Amps @ 12V including losses (W): | 57.82 | 72.88 | ||||||||
| # | Item | Voltage | Power (W) | Total Power (W) | Amps @ 12V | |||||
| 1 | Strobe light bar | 0 | 0 | 0 | ||||||
| 1 | Siren | 0 | 0 | 0 | ||||||
| 1 | 3 Color light stack | 0 | 0 | 0 | ||||||
| 1 | EMC Gold system | 12 | 180 | 180 | 15 | |||||
| 2 | EMC AEVIT module | 12 | 222 | 444 | 37 | |||||
| 1 | EMC AUX Battery | 12 | 12 | 12 | 1 | |||||
| 1 | Jeep air conditioner | 12 | 60 | 60 | 5 | |||||
| 1 | Jeep Headlights | 12 | 0 | 0 | 0 | |||||
| 1 | Jeep Taillights | 12 | 0 | 0 | 0 | |||||
| 1 | Jeep Radio | 0 | 0 | 0 | ||||||
| Total Power: | 696 | |||||||||
| Amps @ 12V: | 58 | |||||||||
File:Raginbot power budget DC system.ods
| ' | CajunBot-II Power Budget (DC System) | ' | ' | ' | ' | ' |
| # | Item | Amps @ 12V | Amps @ 5V | Amps @ 24V | Power per device (W) | Total Power (W) |
| 1 | NTP Computer | 0.07 | 4 | 20.84 | 20.84 | |
| 1 | Datalogger Computer | 0.07 | 4 | 20.84 | 20.84 | |
| 1 | Main Computer | 0.07 | 4 | 20.84 | 20.84 | |
| 1 | Vision Computer | 5 | 60 | 60 | ||
| 1 | CNAV | 0.9 | 10.8 | 10.8 | ||
| 1 | Ethernet Switch | 0 | 0 | |||
| 1 | KVM Switch | 0 | 0 | |||
| 4 | Sick LMS-291 | 0.7 | 16.8 | 67.2 | ||
| 0 | Oscillating Sick | |||||
| 1 | LCD Display | 0 | 0 | |||
| 1 | Control Box | 0.2 | 2.4 | 2.4 | ||
| 1 | RT3102 INS | 1.52 | 18.24 | 18.24 | ||
| 0 | Hawking 802.11 Router | 0 | 0 | |||
| 0 | Hawking signal booster | 0 | 0 | |||
| 0 | Laptop Computer | 0 | 0 | |||
| @idle | @ Full Load | |||||
| Total Power before losses (W): | 0 | 0 | ||||
| Power loss due to inverter efficiency (86%) (W): | 0 | 0 | ||||
| Power loss due to UPS efficiency (95%)(W): | 0 | 0 | ||||
| Total Power including losses (W): | 0 | 0 | ||||
| Amps @ 12V before losses (W): | 0 | 0 | ||||
| Amps @ 12V including losses (W): | 0 | 0 | ||||
| # | Item | Power (W) | Total Power (W) | Amps @ 12V | ||
| 1 | Strobe light bar | 0 | 0 | 0 | ||
| 1 | Siren | 0 | 0 | 0 | ||
| 1 | 3 Color light stack | 0 | 0 | 0 | ||
| 1 | EMC Gold system | 180 | 180 | 15 | ||
| 2 | EMC AEVIT module | 222 | 444 | 37 | ||
| 1 | EMC AUX Battery | 12 | 12 | 1 | ||
| 1 | Jeep air conditioner | 60 | 60 | 5 | ||
| 1 | Jeep Headlights | 0 | 0 | 0 | ||
| 1 | Jeep Taillights | 0 | 0 | 0 | ||
| 1 | Jeep Radio | 0 | 0 | 0 | ||
| Total Power: | 696 | |||||
| Amps @ 12V: | 58 | |||||
[edit] Computer Specifications
[edit] 2007 computer comparison
The following table is a comparison of potential replacement computers for the bot in 2007.
| Manufacturer | Model # | Processor | Memory | Storage | Network | GPIO | Expansion | Voltage | Power Usage | Dimensions | Temperature | Possible Use | Price | Website | Notes |
| Arcom | Pegasus | 133MHz x86 compat. | 64MB | IDE | 1x100 | N/A | 16-bit PC104 | 5V | 5W | PC104 (3.8” x 3.5”) | -20 – 70 C | NTP | http://www.arcom.com/pc104-sc520-peg.htm | ||
| Ampro | CoreModule 420 | 133MHz x86 compat. | 64MB | ATA33, CF | 1x100 | 8xdigital I/O | PC104(ISA), 1xUSB1.1 | 5V | 6.5W | PC104 (3.8” x 3.6”) | -20 – 70C | NTP | http://www.ampro.com/html/PC104_FormFactor_coremodule_420.html | Connections appear to be pin headers only (no sockets) | |
| Technologic | TS-5300 | 133MHz x86 compat. | 64MB | CF | 1x10 | 40xdigital I/O | PC104 (PCI) | 5V | 4W | PC104 (3.8” x 3.5”) | -20 – 70C | NTP | $323.00 | http://www.embeddedarm.com/epc/ts5300-spec-h.html | |
| Ampro | ReadyBoard 800 | Up to 1.8 Ghz Pentium M | 1GB | ATA100, CF | 1x100, 1x1000 | 8xdigital I/O | PC104 (PCI), 4xUSB2.0 | 5V, 12V | 20W@5V, 0.84W@12V, 20.84W total (w/ 1.8GHz Pentium M) | EPIC (4.5”x6.5”) | 0 - 60C | Main | http://www.ampro.com/html/EPIC_FormFactor_ReadyBoard_800.html | ||
| Kontron | MUNGO560 | Up to 2.1GHz Pentium M | 1GB | ATA100, SATA, CF | 1x100, 1x1000 | N/A | PCI, PCI-X, 4xUSB2.0 | 5V, 12V | Tbd | EBX (8” x 5.75”) | 0 – 50C | Main | $559.00 | http://us.kontron.com/index.php?id=226&cat=559&productid=1362 | |
| Versalogic | Cobra | 1.6GHz Pentium M | 1-2GB | ATA100, CF | 2x1000 | 32xdigital I/O, 8xanalog a/d | 4xUSB2.0, PC104(PCI) | 5V | 25W@5V | EBX (8” x 5.75”) | 0 - 60C | Main | $1,934.00 | http://www.versalogic.com/Products/DS.asp?ProductID=164 | |
| Arcom | Apollo | Up to 1.8 Ghz Pentium M; Celeron M also available | 1GB | ATA100, CF I/II | 2x100, 1x1000 | Yes: Unknown quantity | 1 PCI (3 w/ riser), 6xUSB2.0, 2x1394a | ATX | 12.3 – 36W (w/ 1.6GHz Pentium M) | EBX (8” x 5.75”) | -20 – 65C | Main, Vision?, datalogger | http://www.arcom.com/ebx-pentium-m-apollo.htm | ||
| ? | Nova-8890 | Up to 2.4GHz Pentium M | 1GB | 2xATA100,2xSATA, CFII, | 1x100, 1x1000 | 4xTTL in, 4xTTL out | PCI, PC104(PCI), 4xUSB2.0, 2x1394a | 5V, 12V | 19.5W@5V, 48W@12V, 67.5W total (w/ Pentium M 2.4GHz) | EBX (8” x 5.75”) | 0 - 60C | Main, Vision | http://jenlogix.co.nz/products/nova-8890.htm | USB on headers | |
[edit] Data logger
CajunBot Data Logger machine (IP address 192.168.0.11) has the following CPU information:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Pentium(R) M processor 1.80GHz stepping : 6 cpu MHz : 600.308 cache size : 2048 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe est tm2 bogomips : 1190.57
External devices used in the datalogger:
An external hardware called the IDE (Intelligent Data Electronics/Integrated Drive Electronics) has been added to the Datalogger machine.
[edit] NTP
CajunBot NTP machine (IP address 192.168.0.12) has the following CPU information:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Pentium(R) M processor 1.80GHz stepping : 6 cpu MHz : 600.077 cache size : 2048 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe est tm2 bogomips : 1190.57
No external hardware added to the NTP machine.
[edit] Steering
CajunBot steering machine (IP address 192.168.0.13) has the following CPU information:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 13 model name : Intel(R) Pentium(R) M processor 1.80GHz stepping : 6 cpu MHz : 600.128 cache size : 2048 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe est tm2 bogomips : 1190.57
An external Controller Area Network (CAN) has been added to the steering machine. CAN is a serial data communication bus used for communication with other devices on the network using this standard.
[edit] Vision
CajunBot vision machine (IP address 192.168.0.14) has the following CPU information:
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Core(TM)2 CPU T7600 @ 2.33GHz stepping : 6 cpu MHz : 2327.832 cache size : 4096 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm bogomips : 4661.75 processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Core(TM)2 CPU T7600 @ 2.33GHz stepping : 6 cpu MHz : 2327.832 cache size : 4096 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm bogomips : 4655.41
No external hardware added.
[edit] Miscellaneous
Spare EPIC board is also placed next to the vision machine. This EPIC board has a CAN placed on the motherboard.
[edit] IP Address Scheme
The IP address scheme on the bot is as follows. All IP addresses start with 192.168.0, the last digit is:
.1 - Datalogger 10/100 port
.2 - NTP 10/100 port
.3 - Steering 10/100 port
.4 - .9 reserved for future 10/100 computer ports
.11 - Datalogger GigE port
.12 - NTP GigE port
.13 - Steering GigE port
.14 - Vision GigE
.15 - Moxa NTP machine ethernet port
.16 - .19 reserved for future GigE computer ports
.20 - Ibeo
.21 - Labjack
.22 - Comtrol
.23 - Digi
.24 - WAP
.25 - Dell switch
.26 - .29 reserved for future devices
.33 - Default safe Laptop IP address
.100 - default CBLinux eth0 IP address (10/100)
.101 - default CBLinux eth1 IP address (GigE)
[edit] Dimensions
As compiled by Patrick, in response to a question by Tony on turning radius of Jeep (June 2005).
- Wheelbase [in]=93.4
- Overhang - Front [in]=24.1
- Ground Clearance - Approach Angle [DEG]=44.9
- Overall Height - With Soft Top [in]=72.1
- Track - Front [in]=59.5
- Ground Clearance - Breakover Angle [DEG]=25.4
- Overall Length [in]=156.1
- Overhang - Rear [in]=35.2
- Turning Diameter (curb-to-curb) - Turning Right [ft]=34.9
- Track - Rear [in]=59.5
- Overall Height - With Hard Top [in]=70.9
- Overall Width [in]=68.2
- Turning Diameter (curb-to-curb) - Turning Left [ft]=34.9
- Ground Clearance - Departure Angle [DEG]=33.9
- Ground Clearance=10.3
[edit] Architecture and Algorithms
Read the "CajunBot Architecture and Algorithms" document to get an overall understanding of the entire system.
[edit] Schematic diagrams
See: CajunBot-II diagrams
[edit] Steering controller
The following MatLab code is for PD Steering Controllers:
%This is the matlab code for the steering controller of the cajun bot. M = 2000; % Vehicle mass I = 8470; % Vehicle moment of intertia lf = 1.3; % Distance from center of gravity to front axle lr = 1.3; % Distance from center of gravity to rear axle L = lf + lr; % Wheel base (distance between axels) ds = 2.5; % Distance from virtual sensor to center of gravity cf = 43000; % Front cornering stiffness in Newtons/Radian cr = 86000; % Rear cornering stiffness in Newtons/Radian u = 1; % Road adhesion factor v = 15; % Vehicle velocity in meters/second s = .05; % sample time (20 Hz) df = 0; % Front wheel road angle ys = 0; % Minimum distance from virtual sensor to reference path yaw = 0; % Vehicle yaw with respect to a fixed coordinate system %transfer function of the steering angle to the lateral accelleration of %the sensor point num1 = [u*cf*v^2*(M*lf*ds+I),u^2*cf*cr*L*v*(ds+lr),u^2*cf*cr*L*v^2]; den1 = [I*M*v^2,u*v*(I*(cr+cf)+M*(cf*lf^2+cr*lr^2)),u*M*v^2*(cr*lr-cf*lf)+u*cf*cr*L^2]; sys1 = tf(num1,den1); % Double integrator to obtain the transfer function from ground wheel angle % to lateral displacement num_int = 1; den_int = [1 0 0]; double_int =tf(num_int,den_int) newsys = double_int*sys1; %lead compensator design which increases the stability of the system by shifting %the root locus to the left of the s- plane K =3;%gain of the system num2 =[1,1];%zeroes of the lead compensator den2 = [1,20];%poles of the lead compensator t=0:0.5:3.5; sys2 = tf(num2,den2);%lead compensator transfer function sys12=sys2*newsys; %control input to lateral displacement sys = feedback(sys12,K);%feedback system step(sys,t);%step response of the system %rlocus(sys,1);%root locus of the system: stability test
[edit] Presentations
See: Presentations
[edit] See also
- The CajunBot Lab website
- CajunBot Technology
- CajunBot
- cbsystem
- Presentations
- Oscillating Sick
- Pepperl-Fuchs
- CajunBot-II diagrams
- SICK port numbers on CajunBot-II
- AEVIT
- Battery backup
- C-NAV antenna
- C-NAV receiver
- Comtrol box
- Digi Portserver TS8
- Ebox
- EMC console
- EMC control panel
- EMC steering engage lever
- Ibeo Alasca LIDAR
- Iteris LDW
- LabJack
- Logger, Steering, and NTP computers
- Eaton Vorad Radars
- CajunBot-II
- RT3102
- RT3K antenna
- RT3K wheel speed sensor
- Shore power box
- SICK LIDAR
- Torc E-stop
- Vision camera for detecting lanes
- Vision computer
- WiFi radios

