Kỹ thuật

Góc kỹ thuật

2020.09.16
NI-LabVIEW

NI SystemLink - Phần cuối: Tính năng quản lý và phân tích dữ liệu đo DIAdem

Với NI SystemLink TDM, người dùng có thể thực hiện các bước để phân tích tự động một lượng lớn dữ liệu tương tự (analog data) với nhiều định dạng, cấu trúc khác nhau và từ nhiều vị trí của các hệ thống khác nhau.  SystemLink TDM bao gồm các bước thực hiện cấu hình như Data Preparation (Chuẩn bị dữ liệu), Data Indexing (Gắn chỉ số cho dữ liệu), và Analysis Automation (Phân tích tự động).

Hình 1. Mô hình của quy trình quản lý dữ liệu

Data Preparation giúp người dùng tạo những bộ dữ liệu có thể so sánh được nhằm phục vụ cho việc phân tích và tạo báo cáo về sau. Người dùng có thể định nghĩa một tập hợp các quy tắc trong phần mềm DIAdem. SystemLink sẽ dựa vào đó để có thể tự động đọc dữ liệu thô và thực hiện chuẩn hóa các bộ định danh, giá trị, đơn vị; tự động tính toán các giá trị thống kê đặc trưng và xác minh, xác nhận đầu ra dữ liệu.         Data Indexing gắn chỉ số cho các tệp trong khu vực tìm kiếm mà người dùng chỉ định để tăng tốc độ truy xuất dữ liệu. Thông thường, người dùng gắn chỉ số cho các tệp trong kho lưu trữ SystemLink hoặc các tệp trong bất kỳ thư mục nào khác trên mạng chia sẻ hoặc ở các vị trí cách xa nhau về mặt địa lý. Điều này cho phép công cụ Analysis Automation hoặc DIAdem, LabVIEW tìm kiếm và tải các tệp đã được gắn chỉ số một cách hiệu quả.         Analysis Automation áp dụng các phân tích trong DIAdem cho dữ liệu đã được cài đặt Data Indexing; tạo báo cáo quản lý và dữ liệu mới. Các quy trình phân tích tự động bắt đầu khi Data Indexing phát hiện một tệp mới hoặc những thay đổi. Ngoài ra, người dùng có thể bắt đầu phân tích thủ công hoặc theo khoảng thời gian lịch trình đã thiết lập.

1.Data Preparation (Tiền xử lý dữ liệu)

        Các Data Preprocessor chuẩn hóa các định danh, giá trị và đơn vị của dữ liệu thô dựa trên thông số kỹ thuật được người dùng xác định.          Chuẩn hóa dữ liệu có nghĩa là đồng nhất dữ liệu từ các định dạng tệp khác nhau và đặt tên theo quy ước chung, qua đó làm cho những kết quả phân tích dữ liệu tiếp theo có tính nhất quán và có thể so sánh được trong một file báo cáo.          Ngoài ra, người dùng có thể chỉ định việc tính toán các giá trị thống kê đặc trưng và xác định các quy tắc để theo đó có thể xác minh một Data Preprocessor và xác thực dữ liệu.

Hình 2. Bước xử lý tiền dữ liệu

1.1. Thiết lập Data Preparation Procedures trong DIAdem         Sử dụng Data Preparation Procedures (Quy trình chuẩn bị dữ liệu (*.dpp)) để chuẩn hóa dữ liệu đo lường từ nhiều nguồn khác nhau. Data Preparation Procedures chứa thông tin về các bộ định danh và các thuộc tính chuẩn hóa, đơn vị chuyển đổi, và những định dạng cho tệp dữ liệu.

Bước 1: Mở DIAdem SCRIPT, chọn Setting 🡪 SystemLink TDM 🡪 Data Preparation Procedure

Hình 3. Mở giao diện Data Preparation Procedures

Bước 2: Nhấn chọn New Data Preparation Procedure. Nhập Name (tên quy trình), Description (mô tả), và Author (tên người tạo), sau đó nhấp OK.

Hình 4. Bảng điền thông tin cho một Data Preparation Procedure

Bước 3:  Trên tab Replace Identifiers, chọn Harmonize property identifiers, chọn Edit.

        Mỗi một thuộc tính mà người dùng muốn thực hiện kiểm tra có nhiều bộ định dạng từ các tệp của nhiều nguồn khác nhau.         Ví dụ: Source từ file TDMS: “TASK_ID”, source từ file TDM: “ID_Task”, người dùng có thể chỉ định “Peritec_ID” là bộ định danh mặc định. Với “Peritec_ID” có nhiều định dạng, quá trình chuẩn bị dữ liệu có thể áp dụng cho tất cả các file có thuộc tính TDMS, TDM từ nhiều nguồn khác nhau.

Hình 5. Giao diện thiết lập thông tin của tab Replace Identifiers

Bước 4: Trên tab Replace Values, chọn Harmonize property identifiers, chọn Edit.

        Ví dụ: Nếu mỗi một thuộc tính mà người dùng muốn thực hiện kiểm tra có nhiều bộ định dạng từ các tệp của nhiều nguồn khác nhau và người dùng muốn thay đổi tên của Channel từ nguồn 1: “CHx(Bar)”, nguồn 2: “Kenhx(Bar)” thành giá trị mặc định là “Chanelx(Bar)” (x là số nguyên) thì thiết lập như sau:

Hình 6. Giao diện thiết lập thông tin của tab Replace Values

Bước 5 (Tùy chọn): Trên tab Convert Units, người dùng sẽ thiết lập đơn vị cho dữ liệu mà DIAdem dùng để lưu. Ví dụ: Nếu nhiệt độ được đo với đơn vị °F và °C, sẽ được đánh giá với đơn vị K (độ Kelvin), người dùng sẽ xác định DIAdem lưu trữ tất cả giá trị nhiệt độ dưới đơn vị K.

Bước 6 (Tùy chọn): Trên tab Statistics, người dùng có thể lựa chọn những hàm tính toán để có thể tính được những giá trị thống kê đặc trưng, chẳng hạn như giá trị trung bình, tổng, giá trị tuyệt đối... Các Data Preprocessor lưu kết quả thống kê dưới dạng các thuộc tính tùy chỉnh trong các tệp dữ liệu được xử lý.

Bước 7 (Tùy chọn): Trên tab V & V, dữ liệu sẽ được kiểm tra xem có chính xác và đầy đủ không. Để xác thực và xác minh thông tin, người dùng tạo một tệp lệnh kiểm tra xem giá trị giới hạn có được áp dụng hay không.

Bước 8 (Tùy chọn): Trên tab Convert File, chỉ định định dạng tệp mà Data Preprocessor sử dụng để lưu trữ dữ liệu đã xử lý.

Bước 9: Nhấn chọn Save Data Preparation Procedure As, nhập tên vào và nhấn Save.

1.2. Tạo Data Preprocessor         Dùng một đối tượng Data Preprocessor để chuẩn hóa dữ liệu đo lường từ nhiều nguồn khác nhau sẽ dễ dàng so sánh dữ liệu có trong báo cáo hơn.          Trong phần mềm DIAdem, người dùng xác định dữ liệu được chuẩn hóa như thế nào và lưu Data Preparation Procedure dưới dạng file DPP, file này sẽ được nạp vào thông qua Data Preprocessor.

Bước 1: Trong ứng dụng Data Preparation, nhấn chọn Data Preprocessor Instances

Bước 2: Nhấn chọn New Data Preprocessor Instances để bắt đầu cấu hình.

Bước 3: Nhập vào một cái tên và nhấn Next.

Hình 7. Giao diện thiết lập Data Preprocessor Instance

Bước 4: Cấu hình vùng dữ liệu. Đối tượng Data Preprocessor lấy dữ liệu từ vùng dữ liệu thô, chuyển đổi dữ liệu thành một dạng thống nhất và lưu trữ dữ liệu trong vùng dữ liệu đã xử lý. Dùng đường dẫn dạng UNC \\ để chỉ định thư mục. Ví dụ: \\Server\MyFolder

Hình 8. Thiết lập thông tin cho Data Preprocessor Instance - 1

Bước 5: Xác định chế độ cho cấu hình.

Use default configuration: Chuyển đổi dữ liệu thô sang định dạng TDM và tính toán các giá trị min và max.

Use custom configuration: Chuẩn hóa dữ liệu thô dựa vào file quy trình chuẩn bị dữ liệu (*.dpp) cần nạp vào.

Hình 9. Thiết lập thông tin cho Data Preprocessor Instance - 2 

Bước 6: Sau khi nhấn Finish, chọn đối tượng đã tạo và nhấn → Start để bắt đầu.

Hình 10. Thiết lập hoàn tất, chọn Start để bắt đầu

2. Data Indexing (Gắn chỉ số cho dữ liệu)

        Sử dụng DataFinder để tìm dữ liệu trên máy tính trong mạng LAN và hệ thống Server hoặc trong SystemLink         Ví dụ: DataFinder gắn chỉ số các thư mục có dữ liệu đã được chuẩn hóa bởi một đối tượng Data Preprocessor và cung cấp dữ liệu cho Analysis Automation. Ngoài đối tượng Analysis Automation thì Data Navigation, DIAdem hoặc LabVIEW có thể giao tiếp với DataFinder để tìm kiếm dữ liệu được gắn chỉ số và tải kết quả tìm kiếm. Theo mặc định, Data Indexing sẽ ưu tiên tìm kiếm dữ liệu từ các tệp bên trong SystemLink. Đối với dữ liệu trên máy tính và máy chủ bên ngoài SystemLink, người dùng có thể tạo một đối tượng DataFinder trong khu vực tìm kiếm được xác định, ở đó các công cụ như Data Navigation có thể tìm kiếm.

Hình 11. Bước tìm kiếm dữ liệu

Bước 1: Trong Data Indexing, nhấn chọn DataFinders.

Bước 2: Nhấn New → DataFinder Instance để bắt đầu cấu hình.

Bước 3: Nhập tên vào và nhấn Next. Analysis Automation dùng tên này để truy cập vào đối tượng Data Finder. Data Navigation và các máy Client cần tên này để kết nối với đối tượng.

Hình 11. Giao diện thiết lập DataFinder Instance

Bước 4: Xác định loại đối tượng DataFinder cần tạo.

Network shares within the organization: Gắn chỉ số cho dữ liệu trên trên máy tính. Thiết lập phạm vi tìm kiếm để xác định thư mục, theo đó đối tượng sẽ gắn chỉ số cho dữ liệu để người dùng có thể tìm kiếm dữ liệu trong những khu vực tìm kiếm này.

SystemLink file service: Gắn chỉ số cho dữ liệu trong dịch vụ tập tin của SystemLink.

Hình 12. Thiết lập thông tin cho DataFinder Instance

Bước 5: Nhấn Finish.

Bước 6: Chọn đối tượng DataFinder vừa tạo và nhấn 🡪 Start để bắt đầu đối tượng.

Hình 13. Thiết lập hoàn tất, chọn Start để bắt đầu

3. Analysis Automation (Phân tích tự động)

        Analysis Automation thực hiện phân tích dữ liệu, lưu dữ liệu kết quả trong các tệp TDM mới và xuất báo cáo quản lý dưới dạng PDF hoặc hình. Người dùng áp dụng chức năng này trong việc thiết lập phân tích tự động trong DIAdem         Sau đó, người dùng tải lên quy trình phân tích tự động này và xác định các tác vụ để kiểm soát việc thực hiện các quy trình này trong đối tượng Analysis Automation. Các tác vụ có thể được khởi động thủ công hoặc tự động tại một thời điểm được chỉ định hoặc được kích hoạt khi một đối tượng Data Indexing phát hiện các tệp mới được tạo hoặc có thay đổi.

Hình 14. Bước tự động hoá phân tích

3.1. Tạo quy trình tự động hóa phân tích trong DIAdem         Sử dụng Analysis Automation Procedure để thực hiện phân tích định kỳ với dữ liệu tương tự trong Analysis Automation và xuất kết quả dưới dạng tệp PDF hoặc hình ảnh. Các quy trình tự động hóa phân tích chứa tập lệnh phân tích, định nghĩa tham số và truy vấn tìm kiếm cho dữ liệu cần phân tích. Người dùng tạo quy trình phân tích tự động trong DIAdem theo các bước như sau: 

Bước 1: Mở DIAdem SCRIPT, chọn Settings → SystemLink TDM → Analysis Automation Procedure...

Hình 15 : Mở giao diện thiết lập Analysis Automation Procedure

Bước 2: Nhấn chọn New Analysis Automation Procedure. Nhập Name (tên quy trình chuẩn bị dữ liệu), Description (mô tả), Author (tên người tạo), và Environment (VB-Script hoặc Python) sau đó nhấp OK.

Hình 16 : Thiết lập thông tin Analysis Automation Procedure

Bước 3: Chọn Select Active Data Source. 

Hình 17. Chọn Select Active Data Source

Bước 4: Chọn Data filter enabled để xác định truy vấn tìm kiếm. Ví dụ: thiết lập cài đặt như bên dưới để giới hạn loại tập tin để phân tích là TDMS.

Hình 18. Thiết lập cài đặt giới hạn tập tin TDMS

Bước 5: Sử dụng Parameter Definition tab để xác định các tham số và giá trị khởi tạo. Người dùng vẫn có thể thay đổi giá trị của tham số khi định nghĩa tác vụ trong Analysis Automation. Dùng đối tượng context trong tập lệnh phân tích để truy cập các tham số.

Hình 19. Thiết lập cài đặt giới hạn tập tin TDMS

Bước 6: Sử dụng Analysis Script tab để chỉnh sửa tập lệnh phân tích và thêm nhiều tập tin cấu hình vào quy trình tự động hóa phân tích. Chọn file Main.vbsa hoặc Main.py và nhấn chọn Edit Selected File 

Hình 20. Thiết lập cài đặt Analysis Script

Bước 7: Chọn Save Analysis Automation Procedure As.

3.2. Cấu trúc tập lệnh phân tích         Người dùng có thể tạo tập lệnh phân tích cho Analysis Automation bằng Visual Basic Script hoặc Python. Quy trình phân tích tự động chứa một tập lệnh (Main.vbsa hoặc Main.py), trong đó người dùng cần xác định các phương pháp, quy tắc dùng cho phân tích.          Trong tập lệnh này, người dùng có thể đưa vào các tập lệnh bổ sung cần thiết cho quy trình phân tích tự động. Tập lệnh phân tích Main.vbsa hoặc Main.py chức các thành phần mặc định như sau:
      • On_Initialize(oContext): Khởi tạo quá trình đánh giá song song. Phương pháp này được gọi một lần trước khi xử lý dữ liệu.
      • On_RunAnalysisProcedure(oContext): Thực hiện đánh giá thực tế của các yếu tố dữ liệu được lấy.
      • On_Finalize(oContext): Kết thúc quá trình đánh giá song song. Phương pháp này được gọi một lần sau khi quá trình xử lý dữ liệu hoàn thành.
        Tham số truyền oContext trao đổi thông tin giữa tự động hóa phân tích và tập lệnh phân tích, cung cấp quyền truy cập vào các phần tử dữ liệu được truy xuất.         Dưới đây là các lệnh và phương thức trong DIAdem quan trọng nhất để xử lý dữ liệu.

ApplicationSetLocale("english"): Thiết lập các định dạng và số lượng cụ thể, ví dụ: định dạng thời gian, khổ giấy và lề…

oContext.DataLinks: Chứa các yếu tố dữ liệu được truy xuất.

Navigator.LoadData: Tải dữ liệu.

ChannelsToArray: Chuyển đổi các kênh DIAdem thành các mảng để xử lý trong Python.

ArrayToChannels: Chuyển đổi mảng Python thành các kênh DIAdem.

DataFileSave: Lưu dữ liệu.

        Sau đây là ví dụ của một tập lệnh phân tích.  
Sub On_Initialize(oContext) 
  Call ApplicationSetLocale("english")
  Dim ResultsPath
  If oContext.Procedure.Arguments.Exists("ResultsPath") Then
    ResultsPath = oContext.Procedure.Arguments.Item("ResultsPath").Value
    Call oContext.LogResult("Results path: " & ResultsPath)
  Else
    Call oContext.LogError("Results path missing")
  End If
End Sub 
Sub On_Run_AnalysisProcedure(oContext) 
  Call ApplicationSetLocale("english")
  Dim ResultsPath
  ResultsPath = oContext.Procedure.Arguments.Item("ResultsPath").Value
  Dim oMyDataLinks, iCount
  Set oMyDataLinks = oContext.DataLinks
  For iCount = 1 To oMyDataLinks.Count
    Call Navigator.LoadData(oContext.DataLinks.Item(iCount))
    ' Enter your analysis commands    
  Next
  Call Report.LoadLayout(oContext.Procedure.ScriptPath & "MyLayout.tdr")
  Call Report.Sheets.ExportToPDF(ResultsPath & & "MyResult.pdf",FALSE)
End Sub 
Sub On_Finalize(oContext) 
    Call oContext.LogResult("Init ok: " & oContext.Status.On_Initialize_Succeeded)
    Call oContext.LogResult("Analysis ok: " & oContext.Status.On_Run_AnalysisProcedure_Succeeded)
End Sub
3.3. Thêm đối tượng tự động hóa phân tích

Bước 1: Trong Analysis Automation, nhấn chọn Instances.

Bước 2: Nhấn chọn New → Analysis Automation Instances.

Hình 21. Giao diện Analysis Automation Instance

Bước 3: Chọn đối tượng và nhấn → Manage → Analysis Automation Procedures Library.

Bước 4: Nhấn chọn Add.

Bước 5: Chọn một quy trình phân tích tự động và nhấn OK.

Hình 22. Giao diện Analysis Automation Instance

Bước 6: Nhấn Apply trong vùng được tô sáng để chấp nhận cài đặt. Quy trình phân tích tự động được thêm vào xuất hiện trong Analysis Automation Procedures Library.

Hình 23. Chọn Apply để hoàn tất cài đặt

Để thực thi quy trình phân tích tự động, người dùng cần tạo thời gian để bắt đầu tác vụ (chọn kiểu thời gian để tác vụ được bắt đầu).

3.4. Thêm tác vụ cho quy trình phân tích tự động

Bước 1: Trong Analysis Automation, nhấn chọn Instances.

Bước 2: Chọn đối tượng và nhấn →  Manage và chọn một trong các loại tác vụ sau.

      • Manual Task: Người dùng bắt đầu tác vụ phân tích tự động bằng thủ công.
      • Triggered Task: Tự động bắt đầu tác vụ phân tích tự động ngay khi phát hiện các tệp mới hoặc thay đổi. Đối tượng DataFinder được xác định là nguồn dữ liệu cho tác vụ này thông báo cho Analysis Automation về các tệp mới hoặc đã thay đổi. Khi người dùng chọn nguồn dữ liệu cho tác vụ, SystemLink sẽ tự động kích hoạt Notify Analysis Automation about new or changed files của nguồn được chọn. Dịch vụ tệp SystemLink không được hỗ trợ làm nguồn dữ liệu cho các loại tác vụ này.
      • Scheduled Tasks: Bắt đầu các quy trình tự động phân tích theo lịch trình được thiết lập.

Hình 24. Chọn Update để tiến hành cập nhật

Bước 3: Sau khi cấu hình cho tác vụ, chọn Apply trong vùng tô sáng để chấp nhận cài đặt.

Hình 25. Hoàn thành cài đặt Triggered Task

Hình 26. Hoàn thành cài đặt ANP_Demo

Để thực thi Manual Task, chọn tác vụ Manual, nhấn Execute.

Hình 27. Khởi chạy ANP_Demo

3.5. Thêm tác vụ cho quy trình phân tích tự động         Sử dụng Data Analysis để chạy các tác vụ tự động hóa phân tích. Data Analysis hiển thị các tác vụ thủ công đã được kích hoạt trong đối tượng Analysis Automation. Người dùng kích hoạt tác vụ cho Data Analysis bằng chọn Available in Data Analysis khi thêm tác vụ trong Analysis Automation.

Bước 1: Trong Data Analysis, nhấn chọn để mở tác vụ cần chạy.

Bước 2: Chọn nguồn dữ liệu người dùng muốn chạy tác vụ.

Preconfigured data source: Phân tích dữ liệu trong nguồn dữ liệu được thiết lập ban đầu trong Analysis Automation.

Selected elements in Data Cart: Phân tích dữ liệu người dùng chọn trong Data Cart. Để thêm dữ liệu vào Data Cart, tìm kiếm dữ liệu trong Data Navigation, chọn những kết quả cầnphân tích, và nhấn Add to Data Cart.

Hình 28. Khởi chạy ANP_Demo

Bước 3 (Tùy chọn): Nhấn chọn Parameterization để thay đổi giá trị của tham số. 

Ví dụ người dùng có thể thay đổi thư mục lưu trữ  kết quả phân tích trong Data Analysis.

Hình 29. Khởi chạy ANP_Demo

Bước 4: Nhấn chọn Run để chạy tác vụ

 

Các thông tin liên quan