Tìm hiểu, nghiên cứu cẩu trúc dự phòng bằng phần mềm, từ đó xây dựng thư viện điều khiển dự phòng hướng đối tượng. Bao gồm các nội cụng cụ thể như sau : Nghiên cứu tổng quát và xây dựng giải pháp các cơ chế và cẩu trúc redundancy trong hệ thống điều khiển. Thiết lập cẩu hình Hot/Standby cho hệ thống điều khiển. Xây dựng giải pháp Redundancy cho cẩp điều khiển. Đồng bộ Datablock trong đồng bộ dữ liệu theo hướng đối tượng. Xây dựng chương trình và kiểm nghiệm thực tế hệ thống.
Trang 1ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA
PHẠM TẤN PHÁT
NGHIÊN CỨU VÀ PHÁT TRIỂN GIẢI THUẬT CHO HỆ THỐNG ĐIỀU KHIỂN DỰ PHÒNG
Research and development for redundancy control systems
Chuyên ngành : Kỹ Thuật Điều Khiển Và Tự Động Hóa
Mã số: 60520216
LUẬN VĂN THẠC SĨ
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BACH KHOA -ĐHQG -HCM
Cán bộ hướng dẫn khóa học: TS Trương Đình Châu
5 PGS.TS Nguyễn Thanh Phương
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
I TÊN ĐỀ TÀI:
Nghiên cứu và phát triển giải thuật cho hệ thống điều khiển dự phòng
II NHIỆM VỤ VÀ NỘI DUNG:
Tìm hiểu, nghiên cứu cẩu trúc dự phòng bằng phần mềm, từ đó xây dựng thư viện điều khiển dự phòng hướng đối tượng Bao gồm các nội cụng cụ thể như sau :
Nghiên cứu tổng quát và xây dựng giải pháp các cơ chế và cẩu trúc redundancy trong hệ thống điều khiển
Thiết lập cẩu hình Hot/Standby cho hệ thống điều khiển
Xây dựng giải pháp Redundancy cho cẩp điều khiển
Đồng bộ Datablock trong đồng bộ dữ liệu theo hướng đối tượng
Xây dựng chương trình và kiểm nghiệm thực tế hệ thống
III NGÀY GIAO NHIỆM VỤ : 26-02-2018
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 07-12-2018
V CÁN BỘ HƯỚNG DẪN : TS Trương Đình Châu
CÁN BỘ HƯỚNG DÂN
CHỦ NHIỆM BỘ MÔN ĐÀO TẠO
TRƯỞNG KHOA
Trang 4i
LỜI CẢM ƠN
Đầu tiên tôi xin gởi đến Thầy TS Trương Đình Châu lời cảm ơn chân thành và sâu sắc nhẩt Nhờ sự hướng dẫn và chỉ bảo tận tình của Thầy trong suốt thời gian qua tôi đã thực hiện đề cương đề tài và tiếp tục hoàn thành luận văn Thạc Sĩ Những lời nhận xét, góp ý và hướng dẫn tận tình của Thầy đã giúp tôi có một định hướng đúng đắn trong suốt quá trình thực hiện đề tài
Đồng thời, tôi xin chân thành cảm ơn các Thầy Cô của Trường Đại học Bách Khoa nói chung và của khoa Điện - Điện Tử nói riêng đã dạy dỗ tôi trong suốt thời gian qua Những lời giảng của Thầy Cô đã trang bị cho tôi thêm những kiến thức, giúp tôi tích lũy thêm những ý tưởng hay và bổ ích
Cuối cùng, chúng em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều kiện, quan tâm, giúp đỡ, động viên chúng em trong suốt quá trình học tập và hoàn thành luận văn tốt nghiệp
Hồ Chí Minh, ngày 21 tháng 12 năm 2018
Thân ái Học viên
PHẠM TẤN PHÁT
Trang 5ii
TÓM TẮT LUẬN VĂN THẠC SĨ
Để đáp ứng nhu cầu điều khiển ngày càng cao về chẩt lượng, ổn định hệ thống
là rẩt quan trọng Hệ thống giám sát, điều khiển và thu thập dữ liệu được sử dụng rộng rãi trong các nhà máy, xí nghiệp trên toàn thế giới Kiểm soát, giám sát và điều khiển được cải tiến, cung cẩp các tính năng cơ bản nâng cao hiệu quả và năng suẩt sản xuẩt
Vì vậy, nghiên cứu xây dựng giải thuật thu thập dữ liệu và điều khiển dự phòng
hệ thống là rẩt cần thiết nhằm đem lại một hệ thống điều khiển hoàn chỉnh, hoạt động
ổn định, giảm thiểu thời gian chờ sửa chữa các thiết bị hư hỏng Do đó trong luận văn tìm hiểu giải quyết các vẩn đề sau:
+ Tìm hiểu khái niệm dự phòng (Redundancy) trong ở cẩp điều khiển Tìm hiểu
cơ chế, cẩu trúc, nguyên lý dự phòng trong cẩp điều khiển
+ Xây dựng cẩu trúc dự phòng Hot/Standby cho cẩp điều khiển
+ Xây dựng cẩu trúc đồng bộ dữ liệu nhằm giảm thời gian lập trình của người thiết kế
+ Xây dựng dãy thuật kết nối WINCC với hệ thống redundancy
Trang 6LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và được sự hướng dẫn khoa học của TS Trương Đình Châu Các nội dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa công bố dưới bẩt kỳ hình thức nào trước đây
Nếu phát hiện có bẩt kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nội dung luận văn của mình Trường Đại học Bách Khoa TP HCM không liên quan đến những vi phạm (nếu có) về tác quyền, bản quyền do tôi gây ra trong quá trình thực hiện
TP Hồ Chí Minh, ngày 21 tháng 12 năm 2018
Tác giả
PHẠM TẤN PHÁT
Trang 7iv
MỤC LỤC
CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 1
1.1 Tổng quan đề tài 1
1.1.1 Tổng quan hệ thống 1
1.1.2 Khái quát các giải pháp dự phòng trong hệ thống điều khiển 2
1.2 Mục tiêu đề tài 4
1.3 Tổng quan phương pháp xây dựng thư viện dự phòng bằng phần mềm 5
CHƯƠNG 2 TỔ CHỨC VÀ XÂY DỰNG THUẬT TOÁN Dự PHÒNG 8
2.1 Các thành phần liên quan 8
2.1.1 Bộ điều khiển S7-1200 8
2.1.2 S7 Communication protocol 8
2.2 Xây dựng giải thuật dự phòng ở cẩp điều khiển 9
2.2.1 Hệ thống phần cứng có cẩu trúc như sau: 9
2.2.2 Cẩu trúc phần mềm 11
2.3 Kiểm tra trạng thái hoạt động của PLC Primary 14
2.4 Đồng bộ dữ liệu giữa Primary và Standby PLC 24
2.4.1 Dãy thuật update dữ liệu 24
2.4.2 Đồng bộ Timer 26
2.4.3 Đồng bộ Counter 28
2.4.4 Đồng bộ dữ liệu 30
2.5 Cấu hình HMI 36
CHƯƠNG 3 ÁP DỤNG THƯ VIỆN REDUNDACY VÀO THIẾT KẾ Dự ÁN 42
3.1 Cấu trúc chương trình của Master và Standby CPU 42
3.2 Mô hình kiểm tra thực tế 42
3.3 Các bước cấu hình đồng bộ dữ liệu trên PLC 42
3.4 Cấu hình HMI 52
Trang 8V
CHƯƠNG 4 PHÂN TÍCH KẾT QUẢ ĐẠT ĐƯỢC TỪ ĐỀ TÀI 57
4.1 Kết quả đạt được 5 7 4.2 Hướng phát triển đề tài 59
TÀI LIỆU THAM KHẢO 61
LÝ LỊCH TRÍCH NGANG 62
Trang 9vi
DANH MỤC CÁC HÌNH VẼ
Hình 1.1 Công đoạn vận chuyển sản phẩm 2
Hình 1.2 Trạm bơm công nghiệp 3
Hình 1.3 Điều khiển các van lưu lượng 4
Hình 2.1 Bộ điều khiển S7-1200 8
Hình 2.2 Cẩu trúc Client - Server khi sử dụng PUT/GET 9
Hình 2.3 Cẩu trúc phần cứng hệ thống redundancy 10
Hình 2.4 Hoạt động của hệ thống khi Primary PLC bình thường 12
Hình 2.5 Hoạt động của hệ thống khi Primary PLC bị lỗi 13
Hình 2.6 Hoạt động của hệ thống khi Primary PLC phục hồi 13
Hình 2.7 Nguyên lý dự phòng bằng phần mềm 14
Hình 2.8 Cẩu trúc hệ thống PLC redundancy 15
Hình 2.9 Giải thuật heartbeat 16
Hình 2.10 CPU Primary PLC bị lỗi hoặc không hoạt động 18
Hình 2.11 Module truyền thông của Primary PLC bị lỗi 19
Hình 2.12 Ethernet cable của Primary PLC bị lỗi 20
Hình 2.13 Giải thuật Heartbeat 21
Hình 2.14 Giải thuật Switch over cho CPU Standby 22
Hình 2.15 Giải thuật Switch over cho CPU Master 23
Hình 2.16 Cẩu trúc trong đồng bộ dữ liệu 24
Hình 2.17 Dãy thuật Update dữ liệu 25
Hình 2.18 Timer-ON Redundancy 26
Hình 2.19 Giải thuật đồng bộ Timer ON 27
Hình 2.20 Datablock Counter 29
Hình 2.21 Hoạt động của hệ thống redundancy 30
Hình 2.22 Vùng dữ liệu đồng bộ Timer cho hệ thống Redundancy 31
Hình 2.23 Khối Funtion đồng bộ Datablock 32
Hình 2.24 Sơ đồ kết nối HMI với hệ thống redundancy 36
Hình 2.25 Dãy thuật kiểm tra kết nối HMI với hệ thống redundancy 37
Hình 2.26 Dãy thuật Switch Over giữa HMI với hệ thống redundancy 38
Hình 3.1 Mô hình kiểm tra hoạt động hệ thống redundancy 42
Hình 3.2 Chọn thiết bị cho hệ thống redundancy 43
Hình 3.3 Cấu hình địa chỉIP cho CPU Master 44 Hình 3.4 Cấu hình địa chỉIP cho CPU Standby 44 Hình 3.5 Cấu hình địa chỉIP cho CPU Device 45 Hình 3.6 Tạo OB riêng cấu hình redundancy cho hệ thống 45
Hình 3.7 Các biến chức năng trong khối Heartbit 46
Trang 10vii
Hình 3.10 Cẩu hình cho khối Update 49
Hình 3.11 Chương trình User_Program 49
Hình 3.12 Gọi Timer từ thư viện 50
Hình 3.13 Ngõ vào khối redundancy 51
Hình 3.14 Đồng bộ timer 51
Hình 3.15 Chọn cẩu hình Scada cho hệ thống 52
Hình 3.16 Chương trình đồng bộ với HMI trên PLC 53
Hình 3.17 Cẩu hình địa chỉ IP cho Máy chủ/HMI 53
Hình 3.18 Tạo connection tới PLC 54
Hình 3.19 Cẩu hình sự kiện Scheduled tasks 55
Hình 3.20 Tag trong chương trình Scada/HMI 56
Hình 3.21 Giao diện chương trình điều khiển tốc độ động cơ 56
Trang 11áp dụng trong các nhà máy, xí nghiệp trên các dây chuyền công nghệ hiện đại, trên các dây chuyền sản xuẩt đa dạng, linh hoạt, đem lại hiệu quả kinh tế cao Nói chung, các
hệ thống SCADA có độ tin cậy cao nhưng yêu cầu về chẩt lượng, hoạt động của hệ thống phải ổn định Do vậy, khi thiết kế cần chú ý đến đặc điểm kỹ thuật Redundancy (Dự phòng) khi hệ thống bị hư hỏng
Thuật ngữ Redundancy chỉ hai thiết bị (PLC, computer, ) được nối mạng với nhau, cả hai có nhiệm vụ điều khiển toàn bộ hoạt động của hệ thống Trong đó một thiết bị sẽ ở chế độ chờ Standby Khi PLC Primary đang hoạt động bị hỏng, PLC Standby này sẽ chuyển từ chế độ Standby sang Active và thay thế cho PLC hỏng tiếp tục hoạt động điều khiển hệ thống Khi đó hoạt động của hệ thống không bị gián đoạn Hầu hết các máy tính, các bộ điều khiển được thiết kế đáng tin cậy nhưng hư hỏng vẫn xảy ra, đặc biệt khi chúng được sử dụng trong môi trường khắc nghiệt Khi
sự cố xảy ra làm gián đoạn hoạt động sản xuất, thời gian chờ sửa chữa lâu dẫn đến chi phí cao, có khi ảnh hưởng đến hoạt động xã hội, thiệt hại lớn về kinh tế, vật chất vì vậy tính năng redundancy cần thiết phải được tích hợp vào hệ thống để loại trừ sự cố thiết
bị hư hỏng
Giải pháp dự phòng trong công nghiệp được thiết kế đối với những hệ thống
có yêu cầu về tính ổn định, độ tin cậy để đảm bảo hệ thống vẫn hoạt động liên tục trong trường hợp bộ điều khiển bị lỗi Giải pháp này gần như đã trở
Trang 122
thành một điều tẩt yếu đối với các hệ thống tự động trong các nhà máy sản xuẩt
1.1.2 Khái quát các giải pháp dự phòng trong hệ thống điều khiển
Tùy theo chẩt lượng và thời gian đáp ứng của hệ thống dự phòng có thể chia hệ thống thành 03 cẩp độ với tính chẩt khác nhau như sau:
Dự phòng lạnh
Định nghĩa: Hệ thống dự phòng mà thời gian đáp ứng được quan tâm tối thiểu
và có thể cần sự can thiệp của người vận hành
Cơ chế: Thiết kế hoặc chế tạo sẵn một mô đun (tạm gọi là phụ tùng thay thế) hay một hệ thống tương tự với hệ thống đang vận hành Nếu có sự cố hoặc cần sửa chữa, bảo trì thì người vận hành kỹ thuật lập tức thay thế cái mới, do đó không tốn nhiều thời gian phải chờ đợi
Hình 1.1 Công đoạn vận chuyển sản phẩm
Ưu/khuyết điểm: Phương án dự phòng này chỉ áp dụng đối với những hệ thống
mà khi có sự cố xảy ra không ảnh hưởng nhiều đến tính nguy hiểm, tính an toàn, sản phẩm không bị hư hỏng khi phải chờ một thời gian để bảo trì và thay thế
Trang 13lý thứ cẩp và có thể được bảo trì mà không mẩt quyền kiểm soát quá trình
Hình 1.2 Trạm bơm công nghiệp
Dự phòng nóng
Định nghĩa: Dự phòng nóng được dùng khi quá trình vận hành không được dừng dưới bất kỳ trường hợp nào Có những ứng dụng có thể không yêu cầu dự phòng nóng nhưng để có tính liên tục cao thì dự phòng nóng là rất cần thiết
Cơ chế: Như đã nêu ở trên, việc bố trí hệ thống dự phòng nóng thì hầu như giống với hệ thống dự phòng ấm Tuy nhiên, hệ thống dự phòng nóng cung
Trang 141.2 Mục tiêu đề tài
Xây dựng cấu trúc dự phòng bằng phần mềm có áp dụng thiết kế ứng dụng hệ thống điều khiển dự phòng vào thực tế họat động sản xuất Đáp ứng được nhu cầu điều khiển dự phòng cho các hệ thống vừa và nhỏ, giải quyết được vấn đề làm chủ công nghệ, có khả năng mở rộng trong tương lai Xây dựng giao diện theo hướng đối tượng
dễ dàng sử dụng
Định hướng giải quyết vấn đề của đề tài như sau:
• Nghiên cứu tổng quát và xây dựng giải pháp các cơ chế và cấu trúc redundancy trong hệ thống điều khiển
Trang 155
• Thiết lập cẩu hình Hot/Standby cho hệ thống điều khiển
• Xây dựng giải pháp Redundancy cho cẩp điều khiển
• Đồng bộ Datablock trong đồng bộ dữ liệu cẩp điều khiển
• Kết nối Scada với hệ thống điều khiển dự phòng
1.3 Tổng quan phương pháp xây dựng thư viện dự phòng bằng phăn mềm
Tổng quan về các phương pháp thiết kế hệ thống: hướng cẩu trúc và
hướng đối tượng
Phương pháp Thiết kế theo hưởng cấu trúc Thiết kế theo hưởng đối tượng
Cách tiếp cận - Phưcmg pháp lập trình hướng - Phương pháp lập trình theo
cấu trúc thiết kế theo hướng hướng đối tượng thiết kế theo
phân chia chương trình thành hướng phản ánh chân thực từng nhiều chương trình con hướng vấn đề trong hệ thống theo các tới thực hiện một công việc xác yêu cầu thực tế Với cách tiếp định (phân rã chương trình theo cận này, một hệ thống được phân các chức năng cần đáp ứng và chia thành các phần nhỏ gọi là
dữ liệu cho các chức năng đó)
các đối tượng Mỗi đối tượng bao gồm đầy đủ cả dữ liệu và chức năng liên quan đến đối tượng đó Các đối tượng trong hệ thống độc lập với nhau và phần mềm được xây dụng bằng cách kết họp các đối tượng đó lại thông qua các mối liên hệ và tương quan giữa chúng
- Cách thực hiện theo hướng từ - Phương pháp này được tiến cao đến thấp Phương pháp này hành từ thấp lên cao, bắt đầu từ tiến hành phân tách các vấn đề những thuộc tính cụ thê của từng
Trang 166
từ lớn thành những vấn đề nhỏ hon cho đến khi giải quyết được vấn
đề
đối tượng, sau đó tiến hành trừu tượng hóa thành các lớp của đối tượng
Nhược điểm
- Không hỗ trợ và không có tính
kế thừa Các phưong trĩnh, giải thuật hướng cấu trúc phụ thuộc chặt chẽ vào cấu trúc dữ liệu và bài toán cụ thể, do đó không thể dùng lại các module nào của phần mềm này cho phần mềm khác với các yêu cầu kỹ thuật khác
- Không phù hợp cho phát triển các phần mềm lớn
- Khó khăn trong việc quản lý mối quan hệ giữa các module và dễ gây
ra lỗi trong phân tích cũng như trong kiếm tra và bảo trĩ hệ thống
- Phưong pháp này khá phức tạp, khó theo dõi và quản lý dữ liệu ở đầu vào
Lĩnh vực áp - Phưong pháp này thường phù - Phưomg pháp này thường được
Trang 177
dụng hợp với các bài toán nhỏ, có áp dụng cho các bài toán lớn,
luồng dữ liệu rõ ràng Người phức tạp, hoặc có nhiều luồn dữ lập trình cần có tư duy phân liệu khác nhau mà phương pháp tích và quản lý được các dữ hướng cấu trúc không quản lý liệu truy cập của hệ thống
được Khi đó phương pháp hướng đối tượng được sử dụng
Trên thực tế đề tài điều khiển dự phòng bằng phần mềm không phải là đề tài mới Trước đó đã có một số đề tài nghiên cứu về giải pháp điều khiền dự phòng bằng phần mềm Tuy nhiên qua khảo sát có thể thầy phần lớn các đề tài đều mới tập trung vào nguyên lý dự phòng và sử dụng phương pháp hướng cẩu trúc trong thực hiện các ứng dụng kiểm chứng dãy thuật dự phòng
Qua phân tích ở trên ta thầy phướng pháp thiết kế theo hướng cẩu trúc rẩt khó
để ứng dụng đề tài vào thực tế vì nó yêu cầu người kỹ sư thiết kế cũng phải nắm vững
về nguyên lý, dãy thuật của hệ thống điều khiển dự phòng Cũng như khó phát triển ứng dụng lớn Từ đó luận văn đi sâu vào việc xây dựng ứng dụng, thiết kế theo hướng đối tượng, với mục đích đơn giản hóa quá trình thiết kế, đưa đề tài nghiên cứu vào thực tiễn quá thiết kế hệ thống một cách dễ dàng
Trang 188
CHƯƠNG 2 TỔ CHỨC VÀ XÂY DỰNG THUẬT TOÁN Dự PHÒNG
2.1 Các thành phăn liên quan 2.1.1
Bộ điều khiển S7-1200
Là một giải pháp mới của SIEMENS cho các nhiệm vụ tự động hóa đơn giản nhưng chính xác cao SIMATIC S7-1200 PLC được thiết kế dạng module nhỏ gọn, linh hoạt, một sự đầu tư an toàn mạnh mẽ phù hợp cho một loạt các ứng dụng PLC S7-1200 có một giao diện truyền thông đáp ứng tiêu chuẩn cao nhẩt của truyền thông công nghiệp và đầy đủ các tính năng công nghệ mạnh mẽ được tích hợp sẵn làm cho
nó trở thành một giải pháp tự động hóa hoàn chỉnh và toàn diện
ứng dụng: Sử dụng trong công nghiệp và dân dụng như hệ thống băng tải, hệ thống đèn chiếu sáng, điều khiển bơm cao áp, máy đóng gói, máy in, máy dệt, máy trộn,
Hình 2.1 Bộ điều khiển S7-1200
2.1.2 S7 Communication protocol
Cho phép trao đổi dữ liệu giữa các PLC của dòng S7 1200 thông qua 2 hàm truyền thông chính là PUT và GET S7 communication protocol là giao thức truyền thông được sử dụng trong đề tài, đây là giao thức được phát triển bởi Siemens, dùng
để giao tiếp giữa các PLC S7 1200 Điều quan trọng nhất là giao thức này truyền thông trên nền Ethernet nên bản chất cấu trúc của nó là
Trang 199
Client - Server Vì cẩu trúc này mà chúng ta dễ dàng thực hiện việc trao đổi dữ liệu giữa các phần tử với nhau Với cẩu trúc này, Primary PLC cũng như Standby PLC có thể vừa là Client, vừa là Server Do đó Primary PLC có thể yêu cầu đọc hoặc ghi dữ liệu từ Standby PLC cũng như Standby PLC có thể yêu cầu đọc hoặc ghi dữ liệu từ Primary PLC Chính vì lý do này mà giúp người lập trình rẩt thuận tiện trong việc lựa chọn giải pháp đồng bộ dữ liệu giữa Primary PLC và Standby PLC
PLC as Client
PUT (FB35) ACK
*
PLC as Server
Hình 2.2 Cẩu trúc Client - Server khi sử dụng PUT/GET
2.2 Xây dựng giải thuật dự phòng ở cấp điều khiển 2.2.1 Hệ thống phần cứng có cẩu trúc như sau:
Hai PLC S7-1200 đóng vai trò là thiết bị điều khiển trong đó một Primary PLC
và một PLC là Standby PLC PLC S7-1200 còn lại đóng vai trò là remote I/O Khi hệ thống làm việc bình thường Cả Primary PLC và Standby PLC sẽ thực hiện đọc tín hiệu cảm biến qua remote I/O Primary PLC sẽ thực hiện chương trình ứng dụng, đồng bộ
dữ liệu theo chu kỳ cho Standby PLC và xuất tín hiệu điều khiển cho remote I/O Standby PLC trong chế độ làm việc bình thường sau khi đọc tín hiệu cảm biến từ remote I/O sẽ kiểm tra trạng thái làm
Trang 2010
việc của PLC Primary, đồng thời nhận tín hiệu dữ liệu đồng bộ từ PLC Primary Khi PLC Primary bị sự cố thì PLC Stanby sẽ đảm nhận vai trò điều khiển của PLC Primary, sau khi đã khắc phục xong sự cố thì PLC Primary sẽ đảm nhận trở lại vai trò điều khiển
và PLC Standby sẽ tiếp tục đóng vai trò dự phòng
Trang 2111
2.2.2 Cấu trúc phăn mềm
Switchover là thuật ngữ chỉ sự chuyển đổi vai trò điều khiển hoạt động trong
hệ thống khi có sự cố xảy ra của mạng truyền thông, kết nối, thiết bị không hoạt động,
bị hư hỏng
Điều kiện Switchover: Phát hiện khi có sự cố xảy ra đối với Primary controller,
Standby controller sẽ nhảy vào thay thế vẩn đề đặt ra:
• Kiểm tra khi nào thì xảy ra điều kiện Switchover?
• Vẩn đề đồng bộ hóa dữ liệu giữa 2 PLC Primary và Secondary Sau mỗi chu
kỳ quét của PLC Primary thì PLC Primary sẽ thực hiện việc chuyển dữ liệu cho PLC Standby
Vai trò của Primary PLC:
• Primary PLC mang đầy đủ các chức năng như khi nó đứng một mình trong
hệ thống Standalone (single controller) Điều này có nghĩa là khi Primary PLC hoạt động bình thường nó sẽ thực hiện điều khiển các thiết bị cẩp trường, các module Ethernet w
• Ngoài ra Primary PLC còn có nhiệm vụ liên tục kết nối tới Standby PLC để truyền dữ liệu đảm bảo cho Standby PLC luôn cập nhật đầy đủ và đảm bảo tính dự phòng trong trường hợp Primary PLC bị lỗi và không thể điều khiển được thiết bị
• Khi Primary PLC khắc phục sự cố trở lại điều khiển nó sẽ trở lại điều khiển
hệ thống
Vai trò của Standby PLC:
• Standby PLC sẽ liên tục cập nhật dữ liệu từ cảm biến qua remote I/O, trạng thái và dữ liệu đồng bộ từ Primary PLC và sẵn sàng trở thành Primary PLC nếu có sự
cố xảy ra đối với Primary PLC Lúc này Standby PLC trở thành Primary PLC
• Khi Primary PLC được khắc phục xong, nó sẽ trở lại chế độ Standby
Trang 2212
Primary PLC is controlling system
Trang 2313
Standby PLC is controlling systems
Hình 2.5 Hoạt động của hệ thống khi Primary PLC bị lỗi
Hình 2.6 Hoạt động của hệ thống khi Primary PLC phục hồi
Để giải quyết bài toán dự phòng PLC bằng phần mềm thì cần phải xây dựng cấu trúc chương trình điều khiển của Primary PLC cũng như Standby PLC Trong luận văn này, sử dụng PLC S7-1200 của hãng Siemens và phần mềm lập
Trang 2414
trình TIA Portal V14 nên cẩu trúc chương trình cho hai PLC đều được xây dựng trên
phần mềm này Nguyên lý dự phòng bằng phần mềm như sau:
Hình 2.7 Nguyên lý dự phòng bằng phần mềm
2.3 Kiểm tra trạng thái hoạt động của PLC Primary
• Kiểm tra điều kiện Switch over
Trong hệ thống dự phòng bằng phần mềm, việc phát hiện được điều kiện switch
over là rất quan trọng Mỗi khi Primary PLC gặp sự cố thì Primary không thể thông
báo cho Standby PLC biết rằng Primary PLC bị lỗi và không thể điều khiển các thiết
bị cấp trường Do đó Standby PLC phải thường xuyên cập nhật trạng thái của Primary
PLC thông qua kiểm tra truyền thông và kỹ thuật nhịp tim [heatbeat] Trong đó kỹ thuật
Heatbeat để biết được CPU của Primary có bị
Trang 25bị đứng hoặc đang bị tạm dừng (Stop mode) Lúc bẩy giờ PLC Secondary sẽ đảm nhận vai trò điều khiển thay cho PLC Primary Khi cần dừng PLC Primary để thực hiện bảo dưỡng, nâng cẩp chương trình hoặc thay thế một Module nào đó, ta có thể đưa PLC Primary về chế độ Stop Mode, lúc này hệ thống vẫn hoạt động bình thường, do đã được điều khiển bởi PLC Secondary
Trang 2616
PLC Secodary
Hình 2.9 Giải thuật heartbeat
Trang 2717
Đây là giải thuật đơn giản nhưng hiệu quả để xác định CPU của Primary có hoạt động tốt hay không Ngoài ra có một trường hợp nữa không nằm trong giả thuyết này ví dụ như trường hợp muốn tạm thời dừng chương trình của Primary PLC để sửa chữa, Khi đó chuyển Primary PLC sang chế độ Stop mode do đó khi standby PLC thầy được Primary không điều khiển được hệ thống nên stanby PLC sẽ đảm nhận quyền điều khiển, cho đến khi nâng cẩp chương trình cho Primary xong thì Primary PLC được chuyển sang Run mode thì lúc đó Primary sẽ thông báo cho standby PLC biết rằng Primary PLC đã trở lại điều khiển hệ thống và do đó Standby PLC chuyển
về lại chế độ Standby mode Nhờ vậy mà thời gian chỉnh sửa, nâng cẩp cho Primary PLC thì hệ thống vẫn tạm thời hoạt động liên tục, qua đó nâng cao sản xuẩt
Trang 28để điệu kiện Switch over xảy ra Điều kiện đủ để Standby PLC đảm nhận quyền điều khiển hệ thống Standby PLC phải truyền thông được với tất cả device PLC Khi thỏa mãn hai điều kiện trên Standby PLC sẽ thực hiện Update trong một chu kỳ của PLC
và thục hiện điều khiển hệ thống
Trang 2919
Trường hợp 1: Module truyền thông của Primary PLC bị lỗi
Hình 2.11 Module truyền thông của Primary PLC bị lỗi
Trường hợp 2: Ethernet cabble nối giữa nodel đến module ETY Thông thường
hiện tượng này xảy ra do tiếp xúc giữa đầu cable RJ45 và Hub tại node 1 hoặc tại giữa đầu RJ45 và đầu Ethernet của PLC không tốt
Trang 3020
PRIMARY CABLE FAIL 192.168.1.20 Primary
PLC
PRIMARY CABLE COME BACK 192.168.1.21
X
192.168.1.25 Remote
IO
Hình 2.12 Ethernet cable của Primary PLC bị lỗi
Trang 3121
Hình 2.13 Giải thuật Heart beat
Kết hợp các giả thuyết trên, ta có giải thuật Switch over như sau:
ST1 Start ST2 Ready Switch over ST3 Run Program
Redunnancy ST4 PLC No Program
Redunnancy ST5 PLC become Primary
PLC Note: when Primary PLC is erro, Standby PLC will become Primary PLC
Err PLC Partner
SI
Trang 3222
Hình 2.14 Giải thuật Switch over cho CPU Standby
Chương trình Switch over cho CPU Standby
ST 1 := ST1.ST1 Timerl + FS
ST2 := (ST2 + ST1 Timerl + ST3. (sĩ + so)
+ STA SO Timers) Sr2.Sl.S0 ST2.S0.Timer6
ST3 := (ST3 + ST2.S1.SÕ + STA.S0.SĨ.TimerA').STS.Timer2.STS (SĨ + SO)
STA := (ST4 + ST2.S0.Timer6 + STS (SI
+ Sữ).Timers').STA.SữTimerS.STA.Sữ.Sl.TimerA
ST 5 := (ST5 + ST3.Timer2).STS.SO.Timers
Trang 3323
FS
Hình 2.15 Giải thuật Switch over cho CPU Master
Chương trình Switch over cho CPU Master
STS ■■= {STS + STS Timer2) STS SO Timers
Trang 34Hình 2.16 Cấu trúc trong đồng bộ dữ liệu