Chuẩn bi thực nghiệm và khảo sát chương trình nội dung thực hiện

Một phần của tài liệu Điều khiển hệ PENDUBOT trên nền LABVIEW (Trang 102)

3. 41 Phương pháp năng lượng

6.1.3 Chuẩn bi thực nghiệm và khảo sát chương trình nội dung thực hiện

hiện

Hình 6.5 Giao diện ựiều khiển hệ Pendubot trên nền Labview

Giải thắch giao diện

1. Stop 2. USB card 1 3. USB card 2 4. Khởi tạo hệ thống 5. đóng băng 6. Quá giới hạn 7. E18* 8. Trượt hóa giá trị ựặt 9. E2 10. đồ thị quá ựộ 11. E1 12. E2

13. Thời gian tắnh toán 14. Hệ số trượt hóa 15. điều chỉnh Kp 16. điều chỉnh Ki 17. Vị trắ con lắc

Cấp nguồn ựiện 220V vào hệ Pendubot, thông qua các bộ nguồn xuất ra các

ựiện áp 12V cho hai encoder và hai card 9090, Motor driver, ựấu nối các cổng USB 1 và USB 2 với máy tắnh. Thiết lập các giải thuật trong labview. trình tự thực hiện như sau.

Bước 1: đấu nối dây cáp cổng USB của card USB 9090 vào máy máy tắnh. Bước 2: Trong giao diện window XP hoặc Win 7 , click phải chuột vào My computer → chọn Device manager/Manage → xem cổng giao tiếp ựã ựược thiết lập hai card USB 9090.

Bước 3: Quay về giao diện chắnh của Labview, ngay vị trắ 2 và 3 chọn cổng giao tiếp hai card USB 9090 ựã chọn ở bước 2.

Bước 4: Tại vị trắ 4 chọ khởi tạo hệ thống Bước 5: Chọn ựiều chỉnh thông số Kp, Ki

Bước 6: Xác ựịnh thông số trượt hóa, thời gian tắnh toán Bước 7: Vị trắ 5 chọn ựóng băng

Bước 8: trương trình hoạt ựộng

Bước 9: Dừng chương trình nhấn nút Stop vị trắ 1

để tắnh ựược các khâu P và khâu I, học viên ựầu tiên chuẩn bị các thuật ngữ,

ựịnh nghĩa các ựại lượng thông số cho phương pháp tắnh toán xác ựịnh các góc α 1 và α 2 tương ứng theo hình hình vẽ 5.10 sao cho khi chạy chương trình và khởi tạo hệ thống , xác ựịnh các thông số Kp Ki thắch hợp bằng phương pháp thực nghiệm

của Ziegler Ờ Nichols. để chương trình ựưa ra ựáp ứng tốt nhất khi tác ựộng một lực nhỏ bất ở các hướng khác nhau trên Link 2 cân bằng thẳng ựứng (θ 2 = 0o) ở vị trắ bất kỳựối với Link 1 thay ựổi vị trắ bất kỳ ( θ 1 # 0o). Các góc θ 2 θ1 ựược xác ựịnh bởi số xung phát ra từ hai encoder 1 và encoder 2.

Hình 6.6 Biểu ựiễn Link 2 cân bằng thẳng ựứng (θ 2 = 0o) ở vị trắ bất kỳựối với Link 1 thay ựổi vị trắ bất kỳ ( θ 1 # 0o).

6.2 Nhận dạng và ựiều khiển hệ Pendubot trên nền Labview 6.2.1 Khởi tạo hệ thống

Giao diện khởi tạo hệ thống

Thuật toán của chương trình labview thực hiện việc khởi tạo hệ thống

Hình 6.8 Thuật toán của chương trình labview thực hiện việc khởi tạo hệ

thống

Giải thắch:

- Thanh ghi: Mặc ựịnh ựây là một ựường hầm truyền dữ liệu giá trị hiện tại vị trắ 1 theo hình 5.12 cũng chắnh là giá trị chắnh nó tại vị trắ 2, các giá trị tại hai vị

trắ này luôn cập nhật liên tục sau một thời vòng lập .

- Vòng lập: Là một khoảng thời gian chạy hết chương trình của một vòng lập.

- Khởi tao hệ thống: Bước này ựầu tiên cho chạy chương trình, khởi tạo ựể

xác ựịnh cho giá trị E1, E2

- đọc giá trị Encoder E1: đầu tiên cắm card USB 1 vào ựể máy nhận tắn hiệu ựầu vào của E1. Do E1 không phải lúc nào là một giá trị nhất ựịnh do phụ

thuộc vào góc quay lúc ban ựầu, do vậy ựưa giá trị ban ựâu E1 vào thanh ghi 1. Mục

ựắch là biến giá trị bất kỳ của E1 thành một giá trị bằng 0o .

đặt: Giá trị E1 hiện tại là E1Ỗ

Giá trị E1 sau khi hệ thống chạy chương trình có vóng lặp ựầu là E1ỖỖ

- Thuật toán tắnh giá trị H

H = E1Ỗ Ờ E1ỖỖ

Hình 6.9 Thuật toán tắnh giá trị H

- đọc giá trị Encoder E2: Cắm card USB 2 vào ựể máy nhận tắn hiệu ựầu vào của E2. Do E2 không phải lúc nào là một giá trị nhất ựịnh do phụ thuộc vào góc quay lúc ban ựầu, do vậy ựưa giá trị ban ựâu E2 vào thanh ghi 3. Mục ựắch là biến giá trị bất kỳ của E1 thành một giá trị bằng 0o.

Hình 6.10 đọc giá trị Encoder E2

- Thuật toán khởi tạo hệ thống: để nhận biết ựược các các góc θ2 θ1

nguyên lý chung là dùng cảm biến encoder E1 và E2 , dựa vào chu kỳ xung của E1 và E2 ta nhận biết ựược các góc θ 2 θ1 .

Encoder 1 có giá trị mới E1* nhờ công tắc khởi tạo hệ thống, ựể khởi tạo ra giá trị E1* và thanh nghi 2 vậy ta xác ựịnh ựược góc θ1.

+ Khối công tắc khởi tạo hệ thống

+ Hàm select

Nhờ khối công tắc khởi tạo hệ thống ta có công thức sau sau

      + = = * E1 ) ' E1' - (E1' 0 ' E1' - E1' * 1 E false S true S = =

Hình 6.11 Giải thuật khởi tạo ra giá trị encoder 1 E1*

Tương tự Encoder 2 có giá trị mới E2* nhờ công tắc khởi tạo hệ thống, ựể

khởi tạo ra giá trị E2* vào thanh nghi 4 vậy ta xác ựịnh ựược góc θ2. Với

Với Với Với

      + = = * E2 ) ' E2' - (E2' 0 ' E2' - E2' * 2 E false S true S = =

Hình 6.12 Giải thuật khởi tạo ra giá trị encoder 2 E2*

6.2.2 Giá trị ựặt, Trượt hóa giá trị ựặt

Lúc khởi tạo giá trị ựặt là bằng 0 nhưng khi chương trình chạy thì giá trị ựặt luôn biến thiên, và góc ựo θ 2 của Link 2 so với phương thẳng ựứng Link 1 ựo ựó góc θ 2 luôn biến thiên khi Link 1thay ựổi một góc θ1 .

Chương trình thuật toán labview thực hiện trượt hóa giá trị ựặt

Hình 6.13 Chương trình thuật toán labview thực hiện trượt hóa giá trịựặt

Trượt hóa giá trị ựặt: Do giá trị ựặt liên tục luôn bằng 0 nhưng do hệ thống làm việc liên tục do ựó ta phải trượt hóa ựể giá trị ựặt không thay ựối tùy vào góc quay θ1 do ựó giá trịựặt sẽ biến thiên.

Thuật toán trượt hóa giá trị ựặt E2*

Hình 6.14 Thuật toán trượt hóa giá trị ựặt E2*

Phương trình trượt hóa giá trị dặt

D= (0 +( θ2 *4)) (Xung)

đối với ựiều khiển PID bình thường thì ựặc tắnh giá trị ựặt thường cố ựịnh D=const , với ựiều khiển PI hệ Pendubot thì giá trị ựặt D thường thay ựổi theo vị trắ

ựứng của Link 2 so với Link 1 góc θ2 luôn biến thiên. Do ựó ta phải trượt hóa giá trị ựặt thì hệ thống mới ổn ựịnh ựược và tắnh ựược sai lệch hệ thống e.

6.2.3 Tắnh sai lệch hệ thống và nhận giá tri Kp:

Hình 6.15 Thuật toán tắnh sai lệch hệ thống e Phương trình tắnh sai lệch hệ thống

e(t) = D Ờ E1*

6.2.4 Nhập giá trị Kp:

Giá trị Kp hằng số tỉ lệ, học viên thực hiện bằng phương pháp phương pháp thứ hai của Ziegler Ờ Nichols. điều ựặc biệt là phương pháp này không sử dụng mô hình toán học của ựối tượng ựiều khiển, ngay cả mô hình xấp xỉ gần ựúng, kết quả

lựa chọn Kp trong khoảng 0.5 ựến 0.8.

6.2.5 Tắnh khâu P:

Khâu P tạo ra tắn hiệu ựiều khiển tỉ lệ với giá trị của sai lệch. Việc này ựược thực hiện bằng cách nhân sai lệch e với hằng số KP Ờ gọi là hằng số tỉ lệ. Khâu P

ựược tắnh dựa trên công thức: P =Kp*e(t) Giao ựiện ựiều khiển khâu P

Chương trình thuật toán labview thực hiện tắnh khâu P

Hình 6.17 Chương trình thuật toán labview thực hiện tắnh Khâu P

Kết Luận: P controller có giá trị hữu dụng là 0-500 tương ựương với 0%

ựến 100% duty circle của PWM (hoặc tương ựương 0V ựến 24V sau khi ựi qua bộ

công suất Ờ tuyến tắnh).

6.2.5 Tắnh khâu I:

Khâu I cộng thêm tổng các sai số trước ựó vào giá trị ựiều khiển. Việc tắnh tổng các sai sốựược thực hiện liên tục cho ựến khi giá trịựạt ựược bằng với giá trị ựặt, và kết quả là khi hệ cân bằng thì sai số bằng 0.

Chương trình thuật toán labview thực hiện tắnh khâu I

Hình 6.18 Chương trình thuật toán labview thực hiện tắnh khâu I Giải thắch: chương trình thuật toán tắnh khâu I

1. Nhận giá trị Ki:

2. Nhập giá trị sai lệch e(t) là giá trị ựặt (giá trị kỳ vọng muốn góc θ2 giữa Link 2 với phương thẳng ựứng Link 1), trừựi giá trịựo ựược E1

3. Thời gian lấy mẫu ựặt dt = 0,002 thời gian chạy hết chương trình vòng lặp

ựược ựo bằng lấy mẫu, do thời gian lấy mẫu ựặt 10ms = 0,0001 quá lớn nên phải chọn Ki quá nhỏ do ựó học viên chọn thời gian lấy mẫu dt = 0.002 ựể chọn thông số ựể chỉnh ựịnh Ki lớn nhờ giải thuật toán sau.

Hinh 6.19 Giải thuật thời gian lấy mẫu

4. Khâu I ựược tắnh theo công thức: Giải thuật trong hình trình bày phương pháp tắnh toán khâu I, và giao diện nhập dữ liệu.

Hình 6.20 Giao diện nhập dữ liệu nhập giá trị Ki và tắnh Khâu I

Hình 6.21 Giải thuật trình bày phương pháp tắnh toán khâu I.

Tắnh : e dt

t t.

0

Thông qua thanh ghi 5 tắnh tổng T0 : Tổng (To) = ∑ (∆S) Tắnh ∆S: ∆S = e(t).dt (giá trị tức thời )

Tắnh khâu tắch phân: I = Ki . = Ki. e dt t

t.

0 ∫

Kết luận: I controller có giá trị hữu dụng là 0-500 tương ựương với 0% ựến 100% duty circle của PWM (hoặc tương ựương 0V ựến 12V sau khi ựi qua bộ công suất Ờ tuyến tắnh).

6.3.6 đóng băng ỘChức năng tắch phân Ộ

Ta xét lúc ựầu chạy chương trình: + 0 là thời gian lúc bắt ựầu chạy. + t là lúc thời gian tắt chương trình.

Do ựó khi chương trình tắnh lâu thì tạo ra trị e rất lớn với thời gian kéo dài sẽ

làm cho giá trị u(t) của khâu PI rất lớn và ựiện áp rất lớn dẫn tới mất ổn ựịnh ựộng cơ DC và hệ thống bị hư hại. Do ựó phải dùng chức năng ựóng băng tắch phân ựể

chống chàn giá trị e.

Hình 6.22 Khối Giải thuật trình bày phương pháp ựóng băng tắch phân. - Khối In range coerce (trong khoảng). Dựa vào mô hình thực học viên thực nghiệm giới hạn chàn I từ 0-500.

6.3.7 Tắnh khâu PI

Sau khi tắnh ựược khâu P và khâu I, theo phương trình tắnh Khâu PI ựược

tắnh theo công thức: ( ) . ( ). ( ) 0 ∫ + =Kie t e t d t t u

Giải thuật trong hình 6.24 trình bày phương pháp tắnh toán khâu PI.

Hình 6.24 Khối Giải thuật trình bày tắnh khâu PI.

Hình 6.25 Kết quảđáp ứng giá trịựặt khi chưa bù mômen xoay.

Kết luận:

Từ những kết quả ựáp ứng khâu PI trên hình 5.27 5.28, nhận thấy hệ

pendubot không ổn ựịnh do moment xoay gọi là M của ựộng cơ DC chứa giá trị

Cos(θ1) tạo nên thành phần moment phi tuyến.

Moment này có xu hướng kéo hệ vật Pendubot (encoder 1,2, link 1, 2) ựi xuống theo phương thẳng ựứng với mọi góc θ2 giữa Link 1 và Link 2 . (với ựộ trũng khác nhau ở những góc θ1,2 khác nhau).

Phần tiếp theo học viên bằng phương pháp thực nghiêm trên mô hình thực bằng thuật toán bu mô-men xoay ựể hệ Pendubot cân bằng ổn ựịnh nhất.

6.3 Nhận dạng và ựiều khiển Hệ pendubot bằng phương pháp bù mômen xoay phi tuyến

6.3.1 Cơ sơ lý thuyết:

Ta có công thức M = F.d = cos(α).L1.F = cos(αa).L1.m.g Trong ựó:

M = khối lượng cơ cấu tạo mô men xoay. g = 9.8m/s^2

L1 = Chiều dài Link 1 α: (90 - Góc xoay Link1) ựộ.

Vì Moment xoay M chứa giá trị Cos(α) tạo nên thành phần moment phi tuyến.

Moment này có xu hướng kéo hệ vật (encoder, link 1, 2) ựi xuống theo phương thẳng ựứng. (với ựộ trũng khác nhau ở những góc anpha khác nhau).

để giải quyết bài toán này chúng ta ựề xuất bù thêm thành phần m như hình sau

Hình 6.27 Sơựồựiều khiển hệ Pendubot bằng phương pháp bù mômen xoay

Giải thắch:

k1 : Hệ số bù phi tuyến

m : Khối lượng cơ cấu tạo mômen xoay. P : Khâu P

I* : Khâu I sau khi ựóng băng tắch phân

E2* : Giá trị Encoder 2 sau khi trượt hóa giá trịựặt D : Giá trịựặt

DC: Đng c DC

6.3.2 Nhận dạng và ựiều khiển Hệ pendubot bằng phương pháp bù mômen xoay phi tuyến

Từ mô hình toán học của hệ Pendubot chương 3, nếu xét hệ vật Pendubot

Hình 6.28 biểu diễn góc lệch của Link 1 so với phương OY là β. Ta gọi :

- Góc lệch của Link 1 so với phương OY là β. - Mô-men xoay : Mx = F.d (N/m).

- F là trọng lực của hệ vật tạo ra mô-men xoay. Với F=m.g - d là cánh tay ựòn . Với d = L1 . Cos θ1 = L1 . Cos(90o - β)

Bài toán bù mô-men xoay ởựây không tìm ra giá trị Mô-men xoay cụ thể của hệ vật mà là ựi tắnh tỷ lệ ựể xác ựịnh hệ số bù, mà hệ số bù là một ựại lượng phi tuyến do cosθ1 la một ựại lượng phi tuyến.

Vậy ựể giải quyết bài toán này học viên ựề xuất bù thêm thành phần m là khối lượng cơ cấu tạo mô-men xoay. Ta có sơ ựồ thiết lập bù thành phần m như

hình 6.27.

Khối Giải thuật trình bày phương pháp ựiều khiển Hệ pendubot bằng phương pháp bù mômen xoay phi tuyến

.

Hình 6.29 Giải thuật trình bày phương pháp bù mômen xoay phi tuyến

Phương trình ta có như sau: (( ) ) * 2 1. * ) (t P I Xm k E U = + + (Vol) Các ựáp ứng ngõ ra :

Hình 6.30 đáp ứng có Bù Momen xoay, Ki hiệu chỉnh nhỏ

Hình 6.31 đáp ứng góc θ1 ≅ 45O,, θ2≅ 0O

Hình 6.33 đáp ứng góc θ1 ≅ 90O,, θ2≅ 0O

Hình 6.34 Kết quảựáp ứng ựiện áp ngõ ra góc θ1 ≅ 90O

6.4 Kết luận

Qua phần thực nghiệm trên hệ thống thực hệ Pendubot học viên nhận thấy : - Bô ựiều khiển PI ựiều khiển hệ Pendubot ổn ựịnh với góc lệch của Link 1 so với trục Oy tương ựối nhỏ trong thời gian ngắn. Nhưng do hệ thống chỉ ựiều khiển hồi tiếp góc θ 1 , θ 2 theo giá trị ựặt Link 2 luôn thẳng ựứng theo trục OX nên khi Link 2 ựược thẳng ựứng ổn ựịnh thì sau một thời gian Link 2 có xu hướng ựổ xuống do ựó dẫn ựến hệ vật mất ổn ựịnh.

- để khắc phục hệ quả trên tác giảựã Nhận dạng và ựiều khiển Hệ pendubot bằng phương pháp bù mômen xoay phi tuyến, khi tác ựộng một lực nhất ựịnh lên

Link 2 theo một phương nhất ựịnh , Link 1 sẽ tựựiều chỉnh theo một góc nhất ựịnh với mục ựắch giữ cho Link 2 luôn thẳng ựứng ổn ựịnh theo trục OX cho kết quả tốt sai số nhỏ. Tắn hiệu ngõ ra của PI luôn theo tắn hiệu góc ngõ ra của hệ Pedubot theo thời gian thực.

CHƯƠNG 7: KT LUN VÀ HƯỚNG PHÁT TRIN 7.1 Kết quả đạt được

Trong luận văn này học viên ựã hoàn thành những công việc sau:

Ớ Nghiên cứu xây dựng mô hình toán hệ thống Pendubot.

Một phần của tài liệu Điều khiển hệ PENDUBOT trên nền LABVIEW (Trang 102)

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

(125 trang)