Nghiên cứu và xây dựng phần mềm scada

79 58 0
Nghiên cứu và xây dựng phần mềm scada

Đ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

ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA - PHAN DUY ANH NGHIÊN CỨU VÀ XÂY DỰNG PHẦN MỀM SCADA Chuyên ngành: Tự động hóa LUẬN VĂN THẠC SĨ TP HỒ CHÍ MINH, tháng 12 năm 2010 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH Cán hướng dẫn khoa học: Tiến Sĩ Trương Đình Châu Cán chấm nhận xét 1: Tiến Sĩ Nguyễn Đức Thành Cán chấm nhận xét 2: Tiến Sĩ Hoàng Minh Trí Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày 04 tháng 01 năm 2011 Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: Tiến Sĩ Nguyễn Đức Thành Tiến Sĩ Huỳnh Thái Hoàng Tiến Sĩ Hoàng Minh Trí Tiến Sĩ Nguyễn Thiện Thành ……………………………… Xác nhận Chủ tịch Hội đồng đánh giá LV Bộ môn quản lý chuyên ngành sau luận văn sữa chữa (nếu có) Chủ tịch Hội đồng đánh giá LV Bộ môn quản lý chuyên ngành TRƯỜNG ĐẠI HỌC BÁCH KHOA CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM PHÒNG ĐÀO TẠO SĐH Độc lập – Tự – Hạnh phúc Tp HCM, ngày 04 tháng 01 năm 2011 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: PHAN DUY ANH Phái: Nam Ngày, tháng, năm sinh: 20, 04, 1984 Nơi sinh: Quảng Ngãi Chuyên ngành: Tự động hóa MSHV: 01507309 I – TÊN ĐỀ TÀI: NGHIÊN CỨU VÀ XÂY DỰNG PHẦN MỀM SCADA II- NHIỆM VỤ VÀ NỘI DUNG: - Tìm hiểu cấu trúc chung phần mềm SCADA - Tìm hiểu kiến trúc phần mềm hướng dịch vụ (SOA) - Tìm hiểu kỹ thuật lập trình hướng thành phần (COP) - Xây dựng phần mềm SCADA môi trường Visual Studio.Net III- NGÀY GIAO NHIỆM VỤ: IV- NGÀY HOÀN THÀNH NHIỆM VỤ: V- CÁN BỘ HƯỚNG DẪN: Tiến Sĩ Trương Đình Châu CÁN BỘ HƯỚNG DẪN (Họ tên chữ ký) CHỦ NHIỆM BỘ MÔN QUẢN LÝ CHUYÊN NGÀNH KHOA QL CHUYÊN NGÀNH (Họ tên chữ ký) (Họ tên chữ ký) LỜI CẢM ƠN Tác giả xin gửi lời cảm ơn chân thành đến: Các Thầy, Cô giảng dạy Bộ môn Điều khiển Tự động – Khoa Điện Điện tử - Trường Đại học Bách khoa Tp.HCM cho tác giả tư tảng Tự động hóa Điều khiển Thầy giáo, Tiến Sĩ Trương Đình Châu – Người cho tác giả kiến thức SCADA từ nhìn đầu tiên, đến nghiên cứu chuyên sâu xây dựng phần mềm SCADA đại Ba, Mẹ, Vợ em gái động viên, cổ vũ tinh thần để tác giả hồn thành tốt đề tài luận văn TÓM TẮT Phần mềm điều khiển giám sát công nghiệp (SCADA) phù hợp với hệ thống điều khiển phân tán (Distributed Control System) yêu cầu động lực thúc đẩy nhà phát triển hệ thống điều khiển giám sát tính phần mềm SCADA lớn có thị trường khó đáp ứng yêu cầu cao hệ thống điều khiển phân tán Dựa mạnh công nghệ phần mềm mới: kiến trúc hướng dịch vụ (Service Oriented Architecture), lập trình hướng component (Component Oriented Programming), mơi trường phát triển tích hợp tốt tảng NET framework, luận văn đề xuất phần mềm SCADA nhằm thỏa mãn nhu cầu hệ thống điều khiển phân tán Công nghệ OPC (OLE for Process Control) sử dụng làm sở truyền thơng thời gian thực để tăng thêm tính mở cho hệ thống Từ khóa: Service Oriented Architecture, Component Oriented Programming, Distributed Systems, Visual Studio, Real-time Systems, SCADA, System Architecture, SCADA System MỤC LỤC Chương Nội dung Trang Chương Giới thiệu Chương Tổng quan hệ thống SCADA 10 Mơ hình lý thuyết hệ thống SCADA 10 Mơ hình ứng dụng hệ thống SCADA 12 Cấu trúc phần mềm SCADA 16 Cấu trúc phần mềm SCADA WinCC 16 Cấu trúc phần mềm SCADA InTouch 18 Cấu trúc phần mềm SCADA GeniDAQ 21 Các thành phần phần mềm SCADA 23 Giao thức truyền thông công nghiệp OPC 26 Lập trình hướng thành phần (COP) kiến trúc phần 33 Chương Chương mềm hướng dịch vụ (SOA) Định nghĩa tính chất Software Component 33 Lập trình tạo Component 35 Kiến trúc phần mềm hướng dịch vụ (Service Oriented 36 Architechture) Môi trường phát triển phần mềm tích hợp Visual 40 Studio.NET (Visual Studio Environment – VSE) Chương Các thành phần Visual Studio.Net Environment 40 Các tính Visual Studio.Net Environment 43 Xây dựng phần mềm SCADA môi trường Visual 46 Studio So sánh phần mềm Visual Studio.Net phần mềm 46 SCADA Phân tích thiết kế phần mềm SCADA Visual 49 Studio.Net Chương Lập trình phần mềm SCADA Visual Studio.Net 60 Kết luận 73 Danh mục cơng trình cơng bố tác giá 74 Tài liệu tham khảo 75 CHƯƠNG 1: GIỚI THIỆU SCADA định nghĩa quy trình thu thập liệu từ thiết bị vật lý để giám sát, lưu trữ máy tính đưa lệnh từ máy tính để điều khiển thiết bị Hệ thống SCADA bao gồm quy trình chủ yếu dựa hệ thống máy tính (có thể máy tính đơn lẻ mạng máy tính) phần mềm SCADA cài đặt máy tính Theo nhu cầu sản xuất hàng loạt, yêu cầu suất sản xuất ngày cao, chất lượng sản xuất độ an toàn cao, hệ thống sản xuất có quy mơ lớn phức tạp Các thiết bị hệ thống sản xuất lắp đặt khu vực diện rộng trạng thái chúng giám sát điều khiển từ nhiều phòng ban, phận Các hệ thống gọi hệ thống phân tán (Distributed System) Hệ thống lượng điện đề cập [1] ví dụ hệ thống Chúng cần phần mềm SCADA cao cấp với tính đặc trưng: khơng lệ thuộc khoảng cách, vận hành mềm dẻo, nâng cấp dễ dàng chi phí đầu tư hợp lý để điều khiển giám sát tất thiết bị phân tán diện rộng Tuy nhiên, gói phần mềm SCADA phổ thơng thị trường tự động hóa phát triển dần lên từ các phiên cũ dựa phân tích thiết kế theo hướng cấu trúc hướng đối tượng, hạn chế việc hỗ trợ tương tác qua mạng Những điều khó thỏa mãn yêu cầu hệ thống phân tán Với phát triển kỹ thuật lập trình hướng thành phần (Component Oriented Programming), kiến trúc phần mềm hướng dịch vụ (Service Oriented Architecture), với hỗ trợ tốt tảng lập trình NET framework, phần mềm tương lai phân tích thiết kế theo hướng để đạt mục đích: dễ sử dụng, độ bảo mật cao, tính mở, tính tái sử dụng tốt, kiểm sốt độ phức tạp, tương tác qua mạng dễ dàng Phần mềm SCADA đại nên theo xu hướng để đạt mục đích giải pháp tốt cho yêu cầu hệ thống phân tán Đề tài trình bày phần mềm SCADA có kiến trúc hướng dịch vụ (Service Oriented Architecture) lập trình theo hướng thành phần (Component Oriented Programming) nhờ xây dựng mơi trường Visual Studio.NET Microsoft để làm phù hợp với hệ thống điều khiển phân tán Để có phần mềm SCADA này, chương trình bày tổng quan hệ thống SCADA công nghiệp, chương nêu rõ kiến trúc phần mềm SCADA truyền thống, đối tượng trình bày giao thức truyền thơng cơng nghiệp OPC Chương tổng quan kỹ thuật lập trình hướng thành phần (COP) kiến trúc phần mềm hướng dịch vụ (SOA), đồng thời trình bày tính mở tính đa môi trường Visual Studio.NET Chương tác giả xây dựng phần mềm SCADA môi trường Visual Studio.NET Chương kết luận kiến nghị phát triển CHƯƠNG 2: TỔNG QUAN VỀ HỆ THỐNG SCADA 2.1 MƠ HÌNH LÝ THUYẾT CỦA HỆ THỐNG SCADA Hệ thống SCADA định nghĩa chi tiết hệ thống thu thập liệu thời gian thực từ đối tượng để xử lý, biểu diễn, lưu trữ, phân tích có khả điều khiển đối tượng Để phản ứng linh hoạt với đối tượng thiết bị, hệ thống SCADA cần hệ thống thời gian thực (luồng liệu vận hành hệ thống thay đổi liên tục) tạo nên khối lượng lớn thông tin lưu trữ dư thừa sở liệu để phục vụ cho việc phân tích báo cáo khoảng thời gian dài Cấp Quản lý Cấp Điều Cấp Thiết bi khiển cục Cấp Điều khiển Quá trình Cấp Điều khiển Giám sát Hình 2.1 : Cấu trúc phân cấp hệ thống SCADA 10 Hình 5.15: Giao diện thiết kế SCADA Tag_Viewer (dùng để truy vấn báo cáo) 5.3.2 Lập trình tạo Tag Declarator Tag Declarator ứng dụng phần mềm riêng biệt, không nằm môi trường Visual Studio (tuy tạo từ Visual Studio), sử dụng component IODriver để kết nối OPC Server thực việc khai báo hệ thống Groups Tags cho OPC Clients sử dụng sau Hình 5.16 Cửa sổ thiết kế lập trình cho Tag Declarator (VNSCADA – TagBuilder) 65 Để xây dựng Tag Declarator, sau lập trình tạo IODriver, ta cần Add component vào project tạo Tag Declarator theo phân tích thiết kế bên trên, Tag Declarator xây dựng IODriver component Việc thiết kế trang bị cho Tag Declarator tính năng: chọn OPC Server, kết nối OPC Server, Add Group, Add Tag, phát sinh XML cấu hình file, đọc lại file cấu hình tạo trước Hình 5.16 mơ tả giao diện thiết kế Tag Declarator 5.3.2 Nhận xét vận hành thử Với tư tưởng quan điểm thiết kế tác giả, phần mềm SCADA có Designer kế thừa từ UI Designer Visual Studio, Runtime Runtime Visual Studio Các SCADA controls sử dụng để tạo nên tranh nhà máy UI Designer Sau thiết kế cấu hình xong, tranh nhà máy chạy Runtime, lúc SCADA controls yêu cầu liệu từ IO Driver để hiển thị, điều khiển lưu trữ theo yêu cầu thiết kế trước Như so sánh với [23], phần mềm SCADA xây dựng môi trường Visual Studio giải pháp ngắn gọn hiệu nhiều Ở đây, nhờ vào môi trường VSE mà ta không cần phải quy định riêng quy luật tương tác components không cần phải quan tâm nhiều đến vấn đề lưu giữ tọa độ controls tranh nhà máy lúc thiết kế để triển khai trở lại Runtime cho giống lúc thiết kế Đồng thời, với ổn định VSE nhờ phát triển qua nhiều phiên bản, phần mềm SCADA trở nên vững chắc, kế thừa công nghệ phần mềm đại từ VSE 66 Trong hình 5.1, components màu trắng components cần xây dựng cho phù hợp với ứng dụng SCADA, component lại kế thừa trọn vẹn từ VSE hãng thứ ba Bàn khía cạnh truyền thơng phần mềm SCADA mới, phần mềm SCADA kế thừa trọn vẹn từ VSE tính chất “trong suốt” sở truyền thơng component Quy trình vận hành chạy thử áp dụng vào phần dự án “điều khiển giám sát hồ nuôi cá tự động”: Mô tả hệ thống: hệ thống bao gồm tủ điều khiển có PLC S7-200 dùng để điều khiển cánh khuấy, máy lọc rác, máy bơm valves cấp nước hồ ni cá PLC kết nối với máy tính thông qua OPC Server Kepware với bảng I/O List bảng 5.3 Bảng 5.3: I/O list SCADA PLC S7-200 hệ thống hồ nuôi cá tự động 67 Khởi động Tag Declarator, tiến hành kết nối OPC Server Kepware (đã khai báo kết nối PLC S7-200), khai báo group, tag theo bảng 5.3 xuất file cấu hình XML Hình 5.15 thể thao tác Tag Declarator 68 Hình 5.17: Các thao tác kết nối OPC Server, tạo groups, tạo tags Tag Declarator Khởi động Visual Studio, tạo project mới, Add components bao gồm IODriver SCADA controls bao gồm valves, bơm, động HLevel vào project (hình 5.18) Thực thiết kế tranh hệ thống hồ nuôi cá tự động môi trường Visual Studio UI Designer (hình 5.19) Tiến hành gán tag khai báo bước vào đối tượng đồ họa Trang bị thêm tính Alarm Report để giám sát tốt hệ thống 69 Hình 5.18: Bộ SCADA tool dùng để thiết kế tranh SCADA 70 Hình 5.19: Thiết kế tranh hệ thống hồ nuôi cá Visual Studio UI Nhấn Start Debugging để vận hành chạy thử, lúc hệ thống SCADA hồ nuôi cá thiết kế Visual Studio kết nối với OPC Server thơng qua tags cấu hình bước giao tiếp với PLC S7-200 để điều khiển động cơ, bơm valves vật lý bên Hình 5.20 mơ tả hệ thống SCADA Runtime vận hành, thiết bị có màu đỏ trạng thái dừng, thiết bị màu xanh trạng thái chạy Sử dụng chuột để click vào thiết bị để thay đổi trạng thái thiết bị vật lý Sau hoàn tất việc thiết kế debug, ta chọn build -> build project để tạo ứng dụng SCADA Runtime, chạy môi trường NET Nếu cần thiết kế lại thêm (bớt) tính năng, kỹ sư thiết kế mở ứng dụng Visual Studio UI Designer, cập nhật lại dự án biên dịch tạo lại SCADA runtime 71 Hình 5.20: Hệ thống SCADA Runtime lúc chạy thực dùng để điều khiển giám sát trạng thái động cơ, bơm valves Sau xây dựng xong ứng dụng Runtime, ứng dụng đóng gói cài đặt vào nhiều máy tính khác mạng nhà máy để điều khiển giám sát hệ thống nhiều vị trí khác 72 CHƯƠNG 6: KẾT LUẬN Nhờ vào tương tự số tính phần mềm Visual Studio.NET Microsoft với phần mềm SCADA mà ý tưởng xây dựng phần mềm SCADA môi trường Visual Studio.NET nảy sinh Nhờ vào công nghệ tích hợp để xây dựng nên Visual Studio.NET mà phần mềm SCADA xây dựng mơi trường Visual Studio, có đặc điểm đặc trưng, phù hợp với hệ thống điều khiển phân tán: dễ sử dụng, tính mở tính mềm dẻo cao, dễ cập nhật phát triển, khả tái sử dụng cao, kiểm soát độ phức tạp, tương tác dễ dàng qua hệ thống mạng, không lệ thuộc khoảng cách địa lý Bộ phần mềm VNSCADA phát triển Visual Studio dùng để xây dựng ứng dụng điều khiển giám sát SCADA cho số dự án tự động hóa Bộ phần mềm xây dựng cho ứng dụng windows (winform) vận hành tốt nhuần nhuyễn tảng mạng LAN nội Phiên phần mềm SCADA ứng dụng Web (webform) tác giả phát triển để nâng cao khả tương tác từ xa hệ thống SCADA dựa hệ thống truyền thông internet Lúc này, kỹ thuật bảo mật tác giả ý đầu tư nhiều giải pháp 73 DANH MỤC CƠNG TRÌNH CÔNG BỐ CỦA TÁC GIẢ Phan Duy Anh, Truong Dinh Chau, “Component-Oriented Architecture for SCADA System”, The 7nd IEEE International Conference on Industrial Informatics (INDIN 2009) UK Phan Duy Anh, Truong Dinh Chau, “Component-Based Design for SCADA Architecture”, International Journal of Control, Automation, and Systems, vol 8, no 5, pp.1141-1147, Springer, 2010 74 TÀI LIỆU THAM KHẢO [1] Y.Serizawa et al., “Conceptual design for distributed real-time computer network architecture”, IEEE PES transmission and distribution conference, vol 1, pp 26-31, 2002 [2] J Lowy, “Programming NET components”, O'Reilly, 648 p, 2005 [3] B Douglass, “Real-time design patterns robust scalable architecture for real-time systems”, Wesley, pp.125-130, 2002 [4] A Wang, K.Qian, “Component oriented programming”, Wiley, 319 p, 2005 [5] Siemens, “WinCC v6 getting started manual”, 2003 75 [6] Wonderware, “Intouch hmi concepts and capabilities guide”, 2007 [7] Advantech, “GeniDAQ user’s manual”, 2000 [8] E.Gamma, R.Helm, R.Johnson, J.Vlissides, “Design patterns, elements of reusable object-oriented software”, Addison-Wesley, 1995 [9] J.Bishop, “C# 3.0 design patterns”, O'Reilly, 290 p, 2007 [10] Truong Dinh Chau, Nguyen Ngoc Khai, “Web-based data monitoring and supervisory control”, Proceedings of the int conference ISEE, 2007 [11] K.Hamilton, R.Miles, “Learning UML 2.0”, O'Reilly, 286 p, 2006 [12] W.P.Junior, C.E.Pereira, “A supervisory tool for real-time industrial automation systems”, Sixth IEEE International Symposium on ObjectOriented Real-Time Distributed Computing, 2003 76 [13] B.Atlagic, “Application development environment of an integrated SCADA system”, EUROCON 2003 Computer as a Tool The IEEE Region 8, vol 1, pp 322-326, 2003 [14] F.Moscato, N.Mazzocca, V.Vittorini, “Workflow principles applied to multi-solution analysis of dependable distributed systems”, The 12th Euromicro Conference on Parallel, Distributed and Network-Based Processing, 2004 [15] Z.Ling, J.Yu, “The design of SCADA based on industrial ethernet”, The 4th World Congress on Intelligent Control and Automation, 2002 [16] Jing Zhang, Yunsheng Zhang,“Component-oriented modeling and design of hierarchical hybrid control system”, IEEE International Conference on Control and Automation, Guangzhou, CHINA - May 30 to June 1, 2007 [17] John Cheesman, John Daniels, “UML components, a simple process for specifying component-based software”, Addison-Wesley, 2000 [18] Ivica Crnkovi´c, “Component-based software engineering—new challenges in software development”, Journal of Computing and Information Technology - CIT 11, pp 151–161, 2003 77 [19] Lingfeng Wang, Kay Chen Tan, “Modern industrial automation software design”, John Wiley & Sons, inc., 313 p, 2006 [20] Hans-Gerhard Gross, “Component-based software testing with UML”, Springer, 316 p, 2005 [21] J.Hurwitz et al., “Service Oriented Architecture For Dummies”, Wiley, 387 p, 2007 [22] Alan Brown et al., “Using Service Oriented Architecture and Component- Based Development to Build Web Service Applications”, Rational, 16 p, 2002 [23] Phan Duy Anh, Truong Dinh Chau, “Component-based Design for SCADA Architecture”, International Journal of Control, Automation, and Systems (2010) 8(5):1-7 [24] Microsoft MSDN, “How to add and create a Usercontrol in Visual Studio”, 2007 78 [25] Microsoft MSDN, “How to: create an ASP.NET User Control”, 2007 [26] Thuan L Thai, Hoang Lam, “ NET Framework Essentials, 2nd Edition”, Oreilly, 253p, 2002 79 ... thống SCADA 12 Cấu trúc phần mềm SCADA 16 Cấu trúc phần mềm SCADA WinCC 16 Cấu trúc phần mềm SCADA InTouch 18 Cấu trúc phần mềm SCADA GeniDAQ 21 Các thành phần phần mềm SCADA 23 Giao thức truyền... MSHV: 01507309 I – TÊN ĐỀ TÀI: NGHIÊN CỨU VÀ XÂY DỰNG PHẦN MỀM SCADA II- NHIỆM VỤ VÀ NỘI DUNG: - Tìm hiểu cấu trúc chung phần mềm SCADA - Tìm hiểu kiến trúc phần mềm hướng dịch vụ (SOA) - Tìm... MỀM SCADA Sau vào phân tích số phần mềm SCADA thông dụng, bứa tranh tổng quát đối tượng phần mềm SCADA mối tương quan chúng thể hình 3.4 Hình 3.4: mơ hình phần mềm SCADA truyền thống Phần mềm SCADA

Ngày đăng: 16/04/2021, 14:42

Từ khóa liên quan

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

Tài liệu liên quan