.2 Hệ thống điều khiển mơ hình TRMS thực tế

Một phần của tài liệu Đồ án tốt nghiệp Kỹ thuật điện tử truyền thông: Điều khiển hệ phi tuyến dùng giải thuật thông minh (Trang 71)

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH58 4.2.2Mơ hình điều khiển tốc độ động cơ:

Mơ hình điều khiển động cơ được thể hiện như hình 4.3. Thơng qua Encoder E50S8- 1024-6-L-5 vận tốc của motor sẽ được hồi tiếp về vi điều khiển STM32F4 để xử lý.

Bảng 4. 1 Thông số bộ phận phản hồi (Encoder). Ký

hiệu Ý nghĩa Giá trị Đơn vị

T1 Thời gian lấy mẫu

của Encoder 0.01 s

Re Độ phân giải của

Encoder 1024 xung/vòng

N Số xung đọc được

của encoder xung

Vận tốc đọc về của động cơ được tính theo cơng thức sau. . 60. .4 1 e TR N v  (rpm) (4.1)

Giá trị vận tốc này được vi điều khiển dùng để tính tốn xuất áp điều khiển biến tần. Giá trị xuất ra của bộ điều khiển STM32 là 0-3.3Volt. Thông qua chân DAC, mức điện áp được đưa vào chân Analog Input của biến tần VLT2800 sẽ quyết định điện áp và tần số cấp cho động cơ hoạt động thơng qua đó điều chỉnh tốc độ động cơ. Tốc độ động cơ được cập nhật liên tục trên máy tính thơng qua Serial.

BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH59 CPU Encoder interface DAC USB Computer Matlab Simulink STM32F4 Inverter Input Pin [CH_A,CH_B]:[D12, D13] Output Pin [A4]:[53] 3 Phase Induction Motor Braking Machine Encoder Danfos VLT 2800 Platform

Hình 4. 3 Sơ đồ kết nối hệ thống điều khiển mơ hình.

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH60

4.3 PHẦN MỀM LẬP TRÌNH:

4.3.1Giới thiệu Matlab:

Matlab là chương trình phần mềm lớn của lĩnh vực tốn số. Matlab chính là chữ viết tắt của từ Matrix Laboratory, thể hiện định hướng chính của chương trình bao gồm một số hàm tốn có các chức năng nhập xuất cũng như các khả năng lập trình với cú pháp thơng dụng.

Ứng dụng:

Matlab tạo điều kiện thuận lợi cho:

 Các khoá học về toán học.

 Các kỹ sư, các nhà nghiên cứu khoa học.

 Dùng Matlab để tính tốn, nghiên cứu tạo ra các sản phẩm tốt nhất trong sản xuất.

Hình 4. 5 Giao diện Matlab.

Các chức năng của các khối trên giao diện matlab.

 Môi trường làm việc: nơi nhập lệnh và hiển thị kết quả hoặc các vấn đề phát sinh trong quá trình chạy chương trình.

Toolbox

Workspace

History Chứa thưmục Mơi trường làm việc

Phiên bản matlab

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH61

 Chứa thư mục: gồm những file năm trong thư mục này. Để nạp chương trình, ta phải chỉ đúng đường link của tệp đó.

 Phiên bản matlab: hiển thị phiên bản của matlab. Để chạy được chương trình thì phiên bản này phải lớn hơn hoặc bằng phiên bản của tệp.

 Toolbox: chứa các công cụ cần thiết như import data, lưu dữ liệu,…

 Workspace: nơi lưu trữ các thơng số dữ liệu đang có.

 History: hiển thị các lệnh đã được thực hiện.

4.3.2Simulink:

Simulink là một phần mềm mở rộng của MATLAB (1 toolbox của Matlab) dùng để mơ hình hóa, mơ phỏng và phân tích một hệ thống động. Thơng thường dùng để thiết kế hệ thống điều khiển, thiết kế DSP, hệ thống thông tin và các ứng dụng mô phỏng khác.

Simulink là thuật ngữ mô phỏng dễ nhớ được ghép bởi hai từ Simulation và Link. Simulink cho phép mô tả hệ thống tuyến tính, hệ phi tuyến, các mơ hình trong miền thời gian liên tục, hay rời rạc hoặc một hệ thống gồm cả liên tục và rời rạc.

Để mơ hình hóa, Simulink cung cấp cho bạn một giao diện đồ họa để sử dụng và xây dựng mơ hình sử dụng thao tác “nhấn và kéo” chuột. Với giao diện đồ họa ta có thể xây dựng mơ hình và khảo sát mơ hình trực quan hơn. Đây là sự khác xa các phần mềm trước đó mà người sử dụng phải đưa vào các phương vi phân và các phương trình sai phân bằng một ngơn ngữ lập trình.

Điểm nhấn mạnh quan trọng trong việc mơ phỏng một q trình là việc thành lập được mơ hình. Để sử dụng tốt chương trình này, người sử dụng phải có kiến thức cơ bản về điều khiển, xây dựng mơ hình tốn học theo quan điểm của lý thuyết điều khiển và từ đó thành lập nên mơ hình của bài tốn.

Để khởi động chương trình Simulink có hai cách:

 Cách 1: ta gõ dòng lệnh “Simulink” trực tiếp lên Command Window.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH62

Khi khởi động Simulink xong ta được màn hình cửa sổ Simulink. Cửa sổ này hoạt động liên kết với cửa sổ lệnh MATLAB.

Từ cửa sổ lệnh ta thấy được các khối thư viện: Khối nguồn (Sources), khối đầu đo (Sinks), khối liên tục ( Continuous), khối rời rạc ( Discrete) …

Hình 4. 6 Giao diện làm việc của Simulink.

Sau đây là các Block Library của Simulink, giúp cho có cách nhìn khái qt thư viện của Simulink.

 Khối Commonly Used Blocks: Gồm các khối thường sử dụng.

 Khối Continuous: Tập hợp các khối tỉ lệ, vi phân, delay, limit,… dùng cho đối tượng có tính liên tục.

 Khối Discrete: Tập hợp các khối tỉ lệ, vi phân, delay, limit,… dùng cho đối tượng có tính rời rạc.

 Khối Math Operations: tập hợp các khối toán tử.

 Khối Sinks: gồm các khối thu tập tín hiệu đầu ra.

 Khối Sources: gồm các khối nguồn.

Nạp code

Thư viện

Run, dừng

BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH63

Hình 4. 7 Thư viện Simulink.

 Các thao tác cơ bản trên Simulink:

 Sao chép: bằng cách kéo thả ta có thể chép một khối từ thư viện.

 Di chuyển: ta có thể di chuyển dễ dàng một khối hay nhiều khối trong phạm vi cửa sổ của khối đó nhờ phím chuột trái.

 Xóa: xóa một khối và các đường nối bằng cách gọi lệnh menu Edit/Clear, hoặc phím “delete” trên máy tính.

 Hệ thống con: bằng cách đánh dấu nhiều khối có quan hệ chức năng, sau đó gom chúng lại thơng qua menu Edit/Creat Subsystem.

 Simulink cho phép ta mô phỏng với miền liên tục và rời rạc. Để thay đổi giữa hai miền này, ta thực hiện như sau:

 Nhấp vào “Simulation” trên tool Simulink, sau đó chọn “Model Configuration Parameters”, hoặc nhấn tổ hợp phím Ctrl E.

 Chọn Solver-> Type. Chọn “Variable-step” nếu mô phỏng trên miền liên tục. Chọn “Fixed-step” nếu mô phỏng trên miền rời rạc.

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH64

Hình 4. 8 Thiết lặp miền mơ phỏng.

4.3.3Thư viện waijung:

Để viết chương trình và nhúng code xuống STM32F4, ta cần phải cài đặt thư viện Waijung Blockset. Waijung Blockset là một thư viện gồm các khối được xây dựng trên nền tảng C của Matlab, có chức năng cấu hình cho tất cả các ngoại của vi điều khiển thuộc dòng STM32F405xx-407xx-415xx-417xx. Các khối trong thư viện Waijung Blockset đều có khả năng xuất code cho vi điều khiển STM32F4 khi sử dụng tính năng Real-time Workshop, phù hợp các phiên bản MATLAB 2009a, 2009b trở đi…….mới nhất. Giao diện của từng khối rất dễ sử dụng và được mô tả bằng tiếng anh rất chi tiết. Đặc biệt cho phép STM32 giao tiếp qua UART, USB với MATLAB để chạy Simulink.

Để cài đặt thư viện này, ta chỉ cần chỉ đường dẫn chứa file cài và nhấn “install”. Sau khi cài đặt xong, lúc này thư viện simulink có thêm mục “Waijung Blockset”. Truy cập vào trang web http://waijung.aimagin.com/ để tải thư viện.

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH65

Hình 4. 9 Thư viện waijung blockset.

4.3.4Tool box Fuzzy:

Để đơn giản hóa việc áp dụng các giải thuật hiện đại, thơng minh vào điều khiển. Thì Matlab có hỗ trợ người dùng các tool box. Fuzzy logic Toolbox cung cấp các chức năng, ứng dụng MATLAB cho việc phân tích, thiết kế và mô phỏng các hệ thống dựa trên logic mờ. Hộp công cụ cho phép chúng ta mơ hình hóa các hành vi hệ thống phức tạp bằng cách sử dụng các logic đơn giản, và sau đó thực hiện các quy tắc này trong một hệ thống suy luận mờ.

Việc sử dụng Fuzzy logic Toolbox được trình bày như sau:

Bước 1: Tại giao diện chính của Matlab, gõ “fuzzy” thì giao diện tool fuzzy sẽ xuất hiện. Tiếp theo, nhấp chuột vào File/ New FIS chọn loại Mamdani hoặc Sugeno để thiết kế.

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH66

Hình 4. 10 Giao diện ban đầu vủa fuzzy.

Bước 2: Tại thẻ Edit/ And Variable có thể chọn số lượng đầu vào và ra của giải thuật.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH67

Bước 3: Sau khi điều chỉnh số đầu vào, ra phù hợp với hệ thống, ta viết tập mờ cho chương trình bằng cách nhấn đúp vào biểu tượng icon của tập mờ. Tại thẻ Membership Function Editor. Ta có thể điều chỉnh được số lượng hàm liên thuộc, tên hàm, kiểu hàm, thông số, và giới hạn.

Hình 4. 12 Tập mờ.

Bước 4: Sau khi viết xong tập mờ cho hệ thống, ta tiến hành viết luật mờ bằng cách chọn Edit/Rule. Giao diện viết luật mờ sẽ hiện ra các cột tùy vào số lượng đầu vào ra của hệ thống. Chọn các hàm liên thuộc và cách kết nối để tạo thành luật mờ.

BỘ MƠN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH68

Hình 4. 13 Luật mờ.

Bước 5: Sau khi hoàn tất thiết kế luật mờ. Ta xuất file ra workspace để làm việc hoặc cũng có thể lưu file dưới dạng .fis để sử dụng cho những lần sau bằng cách chọn File/Export.

Bước 6: Để sử dụng Fuzzy logic Toolbox, vào thư viện simulink chọn Fuzzy Logic Controller để thêm vào chưa trình. Tại thẻ thuộc tính của Fuzzy Logic Controller, điền tên của file fuzzy vừa tạo.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH69

Hình 4. 14 Gọi fuzzy vào chương trình.

4.3.5Toolbox neural và nhận dạng hệ thống:

 Để nhận dạng hệ thống, ta tiến hành theo các bước sau:

Bước 1: Thu thập dữ liệu ngõ vào và ngõ ra của hệ thống và lưu vào excel hoặc workspace.

Bước 2: Nhấp vào “import data” trên tool matlab để import dữ liệu đã thu thập vào matlab.

Bước 3: Trên môi trường làm việc matlab, gõ “ident” để mở thanh công cụ nhận diện hàm truyền.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH70

Hình 4. 15 Giao diện làm việc của tool ident.

Bước 4: Chọn “Import data” -> “Time domain data”.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH71

Bước 5: Tại “Input” và “Output” ta điền tên dữ liệu tương ứng với ngõ vào và ngõ ra. “Starting time”: thời gian bắt đầu lấy mẫu để nhận dạng (s), thường lấy giá trị là 0. “Sampling interval”: thời gian lấy mẫu. Các thời gian phải được điền chính xác vì chúng ảnh hưởng rất lớn đến kết quả nhận dạng.

Bước 6: Sau khi chèn dữ liệu vào, ta nhấn “Import” để import dữ liệu.

Hình 4. 17 Giao diện tool ident sau khi chèn dữu liệu.

BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH72

Hình 4. 18 Chọn số cực và số zero của hệ thống cần nhận dạng.

Number of poles: số bậc mẫu số của phương trình của hệ thống cần nhận dạng. Number of zeros: số bậc tử số của phương trình của hệ thống cần nhận dạng.

Bước 8: Chọn “Estimate” để bắt đầu nhận dạng.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH73

Bước 9: Ta nhấn “Model output” để kiểm tra hệ thống sau khi nhận dạng đạt yêu cầu không. Ta chú ý đển số “Best Fits” cao thì ta đã nhận dạng gần đúng hệ thống. Nếu chỉ số này, ta cần phải nhận dạng lại.

Bước 10: Nhấp chuột phải vào “tf1” để hiển thị phương trình. Phương trình này mơ tả gần đúng hệ thống cần nhận dạng.

 Tool neural:

Tương tự như Fuzzy logic Toolbox, Tool box Neural cũng là một sản phẩm được phát triển bởi Matlab để hỗ trợ người dùng. Tool box Neural cung cấp các hàm và chương trình ứng dụng giúp mơ hình hóa những đối tượng khơng tuyến tính, phức tạp hoặc khó nhận dạng bằng tốn học. Tool box Neural cịn hỗ trợ các phương pháp huấn luyện có giám sát như lan truyền thuận (feedforward), hàm cơ sở bán kính radial basis và dynamic network. Bên cạnh đó Tool box Neural cịn hỗ trợ huấn luyện không giám sát với việc thay đổi cấu trúc và tối ưu số lớp của mạng. Có thể sử dụng Tool box Neural để thiết kế, huấn luyện, mơ phỏng mạng neural để ứng dụng vào phân tích dữ liệu, bài tốn phân loại, nhận dạng, dự báo, nhận dạng và điều khiển đối tượng phức tạp. Để tiến hành quá trình training, Simulink hỗ trợ 3 tool neural: Model Reference Controller, NARMA_L2 Controller, NN Prepedictive Controller. Ở đây, nhóm sử dụng tool NARMA_L2 Controller để training.

BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH74

Hình 4. 20 Giao diện của tool NARMA_L2.

Ở đây, ta cần chú ý đên các mục sau đây: 1: Số neural của lớp ẩn.

2: Khoảng thời gian lấy mẫu để training. 3, 4: Thời gian delay đầu vào và đầu ra. 5: Số mẫu training.

6, 7: Giá trị đầu vào cực đại và đầu vào cực tiểu. 8, 9: Giá trị đầu ra cực đại và cực tiểu.

10: Nơi chứa hàm truyền hệ thống sau khi nhận dạng bằng tool “ident”. 11: Bắt đầu quá trình tạo dữ liệu.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH75

12: Nơi chèn dữ liệu có sẵn để train. Nếu ta sử dụng dữ liệu có sẵn, thì ta sẽ bỏ qua mục số 10.

13: Xuất dữ liệu ra workspace.

14: Số mẫu sử dụng để huấn luyện neural. 15: Lựa chọn kiểu training.

Cuối cùng, chọn “Training Network” để bắt đầu q trình huấn luyện neural.

4.4 MƠ HÌNH MƠ PHỎNG:

4.4.1Mơ hình máy bay trực thăng hai bậc tự do:

Mơ hình mơ phỏng hệ TRMS được thể hiện bằng phần mềm Matlab/Simulink. Với hai giá trị ngõ vào là hai giá trị điện áp điều khiển hai động cơ của cánh quạt chính (u_yaw) và cánh quạt đuôi (u_pitch). Với bốn giá trị đầu ra là giá trị góc pitch của trục xoay (v) và góc yaw của trục xoay (h), giá trị vận tốc góc của động cơ cánh quạt chính (v), giá trị vận tốc góc của động cơ cánh quạt đi (h).

Một số thơng số mơ hình như sau:

- Khối lượng động cơ đuôi và cánh quạt đuôi: mtr = 0.23 (kg). - Khối lượng của phần đuôi của thanh xoay: mt = 0.2(kg). - Khối lượng của đối trọng: mc = 0.5 (kg).

- Khối lượng của thanh đối trọng: mb = 0.15(kg).

- Khối lượng động cơ chính và cánh quạt chính: mmr = 0.24(kg). - Khối lượng của phần chính của thanh xoay: mm = 0.2(kg). - Chiều dài của thanh đối trọng: lb = 0.34(m).

- Khoảng cách từ khớp quay đến đối trọng: lc = 0.26(m). - Chiều dài phần đuôi của thanh xoay: lt = 0.4(m).

- Chiều dài phần chính của thanh xoay: lm = 0.4(m). - Là gia tốc trọng trường: g = 9.8(m/s2).

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH76

Từ sơ đồ khối hệ thống TRMS đã thiết lập ở chương 2 ta tiến hành mơ phỏng trên Matlab/simulink.

Hình 4. 21 Sơ đồ Simulink chi tiết cho hệ TRMS.

 PID: ở đây, nhóm thực hiện theo phương pháp Ziegler – Nichols để tìm ra bộ điều khiển PID thích hợp.

 Đối với giải thuật Fuzzy cho hệ TRMS- nhóm đang thực hiện, có hai thơng số đầu vào là sai số (e) và tốc độ sai số (de/dt) và đầu ra là điện áp (u).

Vì hệ thống đo góc, do giá trị góc này trả về có thể lớn hơn hoặc nhỏ hơn giá trị đặt nên sai số và tốc độ sai số có thể âm hoặc dương hai giá trị e và de/dt được chọn thuộc khoảng [-10 10].

Hệ thống cần cung cấp Duty Cycle trên 5% để hệ thống có thể hoạt động được, và do giới hạn góc điều khiển của mơ hình nên giá trị áp tối đa đã được thực nghiệm là 7.1 do hệ thống cơ khí khơng cho phép. Do đó, ta chọn ngõ ra của Fuzzy thuộc khoảng [5.1 7.1].

BỘ MÔN ĐIỆN TỬ CƠNG NGHIỆP – Y SINH77

Ngồi cịn có các khối tiền xử lí và hậu xử lí để đưa các giá trị ngõ vào và ngõ ra về

Một phần của tài liệu Đồ án tốt nghiệp Kỹ thuật điện tử truyền thông: Điều khiển hệ phi tuyến dùng giải thuật thông minh (Trang 71)

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

(117 trang)