2.2.3.1 Front Panel
Front panel là một panel tương tự như panel của thiết bị 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ộ hiển thị (Indicator) [5].
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 [5].
2.2.3.2 Block Diagram
Block diagram của một VI là một sơ đồ được xây dựng trong 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 trúc lệnh để chương trình thực hiện. Block Diagram là một mã nguồn đồ họa của một 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 [5].
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) [5].
Khác với những ngơn ngữ lập trình khác, ngơn ngữ lập trình LabVIEW ngồi những menu quen thuộc giống như những ngơn ngữ khác. LabVIEW cịn sử dụng các bảng: Tools Palette, Controls Palette, Function Palette, chính những bảng này làm cho LabVIEW khác với các ngơn ngữ sử dụng những câu lệnh rườm rà khó nhớ. Các bảng đó cung cấp các chức năng để người sử dụng có thể tạo và thay đổi trên Front Panel và Block Diagram bằng các biểu tượng, các hình ảnh trực quan giúp cho việc sử dụng trở nên dễ dàng, linh động hơn [5].
2.2.3.3 Tool palette
Tool Panel xuất hiện trên cả Font 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 Tool Palette [5].
Hình 2.10 Cửa sổ block diagram
2.2.3.4 Controls Palette (bảng điều khiển)
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 đầy đủ được minh họa như hình bên đưới. Để mở bảng controls palette ta vào menu View, chọn controls palette [5].
Bảng điều khiển được sử dụng để người sử dụng thiết kế cấu trúc mặt hiển thị gồm các thiết bị ví dụ: 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ử dụng có thể chọn các bộ thiết bị chuẩn do hãng sản xuất cung cấp ví dụ 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 dùng để cung cấp dữ liệu đầu vào và hiển thị kết quả đầu ra [5].
Trên bảng controls palette thể hiện khá phong phú các bộ điều khiển khác nhau như trên hình.
2.2.3.5 Function palette
Bảng Functions Palette chỉ xuất hiện trên Block Diagram. Bảng này chứa các VI và các hàm mà người sử dụng thiết kế để tạo dựng nên các khối lưu đồ. Với bảng Function Palette, người lập trình thực hiện các lệnh khác nhau bằng các lưu đồ như: các phép tính số học, các biểu thức tốn học, các vịng 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 đó bảng này 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 tốn học được minh họa thơng 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 [5].
Hình 2.12 Controls Palette
Hình 2.13 Function palette
2.2.3.6 Các phép toán cơ bản
Cộng, Trừ, Nhân, Chia, Cộng 1, Trừ 1, Bình phương, Đảo dấu, Hàm Random, Dịch bit, ….
2.2.3.7 Các phép so sánh
So sánh hơn, so sánh bằng, bằng 0, khác 0, lấy số dư….
2.2.3.8 Các phép logic
And, or, xor, not, true, false…
2.2.3.9 Các hàm toán học phức tạp
Lũy thừa, Logarit, hàm lượng giác, hàm với các ma trận, hàm nội suy, hàm tối ưu...
2.2.3.10 Các hàm về mảng
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 một chiều (một cột hoặc một véc tơ), mảng 2 chiều, mảng 3 chiều.
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ị.
Build array: Hàm này xây dựng mảng hoặc phần từ mảng.
Index array: Hàm này trả về một phần tử hoặc phân đoạn của mảng. Array subset: Trả về một mảng theo u cầu.
Array Size: Tìm kích thước mảng.
Delete From Array: Xóa phần tử trong mảng. Insert Into Array: Chèn phần tử trong mảng.
2.2.3.11 Thời gian thực thi vòng lặp và các hàm Delay
Để có thể thiết lập thời gian thực thi cho các vòng lặp này một cách gần đúng, ta sử dụng các hàm Delay.
Hàm Wait thực hiện phép Delay thời gian cho trước sau khi thực hiện các tác vụ trong hàm While, còn hàm Wait Until ms Multiple cố định thời gian thực hiện
các tác vụ trong hàm While với khoảng thời gian định trước, bất kể các tác vụ trong hàm là gì [5].
2.2.3.12 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 (Structures). Các cấu trúc điều khiển luồng chương trình trong một VI có 5 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 hồ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ể 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) [5].