Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 152 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
152
Dung lượng
10,79 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGHIÊN CỨU SINH: NGUYỄN THỊ THANH TÚ NGHIÊN CỨU VÀ XÂY DỰNG BỘ CÔNG CỤ PHÁT TRIỂN PHẦN MỀM HỖ TRỢ GIÁM SÁT, ĐIỀU KHIỂN SỬ DỤNG OPC UA CHUYÊN NGÀNH: KỸ THUẬT PHẦN MỀM MÃ SỐ: 62480103 LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS HUỲNH QUYẾT THẮNG PGS.TS BÙI QUỐC KHÁNH Hà Nội – 2014 LỜI CAM ĐOAN Tơi xin cam đoan cơng trình nghiên cứu Các số liệu, kết viết chung với tác giả khác chấp thuận đồng tác giả trước đưa vào luận án Trong q trình làm luận án, tơi kế thừa thành tựu nhà khoa học với trân trọng biết ơn Các số liệu, kết trình bày luận án trung thực chưa công bố Hà Nội, ngày 30 tháng năm 2014 TÁC GIẢ LUẬN ÁN Nguyễn Thị Thanh Tú i LỜI CẢM ƠN Em xin chân thành cảm ơn sâu sắc đến Thầy hướng dẫn PGS.TS Huỳnh Quyết Thắng, PGS.TS Bùi Quốc Khánh, người Thầy giúp cho em có đam mê, có tâm nghiên cứu khoa học Em xin chân thành cảm ơn đến Thầy/Cô Viện CNTT & TT, đặc biệt Bộ môn CNPM; Thầy/Cô Viện Kỹ thuật Điều khiển & Tự động hóa; Các Chuyên viên Viện Đào tạo Sau đại học; Ban Giám đốc, đồng nghiệp Trung tâm Mạng Thông tin tạo điều kiện, hỗ trợ giúp đỡ học tập, nghiên cứu công việc em suốt thời gian thực luận án Em xin chân thành cảm ơn Thầy/Cô Phản biện, Thầy/Cô Hội đồng cấp trao đổi cho em nhiều dẫn quý báu, giúp cho luận án em hoàn thiện, trình bày khoa học, hiệu Tác giả chân thành cảm ơn đến nhóm nghiên cứu bao gồm Bạn: Nguyễn Tuấn, Nguyễn Trọng Minh, Nguyễn Thị Mai, Nguyễn Trí Dũng, Lê Quý Dương, Nguyễn Việt Dũng, Nguyễn Đình Thịnh NCS thực số nội dung luận án này; đặc biệt TS Vũ Văn Tân, người sát cánh, sẵn sàng chia sẻ kiến thức, kinh nghiệm để tác giả học tập, nghiên cứu; xin bày tỏ lòng biết ơn tới Gia đình, người thân yêu, giúp đỡ nhiều tinh thần lẫn vật chất thời gian nghiên cứu hoàn thành luận án Mặc dù cố gắng thời gian kiến thức hạn chế nên luận án cịn có nhiều thiếu sót Em mong nhận ý kiến đóng góp q giá từ Thầy/Cơ bạn! ii DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Từ đầy đủ Mô tả ADC Analog to Digital Converter Bộ chuyển đổi tương tự - số API Application Programming Interface Giao diện lập trình ứng dụng COM Component Object Model Mơ hình đối tượng thành phần DCOM Distributed COM Mơ hình đối tượng thành phần phân tán DCS Distributed Control System Hệ thống điều khiển phân tán DDE Dynamic Data Exchange Trao đổi liệu động ERP Enterprise Resourse Planning Quản lý tài nguyên EDDL Electronic Device Description Ngôn ngữ mô tả thiết bị điện tử Language FDT Field Device Tool Công cụ thiết bị trường FT Flow Transmitter Thiết bị đo lưu lượng FBD Function Block Diagram Sơ đồ khối chức HCS Hybrid Control System Hệ thống điều khiển lai HMI Human – Machine Interface Giao tiếp người máy HTTP HyperText Transfer Protocol Giao thức truyền siêu văn IEC International Electrotechnical Tổ chức kỹ thuật điện quốc tế Commission ISA 95 International standard for the Chuẩn cho việc tích hợp hệ thống cấp integration of enterprise and control điều hành doanh nghiệp systems LED Đi-ốt phát quang Light Emitting Diode iii MES Manufacturing Execution System Hệ thống thực thi sản xuất OLE Object Linking and Embedding Nhúng, liên kết đối tượng ODBC Open DataBase Connectivity Kết nối sở liệu mở OPC Object Linking and Embedding Liên kết nhúng đối tượng cho điều (OLE) for Process Control khiển trình OPC AE OPC Alarm & Event OPC cảnh báo kiện OPC DA OPC Data Access OPC truy cập liệu OPC DX OPC Data eXchange OPC trao đổi liệu OPC HDA OPC Historical Data Access OPC truy cập liệu lịch sử OPC XML– OPC XML Data Access OPC truyền tải liệu XML DA OPC UA OPC Unified Architecture OPC kiến trúc tổng thể PLC Programmable Logic Controller Bộ điều khiển logic lập trình SCADA Supervisory Control And Data Hệ thống giám sát thu thập liệu Acquisition SFC Sequential Function Charts Biểu đồ chức SOA Service Oriented Architecture Kiến trúc hướng dịch vụ SOAP Simple Object Access Protocol Giao thức truy cập đối tượng đơn giản SDK Software Development Kit Bộ công cụ phát triển phần mềm TCP Transmission Control Protocol Giao thức điều khiển truyền liệu WSDL Web Services Description Language Ngôn ngữ mô tả dịch vụ web XML Extensible Markup Language Ngôn ngữ đánh dấu mở rộng iv DANH MỤC CÁC HÌNH VẼ STT Hình số Nội dung Trang 1.1 Kiến trúc phân tầng phần mềm hệ thống cơng nghiệp (ISA 95) 16 1.2 Hệ thống tích hợp cho hệ thống giám sát điều khiển dựa mơ hình ISA 95 OPC 16 1.3 Kiến trúc truyền thống dùng cho hệ thống công nghiệp 18 1.4 Kiến trúc dùng OPC cho hệ thống công nghiệp 18 1.5 OPC UA đề xuất W3C 19 1.6 Phương thức hoạt động OPC DA 21 1.7 Phương thức hoạt động OPC AE 23 1.8 UA thay DA, AE HAD 24 1.9 OPC UA – đảm bảo chất lượng 24 10 1.10 Vượt qua internet tường lửa 24 11 1.11 Ví dụ mơ hình thơng tin chung 25 12 1.12 UA giấy chứng thực 25 13 1.13 Từ phần mềm nhúng đến hệ thống 25 14 1.14 Mac, Windows hay Linux 25 15 1.15 SOAP/XML hay UA Binary 26 16 1.16 UA SDK – giải pháp tiết kiệm chi phí 26 17 1.17 Các đặc tả OPC UA 26 18 1.18 Tổng quan OPC UA 28 19 1.19 Lớp Mơ hình thơng tin 29 20 1.20 Các lớp phát triển ứng dụng OPC UA 30 21 2.1 Mô hình cơng cụ OPC UA Client-Server SDK 38 22 2.2 Mơ hình ứng dụng đề xuất dựa công cụ OPC UA ClientServer SDK 40 23 2.3 Các class OPC UA Client SDK 42 24 2.4 Biểu đồ hoạt động Discovery Component 43 25 2.5 Biểu đồ hoạt động Session Manager 44 26 2.6 Biểu đồ hoạt động Subsription Manager 45 27 2.7 Biểu đồ hoạt động Model Manager 46 v 28 2.8 Kiến trúc chung OPC UA Server SDK 48 29 2.9 Các bước khởi tạo Server 50 30 2.10 Khởi tạo phiên làm việc 51 31 2.11 InodeManager đối tượng quản lý không gian địa 52 32 2.12 Biểu đồ hoạt động – Client gửi yêu cầu truy vấn 53 33 2.13 Biểu đồ hoạt động dịch vụ duyệt không gian nút 54 34 2.14 Biểu đồ hoạt động dịch vụ đọc giá trị thuộc tính 55 35 2.15 Biểu đồ hoạt động dịch vụ tạo nút 56 36 2.16 Tổng quan quản lý đăng ký 57 37 2.17 Mơ hình quản lý đăng ký theo dõi liệu 57 38 2.18 Biểu đồ hoạt động dịch vụ CreateSubscription 59 39 2.19 Sơ đồ hoạt động dịch vụ thêm phần tử theo dõi 60 40 2.20 Mơ hình lấy mẫu liệu 61 41 2.21 Sơ đồ kết nối OPC UA Server với thiết bị 62 42 2.22 Giao diện ISecurityHelper 65 43 2.23 Cơ chế hoạt động 65 44 2.24 Tạo giấy chứng nhận 66 45 2.25 Giấy chứng nhận 66 46 3.1 Sơ đồ hoạt động hệ thống quan trắc môi trường 69 47 3.2 Kiến trúc hệ thống quan trắc mơi trường 70 48 3.3 Cấu hình Controller toán 72 49 3.4 Cách xây dựng Controller ứng dụng toán 73 50 3.5 Thiết bị phần cứng hệ thống quan trắc 75 51 3.6 Giao diện OPC UA Client hệ thống quan trắc 75 52 3.7 Thiết bị giả lập FLEX 1000 77 53 3.8 Mơ hình hệ thống tốn 78 54 3.9 Cấu hình Controller tốn 81 55 3.10 Cách xây dựng Controller ứng dụng tốn số 82 56 3.11 Mơ hình thực nghiệm 82 57 4.1 Sơ đồ thực nghiệm 86 58 4.2 Mơ hình ứng dụng q trình trộn nước 87 vi 59 4.3 Cấu hình Controller tốn 88 60 4.4 Cách xây dựng Controller tốn 89 61 4.5 Giao diện mơ hình hệ thống giám sát điều khiển trình trộn nước 90 62 4.6 Mơ hình chung cho ứng dụng điều khiển trình 92 vii MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN .ii MỞ ĐẦU 1 Lý chọn đề tài Mục tiêu nghiên cứu luận án Nhiệm vụ nghiên cứu luận án Đối tượng phạm vi nghiên cứu Ý nghĩa khoa học thực tiễn luận án Phương pháp nghiên cứu Nội dung luận án Kết nghiên cứu, đóng góp luận án CHƯƠNG 1: TỔNG QUAN 1.1 Hệ thống điều khiển tự động hóa cơng nghiệp 1.1.1 Thiết bị điều khiển khả trình 1.1.2 Hệ thống điều khiển phân tán 10 1.1.3 Hệ thống điều khiển lai 11 1.1.4 Điều khiển tập trung điều khiển phân tán 11 1.2 Lịch sử phát triển chuẩn kết nối OPC UA 12 1.2.1 OLE 13 1.2.2 COM/DCOM 13 1.2.3 XML 14 1.2.4 SOA 15 1.2.5 Web Services 15 1.3 Tổng quan OPC 15 1.4 Các đặc tả OPC 20 1.4.1 Đặc tả OPC DA 20 1.4.2 Đặc tả XML-DA 21 1.4.3 Đặc tả DX 22 1.4.4 Đặc tả HDA 22 1.4.5 Đặc tả OPC AE 23 1.4.6 Đặc tả OPC Security 23 1.4.7 Đặc tả OPC Batch 23 1.5 Đặc tả OPC UA 24 1.5.1 Mơ hình Client – Server OPC UA 30 1.5.2 Nhận xét đặc tả OPC 31 viii 1.6 Phân tích đánh giá cơng trình liên quan 33 1.6.1 Hệ thống KSC 33 1.6.2 Hệ thống OPC-EWS 33 1.6.3 Giao thức trao đổi liệu 34 1.6.4 XML-DA Server nhúng 34 1.6.5 SOCRADES, SIRENA SODA 34 1.6.6 Vai trò công cụ OPC UA Client-Server SDK phát triển phần mềm giám sát điều khiển 35 1.7 Nhiệm vụ luận án 36 1.8 Kết luận 37 CHƯƠNG 2: XÂY DỰNG BỘ CÔNG CỤ OPC UA CLIENT-SERVER SDK CHO HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN 38 2.1 Xây dựng công cụ OPC UA Client-Server SDK 38 2.1.1 Kiến trúc hệ thống công cụ OPC UA Client-Server SDK 38 2.1.2 Xây dựng OPC UA Client SDK 42 2.1.3 Xây dựng OPC UA Server SDK 48 2.1.3.1 Khởi tạo Server 50 2.1.3.2 Module quản lý phiên làm việc 50 2.1.3.3 Module quản lý không gian địa 51 2.1.3.4 Module quản lý đăng ký theo dõi liệu 57 a Mơ hình quản lý đăng ký theo dõi liệu 57 b Lấy mẫu liệu không gian nút 61 2.2 Kết nối thiết bị với OPC UA Server 61 2.3 Giải pháp bảo mật cho hệ thống 63 2.4 Kết luận 67 CHƯƠNG 3: ỨNG DỤNG BỘ CÔNG CỤ OPC UA CLIENT-SERVER SDK VÀO BÀI TOÁN GIÁM SÁT VÀ ĐIỀU KHIỂN 69 3.1 Bài toán 1: Ứng dụng công cụ OPC UA Client-Server SDK hệ thống quan trắc môi trường 69 3.1.1 Ứng dụng cho hệ thống quan trắc môi trường 70 3.1.2 Kết thực nghiệm 74 3.2 Bài tốn 2: Ứng dụng cơng cụ OPC UA Client-Server SDK cho hệ thống giám sát điều khiển hệ thống điều hòa 76 3.2.1 Modbus 76 3.2.2 Hệ thống giám sát & điều khiển điều hòa nhiệt độ ứng dụng công cụ OPC UA Client-Server SDK kết nối giao thức Modbus 78 3.3 Kết luận 84 ix User case giao tiếp với Client B4.3 User case giao tiếp với Client Mô tả User case thực chức giao tiếp với client Khi client kết nối với server Tác nhân Client Điều kiện kích hoạt User case kích hoạt client kết nối với server Chi tiết Alarm & Event: Cứ lần server cập nhập liệu từ thiết bị lên User case tiến hành so sánh với điều kiện (được người điều khiển server thiết lập giao diện quản lý Alarm & Event) Nếu liệu vượt khoảng điều kiện quy định user case phát cảnh báo tới client Data access: Cứ sau giây user case tiến hành lấy liệu từ thiết bị gửi cho client Historical data access: User case lưu lại liệu thiết bị lần lấy liệu lên thời gian lấy liệu Khi client yêu cầu liệu lịch sử thiết bị User case gửi liệu cho client Điều khiển thiết bị: User case cung cấp cho client phương thức để điều khiển thiết bị tương ứng Ví dụ tắt, bật ống nước một… 127 Biểu đồ trình tự phía Server Giao tiếp với thiết bị Hình 4.2 Biểu đồ trình tự giao tiếp với thiết bị 128 Quản lý cảnh báo kiện Hình 4.3 Biểu đồ trình tự quản lý cảnh báo kiện 129 Giao tiếp với Client: Hình 4.4 Biểu đồ trình tự giao tiếp với Client 130 Biểu đồ lớp Server Hình 4.5 Biểu đồ lớp OPC UA Server 131 Mô tả chi tiết biểu đồ lớp Server B4.4 Chi tiết biểu đồ lớp Tên Kiểu Ống nước Class Bình nước Class UnderlyingSystem Class Quản lý dữliệu Class DataAccessManageBase Class unified so Unified Automation cung cấp Class Quản lý dữliệu lịch sử HistoryManageBase Class unified so Unified Automation cung cấp ControllerEventTypeData Class BaseEventTypeData Điều khiển dữliệu ControllerObject Server OPC UA ServerManage Quản lý Node BasenodeManage Class unified so Unified Automation cung cấp Class Class unified so Unified Automation cung cấp Class Class unified so Unified Automation cung cấp Class Class unified so Unified Automation cung cấp 132 Mô tả Class đại diện cho ống nước giới thực Class đại diện cho bình nước giới thực Class giao tiếp với thiết bị phần cứng Class quản lý liệu thời gian thực thiết bị Class quản lý liệu thời gian thực SDK cung cấp Class quản lý liệu lịch sử thiết bị Class quản lý liệu lịch sử thiết bị SDK cung cấp Định nghĩa kiểu kiện cho đối tượng điều khiển Class Base cho định nghĩa kiểu liệu kiện Đối tượng điều khiển Đối tượng điều khiển SDK cung cấp Server viết theo chuẩn OPC UA Class server viết theo chuẩn OPC UA SDK cung cấp Class quản lý không gian node hệ thống Class sở quản lý node hệ thống SDK cung cấp 4.2 Thiết kế chức Client Biểu đồ User case Hình 4.6 Biểu đồ chức OPC UA Client 133 Đặc tả Use case Tác nhân: Người sử dụng Các Use Case: Usecase: Kết nối Server B4.5 Usecase: Kết nối server Mô tả Người sử dụng kết nối tới OPC UA Server Tác nhân Người sử dụng Điều kiện kích Người sử dụng click vào nút kết nối server hoạt Chi tiết - - Kết nối server: Người sử dụng click vào nút kết nối Client gửi yêu cầu tìm kiếm server, duyệt danh sách điểm cuối tìm với server tại, kết nối tạo session để bắt đầu phiên làm việc Ngắt kết nối: Người sử dụng click vào nút ngắt kết nối Client gửi yêu cầu ngắt kết nối, đóng session để kết thúc phiên làm việc Usecase: Đọc liệu B4.6 Usecase: Đọc liệu Mô tả Người sử dụng đọc liệu từ OPC UA Server Tác nhân Người sử dụng Điều kiện kích Người sử dụng xem liệu nhiệt độ, lượng nước, thông tin đối hoạt tượng Chi tiết Người sử dụng đọc liệu nhiệt độ, lượng nước van, bình chứa Client gửi yêu cầu đọc liệu cho server, hiển thị kết trả giao diện 134 Usecase: Ghi liệu B4.7 Usecase: Ghi liệu Mô tả Người sử dụng ghi liệu cho đối tượng OPC UA Server Tác nhân Người sử dụng Điều kiện kích Người sử dụng thiết lập liệu nhiệt độ, lượng nước hoạt Chi tiết Người dùng thiết lập nhiệt độ, lượng nước cho van bình chứa Client gửi giá trị thiết lập cho server, hiển thị kết giao diện Usecase: Đóng/mở thiết bị B4.8 Usecase: Đóng/mở thiết bị Mơ tả Người sử dụng đóng/mở thiết bị phần cứng Tác nhân Người sử dụng Điều kiện kích Người sử dụng chọn chức đóng/mở thiết bị phần cứng hoạt Chi tiết Người sử dụng lựa chọn chức đóng/mở thiết bị phần cứng.Client gửi phương thức tới server, hiển thị kết trả server qua giao diện Usecase: Theo dõi kiện B4.9 Usecase: Theo dõi kiện Mô tả Tác nhân Người sử dụng theo dõi cảnh báo, kiện, tình trạng hoạt động thiết bị Người sử dụng Điều kiện kích Người sử dụng chọn chức theo dõi, cảnh báo kiện hoạt Chi tiết Người sử dụng lựa chọn chức theo dõi, cảnh báo kiện Client gửi yêu cầu tới server, hiển thị kiện cảnh báo lên giao diện chương trình 135 4.3 Kết nối OPC UA Client OPC UA Server Discovery Server thực thi dịch vụ tìm Server trả lại danh sách Server đăng ký cho Client Nhưng trước Client tìm Server Server phải đăng ký tất dịch vụ mà có với Discovery Server Sau tìm thấy thơng tin Server, Client gửi yêu cầu kết nối với Server Hình 4.7 Biểu đồ trình tự kết nối Client – Server 136 Để thực việc kết nối Client – Server, dịch vụ Discovery tìm kiếm thiết bị đầu cuối (Endpoint) cung cấp dịch vụ cho Client Sau Client kết nối với thiết bị đầu cuối, phiên làm việc (Session) khởi tạo để thực việc giao tiếp Client Server Khi Client hồn thành việc kết nối, thêm nút vào đối tượng thích hợp khơng gian địa Server Hình 4.8 Biểu đồ hoạt động Client – Server 137 Biểu đồ trình tự Client Hình 4.9 Biểu đồ trình tự kết nối với Server 138 Hình 4.10 Biểu đồ trình tự đọc/ghi nhiệt độ (lượng nước) Hình 4.11 Biểu đồ trình tự gọi phương thức 139 Hình 4.12 Biểu đồ trình tự theo dõi kiện Biểu đồ lớp Client Hình 4.13 Biểu đồ thiết kế lớp Client 140 Mô tả lớp: B4.10 Mô tả lớp Tên lớp MainForm Read Write CallMethod Subscription Browse Mô tả Thực việc tìm kiếm server, thực thi kết nối ngắt kết nối Đọc giá trị thuộc tính nhiệt độ, lượng nước Ghi giá trị thuộc tính nhiệt độ, lượng nước, gửi tới cho server Gọi phương thức tắt bật van cung cấp server Giám sát theo dõi kiện cảnh báo hệ thống Gọi danh sách đối tượng không gian địa server V Biên họp Hội đồng đánh giá nghiệm thu cấp Bộ đề tài Khoa học Công nghệ cấp Bộ, ngày 15/06/2012 141 ... phát triển ứng dụng CNTT vào công nghiệp, luận án hướng hai vấn đề sau: (1) Nghiên cứu, xây dựng công cụ phát triển phần mềm hỗ trợ giám sát điều khiển q trình dùng cơng nghiệp Từ công cụ phát triển. .. luận án Nghiên cứu phát triển ứng dụng liên quan đến hệ thống thu thập liệu, giám sát điều khiển phát triển mạnh mẽ nước phát triển OPC với trung tâm nghiên cứu, công ty hàng đầu phần mềm phần cứng,... khác OPC UA cung cấp yêu cầu để xây dựng hệ thống giám sát điều khiển tự động hóa cơng nghiệp Từ đặc tả (các yêu cầu ban đầu), tác giả nghiên cứu, phát triển vào xây dựng Bộ công cụ OPC UA Client-Server