Giải thuật PID điều khiển tốc độ động cơ trong thực tế

Một phần của tài liệu Thiết kế chế tạo bộ điều khiển PID ghép nối giữa máy tính và vi điều khiển PSoC dùng cho động cơ robot di động (Trang 47 - 51)

Chương 3 XÂY DỰNG BỘ ĐIỀU KHIỂN PID ỨNG DỤNG CHO ROBOT DI ĐỘNG

3.2.6. Giải thuật PID điều khiển tốc độ động cơ trong thực tế

Việc tính toán điều khiển PID sử dụng phương trình (2.28). Tuy nhiên trong thực tế việc tính toán các thành phần P,I và D không thể thực hiện được do các bộ xử lý không thể tính được chính xác liên tục ở mức t 0cho các thành phần vi phân và tích phân, do đó ta tiến hành tính toán gần đúng với thời gian t nghĩa là rời rạc hóa phương trình tính toán (2.28). Các bước tiến hành như sau:

Chia khoảng thời gian liên tục thành từng đoạn t(thời gian lấy mẫu) và khảo sát giá trị tại các thời điểm gián đoạn đó như hình 3.16.

Hinh 3.16. Rời rạc hóa quá trình tính toán PID

Đường chấm gạch biểu diễn giá trị đặt mà quá trình điều khiển cần đạt tới Đường nét đứt biểu diễn giá trị biến thiên liên tục thực tế

Đường xanh đậm biểu diễn giá trị đã được rời rạc hóa - Thành phần tích phân được tính như sau:

0t lim0 i

t

i

e t dt e t te t t (3.1)

- Thành phần vi phân được tính như sau:

2 1 0 1 lim t de t e t e t e i e i dt t t (3.2)

Từ đó việc rời rạc hóa đó ta có thể thiết lập giải thuật tính toán cho bộ điều khiển PID như sau:

Error_term = Set_Speed – Encoder_Count P_Term = P_Gain× Error_term

D_Term = D_Gain× (Error_term – D_State) D_Stat = Error_term

I_State = I_State + Error_term I_Term = I_Gain×I_State

PWM_Set = P_Term + I_Term + D_Term

Trong đó:

P_Term, I_TermD_Term: là các thành phần điều khiển P, I và D

P_Gain, I_GainD_Gain: là các hệ số điều khiển PID chính là KP,KI, và KD Error_term: là sai lệch giữa giá trị đặt và giá trị trả về tại thời điểm tính toán

I_State: là sai lệch tích lũy

D_State: là độ chênh lệch sai lệch giữa hai lần tính toán.

PWM_Set: chính là giá trị đầu ra của bộ điều khiển PID tại thời điểm tính toán, cũng chính là tín hiệu PWM đưa ra điều khiển tốc độ môtơ.

Lưu đồ chương trình nạp cho vi điều khiển để điều khiển động cơ robot như hình 3.17 sau:

Hình 3.17. Lưu đồ chương trình nạp cho vi điều khiển để điều khiển động cơ robot di động

Đọc tín hiệu từ máy tính: - Chiều quay motor - Các giá trị KP,KI, và KD

- Gía trị vận tốc đặt Bắt đầu

Thực hiện xử lý điều khiển: - Đọc vận tốc hiện tại motor

từ lập mã

- Tính toán các thành phần điều khiển PID

Thực hiện điều khiển:

- Xuất ra tín hiệu PWM điều khiển động cơ - Truyền về máy tính giá trị

Một phần của tài liệu Thiết kế chế tạo bộ điều khiển PID ghép nối giữa máy tính và vi điều khiển PSoC dùng cho động cơ robot di động (Trang 47 - 51)

Tải bản đầy đủ (PDF)

(70 trang)