biến Theo datasheet chiều dài cụm sensor là 10.2mm
Hình 4.41 Kích thước sensor
Với bề dày line chọn 19mm, khi di chuyển cảm biến qua 1 đoạn 19-d (mm) thì ln có 2 cảm biến phát hiện line với giá trị analog (bên trái và chính giữa) như nhau nên khơng xác định được. Nếu như tiếp tục di chuyển trong vùng 2d-19 chỉ có 1 sensor phát hiện line nên cũng khơng được. Chọn 19-d = 2d-26 nên d = 12,67 (mm)
Vì ít nhất 2 sensor nằm trong đường line nên có 10.2 mm < d < 19mm. Để đảm bảo 93 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
nằm hồn tồn trong line và đủ xa để khơng bị chồng vùng làm việc, ta chọn khoảng cách cảm biến là 13 mm.
Chọn số cảm biến:
Ta nhận thấy khi sử dụng giải thuật xấp xỉ bậc 2 thì cần ít 3 cặp cảm biến để nhận dạng được tâm đường line. Vì thế giả sử khi tâm đường line trùng với tâm nội suy từ cảm biến thì cần 3 cặp cảm biến, đồng thời khi xe lệch về bên trái/phải ta cần thêm 1 cặp cảm biến ở mỗi bên để nhận dạng được phía lệch của xe. Từ lập luận trên ta nhận thấy với việc sử dụng 5 cảm biến ta hồn tồn có thể xác định được phía lệch của xe. Nhưng khi gặp các khúc cua thì việc sử dụng 5 cặp cảm biến sẽ dẫn đến việc ôm cua của xe trở nên khó khăn hơn do xe khơng nhận được tín hiệu cần thiết. Từ đó, ta tăng thêm mỗi bên của mạch cảm biến một cặp LED nên mạch cảm biến của ta sẽ sử dụng 7 cặp LED.
Hình 4.42 Kích thước dãy cảm biến
Mạch điện:
94 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.43 Mạch proteus cảm biến
Mạch PCB
Hình 4.44 Mạch PCB cảm biến
+ Kích thước bao mạch cảm biến theo 2 phương là: 92mm x 21mm
Mơ hình 3D:
Hình 4.45 Mơ hình 3D cảm biến
95 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
4.2.2 Lựa chọn và thiết kế mạch driver
- Nhóm sử dụng động cơ DC servo GA25 có thơng số điện áp hoạt động là 12V,công suất 4W, dịng lớn nhất motor chịu được là 0,9A có tốc độ 280rpm nên lựa chọn tham khảo motor driver L298N [41] có thơng số như sau:
Bảng 8 Thông số driver L298N
Driver
Điện áp cần cấp cho động cơ Dòng tối đa mỗi cầu H
Điện áp logic
Dịng điện của tín hiệu điều khiển Cơng suất hao phí
- Để thiết kế mạch driver, nhóm chọn IC L298N có tích hợp mạch ngun khối cầu H có các tranjitor NPN và opamp để so sánh tín hiệu đảo chiều động cơ khi cần thiêt.
96 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.40 Block diagram của IC L298N
Trong khối block diagram có 2 mạch cầu H. Xét nửa bên trái ta có chân 2,3 là 2 đầu động cơ, chân +Vss là nguồn nuôi các opamp, chân In1 In2 là hai chân xác đinh chiều của động cơ, chân EnA là chân quy định cầu A có hoạt động hay khơng. Cả 3 chân In1 In2 và EnA là 3 chân nhận tín hiệu từ vi điều khiển, nếu EnA lên mức ‘1’ thì cầu A hoạt động, chân In1 lên ‘1’ và chân In2 lên ‘0’ thì cầu H quay thuận, khi In2 lên ‘1’ và In1 lên ‘0’ thì động cơ quay chiều nghịch. Để điều chỉnh tốc độ động cơ cần cấp xung PWM vào chân EnA.
Mỗi khối block so sánh là các con opamp sau:
97 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Opamp so sánh, để chuyển trạng thái từ ‘Off’ lên ‘On’ thì chân ENA và INPUT phải có giá trị ‘HIGH’.
Ngược lại với opamp trên, để chuyển trạng thái từ ‘Off’ lên ‘On’ thì chân ENA phải ‘HIGH’ và chân INPUT phải ‘LOW’.
- Thiết kế mạch driver cần các linh kiện: IC L298N (hay chính là IC multiWatt 15), tụ điện, các diot chống ngược dòng và các điện trở. Tụ điện để lọc nhiễu do dòng điện qua động cơ ‘on’ ‘off’ liên tục khi sử dụng PWM, thứ 2 là chống dòng ngược.
98 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.41 Sơ đồ mạch driver proteus
99 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.42 Mơ hình 3D driver
4.2.3 Lựa chọn nguồn và mạch hạ ápMạch nguồn: Mạch nguồn:
- Yêu cầu: Khối driver sử dụng nguồn 12V, micro controller và các cảm biến ta sử dụng nguồn 5V, encoder dùng nguồn 3,3V.
- Cần cách ly mạch điều khiển và mạch động lực.
- Do đó dùng 2 pin 9V cấp nguồn cho mạch động lực và 1 pin 9V cấp nguồn cho mạch điều khiển.
Pin 9V
100 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.46 Datasheet Pin 9V Eveready Silver
Mạch hạ áp
+ Mạch hạ áp 18V thành 12V: tham khảo module hạ áp LM7812. Sử dụng chip IC7812, 2 tụ điện 0,33 và 0,1uF và 1 diode ngăn dòng ngược. IC7812 nhận giá trị điện áp đầu vào từ 14.2V đến 27V, dòng cực đại 2.2A
101 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.47 Block diagram module hạ áp LM7812 Sơ đồ mạch và kiểm tra
Hình 4.48 Sơ đồ mạch hạ áp 12V
+ Với điện áp đầu vào (D1(A)) là 18V mạch cho giá trị hiệu điện thế đầu ra là 12V. +Với mạch hạ áp 9V thành 5V cấp nguồn nuôi cho vi điều khiển sử dụng IC 7805, 2 tụ điện tương tự cho mạch hạ áp IC 7805.
Sơ đồ mạch và kiểm tra
102 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.46 Sơ đồ mạch hạ áp 5V
Với điện áp đầu vào (C1(A)) là 9V mạch cho giá trị hiệu điện thế đầu ra là 5V. + Với mạch hạ áp 5V thành 3,3V cấp nguồn nuôi cho vi điều khiển sử dụng IC LM 1117DT-3,3, 2 tụ điện âm dương 10uF cho mạch hạ áp IC LM 1117.
Sơ đồ mạch và kiểm tra
Hình 4.47 Sơ đồ mạch hạ áp 3,3V
Với điện áp đầu vào (5V-vdk) là 9V mạch cho giá trị hiệu điện thế đầu ra là 3,3V.
103 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
4.2.4 Thiết kế bộ điều khiển trung tâm4.2.4.1Yêu cầu vi điều khiển 4.2.4.1Yêu cầu vi điều khiển
Lựa chọn vi điều khiển
Theo như sơ đồ khối của hệ thống điều khiển cần 3 vi điều khiển bao gồm 1 slave điều khiển động cơ, 1 slave nhận tín hiệu từ cảm biến và xử lý và 1 master. Yêu cầu của vi điều khiển là:
- Đọc giá trị analog của 7 cảm biến.
- Đọc tín hiệu trả về từ encoder của động cơ. - Chân PWM để điều khiển động cơ.
- Giao tiếp giữa master và slave.
- Ngắt timer và ngắt ngồi để đọc tín hiệu từ encoder
Từ những yêu cầu trên nhóm sử dụng vi điều khiển Atmega328 với các thông số: - 8 kênh ADC 10 bit
- Giao tiếp: 1 UART, 1 I2C, 2 SPI
- 6 kênh PWM trong đó có 2 kênh tần số cao (62500Hz) - 2 kênh ngắt ngồi và 3 timer
Hình 4.48 Sơ đồ chân vi điều khiển Atmega 328
Các tiêu chí khác:
104 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
+ Giao tiếp Slaver 1: 7 chân đọc tín hiệu analog và giao tiếp
+ Giao tiếp Slaver 2: 4 chân logic và 2 chân PWM cho driver, giao tiếp và 2 chân ngắt ngoài encoder.
+ 1 Master giao tiếp với 2 Slaver
Kết luận: Nhóm chọn slaver 1 là atmega328P dạng TQFQ, master và slaver 2 là atmega328P dạng PDIP.
4.2.3.2 Chuẩn giao tiếp
- Giao tiếp master và slaver 1 là: RX, TX - Giao tiếp master và slaver 2 là: I2C
4.2.3.3 Thiết kế mạch điện
Hình 4.49 Sơ đồ mạch proteus mạch điều khiển trung tâm
105 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.50 PCB mạch điều khiển trung tâm
106 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.51 Model 3D mạch điều khiển trung tâm
Kết luận: Mạch khơng q phức tạp nên nhóm chọn phương pháp hàn tay mạch.
107 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
4.3 Mơ hình hố hệ thống
Vì xe có trọng lượng khơng đổi trong q trình di chuyển nên phần lực tác dụng theo phương thẳng đứng không đổi và xe chỉ chịu tác dụng của ngoại lực là lực ma sát, xe di chuyển trên sa bàn phẳng, không gồ ghề nên hầu như ngoại lực tác động vào xe không đổi => Chọn phân tích động học cho hệ thống.
4.3.1 Mơ hình động học của robot
Để thực hiện việc điều khiển xe bám được line tốt, ta tiến hành thực hiện mơ hình động học của hệ thống. Ta chọn mơ hình động học vì: sa bàn bằng phẳng, ngoại lực tác dụng xấp xỉ bằng 0, trọng lượng xe khơng đổi.
Trong mơ hình này bao gồm: Điểm tham chiếu R: chứa các thông tin về vị trí và hướng tiếp tuyến của line để robot bám theo, điểm M: trung điểm của đoạn thẳng nối tâm 2 bánh xe, điểm C là điểm tracking có thơng tin về vị trí và hướng hiện tại của robot
Hình 4.52 Mơ hình động học của mobile flatform
108 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Phương trình động học tại điểm M:
x˙
[φy
˙˙
Trong đó v và w là vận tốc dài và vận tốc góc của xe. Phương trình động học tại điểm C
{x˙C =v cos φ − ωd sin φ y˙C=v sin φ+ ωd cos φ
φ˙C=φ˙
Với d là khoảng cách từ M đến điểm tracking C.
Phương trình động học tại điểm R (điểm mong muốn của C trên line)
{x˙R=vR cos φR
y˙ R=vR sin φR
φ˙R=ωR
vR vận tốc mong muốn của mobile platform tại điểm tham chiếu. Ta có sai số động học:
{e1=( xR − xC ) cos φ+( yR − yC ) sin φ
e2=−( xR − xC ) sin φ+ ( yR − yC )cos φ e3 =φR − φ
Đạo hàm sai số động học, ta được:
1 ( ˙ R e˙ = x − x e˙2 ( ˙ R =− x { 109 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Do hệ thống phototransistor chỉ xác định được sai số theo phương pháp tuyến với phương chuyển động của xe. Do đó mơ hình động học của xe cần được giới thiệu lại với điểm C là tâm của dãy sensor, M là trung điểm hai bánh chủ động và là điểm tracking của xe. Giả sử xe sẽ chạy với vận tốc bằng vận tốc tham chiếu nên ta có e1 = 0. Mơ hình này được thể hiện trên Hình 4.52. Như vậy, để xác định được đầy đủ thơng tin về vị trí của điểm tracking so với tham chiếu, sai số e2 và e3 cần được xác định.
Hình 4.53 Mơ hình động học sử dụng cho robot dò line
110 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.54 Xác định sai số e3
Trên thực tế, e2 được xác định trực tiếp từ hệ thống sensor. Đối với e3, phương án xác định được đề xuất là cho robot di chuyển theo phương trước đó một đoạn ds đủ nhỏ để khi
nối 2 điểm RR’ tạo thành tiếp tuyến của đường cong (Hình 4.54). Khi đó, sai số e3 được xác định theo cơng thức.
e3=arctan ( e2 − e2'
)
ds
4.3.2 Tìm hàm truyền động cơ
Xác định số lần lấy mẫu và chu kì lấy mẫu:
Động cơ chạy với vận tốc tối đa là 280 rpm = 280/60 vòng/s = 14/3 vòng/s Suy ra f h = 14/3 vòng/s
Theo tiêu chuẩn lấy mẫu Nyquist thì: f s ≥2 f h = 28/3 ≈ 9.33 Hz
Chọn f s=50 Hz vì lý do phụ thuộc vào độ phân giải của encoder của động cơ.
111 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Số lần lấy mẫu cần thiết:
Với T s=0.02 s là thời gian lấy mẫu vận tốc động cơ
T h= 1
14
( 3 )
N là số lần lấy mẫu. Chọn giá trị N để m là số nguyên
Vậy N=75 là giá trị đầu tiên để m là số nguyên => Phải lấy mẫu vận tốc 75 lần với chu kì lấy mẫu là 0.02s
Các bước tìm hàm truyền động cơ:
Bước 1: Cấp PWM từ vi điều khiển cho động cơ, tăng dần giá trị này (ghi lại các giá trị
vận tốc khi tăng) đến khi động cơ đạt được vận tốc cực đại. Ta được hình sau:
Hình 4.55 Đồ thị vận tốc theo PWM
Nhận xét: đồ thị vận tốc động cơ theo PWM là khơng tuyến tính và có thể
dùng phương pháp xấp xỉ tuyến tính để xấp xỉ vận tốc theo PWM
Đồ thị trên với trục hoành là PWM (55), trục tung là tốc độ động cơ (rpm), đường màu xanh là giá trị đo được, đường màu đỏ là đường xấp xỉ tuyến tính.
Từ phương pháp xấp xỉ ta suy ra được phương trình vận tốc theo PWM là:
y=0.659 x +93.456
Từ kết quả phần mô phỏng ta thấy vận tốc động cơ cỡ khoảng 220 rpm nên ta sẽ sử dụng giá trị này để tìm hàm truyền và đáp ứng của động cơ khi chưa có bộ điều khiển PID.
Bước 2: Tìm hàm truyền khi chưa có bộ điều khiển PID.
Với v = 220 rpm thì PWM = (223.456)/0.659 = 192
Với chu kì lấy mẫu là 0.02s và số lần lấy mẫu là 75 lần ta đo các kết quả sau
Hình 4.56 Dữ liệu tìm hàm truyền khi chưa có bộ điều khiển PID
113 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Bước 3: Đo vận tốc theo thời gian
Hình 4.57 Đồ thị vận tốc theo thời gian khi chưa có bộ điều khiển PID
Trục hồnh là thời gian (s) trục tung là vận tốc động cơ (rpm) với vận tốc tham chiếu là 220 rpm
Bước 4: Dùng cơng cụ Ident của Matlab để tìm hàm truyền:
114 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.58 Cơng cụ Ident của Matlab
Chọn Time-Domain Signals để chọn nhập dữ liệu trong miền thời gian. Input: nhập mảng 1 chiều có giá trị của các phần tử là vận tốc tham chiếu. Output: nhập mảng 1 chiều là giá trị vận tốc của động cơ.
Starting time = 0, Sample time = 0.02.
115 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.59 Giao diện xấp xỉ hàm truyền của Matlab
116 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Hình 4.60 Hàm truyền khi chưa có bộ điều khiển PID
Ở bước này cần chọn số Poles sao cho độ chính xác xấp xỉ cao nhất có thể và ở 2 động cơ bài này có độ chính xác là 87.2% và 91%.
117 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Bảng 9 Hàm truyền động cơ trước khi có PID
Động cơ trái
Động cơ phải
4.3.3 Thiết kế bộ điều khiển
4.3.3.1 Tiêu chí thiết kế bộ điều khiển
Tiêu chí chọn bộ điều khiển PID:
- Thời gian xác lập của động cơ < 0,15s (để đảm bảo chu kì lấy mẫu của bộ điều khiển bám line).
118 | P a g e TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
- Sai số xác lập < 5%.
Tiêu chí chọn bộ điều khiển tracking:
- Sai số bám line = ± 18mm.
4.3.3.2 Lý do lựa chọn và phương trình bộ điều khiển
- Thiết kế bộ điều khiển PID để điều khiển vận tốc cho động cơ: Có thể mơ phỏng,
dự đốn và thay đổi được đáp ứng của động cơ khi áp dụng bộ điều khiển, là bộ điều khiển phổ biến để điều khiển realtime, dễ dàng đưa giải thuật điều khiển vào vi điều khiển.
Phương trình bộ điều khiển PID là:
Rời rạc hóa phương trình trên dể đưa giải thuật điều khiển vào code vi điều khiển:
Value (k )=Value (k −1)+ K p (e (k )− e ( k − 1))+ Ki e (k )+ K d ¿
Các bước tìm hàm truyền và hệ số PID
Bước 1: Dùng PID Tuner của Matlab để xác dịnh các hệ số PID
Tiêu chí để chọn bộ điều khiển là thời gian xác lập T settling< 0.15 s (để đảm bảo chu kì lấy mẫu của bộ điều khiển bám line)
Hình 4.61 Hệ số PID và đồ thị đáp ứng
Kp = 1.4268; Ki = 28.9187; Kd = 0
Bước 2: Sau khi có các hệ số PID, đưa các hệ số này vào code và nạp cho vi điều khiển
và đo lại vận tốc động cơ sau khi có bộ điều khiển PID
Hình 4.62 Dữ liệu và đồ thị đáp ứng động cơ sau khi có PID
Đồ thị vận tốc theo thời gian khi có bộ điều khiển PID.