You are on page 1of 7

Scientific Journal of Control Engineering

August 2013, Volume 3, Issue 4, PP.288-294

Four Wheeled Omni-directional Drive Vehicle


Motion Control Method Research
Huajin Yan 1, Runxuan Li 2, Yongzhi Yang 1, Dexue Bi1
1. College of Mechanical Engineering, Tianjin University of Science and Technology, Tianjin 300222, China
2. College of precision instrument, Tianjin University, Tianjin 300192, China
Email:

lmt198@sohu.com

Abstract
In view of the rapid development of China's domestic market demand, the liberation of human complex labor, the full enjoyment
of modern life. With high efficiency of four wheeled omni-directional robot cleaning vehicle as the research object, based on AVR
motion control theory, the robot model is analyzed in detail, the radius of curvature of the method of model simplification, by
constantly changing the radius of curvature of the control car, so that a robot could quickly, has good real time. The system uses
modular programming, obstacle avoidance module to join, improved the readability, easy debugging, to realize the obstacle
avoidance, better achieve the predetermined path, and has a certain practicality.
Keywords: Radius of Curvature; Motion Model; Path to Achieve

1 2 1 1
1. 300222
2. 300192

AVR

AVR AVR

- 288 http://www.sj-ce.org/

4 1

PWM

10 0.20.45120mm/s36

20cm

2
2.1

2XI
YIO{XIYI }
P{XR,YR}P
Pxy
3I
x
I y

(1)

- 289 http://www.sj-ce.org/

cos sin 0

R( ) sin cos 0

0
0
1

(2)

{XIYI }{XR,YR}

R() I

R R( ) I
2

(3)

x y XI YI

2.2

B d AB A
B
(t)(t) AB
3

X R cos(++)+ YR sin(++)+ L sin(+)+d sin=R

(4)

A
A

- X R sin(++)+ YR cos(++)+ L cos(+)+ d cos=0

(5)

2.3
2.3.1

- 290 http://www.sj-ce.org/

2.3.2

4 AB
RA B C D
AB=92mmCD=75mm r = 30mm=49 CD =53
4
BD ABC BCD 5

ABC AB AC
BCA
BC ABC
BC2=AC2+R2-2ACRCos(BCA)
Sin(ABC )

AC SinBAC
BC

(6)

BCD BC BD EF CDF=
BD BCD
BD2+CD2-2BDCDCos(90+CDF)=BC2
Sin(BCD)

BD SinBDC
BC

- 291 http://www.sj-ce.org/

(7)
(8)

AC DCG

DCG=BAC-+ABC-BCD

(9)

C
double jiaodujs1(double k)
{
double l,a,aa,b,bb,zj,m,t,tt,mm;
t=49*pi/180;
tt=131*pi/180;
l=pow((pow(92.2,2)+pow(k,2)-2.0*92.2*k*cos(t)),0.5);
a=92.2*sin(t)/l;
aa=asin(a)/pi*180;
mm=(75*cos(tt)+pow((pow((75*cos(tt)),2)-(pow(75,2)-pow(l,2))),0.5));
if (mm>abs1(l-75) & mm<(l+75))
m=mm;
else
m=(75*cos(tt)-pow((pow((75*cos(tt)),2)-(pow(75,2)-pow(l,2))),0.5));
b=m*sin(tt)/l;
bb=asin(b)/pi*180;
zj=49+aa-bb;
return(zj);
}

double jiaodujs2(double k) //
{
double l,a,t,tt,aa,m,b,bb,zj,mm;
t=pi*131/180;
tt=pi*49/180;
l=pow((pow(92.2,2)+pow(k,2)-2*92.2*k*cos(t)),0.5);
a=92.2*sin(t)/l;
aa=180*asin(a)/pi;
mm=(75*cos(tt)+pow(pow(75*cos(tt),2)-(pow(75,2)-pow(l,2)),0.5));
if (mm>abs1(k-75) & mm<(l+75))
m=mm;
else
m=75*cos(tt)-pow(pow(75*cos(tt),2)-(pow(75,2)-pow(l,2)),0.5);
b=m*sin(tt)/l;
bb=180-asin(b)*180/pi;
zj=131+aa-bb;
return(zj);
- 292 http://www.sj-ce.org/

}
abs1()
double abs1(double x)
{
return(x>0 x:-x);
}

K
K=| y|/( 1 + y2)

3/2

(10)

2.3.3

Pn
P1

P2

X
O
6

( 7)

f(
y

y
f(x1)

O
x1

f(x1) f(x2) f(x2)


2
x1 x 2
f(
)
2
x1 x 2
2

x1 x 2
)
2

f(x1) f(x2)
2

f (x1)

x2

f(x2)

x1 x1 x 2
2

x
x2

f(x) I I x1,x2 f(
f(

fx1 fx 2
x1 x 2
)

2
2
- 293 http://www.sj-ce.org/

x1 x 2
f(x1) f(x2)
)

2
2

2.3.2

REFERENCES
[1] R, IR. . : , 2006: 49-57
[2] , . AVR Atmega128 C . : , 2008: 1-5
[3] , . . , 2004, (6): 1-5
[4] , . . : , 2008:21-22
[5] Arkin, R.C., Behavior-Base Robotics. Cambridge MIT Press, MA, 1998:12-40
[6] Bundy, A. (editor), Artificial Intelligence Techniques, a Comprehensive Catalogue. New York, Spinger-Verlag, 1997:47-56
[7] Russell, S., Norvig, P., Artificial Intelligence, a Modern Approach. Prentice Hall International, 1995:1-10

#1

1987-

1991-

1986-

Email: lmt198@sohu.com

1969-

- 294 http://www.sj-ce.org/