1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

labview for everyone tiengviet 20110326 2

42 260 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 42
Dung lượng 722,71 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu chung: Labview Virtual Instrument Engineering Workbench là một môi trường phát triển dựa trên ngôn ngữ lập trình đồ hoạ, thường được sử dụng cho mục đích :đo lường, kiểm tra,

Trang 1

Mục lục

I Những khái niệm cơ bản: 2

1 Giới thiệu chung: 2

2 Thiết bị ảo (VI- Vitual Instrument): 2

3 Front Panel: 2

4 Block Diagram: 3

5 Icon & Connector 5

II Kỹ thuật lập trình trên LabView: 5

1 Các công cụ hỗ trợ lập trình: 5

2 Dữ liệu: 9

3 Các cấu trúc điều khiển luồng chương trình: 16

4 SubVI và cách xây dựng SubVI: 20

5 Xây dựng ứng dụng: 24

6 Gỡ rối và sửa chương trình xây dựng trên LabView: 26

III Kỹ thuật lập trình nâng cao trong LabView: 27

1 Liên kết thiết bị ảo với thiết bị phần cứng: 27

2 Xử lý tín hiệu và lọc nhiễu: 39

Trang 2

Lập trình điều khiển trong môi trường labview

I Những khái niệm cơ bản:

1 Giới thiệu chung:

Labview (Virtual Instrument Engineering Workbench) là một môi trường phát triển dựa trên ngôn ngữ lập trình đồ hoạ, thường được sử dụng cho mục đích :đo lường, kiểm tra, đánh giá, xử lý và điều khiển các tham

số của thiết bị

Labview là một ngôn ngữ lập trình đa năng, giống như các ngôn ngữ lập trình hiện đại khác Labview gồm có các thư viên thu nhận dữ liệu, một loạt các thiết bị điều khiển, phân tích dữ liệu, biểu diễn và lưu trữ dữ liệu Nó còn có các công cụ phát triển được thiết kế riêng cho việc nối ghép và điều khiển thiết bị

Labview khác với các ngôn ngữ lập trình thông thường ở điểm cơ bản là: các ngôn ngữ lập trình khác thường dùng trên cơ chế dòng lệnh, trong khi đó Labview dùng ngôn ngữ lập trình Graphical để trạo ra các chương trình ở dạng sơ đồ khối

2 Thiết bị ảo (VI- Vitual Instrument):

Lập trình Labview trên cơ sở các thiết bị ảo Các đối tượng trong các thiết bị ảo được sử dụng để mô phỏng các thiết bị thực, nhưng chúng

được thêm vào bởi phần mềm Các VI (thiết bị ảo) tương tự như các hàm trong các ngôn ngữ lập trình khác

3 Front Panel:

Một chương trình chung trong LabView gồm 3 phần chính: một là giao diện với người sử dụng (Front Panel),hai là giao diện dạng sơ đồ khối cung cấp mã nguồn (Block Diagram) và biểu tượng kết nối (Icon/Connector) Front Panel là một panel tương tư như panel của thiết bị

Trang 3

thực tế ví dụ các nút bấm, nút bật, các đồ thị và các bộ điều khiển Từ Front Panel người dùng chạy và quan sát kết quả có thể dùng chuột, bàn phím để đưa dữ liệu vào sau đó cho chương trình chạy và quan sát

Front Panel thường gồm các bộ điều khiển (Control) và các bộ chỉ thị (Indicator):

- Control là các đối tượng được đặt trên Front Panel để cung cấp dữ liệu cho chương trình Nó tương tự như đầu vào cung cấp dữ liệu

- Indicator là đối tượng được đặt trên Front Panel dùng để hiện thị kết quả, nó tương tự như bộ phận đầu ra của chương trình

Front Panel của 1 VI được minh hoạ như hình I.1:

Hình I.1

4 Block Diagram:

Block Diagram của 1 VI là một sơ đồ được xây dựng trên môi trường Labview, nó có thể gồm nhiều đối tượng và các hàm khác nhau để tạo các câu lệnh để chương trình thực hiện Block Diagram là một mã

Trang 4

nguồn đồ hoạ của 1 VI Các đối tượng trên Front Panel được thể hiện bằng các thiết bị đầu cuối trên Block Diagram, không thể loại bỏ các thiết bị đầu cuối trên Block Diagram Các thiết bị đầu cuối chỉ mất đi sau khi loại bỏ đối tượng tương ứng trên Front panel

Block Diagram của 1 VI đơn giản được thể hiện ở hình I.2:

Hình I.2

Cấu trúc của một Block Diagram gồm các thiết bị đâu cuối (Terminal), Nút (Node) và các dây nối (wire)

- Terminal: là các cổng mà dữ liệu truyền qua giữa Block Diagram

và Front panel, và giữa các Node trong Block Diagram Các Terminal nằm ở dưới dạng các Icon của các Function

- Nodes: là các phần tử thực hiện chương trình, chúng tương tự như các mệnh đề, toán tử, hàm và các chương trình con trong các ngôn ngữ lập trình thông thường

Trang 5

- Wises: là các dây nối dữ liệu giữa các node

5 Icon & Connector

+ Icon (biểu tượng) : là biểu tượng của VI, được sử dụng khi từ 1

VI muốn sử dụng chức năng của 1 VI khac Khi đó VI đó được gọi là

SubVI, nó tương đương như một chương trình con trong các ngôn ngữ

khác

+ Connector (bộ nối) :là một phần tử của Terminal dùng để nối

các đầu vào và đầu ra của các VI với nhau khi sử dụng

Mỗi VI có 1 Icon mặc định hiển thị trong bảng Icon ở góc trên bên

phải cửa sổ Front Panel và Block Diagram như hình I.3

Hình I.3

Ta có thể thay đổi được Icon và connector

Khi các Vi được phân cấp và modul hoá thì ta có thể dùng chúng như

các chương trình con Do đó để xây dựng 1 VI ta có thể chia thành

nhiều VI thực hiện các chức năng đơn giản và cuối cùng kết hợp

chúng lại với nhau

II Kỹ thuật lập trình trên LabView:

1 Các công cụ hỗ trợ lập trình:

Việc lập trình trên LabView cần sử dụng các bảng: Tools Palette,

Controls Panelette, Functions Palette, các bảng đó cung cấp các chức năng

Trang 6

a Tool Panel:

Tool Panel xuất hiện trên cả Front Panel và Block Diagram Bảng này cho phép người sử dụng có thể xác lập các chế độ làm việc đặc biệt của con trỏ chuột Khi lựa chọn một công cụ, biểu tượng của con trỏ sẽ được thay đổi theo biểu tượng của công cụ đó

Nếu thiết lập chế độ tự động lựa chọn công cụ và người sử dụng di chuyển con trỏ qua các đối tượng trên Front Panel hoặc Block Diagram, Labview sẽ tự động lựa chọn công cụ phù hợp trên bảng Tools Palette

Để truy cập vào Tools palette ta chọn Menu: Window◊Show Tools palette Các công cụ trong Tools palette gồm có:

b Controls Palette(bảng điều khiển):

Hình I.4: Tools Palette

Trang 7

Bảng điều khiển chỉ duy nhất xuất hiện trên Front panel Bảng điều khiển chứa các bộ điều khiển(control) và các bộ hiển thị (Indicator) Bảng

điều khiển được minh hoạ như I.5:

Bảng điều khiển được sử dụng để người sử thiết kế cấu trúc mặt hiển thị gồm các thiết bị vd: các công tắc, các loại đèn, các loại màn hình hiển thị…Với bảng điều khiển này, người sử dung có thể chọn các bộ thiết bị chuẩn do hãng sản xuất cung cấp vd công tắc những cũng có thể chọn các thiết bị do người sử dụng tự xây dựng

Bảng điều khiển dung để cung cấp dữ liệu đầu vào và hiển thị kết quả

đầu ra

• Một số bộ điều khiển và hiển thị trên

controls palette:

Numeric Controls/Indicators:

Bộ công cụ này được sử dụng để hiển thị

và điều khiển dữ liệu dạng số trong chương

trình

Boolean Controls/Indicators:

Bộ công cụ này cung cấp 2 giá trị là True và False Khi thực hiện chương trình người sử dụng sử dụng chuột để

điều khiển giá trị của thiết bị Việc thay đổi

giá trị của các thiết bị chỉ có tác dụng khi các

thiết bị đó được xác lập ở chế độ là các

Control Còn nếu ở chế độ là các Indicator thì

Hình I.6

Trang 8

giá trị không thay đổi vì chúng chỉ là các thiết bị hiển thị

Với bảng Function Palette, người

lập trình thực hiện các cú pháp vd phép

lặp, phép lựa chọn thông qua các nhóm

hàm, chức năng đã được cung cấp bên

cạnh đó từ bảng này người sử dụng có

thể tạo ra và sử dụng lại các hàm, chức

năng mà người sử dụng tự xây dựng

Các hàm toán học đựoc minh hoạ thông

Hình I.7

Hình I.8

Hình I.9: Functions Palette

Trang 9

qua các biểu tượng Khi muốn lựa chọn thực hiện một hàm nào đó thì người

sử dụng chọn biểu tượng thể hiện cho hàm đó và có thể kéo thả ở bất kỳ vị trí nào trên Block Diagram sau đó xác định những đầu vào và đầu ra cần thiết

- Global varialbles (biến toàn cục):Biến toàn cục được sử dụng để thực hiện công việc truyền và lưu trữ dữ liệu giữa một vài Vis Biến toàn cục được coi là một đối tượng trong Labview Khi ta tạo ra một biến toàn cục Labview sẽ tạo ra một “VI toàn cục”

đặc biệt Để tạo ra các biến toàn cục, ta lựa chọn chúng trên 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 dữ liệu thông qua các kiểu dữ liệu đã sử dụng thông qua các Controls hoặc các Indicators Chúng ta cần chú ý là đối với mỗi biến toàn cục chúng ta cần phải tạo ra 1 VI với một tên riêng duy nhất.Đối với các biến toàn cục chúng ta cũng cần xác định chế độ chỉ cho phép ghi hoặc chỉ cho phép đọc Đối với việc truy xuất vào các

Trang 10

kiểu dữ liệu đơn giản vd: numerics và Boolean Tuy nhiên, khi

ta sử dụng biến toàn cục để lưu trữ và xử lý các dữ liệu dưới dạng mảng (arrays), Clusters hay các sâu(string) lớn thì thời gian cũng như bộ nhớ cần thiết để xử lý chúng lại sẽ tương đối lớn Vì nó đòi hỏi một vài dịch vụ quản lý bộ nhớ mỗi khi các biến đó được gọi tới Khi sử dụng các biến toàn cục cũng như các biến cục bộ thì một vấn đề có thể gặp phải là sự “tranh chấp dữ liệu” Biến sử dụng trong Labview không hoàn toàn giống như trong các ngôn ngữ lập trình dòng lệnh Việc “tranh châp dữ liệu ” xảy ra khi hai hoặc nhiều hơn các đoạn mã lệnh cùng

được thực hiện song song cùng thay đổi giá trị của một biến

Đầu ra của VI phụ thuộc vào thứ tự được thực thi của các dòng lệnh Bởi vì nếu không có sự phụ thuộc dữ liệu giữa các biểu thức khác nhau thì sẽ không xác định được cái nào chạy trước Nếu sử dụng các biến toàn cục trong Vis mà được thực hiện song song, thì ta có thể sử dụng một biến toàn cục thêm vào để xác định khi nào dữ liệu được phép thay đổi và được đọc giá trị mới

- Local variable: Cho phép người sử dụng đọc hoặc viết thông tin lên 1 trong những thiết bị điều khiển hoặc thiết bị hiển thị trên Front Panel Để tạo một biến cục bộ, chọn Local Variable từ bảng Structs & Constants Khi sử dụng biến cục bộ cần chú ý một số thông tin sau:

ơ Các biến cục bộ chỉ có tác dụng duy nhất trên các thiết bị

điều khiển hoặc thiết bị hiển thị mà cùng ở trên một lược đồ

Ta không thể sử dụng biến cục bộ để truy cập tới 1 điều khiển mà không cùng trên một lược đồ

Trang 11

ơ Ta có thể có rất nhiều các biến cục bộ cho mỗi thiết bị điều khiển hoặc thiết bị hiển thị.Tuy nhiên điều đó có thể gây ra

sự phức tạp: cho rằng điều khiển của bạn thay đổi trạng thái một cách khó hiểu bởi vì bạn ngẫu nhiên lựa chọn sai các phần tử trong một hoặc nhiều biến cục bộ

ơ Giống như biến toàn cục, bạn có thể sử dụng biến cục bộ không có một “dòng dữ liệu” hợp lệ khác sử dụng

b String:

Kiểu string (chuỗi) là một tậơ hợp các ký tự Ta có thể sử dụng chuỗi tham gia tính toán xử lý Để lựa chọn các ô text lưu trữ dữ liệu kiểu string ta chọn từ ô “String & path” từ control palette có hình như sau (hình I.10):

Hình I.10: string LabView cung cấp cho người sử dụng các công cụ để thao tác trên LabView như việc tìm kiếm, xác định độ dài của chuỗi ký tự, chuyển dẫy ký tự thành dạng viết hoa và ngược lại, so sánh chuỗi, thay một số

ký tự trong chỗi sang một số chỗi khác các hàm được cung cấp trong menu “string” trên Function Pallete có hình sau (I.11):

Trang 12

Hình I.11:Function>> string

Không chỉ vậy có thể thực hiện việc chuyển đổi từ dạng string sang các dạng khác như dạng số, dạng mảng (array) Trong labView, đôi khi người sử dụng có thể cần phải tạo ra hoặc hiển thị một số ký tự trong bảng mã ASCII mà không thể hiển thị được vd: Esc,tab… Để giải quyết vấn đề đó, labview đã cung cấp một số từ đại diện cho các

từ đó, khi cần thể hiện các ký tự đo ta chỉ cần gõ vào những từ đại diện cho chúng trên Front Panel Sau đây là một số từ thay thế (Escape Code)

Escape code Từ được thay (Interpreted As)

\00-\FF Giá trị dạng Hex của ký tự 8 bít

Trang 13

\t Tab

c Array:

Trong việc lập trình đôi khi chúng ta cần xử lý một số các dãy số

mà mỗi phần tử trong đó có thể được xử lý như từng thành phần riêng biệt, vì vậy mà ta cần tới mảng Các mảng ở đây có thể là mảng 1 chiều (một cột hoặc 1 véc 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 các mà trong đó chứa dữ liệu kiểu numberic, string, boolean… và rất nhiều các 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 la 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ì thì Labview không có cách nào biết được khi nào vòng lặp lại được lặp lại, việc quản lý bộ nhớ có thể sẽ được gọi lại nhiều lần và làm chậm việc xử lý

Người sử dụng có thể sử dụng chức năng xây dựng mảng Nó còn cho phép ràng buộc mảng gốc vào các mảng khác

- Sử dụng chức năng khởi tạo mảng với kích cỡ các các chiều đầu vào được kết nối tới một hằng số được đặt là giá trị của các phần

Trang 14

tử Nó tương đương với phương pháp trước nhưng thuân tiên hơn

- Một cách tương tự, nếu như các giá trị có thể được tính toán trong một số cách không phức tạp, thì đặt công thức tính toán vào một vòng lặp và tạo ra mảng theo cách đó

- Tạo ra trên Front panel một đối tượng mảng và kiểu dữ liệu của giá trị được điều khiển bằng tay

Một trường hợp đặc biệt trong việc khởi tạo mảng là tạo ra một mảng rỗng.Nó là một mảng mà các phần tử trong mảng được đặt về giá trị 0, false, sâu rỗng… Thường thì việc sử dụng một mảng rỗng

để sử dụng để khởi tạo một bộ ghi dịch mà sử dụng để lưu giữ các giá trị trong mảng sau đây là các cách để tạo ra một mảng trống:

- Tạo trên front panel một điều khiển mảng Chọn Emty Array,

và sau đó Make Current value Default từ menu Control

- Tạo một vòng lặp với số lần lặp N, vòng lặp được nối tới một giá trị 0

- Sử dụng chức năng “Initialize Array”

Bộ nhớ của mảng để sử dụng và thi hành:

Khi một mảng được tạo ra, Labview sẽ sử dụng một không gian bộ nhớ hợp lý nhất Labview phải phân chia bộ nhớ thành những phần kế tiếp nhau để lưu trữ mảng Nếu người sử dụng thực hiện các phép tính

đơn giản như phép nhân một dãy trong một mảng, thì sẽ không cần yêu cầu một vùng nhớ lớn

Một số hàm sử dụng thao tác trên mảng:

Việc sử dụng các hàm trên bảng Function >> Array để tạo và điều khiển các mảng

Trang 15

Hình I.12: Array

Trên đó bao gồm các hàm sau

Array Constant Interleave 1D Arrays Array Max & Min Interpolate 1D Array Array Size Replace Array Subset

Array To Cluster Reverse 1D Array

Cluster To Array Search 1D Array Decimate 1D Array Sort 1D Array Delete From Array Split 1D Array Index Array Threshold 1D Array Initialize Array Transpose 2D Array Insert Into Array

ϖ Array Constant :

Trang 16

Sử dụng hàm này sẽ tạo ra một mảng với các phần tử là các hằng số Để định nghĩa dạng dữ liệu của mảng hằng số ta lựa chọn bất kỳ hằng số vô hướng nào từ bảng Function Palette

và đặt nó vào bên trong mảng hằng số Tất các thành phần của mảng sẽ có dạng này Sử dụng Operating Tool để nhập giá trị cho từng 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

ϖ 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ỉ số của phần tử lớn nhất Giá trị nhỏ nhất (min value) là của cùng dạng dữ liệu như là các thành phần trong mảng

chỉ số nhỏ nhất (min index) là chỉ số của giá trị nhỏ nhất

3 Các cấu trúc điều khiển luồng chương trình:

Trong bất cứ ngôn ngữ lập trình nào, ta cũng hay thường gặp và làm việc với các phần tử điều khiển luồng chương trình, đó là các cấu trúc

Trang 17

(Structures) Các cấu trúc điều khiên luồng chương trình trong một VI có năm cấu trúc là: For Loop, While Loop, Case Structure, Sequence Structure

và Fomula Node

Các cấu trúc đó thực hiện tự động khi dữ liệu đầu vào của chúng có sẵn và thực hiện các công việc theo ý muốn cho tới khi hoàn thành thì mới cung cấp dữ liệu tới các dây nối dữ liệu đầu ra Tuy nhiên, mỗi cấu trúc thực hiện theo các quy tắc riêng (Sub Diagram) của nó

SubDiagram là tập hợp của các Node, Wire và Terminal bên trong

đường viền của Structure Mỗi cấu trúc For Loop và While Loop có một SubDiagram

Cấu trúc Case và Sequence có thể có nhiều SubDiagram, nhưng chỉ có một SubDiagram có thể được thực hiện tại một thời điểm Cách xây dựng các SubDiagram cũng giống như việc xây dựng các Block diagram mức đầu

Việc truyền dữ liệu vào và ra các Structure thông qua các Terminal mà

được tự động tạo ra ở nơi dây nối đi qua đường viền của cấu trúc, các Terminal này được gọi là các đường ống (Tunel)

Các cấu trúc điều khiển chương trình trong LabVIEW nằm ở

Functions◊ Structures Palette

truy cập For Loop ta

chọn Menu: Functions◊ Structures◊ For Loop

Biểu tượng của For Loop được minh hoạ ở hình 13:

For Loop có hai Terminal đó là:

Loop Count Numerical Input

Numerical Output Hình I.13: For Loop

Trang 18

Count Terminal (Terminal đầu vào): Chỉ ra số lần vòng lặp phải thực hiện

Iteration Terminal (Terminal đầu ra): Chứa số lần vòng lặp đã thực hiện Giá trị của i thay đổi từ 0 tới n-1

While Loop

While Loop là một cấu trúc lặp thực hiện sơ đồ bên trong nó cho đến khi giá trị Boolean đưa tới Conditional Terminal (một Terminal đầu vào) là là trùng với điều kiện được thiết lập để thực hiện vòng lặp Để truy cập While Loop ta chọn Menu: Functions◊ Structures ◊ While Loop

Biêu tượng của While Loop được minh hoạ ở hình I.14

VI kiểm tra Conditional Terminal tại cuối mỗi vòng lặp, do đó While Loop luôn thục hiện ít nhấy một lần Iteration Terminal là một Terminal đầu

ra mà đưa ra số lần vòng lặp thực hiện được Việc tính sự lặp luôn được bắt

đầu từ 0 Vì vậy, nếu vòng lặp chạy một lần thì Iteration Terminal đưa ra kết quả 0.Việc thực hiện vòng lặp có thể được xác định thông qua Conditional Terminal Tại Conditional Terminal, ta có thể chọn các điều kiện:

Iteration

Hình I.14: While Loop

Trang 19

+ Stop if true

+ Continue if true

Việc xác định điều khiện để thực hiện vòng lặp tại Conditional Terminal, rất quan trọng vì nếu không xác định đúng thì vòng lặp có thể rơi vào vòng lặp vô hạn

- Case & Sequence Structures

Case Structure và Sequence Structure là các cấu trúc thực hiện một SubDiagram bên trong nó Case Structure thực hiện SubDiagram dựa trên một giá trị đầu vào mà được bộ chọn gọi Sequence Structure thực hiện các SubDiagram một cách tuần tự theo thứ tự mà chúng xuất hiện

Cả Case Structure và Sequence Structure có thể có nhiều SubDiagram, nhưng chỉ có một SubDiagram được nhin thấy tại một thời điểm Tại đường viền bên trên của mỗi cấu trúc là một cửa sổ hiển thị SubDiagram mà gồm có sơ đồ định danh (Diagram Identifer) ở giữa và nút tăng (Increment), nút giảm (Decrement) ở hai bên Diagram identifier chỉ ra SubDiagram hiện thời được hiển thị Đối với Case Structure thì diagram identifer là một danh sách các giá trị để lựa chọn SubDiagram Đối với Sequence Structure thì diagram identifier là khung (Frame) trong Sequence (từ 0 tới n-1) Case Structure và Sequence Structure đượcminh họa ở hình I.15

Increment/Decrement

Buttons

Diagram Identifier

Case Structure Sequence Structure Hình I.15:Case & Sequence Structure

Trang 20

Khi nhấn vào nút tăng (bên phải) hoặc nút giảm (bên trái) sẽ làm hiển thị SubDiagram kế tiếp hoặc trước đó tương ứng Nhấn nút tăng khi ở SubDiagram cuối cùng làm hiển thị SubDiagram đầu tiên còn nhấn nút giảm khi ở SubDiagram đầu tiên làm hiển thị SubDiagram cuối cùng

Để truy cập Case Structure và Sequence Structure ta chọn Menu:

Functions◊ Structures◊ Case

Hoặc Functions◊ Structures◊ Sequence

Block diagram nhờ chuột ở chế độ Labeling Tool Để tạo các đầu vào và các

đầu ra, bấm vào đường viền của Formula Node và chọn Add Input (Add Output), đánh vào tên biến vào bên trong hộp Các công thức được đánh vào bên trong đường viền của Formula Node, mỗi công thức trình bày phải kết thúc bằng dấu chấm phẩy (;) Ví dụ minh họa Formula Node có dạng như hình I.16

Để truy cập Formula Node ta chọn:

Functions◊ Structures◊Formula Node

Các toán tử và hàm có thể dùng bên trong Formula Node được liệt kê trong cửa sổ Help của Formula Node

4 SubVI và cách xây dựng SubVI:

a Khái niệm SubVI:

Hình I.16: Formula Node

Trang 21

Khi thiết kế chương trình 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 1 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 ngôn ngữ lập trình khác

vd C++…Trong một chương trình labview, không bị hạn chế số 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

b 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:

+ Tạo một SubVI từ một VI:

Các SubVI được sử dụng thông qua Icon và Connector của nó Icon của một VI là một biểu tượng đồ hoạ Connector của một VI gán các Control và Indicator cho các Terminal đầu vào và đầu ra Muốn gọi một VI từ Block Diagram của một VI khác, thì trước tiên ta phải tạo ra Icon và Connector cho VI đó

Để tạo Icon, ta bấm đúp chuột trái vào biểu tượng Icon ở góc bên trái phía trên của Front Panel hoặc bấm chuột phải vào biểu tượng Icon và chọn Edit Icon … Sau khi chọn Edit Icon … ta dụng các công

cụ ở bên trái cửa sổ để tạo ra kiểu Icon trong vùng soạn thảo điểm lớn Hình ảnh mặc định của Icon xuất hiện trong vùng soạn thảo Phụ thuộc vào dạng màn hình đang sử dụng, ta có thể thiết kế kiểu Icon ở dạng đơn sắc, 16 màu hoặc 256 màu Màu mặc định của Icon là Đen –

Ngày đăng: 13/09/2017, 21:07

HÌNH ẢNH LIÊN QUAN

Front Panel của 1 VI đượcminh hoạ như hình I.1: - labview for everyone tiengviet 20110326 2
ront Panel của 1 VI đượcminh hoạ như hình I.1: (Trang 3)
Block Diagram của 1 VI đơn giản được thể hiện ở hình I.2: - labview for everyone tiengviet 20110326 2
lock Diagram của 1 VI đơn giản được thể hiện ở hình I.2: (Trang 4)
Tool Panel xuất hiện trên cả Front Panel và Block Diagram. Bảng này cho phép người sử dụng có thể xác lập các chế độ làm việc đặ c biệt của con  trỏ chuột - labview for everyone tiengviet 20110326 2
ool Panel xuất hiện trên cả Front Panel và Block Diagram. Bảng này cho phép người sử dụng có thể xác lập các chế độ làm việc đặ c biệt của con trỏ chuột (Trang 6)
Bảng điều khiển chỉ duy nhất xuất hiện trên Front panel. Bảng điều khiển  chứa  các bộ  điều khiển(control)  và các bộ  hiển thị  (Indicator) - labview for everyone tiengviet 20110326 2
ng điều khiển chỉ duy nhất xuất hiện trên Front panel. Bảng điều khiển chứa các bộ điều khiển(control) và các bộ hiển thị (Indicator) (Trang 7)
Bảng Funtions palette chỉ xuất hiện trên Block Diagram. Bảng này chứa các Vis và các hàm mà người sử dụng xây dụng để xây dựng nên các  khối lưu đồ - labview for everyone tiengviet 20110326 2
ng Funtions palette chỉ xuất hiện trên Block Diagram. Bảng này chứa các Vis và các hàm mà người sử dụng xây dụng để xây dựng nên các khối lưu đồ (Trang 8)
Với bảng Function Palette, người lập trình thực hiện các cú pháp vd ph é p  lặp, phép lựa chọn thông qua các nhóm  hàm,  chức năng đã được  cung  cấp bên  cạnh đó từ bảng này người sử dụng có  thể tạo ra và sử dụng lại các hàm, chức  năng  mà  người  sử   - labview for everyone tiengviet 20110326 2
i bảng Function Palette, người lập trình thực hiện các cú pháp vd ph é p lặp, phép lựa chọn thông qua các nhóm hàm, chức năng đã được cung cấp bên cạnh đó từ bảng này người sử dụng có thể tạo ra và sử dụng lại các hàm, chức năng mà người sử (Trang 8)
Hình I.10: string - labview for everyone tiengviet 20110326 2
nh I.10: string (Trang 11)
Hình I.11:Function >> string - labview for everyone tiengviet 20110326 2
nh I.11:Function >> string (Trang 12)
Hình I.12: Array Trên đó bao gồm các hàm sau  - labview for everyone tiengviet 20110326 2
nh I.12: Array Trên đó bao gồm các hàm sau (Trang 15)
Biêu tượng của While Loop đượcminh hoạ ở hình I.14. - labview for everyone tiengviet 20110326 2
i êu tượng của While Loop đượcminh hoạ ở hình I.14 (Trang 18)
Hình I.15:Case & Sequence Structure - labview for everyone tiengviet 20110326 2
nh I.15:Case & Sequence Structure (Trang 19)
Hình I.17: Icon mặc định và Icon sau khi được tạo. - labview for everyone tiengviet 20110326 2
nh I.17: Icon mặc định và Icon sau khi được tạo (Trang 22)
Hình I.18: Cách thức tạo Connecter của một VI. - labview for everyone tiengviet 20110326 2
nh I.18: Cách thức tạo Connecter của một VI (Trang 23)
Hình I.19: Front Panel và Block Diagram của một VI - labview for everyone tiengviet 20110326 2
nh I.19: Front Panel và Block Diagram của một VI (Trang 25)
III. Kỹ thuật lập trình nâng cao trong LabView: - labview for everyone tiengviet 20110326 2
thu ật lập trình nâng cao trong LabView: (Trang 27)
Hình I.21 - labview for everyone tiengviet 20110326 2
nh I.21 (Trang 27)
Hình I.23: Thư viện Advanced Hình I.24: Thư viện Instrument I/O - labview for everyone tiengviet 20110326 2
nh I.23: Thư viện Advanced Hình I.24: Thư viện Instrument I/O (Trang 28)
Trên hình I.25, trình bày hai dạng lựa chọn của thiết bị DAQ. Trong lựa chọn A, hệ thống thiết bị DAQ nằ m bên trong máy tính - labview for everyone tiengviet 20110326 2
r ên hình I.25, trình bày hai dạng lựa chọn của thiết bị DAQ. Trong lựa chọn A, hệ thống thiết bị DAQ nằ m bên trong máy tính (Trang 30)
Hình I.26: Mối quan hệ giữa LabVIEW, phần mềm điều khiển và phần cứng đo  lường  - labview for everyone tiengviet 20110326 2
nh I.26: Mối quan hệ giữa LabVIEW, phần mềm điều khiển và phần cứng đo lường (Trang 32)
Hình I.28 mô tả hệ thống DAQ với bộ điều hoà đường truyền tín hiệu SCXI (Signal Conditioning eXtensions for Instrumentation ) của hãng  N I - labview for everyone tiengviet 20110326 2
nh I.28 mô tả hệ thống DAQ với bộ điều hoà đường truyền tín hiệu SCXI (Signal Conditioning eXtensions for Instrumentation ) của hãng N I (Trang 34)

TỪ KHÓA LIÊN QUAN