s a
Sử dụng cơng cụ System Identification của Matlab để tìm hàm truyền => Hàm truyền tìm được là: ( ) 76.47 23.6 H s s
38
4.2.2 Động cơ phải
Tìm quan hệ vào- ra
Tiến hành lấy mẫu ta được bảng số liệu sau:
Bảng 4.2 Tốc độ động cơ theo % PWM STT % PWM Tốc độ động cơ (vòng/phút) 1 17.65 52 2 21.57 69 3 25.49 80 4 29.41 92 5 33.33 104 6 37.25 116 7 41.18 129 8 45.10 143 9 49.02 154 10 52.94 166 11 56.86 179 12 60.78 191 13 64.71 205 14 68.63 217 15 72.55 230 16 76.47 242 17 80.39 255 18 84.31 267
39 19 88.24 279 20 92.16 288 21 96.08 299 22 100.00 308 Hình 4.6 Đồ thị %PWM - tốc độ Từ đồ thị ta thấy quan hệ giữa tốc độ góc và PWM là tuyến tính. Tìm hàm truyền
40
Hình 4.7 Đáp ứng của động cơ phải Hàm truyền động cơ phải- driver có dạng: H s( ) K Hàm truyền động cơ phải- driver có dạng: H s( ) K
s a Hàm truyền tìm được là: ( ) 74.58 22.57 H s s 4.3 Hàm truyền cảm biến IR
Sử dụng cảm biển TCRT5000 để phát hiện line:
41
Hình 4.9 Cảm biến TCRT5000
Hình 4.10 Vùng hoạt động của cảm biến
Theo như datasheet của cảm biến TCRT5000, góc phát của Emiter là 𝛼 = 160, góc thu là 𝛽 = 300 . Khoảng cách giữa hai cảm biến 𝑑 = 3,5𝑚𝑚. Từ đó ta có thể xác định được giá trị của 𝑑1, 𝑑2 𝑋𝑑.
𝑑1 = 2ℎ. tan(160) , 𝑑2 = 2ℎ. tan(300) , 𝑋𝑑 =𝑑1+𝑑2
2 − 𝑑
Khi sử dụng module dị line tích hợp sẵn cảm biến TCRT5000, vùng hoạt động của cảm biến nằm trong khoảng 1 – 25 mm.
42
𝑑1 = 2.15. tan(160) = 8,60 𝑚𝑚 𝑑2 = 2.15. tan(300) = 17,32 𝑚𝑚
𝑋𝑑 =8,60+17,32
2 − 3,5 = 9,48 mm
Để cảm biến không bị nhiễu bởi các cảm biến khác, khoảng cách giữa 2 cảm biến phải lớn hơn hoặc bằng một khoảng K = d + (d1 + d2)/2 =3,5 + (8,60 + 17,32)/2 = 16.46 mm
Hình 4.11 Điều kiện để cảm biến không bị nhiễu bởi cảm biến khác Chọn khoảng cách giữa 2 cảm biến là 18mm
a. Hiệu chuẩn cảm biến (Calibration)
Để có thể nhận ra giao lộ giữa 3 đường, ta sử dụng 7 module dò line đơn. Mỗi module dị line lại trả về tín hiệu analog khác nhau. Vì vậy để có thể sử dụng các tín hiệu này hiệu quả, việc hiệu chuẩn cảm biến là vô cùng cần thiết.
Đê hiệu chuẩn cảm biến, ta sử dụng công thức: 𝑦𝑗𝑜 = 𝑦𝑚𝑖𝑛 + 𝑦𝑚𝑎𝑥 − 𝑦𝑚𝑖𝑛
𝑥𝑚𝑎𝑥,𝑖 − 𝑥𝑚𝑖𝑛,𝑖(𝑥𝑗,𝑖 − 𝑥𝑚𝑖𝑛,𝑖) Với:
43
xmax,i và xmin,i là giá trị lớn nhất và nhỏ nhất đọc được từ cảm biến thứ I,
ymax và ymin là giá trị lớn nhất và nhỏ nhất mà ta mong muốn cho tất cả các cảm biến
xj,i = là giá trị đọc được thứ j của cảm biến thứ i yjo = là giá trị sau khi điều chỉnh xj,i.
Trước khi hiệu chuẩn
xmax,i xmin,i Cảm biến 1 594 56 Cảm biến 2 648 56 Cảm biến 3 559 54 Cảm biến 4 768 61 Cảm biến 5 655 56 Cảm biến 6 676 58 Cảm biến 7 558 55 Trung bình cộng 636.857 56.5714
Từ 2 giá trị trung bình cộng. Ta chọn ymax = 637, ymin = 57 Sau khi hiệu chuẩn số liệu thu thập phía trên, ta được
yjo max yjo min
44 Cảm biến 2 637 57 Cảm biến 3 637 57 Cảm biến 4 637 57 Cảm biến 5 637 57 Cảm biến 6 637 57 Cảm biến 7 637 57
b. Xác định khoảng cách tới tâm đường line
Từ các giá trị analog của cảm biến đã qua hiệu chuẩn, ta sử dụng phương pháp trung bình trọng số để xác định vị trí của xe so với đường line.
Hình 4.12 Vị trí cảm biến ứng với trọng số của cảm biến
Theo phương pháp trung bình trọng số, tọa độ tâm đường line dọc theo các cảm biến được xác định bằng công thức:
𝑥 =∑ 𝑥𝑖𝑦𝑖
𝑛−1 𝑖=0
45
Với n là số cảm biến sử dụng và L là hệ số khuếch đại. Số liệu x tìm được ta sẽ đi khảo sát so sánh với khoảng cách thật từ tâm đường line để tìm hàm truyền cảm biến
Tính số mấu cần lấy:
Khoảng cách dịch chuyển 1 lần: 6mm/lần Thời gian giữa 2 lần di chuyển cảm biến = 1s Tổng khoảng cách dịch chuyển = 18*6 = 108 mm Tổng thời gian : T= 108/6= 18 s => f = 1/18 Hz Tần số lấy mẫu fs >= 2*f = 2/18= 1/9 Hz N*dt = mT Chọn fs = 1 Hz => dt = 1s => N = m*18/1= 18m Chọn m = 1.
Vậy số mẫu cần lấy là 18 mẫu ứng với fs = 1 Hz
Lấy 23 mẫu ta xấp xỉ được mối quan hệ và giữa trung bình trọng số và sai số thực là y = 1.5135x + 5.5558 với y là sai số thực, x là trung bình trọng số
46
Hình 4.13 Hàm xấp xỉ trung bình trọng số và sai số thực Bảng số liệu ứng với đồ thị: Bảng số liệu ứng với đồ thị:
Bảng 4.3 Dữ liệu calib cảm biến Trung bình Trung bình
trọng số Khoảng cách thực tới tâm line (mm)
Khoảng cách xấp xỉ (mm) Sai lệch (mm) -29.5 -60 -46.37385 -13.6262 -30.2 -55 -47.50862 -7.49138 -30.8 -50 -48.48128 -1.51872 -33.28 -45 -52.501608 7.501608 -27 -40 -42.3211 2.3211 -26 -35 -40.7 5.7 -21.2 -30 -32.91872 2.91872 -20.14 -25 -31.200354 6.200354 -10.6 -20 -15.73506 -4.26494 y = 1.6211x + 1.4486 -80 -60 -40 -20 0 20 40 60 80 -40 -30 -20 -10 0 10 20 30 40 Độ lệc h t h ực Trung bình trọng số
47 -10.42 -15 -15.443262 0.443262 -7.17 -10 -10.174687 0.174687 -5.9 -5 -8.11589 3.11589 -0.11 0 1.270279 -1.27028 0.1 5 1.61071 3.38929 5.2 10 9.87832 0.12168 9.8 15 17.33538 -2.33538 10.5 20 18.47015 1.52985 18.4 25 31.27684 -6.27684 19.4 30 32.89794 -2.89794 20.27 35 34.308297 0.691703 21.1 40 35.65381 4.34619 32.45 45 54.053295 -9.0533 31.1 50 51.86481 -1.86481
48
CHƯƠNG 5: THIẾT KẾ BỘ ĐIỀU KHIỂN
5.1 Yêu cầu điều khiển
Thiết kế bộ điều khiển thỏa mãn các yêu cầu sau:
Bám line tốt, trọng tâm xe lệch tâm đường line < 10 mm Thời gian hoàn thành đường line < 15 s
Vận tốc xe đoạn chạy thẳng đạt tốc độ tối đa vmax = 1 m/s
5.2 Tín hiệu input dùng để điều khiển
Cảm biến hồng ngoại trả về giá trị analog 1024 mức. Tìm hàm truyền cảm biến để tìm mối quan hệ giữa giá trị analog với khoảng cách giữa tâm cảm biến và tâm đường line.
Theo kết quả hàm truyền cảm biến tìm được ở mục 4.3 ta được: y = 1.5135x + 5.5558 Với: y là khoảng cách giữa tâm cảm biến và tâm đường line.
x là giá trị trung bình trọng số của 7 cảm biến.
5.3 Giải thuật điều khiển
Giải thuật điều khiển của robot dị line gồm ba nội dung chính ứng với ba chương trình con:
Hiệu chuẩn giá trị cảm biến Đọc giao lộ
49
50 Chương trình con hiệu chuẩn giá trị cảm biến:
51 Chương trình con đọc giao lộ:
Hình 5.3 Chương trình con đọc giao lộ Chương trình con bám line: Chương trình con bám line:
52
5.4 Bộ điều khiển
Sau khi mơ hình hóa hệ thống xe robot dị line, nhóm chọn và thiết kế bộ điều khiển PD vì tính đơn giản và hiệu quả của bộ điều khiển này.
Tín hiệu PWM cấp cho động cơ là PWMbase =190/255 = 75.5 % u = Kperror + Ki∫ 𝑒𝑟𝑟𝑜𝑟 + Kd(error – last error)
Trong đó error là sai lệch khoảng cách giữa tâm cảm biến và tâm đường line. Nếu u < 0 thì xe rẽ trái
PWM trái = PWMbase - |u| PWM phải = PWMbase + |u|
Nếu u >0 thì xe rẽ phải PWM trái = PWMbase + |u| PWM phải = PWMbase - |u|
Nếu u =0 thì xe đi thẳng PWM trái = PWMbase
PWM phải = PWMbase
5.5 Kết quả mô phỏng
Sau khi đã thiết kế bộ khiển PD như đã trình bày bên trên, tiến hành lập trình trong phần mềm Matlab và chạy mô phỏng. Kết quả mơ phỏng xe dị line được thể hiện như các hình dưới đây:
53
Hình 5.5 Quỹ đạo xe mơ phỏng
Dựa vào đồ thị quỹ đạo trên, xe dị line đã hồn thành hết đường đua với thời gian nhỏ hơn thời gian quy định. Do quỹ đạo vẽ dựa vào tọa độ của điểm nằm giữa hai bánh xe nên khi xe dừng ở đich đến (cảm biến dò line nhận giao lộ thứ 6), tồn tại một khoảng cách giữa đích và điểm đó.
54
Từ đồ thị trên, ta có thể nhận thấy được đáp ứng nhanh chóng của hai bánh xe khi xe tiến đến những khúc cua quẹo gấp, đặc biệt là ở điểm A khi xe phải cua gấp một góc 900. Đồ thị vận tốc góc tồn tại những dao động lớn, nhỏ do thuật tốn bám line.
Hình 5.7 Đồ thị vận tốc dài của xe
Nhận xét: Vận tốc dài tối đa của xe lên đến > 1.2 m/s, thỏa mãn yêu cầu đặt ra ban đầu. Vận tốc dài ở đoạn đường thẳng (A-C-E) tăng lên mức tối đa để xe nhanh chóng kết thúc đường đua, tối ưu hóa thời gian hoàn thành.
55
CHƯƠNG 6: THỰC NGHIỆM VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN
6.1 Thực nghiệm
Quỹ đạo của robot trong thực nghiệm có hình dạng tương đồng với hình dạng sa bàn chứng tỏ giải thuật đề ra ban đầu là hợp lý. Tuy nhiên có những đoạn robot khơng bám chính xác line do bề mặt sàn có những đoạn nhấp nhơ cao làm sai lệch giá trị đọc về của cảm biến.
Hình 6.1 Quỹ đạo robot dò line trên thực nghiệm
Đồ thị vận tốc dài robot trong thực nghiệm xuất hiện những nhấp nhơ do trong thực tế robot dị line bị ảnh hưởng bởi nhiễu (ánh sáng thay đổi đột ngột, bề mặt line phản xạ khác nhau, ma sát giữa bánh và bề mặt,…). Vận tốc dài tối đa xe có thể đạt được thỏa yêu cầu đã đặt ra (vmax = 1.2 m/s).
56
Hình 6.2 Vận tốc dài của robot thực nghiệm Vận tốc góc hai bánh trên thực nghiệm so với mơ phỏng: Vận tốc góc hai bánh trên thực nghiệm so với mô phỏng:
57
Nhận xét: Vận tốc góc hai bánh xe cũng như vận tốc dài dao động liên do nguyên nhân là trong thực tế xe luôn lắc để bám line và nhiễu từ môi trường (bề mặt sa bàn nhấp nhơ, …) cũng như nhiễu tín hiệu encoder trả về.
6.2 Phương hướng phát triển:
- Phát triển thuật toán tự hiểu chỉnh cảm biến khi thay đổi điều kiện hoạt động (bề mặt/ chất liệu sa bàn, ánh sáng ngoài trời,…).
- Thiết kế mạch đo dung lượng pin còn lại để báo hết pin tự động nhằm tránh sử dụng cạn pin. Ngoài ra, kết hợp với thuật toán điều chỉnh đáp ứng của robot ổn định ứng với dung lượng pin.
- Điều khiển vận tốc trên từng đoạn đường khác nhau để tối ưu thời gian hồn thành. - Tích hợp chức năng tránh vật cản nhằm tránh va chạm gây hư hại phần cứng robot.
58
Tài liệu tham khảo
[1] Juing-Huei Su, C.-S. L.-H.-H.-Y. (2010). An intelligent line-following robot project for introductory robot courses. World Transactions on Engineering and Technology Education.
[2] Mustafa Engin, D. E. (2012). PATH PLANNING OF LINE FOLLOWER ROBOT.
The 5th European DSP Education and Research Conference.
[3] Trần Q.Cường, Trần T.Phong (2012), Điều khiển robot dò đường sử dụng bộ điều khiển PID kết hợp phương pháp PWM, Bulletin of Science & Technology, Tien Giang
University, No.3, ISSN 1859-4530, Nov. 2012
[4] Ebiesuwa O. O, Adekunle Y. A, Akinyemi L. A, Oyerinde O. D. Line Follower Robot Using A Sophisticated Sensor Approach
[5] GADHVI SONAL, PUNIT RANINGA, HARDIK PATEL. (2017).Design and implementation of RGB color line following robot. International Conference on Computing Methodologies and Communication.
[6] https://www.youtube.com/watch?v=POCpNmGhXfM
[7] Deepak Punetha, Neeraj Kumar, Vartika Mehta. Development and Applications of Line Following Robot Based Health Care Management System
[8] https://www.instructables.com/id/Robot-Line-Follower
[9] Pololu Corporation, Pololu AVR Library Command Reference, 2001–2015 https://www.pololu.com/docs/0J18 [10] brooksbots.com/Expressway.html [11] https://www.pololu.com/category/76/3pi-robot-and-accessories [12] http://brooksbots.com/FireBall.html [13] https://ktmt.uit.edu.vn/tin-tuc/tin-noi-bat/899-t-ng-k-t-cu-c-thi-it-car-racing-l-n-th- vi-nam-2017