Phát triển hệ thống giám sát và điều khiển dùng OPC UA kết nối với thiết bị ngoại vi BACnet (bacnet buiding automation control netwwork)

67 61 0
Phát triển hệ thống giám sát và điều khiển dùng OPC UA kết nối với thiết bị ngoại vi BACnet (bacnet buiding automation control netwwork)

Đ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

Tổng quan về OPC, lịch sử và bảo mật trong OPC UA, giao thức BACnet. Kiến trúc của hệ thống giám sát và điều khiển thiết bị theo đặc tả OPC UA. Mô hình hệ thống, xây dựng server, ứng dụng client, thực nghiệm chương trình.

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN TRÍ DŨNG NGUYỄN TRÍ DŨNG CƠNG NGHỆ THÔNG TIN PHÁT TRIỂN HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN DÙNG OPC UA KẾT NỐI VỚI THIẾT BỊ NGOẠI VI BACNET (BACNET BUILDING AUTOMATION CONTROL NETWORK) LUẬN VĂN THẠC SĨ KỸ THUẬT CƠNG NGHỆ THƠNG TIN KHỐ 2012B Hà Nội – Năm 2013 LỜI CẢM ƠN Em xin chân thành cám ơn Thầy cô giáo Viện CNTT & TT - Trường Đại học Bách khoa Hà Nội tạo điều kiện thuận lợi cho em trình học tập, nghiên cứu thực luận văn Đặc biệt, em gửi lời biết ơn sâu sắc đến Thầy giáo PGS.TS Huỳnh Quyết Thắng Thầy bảo, tạo điều kiện, giúp đỡ em nhiều trình nghiên cứu hồn thiện luận văn Em chân thành cảm ơn chị ThS Nguyễn Thị Thanh Tú cho em ý kiến đóng góp giá trị, động viên em thời gian thực đề tài Luận văn chắn có thiếu sót, em xin chân thành cám ơn nhận xét Thầy cơ, bạn để luận văn hồn thiện LỜI CAM ĐOAN Tôi xin cam đoan, hướng dẫn PGS.TS Huỳnh Quyết Thắng, luận văn với đề tài: Phát triển hệ thống giám sát điều khiển dùng OPC UA kết nối với thiết bị ngoại vi BACnet (BACnet - Building Automation Control network) hoàn thành với nhận thức tác giả, khơng chép tồn văn cơng trình khác Trong q trình làm luận văn, tơi kế thừa thành tựu nhà khoa học với trân trọng biết ơn Mục lục Cơ sở lý thuyết 1.1 1.2 1.3 13 Tổng quan OPC UA 13 1.1.1 OPC (OLE for Process Control) 13 1.1.2 OPC UA (OPC Unified Architecture) 16 Đặc tả lịch sử bảo mật OPC UA 18 1.2.1 Đặc tả bảo mật 18 1.2.2 Đặc tả lịch sử 21 Giao thức BACnet 24 1.3.1 Kiến trúc giao thức BACnet 24 1.3.2 Các kiểu mạng BACnet 25 1.3.3 Đối tượng BACnet dịch vụ 26 Kiến trúc hệ thống giám sát điều khiển thiết bị theo đặc tả OPC UA 30 2.1 Thiết kế hệ thống 30 2.1.1 Kiến trúc ứng dụng OPC UA 30 2.1.2 Các thành phần Server 32 2.1.3 Các thành phần Client 34 Giải pháp bảo mật 34 2.2.1 Secure channel management 35 2.2.2 Session management 37 2.2.3 Security strategy management module 37 2.2.4 User authorization, user authentication application layer 37 Lịch sử liệu kiện 37 2.3.1 Lịch sử kiện 38 2.3.2 Lịch sử liệu khoảng thời gian 39 2.3.3 Lịch sử liệu thời điểm xác 39 2.2 2.3 2.4 Kết nối với thiết bị ngoại vi BACnet 40 2.4.1 Các thuộc tính tham số 40 2.4.2 Tìm kiếm thiết bị mạng 41 2.4.3 Đọc ghi giá trị 41 Cài đặt thử nghiệm hệ thống 3.1 45 Mơ hình hệ thống 45 3.1.1 Mô tả hệ thống 45 3.1.2 Các mục tiêu hệ thống 46 3.1.3 Kiến trúc ứng dụng 47 Xây dựng Server 48 3.2.1 Giả lập thiết bị 48 3.2.2 Xây dựng tổng thể Server 50 3.2.3 Cài đặt lưu trữ lịch sử 52 3.2.4 Cài đặt giải pháp bảo mật 53 3.3 Ứng dụng Client 55 3.4 Thực nghiệm chương trình 56 3.4.1 Yêu cầu hệ thống 56 3.4.2 Ứng dụng Server 56 3.4.3 Thử nghiệm bảo mật 57 3.4.4 Thử nghiệm lịch sử 58 3.4.5 Gọi phương thức 61 3.2 Danh sách hình vẽ 1.1 Kiến trúc truyền thơng cổ điển 14 1.2 Kiến trúc truyền thông OPC 14 1.3 Tổng quan đặc tả OPC 15 1.4 Nền tảng OPC UA 16 1.5 Kiến trúc phân tầng OPC UA 17 1.6 Kiến trúc hệ thống OPC UA 18 1.7 Môi trường bảo mật OPC UA 19 1.8 Kiến trúc bảo mật OPC 20 1.9 Mơ hình UPC UA Server hỗ trợ việc truy cập lịch sử 22 1.10 Mơ hình biến với liệu lịch sử không gian địa 23 1.11 Kiến trúc phân tầng BACnet 25 1.12 Định dạng Object_Identifier 27 1.13 Định dạng gói tin BACnet/IP 29 2.1 Kiến trúc tổng quát phần mềm OPC UA 31 2.2 Cấu trúc stack 31 2.3 Các thành phần Prosys Java SDK 32 2.4 Kiến trúc OPC UA Server 33 2.5 Kiến trúc OPC UA Client 35 2.6 Mơ hình bảo mật cho ứng dụng 36 3.1 Kiến trúc tổng thể hệ thống 47 3.2 Kiến trúc ứng dụng 48 3.3 Kiến trúc OPC UA Server Application 48 3.4 Biểu đồ lớp ObjectSimulator 50 3.5 Biểu đồ lớp Server 50 3.6 Biểu đồ lớp cho việc lưu trữ lịch sử 52 3.7 Biểu đồ lớp xây dựng bảo mật Session cho ứng dụng 54 3.8 Giao diện ứng dụng Server 56 3.9 Xác nhận tham số khởi động Server 57 3.10 Lỗi đăng nhập chế độ Anonymous 57 3.11 Đăng nhập Username/Password 58 3.12 Lựa chọn chế Encrypt Server cung cấp 58 3.13 Xem lịch sử kiện 59 3.14 Xem lịch sử liệu dạng đồ thị 59 3.15 Xem lịch sử liệu dạng bảng 60 3.16 Ngắt kết nối từ Client đến Server 60 3.17 Truy cập lịch sử sau kết nối lại 61 3.18 Gọi phương thức 61 Danh sách bảng Danh mục từ viết tắt luận văn 1.1 Các đặc tả OPC UA 18 1.2 Các đoạn mã thể yêu cầu thực thi tốt 24 1.3 Các kiểu đối tượng chuẩn BACnet 27 1.4 Các thuộc tính đối tượng Binary Output 28 1.5 Các thuộc tính đối tượng Analog Output 28 2.1 Các kiểu lịch sử 38 2.2 Các tham số mơ hình lịch sử liệu kiện 38 2.3 Các tham số lịch sử kiện 38 2.4 Các tham số lịch sử liệu khoảng thời gian 39 2.5 Tham số lịch sử liệu thời điểm xác 40 2.6 Các tham số để truy cập thiết bị BACnet 40 2.7 Các phương thức lớp CPort 41 2.8 Các phương thức lớp CBACnetServiceReadProperty 43 2.9 Các phương thức lớp CBACnetServiceWriteProperty 44 3.1 Các thuộc tính phương thức lớp ObjectSimulator 49 3.2 Các thành phần Server 51 3.3 Các thuộc tính phương thức lớp EventHistory 53 3.4 Các thuộc tính tham số lớp ValueHistory 53 Từ viết tắt Từ đầy đủ ANSI American National Standards Institute API Application Programming Interface BACnet Building Automation Control network COM Component Object Model DCOM Distributed Component Object Model DCS Distributed Control System ERP Enterprise Resource Planning GUI Graphics User Interface HDN History Data Node HEN History Event Node ISO International Organization for Standardization LAN Local Area Network MES Manufacturing Execution System OPC Object Linking and Embedding (OLE) for Process Control OPC A & E OPC Alarms and Events OPC DA OPC Data Access OPC HDA OPC Historical Data Access OPC UA OPC Unified Architecture PLC Programmable Logic Controller PTP Point - to - Point Bảng 1: Danh mục từ viết tắt luận văn MỞ ĐẦU Cơ sở khoa học tính thực tiễn luận văn Thực trạng lĩnh vực nghiên cứu Trong năm gần đây, nhu cầu tiết kiệm lượng ngày trở nên cấp thiết không giới mà Việt Nam Các thiết bị tiết kiệm lượng, hệ thống nhà thông minh phát triển Nhu cầu kết hợp công nghệ thông tin vào cơng nghiệp cần thiết cho q trình kiểm sốt tự động hóa hệ thống thiết bị Chính vậy, chuẩn OPC đời vào đầu năm 1990 - chuẩn công nghiệp ứng dụng cho hệ thống giám sát điều khiển tự động hóa Sau nhiều năm phát triển, hồn thiện, phiên OPC Unified Architecture (OPC UA) có tính cấu trúc linh động cao, nhiều nhà cung cấp hệ thống tự động hóa sử dụng Hiện nay, tổ chức OPC Foundation có 450 thành viên, 2500 nhà cung cấp với 15000 mẫu sản phẩm hoạt động thị trường có sử dụng đặc tả OPC Tại Việt Nam, năm gần có nhiều nhà máy xây dựng đưa vào vận hành hệ thống tự động hóa với trang thiết bị hệ điều hành thương hiệu tiếng như: Siemens AG, Rockwell Automation, ABB Inc, Advosol Inc, giao tiếp với theo chuẩn OPC Ví dụ nhà máy giấy, nhà máy điện, Các công trình liên quan Cùng với phát triển đặc tả OPC, số lượng chất lượng nghiên cứu lĩnh vực tăng nhanh Nhóm nghiên cứu Tae-Jin Park Seung-Ho Hong ([11], [12]) đưa mơ hình điều khiển đánh giá hiệu hệ thống chiếu sáng, thiết bị kết nối với mạng BACnet MS/TP Mơ hình giúp tiết kiệm 40% điện năng, đảm bảo lưu lượng truyền liệu ngưỡng cho phép Nhóm tác giả Huỳnh Quyết Thắng Nguyễn Thị Thanh Tú ([15]) xây dựng mơ hình điều khiển hệ thống điều hịa nhiệt độ Mơ hình điều khiển xây dựng theo đặc tả OPC UA kết nối với hệ thống bên theo giao thức Modbus Hệ thống cho phép theo dõi điều khiển nhằm tối ưu hóa hoạt động điều hịa nhiệt độ Trong [7], Jang Chuanying, Li He Liu Zhihong tiến hành phát triển OPC UA Wrapper phục vụ cho việc tương tác Server/Client theo chuẩn OPC (dựa công nghệ COM/DCOM) với Client/Server theo chuẩn OPC UA 3.2.3 Cài đặt lưu trữ lịch sử Hai lớp EventHistory ValueHistory tương ứng dùng để lưu trữ lịch sử kiện lịch sử giá trị Node Biểu đồ lớp việc cài đặt lưu trữ lịch sử thể hình Hình 3.6: Biểu đồ lớp cho việc lưu trữ lịch sử Lớp EventHistory Bảng 3.3 mô tả ý nghĩa phương thức thuộc tính lớp EventHistory Lớp ValueHistory Lớp dùng để lưu trữ lịch sử giá trị biến Bảng 3.4 mơ tả ý nghĩa thuộc tính phương thức lớp ValueHistory 52 Tên phương thức/thuộc tính Mô tả capicity Số lượng tối đa kiện lưu lại events List kiện lưu listener EventListener có kiện xảy thông báo để cập nhật vào events EventHistory(UaObjectNode) Constructor với tham số khởi tạo Node cần lưu lại kiện deleteEvents( ) Xóa kiện với tham số giá trị thời gian cần xóa readEvents(DateTime,DateTime) Đọc lịch sử kiện khoảng thời gian Bảng 3.3: Các thuộc tính phương thức lớp EventHistory Tên phương thức/thuộc tính Mơ tả capicity Số lượng tối đa giá trị lưu lại events List giá trị lưu listener DataChangeListener có thay đổi giá trị thơng báo để cập nhật vào events ValueHistory(UaVariableNode) Constructor với tham số khởi tạo Node cần lưu lại giá trị deleteAtTimes( ) Xóa giá trị, tham số mảng giá trị thời gian cần xóa deleteAtTime(DateTime) Xóa giá trị thời gian xác định deleteRaw(DateTime,DateTime) Xóa giá trị khoảng thời gian readAtTimes(DateTime[]) Đọc lịch sử giá trị, tham số mảng giá trị thời gian getValue(DateTime) Đọc giá trị thời gian xác định deleteRaw(DateTime, DateTime) Xóa giá trị khoảng thời gian Bảng 3.4: Các thuộc tính tham số lớp ValueHistory 3.2.4 Cài đặt giải pháp bảo mật Bảo mật phiên Hai lớp MyUserValidator MyCertificateValidationListener implements từ hai Interfaces Java ProsysOPC SDK Hai lớp quản lý bảo mật 53 tầng phiên (Session) thông qua xác thực người sử dụng (Username/Password) thông qua chứng thực Client (Certificate) Biểu đồ lớp việc cài đặt bảo mật phiên cho hệ thống thẻ hình 3.7 Hình 3.7: Biểu đồ lớp xây dựng bảo mật Session cho ứng dụng Bảo mật truyền thông Việc quản lý bảo mật tầng truyền thông cài đặt trực tiếp Server thông qua phương thức setSecurityModes lớp UaServer (cung cấp SDK) Các SecurityModes gồm: • ALL, • NONE, • BASIC128RSA15_SIGN_ENCRYPT, • BASIC128RSA15_SIGN, • BASIC256_SIGN_ENCRYPT, • BASIC256_SIGN 54 3.3 Ứng dụng Client Ứng dụng ProsysOPC Client cung cấp chức sau: Giao diện đăng nhập, Chọn chế mã hóa thơng điệp, Duyệt khơng gian địa Server, Theo dõi Node không gian địa chỉ, Xem liệu lịch sử, Thực gọi phương thức, Trong đó, chức 1, 2, 4, 5, phụ thuộc vào Server Tôi thực nghiệm chức phần 3.4 ProsysOPC Client ứng dụng dễ sử dụng Một chương trình tốt khác Unified Automation (UA Experts v1.2.2) cung cấp tính 55 3.4 3.4.1 Thực nghiệm chương trình Yêu cầu hệ thống Yêu cầu để chạy ứng dụng: • JDK7, • ProsysOPC Java SDK, • SCADA BACnet Server API, • WinPcap Máy tính tơi sử dụng để chạy thử chương trình: CPU Intel Core i3 2.27 GHz, RAM 2G 1066 MHz, Windows 8.1 x86 3.4.2 Ứng dụng Server Server url: opc.tcp://localhost:26891/OPCUA/SampleServer Hình 3.8 giao diện Server, với vùng chức chính: chọn kết nối đến thiết bị, cấu hình bảo mật, cấu hình lịch sử trạng thái Server Sau lựa chọn tham số để khởi động Server, nhấn button Start, ứng dụng Hình 3.8: Giao diện ứng dụng Server yêu cầu xác nhận lại tham số để Server bắt đầu chạy, minh họa hình 3.9 56 Hình 3.9: Xác nhận tham số khởi động Server 3.4.3 Thử nghiệm bảo mật Khi Server không cho phép đăng nhập với chế độ Anonymous, Client đăng nhập theo chế độ có lỗi thực kết nối (hình 3.10) Thực lựa chọn chế đăng nhập (Username/Password - hình 3.11), lựa chọn Hình 3.10: Lỗi đăng nhập chế độ Anonymous phương thức mã hóa liệu (hình 3.12), sau kết nối đến Server 57 Hình 3.11: Đăng nhập Username/Password Hình 3.12: Lựa chọn chế Encrypt Server cung cấp 3.4.4 Thử nghiệm lịch sử Hình 3.13 thử nghiệm xem lịch sử kiện gắn với node Cảnh báo, node cài đặt Server, gửi tín hiệu cảnh báo nhiệt độ ngưỡng 58 Hình 3.13: Xem lịch sử kiện Hình 3.14 hình 3.15 thử nghiệm xem lịch sử node Nhiệt độ Ứng dụng ProsysOPC Client cho phép xem dạng đồ dạng bảng Hình 3.14: Xem lịch sử liệu dạng đồ thị 59 Hình 3.15: Xem lịch sử liệu dạng bảng Ngắt kết nối từ Client đến Server (hình 3.16), sau kết nối lại, Client truy cập lại lịch sử trước ngắt kết nối (hình 3.17) Hình 3.16: Ngắt kết nối từ Client đến Server 60 Hình 3.17: Truy cập lịch sử sau kết nối lại 3.4.5 Gọi phương thức Server cung cấp phương thức điều chỉnh điều hịa Hình 3.18 thực nghiệm gọi phương thức từ Client Hình 3.18: Gọi phương thức 61 Kết chương Trong chương này, trình bày mục tiêu cần đạt hệ thống, xây dựng ứng dụng OPC UA Server kết nối với thiết bị BACnet Sử dụng ProsysOPC Client, thực nghiệm thành công chức bảo mật, truy cập lịch sử gọi phương thức điều khiển thiết bị Server 62 Kết luận hướng nghiên cứu Những kết đạt Luận văn tập trung vào nghiên cứu, cài đặt đặc tả bảo mật đặc tả truy cập lịch sử kiến trúc OPC UA, xây dựng ứng dụng kết nối với thiết bị BACnet Những kết mà luận văn đạt được: • Nghiên cứu đặc tả OPC, OPC UA Nghiên cứu chi tiết vào đặc tả bảo mật đặc tả truy cập lịch sử OPC UA, • Nghiên cứu kiến trúc ứng dụng OPC UA, thành phần ứng dụng Đưa mơ hình cho việc lưu trữ lịch sử Server, giải pháp cho vấn đề bảo mật tầng phiên tầng truyền thơng ứng dụng OPC UA • Tìm hiểu giao thức BACnet: loại mạng BACnet, đối tượng dịch vụ giao thức BACnet Tìm hiểu SCADA BACnet Server API, cách truy cập đến thiết bị mạng BACnet Xây dựng mạng BACnet giả lập kết nối ứng dụng OPC UA Server đến mạng • Xây dựng thành cơng ứng dụng OPC UA Server kết nối đến mạng BACnet giả lập Ứng dụng Server đảm bảo tính bảo mật cho phép Client truy cập đến liệu lịch sử, đồng thời đáp ứng yêu cầu theo dõi điều khiển thiết bị từ Client Sau trình nghiên cứu, xây dựng mơ hình, xây dựng ứng dụng, tơi nhận thấy tính ưu việt kiến trúc OPC UA Nó thuận tiện để xây dựng hệ thống giám sát điều khiển, dễ dàng tích hợp với chuẩn công nghiệp khác Mặt khác, giao thức BACnet có ưu điểm dễ dàng mở rộng tương thích với nhiều loại giao thức mạng Ứng dụng OPC UA kết nối với thiết bị BACnet đáp ứng tốt yêu cầu hệ thống giám sát điều khiển: hiệu năng, chi phí, tính dễ mở rộng, 63 Hướng nghiên cứu Các hệ thống OPC UA ngày quan tâm Việt Nam tính ưu việt nó, tơi tin nghiên cứu OPC UA công việc cần thiết thực tế Do lý chủ quan khách quan, đề tài cịn vấn đề chưa hồn thiện Đề tài cần phát triển thêm: • Tự xây dựng ứng dụng OPC UA Client, • Nghiên cứu cài đặt giải pháp bảo mật mức chi tiết hơn: bảo mật theo tác vụ người sử dụng, bảo mật theo node, • Nghiên cứu, thực nghiệm kết nối ứng dụng với chuẩn cơng nghiệp khác nhau, • Xây dựng ứng dụng Client cho thiết bị di dộng, • Áp dụng vào hệ thống công nghiệp thực tế 64 Tài liệu tham khảo [1] OPC Unified Architecture Springer, 2009 [2] OPC Unified Architecture Specification, chapter OPC Foudation, 2009 [3] OPC Unified Architecture Specification, chapter 11 OPC Foudation, 2009 [4] OPC Unified Architecture Specification, chapter OPC Foudation, 2009 [5] Annerose Braune, Stefan Hennig, and Sebastian Hegler Evaluation of opc ua secure communication in web browser applications IEEE International Conference on Industrial Informatics, 2008 [6] Steven T Bushby bacnetT M - a standard communication infrastructure for intelligent buildings Automation in Construction, 1997 [7] Yang Chuanying, Li He, and Liu Zhihong Implementation of migrations from class opc to opc ua for data acquisition system International Conference on System Science and Engineering, 2012 [8] Andreas Fernbach and Wolfgang Kastner Certificate management in opc ua applications: An evaluation of different trust models IEEE 17th Conference on Emerging Technologies & Factory Automation, 2012 [9] Tom Hannelius, Mikko Salmenperăa, and Seppo Kuikka Roadmap to adopting opc ua IEEE International Conference on Industrial Informatics, 2008 [10] Nguyễn Đình Thịnh Xây dựng, thử nghiệm, đánh giá hệ thống giám sát điều khiển theo chuẩn opc opc ua - hệ thống phía server, 2012 [11] Tae-Jin Park and Seung-Ho Hong Development of an experimental model of bacnet-based lighting control system IEEE International Conference on Industrial Informatics, 2006 65 [12] Tae-Jin Park and Seung-Ho Hong Experimental case study of a bacnet-based lighting control system IEEE Transactions on Automation Science and Engineering, 2009 [13] Huang Renjie, Liu Feng, and Pan Dongbo Research on opc ua security IEEE 5th Conference on Industrial Electronics and Application, 2010 [14] Mai Son and Myeong-Jae Yi A sudy on opc specifications: Perspective and challenges International Forum on Strategic Technology, 2010 [15] Huynh Quyet Thang and Nguyen Thi Thanh Tu Design and development of the air conditioning system by using opc ua specification and modbus protocol IEEE 8th Conference on Industrial Electronics and Application, 2013 [16] Li Zeng and Hiroyuki Nakagawa Opc (ole for process control) specifications and its developments 41st SICE Annual Conference, 2002 66 ... Thắng, luận văn với đề tài: Phát triển hệ thống giám sát điều khiển dùng OPC UA kết nối với thiết bị ngoại vi BACnet (BACnet - Building Automation Control network) hoàn thành với nhận thức tác... kết chương 29 Chương Kiến trúc hệ thống giám sát điều khiển thiết bị theo đặc tả OPC UA Ở chương này, trình bày kiến trúc hệ thống giám sát điều khiển thiết bị với thành phần: OPC UA Server OPC. .. nghiệp cho phép máy tính kết nối với hệ thống điều khiển phân tán OPC tập hợp nhiều đặc tả dựa công nghệ COM/DCOM Microsoft Chuẩn OPC phù hợp cho vi? ??c kết nối với thiết bị hệ thống tự động, mà cung

Ngày đăng: 01/02/2021, 19:29

Mục lục

    TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

Tài liệu liên quan