TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Cùng với sự phát triển của khoa học kĩ thuật, các phương pháp điều khiển từ kinh điển đến hiện đại, điều khiển thông minh ra đời Hầu hết các đối tượng như cánh tay máy, con lắc ngược… đều được giải quyết bởi các bài toán ổn định hệ thống với chất lượng tốt nhất Các phương pháp này ngày càng được nghiên cứu, phát triển, ứng dụng rộng rãi, góp phần tăng chất lượng, độ ổn định của hệ thống Hệ thống “Ball and Beam” là một mô hình thực nghiệm quen thuộc, với cấu tạo vật lý khá đơn giản nhưng tương đối phức tạp về mặt động lực học Nó có độ bất ổn định cao và là cơ sở để tạo ra các hệ thống tự cân bằng như: hệ thống phóng tên lửa, cân bằng máy bay theo phương ngang… Đây là đối tượng thường được các nhà nghiên cứu lựa chọn để kiểm chứng những thuật toán điều khiển của mình, từ những thuật toán điều khiển cổ điển đến những thuật toán điều khiển hiện đại, điều khiển thông minh Các nghiên cứu về điều khiển hệ thống Ball and Beam đã được tiến hành khá sớm, xuất phát từ nhu cầu thiết kế các hệ thống điều khiển cân bằng tên lửa trong giai đoạn đầu phóng Trên phương diện nghiên cứu các kỹ thuật điều khiển thực, hệ Ball and Beam đại diện cho lớp các đối tượng phi tuyến phức tạp
Tôi quyết định chọn đề tài “Thiết kế bộ điều khiển PID giữ ổn định viên bi sắt trên thanh cân bằng” nhằm nghiên cứu kỹ hơn về mô hình Ball and Beam, lý thuyết điều khiển PID, ứng dụng điều khiển PID trong điều khiển hệ có độ mất ổn định cao.
MỤC TIÊU CỦA ĐỀ TÀI
Tìm hiểu mô hình hệ thống Ball and Beam và thiết kế được mô hình thực tế của hệ thống Thiết kế được bộ điều khiển PID để điều khiển hệ thống trên để viên bi sắt có thể cân bằng trên thanh Mô phỏng kiểm tra bộ điều khiển và sau đó đưa vào mô hình thực tế để kiểm chứng với viên bi sắt hệ thống có thể ổn định được hay không Ngoài ra mô hình có thể được áp dụng cho việc dạy học.
NỘI DUNG THỰC HIỆN
- Tìm hiểu nguyên lý giữ ổn định viên bi sắt trên thanh.
- Thiết kế và mô phỏng thuật toán điều khiển PID bằng MatLab.
- Thử nghiệm thuật toán trên hệ thống thực nghiệm.
- Đánh giá tính ổn định của bộ điều khiển.
KẾ HOẠCH THỰC HIỆN
Tuần Nội dung hướng dẫn
Tìm hiểu nguyên lý giữ ổn định viên bi sắt trên thanh.
Thiết kế và mô phỏng thuật toán điều khiển PID bằng MatLab.
Thiết kế và mô phỏng thuật toán điều khiển PID bằng MatLab
Từ: 13/9 Đến: 19/9 Chuẩn bị vật tư, linh kiện, phụ kiện
Chuẩn bị vật tư, linh kiện, phụ kiện (tiếp tục)
Từ: 27/9 Đến: 3/10 Lập trình thuật toán cho hệ thống thực nghiệm.
Từ: 4/10 Đến: 10/10 Lập trình thuật toán cho hệ thống thực nghiệm (tiếp tục).
Triển khai lắp ráp và lắp đặt thử nghiệm.
Từ: 18/10 Đến: 24/10 Triển khai lắp ráp và lắp đặt thử nghiệm (tiếp tục).
Từ: 25/10 Đến: 31/10 Đo đạc các thông số và kiểm chứng kết quả mô phỏng thông qua khảo sát hệ thống thực tế.
Từ: 1/11 Đến: 7/11 Đo đạc các thông số và kiểm chứng kết quả mô phỏng thông qua khảo sát hệ thống thực tế (tiếp tục).
Từ: 8/11 Đến: 30/11 Viết báo cáo kết quả thực hiện đồ án
THIẾT KẾ HỆ THỐNG
Thiết kế hệ thống
Thiết kế sơ đồ khối như hình 2.1
Hình 2.1: Sơ đồ khối hệ thống
Khối nguồn: Đúng theo nguyên tắc điều khiển, hệ thống sẽ có 2 nguồn riêng biệt gọi là nguồn điều khiển và nguồn công suất Nguồn điều khiển là nguồn cấp điện cho bộ điều khiển, khối cảm biến thông thường có mức điện áp khoản 3,3-6 VDC Trong khi đó nguồn công suất là nguồn cấp cho Driver, các động cơ, điện áp của nguồn này phụ thuộc vào điện áp của động cơ hoạt động.
Khối bộ điều khiển: Là trung tâm xử lý tín hiệu nhận về, sau đó xử lý và xuất lệnh thực thi sao cho động cơ quay đúng góc làm viên bi về vị trí cân bằng.
Khối cảm biến: Dùng để nhận biết vị trí của viên bi khi thanh nghiên.
Khối công suất: Đây là l khối driver Driver là một mạch điện có khả năng nhận xung điều khiển (thường là xung PWM) từ bộ điều khiển và xuất ra điện áp để điều khiển tốc độ thanh Driver là khối rất quan trọng của hệ thống, bởi nó là một trong những yếu tố quan trọng ảnh hưởng tới độ chính xác của việc điều khiển.
Phân tích hệ thống
2.2.1 Phân tích hệ thống Ball and Beam
Viên bi lăn trên thanh trượt dưới tác động của lực hấp dẫn Thanh được nghiên từ một mômen xoắn bên ngoài để kiểm soát vị trí của viên bi trên thanh Trước tiên chúng ta xác định một tập hợp các tọa độ tổng quát mô tả đầy đủ hệ thống. Các tọa độ tổng quát được định nghĩa là: q(t)=[ r θ (t (t ) ) ] (3)
Với r(t) là vị trí của viên bi trên thanh và θ(t) là góc nghiêng của thanh so với phương ngang
Phương trình Lagrange có dạng:
L=K−U (4) Với K là động năng và U là thế năng của hệ thống Để thuận tiện cho việc tính toán K và U, chúng ta xác định tọa độ Descartes x(t) và y(t) như trong hình 2.2.
Hình 2.2: Tọa độ Descartes và tọa độ tổng quát
Phương trình động năng của thanh có dạng:
Với J là mô-men quán tính của thanh, θ ´ là tốc độ góc.
Phương trình động năng của viên bi có dạng:
Với b là tốc độ góc của viên bi và v b là vận tốc dài của viên bi
Vận tốc góc b có thể biểu diễn dưới dạng (mối liên hệ giữa vận tốc góc và vận tốc dài của chuyển động tròn): θ´ b =´r
Với R là bán kính của viên bi.
Chúng ta tính v b theo tọa độ tổng quát: v b 2
=´x 2 + ´y 2 (8) x=rcos(θ) (9) ´x=´rcos(θ)−rθ´sin(θ) (10) ´x 2 =´rcos 2 (θ)−2rr´cos(θ)sin(θ)+r 2 θ´ 2 sin 2 (θ) (11) y=rsin(θ) (12) ´y=´rsin(θ)+rθ´cos(θ) (13) ´y 2 =´r 2 sin 2 (θ)+2r´r θcos(θ)sin(θ)+r 2 θ´ 2 cos 2 (θ) (14) v b 2 =´r 2 +r 2 θ´ 2 (15)
Thay phương trình (7) và (14) vào (6) chúng ta có được động năng của viên bi theo hệ tọa độ tổng quát:
Thế năng của hệ thống có dạng:
Thay phương trình (5), (16) và (17) vào (4), Lagrange của hệ thống có dạng:
Phương trình vi phân Lagrange thứ nhất có dạng: d dt ( ∂ L ∂r´) − ∂ L ∂r=0 (19) Tính toán phương trình trên từng bước:
Thay phương trình (21) và (22) vào (19), chúng ta có được phương trình chuyển động đầu tiên của hệ thống Ball and Beam:
Phương trình vi phân Lagrange thứ hai có dạng: d dt ( ∂ L ∂θ´ ) − ∂ L ∂ θ =τ (24)
Với τ là mô-men xoắn tác động vào thanh.
Thay phương trình (26) và (27) vào (24), chúng ta có được phương trình chuyển động thứ hai của hệ thống Ball and Beam:
(m r 2 +J)θ+2´ mr´rθ+mgr´ cos(θ)=τ (28) Vậy phương trình (23) và (28) là phương trình chuyển động của hệ thống Ball and Beam:
{ ( mr ( R J 2 b 2 + +m J ) θ+ ´ ) r ´ + 2mr mgsin ´ r θ ´ +mgr (θ )−mr cos θ ´ 2 (θ =0 )=τ
Tuyến tính hóa phương trình (23) về góc nghiêng của thanh ngang, lúc đó góc θ sẽ rất nhỏ ( sin ) và tốc độ góc cũng sẽ rất nhỏ nên ta sẽ bỏ qua Chúng ta được xấp xỉ tuyến tính gần đúng của hệ thống:
( J R b 2 +m ) ´ r=mgθ (29) Áp dụng phép biến đổi Laplace cho phương trình trên, ta được hàm truyền mối quan hệ giữa góc của thanh với vị trí của viên bi:
2.2.2 Phân tích động cơ điện
Một thiết bị truyền động phổ biến trong các hệ thống điều khiển là động cơ
Mô hình động cơ điện DC được biểu diễn như hình 2.3.
Hình 2.3: Mô hình động cơ điện
Hình 2.3 là sơ đồ mạch điện tương đương của động cơ điện một chiều với các ký hiệu được mô tả như bảng 2.1: i
Ký hiệu Đơn vị Ý nghĩa
J kg*m 2 Mô-men quán tính của
L H Điện cảm phần ứng i A Dòng điện phần ứng
V b V Sức điện động phần ứng θ Arc Góc quay của trục động cơ b Nms Hệ số giảm chấn
Mt Nm Mô-men tải ω rad/s Tốc độ quay của động cơ
Hệ số sức điện động cảm ứng
K t Nm/A Hệ số Mô-men Áp dụng định luật Kirchoff cho mạch hình 2.3 ta có phương trình sau:
Với K b là hệ số sức điện động cảm ứng, hệ số động cơ (V/rad/s) và là từ thông kích từ (xem như =1).
L ( − Ri+V (t )−K b dθ dt ) (34) Áp dụng định luật II Newton cho chuyển động quay của trục động cơ:
Mà ( )M t K I t t ( ) và Mt t ( ) 0 (động cơ quay không tải) (37) Với K t là hệ số mô men (Nm/A).
Biến đổi Laplace 2 phương trình (34) và (38) ta được:
Hàm truyền giữa vị trí góc và điện áp đặt vào động cơ ta được: (K b K t )
Giả sử thông số động cơ dùng trong mô phỏng như bảng 2.2
Bảng 2.2: Thông số động cơ dùng cho mô phỏng
Mô-men quán tính Rotor kg.m /s 2 2 0,043
Hệ số giảm chấn Nms 1,53 Điện trở Rotor 4,7 Điện cảm Rotor H 0,016
Hệ số sức điện động Nm/A 4,91
Thay vào phương trình (41) ta được:
Thiết kế phần cứng
Thiết kế sơ đồ nguyên lý hệ thống Ball and Beam như hình 2.6.
Hình 2.4:sơ đồ nguyên lý hệ thống
Trước khi đặt viên bi lên thanh ta phải chọn điểm cân bằng distance_setpoint đầu tiên Khi đặt viên bi lên vị trí bất kì của thanh ngang, cảm biến sẽ đảm nhận vai trò lấy vị trí (distance) của viên bi về cho bộ điều khiển Arduino Uno R3. Cùng với giải thuật điều khiển PID bộ điều khiển sẽ phát xung cho động cơ quay làm thanh nghiên theo để viên bi về được vị trí cân bằng.
Sơ đồ đấu nối mạch điện được vẽ trong Protus như hình 2.5.
Hình 2.5: sơ đồ mạch điện
2.3.4 Các thiết bị thành phần
Mạch điều khiển Arduino Uno R3 như hình 2.6
Thông số kỹ thuật Arduino R3 như bảng 2.3
Bảng 2.3: Bảng thông số kỹ thuật của Arduino R3
8 họ 8bit Điện áp hoạt động 5V Điện áp vào (đề nghị) 7V-15V Điện áp vào (giới hạn) 6V-20V
Cường độ dòng điện trên mỗi 3,3V pin 50 mA Cường độ dòng điện trên mỗi I/O pin 30 mA
14 chân digital (trong đó có 6 chân có thể được sử dụng như những chân PWM là chân số 3, 5, 6, 9, 10, và 11).
Module cảm biến Siêu âm HC-SR04 Để nhận biết được vị trí của viên bi ta cần phải có cảm biến Cảm biến khoảng cách siêu âm HC-SR04 được sử dụng rất phổ biến để xác định khoảng cách vì giá thành rẻ và chính xác Cảm biến sử dụng sóng siêu âm và có thể đo khoảng cách trong khoảng từ 2 đến 300 cm, với độ chính xác gần như chỉ phụ thuộc vào cách lập trình.
Cảm biến HC-SR04 ngoài thực tế như hình 2.7
Thông số kỹ thuật cảm biến HC-SR04 như bảng 2.4
Bảng 2.4: Thông số kỹ thuật của HC-SR04 Điện áp làm việc: 5 VDC
Tần số hoạt động: 40 KHz
Dòng tĩnh điện Nhỏ hơn 2 mA
Góc cảm biến Không quá 15 độ
Khoảng cách phát hiện 2 – 300 cm Độ chính xác ± 0,3 cm
Tớn hiệu chõn Trig (đầu vào) Tối thiểu 10às xung TTL Tín hiệu chân Echo (đầu ra) TTL PWL
Sơ đồ nguyên lý hoạt động cảm biến HC-SR04 như hình 2.8 Để đo khoảng cỏch, ta sẽ phỏt 1 xung rất ngắn (5 microSeconds-às) từ chân Trig Sau đó, cảm biến sẽ tạo ra 1 xung HIGH ở chân Echo cho đến khi nhận lại được sóng phản xạ ở chân này Chiều rộng của xung sẽ bằng với thời gian sóng siêu âm được phát từ cảm biển và quay trở lại
Tốc độ của âm thanh trong không khí là 340 m/s (hằng số vật lý), tương đương với 29,412 cm/ms (10 6 / (340.100)) Khi đã tính được thời gian, ta sẽ chia cho 29,412 để nhận được khoảng cách.
Hình 2.8: Sơ đồ nguyên lý hoạt động của HC-SR04 Động cơ RC-Servo MG995 như hình 2.9 Để đơn giản cho việc điều khiển ta sử dụng động cơ RC-Servo cho mô hình thực tế của hệ thống Ball and Beam Động cơ RC Servo MG995 là loại thường được sử dụng nhiều nhất trong các thiết kế Robot hoặc dẫn hướng xe Động cơ RC Servo MG995 có lực kéo mạnh, các khớp và bánh răng được làm hoàn toàn bằng kim loại nên có độ bền cao, động cơ được tích hợp sẵn Driver điều khiển động cơ bên trong theo cơ chế phát xung - quay góc nên rất dễ sử dụng.
Hình 2.9: Động cơ RC Servo MG995
Thông số kỹ thuật động cơ MG995 như bảng 2.5
Bảng 2.5: Thông số kỹ thuật RC Servo MG995
11kg / cm (6V) Tốc độ xoay 0,17 60 s ο (4,8 V),
Nhiệt độ hoạt động 0 ℃ - 55 ℃ - 55 ℃ - 55 ℃ Vật liệu bánh răng Kim loại
Cấu tạo của Servo MG995 như hình 2.10
Bên trong một servo cổ điển có bốn thành phần chính, động cơ DC, hộp số, biến trở và mạch điều khiển Động cơ DC có tốc độ cao và mô-men xoắn thấp nhưng hộp số giảm tốc độ xuống khoảng 60 vòng / phút, đồng thời tăng mô-men xoắn.
Hình 2.10: Cấu tạo Servo MG995
Chiết áp được gắn trên bánh răng cuối cùng hoặc trục đầu ra, do đó động cơ cũng quay chiết áp, tạo ra một điện áp liên quan đến góc tuyệt đối của trục đầu ra Trong mạch điều khiển, điện áp chiết áp này được so sánh với điện áp đến từ đường tín hiệu Nếu cần, bộ điều khiển kích hoạt mạch cầu H tích hợp cho phép động cơ quay theo hai hướng cho đến khi hai tín hiệu đạt mức chênh lệch bằng không. Động cơ servo được điều khiển bằng cách gửi một loạt các xung qua đường tín hiệu Tần số của tín hiệu điều khiển phải là 50Hz hoặc một chu kỳ xung là
20ms Độ rộng của xung xác định vị trí góc của servo và các loại servo này thường có thể xoay 180 độ (chúng có giới hạn vật lý khi di chuyển).
Sơ đồ điều chỉnh góc quay động cơ Servo MG995 như hình 2.11
Hình 2.11: Sơ đồ góc quay của RC Servo MG995
Các xung có độ rộng 0,5ms tương ứng với vị trí 0 độ, 1,5 ms với vị trí 90 độ và 2,5 ms với vị trí là 180 độ
+ Thanh ngang như hình 2.12 : Thanh ngang được thiết kế hình chữ V Mục đích của tạo hình chữ V là để tăng mặt tiếp xúc của viên bi lên thanh.
Hình 2.12: Thanh ngang trên SolidWork
+ Giá đỡ thanh ngang như hình 2.13: Để động cơ không chịu tải từ trọng lượng của thanh nên giá để thanh có 2 trục đỡ Ngoài ra còn có 2 lỗ tròn trên trục dùng để đặt ổ bi vào để khi xoay, thanh không ma sát với trục giá đỡ
Hình 2.13: Giá đỡ thanh trên SolidWork
+ Gá động cơ như hình 2.14 : Dùng để giữ cố định động cơ.
Hình 2.14: Gá động cơ trên SolidWork
+ Gá cảm biến như hình 2.15 : Dùng để cố định cảm biến.
Hình 2.15: Gá cảm biến trên SolidWork
+ Mô hình hoàn chỉnh như hình 2.16 :
Hình 2.16: Mô hình hoàn chỉnh trong môi trường Assembly SolidWork
Ta dùng 2 ổ bi để giảm bớt ma sát giữa trục của thanh và giá đỡ thanh Ngoài ra dùng thêm sạc-líp để khóa 2 ổ bi không rơi khỏi giá khi hệ thống đang hoạt động.
Thiết kế phần mềm
Thiết kế lưu đồ thuật toán của hệ thống như hình 2.17
Hình 2.17: lưu đồ thuật toán Đầu tiên ta khai báo các biến, các thống số và giá trị đặt mong muốn, sau đó cảm biến sẽ đọc tín để đo khoảng cách của viên bi so với giá trị đặt, tiếp theo bộ PID sẽ hoạt động giúp xác định góc quay từ đó truyền tín hiệu đến Servo để quay, sau khi Servo quay nếu khoảng cách của viên bi lúc đó bằng với giá trị đặt thì kết thúc chương trình, nếu sai thì quay lại bước đọc tín hiệu.
Truy cập địa chỉ http://arduino.cc/en/Main/Software/ Đây là nơi lưu trữ cũng như cập nhật các bản IDE của Arduino Bấm vào mục Windows ZIP file for non admin install như hình 2.18.
Hình 2.18: Trang tải phần mềm Arduino IDE
+ Cài đặt Driver cho Arduino: Để máy tính của bạn và board Arduino giao tiếp được với nhau, chúng ta cần phải cài đặt driver trước tiên.
Nếu bạn dùng Windows 8, trong một số trường hợp Windows không cho phép bạn cài Arduino driver (do driver không được ký bằng chữ ký số hợp lệ).
Do vậy bạn cần vào Windows ở chế độ Disable driver signature enforcement thì mới cài được driver.
Các bạn chạy file arduino-1.6.4\drivers\dpinst-x86.exe (Windows x86) hoặc arduino-1.6.4\drivers\dpinst-amd64.exe(Windows x64) Cửa sổ “Device
Driver Installation Wizard” hiện ra, chọn Next để tiếp tục, như hình 2.19.
Hình 2.19: Cửa sổ cài đặt Arduino IDE
+ Giao diện phần mềm như hình 2.20 :
Hình 2.20: Giao diện Arduino IDE
Bao gồm các nút lệnh menu (File, Edit, Sketch, Tools, Help) Phía dưới là các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE được miêu tả như sau:
Bạn sẽ viết các đoạn mã của mình tại đây Tên chương trình của bạn được hiển thị ngay dưới dãy các Icon, ở đây nó tên là “Blink” Để ý rằng phía sau tên chương trình có một dấu “§” Điều đó có nghĩa là đoạn chương trình của bạn chưa được lưu lại.
Những thông báo từ IDE sẽ được hiển thị tại đây Để ý rằng góc dưới cùng bên phải hiển thị loại board Arduino và cổng COM được sử dụng Luôn chú ý tới mục này bởi nếu chọn sai loại board hoặc cổng COM, bạn sẽ không thể upload được code của mình.
Khi lập trình, các bạn cần chọn port (cổng kết nối khi gắn board vào) và board(tên board mà bạn sử dụng) Giả sử, bạn đang dùng mạch Arduino Uno, và khi gắn board này vào máy tính bằng cáp USB nó được nhận là COM4 thì bạn chỉnh như thế này là có thể lập trình được.
Matlab là một ngôn ngữ lập trình thực hành bậc cao được sử dụng để giải các bài toán về kỹ thuật Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình trên giao diện làm việc rất dễ dàng cho người sử dụng.
Truy cập vào link https://www.mathworks.com/downloads/web_downloads/ Để tải phần mềm Matlab Đây là nơi cập các phiên bản mới nhất của Matlab. MathWorks cung cấp các sản phẩm bản quyền, phiên bản dùng thử và phiên bản cho học sinh
Giao diện tải như hình 2.21
Hình 2.21: Trang tải phần mềm Matlab
+ Giao diện của Matlab như hình 2.22
Matlab phát triển IDE (môi trường phát triển tích hợp) có thể khởi chạy từ biểu tượng tạo trên màn hình desktop Cửa sổ làm việc chính trên Matlab được gọi là desktop Khi Matlab bắt đầu chạy, desktop sẽ hiển thị trong layout mặc định:
Hình 2.22: Cửa sổ làm việc của Matlab
Desktop có các bảng dưới đây:
Current Folder: Bảng này cho phép người dùng truy cập thư mục và các file dự án.
Command Window: Đây là khu vực chính, nơi mà các lệnh được nhập vào tiện ích dòng lệnh Cửa sổ này nhận diện bởi dấu (>>).
Workspace: Workspace hiển thị tất cả các biến tạo ra hoặc nhận từ cái file.
Simulink là một công cụ để mô phỏng các hệ thống động với giao diện đồ họa trực quan được phát triển đặc biệt cho mục đích này Trong môi trường Matlab, Simulink là một bộ công cụ Matlab, Simulink là một bộ công cụ Matlab nhưng khác với các bộ công cụ khác cả giao diện và kỹ thuật lập trình liên quan đến nó Trong phần Command Window của Matlab gõ lệnh “simulink" để có thể sử dụng.
Giao diện Simulink như hình 2.23.
Hình 2.23: Giao diện Simulink Để mô phỏng các hệ thống ta cần có các khối mô tả thành phần trong hệ thống, các khối này được lấy từ thư viện có sẵn trong Simulink như hình 2.24.
KIỂM THỬ, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN
Mô phỏng Matlab
3.1.1 Khảo sát thông số PID trên Matlab Simulink
Muốn khảo sát được sự ảnh hưởng của các thông số PID ta đùng Matlab Simulink.
Thiết kế sơ đồ vòng kín của hệ thống trên Matlab Simulink như hình 3.1.
Hình 3.1: Sơ đồ vòng kín hệ thống
G(s) là hàm truyền của hệ thống là:
(43) C(s) là hàm truyền bộ điều khiển PID:
C(s)=Kp+Ki s +Kd s=Kp s+Ki+Kd s 2 s (44)
Chọn các hệ số PID bằng phương pháp thực nghiệm với mô hình:
Bảng 3.1: Thông số dùng trong hàm truyền của hệ thống
Ký hiệu Giá trị Đơn vị m 0,058 kg
Khả o sát thông số Kp:
Cho thông số Kp lần lượt là: Kp=1, Kp=2 và Kp=3:
Khi Kp=1 ta được đồ thị như hình 3.2
Hình 3.2: đồ thị khảo sát thông số Kp=1
Ta thấy với khoảng thời gian 5 giây đồ thị giao động có độ vọt lố khá cao và giao động quanh điểm đặt ít.
Khi tăng Kp=2 ta được đồ thị như hình 3.3
Hình 3.3: đồ thị khảo sát thông số Kp=2
Ta thấy đồ thị hầu như vẫn giữ nguyên độ vọt lố tùy nhiên đồ thị giao động quanh điểm đặt đã tăng lên.
Và cuối cùng tăng Kp=3 ta được đồ thị như hình 3.4
Hình 3.4: đồ thị khảo sát thông số Kp=3
Tương tự khi Kp=2 ta thấy độ vọt lố vẫn giữ nguyên, và giao động quanh điểm đặt tăng lên.
Nhận xét: ta nhận thấy với các giá trị Kp thì khi Kp = 3 viên bi sẽ dao động quanh vị trí đặt nhanh nhất nhưng bù lại độ vọt lố cao.
hệ thống bất ổn định. khảo sát thông số Kp và Ki:
Ta chọn Kp=3 và cho thông số Ki lần lượt là: Ki=1, Ki=3 và Ki=5:
Khi Ki=1 ta được đồ thị như hình 3.5
Hình 3.5: đồ thị khảo sát thông số Kp=3, Ki=1
Tăng Ki=3 ta được đồ thị như hình 3.6
Hình 3.6: đồ thị khảo sát thông số Kp=3, Ki=3
Tương tự như Ki=1, đồ thị có độ vọt lố tăng theo thời gian khá lớn.
Nhận xét: ta nhận thấy với giá trị Ki càng tăng thì độ vọt lố của hệ tăng theo thời gian, vì vậy ta không nên tăng Ki cho hệ thống này.
hệ thống bất ổn định.
Khả o sát thông số Kp, Kd:
Ta chọn Kp=3 và cho thông số Kd lần lượt là: Kd=1, Kd=4 và Kd=7:
Khi Kd=1 ta được đồ thị như hình 3.7
Hình 3.7: đồ thị khảo sát thông số Kp=3, Kd=1 Độ vọt lố giảm đi rất nhiều, tùy nhiên thời gian đáp ứng vẫn còn chậm.
Khi tăng Kd=4 ta được đồ thị như hình 3.8
Hình 3.8: đồ thị khảo sát thông số Kp=3, Kd=4
Tương tự khi Kd=1, càng tăng Kd độ vọt lố càng giảm và thời gian đáp ứng cũng giảm theo.
Khi tăng Kd=7 ta được đồ thị như hình 3.19
Hình 3.9: đồ thị khảo sát thông số Kp=3, Kd=7
Ta nhận thấy với các giá trị Kd = 7 thì độ vọt lố của hệ thống là thấp, thời gian đáp ứng nhanh và hệ ổn định.
Kết luận: càng tăng thông số Kp thì vị trí viên bị sẽ giao động quanh điểm đặt càng nhanh nhưng lại làm tăng độ vọt lố nên ta phải tăng thông số Kd để giúp giảm độ vọt lố đồng thời làm hệ ổn định.
Khả o sát thông số Kp, Ki, Kd:
Cho thống số Kp=1, Ki=1, Kd=1 ta được đồ thị như hình 3.10
Hình 3.10: đồ thị khảo sát thông số Kp=1, Ki=1, Kd=1
Ta thấy độ vọt lố của hệ không lớn, tuy nhiên vào nửa cuối thời gian thì đồ thị lại không đạt được đến giá trị đặt đồng thời giao động quanh điểm đặt cũng thấp.
Ta tăng Kp=2 và giữ nguyên Ki và Kd ta được đồ thị như hình 3.11
Hình 3.11: đồ thị khảo sát thông số Kp=2, Ki=1, Kd=1 Độ vọt lố của đồ thị không cao, vẫn còn một khoảng thời gian đồ thị không đạt đến điểm đặt, thời gian đáp ứng lâu.
Ta tăng Kp=3 và giữ nguyên Ki và Kd ta được đồ thị như hình 3.12
Hình 3.12: đồ thị khảo sát thông số Kp=3, Ki=1, Kd=1
Khi tăng Kp cao thì ta thấy độ vọt lố cao, thời gian đáp ứng của lệ khá lâu. Tiếp theo tăng Ki và giữ nguyên Kp=3 và Kd=1 ta được đồ thị như hình 3.13
Hình 3.13: đồ thị khảo sát thông số Kp=3, Ki=2, Kd=1
Tăng Ki làm tăng độ vọt lố và làm cho hệ mất ổn định.
Hình 3.14: đồ thị khảo sát thông số Kp=3, Ki=3, Kd=1
Vậy ta thấy khi tăng Ki không khử được độ vọt lố, đồng thời cũng làm cho hệ mất ổn định vì có khoảng thời gian hệ không đạt đến điểm đặt.
Từ đó ta không nên tăng Ki nên ta giữ giá trị Ki=1.
Tiếp tục tăng Kd=2 với Kp=3, Ki=1 ta được đồ thị như hình 3.15
Hình 3.15: đồ thị khảo sát thông số Kp=3, Ki=1, Kd=2 Đồ thị cho thấy độ vọt lố thấp, hệ ổn định tuy nhiên thời gian đáp ứng vẫn còn khá chậm.
Tăng Kd=3 ta được đồ thị như hình 3.16
Hình 3.16: đồ thị khảo sát thông số Kp=3, Ki=1, Kd=3
Tăng Kd độ vọt lố tiếp tục giảm tuy nhiên thời gian đáp ứng vẫn chậm.
Kd=4 ta được đồ thị như hình 3.17
Hình 3.17: đồ thị khảo sát thông số Kp=3, Ki=1, Kd=4
Sau khi tăng Kd ta thấy hệ khử được độ vọt lố tuy nhiên vẫn không làm giảm được thời gian đáp ứng của hệ.
đáp ứng hệ thống chậm và hệ không ổn định.
3.1.2 Kịch bản thử nghiệm mô phỏng Đầu tiên thiết kế các khối thành phần có trong hệ thống trên Simulink.
Thiết kế các khối và mô phỏng
Kịch bản 1: Hệ thống khi chưa có bộ điều khiển:
Bước 1: Vẽ sơ đồ khối hệ thống trên Matlab Simulink như hình 3.18.
Hình 3.18: Sơ đồ khối hệ thống chưa có bộ điều khiển
Bước 2: Gắn giá trị đầu vào cho tham số vị trí cân bằng.
Bước 3: Quan sát kết quả và phân tích đánh giá.
Với giá trị cân bằng là 18 cm, ta có được kết quả mô phỏng như Hình 3.19
Hình 3.19: Mô phỏng hệ thống khi chưa có bộ PID
Ta thấy rằng khi không có bộ điều khiển viên bi lăn qua giá trị đặt và lăn tiếp về phía bên trái của thanh và hệ thống không đưa viên bi về lại vị trí đặt Vậy phải cần có bộ điều khiển để viên bi có thể luôn ở vị trí cân bằng.
Kịch bản 2: Hệ thống khi có bộ điều khiển P
Bước 1: Vẽ sơ đồ khối hệ thống trên Matlab Simulink như hình 3.20.
Hình 3.20: Sơ đồ khối hệ thống với bộ điều khiển P
Bước 2: Gắn giá trị đầu vào cho tham số vị trí cân bằng.
Bước 3: Quan sát kết quả và phân tích đánh giá.
+ Kết quả mô phỏng như hình 3.21
Hình 3.21: Mô phỏng hệ thống với Kp
Với bộ điều khiển P làm hệ thống luôn dao động quanh vị trí đặt 18 và với biên độ lớn nhất là 36 Đáp ứng của hệ thống dao động, độ vọt lố cao có nghĩa là viên bi luôn lăn qua lại vị trí cân bằng và không thể đứng yên tại vị trí cân bằng. Như vậy cần phải thêm bộ điều khiển vi phân để làm giảm độ vọt lố.
Kịch bản 3: Hệ thống khi có bộ điều khiển PD
Bước 1: Vẽ sơ đồ khối hệ thống trên Matlab Simulink như hình 3.22.
Hình 3.22: Sơ đồ khối hệ thống với bộ điều khiển PD
Bước 2: Gắn giá trị đầu vào cho tham số vị trí cân bằng.
Bước 3: Quan sát kết quả và phân tích đánh giá.
+ Kết quả mô phỏng như hình 3.23
Hình 3.23: Mô phỏng hệ thống với Kp và Kd
Hệ thống với bộ điều khiển PID với Kp = 3, Ki = 0 và Kd =7 ta thấy hệ thống ổn định, không có độ vọt lố Tuy nhiên đáp ứng chậm, phải đến 14 giây mới thể làm hệ thống cân bằng nên cần phải tinh chỉnh các thông số để hệ thống đáp ứng nhanh hơn.
Kịch bản 4: Tinh chỉnh lại bộ điều khiển
Bước 1: tự tinh chỉnh các hệ số trong bộ điều khiển PID dựa theo đặc tính của bộ điều khiển Ta chọn được ra thông số là Kp = 100, Ki = 0,1 và Kd = 20 Mô phỏng các giá trị ta có được sơ đồ như hình 3.24.
Hình 3.24: Mô phỏng hệ thống sau khi tinh chỉnh
Sau khi tinh chỉnh thì hệ thống ổn định nhanh, tuy vẫn còn độ vọt lố (nhỏ) nhưng thời gian đáp ứng, thời gian xác lập đều giảm, triệt tiêu được state-steady error.
Bước 2: Thử nghiệm mô phỏng với các giá trị đặt khác
Khảo sát thêm với các giá trị đặt 16 và 25, ta được:
Với giá trị đặt 16 ta được đồ thị như hình 3.25
Hình 3.25: Hệ thống sau khi tinh chỉnh với giá trị đặt là 16
Với giá trị đặt 25 ta được đồ thị như hình 3.26
Hình 3.26: Hệ thống sau khi tinh chỉnh với giá trị đặt là 25
Như vậy từ kết quả mô phỏng ta thấy hệ thống tương đối ổn định Từ các thông số PID ta chọn trong mô phỏng ta áp dụng cho mô hình thực tế và tinh chỉnh cho hệ ổn định hơn.
Thử nghiệm thực tế
Dùng laptop kết nối Serial với hệ thống để kiểm tra vị bóng, góc động cơ và độ vọt lố,…
+ Các tiêu chuẩn chất lượng: Ổn định là điều kiện cần đối với một hệ điều khiển tự động, song chưa phải là đủ để hệ thống được sử dụng trong thực tế Nhiều yêu cầu đòi hỏi hệ thống phải thỏa mãn được cùng một lúc các tiêu chuẩn chất lượng khác nhau như độ chính xác, độ ổn định, đáp ứng quá độ, độ nhạy, khả năng chống nhiễu… Sau đây là một số tiêu chuẩn thường dùng để đánh giá chất lượng hệ thống điều khiển.
Sai số là hiệu số giữa tính hiệu vào và tín hiệu hồi tiếp Mục đích muốn tín hiệu ra qua vòng hồi tiếp luôn bám được tín hiệu vào mong muốn, điều đó có nghĩa là sai số xác lập bằng không.
2) Độ vọt lố (độ quá điều chỉnh):
Thời gian lên đỉnh là thời gian đáp ứng ra đạt giá trị cực đại
Thời gian quá độ xác định bởi thời điểm đáp ứng ra từ sau đó trở đi không vượt ra khỏi miền giới hạn sai số quanh giá trị xác lập Ví dụ có thể là ±2%, ±5%,
+ sau khi thử nghiệm ta được kết quả như bảng 3.2
Bảng 3.2: kết quả thử nghiệm thực tế
Thời gian đáp ứng (giây)
Sai số xác lập (cm) Độ vọt lố (%)
Thời gian đáp ứng (giây)
Sai số xác lập (cm) Độ vọt lố (%)
- Mô hình thực tế hệ thống chưa thực sự ổn định, vẫn dao động mạnh có nhiều nguyên do nhưng các thông với việc thay đổi giá trị Kp, Ki và Kd có cải thiện được phần nào.
- Cảm biến siêu âm hoạt động chưa đúng với viên bi sắt, giá trị nhận đo được sai lệch nhiều.
- Góc quay động cơ đáp ứng đúng với vị trí của viên bi Do viên bi khá nặng và động cơ MG995 còn rung lắc mạnh.
- Với giá trị đặt ở giữa thanh thì thời gian đáp ứng nhanh hơn sẽ nhanh hơn.
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết quả đạt được:
- Biết được cách phân tích hệ thống qua việc mô hình hóa
- Hiểu được cách thiết kế bộ điều khiển PID qua phương pháp thực nghiệm Xác định được các thông số Kp, Ki và Kd.
- Tìm hiểu được cách lập trình Matlab và cách mô phỏng được hệ thống trên Simulink.
- Thiết kế mô hình trên máy tính và hoàn thiện được mô hình thực tế.
- Tìm hiểu được cách đưa giải thuật PID vào phần cứng.
- Kết quả mô phỏng bộ điều khiển tương đối ổn định
- Mô hình thực tế chưa đạt yêu cầu vì nhiều vấn đề như cảm biến đọc giá trị còn chưa tốt, động cơ chưa đủ mạnh để đứng yên khi ở góc quay yêu cầu.
Do sử dụng chưa đúng vật liệu cũng như các linh kiện chưa được tốt nên không tránh khỏi việc sai sót trong mô hình thực tế Để sản phẩm hoàn thiện hơn, em sẽ phát triển đề tài bằng cách đầu tư vào các loại cảm biến tốt hơn để nhận được chính xác hơn khoảng cách với vật cản là hình cầu Dùng động cơ tốt có thể phản hồi điều khiển tốc độ động cơ.
Với những hướng phát triển nêu trên cùng với những ý tưởng và nhận xét khác của các thầy cô giáo, em sẽ cố gắng để phát triển mô hình này hơn nữa,khắc phục những hạn chế còn tồn tại trong mô hình Ứng dụng mô hình vào dạy học.