Tôi lấy một ví dụ: Tôi cần viết một HMI quản lý phần chiếu sáng của một khách sạn 5 sao. Giả sử có tất cả 1000 bóng đèn.
Bóng đèn sẽ là một đối tượng hình tròn (Circle), khi nó đang bật màu đỏ, đang tắt màu đen. Tôi nhấp chuột vào nó, nó sẽ hỏi tôi muốn bật tắt phải không, sau khi chờ tôi xác nhận bóng đèn sẽ bật hay tắt.
Điều này có nghĩa là tôi sẽ phải viết script cho từng bóng đèn để thực hiện việc trên.
Vậy sau này nếu tôi cần modify 1 chút trong cái script trên thì sao, modify script cho lần lượt cho 1000 cái bóng đèn này à?
Như vậy có một giải pháp nào không, ta tạo ra một đối tượng chuẩn, các bóng đèn sẽ lấy từ đối tượng chuẩn này. Khi ta modify đối tượng chuẩn rồi gọi lệnh update thì 1000 đối tượng bóng đèn kia sẽ tự động thay đổi theo.
Tôi đã sử dụng Citect Scada (ver 6.1) và thấy Citect hỗ trợ rất tốt vấn đề này (bằng các genuine objects và super genuine objects). Tuy nhiên khi sử dụng Citect tôi thấy có một số nhược điểm quá lớn để có thể viết được một HMI ở mức hơi phức tạp (quá nặng nề, kết nối SQL phức tạp...) nên chuyển sang nghiên cứu WinCC.
Bóng đèn sẽ là một đối tượng hình tròn (Circle), khi nó đang bật màu đỏ, đang tắt màu đen. Tôi nhấp chuột vào nó, nó sẽ hỏi tôi muốn bật tắt phải không, sau khi chờ tôi xác nhận bóng đèn sẽ bật hay tắt.
Điều này có nghĩa là tôi sẽ phải viết script cho từng bóng đèn để thực hiện việc trên.
Vậy sau này nếu tôi cần modify 1 chút trong cái script trên thì sao, modify script cho lần lượt cho 1000 cái bóng đèn này à?
Như vậy có một giải pháp nào không, ta tạo ra một đối tượng chuẩn, các bóng đèn sẽ lấy từ đối tượng chuẩn này. Khi ta modify đối tượng chuẩn rồi gọi lệnh update thì 1000 đối tượng bóng đèn kia sẽ tự động thay đổi theo.
Tôi đã sử dụng Citect Scada (ver 6.1) và thấy Citect hỗ trợ rất tốt vấn đề này (bằng các genuine objects và super genuine objects). Tuy nhiên khi sử dụng Citect tôi thấy có một số nhược điểm quá lớn để có thể viết được một HMI ở mức hơi phức tạp (quá nặng nề, kết nối SQL phức tạp...) nên chuyển sang nghiên cứu WinCC.

Comment