Thursday, April 24, 2008

Final image of the robot

With GPS mounted on a carbon rod post.



April 20. 2008 Just before the demonstration day.

Saturday, March 22, 2008

Monday, March 17, 2008

Sunday, March 16, 2008

Field Test 2 w/ Video

Date: March 16, 2008 (Sunday)
15:00 pm
I conducted new GPS navigation test over the weekend in one of a campus parking lot.
The point of this test was to evaluate newly added navigation algorithm in the program.
Also the field itself is much bigger and not many obstacles placed around.
I solved the heading confusion problem which occurs when the waypoint is placed on the north, by adding two lines of code.
if(Goal_HDG - Current_HDG > 180) D_HDG = Goal_HDG - 360 - Current_HDG;
else if(Goal_HDG - Current_HDG < -180) D_HDG = 360-Current_HDG + Goal_HDG;
The graph shows two different experiment with same waypoint data.
Only difference was the direction and position of the starting point.

At this time I can check the robot draws smoother trackings and does not fell into a heading confusion problem.
For next experiment, I would attach a SONAR in front and test the navigation with obstacle avoidance.

Saturday, March 15, 2008

Kyubot overview.

I assembled the body frame on the rc car body to set up for the test.
still looks too complex and should be fixed.

So many lines, make me crazy~

Under testing Kyubot

In one of the roads in the campus.
I was trying to modify way-point data in the SD memory module.


Picture taken by Brad.
3/13/2008, 4:00pm
UF, MAE-C

Field Test 1

The first actual field test held on a parking lot in the campus.
This picture shows the result of GPS navigation.
The length of each small segment is approximately 6~7 meters or 20 ft.
Navigation start from the one edge of the parking lot and finish at one of the slots.

So far, there was no problem at least going from east to west or vise versa, or to the south.
However, going to the north has some problem due to heading confusion at near 360 or 0 degree which both stands for absolute North.

Thursday, February 21, 2008

ASCII code

ASCII
Hex

Symbol

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
TAB
LF
VT
FF
CR
SO
SI


ASCII

Hex

Symbol

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D
1E
1F

DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
GS
RS
US


ASCII

Hex

Symbol

32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47

20
21
22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F

(space)
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/


ASCII

Hex

Symbol

48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

30
31
32
33
34
35
36
37
38
39
3A
3B
3C
3D
3E
3F

0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?


ASCII

Hex

Symbol

64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79

40
41
42
43
44
45
46
47
48
49
4A
4B
4C
4D
4E
4F

@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O


ASCII

Hex

Symbol

80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95

50
51
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F

P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_


ASCII

Hex

Symbol

96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111

60
61
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F

`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o


ASCII

Hex

Symbol

112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127

70
71
72
73
74
75
76
77
78
79
7A
7B
7C
7D
7E
7F

p
q
r
s
t
u
v
w
x
y
z
{
|
}
~


Software Architecture of Kyubot

Program flow chart


Picture looks a little crappy but this flow chart represent basic concept of the software architecture of Kyubot.
Remarks
ISR stands for Interrupt Service Routine
Each process enclosed by colored diagram runs independent from one another.

Tuesday, February 19, 2008

SD memory Card Module


This SD memory module is for programming the waypoints for the robot and data logging.
This module is almost ready to use and just need some wiring and attaching the indicators on the board.

It communicate with MCU using serial protocol @ 19200 bps.

GPS module


GlobalSat BU-353

Water-Proof USB Mouse GPS Receiver - SiRF Star III (BU353)

I finally can get coordinate data from this small GPS module.
This gps module has some pros and cons.
One of the advantage of using this module is that it's relatively cheaper than other GPS module from SIRF.
SIRF is well known for their reliable product line of GPS modules.
However, since this device was designed to be used built in USB serial port, I have to hack it and jump the wire which was connected to the serial input for Serial->USB chip inside the module.

If you want to avoid messing around this, I definitely recommend buying BU-255 model which can be directly connected to serial port.




TECHINCAL DATA OF THE DEVICE
Chipset SiRF Star III (firmware version 3.1.1 with WAAS Support turned on by default)
Frequency L1, 1575.42 MHz
C/A code 1.023 MHz chip rate
Channels 20 channel all-in-view tracking
Sensitivity -159 dBm
Accuracy Position 10 meters, 2D RMS
5 meters, 2D RMS, WAAS enabled
Time 1us synchronized to GPS time
Datum WGS-84Acquisition
Reacquisition 0.1 sec., average
Hot start 1 sec., average
Warm start 38 sec., average
Cold start 42 sec., average
Dynamic Conditions -> Altitude: 18,000 meters (60,000 feet) max
-> Velocity: 515 meters /second (1000 knots) max
-> Acceleration: Less than 4g
Jerk 20m/sec × 3<> Dimension: 53mm diameter, 19.2mm height
-> Cable length: 1.5 meters
Operating temperature -40°C to +85°C

Friday, February 15, 2008

Weekly Report 5

Weekly Reports

Date: 2/12/08

Student Name: Kyuhyong You

Instructors: Dr. A. Antonio Arroyo

Dr. Eric M. Schwartz

University of Florida

Department of Electrical and Computer Engineering

EEL 5666

Intelligent Machines Design Laboratory

Weekly Report 5

What I have done so far.

Hardware

- Motor driver with encoder attached (PID not yet completed)

- Steering Servo initialized and functional

- LCD module initialized

- GPS module initialized – Work needed to decode data from GPS module

l Accelerometer initialized but not attached to the MCU

Software

- Timer interrupt for PWM signal

- Pulse accumulator interrupt for encoder

- SCI interrupt for serial interface to get data from GPS and send data to LCD module

- ATD interrupt to capture analogue signal from potentiometer

- Parsing the GPS data

For next week

Design the cover for the car.

Connect accelerometer module to the board and make functional.

Wait for sonar to be shipped as soon as possible.

Make the SD flash memory card module to be functional.

Weekly Report 4

Weekly Reports

Date: 2/04/08

Student Name: Kyuhyong You

Instructors: Dr. A. Antonio Arroyo

Dr. Eric M. Schwartz

University of Florida

Department of Electrical and Computer Engineering

EEL 5666

Intelligent Machines Design Laboratory

Weekly Report 4

I ordered a GPS receiver from online shop. The receiver is BU-353 Water-Proof USB GPS Receiver equipped with SiRF Star III. It has several advantages. First of all it’s only $37 rather than $100 module. Secondly, its reacquisition time is 0.1 seconds which means it cab refresh coordinates very fast enough to be used for small model car. Thirdly, it has accuracy of less than 5 meters relatively smaller than 10 meter ones.

In cons, it needs to be hacked to be used for my project. It comes with built in USB port which might used for USB-Serial interface. If I can find Rx and Tx line then it can be plugged in SCI port in the MCU.

For next week

Hack the GPS module

Receive data

Find way to use the data in embedded software

Weekly Report 3

Weekly Reports

Date: 1/31/08

Student Name: Kyuhyong You

Instructors: Dr. A. Antonio Arroyo

Dr. Eric M. Schwartz

University of Florida

Department of Electrical and Computer Engineering

EEL 5666

Intelligent Machines Design Laboratory

Weekly Report 3

During the week I’ve been trying to use my new LCD module with backlight. Another one I have been used has serial interface so that I don’t have to be bothered to make I/O interface but now I need to use I/O ports to control this LCD module.

PID controller needs more work. Only the software programming is needed. This can be done in a week.

Now the car has a steering wheel! I found the center position of the period of the PWM signal for the main servo. I attached Hitec HS-5925MG digital servo for doing it and it works pretty well.

For next week

Make the LCD useful for my project

Find good GPS module

PID gain tuning

Weekly Report 1

Weekly Reports

Date: 1/17/08

Student Name: Kyuhyong You

Instructors: Dr. A. Antonio Arroyo

Dr. Eric M. Schwartz

University of Florida

Department of Electrical and Computer Engineering

EEL 5666

Intelligent Machines Design Laboratory

Weekly Report 1

I thought about building a robot embedded on a RC car which can park the vehicle by itself. By searching the internet, I found somebody had done this before and works fine. After looking at those kind of works, I can decide what kind of stuffs needed to make it work.

First of all I definitely need to have a RC car and I found one which is large enough (1/10 scale) to accommodate sensors and boards from the Hobbytown USA in Gainsville. It will cost me about $90.

For the motor controllers, since the motor inside the vehicle is quite not unreliable so I will attach an encoder to feedback the speed of the motors. I found one from the ebay and ordered it on January 16. This one cost me about $34 include shipping.

http://pics.ebaystatic.com/aw/pics/globalAssets/ltCurve.gif

Stegmann Sick Optical Encoder 1140 PPR

I haven’t decided yet about the sensors but I’m thinking about using two SONARs in front and rear of the vehicle so that it can measure the distance between other cars. I also searched on the web and the prices are about $30 each.

For next week

Order SONARs, Vehicle platform, Battery.

Test the encoder and board.

Make power supply board both for 5v and 3.3v DC.

Thursday, February 14, 2008

STEGMAN RD 20 Encoder

Resolution: 1440 ppr (pulse per revolution)
Type: Optical incremental encoder.

I purchased this decent encoder from ebay for $40. which was great deal. Because usually this kind of optical encoders are very hard to get and even more expansive then $100

More info can be found here
http://www.stegmann.com/product/incremental/index.html

Wednesday, February 13, 2008

Free Accelerometer!

This module is a +-2.5g-10g Three Axis Low-g Micro Accelerometer from Freescale.










This is very small yet sensitive accelerometer from Freescale.
This sensor can detect velocity of each 3 axis x, y, z and output as voltage level signal.
By connecting each pin out to ADC channels in MCU, velocity can be measured easily.

Parts required to finish
3x 1k ohm resister (for each signal output)
4x .1uf Capacitor (noise attenuation)

You can get free sample of this wonderful accelerometer by simply ordering sample from this address. You can order up to 3 items at once.
http://www.freescale.com/webapp/search/MainSERP.jsp?Product%20Type=Products/055M939346251269%60%60Sensors&isComparison=false&SelectedAsset=Orderable%20Parts&pageSize=25&showCustomCollateral=false&showAllCategories=false&columnOrder=Info%21%60Order%21%60status%21%60ReplacementPart%21%60packages_desc%21%60tape_and_reel%21%60app_qual_tier_desc%21%60budgetary_price%21%60REFLOW_TEMP_NUM%21%609_CFLG%21%600000001205%21%600000001644%21%600000001457%21%600000001478%21%600000001498%21%600000001497%21%600000001455%21%600000001454%21%600000001453%21%600000001334%21%60&Order=Order%20sample&fsrch=1&isAdvanceSearch=false&RELEVANCE=true&pageNum=1&assetLocked=false&fromWebPages=false&

However, since they only provide SOIC type package for this kind of item, professional soldering skill is required. SOIC(Small Outline Integrated Circuit) means it is really small!
You may can find this kind of chips on small integrated chipset such as Cellphones. Usually SOIC type chips can be mounted on the surface of board by special machine. It is almost impossible to connect the small pins on the board using regular solder gun. Then how people who doesn't have such machine like me can use this chip?

Here is some tip.
As you can see here, first fix the chip on the board flipped over.
Then connect each wrapping wire to the surface of the chip really carefully.
Once done, use glue gun on it to protect each pin from external damage might broke connection.





Datasheet can be found from the address below
http://www.datasheetarchive.com/pdf/2424781.pdf

Motor Driver

MOTOR DRIVER


This motor driver is array of six LN298N Dual Full-Bridge Driver.
LN298N has fallowing features

- Total DC current up to 4A
- Operating supply voltage up to 46V
- Over temperature protection

Combining by 6, this driver module can draw up to 24A theoretically, and in experiment with 540 DC motor, I couldn't find any problem with it.

Maximum of 12A was consumed when burst start.
The module has 4 inputs, Enable, Direction, PWM and Logic supply voltage Vss
Signal is connected to PWM channel 3 of the MCU
Enable and Direction signal connected to PORTB channel 5 and 4 respectively.

Kyubot is under construction...


As you can see here, Kyubot is now under construction. Each component will be assembled on the top of the car.
So far everything works fine, a little messy though.
02/13/2008