RaginBot

From CajunBot Wiki

(Redirected from CajunBot-II)
Jump to: navigation, search


RT3K antennaRT3K antennaC-NAV antennaSICK LIDARSICK LIDAREaton Vorad RadarsIbeo Alasca LIDARIbeo Alasca LIDARIbeo Alasca LIDARRT3K wheel speed sensorIteris LDWCamera for detecting lanes
CajunBot-II in California at the 2007 Urban Challenge.

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.

RT3K antennaRT3K antennaC-NAV antennaSICK LIDARSICK LIDAREaton Vorad RadarsIbeo Alasca LIDARIbeo Alasca LIDARIbeo Alasca LIDARRT3K wheel speed sensorIteris LDWCamera for detecting lanes
RaginBot (aka CajunBot-II) in California at the 2007 Urban Challenge.


Vision computerLogger, Steering, and NTP computersEboxShore power box
RaginBot (aka CajunBot-II) computer systems.


EMC consoleEMC control panelEMC control panelEMC steering engage lever
RaginBot (aka CajunBot-II) driver's side.


LabJackTorc E-stopComtrol boxBattery backupC-NAV receiverDigi Portserver TS8EboxVision computerEMC consoleShore power boxWiFi radios
RaginBot (aka CajunBot-II) rear.


[edit] Hardware devices and sensors

File:Devices List.ods

List of Devices in the system Device Units Device is present in the system Driver Description Needed
Lidar System
Oscillating SickSick LMS2612NPartialSick Laser ScannerSick driver exists, but scan_analysis_driver must be changed to support the continuously changing mounting angle of the oscillating sick sensor
IMSHome Motor/controller2NNMotor of Oscillating Sick
Pepperl-Fuchs Encoder2NNAbsolute encoder for Oscillating sickMust publish timestamped data to data queue
Static SickSick LMS26134 sicks are present.PartialSick Laser ScannerSick 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 SystemComtrol DeviceMaster UP1NN/AEthernet to RS-422 converter for sickDriver is not required.
Radar System
Static RadarVorad Radar1YYMotion-detecting radar
Movable RadarVorad Radar2NYMotion-detecting radar
Motor not finalized2NNMotor to rotate the radar has not been finalized.
Encoder/switch not finalized2NNEncoder to find the position of the radar is not finalized
Navigation System
RT31021YYInertial Navigation System
CNAV1YYDifferential GPS receiver
ADR22051YYDigital I/O & relay board
Other Devices
DIGI Portserver TS81YYEthernet to RS-232 converter
AEVIT Motor feedback1YYEMC steering position encoder over canbus
DAC converter board1YYDigital to analog converter PCI card
Labjack UE91NNDigital to analog converter & Digital I/O deviceMust control all DAC lines and output lines, and read all input lines and place data in data queues
Cameras3YY
Devices not in Use
Honeywell Compass1NYMagnetic compass and tilt sensor
Sureshot1NYSingle point laser range sensor

[edit] Power budget

File:Raginbot power budget.ods

' CajunBot-II Power Budget ' ' '
#ItemVoltagePower (W)Total Power (W)
1Primary computer110260260
1Vision computer110260260
2Mini-Itx computer110180360
1Control Box127575
1Ethernet Switch1101515
1KVM Switch110?1
4Sick LMS-2912444176
UPS110?0
1LCD Display?1
1RT3102 INS121515
1CNAV1210.410.4
1Hawking 802.11 Router1616
1Hawking signal booster1515
1Strobe light bar?1
1Siren?1
13 Color light stack?1
1EMC Gold system12180180
2EMC AEVIT module12222444
1EMC AUX Battery121212
1Jeep air conditioner126060
1Jeep Headlights12?1
1Jeep Taillights12?1
1Jeep Radio?1
1Laptop Computer110130130
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%
#ItemVoltageAmps @ idleAmps @ Full LoadPower @ idle(W)Power @ Full Load(W)Total Power @ idle(W)Total Power @ Full Load(W)
1Primary computer119.40.81.395.52155.2295.52155.22
1Vision computer119.40.550.9865.67117.0165.67117.01
3Mini-Itx computer119.40.370.544.1859.7132.53179.1
1CNAV120.90.910.810.810.810.8
1Ethernet Switch119.40.150.1517.9117.9117.9117.91
1KVM Switch119.40000
4Sick LMS-291240.70.716.816.867.267.2
1UPS119.41.631.63194.62194.62194.62194.62
1LCD Display0000
1Control Box120.20.22.42.42.42.4
1RT3102 INS121.521.5218.2418.2418.2418.24
0Hawking 802.11 Router120000
0Hawking signal booster120000
0Laptop Computer119.4130000
@idle@ Full Load
Total Power before losses (W):604.9762.5
Power loss due to inverter efficiency (86%) (W):84.69106.75
Power loss due to UPS efficiency (95%)(W):4.235.34
Total Power including losses (W):693.82874.59
Amps @ 12V before losses (W):50.4163.54
Amps @ 12V including losses (W):57.8272.88
#ItemVoltagePower (W)Total Power (W)Amps @ 12V
1Strobe light bar000
1Siren000
13 Color light stack000
1EMC Gold system1218018015
2EMC AEVIT module1222244437
1EMC AUX Battery1212121
1Jeep air conditioner1260605
1Jeep Headlights12000
1Jeep Taillights12000
1Jeep Radio000
Total Power:696
Amps @ 12V:58

File:Raginbot power budget DC system.ods

' CajunBot-II Power Budget (DC System) ' ' ' ' '
#ItemAmps @ 12VAmps @ 5VAmps @ 24VPower per device (W)Total Power (W)
1NTP Computer0.07420.8420.84
1Datalogger Computer0.07420.8420.84
1Main Computer0.07420.8420.84
1Vision Computer56060
1CNAV0.910.810.8
1Ethernet Switch00
1KVM Switch00
4Sick LMS-2910.716.867.2
0Oscillating Sick
1LCD Display00
1Control Box0.22.42.4
1RT3102 INS1.5218.2418.24
0Hawking 802.11 Router00
0Hawking signal booster00
0Laptop Computer00
@idle@ Full Load
Total Power before losses (W):00
Power loss due to inverter efficiency (86%) (W):00
Power loss due to UPS efficiency (95%)(W):00
Total Power including losses (W):00
Amps @ 12V before losses (W):00
Amps @ 12V including losses (W):00
#ItemPower (W)Total Power (W)Amps @ 12V
1Strobe light bar000
1Siren000
13 Color light stack000
1EMC Gold system18018015
2EMC AEVIT module22244437
1EMC AUX Battery12121
1Jeep air conditioner60605
1Jeep Headlights000
1Jeep Taillights000
1Jeep Radio000
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
ArcomPegasus133MHz x86 compat.64MBIDE1x100N/A16-bit PC1045V5WPC104 (3.8” x 3.5”)-20 – 70 CNTPhttp://www.arcom.com/pc104-sc520-peg.htm
AmproCoreModule 420133MHz x86 compat.64MBATA33, CF1x1008xdigital I/OPC104(ISA), 1xUSB1.15V6.5WPC104 (3.8” x 3.6”)-20 – 70CNTPhttp://www.ampro.com/html/PC104_FormFactor_coremodule_420.htmlConnections appear to be pin headers only (no sockets)
TechnologicTS-5300133MHz x86 compat.64MBCF1x1040xdigital I/OPC104 (PCI)5V4WPC104 (3.8” x 3.5”)-20 – 70CNTP$323.00http://www.embeddedarm.com/epc/ts5300-spec-h.html
AmproReadyBoard 800Up to 1.8 Ghz Pentium M1GBATA100, CF1x100, 1x10008xdigital I/OPC104 (PCI), 4xUSB2.05V, 12V20W@5V, 0.84W@12V, 20.84W total (w/ 1.8GHz Pentium M)EPIC (4.5”x6.5”)0 - 60CMainhttp://www.ampro.com/html/EPIC_FormFactor_ReadyBoard_800.html
KontronMUNGO560Up to 2.1GHz Pentium M1GBATA100, SATA, CF1x100, 1x1000N/APCI, PCI-X, 4xUSB2.05V, 12VTbdEBX (8” x 5.75”)0 – 50CMain$559.00http://us.kontron.com/index.php?id=226&cat=559&productid=1362
VersalogicCobra1.6GHz Pentium M1-2GBATA100, CF2x100032xdigital I/O, 8xanalog a/d4xUSB2.0, PC104(PCI)5V25W@5VEBX (8” x 5.75”)0 - 60CMain$1,934.00http://www.versalogic.com/Products/DS.asp?ProductID=164
ArcomApolloUp to 1.8 Ghz Pentium M; Celeron M also available1GBATA100, CF I/II2x100, 1x1000Yes: Unknown quantity1 PCI (3 w/ riser), 6xUSB2.0, 2x1394aATX12.3 – 36W (w/ 1.6GHz Pentium M)EBX (8” x 5.75”)-20 – 65CMain, Vision?, dataloggerhttp://www.arcom.com/ebx-pentium-m-apollo.htm
 ?Nova-8890Up to 2.4GHz Pentium M1GB2xATA100,2xSATA, CFII, 1x100, 1x10004xTTL in, 4xTTL outPCI, PC104(PCI), 4xUSB2.0, 2x1394a5V, 12V19.5W@5V, 48W@12V, 67.5W total (w/ Pentium M 2.4GHz)EBX (8” x 5.75”)0 - 60CMain, Visionhttp://jenlogix.co.nz/products/nova-8890.htmUSB 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

Personal tools