5) Các nội dung của Báo cáo
2.1 THIẾT KẾ HỆ THỐNG CẤP GIÁM SÁT
2.1.1.1 Sơđồ khối hệ thống IAS
Hệ thống IAS mà đề tài thiết kế chế tạo gồm những thành phần sau: Cấp giám sát gồm:
• Hai máy chủ chứa Cơ sở dữ liệu, trong đó một máy chính và một máy phụ được đặt tại hai vị trí khác nhau trên tàu, đóng vai trò là DATA Client (Client1) trong mạng thông tin.
• Hai trạm thao tác (Operating Station) đặt tại buồng chỉ huy (B_OS) và buồng điều khiển máy chính (ME_OS), đóng vai trò là DATA Client (Client2) trong mạng thông tin.
• Ba trạm điều khiển thuộc ba hệ thống MEC, EPM và TMC; đóng vai trò là các DATA Server trong mạng thông tin.
• Mạng LAN có dự phòng với hai đường trục cáp chạy độc lập và xa nhau (ví dụ chạy hai bên mạn tàu); cùng kết nối vào tất cả các máy chủ và máy trạm (thao tác, điều khiển) đã nêu trên.
Cấp điều khiển gồm:
• HT1: Hệđiều khiển máy chính MEC • HT2: Hệ quản lý nguồn điện EPM
• HT3: Hệđo mức két và điều khiển TMC
2.1.1.2 Chức năng của các thành phần thuộc cấp Giám sát
ü Chức năng, nhiệm vụ của các DATA Client1 (Database Server)
- Yêu cầu các DATA Server cung cấp dữ liệu về giá trị các đại lượng đo, trạng thái các thiết bị, tình trạng hệ thống... của cấp điều khiển
- Kết nối với CSDL (Database Server) để lưu dữ liệu do các DATA Server gửi lên
Hình 2. 1: Sơđồ khối hệ thống IAS
- Cung cấp dữ liệu lưu trữ từ CSDL cho DATA Client2 để chạy các ứng dụng trên trạm thao tác.
ü Chức năng, nhiệm vụ của các DATA Client2 (trạm thao tác)
Hệ điều khiển máy chính MEC Hệ quản lý nguồn điện tàu thuỷ EPM Hệ đo mức két và điều khiển TMC
Data Server Data Server Data Server DATA Client1 (Database Server) DATA Client2 DATA Client2 DATA Client1 (Database Server dự phòng) Trạm thao tác buồng chỉ huy B_OS Trạm thao tác buồng máy ME_OS Mạng LAN có dự phòng
- Kết nối với các DATA Server để nhận dữ liệu online về hệ thống hiện trường tương ứng (HT1, HT2, HT3) phục vụ cho giám sát
- Kết nối với Database Server để lấy dữ liệu offline (để xem, phân tích thống kê về dữ liệu nào đó của hiện trường)
- Hiển thị màn hình cho phép giám sát và điều khiển các HT1, HT2, HT3; các lệnh điều khiển từ các trạm thao tác được gửi xuống các DATA Server tương ứng.
- Thống kê, báo cáo các dữ liệu cần giám sát trên cơ sở lấy dữ liệu từ Database Server
ü Chức năng, nhiệm vụ của các DATA Server (thuộc cấp điều khiển)
- Cung cấp dữ liệu cho DATA Client1 để lưu trữ trên Database Server - Cung cấp dữ liệu online cho DATA Client2 để theo dõi và giám sát - Nhận dữ liệu (lệnh) từ DATA Client2 đểđiều khiển
- Dữ liệu do các DATA Server chuyển lên cấp Giám sát dựa trên nhu cầu lưu trữ, giám sát của các hệ thống HT1, HT2, HT3
2.1.2 Lựa chọn giải pháp công nghệ phù hợp với cấp Giám sát
Có thể đưa ra giải pháp lựa chọn công nghệ cho cấp giám sát trong hệ thống điều khiển tích hợp IAS trên tàu thuỷ như sau:
§ Hệ quản trị cơ sở dữ liệu là MS SQL Server và cơ chế dự phòng sử dụng chức năng Database Mirroring của hệ quản trị CSDL
§ Mô hình tương tác dữ liệu: Mô hình Client/Server § Chuẩn truyền thông trên hệ thống IAS: Chuẩn OPC § Ngôn ngữ sử dụng lập trình: VB.NET
Chuẩn OPC xuất phát từ thực tế là có rất nhiều hãng sản xuất phần cứng( PLC có Siemens, AB, ABB..., các thiết bị đo như Micromotion...)
thông thường để kết nối hiển thị lưu các dữ liệu của các nhà sản xuất này yêu cầu ta phải biết được các protocol giao tiếp với các thiết bị đó hay mua các phần mềm giám sát, lưu số liệu của các thiết bị đó. Giả sử nếu một ứng dụng muốn dùng sản phẩm của nhiều hãng như trên nếu vậy chúng ta phải mua rất nhiều phần mềm của họ, một mặt nữa là nếu như vậy không tạo ra được sự tập trung xử lý, một hệ thống lúc đó sẽ có rất nhiều phần mềm, ngoài ra các phần mềm giám sát thu số liệu của các hãng nó không phù hợp với yêu cầu của ứng dụng thực tế như định dạng lưu cơ sở dữ liệu, hoặc các phần mềm đó chạy chậm... Chính vì lý do đó các hãng sản xuất thiết bị đưa ra chuẩn OPC (dựa trên chuẩn DCOM) của MicroSoft cho các ứng dụng thương mại mà tạo ra. OPC định nghĩa theo một chuẩn vì vậy có thể tạo ra các OPC client theo khuông dạng chuẩn và các phần mềm SCADA như WinCC, iFix có thể đọc được do vậy sẽ tích hợp các thiết bị trên cùng 1 hệ SCADA được tốt hơn. Hiểu đơn giản OPC như một driver mà đầu ra của nó theo chuẩn và nó cho phép đọc được từ các máy tính khác hay trên internet( SCADA Web).
Thực chất OPC được thiết kế trên nền công nghệ DCOM của MicroSoft, do vậy với OPC chúng ta có thể sử dụng bất kì một ngôn ngữ nào như Visual C++, Visual Basic, Delphi., nền tảng công nghệ ngôn ngữ Dot Net.. , hoặc các phần mềm SCADA chuyên dụng để kết nối dễ dàng với các PLC, thiết bị trường, các thiết bị điều khiển phân tán....Trong đó ngoài các phần mềm SCADA chuyên dụng thì ngôn ngữ Dot Net được sử dụng rộng rãi hơn cả.
Cốt lõi của OPC là một phần mềm phục vụ OPC-Server, trong đó có các OPC-Items được tổ chức thành nhóm, thực chất nó là các thành phần dữ liệu của 1 đối tượng cụ thể như PLC hay các RTU... OPC-Items là các tham sốđiều khiển, dữ liệu quá trình, trạng thái thiết bị...
Trong hệ SCADA, cơ sở dữ liệu là thành phần quan trọng và đó cũng là đối tượng để mỗi version mới sẽ có cải tiến mới. Tuy nhiên, mỗi hãng có ý
tưởng riêng về cấu trúc hệ thống, trong đó có cơ sở dữ liệu. Trong các hệ thống FA (Factory Automation system) thường có 3 lớp mạng (khác với mô hình 7 lớp của mạng) là mạng Field device, mạng điều khiển và mạng quản trị. Các cơ sở dữ liệu thường nằm giữa 2 lớp mạng điều khiển và quản trị. Theo khảo sát chung trên thế giới có rất nhiều hệ SCADA dùng cơ sở dữ liệu SQL Server.
OPC có nhiều loại như OPC DA,OPC HDA...OPC DA (data access) làm nhiệm vụ kết nối tới các thiết bị điều khiển theo chuẩn mạng nào đó, giao thức cụ thể nào đó, sau đó trao đổi dữ liệu với thiết bị. Dữ liệu này được lưu vào cơ sở dữ liệu như thế nào lại thuộc module khác mà hay được gọi là data base connectivity. Sau khi OPC server lấy được dữ liệu từ thiết bị, các client sẽ trao đổi dữ liệu với OPC server theo cơ chế chuẩn Client/Server của Windows. Mỗi lệnh sẽ được truyền từ Client tới OPC server. Tại OPC server các dòng dữ liệu sẽ "xếp hàng" để chuyển tới thiết bị. Có hai cơ chế trao đổi dữ liệu giữa OPC server và thiết bị là synch và asynchr.
Cơ sở dữ liệu Microsoft SQL Server (MS SQL) được xem là lựa chọn phù hợp cho mô hình IAS vì những lý do sau:
§ Thiết kế hệ thống tích hợp trên tàu thủy đòi hỏi độ an toàn và bảo mật khá cao.
§ Đảm bảo đồng bộ và chính xác theo thời gian trong toàn hệ IAS: Vì CSDL được sao lưu dự phòng và nằm trên 2 máy chủ khác nhau theo cơ chế Database Mirroring. Dữ liệu lưu trữ trên CSDL giữa 2 máy chủ là đồng nhất, điều này đảm bảo tính đồng bộ và chính xác theo thời gian trong toàn hệ IAS.
§ Đáp ứng yêu cầu dự phòng đối với máy chủ và cơ sở dữ liệu: CSDL có sự sao lưu 1-1 giữa 2 Database nằm trên 2 máy chủ khác nhau. Như vậy mỗi khi Máy chủ chính gặp sự cố thì hệ thống sẽ tự động chuyển
hướng làm việc với máy chủ phụ và CSDL trên máy chủ phụ, điều này đảm bảo tính dự phòng với máy chủ và CSDL. Hệ thống vẫn hoạt động bình thường khi một trong hai máy chủ mất khả năng phục vụ.
§ Đáp ứng được mức độ lưu trữ lớn và tần suất đọc ghi cao.
2.1.3 Các vấn đề kỹ thuật cần giải quyết tại cấp Giám sát
Đó là các vấn đề:
• Xây dựng giải pháp dự phòng Database • Xây dựng mạng LAN có dự phòng
2.1.3.1 Xây dựng giải pháp dự phòng Database của hệ thống IAS
2.1.3.1.1 Sự cần thiết về dự phòng Database của hệ thống IAS
Việc sao lưu dự phòng nhằm đảm bảo sự toàn vẹn của dữ liệu và tính sẵn sàng của hệ thống trước những sự cố về lỗi phần cứng máy tính, lỗi thiết bị lưu trữ, lỗi mạng (cáp, cổng mạng...), ảnh hưởng các phần mềm phá hoại (vius, tấn công mạng online,…), cũng như giảm thiểu rủi ro trước các sự cố lớn như mất nguồn điện, hỏa hoạn, ngập nước… Sao lưu dữ liệu cũng là công cụ hữu dụng nhất và tiết kiệm chi phí cho việc phục hồi dữ liệu sau sự cố. Công việc phục hồi dữ liệu thường được đánh giá là khó khăn, tốn thời gian để xử lý, và hoàn toàn không đủ căn cứ đểđảm bảo chắc chắn người quản trị có thể phục hồi hiện trạng của dữ liệu sau khi có sự cố xảy ra.
Nhu cầu thực tế trong hệ thống IAS, về mặt CSDL cần có sự sao lưu 1 - 1 giữa 2 Database nằm trên 2 máy Database Server. Khi Database Server chính gặp sự cố không còn khả năng phục vụ, hệ thống sẽ được định hướng làm việc về mặt CSDL với máy Database Server dự phòng. Khả năng dự phòng về CSDL được thực hiện trên cơ sở chức năng Database Mirroring của hệ quản trị CSDL kết hợp với kỹ thuật lập trình cho phép tự động chuyển
hướng làm việc với CSDL dự phòng khi mà CSDL chính không có khả năng phục vụ.
2.1.3.1.2 Các giải pháp dự phòng Database
Nghiên cứu các giải pháp dự phòng Database trong nước và trên thế giới, chúng tôi thấy có nhiều giải pháp về dự phòng, nhưng để áp dụng với hệ thống IAS thì có những giải pháp sau:
- Dùng chức năng Replication của hệ quản trị CSDL MS SQL (Do hệ quản trị CSDL được chọn khi xây dựng hệ thống IAS là MS SQL), giải pháp này kết hợp với chức năng Backup / Restore của hệ quản trị CSDL MS SQL nhằm tăng tính dự phòng Database của hệ thống.
- Dùng chức năng Database Mirroring của hệ quản trị CSDL MS SQL (Do hệ quản trị CSDL được chọn khi xây dựng hệ thống IAS là MS SQL), giải pháp này cho phép dự phòng nóng Database của hệ thống
- Dùng phần cứng hỗ trợ để xây dựng kho dữ liệu chung (SANBOX + RAID)
- Dùng phần mềm CSBS-AA kết hợp với hệ thống Dedicated Link - Dùng phần mềm Double-Take
2.1.3.1.3 Ưu nhược điểm của từng giải pháp
§ Dùng chức năng Replication của hệ quản trị CSDL MS SQL a. Ưu điểm:
• Không sử dụng thêm phần mềm khác • Thi công dễ, Giá thành rẻ
b. Nhược điểm:
• Ánh xạ dữ liệu theo 1 chiều
• Phụ thuộc vào hạ tầng truyền thông mạng LAN
§ Dùng chức năng Database Mirroring của hệ quản trị CSDL MS SQL a. Ưu điểm:
• Không sử dụng thêm phần mềm khác • Thi công dễ, Giá thành rẻ
• Cơ chế ánh xạ dữ liệu hai chiều
• Thời gian đồng nhất dữ liệu nhanh (tối đa 6 giây với điều kiện truyền thông tốt)
b. Nhược điểm:
• Yêu cầu cấu hình phần cứng và phiên bản phần mềm cao (Chạy tốt với Windows Server 2003 và MS SQL 2005 Service Pack I trở lên)
• Phụ thuộc vào hạ tầng truyền thông mạng LAN
• Không sử dụng phần cứng chuyên biệt nên không bảo vệ được dữ liệu khi xảy ra cháy nổ trên hai máy chạy Mirroring (Khắc phục bằng cách Backup định kì bằng tay và lưu trữ File Backup ở nơi khác)
§ Dùng phần cứng hỗ trợ để xây dựng kho dữ liệu chung (SANBOX + RAID)
a. Ưu điểm:
• Giảm tải cho hệ thống chính do dùng thêm nhiều phần cứng • Ánh xạ dữ liệu theo thời gian thực theo 2 chiều
b. Nhược điểm:
• Giá thành cao (SANBOX $3213.53, RAID $8085, phụ kiện $600) • Khó thi công, quản lý và điều hành
§ Dùng phần mềm CSBS-AA kết hợp với hệ thống Dedicated Link a. Ưu điểm:
• Ánh xạ dữ liệu theo thời gian thực theo 2 chiều
b. Nhược điểm:
• Sử dụng thêm phần cứng phụ
• Giá thành cao (phần mềm CSBS-AA $4284, phụ kiện phần cứng $600)
• Khó thi công, quản lý và điều hành § Dùng phần mềm Double-Take
a. Ưu điểm:
• Không dùng phần cứng phụ
b. Nhược điểm:
• Giá thành cao (phần mềm Double-Take $2495 x 2 máy) • Không tự động phục hồi hệ thống sau sự cố
2.1.3.1.4 Lựa chọn giải pháp
Sau khi phân tích ưu nhược điểm của từng giải pháp và tính tới điều kiện cho phép của đề tài, chúng tôi quyết định sử dụng giải pháp Database Mirroring của MS SQL 2005. Khi đưa IAS vào ứng dụng sẽ căn cứ điều kiện thực tế để lựa chon giải pháp khác phù hợp hơn (Sử dụng phần cứng chuyên biệt)
Database Mirroring là một công nghệ mới do Microsoft phát triền cho MS SQL Server 2005 với mục đích tăng tính sẵn sàng cho cơ sở dữ liệu. Database Mirroring có thể tự động chuyển phiên giao dịch từ một máy chủ gốc sang một máy chủ khác và nhanh chóng khôi phục lỗi cho hệ thống. Người sử dụng có thể lập trình các ứng dụng phía máy khách để tự động chuyển hướng kết nối thông tin của chúng, và trong trường hợp xảy ra lỗi, hệ thống có thể tự động kết nối với các máy chủ và cơ sở dữ liệu dự phòng. Database Mirror có khả năng khôi phục lỗi nhanh và giảm thiểu mất dữ liệu trong hệ thống. Bên cạnh đó hệ thống này không yêu cầu phần cứng riêng biệt đồng thời rất dễ dàng trong việc thiết lập và quản lý dữ liệu.
Trong hệ thống Database Mirroring, Server gốc liên tục gửi các Transaction Log (Phiên làm việc) cho Server dự phòng. Server gốc có vai trò Principal, và Server nhận Transaction Log đóng vai trò của Mirror.Principal Server và Miror Server phải được phân biệt độc lập trong hệ thống.
Ngoài hai Server nói trên, trong hệ thống Miroring có thể có một tùy chọn máy chủ thứ ba, gọi là Witness (người làm chứng). Các Witness có vai trò tự động kích hoạt failover (Khôi phục lỗi). Khi cơ sở dữ liệu mirroring sử dụng chế độ High availability, nếu Principal đột ngột mất đồng thời máy chủ Mirror nhận được thông báo từ Witness, nó có thể tự động lấy về vai trò của
Principal và khôi phục lại lỗi trong vòng vài giây (Tối đa 6 giây với điều kiện truyền thông tốt). Sau khi cài đặt thành công Mirror với chếđộ làm việc High Avaibility thì sơđồ của hệ thống được hiển thị như hình vẽ:
Cơ chế Mirroring trong chếđộ High Avaibility
Các cơ chế làm của hệ thống Mirroring trong chế độ High Avaibility đáp ứng được việc dự phòng nóng cơ sở dữ liệu của hệ thống.
2.1.3.2 Xây dựng mạng LAN có dự phòng trên tàu thủy
2.1.3.2.1 Sự cần thiết về xây dựng mạng LAN có dự phòng trên tàu thuỷ
Việc xây dựng mạng LAN trên tàu thuỷ cần có tính dự phòng cao nhất để đảm bảo hoạt động bình thường của IAS, giảm thiểu ảnh hưởng của các sự cố khách quan và chủ quan tác động đến tàu.
2.1.3.2.2 Các phương án dự phòng hệ thống mạng LAN
- Dự phòng dùng phần cứng: router
+ Ưu điểm: dễ thi công, tính dự phòng ổn định + Nhược điểm: giá thành quá cao
- Dự phòng dùng phần mềm + Dùng Bridge Connection
a) Ưu điểm: Dễ thi công, giá thành rẻ, tính dự phòng ổn định b) Nhược điểm: thời gian kết nối lại sau sự cố dài
+ Dùng phần mềm INTEL NETWORK CONNECTION của Intel
a) Ưu điểm: Tính dự phòng ổn định, thời gian sửa lỗi ngắn, giá thành rẻ b) Nhược điểm: Yêu cầu khắt khe về phần cứng và quá trình cài đặt phức tạp
2.1.3.2.3 Lựa chọn phương án dự phòng hệ thống mạng LAN
Sau khi nghiên cứu các phương án và tiến hành thử nghiệm, chúng tôi chọn phương án dự phòng dùng Bridge Connection
Các bước lập cấu hình dự phòng đường truyền mạng dùng 2 Card mạng