Tải bản đầy đủ (.pdf) (48 trang)

robot tự hành

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.77 MB, 48 trang )


Trang
1
TRƯỜNG ĐẠI HỌC AN GIANG
TRUNG TÂM TIN HỌC
------

------





ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG

ROBOT TỰ HÀNH
(SẢN PHẨM THAM GIA CUỘC THI THIẾT KẾ ROBOT TRÊN
TRUYỀN HÌNH - ROBOCON 2005)


















Chủ nhiệm đề tài: PHẠM MINH TÂN

Long Xuyên, tháng 12 năm 2005

Trang
2
TRƯỜNG ĐẠI HỌC AN GIANG
TRUNG TÂM TIN HỌC
------

------





ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG

ROBOT TỰ HÀNH
(SẢN PHẨM THAM GIA CUỘC THI THIẾT KẾ ROBOT TRÊN
TRUYỀN HÌNH - ROBOCON 2005)














Chủ nhiệm đề tài: Phạm Minh Tân
Các thành viên: Đỗ Thanh Cao
Võ Văn Dễ
Nguyễn Anh Minh
Huỳnh Cao Thế Cường

Long Xuyên, tháng 12 năm 2005
Robocon 2005
Trung tâm Tin học Trang 3
LỜI CẢM ƠN

Robocon là cuộc thi thiết kế robot trên truyền hình hằng năm của các nước
thuộc khu vực Châu Á – Thái Bình Dương. Ở Việt Nam, đài truyền hình Việt Nam
VTV là đơn vị chịu trách nhiệm tổ chức tuyển chọn thành viên xuất sắc nhất để đi thi
đấu với các nước bạn trong khu vực.
Đây là lần đầu tiên trường Đại học An Giang tham gia cuộc thi này mà chúng
tôi là những người đại diện thực hiện. Các thành viên trong đội đã cố gắng rất nhiều
để hoàn thành một khối lượng lớn công việc trong một khoảng thời gian rất hạn hẹp.
Xin chân thành cảm ơn các bạn cộng sự đã phối hợp rất nhiệt tình và có tinh thần
trách nhiệm cao:
1. Đỗ Thanh Cao - Kỹ sư Tin học, giảng viên Khoa KT-CN-MT
2. Võ Văn Dễ - Sinh viên ngành Vật Lý

3. Nguyễn Anh Minh - Sinh viên ngành Tin Học
4. Huỳnh Cao Thế Cường - Sinh viên ngành Tin Học
5. Trần Hồng Hải - Sinh viên ngành Tin Học
6. Chế Lan Viên - Sinh viên ngành Tin Học
Cùng những người thân, bạn bè, đồng nghiệp đã ủng hộ rất nhiệt tình về vật
chất lẫn tinh thần cho chúng tôi.
Chúng tôi cũng rất cảm ơn Ban Giám Hiệu nhà trường và các đơn vị trực thuộc
(Khoa KT-CN-MT, Khoa NN-TNTN, Phòng KHTV, Phòng QTTB, Phòng HCTH,
Phòng CTSV) đã quan tâm, khích lệ và tạo mọi điều kiện thuận lợi để chúng tôi tham
gia cuộc thi này.
Robocon 2005
Trung tâm Tin học Trang 4
LỜI MỞ ĐẦU

Thiết kế robot là lĩnh vực hấp dẫn, thu hút nhiều đối tượng tham gia. Robocon
là viết tắt của Robot Contest, chỉ những loại robot chuyên làm một số công việc
nhất định như đá bóng, leo trèo, gắp đồ vật… Mỗi năm có một chủ đề khác nhau, vì
vậy robot ở từng năm cũng khác nhau, có thiết kế và chức năng khác nhau tùy theo
chủ đề.
Để thiết kế được một con robot, ta cần rất nhiều kiến thức về vật lý, hóa học,
điện, điện tử và cả mỹ thuật, hội họa… Vì vậy, robocon thực sự là một cuộc chơi của
trí tuệ tổng hợp, có khả năng kích thích ý tưởng sáng tạo của những người tham gia.
Chủ đề của cuộc thi lần này là “Lửa thiêng rực sáng Trường Thành”. Luật
chơi yêu cầu người chơi thiết kế 2 loại robot: loại robot tự động và robot điều khiển
bởi con người (gọi là robot “bằng tay”). Trên sân chơi có bố trí các cột tháp cao 1,2m
tới 1,5m và các đài lửa cao 10cm, đường kính 60cm. Các robot tự động phải tìm
cách đi từ nơi xuất phát đến các cột tháp và bỏ các quả bóng nhiên liệu (được chứa
sẵn trên mình) vào các ngọn tháp. Các robot bằng tay thì phải tự đi lấy bóng và thả
vào các đài lửa qua một đường dốc. Hai đội sẽ thi đấu với nhau trên cùng một sân
đấu trong thời gian 3 phút, đội nào ghi nhiều điểm hơn sẽ chiến thắng. (Chi tiết về

luật chơi xin tham khảo ở:
Rất nhiều những ý tưởng sáng tạo đã phát sinh và được ứng dụng trong quá
trình chế tạo robot, nhưng do khuôn khổ hạn hẹp của bài báo cáo này nên không
được nói hết ở đây. Bạn đọc có thể tham khảo thêm ở địa chỉ web site:
trong phân phục “Nghiên cứu khoa học”.
Robocon 2005
Trung tâm Tin học Trang 5
TÓM TẮT NỘI DUNG CHÍNH CỦA ĐỀ TÀI

Đề tài này nghiên cứu, thiết kế 2 loại robot theo yêu cầu thiết kế của cuộc thi
“Thiết kế Robot – Robocon 2005” do đài truyền hình Việt Nam phát động.
Việc nghiên cứu, thiết kế và thi công được trình bày trong ba phần sau:
Phần A mô tả cách thiết kế robot tự động (không có sự điều khiển trực tiếp của
con người từ bên ngoài). Các công đoạn thiết kế bao gồm: thiết kế phần cơ khí,
phần điện – điện tử, lập trình điều khiển và trang trí.
Phần B mô tả cách thiết kế robot “bằng tay” (cần có sự điều khiển của con
người, hoạt động theo sự điều khiển của con người). Các công đoạn thiết kế cũng
bao gồm: thiết kế phần cơ khí, phần điện – điện tử, lập trình điều khiển và trang trí
robot.
Phần C trình bày kết quả thực hiện đề tài: chúng tôi đã thiết kế được 3 con
robot: 2 con “tự động” và 1 con “bằng tay”. Đội robocon đã bước lên sàn đấu
Robocon khu vực phía Nam với hơn 80 đội đến từ các trường Đại học, Cao đẳng và
Trung học chuyên nghiệp khác.
Phần D trình bày những khả năng ứng dụng từ những ý tưởng và thiết kế có
được của đề tài.

Robocon 2005
Trung tâm Tin học Trang 6
MỤC LỤC
Trang

LỜI CẢM ƠN.........................................................................................................................................3

LỜI MỞ ĐẦU.........................................................................................................................................4

TÓM TẮT NỘI DUNG CHÍNH CỦA ĐỀ TÀI...................................................................................5

MỤC LỤC...............................................................................................................................................6

DANH MỤC HÌNH ẢNH......................................................................................................................7

DANH MỤC CHÚ THÍCH ...................................................................................................................7

DANH MỤC BẢNG BIỂU ....................................................................................................................7

PHẦN A THIẾT KẾ ROBOT TỰ ĐỘNG...........................................................................................8

I.

MÔ TẢ TỔNG QUÁT .................................................................................................................8

II.

THIẾT KẾ PHẦN CƠ KHÍ .........................................................................................................9

1. Phần khung sàn .............................................................................................................9

2. Cơ cấu cánh tay.............................................................................................................9

3. Cột chứa bóng và cơ cấu đẩy bóng .............................................................................11


III.

THIẾT KẾ PHẦN ĐIỆN, ĐIỆN TỬ..........................................................................................12

1. Bộ nguồn ổn áp có bảo vệ quá tải ...............................................................................12

2. Module công suất điều khiển động cơ ........................................................................12

3. Nhận diện vạch dẫn đường .........................................................................................14

4. Board mạch chủ ..........................................................................................................15

IV.

THIẾT KẾ PHẦN MỀM ĐIỀU KHIỂN ....................................................................................17

1. Lưu đồ giải thuật tổng quát.........................................................................................17

2. Phương pháp điều biến độ rộng xung .........................................................................18

3. Bộ thông dịch cho phép thay đổi chiến thuật nhanh chóng, dễ dàng..........................19

4. Chương trình điều khiển .............................................................................................20

PHẦN B THIẾT KẾ ROBOT ĐIỀU KHIỂN BẰNG TAY..............................................................21

V.

MÔ TẢ TỔNG QUÁT ...............................................................................................................21


VI.

THIẾT KẾ PHẦN CƠ KHÍ .......................................................................................................22

1. Phần khung sàn ...........................................................................................................22

2. Cơ cấu lấy bóng vào và đẩy bóng ra...........................................................................23

VII.

THIẾT KẾ PHẦN ĐIỆN, ĐIỆN TỬ..........................................................................................23

1. Bộ nguồn ổn áp có bảo vệ quá tải ...............................................................................23

2. Module công suất điều khiển động cơ ........................................................................24

3. Module giao tiếp với GamePad ..................................................................................25

4. Board mạch chủ ..........................................................................................................26

VIII.

THIẾT KẾ PHẦN MỀM ĐIỀU KHIỂN ....................................................................................27

1. Lưu đồ giải thuật tổng quát.........................................................................................27

2. Chương trình điều khiển .............................................................................................28

PHẦN C KẾT QUẢ THỰC HIỆN ĐỀ TÀI.......................................................................................29


PHẦN D NHỮNG KHẢ NĂNG ỨNG DỤNG CỦA ĐỀ TÀI ..........................................................30

PHỤ LỤC 1 DATASHEET CỦA MỘT SỐ LINH KIỆN CHỦ YẾU .............................................31

PHỤ LỤC 2 SƠ ĐỒ MẠCH THIẾT KẾ............................................................................................43

TÀI LIỆU THAM KHẢO ...................................................................................................................48

Robocon 2005
Trung tâm Tin học Trang 7

DANH MỤC HÌNH ẢNH
Trang
Hình 1:

Cấu tạo khung sàn robot.........................................................................................................9

Hình 2:

Cánh tay ở trạng thái thu gọn.................................................................................................9

Hình 3:

Cánh tay ở trạng thái vươn tối đa. .........................................................................................9

Hình 4:

Chi tiết kết cấu cánh tay. ......................................................................................................10

Hình 5:


Chi tiết cơ cấu rút bóng (nhìn từ trên xuống).......................................................................10

Hình 6:

Cột chứa bóng và cơ cấu đẩy bóng. .....................................................................................11

Hình 7:

Cơ cấu đẩy bóng và cơ chế hoạt động của nó......................................................................11

Hình 8:

Bộ nguồn ổn áp có bảo vệ quá tải. .......................................................................................12

Hình 9:

Module công suất điều khiển động cơ (Minh họa trường hợp cặp 1-4 đóng, 2-3 tắt)..........13

Hình 10:

Minh họa cách thức robot kiểm tra hướng đi.......................................................................14

Hình 11:

Thêm cảm biến phía sau giúp phát hiện hướng lệch nhanh chóng hơn. ..............................15

Hình 12:

Sơ đồ khối bo mạch chủ và mối liên hệ với các module khác...............................................15


Hình 13:

Sơ đồ nguyên lý bo mạch chủ. ..............................................................................................16

Hình 14:

Lưu đồ máy trạng thái điều khiển robot tự động..................................................................17

Hình 15:

Minh họa phương pháp điều biến độ rộng xung...................................................................18

Hình 16:

Minh họa giải thuật điều khiển động cơ theo phương pháp điều biến độ rộng xung...........18

Hình 17:

Cấu tạo khung sàn và cơ cấu lấy bóng của robot bằng tay..................................................22

Hình 18:

Minh họa hoạt động lấy bóng vào ........................................................................................23

Hình 19:

Minh họa hoạt động đẩy bóng ra .........................................................................................23

Hình 20:


Bộ nguồn cung cấp cho robot điều khiển bằng tay...............................................................23

Hình 21:

Module công suất điều khiển động cơ (Minh họa trường hợp cặp 2-3 đóng, 1-4 tắt)..........24

Hình 22:

Sơ đồ bố trí chân của đầu nối Gamepad. .............................................................................25

Hình 23:

Hình dạng của Gamepad......................................................................................................25

Hình 24:

Giản đồ xung truyền 1 byte dữ liệu giữa module giao tiếp và Gamepad. ............................25

Hình 25:

Module giao tiếp với Gamepad. ...........................................................................................26

Hình 26:

Board mạch chủ robot điều khiển bằng tay..........................................................................26

Hình 27:

Sơ đồ nguyên lý board mạch chủ robot điều khiển bằng tay................................................27


Hình 28:

Lưu đồ máy trạng thái điều khiển robot bằng tay. ...............................................................28


DANH MỤC CHÚ THÍCH
Trang
Chú thích 1:

Khung sàn robot tự động .....................................................................................9

Chú thích 2:

Cơ cấu cánh tay .................................................................................................10

Chú thích 3:

Cơ cấu rút bóng .................................................................................................10

Chú thích 4:

Cột chứa bóng....................................................................................................11

Chú thích 5:

Khung sàn robot điều khiển bằng tay................................................................22


DANH MỤC BẢNG BIỂU

Trang
Bảng 1:

Bảng liên hệ giữa tín hiệu điều khiển và chiều quay của động cơ...........................13

Bảng 2:

Bảng liên hệ giữa hướng lệch của robot với tín hiệu của các cảm biến vạch..........14

Bảng 3:

Bảng mô tả các chỉ thị của bộ thông dịch ................................................................19

Bảng 4:

Bảng mô tả chức năng các chân của Gamepad .......................................................25


Robocon 2005
Trung tâm Tin học Trang 8
PHẦN A
THIẾT KẾ ROBOT TỰ ĐỘNG
I. MÔ TẢ TỔNG QUÁT
Robot tự động là loại tự động hoàn toàn, không có sự điều khiển từ bên ngoài.
Robot tự động ở trạng thái tĩnh có kích thước tối đa cho phép là 1m x 1m x 1,5m. Khi
hoạt động có thể vươn cao tới 1,8m. Robot tự động được phép chất tối đa là 16 quả
bóng nhiên liệu lên mình. Nhiệm vụ của robot là phải tự dò đường đi theo các vạch
màu trắng trên sân để tìm đến các ngọn đuốc, rồi dùng cơ cấu gắp bóng hoặc đẩy
bóng kết hợp với khả năng nhận diện màu sắc để đặt các quả bóng vào đúng ngăn
có màu được chỉ định trên ngọn đuốc.

Chúng tôi đã đề ra tư tưởng chủ đạo trong thiết kế robot tự động là: robot phải
vững chắc (chống va chạm), thiết kế phải có hình dáng đặc trưng. Đây là lần đầu
tiên trường Đại họ
c An Giang “ra quân”, nên chúng tôi đã chọn dáng thiết kế theo
hình con rồng (đặc trưng cho vùng đồng bằng sông Cửu Long của mình).






















Robocon 2005
Trung tâm Tin học Trang 9
II. THIẾT KẾ PHẦN CƠ KHÍ

1. Phần khung sàn
Phần khung sàn được thiết kế đơn giản, kết cấu lắp ráp bằng vật liệu sắt V lổ.
Hai bánh trước quay độc lập, trục cố định. Mỗi bánh được điều khiển bằng một
động cơ riêng, có giảm tốc. Truyền động bằng bánh xích. Hai bánh sau dùng loại
bánh xe quay tự do, quay được quanh trục đứng.












Với thiết kế này, robot có thể đổi hướng rất linh hoạt nhờ sự thay đổi tốc độ và
hướng quay của 2 bánh trước.
2. Cơ cấu cánh tay
Ứng dụng nguyên lý đòn bẫy. Truyền động bằng hệ thống ròng rọc động. Cánh
tay được thiết kế liên hoàn, chỉ cần 1 điểm tác dụng lực để nâng cánh tay.












Nguyên lý nâng cánh tay như sau (xem hình 4): motor (1) quay kéo dây (2) gây
ra lực kéo (3), qua hệ thống ròng rọc động (4) kéo cánh giữa (5) quay lên quanh
khớp động (6). Cánh giữa (5) chuyển động lên sẽ làm điểm trượt (8) chuyển động
Chú thích 1: Khung sàn robot tự động
1. Khung sườn robot bằng sắt V-lổ.
2. Bánh trước (
φ
=12mm).
3. Bánh sau (loại bánh xe quay quanh trục
đứng).
4. Động cơ DC có giảm tốc.
5. Hệ truyền động bằng dây xích, bánh xích.
Hình 1: Cấu tạo khung sàn robot.
Hình 2:
Cánh tay ở trạng thái thu gọn. Hình 3: Cánh tay ở trạng thái vươn tối đa.
Khớp cứng
Khớp động
Ròng rọc
Khớp động
Dây không giãn,
độ dài cố định
Motor xoắn
1
3
2
4
5

Nhìn mặt bên
Nhìn từ trên
xuống
Robocon 2005
Trung tâm Tin học Trang 10
theo. Do dây (7) không giãn, có độ dài cố định và trượt được trên điểm trượt (8) nên
nó sẽ kéo điểm (9) xuống. Theo nguyên lý đòn bẫy, cánh trên (10) sẽ quay quanh
khớp động (11). Như vậy, chỉ với lực kéo của motor xoắn, toàn bộ cánh tay sẽ được
nâng lên và vươn dài tới mục tiêu cần thiết (như hình 3).














Khi cần hạ cánh tay xuống, motor xoắn quay theo chiều ngược lại, nhờ trọng
lực, cánh tay sẽ trở về vị trí ban đầu (như hình 2).
Đoạn trên hết của cánh tay có gắn cơ cấu rút bóng để bắn quả bóng vào mục
tiêu. Rổ đỡ bóng (1) là kết cấu khung uốn cong để giữ qủa bóng nhiên liệu, được
gắn trên một ổ trượt (2). Rổ đỡ bóng được giữ thăng bằng nhờ một thanh ngang (4)
tiếp xúc trượt với 2 thanh cố định hai bên. Lực rút được điều khiển bằng một motor
nhỏ gắn ở đầu trên của cánh (6). Ở đây cũng dùng một hệ thống ròng rọc động để

giảm tải cho motor kéo ổ trượt.









Hoạt động của cơ cấu rút bóng như sau: ở vị trí hạ thấp, sau khi bóng nhiên
liệu được đổ vào rổ đỡ bóng, cánh tay vươn cao tới vị trí cần thiết, motor kéo sẽ
quay rút dây làm ổ trượt được kéo lên, kéo theo quả bóng nhiên liệu. Đến vị trí trên
cùng, cơ cấu rút bóng dừng lại đột ngột, bóng sẽ văng ra ngoài do gia tốc.
Sau khi rút bóng, motor kéo quay ngược lại, thả lỏng dây kéo, cơ cấu rút bóng
sẽ trượt về vị trí cũ nhờ tác dụng của trọng lực.
Chú thích 2: Cơ cấu cánh tay
1. Motor xoắn.
2. Dây kéo không giãn.
3. Hướng lực kéo.
4. Hệ ròng rọc động.
5. Đoạn giữa của cánh tay.
6. Khớp động.
7. Dây không giãn, độ dài cố định.
8. Điểm trượt (ròng rọc cố định).
9. Điểm nối dây (7) vào cánh trên (10).
10. Đoạn trên của cánh tay.
11. Khớp động.
Hình 4: Chi tiết kết cấu cánh tay.
Chú thích 3:

Cơ cấu rút bóng
1. Rổ đỡ bóng (không cho bóng rớt
ngược lại phía sau). Phía dưới đáy rổ
có gắn một công tắc chạm (hình chữ
x).
2. Ổ trượt.
3. Thanh trục đỡ ổ trượt.
4. Thanh ngang tiếp xúc với 2 cạnh bên,
giữ cho rổ đỡ bóng không bị xoay.
5. Dây kéo ổ trượt.
6. Motor kéo ổ trượt.
Hình 5: Chi tiết cơ cấu rút bóng
(nhìn từ trên xuống).
1
2
3
4
5
6
1
2
3
4
5
6
8
7
9
10
11

Robocon 2005
Trung tâm Tin học Trang 11
Phía dưới rổ đỡ bóng có gắn một công tắc chạm dùng để nhận biết có bóng
trong rổ hay chưa. Tín hiệu này sẽ giúp bộ điều khiển trung tâm làm dừng việc đẩy
bóng trong cột chứa bóng lên và bắt đầu nâng cánh tay.
3. Cột chứa bóng và cơ cấu đẩy bóng
Mỗi robot tự động được phép chứa tối đa 16 quả bóng. Quả bóng có đường
kính 15cm, bằng chất liệu cao su. Theo tư tưởng chủ đạo đã đề ra, chúng tôi đã thiết
kế cột chứa bóng đứng (hình 6). Cột chứa bóng (1) là kết cấu ống khung (frame), cố
định vào sàn, đầu trên uốn cong sao cho khi bóng rơi ra ngoài sẽ đổ vào rổ đỡ bóng
của cơ cấu cánh tay.
Để giải quyết vấn đề ma sát giữa bóng cao su và thành cột (bằng nhôm), chúng
tôi đã dùng các hạt cườm để chuyển ma sát trượt thành ma sát lăn.








Do bị giới hạn về độ cao, cột chứa bóng này chỉ chứa được tối đa 6 quả bóng.
Cơ cấu đẩy bóng gồm thanh đỡ (2) và motor kéo (3). Thanh đỡ là cơ cấu 2 ống
lồng nhau. Một đầu cố định vào cánh tay, đầu kia áp sát trục đứng của cột chứa
bóng và di chuyển dọc theo trục này. Nhờ cơ cấu ống lồng nhau, thanh đỡ có thể
thay đổi chiều dài tùy theo khoảng cách giữa 2 đầu mút.














Chú thích 4: Cột chứa bóng
1. Thân cột chứa bóng.
2. Cơ cấu ống lồng nhau, làm thanh đở, dùng
để đẩy bóng ra khỏi cột chứa.
3. Motor kéo cơ cấu đẩy bóng.
Hình 6: Cột chứa bóng và
cơ cấu đẩy bóng.
Hình 7:
Cơ cấu đẩy bóng và cơ chế hoạt động của nó.
1
2
3
Ròng rọc cố định
Ròng rọc cố
định
Dây kéo
Khớp xoay
Thanh đỡ (2 ống lồng nhau)
Motor kéo dây
Trục đứng
cố định

Công tắc chạm K2
Robocon 2005
Trung tâm Tin học Trang 12
Đầu mút động được kéo bằng một động cơ, qua hệ truyền động dây kéo đổi
hướng nhờ các ròng rọc. Phía trên cột chứa bóng có gắn một công tắc chạm (K2)
đánh dấu điểm dừng cho cơ cấu rút bóng.
III. THIẾT KẾ PHẦN ĐIỆN, ĐIỆN TỬ
1. Bộ nguồn ổn áp có bảo vệ quá tải
Trong bất kỳ hệ thống điện tử nào, nguồn điện đều có vai trò rất quan trọng,
ảnh hưởng rất lớn tới tính ổn định của hệ thống.
Trong ứng dụng đặc thù này, nguồn cung cấp cần đáp ứng các yêu cầu sau:
- Có điện áp ra ổn định ở mức 5V để cung cấp cho các vi mạch số.
- Nguồn công suất 14V, dòng cao, ổn định cung cấp cho các động cơ để
giữ moment của động cơ không bị ảnh hưởng khi acquy giảm điện thế.
Mạch thiết kế như sau:
















Phân tích:
- IC ổn áp U1 và các tụ lọc nguồn C2, C3, C4, C5 tạo thành mạch ổn áp
đầu ra 5V cung cấp cho các vi mạch TTL.
- Mạch ổn áp công suất Z1, R2, T1 (Transistor loại Darlington) tạo điện
áp ra ổn định 14V cung cấp cho các động cơ. Cặp R1, T2 tạo thành
mạch bảo vệ quá tải bảo vệ T1 khi có ngắn mạch ngõ ra.

2. Module công suất điều khiển động cơ
Module điều khiển động cơ được thiết kế theo dạng cầu đảo chiều để điều
khiển động cơ quay theo 2 chiều khác nhau. Mỗi module điều khiển một động cơ.
Mạch sử dụng các transistor công suất darlington tần số cao như sau:
Hình 8: Bộ nguồn ổn áp có bảo vệ quá tải.
T1
R1
T2
Z1
C1
C3 C2 C5 C4
+5V
U1 7805
IN OUT
GND
13
2
R2
+14V
6V
12V
+ +
C2383

TIP122
15V6
104
1K
0.1/5W
4700uF 104 1000uF 104
Robocon 2005
Trung tâm Tin học Trang 13


















Phân tích:
- 2 cặp transistor darlington công suất T1-T4 và T2-T3 ghép thành mạch
cầu có thể cung cấp dòng theo 2 chiều cho motor M tùy theo các tín
hiệu điều khiển thích hợp ở các chân A,B,C,D. Cặp T1,T3 dùng loại

TIP125, cặp T2,T4 dùng loại TIP122 (chi tiết về cấu trúc bên trong các
transistor này xin xem phần phụ lục).
- Các opto Op1, Op2, Op3, Op4 (dùng loại P521) tạo thành mạch đóng,
ngắt cách ly.
- Mối liên quan giữa các tín hiệu điều khiển A,B,C,D (dạng TTL) và chiều
quay của động cơ M được cho trong bảng sau:


A B C D Chiều quay của động cơ M
0 0 0 0 Ngừng
1 0 0 1 Quay theo chiều thuận
0 1 1 0 Quay theo chiều nghịch
1 0 1 0 Dừng cưỡng bức
0 1 0 1 Dừng cưỡng bức
1 1 x x
x x 1 1
Trạng thái cấm
(x: logic 0 hoặc 1)


Hình 9: Module công suất điều khiển động cơ
(Minh họa trường hợp cặp 1-4 đóng, 2-3 tắt)
Bảng 1:
Bảng liên hệ giữa tín hiệu điều khiển và chiều quay của động cơ
+14V
R1
A
220
R2
1K

R4
1K
+14V
OP1
R3
B
220
R5
C
220
R6
1K
R7
1K
+14V
OP3
R8
D
220
OP2
OP4
M
T1
T3
T2
T4
Robocon 2005
Trung tâm Tin học Trang 14
3. Nhận diện vạch dẫn đường
Mặt sân màu xanh lá cây xậm có kẻ vạch dẫn đường màu trắng. Đặc điểm này

cho phép dùng các cảm biến vạch sử dụng tia laser đỏ để nhận biết vì màu trắng
phản xạ rất tốt ánh sáng đỏ, còn màu xanh lá hấp thụ gần như hoàn toàn ánh sáng
đỏ. Trong thiết kế này ta sử dụng cảm biến vạch BF3-RX của Hàn Quốc (thông số kỹ
thuật xin xem phần phụ lục). Loại cảm biến này có độ ổn định rất cao và khả năng
chống nhiễu ánh sáng rất tốt. Đây là loại cảm biến được sử dụng rộng rãi trong các
dây chuyền điều khiển tự động.
Để nhận biết chính xác hướng lệch của robot, ta dùng 3 cảm biến vạch cho đầu
trước.

















Với cách thiết kế này, thông tin về hướng đi được nhận bi
ết bằng 3 bit theo thứ
tự Trái-Giữa-Phải (L-C-R) như sau (quy ước thấy vạch là mức 1):

Giá trị L-C-R Thông tin

0-1-0 Đang đi thẳng
1-1-0 Hơi lệch phải
1-0-0 Quá lệch phải
0-1-1 Hơi lệch trái
0-0-1 Quá lệch trái
0-0-0 Ra khỏi vạch
1-1-1 Đi đến điểm giao hoặc vạch ngang
1-0-1 Đi đến điểm giao từ góc
Hình 10: Minh họa cách thức robot kiểm tra hướng đi.
Bảng 2:
Bảng liên hệ giữa hướng lệch của robot với tín hiệu của các
cảm biến vạch
Hướng tới
Î Lệch phải
Robot Cảm biến
Vạch trắng
Î Lệch trái
Î Chạy thẳng
Robocon 2005
Trung tâm Tin học Trang 15
Tính chính xác của việc nhận biết hướng đi sẽ càng tăng nếu ta dùng càng
nhiều bộ cảm biến (cảm biến BF3-RX là loại rất đắc tiền, dùng càng nhiều cảm biến
thì robot sẽ di chuyển càng chính xác như giá thành của robot sẽ tăng đáng kể).
Để phát hiện xu hướng lệch kịp thời, ta gắn thêm phía đầu sau của robot 1 cảm
biến vạch nữa. Khi robot có xu hướng lệch, cảm biến phía sau sẽ lệch khỏi vạch
trước 3 cảm biến đầu, như vậy xu hướng lệch sẽ được phát hiện và điều chỉnh kịp
thời hơn.









4. Board mạch chủ
Bo mạch chủ chứa bộ điều khiển trung tâm và các bộ đệm vào-ra. Robot sẽ
cảm nhận các tác động bên ngoài thông qua các cảm biến, các công tắc chạm và sẽ
có những ứng xử phù hợp với từng tình huống cụ thể theo chương trình định trước.











Bộ điều khiển trung tâm sử dụng vi điều khiển P89V51RD2 thuộc họ 8051 của
hãng Philip (có datasheet kèm theo phần phụ lục).
Các bộ đệm vào-ra sử dụng IC 74HC573. Bo mạch chủ nối với các module
khác qua các bus dây.
Sơ đồ nguyên lý thiết kế bo mạch chủ như sau:

Hình 11: Thêm cảm biến phía sau giúp phát hiện hướng
lệch nhanh chóng hơn.
Hình 12:
Sơ đồ khối bo mạch chủ và mối liên hệ với các

module khác.
Cảm biến phía sau
MCU
(vi điều
khiển)
Các bộ đệm
vào
Các bộ đệm
ra
Tín hiệu từ
các công
tắc chạm
Tín hiệu từ
các cảm
biến vạch
Nguồn cung
cấp
Các module
công suất điều
khiển động cơ
Robocon 2005
Trung tâm Tin học Trang 16





























Phân tích:
- IC1: chip vi điều khiển trung tâm P89V51RD2, điều khiển mọi hoạt
động của robot.
- IC2, IC3, IC4, IC5: bộ đệm ra, nối tới các module công suất điều khiển
các động cơ. Với 4 bộ đệm 8 bit, mạch này có thể điều khiển 8 động cơ
khác nhau.
- IC6, IC7, IC8, IC9: các bộ đệm vào, dùng để nhận các tín hiệu từ các
công tắc chạm và các cảm biến vạch.
- IC10, IC11: giải mã địa chỉ.
- IC12: bộ đệm đảo.


Hình 13: Sơ đồ nguyên lý bo mạch chủ.
Y0
15
Y1
14
Y2
13
Y3
12
Y4
11
Y5
10
Y6
9
Y7
7
1
A
2
B
3
C
G1
4
G2A
5
G2B
RD0\

IC10
74138
6
RD1\
RD2\
RD3\
RD4\
RD5\
RD6\
RD7\
RD\
A15
A14
A13
A12
Y0
15
Y1
14
Y2
13
Y3
12
Y4
11
Y5
10
Y6
9
Y7

7
1
A
2
B
3
C
G1
4
G2A
5
G2B
WR0\
IC11
74138
6
WR1\
WR2\
WR3\
WR4\
WR5\
WR6\
WR7\
WR\
A15
A14
A13
A12
P00
39

P01
38
P02
37
P03
36
P04
35
P05
34
P06
33
P07
32
P20
21
P21
22
P22
23
P23
24
P24
25
P25
26
P26
27
P27
28

ALE
30
PSEN
29
P37-RD
17
P36-WR
16
1
P10
2
P11
3
P12
4
P13
5
P14
6
P15
7
P16
8
P17
P30
11
P31
12
P32
13

P33
14
P34
15
P35
9
RESET
20
GND
31
EA
40
VCC
18
X2
19
X1
10
P89V51RD2
Vcc
RD\
WR\
A14
A13
A12
A15
C3
+
10uF
R1

10K
C1
C2
IC1
12MHz
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7
12
Motor1 Motor2
2
D0
3
D1
4
D2
5
D3

6
D4
7
D5
8
D6
9
D7
11
C
WR0
IC2
74573
OC\
1
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7

12
Motor3 Motor4
2
D0
3
D1
4
D2
5
D3
6
D4
7
D5
8
D6
9
D7
11
C
WR1
IC3
74573
OC\
1
Q0
19
Q1
18
Q2

17
Q3
16
Q4
15
Q5
14
Q6
13
Q7
12
Motor5 Motor6
2
D0
3
D1
4
D2
5
D3
6
D4
7
D5
8
D6
9
D7
11
C

WR2
IC4
74573
OC\
1
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7
12
Motor7 Motor8
2
D0
3
D1
4
D2
5
D3

6
D4
7
D5
8
D6
9
D7
11
C
WR3
IC5
74573
OC\
12
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7

12
Input[0..7]
2
D0
3
D1
4
D2
5
D3
6
D4
7
D5
8
D6
9
D7
1
OC\
RD0\
IC6
74573
C
11
Vcc
Q0
19
Q1
18

Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7
12
Input[8..15]
2
D0
3
D1
4
D2
5
D3
6
D4
7
D5
8
D6
9
D7
1

OC\
RD1\
IC7
74573
C
11
Vcc
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14
Q6
13
Q7
12
Input[16..23]
2
D0
3
D1
4
D2

5
D3
6
D4
7
D5
8
D6
9
D7
1
OC\
RD2\
IC8
74573
C
11
Vcc
Q0
19
Q1
18
Q2
17
Q3
16
Q4
15
Q5
14

Q6
13
Q7
12
Input[24..31]
2
D0
3
D1
4
D2
5
D3
6
D4
7
D5
8
D6
9
D7
1
OC\
RD3\
IC9
74573
C
11
Vcc
Y0

18
Y1
16
Y2
14
Y3
12
Y4
9
Y5
7
Y6
5
Y7
3
2
A0
4
A1
6
A2
A5
15
A6
17
A7
WR0
IC12
74244
13

WR1
WR2
WR3
WR4
WR5
WR6
WR7
A4
11
A3
8
1
G0\
19
G1\
WR0\
WR1\
WR2\
WR3\
WR4\
WR5\
WR6\
WR7\
Robocon 2005
Trung tâm Tin học Trang 17
IV. THIẾT KẾ PHẦN MỀM ĐIỀU KHIỂN
1. Lưu đồ giải thuật tổng quát
Để điều khiển robot tự động, ta dùng phương pháp lập trình máy trạng thái.
Điều kiện chuyển trạng thái có thể từ chương trình điều khiển chính hoặc từ các cảm
biến vạch và các công tắc chạm chỉ vị trí cánh tay.

Lưu đồ máy trạng thái tổng quát cho robot tự động như sau:

































Hình 14: Lưu đồ máy trạng thái điều khiển robot tự động.
Sẵn sàng
ở vị trí
khởi động
Di chuyển
theo hướng
hiện tại
Điều chỉnh
lệch
hướng trái
Điều chỉnh
lệch hướng
phải
Bánh trái quay
lui, bánh phải
quay tới
Bánh phải
quay lui, bánh
trái quay tới
Đẩy
bóng
Dừng
Nâng
cánh tay
Rút
bóng
Hạ rổ

đỡ
Hạ cánh
ta
y
bắt đầu, đi theo
chương trình
lệch phải lệch trái
rẽ phải
rẽ trái
hết lệch
hết lệch
đã rẽ phải
đã rẽ trái
có lệnh
bắn bóng
hết bóng
bóng vào vị trí
cánh tay tới
vị trí trên
bóng văng ra ngoài
rỗ về vị trí
cánh tay
về vị trí
đi tiếp
Robocon 2005
Trung tâm Tin học Trang 18
2. Phương pháp điều biến độ rộng xung
Để điều khiển tốc độ động cơ một cách linh hoạt, ta dùng phương pháp điều
biến độ rộng xung. Dòng cấp cho động cơ không liên tục mà có dạng xung, giá trị
trung bình của xung sẽ tỉ lệ với tốc độ động cơ.








Chu kỳ Tp không đổi, còn chu kỳ làm việc tc sẽ thay đổi. Chu kỳ làm việc tc
tương ứng với việc động cơ được cấp nguồn. Như vậy, thay đổi chu kỳ làm việc tc
sẽ làm thay đổi được tốc độ động cơ. (Theo hình minh họa, chu kỳ làm việc tc
1
ứng
với việc động cơ quay nhanh hơn chu kỳ làm việc tc
2
)
Phương pháp điều biến độ rộng xung có thể được thực hiện bằng phần mềm
(chạy theo ngắt thời gian của hệ thống) như sau:





















Hình 15: Minh họa phương pháp điều biến độ rộng xung.
Hình 16:
Minh họa giải thuật điều khiển động cơ theo phương
pháp điều biến độ rộng xung.
Tp Tp
tc
2
tc
1

- Khởi động bộ đếm
lùi với giá trị Tp.
- Mở động cơ.
Bộ đếm = 0?
Bộ đếm = tc?
Tắt động cơ
Động cơ vào chế
độ hoạt động.
Y
N
N
Y
Robocon 2005

Trung tâm Tin học Trang 19
3. Bộ thông dịch cho phép thay đổi chiến thuật nhanh chóng, dễ dàng
Robocon là cuộc thi đấu trí tuệ và công nghệ giữa các thành viên. Mỗi trận đấu
có thể cần một chiến thuật khác nhau. Do đó, để có thể thay đổi chiến thuật (về
đường đi, cách bỏ bóng…) một cách nhanh chóng, dễ dàng, tôi đã thiết kế một lớp
ứng dụng cho phép điều khiển robot bằng các chỉ thị gợi nhớ.
Dạng thức mỗi chỉ thị gợi nhớ như sau:

byte[0] byte[1] byte[2] byte[3] byte[4] byte[5] byte[6]
Len Func Param1 Param2 Param3 Param4 …
(Len: chiều dài chuỗi mã lệnh; Func: mã lệnh; Param?: các tham số)

Bảng sau liệt kê các mã gợi nhớ và tác dụng điều khiển của nó:

Mã lệnh
hex
(Func)
Tham số
(Param)
Chức năng
00 Không làm gì
01 mt, sp Đặt tốc độ sp cho motor mt
02 mt, act
Điều khiển motor mt. act=0: tắt; act=1:quay tới; act=2:
quay lui; act=3: dừng cưỡng bức.
03 idx, cntL, cntH Đặt bộ đếm lùi thứ idx giá trị cnt(16bit)
04 sp Đặt tốc độ quy chuẩn sp cho motor trái
05 sp Đặt tốc độ quy chuẩn sp cho motor phải
06 Robot đi tới
07 Robot đi lui

08 Robot dừng lại
09 leftsp, rightsp Đặt tốc độ trái leftsp, phải rightsp rồi chạy tới
0A leftsp, rightsp Đặt tốc độ trái leftsp, phải rightsp rồi chạy lui
0B cntL, cntH Dừng bộ thông dịch trong khoảng thời gian cnt(16bit)
0C Trở về từ một lời gọi hàm (RET)
0D AddrL, AddrH Gọi hàm có địa chỉ Addr (16bit)
0E AddrL, AddrH Nhảy tới địa chỉ Addr (16bit)
0F AddrL, AddrH Gọi hàm vi điều khiển tại địa chỉ Addr (16bit)
10 Reset bộ đếm vị trí
11 len Chạy tới một đoạn len
12 len Quay trái một đoạn len
13 len Quay phải một đoạn len
14 len Quay lui trái một đoạn len
15 len Quay lui phải một đoạn len
16 Bắn một quả bóng
17-1D Chưa dùng (N/A)
1E AddrL, AddrH Lặp lại tại địa chỉ Addr (16bit)
1F Chưa dùng

Bảng 3: Bảng mô tả các chỉ thị của bộ thông dịch

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×