3.4 Lý thuyết điều khiển PID Có thể nói bộ điều khiển PID viết tắt của: Proportional–Integral–DerivativeController là một trong những bộ điều khiển phổ biến và quan trọng nhất trong cáct
Trang 1Chương 3 CÁC ỨNG DỤNG VỚI CARD HDL USB 9090
3.1 Giới thiệu card HDL USB 9090
Card USB HDL 9090 là card thu thập dữ liệu và xuất tín hiệu điều khiển đanăng thế hệ tiếp theo của HDL 9001 Ngoài các chức năng đã có trên HDL 9001như thu thập dữ liệu từ các cảm biến, điều khiển ON/OFF, điều chế xungPWMv.v.v HDL 9001 còn có chức năng Digital Input giúp bạn ứng dụng linh hoạthơn Với tính năng vượt trội như tốc độ cao ADC cao hơn 5 lần và chính xác hơn 4lần so với HDL 9001, card USB 9090 là lựa chọn tối ưu cho ứng dụng thu thập dữliệu và điều khiễn của bạn
Trang 2Bảng 3.1 Mô tả cụ thể các chân tín hiệu của card HDL 9001
3.2 Cách kết nối thiết bị USB HDL 9090 vào máy tính
Trang 3Bảng 3.2 Mô tả các chân của hàm USB HDL 9090 để lập trình
USB Card Control Tạo control tại chân này để chọn thiết bị USB HDL
9090SW1-SW4 Control Nối giá trị Boolean (TRUE – FALSE) vào các chân
này để phần cứng HDL 9090 xuất ra tín hiệu số tươngứng (TRUEL 5V, FALSE 0V)
PWM1-PWM2 Control Nối giá trị số nguyên 0 – 500 vào để phần cứng xuất
xung PWM có duty cycle tương ứng là 0 – 100%PWM Frequency
(3-60kHz)
Control Nối giá trị từ 3000 – 60000 vào để chọn tần số tín hiệu
PWM card xuất ra
DI1-DI4 Indicator Gía trị tín hiệu số đọc được từ chân DI1 – DI4 trên
card Gía trị mặc định là TRUE (5V)ADC1-ADC6 Indicator Gía trị ADC (0 – 1023) đọc được từ các chân ADC
tương ứng trên card
Encoder Indicator Giá trị encoder 0-100000
Trang 4Bước 1: Không cắm HDL 9090 vào máy
Chọn Start >> All Programs >> National Instruments >> VISA >> D rier Wizard
Bước 2:Chọn Other … trong khung Device List >> Next
Chọn USB >> Next
Lúc này cắm dây USB HDL 9090 váo máy Chọn Yes
Trang 5Nhập 9090 vào khung USB Manufacturer ID (Vendor ID)
Nhập 0001 vào khung USB Model Code (Product ID)
Chọn Next
Bước 3:
Nhập HDL-9090 vào khung vào khung Instrument Prefix (thay cho chữ prefix có sẵn) Chọn Next
Trang 6Chọn mục đầu tiên như hình trên
(Install the generated files on this computer)
Click Finish
Lúc này card HDL 9090 sẽ được cài và nhận dạng trong NI MAX Xin chờ
một vài phút để quá trình hoàn tất
Bước 4:Mở MAX ra
Trang 7Chọn mục Device & Interface:
Lúc này thiết bị HDL USB 9090 đã được nhận biết ở đây
Lưu ý: Card USB HDL 9090 khác vào máy, Found new hardWare
Wizard yêu cầu Install driver cho card khác này
Chỉ cần chọn Yes, Ok thì card này sẽ được nhận biết
trong MAX bởi vì đã thực hiện các thao tác trên
3.3 Các ứng dụng card HDL USB 9090
Hướng dẫn thu thập tín hiệu analog, đọc tín hiệu encoder và phát
xung PWM với card USB HDL 9090
Nối cảm biến vào card, thu thập tín hiệu analog card HDL 9090
Thực hiện nối dây encoder vào card và phát xung PWM để điều khiển độngcơ
Phần cứng bao gồm: card USB HDL 9090, biến trở và cảm biến nhiệt độLM35, động cơ với encoder, motor drive để điều khiển động cơ (dùng bộ thínghiệm đa năng HDL 9000)
Trang 8Kiểm tra phần mềm card HDL 9090 vào máy tính
- LabVIEW 2009
- NI VISA- Thư viện kèm theo card HDL 9090
- Thực hiện kết nối card HDL 9090 vào máy tính theo hướng dẫn, kết nốiHDL 9090’ Khi card nhận biết trong MAX như hình sau là đúng
Trang 93.2 Sơ đồ chân card USB HDL 9090 3.3.1 Đọc tín hiệu từ Encoder
- Trong động cơ thường có gắn encoder để đọc được góc quay, vòng quay của động
cơ Encoder xuất ra tín hiệu xung và card HDL sẽ đếm số xung này Từ số xung tínhđược số vòng và góc quay tùy theo thống số của encoder (ví dụ 1 vòng = 100 xung)
- Encoder có 4 dây nối: VCC, GND, Channel A và Channel B Nối dây VCC vàGND tương ứng vào HDL 9090 Dây Channel nối vào chân PULSE (chân 17) vàdây Channel B nối vào chân DIR (chân 16)
Trang 10- Bây giờRightclick lênchânEnvodercủa hàmvàchọn
create>>indicator
Trang 11-Chương trình đã hoàn thành Chọn thiết bị USB HDL 9090 trông ô USB card vàchạy chương trình Dùng tay xoay động cơ thì sẽ thấy giá trị của Encoder thay đổitương ứng.
3.3.2Phát Xung PWM để điều khiển động cơ
Trang 12Cách nối dây giữa Card HDL
9090 và moto driver
- Khi dùng bộ thí nghiệm đa năng HDL 9000 thì có 3 dây chính cần nối đólà:
Nối giữa chân PWM1(chân 20) của Card HDL 9090 và chân PWM củamoto driver
Nối giữa chân SW1(chân 11) của Card HDL 9090 và chân DIR của motodriver
Nối giữa chân GND của Card HDL 9090 và chân BRE của moto driver
Trang 13- Các dây còn lại và nối mass, nối nguồn và nối giữa motor driver và động cơ
encoder để viết ở trên
Right click thư viện HDL 9090, chân PWM Frequency, chọn create >>control
Right click chân PWM1, chọn create>> control
Right click chân SW1, chọn create>> control
Trang 14- Chương trình cơ bản đã hoàn thành Front Panel của chương trình điều khiển này
có thể sửa lại cho đẹp hơn bằng cách dùng control thanh trượt
- Chọn thiết bị HDL 9090 trong ô USB card và chạy chương trình Bạn nhập giá trịPWM Frenquency từ 3000 đến 6000 và nhập giá trị PWM1 0-500
- Động cơ sẽ chạy nhanh hay chậm tùy vào giá trị PWM1 Khi muốn đảo chiềuđộng cơ, click vào nút SW1 và quan sát đảo chiều
3.4 Lý thuyết điều khiển PID
Có thể nói bộ điều khiển PID (viết tắt của: Proportional–Integral–DerivativeController) là một trong những bộ điều khiển phổ biến và quan trọng nhất trong cácthiết bị và hệ thống công nghiệp từ ở đĩa CD tới vận tốc xe ô tô đều được thực hiệnbởi các thuật toán PID.), hệ thống lái tự động trên robot, ô tô, lò nhiệt, vv
Trang 15Hình 3.5 Sơ đồ điều khiển động cơ DC theo thuật toán PID
Điều khiển PID là gì? Bộ điều khiển PID (Proportional–Integral–Derivative Controller) là một bộ hiệu chỉnh có phản hồi nhằm làm giá trị sai lệch của một tín hiệu đang được điều khiển bằng không Bộ PID có ba thành phần: proportional - tỷ
lệ, integral - tích phân, và derivative - đạo hàm), ba thành phần này đều có vai tròđưa sai lệch về không Tính chất tác động của mỗi thành phần có đặc điểm riêng
được khảo sát chi tiết trong phần sau Tín hiệu phản hồi (feedback signal) thường là
tín hiệu thực được đo bằng cảm biến Giá trị sai lệch là hiệu của tín hiệu đặt
(setpoint) trừ cho tín hiệu phản hồi
- PID là bộ điều khiển thông dụng nhất trong công nghiệp vì tính dễ áp dụng, vàmang lại chất lượng điều khiển ổn định cho hệ thống Cụ thể, bộ điều khiển PIDthường sử dụng trong điều khiển động cơ DC, robot, các hệ thống trong ô tô, điềukhiển áp xuất, băng truyền, vv
Trang 163.6 Cơ cấu cần điều khiển vị trí
3.4.1 Bản chất toán học của thuật toán PID
Sơ đồ của hệ thống PID
Trang 17Hình 3.7 Bộ PID điều khiển vị trí
Một bộ điều khiển PID có sơ đồ như hình trên Trong bộ điều khiển PID, sai lệch được tính bằng hiệu giá trị đặt hoặc điểm đặt (Set point ) trừ cho giá trị thực tế đođược (measured value của hệ thống )
Hoạt động của hệ thống điều khiển vị trí Bộ PID này sẽ đọc và hiểu giá trị mà
người điều khiển mong muốn (gọi là giá trị đặt, ở đây là vị trí của B có tọa độ
xB=20cm), thường người điều khiển đưa giá trị đặt vào bộ điều khiển PID thôngqua GUI (Graphical user interface - giao diện người dùng đồ họa) Bộ điều khiển
PID sẽ tính sai lệch e, và qua bộ PID thành tín hiệu điều khiển u(t), sai lệch sau khi
tính toán được truyền ra ngoài hệ thống thực thông qua card vào/ra (I/O) như cardHocdelam USB-9001 hoặc NI 6009 ở đây tín hiệu lúc này là tín hiệu điện áp và
được gọi là u(t)2 Sau đó, tín hiệu này được khuếch đại nhờ một bộ Driver (ví dụ
Motor driver) để tăng tín hiệu đủ công suất điều khiển cơ cấu chấp hành (động cơ
DC), gọi là tín hiệu U(t) Tín hiệu điều khiển động cơ sẽ điều khiển cơ cấu 5, khi động cơ quay thì thanh kim loại trược theo phương X và đầu 1 di chuyển dần từ A
tới B Hoàn thành một vòng điều khiển
Trang 18khớp với giá trị đặt Tức khi đó sai lệch sẽ bằng 0 Chừng nào còn sai lệch thì bộđiều khiển PID còn hoạt động để hiệu chỉnh tín hiệu điều khiển Bản chất toán họccủa bộ PID sẽ được giải thích trong công thức sau Giá trị tín hiệu đưa vào động cơđược tính là:
- : tín hiệu điều khiển, là tín hiệu do bộ PID sinh ra, (thường tín hiệunày đi qua một module công suất) và đi vào hệ thống (động cơ mộtchiều) Có đơn vị phụ thuộc phần cứng, như đối với điều khiển động cơmột chiều 24V thông qua module công suất là một Motor driver 24V thì
có đơn vị là Volt
- : Khâu tỷ lệ
- : các hệ số tỷ lệ, tích phân và vi phân của bộ PID
- sai lệch tại thời điểm hiện tại
- : Diện tích S tạo bởi đường cong giá trị thực tế đường thẳng giá trị đặt, và các cận là thời điểm trước và sau một vòng điều khiển hay nói cách khác K chính là đơn vị thời gian trích mẫu (thường thời giantrích mẫu bé khoảng ms thậm chí nano giây) Vậy tích phân từ 0 → tcủa sai lệch nhân với thời gian lấy mẫu chính là tổng hợp các sai lệch từ
Trang 19khi hệ thống bắt đầu được điều khiển tới thời điểm hệ thống đang hoạtđộng hiện tại.
Hình 3.8 Mô tả giá trị đặt, giá trị đo được và diện tích sai lệch
Các hệ số luôn không âm: Tức
: Tốc độ thay đổi của sai lệch tại thời điểm hiện tại
Ý nghĩa các hệ số gain trong bộ PID khi tăng các hệ số độc lập nhau
Với cùng một giá trị , nếu tăng , thì tín hiệu điều khiển tăng tăng đồng nghĩa điện áp tác động vào động cơ một chiều tăng lên, điện áp tăng
sẽ làm làm giảm nhanh hơn có nghĩa hiệu giá trị đặt và giá trị đo được sẽgiảm nhanh hơn Khi đó ta gọi khả năng đáp ứng của thống nhanh Đáp ứng của
hệ thống được xem là càng nhanh khi thời gian cần thiết để tín hiệu đầu ra của
hệ thống đạt tới giá trị đặt càng nhỏ Tuy nhiên, khi quá lớn, thì hệ thốngkhông ổn định vì có hiện tượng giá trị đo được của hệ thống vượt quá giá trị đặt,
gọi là vọt lố (overshoot).
có tác dụng làm tăng tốc độ đáp ứng vì nó cũng làm tăng điện áp (U(t)) đặt vào động cơ Đồng thời khâu này làm sai lệch tỉnh (steady-state error) trở về
Trang 20phản hồi lớn hơn giá trị setpoint, thì khâu D nó có tác dụng làm giảm tín hiệuđiều khiển
Phương pháp định bộ thông số (Các hệ số gain) thủ công thườngdựa vào việc thử nghiệm các thông số Ta xác lập các hệ số Kp, bằng không.Sau đó tăng dần Kp cho tới khi vọt lố đạt bằng gấn 1,5 lần giá trị đặt Hiệu chỉnh cho sai lệch tỉnh bằng không Và hiệu chỉnh cho hệ thống giảm rung lắc
Ngoài ra bạn còn có thể thực hiện việc chọn các hệ số này bằng phương pháp tìmcác hệ số của Zigler–Nichols như
Phương pháp chỉnh PID (Phương pháp Ziegler–Nichols)
Trang 21Cao hơn phương pháp xác định các hệ số bằng tay thì còn phương pháp xác định bộgain Kp, Ki, và Kd tự động sẽ được cập nhật ở các tập sách tiếp theo cùng tác giả.
3.4.2 Điều khiển PID cho động cơ DC
Để thực hành bộ điều khiển PID, chúng tôi chọn card Hocdelam USB 9001, sơ đồmạch điện
Hình 3.9 Sơ đồ kết nối phần cứng điều khiển PID động cơ DC
Trang 22Sơ đồ mạch điện kết nối phần cứng điều khiển PID động cơ DC
Hình 3.10 Kết quả lập trình P control cho động cơ DC
Trang 23Hình 3.11 Giao diện người dùng điều khiển P cho động cơ DC
Đáp ứng của vị trí động cơ DC theo thuật toán P khá tốt Thời gian đáp ứng là 0.2giây với Sai lệch tiến tới không sau 0.5 giây Đường màu trắng là giá
trị đặt, đường màu đỏ là giá trị đáp ứng (giá trị đo được từ Encoder), màu vàng làsai lệch
Hình 3.12 Đáp ứng của vị trí động cơ DC