Đăng ký Đăng nhập
Trang chủ Nghiên cứu, thiết kế chế tạo và điều khiển mô hình ổn định khí động hai cánh nân...

Tài liệu Nghiên cứu, thiết kế chế tạo và điều khiển mô hình ổn định khí động hai cánh nâng dùng thuật toán pid

.DOCX
35
335
134

Mô tả:

1 MỤC LỤC DANH MỤC HÌNH ẢNH.........................................................................................2 DANH MỤC BẢNG.................................................................................................3 LỜI NÓI ĐẦU...........................................................................................................4 CHƯƠNG 1. TỔNG QUAN.....................................................................................5 1.1. Tổng quan về cơ cấu hai cánh nâng..............................................................5 1.1.1. Tổng quan về cơ cấu hai cánh nâng.......................................................5 1.1.2. Tổng quan về thiết bị với NI ELVIS......................................................9 1.2. Tổng quan về Arduino và kỹ thuật lập trình nhúng Labview trên Arduino..12 1.2.1. Tổng quan về Arduino.........................................................................12 1.2.2. Tổng quan về LabVIEW......................................................................13 1.2.3. Lập trình nhúng Labview trên Arduino...............................................18 1.3. Tính cấp thiết và đặt vấn đề ngiên cứu của đồ án........................................22 1.3.1. Tính cấp thiết........................................................................................22 1.3.2. Vấn đề ngiên cứu của đồ án.................................................................22 1.4. Kết luận......................................................................................................23 CHƯƠNG 2: TÍNH TOÁN, THIẾT KẾ HỆ THỐNG CƠ KHÍ.............................24 2.1. Lựa chọn kết cấu........................................................................................24 2.1.1. Phân tích yêu cầu.................................................................................24 2.1.2. Thiết kế tổng thể mô hình....................................................................24 2.2. Xây dựng mô hình động lực học, tính hàm truyền đạt.................................26 Mô hình hóa cơ hệ..........................................................................................26 2.3. Thiết kế mô hình cơ khí..............................................................................29 2.3.1. Thanh đỡ..............................................................................................29 2.3.2 Gá gối đỡ...............................................................................................30 2.3.3. Gá thanh đỡ..........................................................................................30 2.3.4. Khớp nối trục.......................................................................................31 2.3.5. Phần đế.................................................................................................31 2 2.3.6. Mô hình hoàn thiện..............................................................................32 3 DANH MỤC HÌNH ẢNH 4 DANH MỤC BẢNG 5 LỜI NÓI ĐẦU Xây dựng các bài thí nghiệm để phục vụ nhu cầu học tập đang chiếm được sự quan tâm của học sinh, sinh viên, và giảng viên. Từ tình hình thực tế đó, việc xây dựng các panel thí nghiệm là điều rất cần thiết cho nhu cầu thực hành đang ngày càng được quan tâm. Vấn đề xây dựng các panel thí nghiệm phục vụ cho nhu cầu học tập nước ta hiện nay đang được quan tâm đầu tư, phát triển, dưới sự hướng dẫn thầy giáo Nguyễn Anh Văn cùng thầy Nguyễn Văn Thắng, tôi đã thực hiện đồ án:”Nghiên cứu, thiết kế chế tạo và điều khiển mô hình ổn định khí động hai cánh nâng dùng thuật toán PID”. 6 CHƯƠNG 1. TỔNG QUAN 1.1. Tổng quan về cơ cấu hai cánh nâng 1.1.1. Tổng quan về cơ cấu hai cánh nâng Hệ thống này được vận hành nhờ hai quạt gió DC gắn đối xứng ở hai đầu của thanh đỡ. Góc quay của thanh liên kết được đo nhờ sử dụng một cảm biến gia tốc MPU 6050. Một số ví dụ về cơ cấu hai cánh nâng trên thế giới là là máy bay lên thẳng chuyển đổi sang máy bay cánh quạt V- 22 Osprey, tên lửa, khí cầu và máy bay phản lực. Các thiết bị bay thường khó mô hình hóa. Thông thường điều này sẽ liên quan đến việc sử dụng các công cụ nhận dạng hệ thống phần mềm để xác định các thông số. Do tính phức tạp của chúng, các hệ thống bay thường được chia nhỏ thành các hệ thống con khác nhau để giúp dễ quản lý hơn. Các hệ thống con này có thể được xử lý riêng lẻ và sau đó được tích hợp để cung cấp một giải pháp tổng thể. Cơ cấu hai cánh nâng là 1 hệ thống đa năng được thiết kế để dạy và chứng minh các nguyên tắc cơ bản của động lực bay, được thiết kế riêng cho nền NI ELVIS và phần mềm LabVIEW, hệ thống có thể dễ dàng được cấu hình để chứng minh các kỹ thuật điều khiển khác nhau. Cơ cấu này được hãng Quanser phát triển được dùng trong phòng thí nghiệm. 7 Hình 1.1. Sơ đồ khối kết nối giữa Quanser QNET VTOL + board NI ELVIS II và PC Hình 1.2. Quanser QNET 1.0 VTOL Board + NI ELVIS II 8 Hình 1.3. Các bộ phận chính của panel QNET 1.0 VTOL Bảng 1: Các bộ phận chính panel QNET 1.0 VTOL STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15 Các bộ phận chính Động cơ DC Dây kết nối bộ khuếch đại tới động cơ Bộ giữ cánh quạt Lá chắn cánh quạt Thanh đỡ Trục encoder Cánh tay đỡ Bu lông, đai ốc cố định Encoder với gá encoder Encoder Đối trọng Bu lông, đai ốc gắn cố định đối trọng vào khung đỡ Kết nối PCI với NI ELVIS Mạch công suất Nguồn 12V Công tắc Đèn Led 9 Hình 1.4. Quanser QNET 2.0 VTOL Board + NI ELVIS II Hình 1.5. Các bộ phận chính của panel QNET 2.0 VTOL 10 Bảng 2: Các bộ phận chính panel QNET 2.0 VTOL STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Các bộ phận chính Encoder Trục encoder Đèn led Công tắc đèn led Nguồn 12V Cầu chì Hiển thị nguồn bằng đèn led Đối trọng Động cơ DC quạt Kết nối PCI Cánh tay đỡ 5 chân kết nối encoder 5 chân kết nối encoder 8 chân kết nối động cơ 1.1.2. Tổng quan về thiết bị với NI ELVIS Là thiết bị dùng để thiết kế và thiết lập mạch thực hành cho mạch điện, điều khiển, dụng cụ điện, thông tin liên lạc và các bài thí nghiệm điện - điện tử. Tích hợp các thiết bị ảo: Oscilloscope, đồng hồ đa năng kỹ thuật số (Digital Multimeter – DMM), máy phát xung (Function Generator), bộ nguồn cung cấp (Variable Power Supply), thiết bị phân tích Bode (Bode Analyzer), máy phát sóng ngẫu (Arbitrary Waveform Generator), bộ phân tích tín hiệu động (Dynamic Signal Analyzer – DSA), bộ phân tích Dòng/Áp với mã nguồn của LabVIEW. Thiết kế mới, mỏng với kiểu kết nối mở cho các board thực tập của các hãng khác. Đồng hồ đo đa năng DMM kiểu cách ly cho tín hiệu tốt hơn. Trang bị bo (board) cầu chì bảo vệ (có thể thay thế được) trong trường hợp xảy ra ngắn mạch hay điện áp cao. Giao tiếp với máy tính qua cổng USB tốc độ cao, dùng để giảng dạy sinh viên cho tất cả các năm, giúp sinh viên học về cơ sở lý thuyết và thực hành, từ thiết kế mạch điện đến thông tin liên lạc. Đặc điểm chính thiết bị 11 Hình 1.6. Đặc điểm chính NI ELVIS Là bộ nguồn cung cấp với nhiều nguồn khác nhau như ±15V, +5V, có thể điều chỉnh bằng tay hay điều chỉnh lập trình bằng phần mềm. Là máy phát xung, có thể điều khiển bằng tay hay bằng lập trình. Là thiết bị chuyên dùng trong giáo dục cho thiết kế và thực hành dựa vào phần mềm thiết kế hệ thống đồ họa LabVIEW. Là công cụ hàng đầu trong việc giảng dạy các khái niệm trong nhiều lĩnh vực như: trang bị thiết bị, mạch điện, điều khiển, thông tin liên lạc và thiết kế mạch nhúng theo kiểu thực hành và tương tác. Tích hợp 12 thiết bị đo lường ảo thông dụng. Sinh viên có thể mô phỏng các khái niệm về lý thuyết trong phần mềm Multisim, thực hành mạch thật với NI ELVIS II, sau đó so sánh sự khác biệt giữa mô phỏng và mạch thực bằng phần mềm LabVIEW và LabVIEW SignalExpress. NI ELVIS là thiết bị quan trọng trong việc giảng dạy điện tử với phần mềm Multisim, phần mềm đẫn đầu trong mô phỏng. 12 Hình 1.7. Chức năng chính NI ELVIS Với phần mềm Multisim 10.1 chạy trong NI ELVIS II, việc học thiết kế mạch trở nên tương tác bằng các công cụ như là 3D NI ELVIS II cũng như là khả năng truy cập vào các thiết bị ảo của NI ELVIS II trong môi trường Multisim và chuyển dữ liệu từ mô phỏng sang dữ liệu thật chỉ bằng một cái click chuột. Giao tiếp với máy tính qua cổng USB tốc độ cao, có thể dùng để giảng dạy sinh viên cho tất cả các năm, giúp sinh viên học về cả cơ sở lý thuyết và thực hành, từ thiết kế mạch điện đến thông tin liên lạc. Chạy trên chương trình LabVIEW NI ELVIS II hoàn toàn có tùy chọn trên LabVIEW và bao gồm cả phần mềm Express VIs cho 12 thiết bị ảo tích hợp trong đó. Khả năng này cho phép sinh viên có thể định dạng các thiết bị ảo bằng kiểu “trỏ và chọn” cho từng thiết bị riêng biệt, giúp xây dựng các tham số của thiết bị dễ dàng. 13 Sinh viên cũng có thể dùng NI ELVIS II với phần mềm LabVIEW SignalExpress để so sánh số liệu trong mô phỏng Multisim với số liệu thật từ NI ELVIS II và tạo ra các báo cáo tương tác để đánh giá trong lớp học. 1.2. Tổng quan về Arduino và kỹ thuật lập trình nhúng Labview trên Arduino 1.2.1. Tổng quan về Arduino Arduino là một bo mạch vi xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác. Đặc điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình. Và điều làm nên hiện tượng Arduino chính là mức giá rất thấp và tính chất nguồn mở từ phần cứng tới phần mềm. Lập trình cho Arduino Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngôn riêng. Ngôn ngữ này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung. Một số người gọi nó là Wiring, một số khác thì gọi là C hay C/C++. Đội ngũ phát triển Arduino gọi là Ngôn ngữ Arduino. Ngôn ngữ Arduino bắt nguồn từ C/C++ phổ biến hiện nay do đó rất dễ học, dễ hiểu… Để lập trình cũng như gửi lệnh và nhận tín hiệu từ mạch Arduino, nhóm phát triển dự án này đã cũng cấp đến cho người dùng một môi trường lập trình Arduino được gọi là Arduino IDE (Intergrated Development Environment). 14 Hình 1.8. Gửi lệnh và nhận tín hiệu từ cổng COM. 1.2.2. Tổng quan về LabVIEW LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) là một phần mềm máy tính được phát triển bởi công ty National Instruments, Hoa Kỳ. LabVIEW còn được biết đến như một ngôn ngữ lập trình với khái niệm hoàn toàn khác so với các ngôn ngữ lập trình truyền thống. Bằng cách diễn đạt cú pháp thông qua các hình ảnh trực quan trong môi trường soạn thảo, LabVIEW đã được gọi với tên khác là lập trình G (viết tắt của “Graphical” - có nghĩa là đồ họa). Về ý nghĩa kỹ thuật, LabVIEW cũng được dùng để lập trình ra các chương trình (source code: mã nguồn) trên máy tình tương tự như các ngôn ngữ lập trình dựa trên chữ (text-based language) như C, Java, Basic, Pascal… Đồng thời, LabVIEW hỗ trợ các kỹ sư, nhà khoa học và sinh viên xây dựng các thuật toán một cách nhanh gọn, sáng tạo, dễ hiểu nhờ các khối hình ảnh có tính gợi nhớ và cách thức hoạt động theo kiểu dòng dữ liệu lần lượt từ trái qua phải. Các thuật toán này sau đó được áp dụng lên các mạch điện và cơ cấu chấp hành thực nhờ vào việc kết nối hệ thống thực với LabVIEW thông qua nhiều chuẩn giao tiếp như: RS232, USB, TCP/IP, GPIB. Vì thế LabVIEW được gọi là một ngôn ngữ giao tiếp đa kênh. 15 Đặc trưng của LabVIEW LabVIEW được thiết kế dưới dạng ngôn ngữ lập trình bằng đồ họa, giúp cho người sử dụng dễ dàng nhận biết bằng mắt các khối lệnh và sử dụng chúng một cách linh hoạt chỉ bằng cách click đúp, kéo thả hoặc “copy” “paste”. Tính linh hoạt của các khối công cụ bằng đồ họa là rất lớn, người dùng cũng có thể “copy” và “paste” như những đoạn code tương tự các ngôn ngữ lập trình truyền thống. Tính linh hoạt của LabVIEW cũng được đánh giá rất cao khi đã và đang được sử dụng trong rất nhiều lĩnh vực đo lường và điều khiển, mô phỏng và giả lập. LabVIEW xây dựng các khối đồ họa và gắn kết chúng bằng dây nối để thay cho các lệnh và các hàm là đặc điểm tiến bộ so với các ngôn ngữ lập trình truyền thống khác. Giao diê ̣n LabVIEW phân chia ra thành Front panel và Block diagram. Front panel chính là phần mă ̣t máy mà ta cần mô phỏng. Giống như các thiết bị thực tế, Font panel bao gồm các nút lựa chọn, màn hình hiển thị, núm điều chỉnh… để phục vụ cho viê ̣c mô phỏng. Block diagram (khối đồ họa) xuất hiê ̣n cùng lúc với Front panel, nó là mă ̣t sau của chương trình. Trên Block diagram thực hiê ̣n quá trình lâ ̣p trình (ghép nối) cho chương trình theo ngôn ngữ lâ ̣p trình G. Nhiều năm qua, NI đã phát triển và truyền bá thiết bị đo ảo, một khái niệm đã cách mạng hóa ngành công nghiệp. Thiết bị đo ảo giúp các kĩ sư dễ dàng tạo ra các hệ thống do người dùng quy định, thỏa mãn đúng nhu cầu ứng dụng của họ. Thiết kế hệ thống đồ họa với LabVIEW mở rộng thiết bị đo ảo, cung cấp cho các nhà thiết kế một nền tảng để giải quyết những thách thức về đo lường, phân tích, kết nối và điều khiển. Thiết kế hệ thống đồ họa kết hợp với các công cụ phát triển cấp độ cao, như biểu đồ trạng thái có khả năng triển khai các hệ thống điều khiển máy tới màn hình nền. Ứng dụng của LabVIEW Ứng dụng rộng rãi của LabVIEW được kể đến trong các lĩnh vực như sau: 16 - Đo lường, tự động hóa, cơ điện tử, robot, vật lý, toán học, sinh học, vật liệu, ô tô, … . - Khả năng ứng dụng của LabVIEW, mô phỏng và thực tế, các lĩnh vực điều khiển, đo lường, thu thập và lưu trữ dữ liệu, công nghiệp, dân dụng quân sự…. - LabVIEW giúp kỹ sư kết nối bất kỳ cảm biến, bất kỳ cơ cấu chấp hành nào với máy tính. - LabVIEW còn có thể được sử dụng để xử lý các kiểu dữ liệu như tín hiệu tương tự , tín hiệu số, hình ảnh, âm thanh, …. - LabVIEW hỗ trợ các chuẩn giao tiếp khác nhau : RS232, RS485, TCP/IP, PXI. - Chúng ta có thể tạo ra các thực thi độc lập và các thư viện chia sẻ (liên kết động DLL). LabVIEW có thể mô phỏng, giả lập nhiều thiết bị và mô hình trong thực tế, rút ngắn thời gian và tiết kiệm chi phí khi tiến hành thực nghiệm và xây dựng mô hình trên thực tế. Thông qua việc giả lập, người kỹ sư cũng thay đổi các thông số kỹ thuật sao cho mô hình được tối ưu nhất có thể. Ưu điểm và hạn chế của LabVIEW a. Ưu điểm - LabVIEW có tính ứng dụng cao khi dùng được trên hầu hết các hệ điều hành hiện nay. - Xây dựng công cụ trên các khối đồ họa, trực quan sinh động và dễ dàng trong quá trình tìm kiếm và sử dụng. - Tự động hóa đo và xử lý dữ liệu, kiểm soát hệ thống, tự động hóa các hệ thống thử nghiệm - Thiết kế hệ thống nhúng và hệ thống giám sát, phục vụ mục đích dạy và học. - Xây dựng được các thiết bị đo ảo, mô phỏng giả lập, phát hiện va chạm … Từ đó người sử dụng có thể căn cứ vào để đưa ra những điều chỉnh cho hợp 17 lý. Giúp tiết kiệm thời gian và kinh phí so với việc xây dựng và phát triển mô hình thực nghiệm. - Tính năng dò và gỡ lỗi trong LabVIEW giúp người dùng khắc phục một cách tốt nhất, trong thời gian ngắn nhất. b. Hạn chế - Phân chia ra Front panel và Block diagram tuy tách rời có thể dễ xử lý nhưng đôi khi cũng gă ̣p phải những vấn đề trong viê ̣c tìm kiếm và sửa lỗi. - Có thể tích hợp nhiều thiết bị phần cứng nhưng các thiết bị này giá thành vẫn còn cao. - Để tối ưu tính năng của hê ̣ thống cần đồng bô ̣ các thiết bị, trình tự cũng khá phức tạp. Các công cụ của LabVIEW Trong phần mềm LabVIEW có 3 bảng công cụ chính (Hình 1.9) Hình 1.9. Tool Palette, Control Palette và Funtion Palette Tool Palette: là các công cụ thao tác trực tiếp trong cả Front panel và Block diagram. Trong tool Palette chứa các chế độ thao tác khác nhau của con trỏ. Các chức năng sẽ được kích hoạt khi người dùng lựa chọn trong bảng. Sử dụng Tool palette để sửa đổi các đối tượng trong cả Front panel và Block diagram. 18 Control Palette: là các thanh công cụ chứa hàm cho Front panel, chỉ hiển thị tron Front panel. Các hàm là điều khiển (Control) hoặc hiển thị (Indicator). Funtion Palette: là thư viện chứa các hàm và khối chức năng cho Block diagram. Chỉ sử dụng được trong Block diagram (hình 2.2). Trong Function Palette người dùng có thể tìm các hàm khác nhau theo mục đích sử dụng ví dụ như các hàm toán học, các hàm xử lý tín hiệu, đo lường, điều khiển và mô phỏng… . Các cấu trúc cơ bản trong LabVIEW - Các cấu trúc vòng lặp Labview cũng giống các ngôn ngữ lập trình khác cung cấp các cấu trúc vòng lặp thực hiện các thuật toán khác nhau. Điểm khác biệt là các cấu trúc vòng lặp thay vì sử dụng từ khác hay các dòng lệnh thì được thay thế bằng các khối chức năng. Dưới đây là một số cấu trúc điển hình trong Labview. - Cấu trúc chuỗi (Sequence structure) Cấu trúc này cho phép các chương trình hoạt dộng theo thứ tự định sẵn từ Frame 0, Fram 1, …, cho đến Frame cuối cùng. Người dùng có thể thêm các Frame bằng cách nhấp chuột phải vào đường viền của hình chữ nhật và chọn Add Sequene Local. Mỗi Frame được gọi là một sequence cục bộ và những sequence cục bộ này thực hiện một nhiệm vụ nhất định do người lập trình ấn định. - Cấu trúc lựa chọn (Case structure) Cấu trúc Case dùng để chọn một biểu đồ tượng trưng, một mệnh đề để thể hiện giá trị đầu vào hay cụ thể hơn là chọn một công việc trong một nhóm các công việc để thực hiện, đây là một cấu trúc có vai trò rất quan trọng. - Vòng lặp While (While loop) Vòng lặp là một cấu trúc lặp có điều kiện mà chương trình có thể chạy ở bên trong khi điều kiện vẫn thỏa mãn. Vòng lặp While có thể chứa trong nó những vòng lặp While khác hoặc những cấu trúc khác. - Vòng lă ̣p For (For loop) 19 Vòng lăp̣ For lặp lại câu lệnh theo điều kiện quy định có sẵn, đây là vòng lặp hữu hạn. - Shift register (Chuyển đổi địa chỉ) Shift register dùng cho vòng lặp For và While, dùng để lưu kết quả phép tính của vòng lặp trước đó cho vòng lặp tiếp theo. Một số hàm xử lý dữ liệu mảng Một mảng là tập hợp các phần tử có cùng kiểu dữ liệu. Để khởi tạo một mảng ta vào function rồi chọn array và đặt hằng số của array. Khi bắt đầu chọn thì mảng xuất hiện với một đầu vào duy nhất, ta có thể thêm bớt các đầu này tùy ý. Kích cỡ mảng chính là số phần tử đầu vào. Dưới đây là một số hàm xử lý: - Hàm Array subset (mảng tâ ̣p con): làm nhiệm vụ đánh thứ tự và chứa các phần tử ở đầu vào length và loại bỏ các phần tử khác: - Hàm Index array (mảng chỉ số): dùng để truy cập tới một phần tử của mảng tại index mà ta chọn. - Hàm Built array (xây dựng mảng): có chức năng xây dựng các phần tử đầu vào thành mảng, ta có thể thêm nhiều phần tử đầu vào. Một số hàm xử lý về chuỗi (String) - Một chuỗi là một nhóm ký tự ASCII. Ta có thể sử dụng các chuỗi cho các bảng thông báo. Một số hàm xử lý chuỗi : - Format into string (Định dạng vào chuỗi): Thực hiện nối các chuỗi và các của sổ với nhau và định dạng chúng thành một chuỗi đơn ở đầu ra. - Concatenate string (Nối chuỗi): Nối các chuỗi nhỏ thành chuỗi lớn. 1.2.3. Lập trình nhúng Labview trên Arduino Để kết nối và làm việc với Arduino, trên LabVIEW cần có 1 bộ VIs của Arduino. Thông qua bộ VIs, LabVIEW có thể lấy dữ liệu từ các chân Arduino và xử lý, điều khiển hoặc hiển thị kết quả trên màn hình máy tính. Do sự phổ biến và chuẩn hóa của Arduino nên bộ VIs của nó đã được phổ biến rộng rãi không cần người sử dụng phải tự lập trình. 20 Cài đặt VI Package Manager (VIPM) – đây là phần mềm quản lý cũng như giúp chúng ta download các gói VI của LabVIEW. Hình 1.10. Cài đặt VI Package Manager. Sau khi cài đặt xong ta vào VIPM và tìm với từ khóa “Arduino”. Sau đó cài đặt Arduino compatible compiler for Labview cho LabVIEW, lưu ý là phải đúng phiên bản của LabVIEW. Hình 1.11. Cài đặt Arduino compatible compiler for LabVIEW Sau khi cài đặt xong ta sẽ được module lập trình nhúng Labview lên mạch Arduino như sau (Hình 1.13).
- Xem thêm -

Tài liệu liên quan