Trong bài này ta sẽ tìm hiểu một số cấu trúc còn lại hay được sử dụng trong LabVIEW.
1. Cấu trúc CASE:
Cấu trúc CASE trong LabVIEW có tác dụng giống như cấu trúc rẽ nhanh CASE trong lập trình C/C++. Đó là dạng cấu trúc rẽ nhánh cho phép chương trình có nhiều lựa chọn khác nhau tùy thuộc vào đầu vào.
Để tạo cấu trúc CASE, ta click chuột phải chọn Programming >> Structures >> Case structure
Ta tạo một cấu trúc case trên block diagram như sau:

Khi mới khởi tạo, điều kiện đầu vào có kiểu dữ liệu Logic (Boolean).
Điều kiện đầu vào cũng có thể là chuỗi ký tự, số, enum…
Khi muốn chuyển sang Case khác, ví dụ hiện tại là True case, ta ấn vào mũi tên tam giác chỉ xuống cạnh chữ True, chọn False, nội dung bên trong case structure sẽ chuyển sang hiển thị False case.
Ví dụ:
Viết chương trình cảnh báo trạng thái của biến đầu vào, nếu biến lớn hơn giá trị đặt, đèn Led nhấp nháy, nếu không đèn Led không sang.
Chương trình như sau:

Đây là chương trình khi điều kiện đầu vào lớn hơn giá trị đặt (10) thỏa mãn, ta thực hiện một phép đảo giá trị Led (nhấp nháy Led Alarm) sau mỗi vòng lặp.
Còn đây là chương trình khi điều kiện đầu vào là False:

Ta cũng có thể thiết lập đầu vào của Case là dạng khác Boolean, ví dụ:
• Dạng string: bạn chú ý khi đặt đầu vào là String, ta phải chú ý nhập đúng chính xác tên của điều kiện trong dấu ngoặc kép, nếu không LabVIEW sẽ coi như đó là một trường hợp khác.
• Dạng enum: enum là một kiểu số Integer nhưng được đại diện bởi một tên nhất định. Sử dụng kiểu Enum ta sẽ ít gặp phải khả năng bị nhầm tên như khi sử dụng String, hơn nữa, sử dụng Enum cũng sẽ giảm bớt đáng kể dung lượng bộ nhớ được sử dụng.
Ví dụ sau thực thi phép toán:
• Cho đầu vào là 1 số nguyên X và 1 đèn Led
• Nếu X=0 thì đèn Led tắt
• Nếu X=1 Led nháy với chu kỳ 100ms
• Nếu X=2 Led nháy với chu kỳ 200ms
• Các trường hợp khác Led sáng
Bài toán này là một ví dụ về việc đầu vào của Case là số. Chương trình với từng trường hợp của đầu vào được lập trình như sau:



Chú ý:
• Để tạo thêm 1 case mới, ta click phải vào cạnh của Case structure, chọn "Add case after" hoặc "Add case before".
• Default Case là trường hợp trong đó X bằng giá trị điều kiện, hoặc bằng bất cứ giá trị nào chưa được nêu trong điều kiện đó. Ví dụ trong bài toán này, Default case phải là 3 hoặc 4 hoặc bất cứ số nào khác 0,1,2.
• Thường mặc định ban đầu X=0 sẽ là "Default case", muốn "default case" là 3, ta tạo Case X=3, và click chuột phải vào Case structure, chọn "Make this the default case"
Enum:
Enum bản chất tập hợp các số thông thường, nhưng mỗi số được đại diện bằng 1 tên riêng.
Để tạo Enum trong Front panel, ta chọn: Modern >> Ring & Enum >> Enum
Biểu tượng trong Block Diagram và Front Panel của 1 Enum như sau

Để tạo thêm phần tử trong Enum, ta click phải vào biểu tượng, chọn Properties >> Edit Items

Ta thêm các phần tử với các tên tương ứng như sau hình trên.
Như vậy ta đã tạo ra các phần tử với các tên: "So 0" tương ứng với 0; "So 1" tương ứng với 1; "So 2" tương ứng với 2; Ta có thể thêm phần tử cuối là "So con lai" tương ứng với 3.
Sau đó ta sẽ thay thế Enum vừa tạo cho số X trong ví dụ Case Structure trên, ta thấy Case structure tự nhận tập hợp các số Enum vừa tạo như là tên của từng trường hợp.

Sau này, ta sẽ thấy Enum được sử dụng rất thông dụng trong các bài toán sử dụng Case, đặc biệt là các bài toán sử dụng Máy trạng thái mà tôi sẽ nói đến trong những phần sau của mục này.
...(còn tiếp)











)

Leave a comment: