robot tu hanh

37
  Robot t hành  Nguyn Vũ Quang - Đoàn Nam Thái 1 Li nói đầu  Robot t ự  hành (Mobile Robot) là mt thành phn có vai trò quan tr ng trong ngành  Robot hc. C ũng vớ i sự  phát triể n mnh mẽ  ca các h thố ng C ơ  - Đin t ử  , robot t ự  hành ngày mt đượ c hoàn thi n và càng cho thấ  y l ợ i ích ca nó trong công nghi  p và sinh hot.  M t vấ n đề  r ấ t đượ c quan tâm khi nghiên c ứ u về  robot t ự  hành là làm thế  nào để  robot có thể  di chuyể n t ớ i mt v trí xác định mà có thể  t ự  động tránh đượ c các chướ ng ng i vt trên đườ ng đ i. Tiể u lun này có mc đ ích đư a ra các phươ ng pháp để  gii quyế t vấ n đề  trên. Trong phn mt, chúng tôi xét 2 cách gi i bài toán tìm đườ ng cc b và toàn cc đố i vớ i mt robot có mô hình động hc cho tr ướ c, sau đ ó tiế n hành mô phng thử  nghim trên máy tính. Phn hai ca tiể u lun t  p trung vào giớ i thiu các cm biế n, các mch  phn cứ ng đ iề u khiể n mt robot t ự  hành c thể  đ ã cho ch y thử . Chúng em xin chân thành c m ơ n nhữ ng g ợ i ý, chỉ  d ẫ n r ấ t quan tr ng cho đề  tài này ca PGS.TS T  Duy Liêm. Th y cũng đ ã cũng cấ  p cho chúng em nhữ ng kiế n thứ c và tài liu Robotics cn thiế t trong hc k  ỳ vừ a qua. Chúng em hy v ng đ ây sẽ  là mt tiể u lun có ích cho nhữ ng ai yêu thích đề  tài này.  Hà N i, ngày 30/10/2005 Sinh viên:  Nguyễ n V ũ Quang  Đoàn Nam Thái

Upload: bui-ngoc

Post on 16-Jul-2015

248 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 1/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 1

Lời nói đầu Robot t ự hành (Mobile Robot) là một thành phần có vai trò quan tr ọng trong ngành

 Robot học. C ũng vớ i sự phát triể n mạnh mẽ của các hệ thố ng C ơ - Điện t ử  , robot t ự hành

ngày một đượ c hoàn thiện và càng cho thấ  y l ợ i ích của nó trong công nghiệ p và sinh hoạt.

 M ột vấ n đề r ấ t đượ c quan tâm khi nghiên cứ u về robot t ự hành là làm thế nào để robot có thể di chuyể n t ớ i một vị trí xác định mà có thể t ự  động tránh đượ c các chướ ng ng ại

vật trên đườ ng đ i. Tiể u luận này có mục đ ích đư a ra các phươ ng pháp để giải quyế t vấ nđề trên. Trong phần một, chúng tôi xét 2 cách giải bài toán tìm đườ ng cục bộ và toàn cụcđố i vớ i một robot có mô hình động học cho tr ướ c, sau đ ó tiế n hành mô phỏng thử nghiệm

trên máy tính. Phần hai của tiể u luận t ậ p trung vào giớ i thiệu các cảm biế n, các mạch

 phần cứ ng đ iề u khiể n một robot t ự hành cụ thể  đ ã cho chạ y thử .Chúng em xin chân thành cảm ơ n nhữ ng g ợ i ý, chỉ d ẫ n r ấ t quan tr ọng cho đề tài này

của PGS.TS T ạ Duy Liêm. Thầ y cũng đ ã cũng cấ  p cho chúng em nhữ ng kiế n thứ c và tài

liệu Robotics cần thiế t trong học k  ỳ vừ a qua. Chúng em hy vọng đ ây sẽ là một tiể u luận

có ích cho nhữ ng ai yêu thích đề tài này.

 Hà N ội, ngày 30/10/2005

Sinh viên: Nguyễ n V ũ Quang 

 Đoàn Nam Thái

Page 2: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 2/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 2

MỤC LỤC

PH ẦN 1 GIẢI BÀI TOÁN TÌM ĐƯỜ NG TRÁNH VẬT CẢN CHO ROBOT TỰ HÀNH ...3

I. Giớ i thiệu về robot tự hành......................................................................................... 4II. Mô hình động học robot tự hành............................................................................... 6III. Giải bài toán tìm đườ ng cho robot tự hành.............................................................. 7

1. Đặt vấn đề .............................................................................................................. 72. Bài toán tìm đườ ng cục bộ ..................................................................................... 83. Bài toán tìm đườ ng toàn cục ................................................................................ 13

PH ẦN 2 

CẤU TẠO PHẦN CỨ NG VÀ CÁC PHƯƠ NG PHÁP ĐIỀU KHIỂ N TRONGROBOT TỰ HÀNH ........................................................................................................ 19

I. Các loại cảm biến ..................................................................................................... 201. Sensor quang (Optical Sensor)............................................................................ 202. Đĩ a encoder ......................................................................................................... 203. Công tắc hành trình............................................................................................. 21

II. Mạch điều khiển Robot ........................................................................................... 211. Khối nguồn........................................................................................................... 212. Khối điều khiển.................................................................................................... 223. Khối sensor .......................................................................................................... 244. Khối hiển thị ........................................................................................................ 255. Khối công suất điều khiển động cơ ....................................................................... 27

III. Các phươ ng pháp điều khiển trong Robot tự hành ................................................ 28

1. Phươ ng pháp tạo encoder từ chuột máy tính ....................................................... 282. Phươ ng pháp quét đèn led 7 thanh....................................................................... 303. Phươ ng pháp tạo xung PWM để điều khiển tốc độ cho robot ............................. 33

IV. Xây dựng một bài toán cho Robot tự hành........................................................... 34V. Hạn chế Robot và phươ ng pháp khắc phục .......................................................... 36

Page 3: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 3/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 3

PH ẦN 1

GIẢI BÀI TOÁN TÌM ĐƯỜ NGTRÁNH VẬT CẢN CHO ROBOT

TỰ HÀNH

Giới thiệu về robot tự hành

Mô hình động học của robot tự hành

Giải bài toán tìm đường cho robot tự hành

 Đặt vấn đề  Bài toán tìm đường cục bộ (local navigation)

Bài toán tìm đường toàn cục (globalnavigation)

Page 4: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 4/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 4

I. Giới thiệu về robot tự hành

Robot tự hành hay robot di động (mobile robots, thườ ng đượ c gọi tắt là mobots) đượ c

định ngh ĩ a là một loại xe robot có khả năng t ự d ịch chuyể n, t ự vận động (có thể l ậ p trìnhl ại đượ c) d ướ i sự  đ iề n khiể n t ự  động để thự c hiện thành công công việc đượ c giao.Theo lý thuyết, môi tr ườ ng hoạt động của robot tự hành có thể là đất, nướ c, không khí,không gian vũ tr ụ hay sự tổ hợ  p giữa chúng. Địa hình bề mặt mà robot di chuyển trên đócó thể bằng phẳng hoặc thay đổi, lồi lõm.Theo bộ phận thực hiện chuyển động, ta có thể chia robot tự hành làm 2 lớ  p: chuyểnđộng bằng chân (legged) và bằng bánh (wheeled). Trong lớ  p đầu tiên, chuyển động cóđượ c nhờ các chân cơ khí bắt chướ c chuyển động của con ngườ i và động vật (hình 1.1g,h). Robot loại này có thể di chuyển r ất tốt trên các định hình lồi lõm, phức tạ p. Tuy nhiên,cách phối hợ  p các chân cũng như vấn đề giữ vững tư thế là công việc cực k ỳ khó khăn.Lớ  p còn lại (di chuyển bằng bánh) tỏ ra thực tế hơ n, chúng có thể làm việc tốt trên hầu

hết các địa hình do con ngườ i tạo ra. Điều khiển robot di chuyển bằng bánh cũng đơ ngiản hơ n nhiều, gần như luôn đảm bảo tính ổn định cho robot. Lớ  p này có thể chia làm 3loại robot: Loại chuyển động bằng bánh xe (phổ biến) (hình 1.1a, b, c, f, i), loại chuyểnđộng bằng vòng xích (khi cần mô men phát động lớ n hay khi cần di chuyển trên vùngđầm lầy, cát và băng tuyết) (hình 1.1d, e), và loại hỗn hợ  p bánh xe và xích (ít gặ p).

Tiềm năng ứng dụng của robot tự hành hết sức r ộng lớ n. Có thể k ể đến robot vậnchuyển vật liệu, hàng hóa trong các tòa nhà, nhà máy, cửa hàng, sân bay và thư viện;robot phục vụ quét dọn đườ ng phố, khoang chân không; robot kiểm tra trong môi tr ườ ngnguy hiểm; robot canh gác, do thám; robot khám phá không gian, di chuyển trên hànhtinh; robot hàn, sơ n trong nhà máy; robot xe lăn phục vụ ngườ i khuyết tật; robot phục vụ sinh hoạt gia đình v.v...

Mặc dù nhu cầu ứng dụng cao, nhưng những hạn chế chưa giải quyết đượ c của robot tự hành, như chi phí chế tạo cao, đã không cho phép chúng đượ c sử dụng r ộng rãi. Mộtnhượ c điểm khác của robot tự hành phải k ể đến là còn thiếu tính linh hoạt và thích ứngkhi làm việc ở những vị trí khác nhau. Bài toán tìm đườ ng (navigation problem) của robottự hành cũng không phải là loại bài toán đơ n giản như nhiều ngườ i ngh ĩ lúc ban đầu.Trong tiểu luận này, bài toán tìm đườ ng sẽ đượ c giải quyết ở mức độ không quá phức tạ p.

Page 5: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 5/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 5

 

a)  b)  c) 

d)  e) 

f)  g) 

h)  i) 

Hình 1.1. Một số hình ảnh về robot tự hànha) Robot Nomad 150. b) Sự k ết hợ  p giữa robot tự hành Nomadic XR4000 và cánh tayrobot PUMA 560. c) Robot “con rùa”. d) Robot Houdini di chuyển bằng bánh xíche) Robot bán tự động nghiên cứu ở vùng cực bắc. f) Robot SRR và FIDO của NASAg) Robot tự hành bằng chân Spiderbot di chuyển trên sao Hỏa. h)Robot sáu chân Genghisi) Robot Meet Timbot dùng test các phần mềm hệ thống nhúng trong phòng thí nghiệm

Page 6: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 6/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 6

II. Mô hình động học robot tự hành

Mô hình k ết cấu

Hình 1.2. Mô hình k ết cấu của robot

K ết cấu robot lựa chọn gồm 4 bánh trong đó có 2 bánh chủ động (phía sau) và 2 bánhtùy động có khả năng quay tuỳ ý. Vớ i k ết cấu cơ khí này robot có khả năng di chuyển r ấtlinh hoạt: tiến, lùi và quay một góc bất k ỳ.

Động học của robot

Gọi 1 s∆ , 2 s∆ làđoạn dịch chuyểncủa 2 bánh chủ động. Ta có

r  s

r  s

.

.

22

11

ϕ 

ϕ 

∆=∆

∆=∆ 

vớ i 1ϕ ∆ , 2ϕ ∆ , r  lần lượ t là lượ ngdịch chuyển quayvà bán kính của 2 bánh chủ động.

Hình 1.3. Động học của robot

T là khoảng cách giữa 2 bánh. R D , ∆Ψ là bán kính quay và góc dịch chuyển của robottrong mặt phẳng nằm ngang. Khi đó:

)(2 12

12

 s s

 s sT  R D

∆−∆

∆+∆= ,

 s s 12 ∆−∆=∆Ψ  

Trong tiểu luận này, ta chỉ xét 2 tr ườ ng hợ  p đặc biệt của chuyển động:Khi 12  s s ∆=∆ : ∞= D R , 0=∆Ψ , robot đi theo quỹ đạo là đườ ng thẳng (tiến hoặc lùi)

Khi 12  s s ∆−=∆ : 0= D R , T  s /2 2∆=∆Ψ , robot quay quanh điểm giữa 2 bánh xe D.

Page 7: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 7/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 7

  x∆ ,  y∆ : lượ ng dịch chuyển theo 2 phươ ng của hệ tọa độ gắn vớ i robot:

)sin(∆Ψ=∆

 D R x , ))cos(1(∆Ψ−=∆

 D R y  

 X ∆ , Y ∆ : lượ ng dịch chuyển của robot theo 2 phươ ng gắn vớ i hệ tọa độ gốc:

Vị trí của robot đượ c xác định bở i tọa độ gốc của D ( X  D và Y  D) + góc định hướ ng  DΨ , tọađộ tại thờ i điểm thứ (i) đượ c xác định như sau:

⎥⎥⎥

⎢⎢⎢

∆Ψ

+

⎥⎥⎥

⎢⎢⎢

⎡Ψ

=

⎥⎥⎥

⎢⎢⎢

⎡Ψ

)(

)(

)(

)1(

)1(

)1(

)(

)(

)(

i D

i D

i D

i D

i D

i D

i D

i D

i D

 X 

 X 

 X   

III. Giải bài toán tìm đường cho robot tự hành

1. Đặt vấn đề Dò đườ ng (navigation) là một khoa học (hay nghệ thuật) dẫn hướ ng robot tự hành di

chuyển trong không gian làm việc của nó (đất, nướ c, không khí...). Trong vấn đề dòđườ ng, bài toán đượ c quan tâm nhiều nhất có lẽ là tìm đườ ng về đích mà không chạm vậtcản trên đườ ng đi. Có hai loại bài toán tìm đườ ng cho robot: bài toán cục bộ (local) và bàitoán toàn cục (global). Trong bài toán toàn cục, bản đồ môi tr ườ ng làm việc của robot

hoàn toàn đượ c biết tr ướ c, vấn đề chính phải giải quyết là tìm đượ c đườ ng đi cho robottr ướ c khi nó xuất phát. Ở bài toán cục bộ, môi tr ườ ng làm việc của robot hoàn toàn khôngđượ c biết tr ướ c hoặc chỉ biết đượ c một phần, robot hoàn toàn phải nhờ vào sự cảm nhậnmôi tr ườ ng thông qua cảm biến gắn trên nó để dò đườ ng.Bài toán toàn cục tỏ rõ lợ i thế là ta đã biết tr ướ c có đườ ng đi (tối ưu) tớ i đích hay khôngtr ướ c khi cho robot khở i hành. Tuy vậy nó có hạn chế là đòi hỏi nhiều lệnh tính toán và bộ nhớ , và đặc biệt tình huống xấu có thể xảy ra nếu bản đồ môi tr ườ ng làm việc khôngđượ c khai báo chính xác, yêu cầu biết tr ướ c hoàn toàn môi tr ườ ng hoạt động cũng là mộtnhượ c điểm của nó. Trong khi đó, robot tìm đườ ng cục bộ chỉ biết đượ c thông tin xungquanh qua sensor cảm nhận môi tr ườ ng gắn cùng. Vì thế, robot tìm đườ ng cục bộ có thể không hoàn thành việc tớ i đích (mặc dù thực tế có đườ ng đi tớ i đích), khái niệm tối ưu

không có ý ngh ĩ a trong bài toán này. Tuy nhiên, yêu cầu tính toán, dung lượ ng nhớ thấ pcùng tính linh hoạt cao (như tránh đượ c vật cản ngay cả khi vật đó di động) khiến tìmđườ ng cục bộ tr ở thành một công cụ mạnh của robot tự hành. Hiện nay, cách tiế p cận k ếthợ  p giữa cục bộ và toàn cục đang ở ngày càng phổ biến, giúp robot tự hành tăng tính linhhoạt và hiệu quả.Trong tiểu luận, chúng tôi tậ p trung vào giải quyết cả hai bài toán nhưng ở mức độ đơ n

giản. Môi tr ườ ng hoạt động của robot là một mặt phẳng, đượ c giớ i hạn bở i các bức tườ ng.Các vật cản đượ c xem là vật cản hai chiều, t ĩ nh hoàn toàn. Trong bài toán cục bộ, robotđượ c trang bị 3 sensor xác định khoảng cách vật cản, đã biết tr ướ c vị trí đích (đích có thể  phát sóng để robot hướ ng theo). Trong bài toán toàn cục, từ đầu vào là vị trí xuất phát, vị trí đích, kích thướ c robot, bản đồ hoạt động, ta tìm ra đườ ng đi để robot tự hành. Mục

⎥⎦

⎤⎢⎣

∆Ψ

∆Ψ⎥⎦

⎤⎢⎣

∆∆

∆−∆=⎥

⎤⎢⎣

)sin(

)cos(

 x y

 y x

 X 

Page 8: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 8/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 8

đích cuối cùng là robot tự về đượ c tớ i đích không chạm vật cản mà không cần bất cứ sự tr ợ giúp nào từ bên ngoài.

2. Bài toán tìm đườ ng cục bộ Giải quyết hoàn toàn bài toán này khó khăn hơ n nhiều so vớ i giải quyết bài toàn toàn

cục. Một cách tìm đườ ng cục bộ khá hoàn hảo là phươ ng pháp bản đồ nơ ron cực (Polar  Neurol Map) của Michail G. Lagoudakis (1998) dùng 16-32 cảm biến gắn trên con robot Normad (hình 1.1a, b) tạo tr ườ ng cảm biến bao phủ vùng xung quanh robot, thuật toán sử dụng là thuật toán ánh xạ nơ ron tươ ng đối phức tạ p. Do giớ i hạn của tiểu luận, phươ ng pháp này không đượ c đề cậ p đến. Phươ ng pháp đượ c đề cậ p đến ở  đây sử dụng 3 cảm biến dò đườ ng xác định khoảng cáchtừ trung điểm hai bánh xe tớ i vật cản. Tùy vào khoảng cách tớ i vật cản ứng vớ i từng cảm

 biến, ta xác định đượ c phươ ng hướ ng di chuyển robot phù hợ  p.Ý tưở ng của phươ ng pháp xuất phát từ một bài báo Cơ  điện tử 

[1]. Tuy nhiên luật dẫn hướ ng robot trong bài báo còn kháđơ n giản, điều kiện yêu cầu hơ i thô (như khoảng cách các vậtcản phải lớ n hơ n kích thướ c robot), k ết quả mô phỏng chothấy thuật toán của bài báo tỏ ra nhiều bất cậ p: robot nhiều lúcchạm vật cản, lặ p đi lặ p lại một đoạn đườ ng và khó thoát rađượ c. Dựa theo nguyên lý của thuật toán đó, chúng tôi đã cónhững thay đổi và bổ sung để đem lại k ết quả tìm đườ ng hiệuquả hơ n.

Hình 1.4. Ba cảm biến của robot

Các cảm biến đượ c đặt lệch một góc α  (trong phần mô phỏng, chọn °= 25α  ). Khoảng

cách lớ n nhất (tính từ D) mà các cảm biến có thể nhận diện đượ c vật cản là dmax; dmaxvà α  phải đảm bảo sao cho cảm biến có vùng kiểm tra đủ r ộng để khi tiến thẳng, robot cóthể nhận diện đượ c vật cản.

Y

 

 

Đích )(t ϕ   X

Hình 1.5. Không gian làm việc của robot trong mặt phẳng 2 chiềuGọi:

Page 9: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 9/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 9

)(t θ  : góc chỉ hướ ng của robot ở thờ i điểm t.)(t ϕ  : góc hướ ng về đích tính từ tâm robot (điểm D).

)(t aθ  : góc dẫn hướ ng cho robot tránh vật cản.)(t ∗θ  : góc dẫn hướ ng điều khiển chuyển động cho robot.

Khi sensor không phát hiện vật cản thì )()( t t  ϕ θ  =∗ , ngượ c lại thì )()( t t  aθ θ  =∗ .

Cách ứ ng xử của robot khi sensor phát hiện vật cản:Có 7 tình huống khác nhau khi sensor phát hiện vật cản, mỗi tình huống cần có cách ứngxử riêng.

Hình 1.6. Các tình huống phát hiện vật cản

  Tình huống 1 (TH1): cả 3 cảm biến đều phát hiện vật cản (Hình 1.6a)

+ Nếu dl>dr thì robot quay sang trái: ),( Ox BAa =θ   

+ Nếu dl<=dr thì robot quay sang phải: ),( Ox BC a =θ   

  TH2: Chỉ có cảm biến bên trái không phát hiện vật cản (Hình 1.6b)

Robot quay sang trái: ),( OxCBa =θ   

  TH3: Chỉ có cảm biến bên phải không phát hiện vật cản (Hình 1.6c)

Robot quay sang phải: ),( Ox ABa =θ   

Page 10: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 10/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 10

  TH4: Chỉ có cảm biến ở giữa không phát hiện vật cản (Hình 1.6d)Robot quay sang phải một góc °90 (gán aθ  = °− 90aθ  , sau đó hiệu chỉnh

)360,0[ °∈aθ  )

  TH5: Chỉ có cảm biến bên trái phát hiện vật cản (Hình 1.6e)Robot quay sang phải một góc °25 (gán aθ  = °− 25aθ  , sau đó hiệu chỉnh

)360,0[ °∈aθ  )

  TH6: Chỉ có cảm biến bên phải phát hiện vật cảnRobot quay sang trái một góc °25 (gán aθ  = °+ 25aθ  , sau đó hiệu chỉnh

)360,0[ °∈aθ  )

  TH7: Chỉ có cảm biến ở giữa phát hiện vật cản (Hình 1.6f)Robot quay sang trái một góc °90 (gán aθ  = °− 90aθ  , sau đó hiệu chỉnh

)360,0[ °∈aθ  )

Khi robot đ ang quay hướ ng về đích, nếu phát hiện vật cản nó sẽ tiến hành chuyển hướ ngquay luôn. Để đảm bảo điều này, trong quá trính quay hướ ng về đích, mỗi lần robot quaymột góc đơ n vị (đv) nhỏ, ta phải cậ p nhật cảm biến.

Sau khi robot chuyển hướ ng r ồi tiến thẳng một đoạn, vẫn có khả năng robot chạm vật cản(nhất là ở những ngõ cụt), vì vậy khi robot quá gần vật ta tiến hành lùi lại 1 đoạn, quaymột góc °45 sang phải (gán aθ  = °− 45aθ  , hiệu chỉnh )360,0[ °∈aθ  ), sau đó

cậ p nhật cảm biến.

Hình 1.7. Khi khoảng cách nhỏ hơ n hoặc bằng DI, DJ,DK tứ c là robot quá gần vật

Page 11: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 11/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 11

 

đ S

đ

đ

S

đ

Về tớ iđích?

Quay một góc đvhướ ng tớ i đích

Có vậtcản?

Đã hướ ngtớ i đích?

Bẻ lái chuyển hướ ngrobot Có vật

cản?

Tiến thẳng một đoạnđv

Quá gầnv t cản?

Đãtiến đủ 

Lùi một đoạn Quay một góc °45  sang phải 

Dừ ng robotđ

SS

đ

S

S

Hình 1.8. Sơ  đồ quá trình tìm đườ ng của robot dùng 3 cảm biến

Page 12: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 12/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 12

K ết quả mô phỏng cho thấy >90% các tr ườ ng hợ  p robot có thể về đến đích mà khôngchạm vật cản.

Hình 1.9. Một quá trình tránh vật cản của robot (mô phỏng)

Hỏi: Robot 3 cảm biến có khả năng chạm vật cản không? Trả lờ i: Robot 3 cảm biến vẫn có khả năng chạm vật cản. Tuy nhiên khả năngđó ít xảy ra do robot có thêm thủ tục lùi lại khi cảm biến phát hiện vật cản quágần robot. Muốn robot hoàn toàn không chạm vật , ta cần có một hệ cảm biến bao phủ toàn bộ một vùng xung quanh robot cùng một thuật toán phức tạ p hơ n.

Hỏi: Robot có thể về tớ i đích không? 

Trả lờ i: Không phải lúc nào robot cũng về đượ c tớ i đích, dù trên lý thuyết cóđườ ng đi tớ i đích, đó là một nhượ c điểm của các thuật toán đơ n giản khi giải bàitoán cục bộ.

Hỏi: Ư u, nhượ c điểm của phươ ng pháp này là gì? 

Trả lờ i: Ư u điểm chính của phươ ng pháp là robot chỉ phải sử dụng 3 cảm biếnđo khoảng cách cùng một thuật toán đơ n giản, mà hiệu quả quá trình tìm đườ ngcủa robot khá cao. Nhượ c điểm chính là robot không thể xác định đầy đủ biên của vật cản do chỉ có3 cảm biến, vì vậy dẫn đến chuyện robot vẫn có thể chạm vật hoặc không về tớ iđượ c đích. 

Page 13: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 13/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 13

3. Bài toán tìm đườ ng toàn cục

Khác vớ i tìm đườ ng cục bộ, tìm đườ ng toàn cục giải quyết đườ ng đi cho robot khi ta biết tr ướ c bản đồ của môi tr ườ ng hoạt động, tức ngoài điểm khở i đầu và điểm đích ta còn biết đượ c vị trí và hình dạng của các vật cản. Tìm đườ ng toàn cục tối ưu (quãng đườ ngngắn nhất) đem lại những k ết quả thú vị như ở hình dướ i.

Hình 1.10. Đườ ng đi ngắn nhất trong mê

cung xoắn

Có nhiều cách mô hình hóa môi tr ườ ng làm việc của robot, ta xét một mô hình hay đượ c

sử dụng là mô hình bản đồ không gian k ết hợ  p (composite-space maps).Trong bản đồ không gian k ết hợ  p, môi tr ườ ng làm việc của robot (2D) đượ c chia làm cáchình vuông nhỏ bằng cách k ẻ lướ i (grid). Thông tin đượ c lưu tr ữ ứng vớ i mỗi ô là vật cảncó nằm trên ô hay không, thông tin này đượ c cho bở i một mảng 2 chiều mà mỗi chiềutheo phươ ng x hay phươ ng y xác định vị trí mỗi ô vuông trên bản đồ. Để tăng hiệu quả của bài toán, mô hình cần phải gần sát thực tế, tức ta phải thu nhỏ kích thướ c của ô vuônglướ i để nó đánh giá chính xác vị trí vật cản ở mức độ cho phép.Biên của robot là đườ ng tròn bảo vệ robot, tâm đườ ng tròn là trung điểm của 2 bánh chủ động. Tâm đườ ng tròn, bán kính đườ ng tròn đượ c coi là tâm và bán kính robot.Yêu cầuđườ ng tròn này không đượ c giao vớ i vùng vật cản. Khác bài toán cục bộ (khi mà takhông có thông tin nào tr ướ c về vật cản), vật cản ở  đây đã đượ c xác định, tức là có thể xử 

lý thông tin vật cản tr ướ c khi cho robot chạy. Nhằm đơ n giản hóa bài toán, các vật cảnđượ c kéo giãn (expanded) theo mọi phía một lượ ng bằng đúng bán kính của robot, đồngthờ i robot đượ c rút lại còn đúng một điểm, điểm này chính là tâm robot. Như vậy thay vìtìm đườ ng cho robot tránh vật cản ta chỉ cần tìm đườ ng cho điểm tâm robot tránh các vậtcản đã đượ c kéo giãn. Vật cản đượ c kéo giãn sẽ đượ c mô hình hóa bằng các ô lướ i như đã nói ở trên.

Page 14: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 14/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 14

 

Hình 1.11. Vật cản bên trong đượ c “giãn ra” một khoảng bằng bán kính robot, cácô lướ i màu trắng là các ô lướ i không chứ a vật cản (đã đượ c kéo giãn)

Mỗi ô lướ i có 8 ô liền k ề. Chuyển động của điểm tâm robot đượ c thực hiện giữa các ôlướ i. Điểm tâm robot đượ c xác định là ở tâm ô vuông lướ i. Điểm tâm có thể chuyển độngtheo 8 hướ ng để đến đượ c tâm của các ô liền k ề.

 

Hình 1.12. Chuyển động của tâm robot giữ a các ô lướ i

 Nhiệm vụ dẫn đườ ng cho robot do bộ xác định đườ ng đ i (path planner) đảm nhiệm. Côngviệc của bộ xác định bao gồm:+ Sử dụng một thuật toán nhằm mã hóa một cấu trúc dữ liệu tươ ng ứng vớ i các ô lướ ivuông (thườ ng dướ i dạng mảng 2 chiều).+ Từ k ết quả mã hóa, thực hiện thuật toán lậ p đườ ng đi cho robot.

Ta sử dụng một thuật toán mã hóa r ất hiệu quả dựa trên phươ ng pháp biế n đổ i khoảng cách (distance transform method) của Kang và Jarvis (1986). Mục đích của thuật toán làtạo ra 1 mảng 2 chiều lưu giữ giá tr ị quãng đườ ng ng ắ n nhấ t để t ớ i đ ích của mỗi ô lướ i.Bằng cách này, ta sẽ giải đượ c bài toán yêu cầu quãng đườ ng di chuyển từ điểm xuất phất

đến điểm đích là ngắn nhất. Trong phươ ng pháp của Kang và Jarvis, bộ xác định khở iđầu ở ô đích và lan truyề n (propagate) các khoảng cách (hay quãng đườ ng) qua khônggian tr ống. Một cách hình tượ ng giống như khi ta ném một hòn đá xuống ao, sóng nướ clan ra, chúng bị triệt tiêu khi gặ p vật cản, chỗ nào sóng nướ c loang càng thưa thì quãngđườ ng tớ i đích (vị trí ném) càng lớ n (hình 1.13).

Page 15: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 15/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 15

 Hình 1.13. Hiện tượ ng lan truyền sóng nướ c 

Quãng đườ ng đi đượ c của sóng tươ ng đươ ng vớ i độ thưa của sóng

Thuật toán sử dụng một mảng hai chiều đại diện cho mỗi ô lướ i, giá tr ị của mảng làkhoảng cách ngắn nhất mà ô lướ i đó đến ô đích.Ta khở i đầu cho mảng các giá tr ị khoảng cách tươ ng đối lớ n ứng vớ i mỗi ô lướ i, cụ thể  bằng maxmax . y x trong đó max x là số ô lướ i trong một hàng, max y là số ô lướ i trong một cột,

ngoại tr ừ ô đích đượ c đặt bằng 0 (vì 0 là khoảng cách từ ô đích đến chính nó). Thuật toánsẽ kiểm tra sự tồn tại của vật cản, và không tính toán cho các phần tử mảng ứng vớ i ôlướ i có vật cản. Vì vậy thuật toán lậ p đườ ng đi sau này không cần phải kiểm tra ô vuônglướ i có vật cản hay không, vật cản đượ c đặt giá tr ị khoảng cách lớ n nên đườ ng đi tự nhiênsẽ không qua chúng.

Thuật toán lan truyền

1. Bản đồ môi tr ườ ng đượ c k ẻ lướ i thành một ma tr ận 1.. max x ,1.. max y  

2. Cấ p phát một mảng 2 chiều 0... max x +1, 0.. max y +1 để lưu giữ các giá tr ị khoảng cách.

Các hàng và cột ngoài cùng tạo thành một đườ ng chữ nhật bao (gọi là hình chữ nhật canhgiữ) nhằm đơ n giản tính toán không phải xét các tr ườ ng hợ  p đặc biệt khi ô lướ i ở biênkhông có đủ 8 ô k ề.3. Khở i tạo cho mảng khoảng cách bằng cách đặt ô đích =0 và tất cả các ô khác một giátr ị khá lớ n= ( maxmax . y x )

4. Tính toán khoảng cách bằng phép lặ p repeat , thực hiện quét thuận và quét ngượ c quamảng.Repeat { quét thuận}// quét thuận từ trên xuống dướ i

For các hàng của bản đồ (1.. max y ) do

For các cột của bản đồ (1.. max x ) do

If ô lướ i không có vật cản Then{Bắt đầu tính toán khoảng cách}

For mỗi ô trong 8 ô liền k ề ô đang xétTính khoảng cách=giá tr ị khoảng cách mỗi ô k ề + khoảng cách ô k ề tớ i ôđang xét.

Page 16: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 16/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 16

If  khoảng cách này < giá tr ị khoảng cách hiện tại của ô đang xét ThenGán giá tr ị khoảng cách của ô đang xét bằng khoảng cách mớ i

// quét thuận từ dướ i lên trênFor các hàng của bản đồ ( max y ..1) do

For các cột của bản đồ (1.. max x ) do

{Làm tươ ng tự trên}{Quét ngượ c}// quét ngượ c từ dướ i lên trên

For các hàng của bản đồ ( max y ..1) do

For các cột của bản đồ ( max x ..1) do

{Làm tươ ng tự trên}// quét ngượ c từ trên xuống dướ i

For các hàng của bản đồ (1.. max y ) doFor các cột của bản đồ ( max x ..1) do

{Làm tươ ng tự trên}Until Mảng khoảng cách hội tụ 

Sử dụng phươ ng pháp quét thuận và ngượ c (hình 1.15) giúp giá tr ị khoảng cách của các ôlướ i đạt nhỏ nhất, mỗi lẫn quét (duyệt) một ô, giá tr ị của khoảng cách hiện tại của ô đóđượ c so sánh vớ i tổng giá tr ị khoảng cách mỗi ô liền k ề + khoảng cách ô liền k ề tớ i nó(khoảng cách giữa 2 ô nằm ngang hoặc dọc so vớ i nhau là 1, giữa 2 ô chéo nhau là

2 (hình 1.14)). Giá tr ị khoảng cách nào nhỏ nhất sẽ đượ c gán lại cho ô đang xét. Quátrình quét sẽ hoàn tất (hội tụ) khi mảng không thay đổi giá tr ị khoảng cách nữa.

2+ 1+   2+ 

+1 +1

2+ 

+1 2+ 

Hình 1.14. Khoảng cách của mỗi ô k ề đối vớ i ô đang xét (ô đen)

Hình 1.15. Quét thuận (3,1) và quét ngượ c (4,2)

Page 17: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 17/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 17

55 55 55 55 55 55 55 55 55 55 5555

 

55 55 55 55 55 55 55 55 0 5555 55 55 55 55 55 55 55 55 55 5555 55 55 55 55 55 55 55 55 55 5555 55 55 55 55 55 55 55 55 55 55

a) Khở i tạo

55 55 55 55 55 55 55 55 1.4 1 1.455 55 55 55 55 55 55 55 1 0 155 55 55 55 55 55 55 2.4 1.4 1 1.455 55 55 55 55 55 3.8 2.8 2.4 2 2.455 55 55 55 55 5.2 4.2 3.8 3.4 3 3.4

 b) Quét thuận 1

55 55 55 8 6.2 5.2 3.4 2.4 1.4 1 1.455 55 55 55 6.6 4.8 3.8 2 1 0 155 55 9 55 6.2 5.2 3.4 2.4 1.4 1 1.455 55 55 7.6 6.6 4.8 3.8 2.8 2.4 2 2.455 55 55 55 6.2 5.2 4.2 3.8 3.4 3 3.4

c) Quét thuận 2

9.4 8.4 7.4 6.4 5.4 4.4 3.4 2.4 1.4 1 1.410.6 55 55 55 5 4 3 2 1 0 1

10.2 9.2 8.2 55 5.4 4.4 3.4 2.4 1.4 1 1.49.8 8.8 7.8 6.8 5.8 4.8 3.8 2.8 2.4 2 2.410.2 9.2 8.2 7.2 6.2 5.2 4.2 3.8 3.4 3 3.4

d)Quét ngượ c 1

9.4 8.4 7.4 6.4 5.4 4.4 3.4 2.4 1.4 1 1.49.8 55 55 55 5 4 3 2 1 0 110.2 9.2 8.2 55 5.4 4.4 3.4 2.4 1.4 1 1.49.8 8.8 7.8 6.8 5.8 4.8 3.8 2.8 2.4 2 2.410.2 9.2 8.2 7.2 6.2 5.2 4.2 3.8 3.4 3 3.4

e) Quét ngượ c 2 (đã hội tụ)

9.4 8.4 7.4 6.4 5.4 4.4 3.4 2.4 1.4 1 1.49.8 55 55 55 5 4 3 2 1 0 1

10.2 9.2 8.2 55 5.4 4.4 3.4 2.4 1.4 1 1.49.8 8.8 7.8 6.8 5.8 4.8 3.8 2.8 2.4 2 2.410.2 9.2 8.2 7.2 6.2 5.2 4.2 3.8 3.4 3 3.4

f) Đườ ng điHình 1.16. Thuật toán lan truyền khoảng cách cho bản đồ 5×11

Page 18: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 18/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 18

Hình 1.16 mô tả một ví dụ tìm đườ ng đi cho một bản đô 5×11. Các ô gạch đen là các ô cóvật cản. Chỉ sau một lần lặ p repeat, các giá tr ị khoảng cách đã hội tụ. Sau khi tạo giá tr ị khoảng cách cho mỗi ô, đườ ng đi đượ c xác định bằng thuật toán đơ n giản sau.

Thuật toán lập đường điBắt đầu ở ô xuất phátXét các ô liền k ề xem ô nào có giá tr ị khoảng cách < giá tr ị khoảng cách của ô xuất pháthay không.

If không có Then k ết thúc, không tìm đượ c đườ ng điElse {Có đườ ng đi}

Đưa ô xuất phát vào đườ ng điRepeat

Xét các ô liền k ề để tìm ô có giá tr ị khoảng cách thấ p nhấtChuyển tớ i ô liền k ề Đưa ô đó vào đườ ng đi

Until tớ i ô đíchEnd

Hình 1.16f) cho thấy một đườ ng đi từ ô tọa độ (1, 3) để tớ i đích có tọa độ (10,2).

Dướ i đây là hình ảnh mô phỏng robot tìm đườ ng toàn cục.

Hình 1.17. Mô phỏng robot tìm đườ ng toàn cục

Hỏi: Phươ ng pháp lan truyền khoảng cách luôn tìm đượ c đườ ng ngắn nhất? 

Trả lờ i: Phươ ng pháp trên là phươ ng pháp tìm đườ ng ngắn nhất, tuy vậy hiệuquả của phươ ng pháp chỉ tốt khi các ô lướ i có kích thướ c đủ nhỏ để xác địnhđúng biên của vật cản. Nếu kích thướ c ô lướ i quá lớ n, phươ ng pháp trên sẽ không còn ý ngh ĩ a tối ưu. 

Hỏi: Ư u điểm và nhượ c điểm của phươ ng pháp này? 

Trả lờ i: Ư u điểm là thuật toán lan truyền đơ n giản và hội tụ nhanh, tạo ra đườ ngđi ngắn nhất cho robot tớ i đích mà không chạm vật cản. Nhượ c điểm của phươ ng pháp là đườ ng đi tạo ra gãy khúc, không tr ơ n. Vì vậycần áp dụng 1 thuật toán khác để làm tr ơ n đườ ng đi. 

Page 19: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 19/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 19

PH ẦN 2

CẤ U TẠO PH ẦN CỨ NG VÀ CÁCPHƯƠ NG PHÁP ĐI ỀU KHIỂ N

TRONG ROBOT TỰ HÀNH

Một số sensor thường dùng trong robot tự hànhMạch điều khiển robot

Khối nguồn Khối điều khiển Khối sensor  Khối công suất

Khối hiển thị Phương pháp điều khiển Robot

Phương pháp làm encoder từ chuột máytính

Phương pháp quét đèn Led 7 thanh Phương pháp PWM điều khiển tốc độ cho

Robot

Xây dựng một bài toán đơn giản cho RobotHạn chế của Robot và biện pháp khắc phục

Page 20: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 20/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 20

I. Các loại cảm biến

1. Sensor quang (Optical Sensor)

Hình 2.1. Sensor quang

•   Nguyên tắc hoạt động:Gồm 2 đèn: một đèn thu (dectector) và một đèn phát (emitting diode). Khi ánh sáng đèn

 phát chiếu vào vật cản thì ánh sáng phản xạ sẽ đượ c nhận biết ở  đèn thu.•  Ứ ng dụng:

 Nhận biết vật cản trong robot tự hành

2.  Đĩ a encoder

Hình 2.2. Đĩ a Encoder

•   Nguyên tắc hoạt động Gồm bộ phát, bộ thu và đĩ a tròn (bị xẻ rãnh hoặc đượ c mã hoá), nguyên lýhoạt động gần giống tr ườ ng hợ  p trên.

Page 21: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 21/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 21

•  Ứ ng dụngĐo chuyển động quay

3. Công tắc hành trình

Hình 2.3. Công tắc hành trình

•   Nguyên tắc hoạt độngCấu tạo là 1 cặ p tiế p điểm, bình thườ ng hai tiế p điểm không nối vớ i nhau, khi bị ấn chúng chạm vào nhau.•  Ứ ng dụngTránh cho robot va đậ p vào những vật cứng

II. Mạch điều khiển Robot

1. Khối nguồn

   Nguồn động lực lấy từ ắc qui 12V, 5A

   Nguồn điều khiển lấy từ ắc qui qua IC ổn áp 7805Sơ  đồ nguồn cung cấ p cho khối điều khiển:

U20LM7805

1

     2

3VI

     G     N     D

VO

D22

LED

C5CAP

C4CAP

NGUON DIEU KHIEN

C9CAP NP

C8CAP NP

R2

R

NGUO

 

N AC QUI

 Hình 2.4. Mạch nguồn

Page 22: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 22/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 22

2. Khối điều khiểnVi điều khiển họ 8051- AT89C51

  Sơ  đồ chân linh kiện

Hình 2.5. Vi điều khiển AT89C51

Vi điều khiển 89C51 có 4 port có thể làm nhiệm vụ vào và ra. Các port 1,2,3 có điện tr ở  trong kéo lên nên khi dùng làm đầu vào và đâu ra không cần điện tr ở kéo lên, riêng port 0 phải dùng điện tr ở ngoài kéo lên. Do đó port 0 thườ ng dùng làm đầu vào các công tắchành trình, các cảm biến.

  Thông số của vi điều khiển 8051

 

Đặc tính Số lượ ng

ROM 4K 

RAM 128 byte

Bộ định thờ i 2

Chân vào/ra 32

Cổng nối tiế p 1

 Nguồn ngắt 6

  Bộ định thờ i8051 có hai bộ định thờ i là timer 0 và timer 1. Cả hai bộ định thờ i đều có độ dài là 16 bit. 8051 có cấu trúc 8 bit nên mỗi bộ định thờ i đượ c truy nhậ p dướ i dạng hai thanhghi độc lậ p là byte thấ p và byte cao.Timer 0: TH0 (byte cao) và TL0 (byte thấ p)Timer 1: TH1 (byte cao) và TL1 (byte thấ p)Hai bộ định thờ i có 4 chế độ hoạt động

Page 23: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 23/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 23

  Chế độ định thờ i 13 bit: Bộ định thờ i 8 bit, định tỉ lệ tr ướ c 5 bit.  Chế độ định thờ i 16 bit, không định tỉ lệ tr ướ c.  Chế độ tự nạ p lại 8 bit. THx lưu giữ giá tr ị sẽ tự nạ p vào TLx khi có tràn.  Chế độ định thờ i chia tách.

Trong giớ i hạn bài toán robot tự hành ta chỉ tậ p trung phân tích chế độ 2 của bộ địnhthờ i (chế độ nạ p lại 8 bit).Chế độ nạ p lại 8 bit:  Đó là bộ định thờ i 8 bit nên chỉ cho phép các giá tr ị từ 00 đến FFH đượ c nạ p

vào thanh ghi TH của bộ định thờ i.  Sau khi TH đượ c nạ p giá tr ị 8 bit thì 8051 sao nội dung đó vào TL và bộ đinh

thờ i đượ c khở i động.  Bộ định thờ i sau khi đượ c khở i động thì bắt đầu đếm tăng bằng cách tăng

thanh ghi TL. Bộ định thờ i đếm cho đến khi đạt giá tr ị tớ i hạn là FFH. Khiquay vòng từ FFH về 00 thì cờ bộ định thờ i TF đượ c thiết lậ p.

  Khi thanh ghi TL quay từ FFH về 00, cờ TF đượ c bật 1lên thì thanh ghi TL tự động nạ p lại giá tr ị ban đầu đượ c giữ trong thanh ghi TH.

  Cờ TF đượ c tự xoá và bộ định thờ i lại bắt đầu một chu trình mớ i mà khôngcần bất kì một sự can thiệ p nào của lậ p trình viên.

Minh hoạ cho chế độ tự nạ p lại 8 bit:

Hình 8.6. Chế độ nạp lại 8 bits

Page 24: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 24/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 24

Sơ  đồ mạch điều khiển

P1_4

0VVDK

P3_6

5V

P2_1

P1_3

P3_3

P0_3

C9

TXD

U5

 AT89C51

9

1819

     2     0

2930

31

     4     0

12345678

2122232425262728

1011121314151617

3938373635343332

RST

XTAL2XTAL1

     G     N     D

PSEN ALE/PROG

EA/VPP

     V     C     C

P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7

P2.0/A8P2.1/A9

P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15

P3.0/RXDP3.1/TXD

P3.2/INT0P3.3/INT1

P3.4/T0P3.5/T1

P3.6/WRP3.7/RD

P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7

C8

D15

LED

P1_1

EAR4100

TXD

P0_5

RXD

 

0V

P2_3

RN3

RESISTOR DIP 4

2345 1

111

P3_7

P1_5

P0_6

EA

P0_4

SW2

P1_0

SW3

P2_1

C410U

Y1

D17

LED

P3_4

RN1

111111111

2345678910

P2_0

P3_5

5VVDK

P3_6

RXDP0_0

5VVDK

R13

R

P3_5

5VVDK

P2_3

START

P1_6

R14

R

START

J5

CON2

12

P2_0

J8

CON5

12345

P3_4

J7

CON2

12

RN4

RESISTOR DIP 4

1111 5

432

P3_3P1_2

P1_7

R29

R

P2_2

D16

LED

 

D18

LED

P3_7

R38.2K

P0_25VVDK

P0_7

P2_2

5VVDK

P0_1

SW1

SW DIP-4

 Hình 2.6 Sơ  đồ mạch điều khiển

3. Khối sensor

   Nhiệm vụ Phát hiện vật cản, nếu có vật cản thì phát ra tín hiệu báo cho IC biết

  Thành phần

•  Dùng cặ p LED thu phát hồng ngoại•  Bộ khuếch đại thuật toán (so sánh vớ i tín hiệu từ sensor, tạo ra tín hiệu báo cho vi điều khiển biết)

   Nguyên lý hoạt độngLED thu bình thườ ng có điện tr ở r ất lớ n cỡ 10K, nhưng khi có ánh sáng LED

 phát chiếu vào thì điện tr ở giảm xuống cỡ 100 Ohm. Nhờ nguyên lý này ta thiếtk ế mạch phát hiện vật như sau:

Hình 2.7. Cặp thu phát

Tín hiệu từ 2 đèn thu đượ c đưa vào các bộ khuếch đại thuật toán. Các đầu cònlại của bộ khuếch đại đượ c đưa các điện áp chuẩn vào để so sánh. Khi không có

Page 25: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 25/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 25

vật cản (ngh ĩ a là không có ánh sáng đến đèn thu) thì ở  đầu ra P0.0 và P0.1 nhậnđượ c tín hiệu 0, ngượ c lại khi có vật cản thì đầu ra P0.0 và P0.1 nhận đượ c tínhiệu 1.

sensor1P0_0

sensor2P0_1

5VSS

5VSS

GND

-

+

U51A

LM324

3

21

     4

     1     1

-

+

U51B

LM324

5

67

     4

     1     1

R16RESISTOR VAR

 

R18RESISTOR VAR

 Hình 2.8. Mạch sensor

Hỏi:Có thể chỉnh đượ c khoảng cách phát hiện vật không?

Trả lờ i:Có bằng cách điều chỉnh các biến tr ở  để đặt các ngưỡ ng so sánh, tuy nhiên khoảng cáchchỉnh đượ c không lớ n (cõ khoảng 1mm).

4. Khối hiển thị 

  Mạch giải mã sử dụng IC 74138: 3 đầu vào và 8 đầu ra thực hiện nhiệm vụ quétđèn

Sơ  đồ chân linh kiện:

Hình 2.9. IC74138

Page 26: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 26/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 26

 Hình 2.10. Bảng giá trị của IC 74138

3 tín hiệu đầu vào mạch giải mã đượ c nối vớ i các chân của vi điều khiển. Bằng việc thayđổi các giá tr ị đưa ra 3 tín hiệu điều khiển ta sẽ chọn đuợ c các đèn khác nhau.Minh hoạ: Khi 3 tín hiệu điều khiển bằng 000 thì đèn 1 (nối vớ i !Y0) sẽ đượ c chọn, 001thì đèn 2 đượ c chọn.

  Mạch dữ liệuSử dụng bộ đệm ULN 2803

Hình 2.11. ULN2803

Tín hiệu đầu vào IC là 8 tín hiệu nối từ vi điều khiển. Bằng việc thay đổi giá tr ị đưa ra tasẽ hiển thị các số khác nhau trên led_7 nét.

Hỏi:Khả năng của phươ ng pháp điều khiển là gì?

Trả lờ i:Có thể điều khiển nhiều nhất là 8 đèn Led 7 nét, và sử dụng hết 11 chân vào ra của viđiều khiển.

Page 27: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 27/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 27

5. Khối công suất điều khiển động cơ    Sử dụng IC L298

  Đặc tính IC•  Điện áp 40V, dòng 5A•  Tích hợ  p trong IC là 2 mạch cầu H do đó có khả năng điều khiển 2 chiều 2

động cơ DC  Sơ  đồ mạch công suất điều khiển 2 động cơ DC

DC22

24V

Motor Left

P1_3

0V

U7

L298

34

1110

152

79

     1     2

136

18

514

1A11A2

2A1

2A2

1Y11Y2

2Y1

2Y2

     G     N     D

1EN2EN

1E2E

VCC1VCC2

12V

J3

CON2

12

SignalControl

D22

DIODE

P1_0

C5

DC12

P1_2

0VVDK

DC11

D23

C6

D27

DIODE

 

D26DIODE

P1_0

U3A

7432

1

23

     1     4

     7 0V

P1_1

P1_3

5VVDK

P1_1

D21

DIODE

J2

CON2

12

Motor Right

D25

DIODE

D28

DIODE

U3B

7432

4

5

6

     1     4

     7

5VVDK

D24

5VVDK

0VVDK

DC21P1_2

 Hình 2.12. Mạch công suất

Hỏi:

Ư u điểm của L298 là gì?Trả lờ i:

L298 có ưu điểm:•  Khả năng điều khiển dễ dàng (4chân điều khiển 2 động cơ )•  Không xảy ra hiện tượ ng ngắn mạch trong mạch cầu H như trong các mạch

cầu thông thườ ng do có thêm IC logic 7432 ở mạch ngoài•  Mạch gọn,tin cậy

Hỏi: Nhượ c điểm L298 là gì?

Trả lờ i: Nhượ c điểm duy nhất là giá thành cao.

Page 28: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 28/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 28

III. Các phương pháp điều khiển trong Robot tự hành

1. Phươ ng pháp tạo encoder từ chuột máy tính

Hình 2.13. Cấu tạo bên trong chuột máy tính

Ta chú ý tớ i 2 bộ phận của chuột:  2 đĩ a tròn bị xẻ rãnh  2 đèn phát và 4 đèn thu (2 đèn thu tích hợ  p trong một đèn thu màu đen- xem ảnh)

Khi ta k ết hợ  p 2 bộ phận này của chuột ta sẽ nhận đượ c 2 encoder. Điểm mạnh của cặ pencoder này là chúng vuông góc vớ i nhau gần như tuyệt đối (do công nghệ chế tạo chuộtđã đạt đến độ chính xác r ất cao). Như vậy ta hoàn toàn có thể sử dụng chúng để đo 2chuyển động vuông góc vớ i nhau.

Hỏi:Tại sao trong mỗi một đèn thu của chuột sao tích hợ  p 2 đèn thu bên trong?

Trả lờ i:Để nhận biết chiều quay của đĩ a tròn.Sơ  đồ mạch sử dụng chuột làm encoder:

Page 29: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 29/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 29

R2

R

5V

OUT 1R1

R

OUT 20

X20

-

+

U2A

LM339

7

61X1

R4RESISTOR VAR

0

U1

DEN THU

     1

     3

2

     V     I     N

     V     O     U     T

GND

R5

RESISTOR VAR

R3

R

5V

D1

DEN PHAT

5V

-

+

U3A

LM339

7

61

0

 Hình 2.14. Mạch nhận biết chiều quay

Chiều quay của đĩ a tròn nhận biêt thông qua chuỗi xung nhận đượ c ở hai tín hiệu ra :OUT 1 và OUT 2.Chiều quay thuận (theo qui ướ c của ngườ i sử dụng): ..11..01..10..11..01..10..11Chiều quay ngượ c: ..11..10..01..11..10..01..11

Từ đó ta xây dựng đượ c thuật toán nhận chiều quay của chuột:

Page 30: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 30/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 30

 

2. Phươ ng pháp quét đèn led 7 thanh

Trong họ vi điều khiển 8051 (chíp AT89C51), có hai bộ timer 0 và bộ timer 1. Ta dùngmột bộ để thực hiện việc quét đèn.Ta dùng một biến t để thực hiện việc chọn đèn:Lưu đồ thuật toán chọn đèn:

 

Bắt đầu

so sánh(1,1)

so sánh(1,0)

Chiều ngượ c

Chiều thuận

so sánh(1,0)

so sánh(0,1)

Chiều ngượ c

Chiều thuận

so sánh(0,1)

so sánh(1,1)

Chiều ngượ c

Chiều thuận

Y Y

 N

 N

Y Y

 N

 N

Y Y

 N

K ết thúc

Hình 2.15. Lư u đồ nhận biết chiều quay

Page 31: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 31/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 31

Interrupt 3 ( ngắt cho timer 1) Ngắt thứ nhất xảy ra:

Khi ngắt thứ 2 xảy ra:

 

Dừng Timer 1

t=1?

chọn đèn 2;giá tr ị đèn 2 đưa ra port 3 ;t=2 ;

Chạy Timer 1

Dừng Timer 1

t=0?

chọn đèn 1;giá tr ị đèn 1 đưa ra port 3 ;t=1 ;

Chạy Timer 1

Page 32: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 32/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 32

Khi ngắt thứ 3 xảy ra:

Khi ngắt thứ 4 xảy ra:

Giá tr ị của biến chọn đèn quay lại ban đầu. Khi có ngắt tiế p theo xảy ra thì đèn thứ nhấtđượ c chọn, quá trình lai lặ p lại theo chu trình trên. Do tốc độ quét xảy ra r ất nhanh, mắt

 

Dừng Timer 1

t=3?

chọn đèn 4;giá tr ị đèn 4 đưa ra port 3 ;t=0 ;

Chạy Timer 1

Dừng Timer 1

t=2?

chọn đèn 3;giá tr ị đèn 3 đưa ra port 3 ;t=3 ;

Chạy Timer 1

Page 33: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 33/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 33

ngườ i lại có sự lưu ảnh trên võng mạc nên có cảm giác số hiển thị trên đèn không bị giánđoạn.

Hỏi: Phươ ng pháp quét đèn có ưu điểm gì?Trả lờ i:  Nhờ phươ ng pháp quét đèn ta “tiết kiệm đượ c số chân sử dụng của vi điều khiển

để thực hiện nhiệm vụ quét đèn, nhờ  đó mà ta có khả năng thực hiện nhiều nhiệmvụ khác.Minh hoạ cho điều này ta xét tr ườ ng hợ  p khi không sử dụng phươ ng pháp quét đèn.Mỗi một đèn led 7 thanh nếu dùng giải mã led 7 thanh thì chúng ta cần 4 tín hiệuđiều khiển để quản lý giá tr ị trên các đèn. Như vậy trong bài toán của chúng ta có 4đèn thì sẽ phải mất ít nhất 16 chân của vi điều khiển. Khi chúng ta tăng số đèn sử dụng lên thỉ số chân ta sử dụng cũng tăng. Đây là nhượ c điểm lớ n nhất của phươ ng pháp không quét đèn. Trong khí đó, nếu sử dụng phươ ng pháp quét đèn thì chỉ vớ i8 chân vi điều khiển ta có thể điều khiển vớ i số lượ ng đèn không hạn chế. Khi tăngđèn ta chi việc tăng thêm một giá tr ị cho biến quét đèn t.

Hỏi: Nhượ c điểm của phươ ng pháp quét đèn là gì?

Trả lờ i: Nhượ c điểm duy nhất của phươ ng pháp quét đèn là phươ ng pháp lậ p trình khó.

3. Phươ ng pháp tạo xung PWM để điều khiển tốc độ cho robot

Sử dụng Timer 0 của vi điều khiển để tạo ra xung PWM. Timer 0 dùng trong chế độ nạ p lại 8 bit.

Ta định ngh ĩ a bít pwm chứa giá tr ị điều khiển. Khở i động timer 0, bít pwm=1. Khixảy ra ngắt thứ nhất:

Hình dạng xung PWM:

 

Dừng Timer 0

Giá tr ị nạ p lại mớ i = 255-giá tr ị nạ p lại mớ i;Đảo pwm;

Khở i động lại Timer;

Page 34: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 34/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 34

 

IV. Xây dựng một bài toán cho Robot tự hành

Bài toán: Robot tìm đườ ng đến đích, khi trên đườ ng đi có 2 vật cản. Robot tự tránh vậtcản và tìm đến đích. Do hạn chế về vấn đề k ỹ thuật, robot chưa sử dụng đượ c các phươ ng pháp ở Phần 1, thay vào đó chúng tôi chỉ dùng một thuật toán đơ n giản để điều khiểnrobot.

Hình 2.16. Một số hình ảnh của Robot

 

255

TH0 ban đầu

Page 35: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 35/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 35 

 

Y

Y

Y

đi thẳng;

Begin

gặ pvật?

dừng:

đi lùi:

quay

đi thẳng;

gặ pvật?

dừng:

đi lùi:

quay trái:

đếmđủ

đi thẳng;

 N

 N

 N

End

Hình 2.17. Lư u đồ hoạt động của robot

Page 36: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 36/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 36

V. Hạn chế Robot và phương pháp khắc phục

  Chỉ tránh đượ c vật có màu tối hoặc màu sáng (do sensor chỉ chỉnh đượ c một

ngưỡ ng)Khắc phụcBố trí một dãy sensor xen k ẽ thành từng cặ  p, một sensor nhận vật sáng đứng

cạnh một sensor nhận vật tối.  Chưa có khăng nhận đích rõ ràng, mớ i chỉ dưng lại ở  việc tính quãng đườ ng

robot đi đượ c.Khắc phụcGắn thêm các cảm biến lên robot ví dụ như các cảm biến nhiệt (đối vớ i đích là

nguồn nhiệt), bộ thu sóng siêu âm (đối vớ i đích là các bộ phát sóng siêu âm),..  Khả năng đi thẳng còn hạn chể 

Khắc phục

•  Sử dụng chip linh hoạt hơ n vi điều khiển AT 89C51 ví dụ PIC,AVR,..•  K ết cấu cơ khí vững chắc và chính xác.

Page 37: Robot Tu Hanh

5/14/2018 Robot Tu Hanh - slidepdf.com

http://slidepdf.com/reader/full/robot-tu-hanh 37/37

 

Robot tự hành

 Nguyễn Vũ Quang - Đoàn Nam Thái 37

Tài liệu tham khảo

[1] Giải bài toán cục bộ tránh vật cản cho robot tự hành- Báo cáo Hội nghị Cơ -Điện tử lần thứ I[2] Đồ án tốt nghiệ p: Thiết k ế k ết cấu cơ khí và hệ thống điều khiển Robot tự hành – 

ATPRO (K45-KSTN-ĐHBKHN)[3] Họ vi điều khiển 8051- Tống Văn On[4] Datasheetarchive.com