Professional Documents
Culture Documents
Minimum mechanical design & construction PCB used as robot body () PCB is tough and strong Good soldering to withstand crash Sensors must be well supported (hot glue )
DEMO
Mouse weight
d x is smaller
Resultant force
Always keep the robot c.g. as low as possible Make robot as wide as possible () Make your robot like F1 car
When moment of inertia is high, rotational acceleration () is reduced for the same torque . Torque = I (F = ma)
() = ()
Keep heavy parts like motors, battery etc as close to robot centre as possible
()()
If moment of inertia is high, stronger motor is required, -> bigger battery too!
10
11
tire
Force available to propel the robot forward depends on motor power and friction force . If motor is powerful enough, then friction is the limiting factor ()
12
If motor exerts a force greater than friction force, tires will skid (). To prevent skidding, driving force < friction force
o Friction
Keep robot weight low -> reduce motor size -> reduce battery capacity.
13
14
Lower c.g.
higher c.g.
Weight of wheels and shaft affect the robots c.g. Keep wheels & shaft as light as possible Use light and thin material if possible
15
Hump or step
Hump or step
Wider wheel will also be less affected by unevenness. ( ) On a flat and clean surface, tire diameter and width has negligible impact on performance. ( ) Too wide and its hard to turn
17
x
More weight Less weight
During acceleration, weight is transferred to back wheels ( ) During deceleration, weight is transferred to front wheels Good for straight acceleration/deceleration () Complex and hard to build () My dream mouse !!!
18
Wheels on floor
19
Side sensor
transmitter
Front sensor
shield
Ng Beng Kiat Taiwan2009
22
Tx2
Rx2
23
IR LED
Pulsing allows higher current to swarm interference
() LED on < 10% of time only -> can stand higher current Pulsing minimize interference from neighbouring sensors Receiver should be less sensitive -> allows high transmitter output () Improve signal noise ratio
24
2.2 Alignment
Lateral offset
Direction offset
Centre of cell
Longitudinal offset
25
LALIGN_SEN_VALUE
RALIGN_SEN_VALUE
if( (LALIGN_SEN_VALUE > laSenV3) && (RALIGN_SEN_VALUE < raSenV3)) { //Too left, adjust right alignSpeed= (LALIGN_SEN_VALUE - laSenV3)*maxAlignSpeed/laNearLeftRange ; } else if( (RALIGN_SEN_VALUE > raSenV3) && (LALIGN_SEN_VALUE < laSenV3) ) { // Too right, adjust left alignSpeed = -(RALIGN_SEN_VALUE - raSenV3)*maxAlignSpeed/raNearRightRange); }
Start of turn
end of turn
Collision avoidance
29
30
Acceleration/ deceleration
end speed
Time(s)
Parameters Top speed Acceleration/deceleration End speed (= curve turn speed) Distance
31
Rotational speed ()
Speed (deg/s) Top speed
Acceleration/ deceleration
Time(s)
32
90 degrees(x4)
45 degrees (x4)
180 degrees(x2)
33
V turn (x2)
34
start
Inner wheel
35
speed
error
+-
PWM PD - motor
encoder signals
Set topSpeed, endSpeed, acceleration, distance
No integral term PD control & Profile generator is executed every msec PWM frequency is 10kHz PWM duty cycle = kp errorn + kd (errorn-errorn-1)
36
37
Speed(m/s)
s1 d
Calculating deceleration: A+B = (S1t2)/2 B = S2(t2 - t1)/2 d = S1/t2 = S2/( t2 - t1) o t2 = S1/d o (t2 - t1) = S2/d A = (S1t2 )/2 -B = (S1t2)/2 - S2(t2 - t1)/2 = (S12- S22)/2d = (S12- S22)/2A
38
xError
PD
+-
left L
(R+L)/2
wSpeed
+-
wError
PD
right R
alignSpeed
(R-L)/2 or gyro
leftSpeed = xSpeed wSpeed; rightSpeed = xSpeed + wSpeed; xSpeed = (rightSpeed+leftSpeed)/2 wSpeed = (rightSpeed-leftSpeed)/2
39
Gyro is fast in response Accurate for fast curve turn (not for very slow turn) / opposite of optical encoder Need to calibrate before run due to DC drift ? Not affected by tires size change
40
7 m/s2
7 m/s2
Time(s)
Step 1 : Calculate maximum power required Force(N) = mass(kg) acceleration(m/s2) = o Desired acceleration = 7 m/s2 // experience required
41
Force = 0.12kg 7m/s2 = 0.84N Power (W) = force(N) speed(m/s) ( = ) Maximum power is required when robot is accelerating at 7 m/s2 near top speed = 3m/s. Max power required = 0.84N3 m/s = 2.52 watt. Since there are 2 motors, power required per motor = 1.26 W. Step 2 : Select motor (Faulhaber 1717SR) Choose a motor with maximum Power 1.5 times to 2 times 1.26W = 1.89W to 2.52 W, Which is less than the Pmax of 1.96 W (Faulhaber 1717SR).
42
Note that I also overdrive the motor. 2x Lithium Polymer = 8.4V. Average around 7.8 volts Maximum power out at 7.8 V = (7.8/6)2 1.96 = 3.3 watts Step 3 : Select gear ratio Calculate torque and speed o Tires diameter is 24mm o Torque required = Forceradius ( = )
43
= 0.84N 12mm = 10.08 mNm o Torque required per motor = 5.04mNm. o Wheel circumference = Pidiameter = 0.0754m o At 3m/s, wheel revolution = speed/circumference = 3/0.0754m = 39.8 rps = 2387 rpm Therefore, near top speed, motor must be able to provide torque output of 5.04mNm at speed of 2387 rpm.
44
7 m/s2
7 m/s2
45
32
1:1
12
46
There is a range of gear ratio to select from The higher the gear ratio, the more energy efficient the motor is. Allows spare power for alignment
Prefer long & slim motors to short and fat motor. Lower c.g.
47
Pull up
MOSFET driver
motor driver
48
User interface
Need feedback to tell what the mouse is doing LED lights Sound Menu driven (dotmatrix display & input switch)
Websites
Visit my website at www.np.edu.sg/alpha/nbk (A* Pathfinding ) http://www.policyalmanac.org/games/aStarTutorial.htm (Nakashima website) http://homepage1.nifty.com/hfd01577/index.html (Pete Harrison) http://micromouse.cannock.ac.uk
Good Luck!
49