Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
1,18 MB
Nội dung
- 19 - CHƯƠNG PHẦN MỀM LABVIEW 3.1 Giới thiệu LabVIEW LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) phần mềm máy tính phát triển National Instruments LabVIEW dùng hầu hết phòng thí nghiệm, lĩnh vực khoa học kỹ thuật tự động hóa, điều khiển, điện tử, điện tử, hàng không, hóa sinh, điện tử y sinh nước đặc biệt Mỹ, Hàn quốc, Nhật Bản 3.1.1 LabVIEW gì? Ngôn ngữ lưu đồ đồ họa LabVIEW hấp dẫn kỹ sư nhà khoa học toàn giới phương pháp trực giác việc tự động hóa hệ thống đo lường điều khiển Ngôn ngữ lưu đồ kết hợp với I/O gắn liền điều khiển giao diện người sử dụng tương tác đèn báo làm cho LabVIEW trở thành lựa chọn lý tưởng cho kĩ sư nhà khoa học 3.1.2 Các khả LabVIEW LabVIEW biết đến ngôn ngữ lập trình với khái niệm hoàn toàn khác so với ngôn ngữ lập trình truyền thống ngôn ngữ C, Pascal Bằng cách diễn đạt cú pháp thông qua hình ảnh trực quan môi trường soạn thảo, LabVIEW gọi với tên khác lập trình G (viết tắt Graphical) Hiện phiên LabVIEW cho hệ điều hành Window, Linux, hãng NI phát triển modul LabVIEW cho máy hỗ trợ cá nhân (PDA) 3.1.3 Môi trường phát triển LabVIEW Phát triển nhanh với công nghệ Express: sử dụng Express VIs I/O nhanh chóng tạo ứng dụng đo lường phổ biến mà không cần lập trình Hàng nghìn chương trình minh họa, kiểu module phân cấp, trợ giúp tích hợp, thư viện giao diện người sử dụng kéo thả hàng nghìn chức lập sẵn, ngôn ngữ biên dịch để thực nhanh Đến phát triển lớn, theo hướng nhóm (teamoriented): Ngôn ngữ mở, gỡ rối đồ họa tích hợp, phân phối ứng dụng đơn giản, nhiều công cụ phát triển cấp cao, công cụ phát triển nhóm, điều khiển mã - 20 nguồn, quản lý đích Thu thập, phân tích hiển thị lập sẵn Thu thập: môi trường LabVIEW mở tương thích với phần cứng đo với trợ giúp tương tác, tạo mã nguồn khả kết nối tới hàng nghìn thiết bị giúp tập hợp liệu dễ dàng Vì LabVIEW cung cấp tính kết nối tới hầu hết thiết bị đo, nên bạn dễ dàng kết hợp ứng dụng LabVIEW vào hệ thống Bất chấp yêu cầu phần cứng, LabVIEW cung cấp giao diện để kết nối tới I/O cách dễ dàng Thông tin chi tiết có trang web ni.com/labVIEWtools 3.1.4 Các tín hiệu đo với LabVIEW Nhiệt độ, sức căng, độ rung, âm thanh, điện áp, dòng, tần số, ánh sáng, điện trở, xung, thời gian (giai đoạn), tín hiệu số, thu thập tín hiệu từ thiết bị bên cảm biến nhiệt độ, hình ảnh từ webcam, vận tốc động cơ, 3.1.5 Phân tích Tính phân tích mạnh mẽ, dễ sử dụng điều thiếu cho ứng dụng phần mềm LabVIEW có 500 chức lập sẵn để trích xuất thông tin hữu ích từ liệu thu nhận được, phân tích phép đo xử lý tín hiệu Các chức phân tích tần số, phát tín hiệu, toán học, chỉnh lý đường cong, phép nội suy cho phép bạn nhận số liệu thống kê quan trọng từ liệu Dù thuật toán có phức tạp đến đâu công cụ phân tích LabVIEW dễ sử dụng Hơn 15 Express VIs làm giảm độ phức tạp việc phân tích phép đo ứng dụng bạn qua hộp thoại cấu hình tương tác để xem trước kết phân tích Mô xử lý tín hiệu thu nhận để phục vụ mục đích nghiên cứu hay mục đích hệ thống mà người lập trình mong muốn 3.1.6 Hiển thị Xây dựng giao diện người dùng cách nhanh chóng thẩm mỹ nhiều so với ngôn ngữ khác Visual Basic, Matlab Hiển thị liệu bao gồm chức năng: trực quan, tạo báo cáo quản lý liệu LabVIEW bao gồm công cụ trực quan giúp hiển thị liệu hấp dẫn, có tiện ích vẽ biểu đồ đồ thị công cụ trực quan 2D, 3D cài sẵn Nguời sử dụng nhanh chóng cấu hình lại thuộc tính phần hiển thị màu sắc, kích cỡ - 21 phông, kiểu đồ thị, quay, phóng to thu nhỏ quay quét (pan) đồ thị chạy Thêm vào đó, ta xem điều khiển VIs qua Internet LabVIEW Đối với việc tạo báo cáo, NI cung cấp số tùy chọn công cụ tạo tài liệu, báo cáo dạng HTML, báo cáo dạng Word/Excel báo cáo tương tác với NI DIA Hình 3.1 Khả hiển thị phần mềm Labview 3.1.7 Điều khiển LabVIEW tích hợp nhiều công cụ tính giúp kỹ sư điều khiển tự động dễ dàng thực toán điều khiển Cho phép thực thuật toán điều khiển PID, Logic mờ (Fuzzy), cách nhanh chóng thông qua chức tích hợp sẵn LabVIEW Cho phép kết hợp với nhiều ngôn ngữ truyền thống C, C++ 3.1.8 Giao tiếp với thiết bị ngoại vi Giao tiếp với thiết bị ngoại vi thông qua nhiều chuẩn giao tiếp thông qua cổng giao tiếp: RS232, RS485, USB, PCI, Enthernet - 22 - Hình 3.2 Khả giao tiếp phần mềm 3.2 Những khái niệm LabView 3.2.1 VI (Vitual Instrument) - Thiết bị ảo Lập trình Labview thực sở thiết bị ảo (VI) Các đối tượng thiết bị ảo sử dụng để mô thiết bị thực, chúng thêm vào phần mềm Các VI tương tự hàm lập trình ngôn ngữ 3.2.2 Front Panel Block Diagram Một chương trình LabView gồm hai phần chính: giao diện với người sử dụng (Front Panel), hai giao diện dạng sơ đồ khối cung cấp mã nguồn (Block Diagram) biểu tượng kết nối (Icon/Connector) 3.2.2.1 Front Panel Front panel panel tương tự panel thiết bị thực tế Ví dụ nút bấm, nút bật, đồ thị điều khiển Từ Front Panel người dùng chạy quan sát kết dùng chuột, bàn phím để đưa liệu vào sau cho - 23 chương trình chạy quan sát Front Panel thường gồm điều khiển (Control) hiển thị (Indicator) Control đối tượng đặt Front Panel để cung cấp liệu cho chương trình Nó tương tự đầu vào cung cấp liệu Indicator đối tượng đặt Front Panel dùng để thị kết quả, tương tự phận đầu chương trình Biểu tượng Chú thích đồ thị Chú thích thước Hình 3.3 Front Panel chương trình Labview 3.2.2.2 Block Diagram Block diagram VI sơ đồ xây dựng môi trường LabVIEW, gồm nhiều đối tượng hàm khác để tạo cấu trúc lệnh để chương trình thực Block Diagram mã nguồn đồ họa VI Các đối tượng Front Panel thể thiết bị đầu cuối Block Diagram, loại bỏ thiết bị đầu cuối Block Diagram Các thiết bị đầu cuối sau loại bỏ đối tượng tương ứng Front panel Cấu trúc Block Diagram gồm thiết bị đầu cuối (Terminal), nút (Node) dây nối (wire) - 24 - Hàm chia Hình 3.4 Block Diagram chương trình LabVIEW 3.2.3 Icon & Connector Icon (biểu tượng): biểu tượng VI, sử dụng từ VI muốn sử dụng chức VI khác Khi VI gọi SubVI, tương đương chương trình ngôn ngữ khác Connector (đầu nối): phần tử Terminal dùng để nối đầu vào đầu VI với sử dụng Mỗi VI có Icon mặc định hiển thị bảng Icon góc bên phải cửa sổ Front Palette Block Diagram Khi VI phân cấp module hóa ta dùng chúng chương trình Do để xây dựng VI ta chia thành nhiều VI thực chức đơn giản cuối kết hợp chúng lại với thành khối để thực thi công việc cụ thể chương trình 3.3 Các kỹ thuật lập trình LabVIEW: Khác với ngôn ngữ lập trình khác, ngôn ngữ lập trình LabVIEW menu quen thuộc giống ngôn ngữ khác LabVIEW sử dụng bảng: Tools Palette, Controls Palette, Function Palette, bảng làm cho LabVIEW khác với ngôn ngữ sử dụng câu lệnh rườm rà khó nhớ Các bảng cung cấp chức để người sử dụng tạo thay đổi Front Panel Block Diagram biểu tượng, hình ảnh trực quan giúp cho việc sử dụng trở nên dễ dàng, linh động - 25 3.3.1 Tool palette Tool Panel xuất Font Panel Block Diagram Bảng cho phép người sử dụng xác lập chế độ làm việc đặc biệt trỏ chuột Khi lựa chọn công cụ, biểu tượng trỏ thay đổi theo biểu tượng công cụ Nếu thiết lập chế độ tự động lựa chọn công cụ người sử dụng di chuyển trỏ qua đối tượng Front Panel Block Diagram, LabVIEW tự động lựa chọn công cụ phù hợp bảng Tool Palette 3.3.2 Controls Palette (bảng điều khiển) Bảng điều khiển xuất Front panel Bảng điều khiển chứa điều khiển (control) hiển thị (Indicator) Bảng điều khiển đầy đủ minh họa hình bên đưới Để mở bảng controls palette ta vào menu View, chọn controls palette Bảng điều khiển sử dụng để người sử dụng thiết kế cấu trúc mặt hiển thị gồm thiết bị ví dụ: công tắc, loại đèn, loại hình hiển thị… Với bảng điều khiển này, người sử dụng chọn thiết bị chuẩn hãng sản xuất cung cấp ví dụ công tắc chọn thiết bị người sử dụng tự xây dựng Bảng điều khiển dùng để cung cấp liệu đầu vào hiển thị kết đầu Hình 3.5 Controls palette - 26 Trên bảng controls palette thể phong phú điều khiển khác hình Ta sử dụng tất phần bảng controls, hình mục Express mở, sau ta xem qua số điều khiển điển hình LabVIEW Numeric controls / Indicators Bộ công cụ dùng để thị điều khiển liệu dạng số chương trình LabVIEW Boollean controls /Indicators Bộ công cụ cung cấp hai giá trị True False Khi thực chương trình người sử dụng sử dụng chuột để điều khiển giá trị thiết bị Việc thay đổi giá trị thiết bị có tác dụng thiết bị xác lập chế độ Control Còn chế độ Indicator giá trị không thay đổi chúng thiết bị hiển thị String & Path Các điều khiển dùng để nhập hiển thị ký tự, xác lập chế độ đầu vào hay đầu đường dẫn đến file cần hiển thị 3.3.3 Function palette Bảng Functions Palette xuất Block Diagram Bảng chứa VI hàm mà người sử dụng thiết kế để tạo dựng nên khối lưu đồ Với bảng Function Palette, người lập trình thực lệnh khác lưu đồ như: phép tính số học, biểu thức toán học, vòng lặp, phép lựa chọn thông qua nhóm hàm, chức cung cấp bên cạnh bảng tạo sử dụng lại hàm, chức mà người sử dụng tự xây dựng Các hàm toán học minh họa thông qua biểu tượng Khi muốn lựa chọn thực hàm người sử dụng chọn biểu tượng thể cho hàm kéo thả vị trí Block Diagram sau xác định đầu vào đầu cần thiết - 27 3.4 Các kiểu liệu LabVIEW hỗ trợ cho tất dạng liệu Các kiểu liệu dạng Boolean, bytes, string, array, file, text, cluster dạng số chuyển đổi cách dễ dàng sang dạng cấu trúc Sau xem xét vài dạng liệu: 3.4.1 Variables (biến) Trong trình lập trình cần thiết phải sử dụng tới biến Thông qua biến, người lập trình thực việc xử lý thay đổi liệu cách thuận lợi Trong LabVIEW, biến sử dụng dạng biến toàn cục (global variables) biến địa phương (local variables) - Global variables (biến toàn cục): Biến toàn cục sử dụng để thực công việc truyền lưu trữ liệu vài VI Biến toàn cục coi đối tượng LabVIEW Khi ta tạo biến toàn cục LabVIEW tạo “VI toàn cục” đặc biệt Để tạo biến toàn cục, ta lựa chọn chúng menu “Structs and Constants function” sau đặt chúng lên Diagram Tiếp tục cần xác định cho chúng kiểu liệu thông qua kiểu liệu sử dụng thông qua Controls Indicators Chúng ta cần ý biến toàn cục cần phải tạo VI với tên riêng Đối với biến toàn cục cần xác định chế độ cho phép ghi cho phép đọc Đối với việc truy xuất vào biến toàn cục thực nhanh chóng kiểu liệu đơn giản numerics Boolean Tuy nhiên, ta sử dụng biến toàn cục để lưu trữ xử lý liệu dạng mảng (arrays), Clusters hay sâu (string) lớn thời gian nhớ cần thiết để xử lý chúng lại tương đối lớn Vì đòi hỏi vài dịch vụ quản lý nhớ biến gọi tới Khi sử dụng biến toàn cục biến cục vấn đề gặp phải “sự tranh chấp liệu” Biến sử dụng Labview không hoàn toàn giống ngôn ngữ lập trình dòng lệnh Việc “tranh chấp liệu” xảy hai nhiều đoạn mã lệnh thực song song thay đổi giá trị biến Đầu VI phụ thuộc vào thứ tự thực thi - 28 dòng lệnh Bởi phụ thuộc liệu biểu thức khác nhan không xác định chạy trước Nếu sử dụng biến toàn cục Vis mà thực song song, ta sử dụng biến toàn cục thêm vào để xác định liệu phép thay đổi đọc giá trị - Local variable: cho phép người sử dụng đọc viết thông tin lên thiết bị điều khiển thiết bị hiển thị Front Panel Để tạo biến địa phương, chọn Local Variable từ bảng Structs & Constant Khi sử dụng biến địa phương cần ý số thông tin sau Các biến địa phương có tác dụng thiết bị điều khiển thiết bị hiển thị mà lược đồ Ta sử dụng biến địa phương để truy cập tới điều khiển mà không lược đồ Ta có nhiều biến địa phương cho thiết bị điều khiển thiết bị hiển thị Tuy nhiên điều gây phức tạp, cho điều khiển bạn thay đổi trạng thái cách khó hiểu bạn ngẫu nhiên lựa chọn sai phần tử nhiều biến địa phương Giống biến toàn cục, bạn sử dụng biến địa phương “dòng liệu” hợp lệ khác sử dụng 3.4.2 String Kiểu string (chuỗi) kiểu liệu dạng chuỗi ký tự Ta sử dụng chuỗi tham gia tính toán xử lý Để lựa chọn ô text lưu trữ liệu kiểu string ta chọn từ ô “String & path” từ control palette hình bên Không thực việc chuyển đổi từ dạng string sang dạng khác dạng số, dạng mảng (array) Trong LabVIEW, người sử dụng cần phải tạo hiển thị số ký tự bảng mã ASCII mà hiển thị như: Esc, tab… Để giải vấn đề đó, Labview cung cấp số từ đại diện cho từ đó, cần thể ký tự ta cần gõ vào - 29 từ đại diện cho chúng Front Panel Sau số từ thay (Escape Code) 3.4.3 Array Trong việc lập trình cần xử lý số dãy số mà phần tử xử lý thành phần riêng biệt, mà ta cần tới mảng Các mảng mảng chiều (một cột véc tơ), mảng chiều, mảng chiều Labview hỗ trợ cho người lập trình tạo mảng mà chứa liệu kiểu numberic, string, boolean… nhiều dạng liệu khác Các mảng thường tạo vòng lặp Việc sử dụng vòng lặp tốt cho ứng dụng xác định vùng nhớ xác định từ bắt đầu Nếu không dùng vòng lặp LabVIEW cách biết vòng lặp lại lặp lại, việc quản lý nhớ gọi lại nhiều lần làm chậm việc xử lý Người sử dụng sử dụng chức xây dựng mảng Nó cho phép ràng buộc mảng gốc vào mảng khác 3.4.3.1 Array Constant Sử dụng hàm tạo mảng với phần tử số Để định nghĩa dạng liệu mảng số ta lựa chọn số vô hướng từ bảng Function Palette đặt vào bên mảng số Tất thành phần mảng có dạng Sử dụng Operating Tool để nhập giá trị cho thành phần mảng Ta thay đổi giá trị mảng VI chạy 3.4.3.2 Array Max & Min Hàm có chức tìm kiếm số lớn số nhỏ số mảng Hàm thường trả kết để hiển thị Mảng mảng n chiều loại liệu Giá trị lớn (max value) dạng liệu thành phần mảng số Chỉ số lớn (max index) số phần tử lớn - 30 Giá trị nhỏ (min value) dạng liệu thành phần mảng Chỉ số nhỏ (min index) số giá trị nhỏ 3.4.4 Các cấu trúc điều khiển luồng chương trình Trong ngôn ngữ lập trình nào, ta hay thường gặp làm việc với phần tử điều khiển luồng chương trình, cấu trúc (Structures) Các cấu trúc điều khiển luồng chương trình VI có cấu trúc là: For Loop, While Loop, Case Structure, Sequence Structure Fomula Node Các cấu trúc thực tự động liệu đầu vào chúng có sẵn thực công việc theo ý muốn hoàn thành cung cấp liệu tới dây nối liệu đầu Tuy nhiên, cấu trúc thực theo quy tắc riêng (Sub Diagram) SubDiagram tập hợp Node, Wire Terminal bên đường viền Structure Mỗi cấu trúc For Loop While loop có SubDiagram Cấu trúc Case Sequence có nhiều SubDiagram, có SubDiagram thực thời điểm Cách xây dựng SubDiagram giống việc xây dựng Block diagram mức đầu Việc truyền liệu vào Structure thông qua Terminal mà tự động tạo nơi dây nối qua đường viền cấu trúc, Terminal gọi đường ống (Tunel) 3.5 SubVI cách xây dựng SubVI 3.5.1 Khái niệm SubVI Khi thiết kế chương trình LabView, ta thường ý thiết kế VI xác định đầu vào đầu cho chúng Khi VI thực chức xác định Trong việc lập trình, VI sử dụng Block Diagram VI khác mức độ cao Khi VI cao gọi SubVI Như vậy, SubVI ta coi chương trình chương trình khác C++… Trong chương trình labVIEW, không bị hạn chế số - 31 SubVI SubVI không bị hạn chế việc gọi đến SubVI Với tiện ích này, chương trình Labview trở nên dễ hiểu, gọn gàng dễ gỡ rối 3.5.2 Xây dựng SubVI Có hai cách đơn giản để xây dựng SubVI: tạo SubVI từ VI tạo SubVI từ phần VI 3.5.2.1 Tạo SubVI từ VI Các SubVI sử dụng thông qua Icon Conector Icon VI biểu tượng đồ họa Conetor VI gán Control Indicator cho Terminal đầu vào đầu Muốn gọi VI từ Block Diagram VI khác, trước tiên ta phải tạo Icon Conector cho VI Để tạo Icon, ta bấm đúp chuột trái vào biểu tượng Icon góc bên phía Front Panel bấm chuột phải vào biểu tượng Icon chọn Edit Icon… Sau chọn Edit Icon… ta dùng công cụ bên trái cửa sổ để tạo kiểu Icon vùng soạn thảo điểm lớn Hình ảnh mặt định Icon xuất vùng soạn thảo Phụ thuộc vào dạng hình sử dụng, ta thiết kế kiểu Icon dạng đơn sắc, 16 màu 256 màu Màu mặc định Icon Đen - Trắng (Black-White), bấm vào mục chọn màu để chuyển sang 16 màu 256 màu Ta copy Icon thành Icon đen – trắng, ngược lại Hình 3.6 Icon mặc định Icon sau tạo - 32 Xác định kiểu Connector Terminal: SubVI nhận liệu tới gửi liệu thông qua Terminal ô vuông Connector Ta xác định mối liên hệ cách chọn số Terminal cần thiết cho VI gán Front Panel Control Indicator cho Terminal Nếu Connector VI chưa xuất góc trái Front Panel ta chọn Show Connector từ menu Icon Connector thay Icon góc bên phải phía Front Panel Kiểu Terminal ban đầu chọn cho VI có số Terminal bên phải Connector số Indicator Front panel số Terminal bên trái Connector số Control Front Panel Nếu điều có phần mềm chọn kiểu Terminal phù hợp gần Mỗi hình chữ nhật Connector tương ứng với đầu vào đầu từ VI Ta chọn kiểu Terminal khác menu Pattern Ta thêm loại bỏ bớt Terminal cách chọn Add Terminal chọn Remove Terminal Sau chọn Connector Terminal Pattern ta phải gán Front Panel Control Indicator cho Terminal theo bước sau: - Bấm vào Termianl Connector, sau bấm vào Front Panel Control Front Panel Indicator muốn gán cho Terminal chọn Một khung bao xung quanh Front Panel Control Indicator chọn xuất nhấp nháy - Bấm vào vùng mở Front Panel bấm chuột, khung nhấp nháy biến Termianl Front Panel Control Indicator chọn gắn với Hình 3.7 Cách thức tạo Connector VI - 33 3.5.2.2 Tạo SubVI từ phần VI Để biến đổi phần VI thành SubVI gọi từ VI khác, chọn phần Block Diagram VI, sau chọn Edit\Create SubVI Phần tự động thành SubVI Các Control Indicator tự động khai báo cho SubVI SubVI tự động nối dây với đầu dây có Icon SubVI thay phần chọn Block Diagram VI gốc Đối với SubVI ta điều chỉnh Icon & Connector tương tự 3.6 Kỹ thuật lập trình nâng cao LabVIEW 3.6.1 Liên kết thiết bị ảo với thiết bị phần cứng 3.6.1.1 Thư viện DAQ LabVIEW Thư viện DAQ VIs nằm Panel Functions Data Acquisition gồm lớp khác DAQ DAQ chia thành lớp sau: - Analog Input VIs - Analog Output VIs - Digital I/O Vis - Counter VIs - Calibration and Configuration VIs - Signal Conditioning VI Hình 3.8 Thư viện DAQ - 34 - Các DAQ chia thành mức khác tùy theo mức độ tác động chúng Các DAQ chia thành mức: * Easy VIs * Intermadiate VIs * Utility VIs * Advance VIs Ngoài ra, LabView có thư viện cho hệ thống Card chuyên dụng hãng NI Hình 3.9 Thư viện Advanced Thư viện Instrument I/O - 35 Để đưa liệu vào/ra cổng song song, nối tiếp máy tính ta sử dụng VIs vào LabVIEW 3.6.2 Cấu trúc DAQ Thiết bị ảo xem công cụ liên kết thiết bị phần cứng phần mềm thiết bị đo lường, tạo người sử dụng với tiêu chuẩn máy tính Hãng National Instruments phát triển phần cứng phần mềm điều khiển để thu nhận liệu (DAQ), phân tích, biểu diễn lưu giữ liệu dạng khác Phần mềm điều khiển chương trình nối ghép thiết bị phần cứng chức mở rộng thiết bị Phần mềm ứng dụng LabVIEW, LabWindows/CVI, ComponentWorks công cụ đo lường bản, mở rộng để hiển thị phân tích kết thiết bị ảo Thiết bị ảo sử dụng để tạo hệ thống theo yêu cầu kiểm tra, đo lường kỹ thuật tự động hóa, phù hợp với phần cứng nối ghép phần mềm thành phần Nếu hệ thống thay đổi, ta thay đổi thiết bị ảo mà không cần phải thay đổi phần mềm phần cứng 3.6.2.1 DAQ (data acquisition) Nhiệm vụ tất hệ thống đo lường đo tạo tín hiệu vật lý thực tế Điểm khác biệt lớn thiết bị phương thức truyền thiết bị đo lường máy tính Thiết bị DAQ đa thiết bị kết nối tới máy tính cho phép truy xuất tín hiệu số Thiết bị DAQ cho phép liên kết trực tiếp với bus máy tính thông qua khe cắm mở rộng Một vài thiết bị DAQ bên cho phép liên kết với máy tính thông qua cổng nối tiếp, IEEE 488 (GPIB), cổng ethernet Thiết bị DAQ cho phép biến đổi tín hiệu thành tín hiệu số gửi chúng tới máy tính (tới phần mềm bên máy tính) Phần mềm ứng dụng sử dụng liệu để đo lường, điều khiển hiển thị liệu bên máy tính, đồng thời gửi liệu trở lại thiết bị đo lường Phương pháp có tính mềm dẻo cao sử dụng thiết bị phần cứng cho nhiều dạng kiểm tra phát triển thêm ứng dụng khác cho dạng kiểm tra Thiết bị DAQ đa thích ứng sử dụng để số hóa liệu thiết bị đo lường - 36 Tuy nhiên, số thiết bị đo lường nằm máy tính tồn độc lập, mà chúng cần điều khiển giám sát thông qua việc liên kết với máy tính Đối với công cụ đo lường cụ thể có giao thức cụ thể với máy tính tùy theo việc chúng liên kết với máy tính thông qua Ethernet, Serial, GPIB VXI Hình 3.10 Thiết bị DAQ Trên hình 3.10, trình bày hai dạng lựa chọn thiết bị DAQ Trong lựa chọn A, hệ thống thiết bị DAQ nằm bên máy tính Trong lựa chọn B, thiết bị DAQ nằm bên máy tính Với bảng mạch mở rộng nằm bên ta xây dựng hệ thống DAQ liên kết với máy tính mà không cần đến khe cắm mở rộng, ví dụ máy tính xách tay Khi này, máy tính modul DAQ giao tiếp với thông qua nhiều loại kênh khác như: Cổng song song, cổng nối tiếp, Ethernet Đây hệ thống thực thu nhận liệu từ xa điều khiển ứng dụng - 37 - Hình 3.11 Các dạng lựa chọn thiết bị DAQ Trên hình 3.27 lựa chọn thứ 3, lựa chọn sử dụng bus PCMCIA (Personal Computer Memory Card International Assoaciation) có số máy tính xách tay Một thiết bị PCMCIA liên kết với máy tính truyền tín hiệu tới bo mạch lựa chọn A Đây linh động chặt chẽ hệ thống DAQ 3.6.2.2 Mối quan hệ LabVIEW với thiết bị DAQ Máy tính thu nhận liệu thô chuyển đổi thành dạng chuẩn mà người sử dụng hiểu Phần mềm mã hóa liệu thành dạng thể đồ thị, biểu đồ file report Phần mềm không tác động vào hệ thống DAQ mà có tác động thiết bị DAQ chúng thu nhận liệu, kênh chúng nhận liệu Đặc trưng cho phần mềm DAQ bao gồm điều khiển phần mềm ứng dụng Những điều khiển tác động loại thiết bị định, chúng bao gồm lệnh điều khiển chức thiết bị Phần mềm ứng dụng gửi lệnh tới điều khiển, có liệu chúng thực hai công việc: đọc liệu vào đưa liệu ngược trở lại có kết phân tích hiển thị liệu LabVIEW bao gồm VIs cho phép thay đổi cấu trúc liệu nhận gửi liệu tới thiết bị DAQ LabVIEW DAQ VIs gọi tới NI-DAQ ghép nói với chương trình ứng dụng (API – Application Program Interface) Trong NI- - 38 DAQ API chứa công cụ hàm để liên kết với phần cứng thiết bị DAQ NI-DAQ phần mềm điều khiển thiết bị NI-DAQ, thiết lập giao tiếp LabVIEW với thiết bị đo lường Hãng NI cung cấp phần mềm điều khiển cho liên kết với số công cụ đo lường đặc biệt, bao gồm: NI-488.2, NI-VISA IVI Mối quan hệ LabVIEW, phần mềm điều khiển phần cứng đo lường LabVIEW VIs đưa tới phần mềm điều khiển để nối với phần cứng đo lường LabVIEW VIs Phần mềm điều khiển Phần cứng đo lường 3.6.2.3 Cấu trúc DAQ Ngày nay, nhà khoa học kỹ sư sử dụng máy tính PC với PCI, PXI/CompactPCI, PCMCIA, USB, IEEE 1394, ISA, cổng nối tiếp, cổng song song để thu nhận liệu phòng thí nghiệm, kỹ thuật tự động hóa, thử nghiệm đo lường Nhiều ứng dụng sử dụng thiết bị thu nhận liệu chuyển chúng tới nhớ máy tính Mức độ xác kết từ hệ thống thu nhận liệu tới máy tính phụ thuộc vào phần tử hệ thống (Hình 3.29) Hình 3.12 Các phần tử hệ thống DAQ - 39 Các thành phần hệ thống bao gồm: - Máy tính PC (Personal Computer) - Bộ chuyển đổi (Transducers) - Điều hòa đường truyền tín hiệu (Signal Conditioning) - Phần cứng DAQ (DAQ Hardware) - Phần mềm (Software) 3.6.2.4 Máy tính PC Ngày nay, máy tính PC trang bị tiêu chuẩn bus PCI USB Cùng với phát triển PCMCIA, USB IEE 1394 hệ thống DAQ PC có nhiều lựa chọn linh động trước Bởi DAQ sử dụng truyền nối tiếp RS - 232 RS - 485 bi hạn chế tốc độ đường truyền liệu Khi lựa chọn thiết bị DAQ cấu trúc bus cần phải lưu ý đến phương thức truyền để khả truyền liệu máy tính không làm ảnh hưởng tới hệ thống DAQ Máy tính PC có chương trình hỗ trợ I/O truyền ngắt Ngày nay, máy tính PC truy xuất trực tiếp nhớ (DMA – Direct memory access), điều làm tăng tốc độ truyền truyền liệu từ phần cứng chuyên dụng tới nhớ máy tính Phương thức truyền giúp xử lý không bị nghẽn di chuyển liệu thao tác xử lý phức tạp Việc chọn phương thức truyền ảnh hưởng đến suất truyền thiết bị DAQ Nhân tố giới hạn thiết bị phần cứng, thời gian truy nhập đĩa phân vùng dĩa cứng làm ảnh hưởng lớn tới dòng liệu tốc độ truyền liệu Thêm vào đó, đĩa cứng phải có đủ khoảng trống để hệ điều hành chạy thực xế liệu vào đĩa Ứng dụng đòi hỏi xử lý thời gian thực tín hiệu tần số lớn cần có tốc độ xử lý cao, xử lý 32-bit kết hợp với đồng xử lý xử lý chuyên dụng bo mạch DSP (digital signal processing) Tuy nhiên, với ứng dụng cần thực việc đọ liệu giây máy tính cấp thấp đáp ứng 3.6.2.5 Bộ chuyển đổi điều hòa đường truyền tín hiệu - 40 Bộ chuyển đổi có khả chuyển đổi tượng vật lý thành tín hiệu điện đưa đến DAQ hệ thống đo lường Trong số trường hợp, tín hiệu điện nhận tương ứng với tín hiệu điện nhận tương ứng với tín hiệu vật lý thiết bị, tín hiệu điện nhận từ chuyển đổi tham số đánh giá dải thông tin đầu vào thiết bị DAQ Điều hòa đường truyền tín hiệu giúp khuếch đại tín hiệu mức thấp, tách lọc tín hiệu để có kết đo xác Ngoài ra, số chuyển đổi sử dụng điện áp đầu làm tín hiệu kích để tạo điện áp đầu Điều hòa đường truyến tín hiệu sử dụng cách đa dạng ứng dụng quan trọng Một ứng dụng phổ biến điều hòa đường truyền tín hiệu khuếch đại Tín hiệu mức thấp khuếch đại lên để tăng tốc độ phân giải giảm bớt nhiễu Để có độ xác cao, điều đường truyền tín hiệu khuếch đại tín hiệu lên để đảm bảo đầu vào ADC Một ứng dụng khác điều hòa đường truyền tín hiệu tách tín hiệu từ máy tính Hệ thống tách tín hiệu chuyển đổi bị hỏng từ máy tính khỏi điều hòa đường truyền tín hiệu Tách tín hiệu giúp việc đọc tín hiệu từ thiết bị DAQ vào không bị thay đổi tín hiệu khác Sử dụng chức tách tín hiệu modul điều hòa đường truyền tín hiệu giúp tạo tín hệu xác cho hệ thống Multiplexing (dồn) kỹ thuật phổ biến dụng cụ đo lường tín hiệu, phần cứng điều hòa đường truyền tín hiệu tín hiệu anlog cung cấp Multiplexing Modul SCXI tín hiệu analog có tới 3.072 tín hiệu đo lường với thiết bị DAQ Đây điểm đặc biệt thiết bị DAQ Filter: Kết lọc loại bỏ tín hiệu không cần thiết khỏi tín hiệu thiết bị đo lường Đối với loại tín hiệu chiều, lọc làm suy giảm tín hiệu tần số thấp để tăng độ xác cho thiết bị đo Ví dụ, nhiều modul SCXI sử dụng 4Hz 10kHz làm mức cho qua lọc để loại trừ tín hiệu nhiễu trước đưa tín hiệu số hóa thiết bị DAQ Đối với tín hiệu xoay chiều, thường phải sử dụng dạng lọc khác lọc cưa Một số thiết bị thiết kế cho tín hiệu đo lường xoay chiều như: NI 455x, NI 445x NI 447x - 41 Tuyến tính hóa: Chức phổ biến điều hòa đường truyền tín hiệu tuyến tính hóa Nhiều chuyển đổi có đáp ứng không tuyến tính thay đổi đầu vào Hãng NI tạo NI-DAQ, LabVIEW, Measurement Studio VirtualBench để tạo tuyến tính hóa đặn Trong thực tế, tín hiệu đo lường chịu ảnh hưởng cảu môi trường xung quanh làm thay đổi kết đo lường Do đó, modul điều hòa đường truyền tín hiệu thiếu hệ thống DAQ 3.7 Phần cứng DAQ Đầu vào analog: Đặc điểm kỹ thuật đầu vào analog đa số sản phẩm DAQ cho biết số kênh, tốc độ lấy mẫu, mức lượng tử hóa khoảng đầu Tốc độ lấy mẫu: Khoảng lấy mẫu tham số xác định cho trình chuyển đổi Tốc độ lấy mẫu lớn có nhiều liệu đon vị thời gian, trường hợp biểu diễn tín hiệu gốc tốt Multiplexing (Dồn): kỹ thuật phổ biến thiết bị đo lường tín hiệu Độ phân giải: Độ phân giải thiết bị DAC biểu thị số bit tín hiệu số đầu Số bit nhiều sai số lượng tử hóa nhỏ Độ xác cao Độ rộng mã hóa: Thiết bị DAQ có dải, độ phân dải tiện ích sẵn xác định thay đổi nhỏ điện áp Sự thay đổi điện áp thể bít có trọng số nhỏ (LSB) cuả giá trị digital gọi độ rộng mã hóa Đầu analog: Đầu analog thường bố trí phụ thuộc vào tác nhân kích thích hệ thống DAQ Đặc điểm kỹ thuật DAC (digital - to - anlog converter) định chất lượng tín hiệu đầu sản phẩm như: thời gian xác lập, tốc độ chuyển đổi độ phân giải đầu Thời gian xác lập: Thời gian xác lập thời gian từ tín hiệu số đưa vào đến dòng điện điện áp đầu ổn định Tốc độ chuyển đổi: Tốc độ chuyển đổi giá trị tốc độ lớn DAC để đầu có tín hiệu Thời gian xác lập tốc độ chuyển đổi trình làm - 42 việc định thay đổi mức tín hiệu đầu DAC Vì vậy, DAC có thời gian xác lập nhỏ tốc độ chuyển đổi lớn tạo tín hiệu cao tần, thời gian nhỏ cần thiết cho việc thay đổi xác mức điện áp đầu Độ phân giải đầu ra: Độ phân giải tỉ số giá trị cựa tiểu với giá trị cực đại điện áp đầu Về trị số tỉ số tương ứng tỉ số giá trị cực tiểu giá trị cực đại tín hiệu số đầu vào Vào, tín hiệu số (DIO): Vào tín hiệu số thường ghép nối với hệ thống PC DAQ tới quy trình điều khiển, tạo mô hình kiểm tra gửi chúng tới thiết bị ngoại vi Trong số trường hợp, tham số quan trọng gồm số đường digital sử dụng, tốc độ lấy liệu từ liệu digital nguồn đường khả truyền đường Ứng dụng phổ biến DIO truyền liệu máy tính thiết bị liệu xử lý, máy in 3.8 Phần mềm (Software) Phần mềm chuyển đổi PC thiết bị phần cứng DAQ giúp thu nhận liệu, phân tích hiển thị Phần cứng DAQ phần mềm tác dụng phần cứng DAQ với phần mềm chất lượng tác dụng Đa phần ứng dụng DAQ sử dụng phần mềm điều khiển Phần mềm điều khiển lớp phần mềm tác động trực tiếp lên ghi phần cứng DAQ để quản lý hoạt động ghi hợp thành thể thống với tài nguyên máy tính, với ngắt xử lý, DMA nhớ Phần mềm ứng dụng phần mềm điều khiển để điều khiển phần cứng DAQ Lợi phần mềm ứng dụng chúng phân tích làm tăng hiệu phần mềm điều khiển Phần mềm ứng dụng kết hợp điều khiển thiết bị đo lường (GPIB, RS-232, and VXI) thu nhận liệu Phần mềm ứng dụng truyền thống chương trình C, LabVIEW, phần mềm ứng dụng với chương trình đồ họa giúp phát triển hoàn thiện thiết bị đo lường, kết thu điều khiển ứng dụng [...]... liệu LabVIEW bao gồm các VIs cho phép thay đổi cấu trúc dữ liệu nhận được và gửi dữ liệu tới thiết bị DAQ LabVIEW DAQ VIs có thể gọi tới các NI-DAQ ghép nói với chương trình ứng dụng (API – Application Program Interface) Trong NI- - 38 DAQ API chứa các công cụ và các hàm cơ bản để liên kết với phần cứng của thiết bị DAQ NI-DAQ là phần mềm điều khiển của thiết bị NI-DAQ, nó thiết lập giao tiếp giữa LabVIEW. .. NI chỉ cung cấp phần mềm điều khiển cho liên kết với một số bộ công cụ đo lường đặc biệt, bao gồm: NI-488.2, NI-VISA và IVI Mối quan hệ giữa LabVIEW, phần mềm điều khiển và phần cứng đo lường LabVIEW VIs đưa tới phần mềm điều khiển để nối với phần cứng đo lường LabVIEW VIs Phần mềm điều khiển Phần cứng đo lường 3.6.2.3 Cấu trúc cơ bản của DAQ Ngày nay, các nhà khoa học và các kỹ sư sử dụng máy tính... được chọn trong Block Diagram của VI gốc Đối với SubVI này ta có thể điều chỉnh được Icon & Connector tương tự như trên 3.6 Kỹ thuật lập trình nâng cao trong LabVIEW 3.6.1 Liên kết thiết bị ảo với thiết bị phần cứng 3.6.1.1 Thư viện DAQ trong LabVIEW Thư viện DAQ VIs nằm trong Panel Functions Data Acquisition gồm các lớp khác nhau của DAQ DAQ được chia thành 6 lớp cơ bản sau: - Analog Input VIs -... chia thành 4 mức: * Easy VIs * Intermadiate VIs * Utility VIs * Advance VIs Ngoài ra, LabView còn có thư viện cho các hệ thống Card chuyên dụng của hãng NI Hình 3.9 Thư viện Advanced và Thư viện Instrument I/O - 35 Để đưa dữ liệu vào/ra các cổng song song, nối tiếp của máy tính ta có thể sử dụng các VIs vào ra của LabVIEW 3.6.2 Cấu trúc cơ bản của DAQ Thiết bị ảo được xem như là một công cụ liên kết... tơ), mảng 2 chiều, mảng 3 chiều Labview hỗ trợ cho người lập trình có thể tạo ra các mảng của mình mà trong đó chứa dữ liệu kiểu numberic, string, boolean… và rất nhiều dạng dữ liệu khác Các mảng thường được tạo ra bởi các vòng lặp Việc sử dụng vòng lặp là tốt cho các ứng dụng bởi vì nó xác định một vùng bộ nhớ xác định từ khi nó bắt đầu Nếu không dùng các vòng lặp thì LabVIEW không có cách nào biết... trong LabView, ta thường chú ý thiết kế các VI và xác định đầu vào và đầu ra cho chúng Khi đó mỗi VI thực hiện một chức năng xác định Trong việc lập trình, các VI đó có thể được sử dụng trong các Block Diagram của một VI khác ở mức độ cao hơn Khi đó VI cao hơn đó được gọi là một SubVI Như vậy, một SubVI ta có thể coi như một chương trình con trong các chương trình khác như C++… Trong một chương trình labVIEW, ... biểu diễn và lưu giữ dữ liệu ở các dạng khác nhau Phần mềm điều khiển là một chương trình nối ghép giữa thiết bị phần cứng và các chức năng mở rộng của các thiết bị cơ bản Phần mềm ứng dụng có thể là LabVIEW, LabWindows/CVI, ComponentWorks và các công cụ đo lường cơ bản, mở rộng để hiển thị và phân tích các kết quả của thiết bị ảo Thiết bị ảo được sử dụng để tạo ra hệ thống theo yêu cầu của kiểm tra,... một số máy tính xách tay Một thiết bị PCMCIA liên kết với máy tính và truyền tín hiệu tới bo mạch như trong sự lựa chọn A Đây chính là sự linh động và chặt chẽ của hệ thống DAQ 3.6.2.2 Mối quan hệ giữa LabVIEW với thiết bị DAQ Máy tính thu nhận dữ liệu thô và chuyển đổi nó thành dạng chuẩn mà người sử dụng có thể hiểu được Phần mềm mã hóa dữ liệu thành dạng có thể thể hiện trong đồ thị, biểu đồ hoặc... thành phần của mảng Ta không thể thay đổi được giá trị của mảng trong khi VI chạy 3.4.3.2 Array Max & Min Hàm này có chức năng tìm kiếm số lớn nhất và số nhỏ nhất của các số trong mảng Hàm này thường trả về kết quả để hiển thị Mảng có thể là mảng n chiều của bất kỳ loại dữ liệu nào Giá trị lớn nhất (max value) là cùng dạng dữ liệu như là các thành phần trong mảng các số Chỉ số lớn nhất (max index) là chỉ... trình con trong các chương trình khác như C++… Trong một chương trình labVIEW, không bị hạn chế số - 31 SubVI và mỗi SubVI không bị hạn chế việc gọi đến các SubVI Với tiện ích này, một chương trình trên Labview sẽ trở nên dễ hiểu, gọn gàng và dễ gỡ rối hơn 3.5.2 Xây dựng SubVI Có hai cách đơn giản nhất để xây dựng một SubVI: tạo một SubVI từ một VI và tạo một SubVI từ một phần của VI 3.5.2.1 Tạo một SubVI