Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Kỹ thuật điều khiển
08/08/2024 14:08
Bài viết này đưa ra thuật toán, kỹ thuật lập trình cho master (gọi là client trong trường hợp Modbus TCP) sử dụng PLC để thu thập dữ liệu từ mạng các thiết bị sử dụng giao thức Modbus TCP (gọi là server).
aa

Giới thiệu

Trong công nghiệp, hầu hết các thiết bị đo đếm điện năng đều hỗ trợ giao thức Modbus RTU, Modbus TCP/IP. Giao thức Modbus thì không xa lạ gì đối với các kỹ sư trong các ngành năng lượng, tự động hóa sản xuất. Tuy nhiên trải qua mấy chục năm nay hệ thu thập dữ liệu và điều khiển với thiết bị thông qua giao thức Modbus RTU và thậm chí với Modbus TCP đều bộc lộ những vấn đề sau đây:

• Hệ thống chạy một thời gian bị treo. Bộ điều khiển hay gateway (sau đây gọi là master) phải khởi động lại (tắt nguồn/ bật nguồn) hệ mới làm việc bình thường trở lại.

• Trong một chuỗi, khi một thiết bị (sau đây gọi là slave) không trao đổi dữ liệu được với master cũng dẫn đến đình trệ luôn việc trao đổi dữ liệu của master với nguyên chuỗi slave.

• Trao đổi dữ liệu với tốc độ chậm hoặc rất chậm, với chu kỳ khoảng 1 đến 2 giây, có khi lên đến 10 giây mặc dù số thiết bị slave trong chuỗi không nhiều.

• Khi thiết kế, kỹ sư hệ thống thường không dám chọn số thiết bị slave nhiều do lo ngại về tốc độ trao đổi dữ liệu, hoặc không trao đổi được khi số slave tăng. Các kỹ sư thiết kế còn ngần ngại không biết nên lựa chọn số lượng thiết bị slave sao cho phù hợp. Đa số trường hợp lựa chọn 5-6 slave cho một master để chắc chắn.

Các vấn đề nêu trên trên, ít ai nghĩ rằng: Hệ thống hoạt động có tin cậy và bền vững hay không là do cách lập trình chương trình trên PLC / Gatway, chứ không phải do yếu tố vật lý hoàn toàn. Bài viết này đưa ra thuật toán, kỹ thuật lập trình cho master (gọi là client trong trường hợp Modbus TCP) sử dụng PLC để thu thập dữ liệu từ mạng các thiết bị sử dụng giao thức Modbus TCP (gọi là server, trong trường hợp Modbus RTU gọi là slave) và ánh xạ (mapping) dữ liệu vào các khối dữ liệu (datablock) để từ đó các PLC cấp cao, hoặc SCADA có thể trao đổi dữ liệu với PLC thông qua giao thức phổ biến hơn.

Trong bài viết, tác giả cũng chia sẻ phần mềm (tự phát triển) - là công cụ cho phép mô phỏng một số lượng rất lớn các điện kế năng lượng phục vụ cho việc kiểm chứng thiết bị hoặc phát triển các dự án xây dựng hệ thống quản lý điện năng, ví dụ như hệ thống thu thập và điều khiển điện (EMCS) trong siêu dự án sân bay Quốc tế Long Thành.

Giải pháp cũng đưa ra cách bố trí thí nghiệm kiểm chứng mà trong điều kiện hạn chế, kỹ sư có thể tổ chức được mạng Modbus TCP với số lượng rất lớn điện kế. Đi kèm với bài viết mã nguồn dự án viết trên công cụ TIA Portal của hãng Siemens. Kỹ sư lập trình có thể sử dụng nội dung của project mẫu này, có thể thay đổi để thích ứng với dự án thực tế mà mình đang thực hiện.

Cấu trúc của hệ thống thu thập dữ liệu từ mạng điện kế

Các đồng hồ đo đếm năng lượng (điện kế) trên thị trường công nghiệp hiện nay thường tồn tại dưới 2 dạng (theo khía cạnh chuẩn truyền thông) vật lý: RS-485 và ethernet. Tương ứng cho 2 chuẩn vật lý này là giao thức Modbus RTU (gọi là Modbus) và Modbus TCP.

Trong trường hợp điện kế hỗ trợ Modbus RTU, hệ bao gồm một PLC và module RS-485 (tổng lại có thể gọi là gateway). Module RS-485 được nối với mạng điện kế sử dụng cab tín hiệu 2 sợi RS-485. Phía kia của gateway là cổng ethernet của PLC, mà các PLC cấp cao hơn hoặc SCADA có thể thông qua đó để trao đổi dữ liệu sử dụng các giao thức như: S7 (trường hợp PLC S7-1200 của hãng Siemens), Modbus TCP/IP hoặc OPC UA (hình 1). Hình 1a là trường hợp các điện kế nối với nhau bằng topology kiểu daisy chain. Hình 1b - các điện kế nối với nhau thông qua bộ chia (thụ động - passive) RS-485.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 1. Mạng các đồng hồ năng lượng kết nối sử dụng Modbus RTU

Trường hợp các điện kế hỗ trợ giao thức Modbus TCP, thiết bị như PLC/Gateway có thể trao đổi dữ liệu trực tiếp với mạng điện kế thông qua ethernet. Các điện kế nối với nhau bằng topology kiểu daisy chain (hình 2a, trong trường hợp điện kế hỗ trợ 2 cổng ethernet) hoặc thông qua switch mạng (hình 2b). Phía kia của PLC/gateway là cổng ethernet, mà các PLC hoặc SCADA cấp cao hơn có thể thông qua đó để trao đổi dữ liệu sử dụng các giao thức như: S7 (trường hợp PLC S7-1200/S7-1500 của hãng Siemens), Modbus TCP/IP hoặc OPC UA (hình 2).

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 2. Mạng các đồng hồ năng lượng kết nối sử dụng Modbus TCP

 Cấu hình hệ thống sử dụng để phát triển và kiểm chứng dự án

Để phát triển dự án với số lượng điện kế lớn và kiểm chứng thuật toán trao đổi dữ liệu giữa PLC (Modbus TCP client) với các điện kế (Modbus TCP server), có thể tổ chức một hệ thống có các thành phần như trong hình 3.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 3. Cấu trúc hệ thống dùng để kiểm chứng thuật toán và phát triển dự án

Trong điều kiện giới hạn, không đầy đủ các thiết bị điện kế, đặc biệt là với số lượng rất lớn, kỹ sư lập trình có thể bố trí hệ thống thiết bị và phần mềm và có cấu trúc như hình 3 để kiểm chứng chương trình hoạt động của PLC / Gateway.

Bảng 1 ghi rõ các thiết bị và phần mềm cần thiết để tổ chức kiểm chứng thuật toán và phát triển dữ án. PLCSim Advanced là PLC ảo có thể dễ dàng tải phần mềm tại trang hỗ trợ kỹ thuật của hãng Siemens.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Phần mềm Energy meter realtime data simulator cho phép mô phỏng số lượng rất lớn các thiết bị điện kế do chính tác giả phát triển (hình 4). Các điện kế sử dụng một địa chỉ IP nhưng port khác nhau. Mỗi điện kế dùng 24 thanh ghi dạng 3x (input register) để chứa giá trị float (kiểu swap) từ 12 thông số của điện kế (hình 5). Riêng thanh ghi 25 và 26 dùng để chứa số thứ tự (ID) của điện kế. Sau khi lựa chọn card mạng và bấm “Start” trên máy tính sẽ tạo ra n Modbus TCP server tương ứng với port chạy từ 502 đến 502+n.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 4. Phần mềm Energy Meter Realtime Data Simulaton.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 5. 12 thông số điện năng của điện kế và ánh xạ kiểu dữ liệu trong TIA Portal

Thuật toán và lập trình thu thập dữ liệu

Dưới đây là thuật toán và chương trình thu thập dữ liệu từ 200 điện kế hỗ trợ Modbus TCP. Chương trình được xây dựng sử dụng công cụ TIA Portal.

1. Chương trình được chia thành 20 nhóm, mỗi nhóm sẽ đảm nhận việc thu thập dữ liệu từ 10 điện kế. Như vậy mỗi nhóm sẽ có 10 Modbus TCP client (CLIENT_i, i = 1..200 trong hình 6). Trong mỗi nhóm có 1 nhiệm vụ (Task) đảm nhận việc thu thập dữ liệu từ 10 điện kế khác nhau.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 6. 20 nhóm trong chương trình

2. Trước hết cần phải tạo một kiểu dữ liệu Energy như trong hình 5.

3. Từ kiểu dữ liệu ở trên, có thể tạo ra 20 nhóm dữ liệu, mỗi nhóm là một mảng (array) gồm 10 phần tử Energy (hình 7).

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 7. 20 nhóm khối dữ liệu

4. Tạo 20 nhóm cấu hình kết nối với điện kế, mỗi nhóm là một array gồm 10 phần tử (hình 8).

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 8. 20 nhóm cấu hình kết nối

5. Bài toán khởi tạo giá trị (startup, có tên là Init trong dự án TIA Portal) cho 20 kết nối, chạy duy nhất một lần khi khởi động chương trình PLC, có code như trong hình 9.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng
Hình 9. Khởi tạo giá trị cho 20 kết nối

Init có nhiệm vụ gán địa chỉ IP, định danh kết nối (connection ID) và TCP port. Port này đi từ 502. Địa chỉ IP của máy tính chạy phần mềm mô phỏng điện kế là 192.168.1.100.

6. Trên mỗi nhiệm vụ Task_i (i = 1..200) sẽ có 1 bộ chia thời gian (hình 10). Bộ chia thời gian (time slot divider) sẽ chia thành những khoảng thời gian bằng nhau (200ms). Các client sẽ thực hiện việc thu thập dữ liệu từ điện kế tương ứng khi đến phiên mình.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng

Hình 10. Cơ chế chia thời gian để thu thập dữ liệu

Thuật toán chia thời gian này được cụ thể hóa trên TIA Portal bằng bộ đếm (counter) kích hoạt bằng đồng hồ 5Hz. Chương trình của 20 nhiệm vụ (Task_i, i = 1..20) thu thập dữ liêu được thể hiện rõ qua hình 11.

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng
Hình 11. 20 nhiệm vụ thu thập dữ liệu từ điện kế tương ứng

Kết luận

Cấu hình kiểm chứng ở trên với 200 điện kế, trong đó mỗi điện kế có 26 thanh ghi. Kết quả chạy chương trình trên PLCSim Advanced cũng như trên PLC vật lý đều cho kết quả như hình 12. Kết quả trên hình 12 chỉ thể hiện giá trị đọc được từ 13 thông số của điện kế đầu tiên (ID = 1) và điện kế cuối cùng (ID = 200).

Tổ chức chương trình thu thập dữ liệu từ các thiết bị đo đếm điện năng
Hình 12. Kết quả kiểm chứng trên TIA Portal

Tác giả đã sử dụng thuật toán và chương trình mô phỏng Energy Meter Realtime Data Simulation để vận dụng vào trong nhiều dự án trước đây, giúp giảm thiểu được chi phí về phần cứng phải đầu tư khi phát triển dự án và rút ngắn thời gian hoàn thành dự án.

Độc giả có thể tải phần mềm Energy Meter Realtime Data Simulation theo đường dẫn bên dưới hoặc QR code như trong, để có thể thay đổi một dễ dàng về số lượng điện kế cần thu thập dữ liệu, sử dụng cho trong việc phát triển dự án quản lý điện năng.

Mã nguồn dự án viết trên công cụ TIA Portal của hãng Siemens. Kỹ sư lập trình có thể sử dụng nội dung của dự án mẫu này, có thể thay đổi để thích ứng với dự án thực tế mà mình đang thực hiện.

Đường dẫn để tải tài liệu:

https://drive.google.com/drive/folders/1w4fZaCzBunXvXxfrkV-qfiNVhRhUu04t?usp=sharing

Trương Đình Châu

Đại học Bách khoa TP.HCM

Bài liên quan
mtvh
Tin bài khác
Dịch vụ xe tự hành phục vụ bệnh nhân tại Mỹ

Dịch vụ xe tự hành phục vụ bệnh nhân tại Mỹ

Contra Costa Transportation Authority (CCTA) và May Mobility, một công ty chuyên về công nghệ lái xe tự động, đã ra mắt Presto, một dịch vụ xe tự hành chung cho người dân tại Martinez, California và các bệnh nhân của Trung tâm Y tế Khu vực Contra Costa (Bệnh viện Quận).
Nhận định chứng khoán ngày 19/9: Tiếp tục đà tăng, hướng về mốc 1.270 điểm

Nhận định chứng khoán ngày 19/9: Tiếp tục đà tăng, hướng về mốc 1.270 điểm

Sau phiên giao dịch sôi động và tích cực ngày 18/9, thị trường chứng khoán được kỳ vọng sẽ duy trì đà tăng trong phiên ngày 19/9. Dòng tiền chủ động tham gia, thanh khoản cải thiện cùng tín hiệu kỹ thuật khả quan cho thấy VN Index có thể chinh phục mốc 1.270 điểm.
Chạm đến trái tim, qua câu chuyện "Tình người không có hóa đơn"

Chạm đến trái tim, qua câu chuyện "Tình người không có hóa đơn"

Một câu chuyện có thật. Tại một thành phố ở Ấn Độ, vị thương gia mất cả ngày trời thương thảo với đối tác. Mệt mỏi, ông vào một nhà hàng sang trọng, tự thưởng cho mình bữa tối thịnh soạn.
Tử vi vòng quay công nghệ ngày 19/9/2024: Tuổi Dần dễ gặp rạn nứt, tuổi Hợi thuận lợi

Tử vi vòng quay công nghệ ngày 19/9/2024: Tuổi Dần dễ gặp rạn nứt, tuổi Hợi thuận lợi

Những bí ẩn của khoa học đời sống là "món ăn" tinh thần không thể thiếu trong cuộc sống của con người. Tử vi vòng quay công nghệ xem tử vi 12 con giáp ngày 19/9/2024 cho tất cả các tuổi nhằm dự đoán vận hạn về công danh, tiền bạc, tình duyên, sức khỏe...
Thị trường chứng khoán ngày 18/9: Thanh khoản tăng vọt, VN Index duy trì đà tăng

Thị trường chứng khoán ngày 18/9: Thanh khoản tăng vọt, VN Index duy trì đà tăng

Sau phiên tăng mạnh trước, thị trường chứng khoán ngày 18/9 đã khởi sắc ngay từ đầu phiên nhờ tâm lý nhà đầu tư được cải thiện. Thanh khoản thị trường cũng tăng vọt khi dòng tiền lớn ồ ạt nhập cuộc. Tuy nhiên, áp lực bán vào cuối phiên đã khiến đà tăng bị thu hẹp đáng kể.
MCredit - công ty tài chính tiêu dùng của ngân hàng MB đang kinh doanh ra sao?

MCredit - công ty tài chính tiêu dùng của ngân hàng MB đang kinh doanh ra sao?

Kết quả kinh doanh tại Công ty Tài chính TNHH MTV MB (MS Finance – MCredit) đang kém lạc quan. Đặc biệt, công ty mẹ ngân hàng MB cũng đang đối mặt với nợ xấu gia tăng, ghi nhận hơn 11.000 tỷ đồng.
Hơn 450 đơn vị hàng đầu ngành nước sẽ có mặt tại Vietwater 2024

Hơn 450 đơn vị hàng đầu ngành nước sẽ có mặt tại Vietwater 2024

Vietwater 2024 không chỉ quy tụ hơn 450 nhà triển lãm hàng đầu đến từ hơn 25 quốc gia và vùng lãnh thổ, mà còn thu hút hơn 10.000 khách tham quan thương mại chuyên ngành.
Doanh nghiệp công nghệ số hãy nhận lấy sứ mệnh dùng chuyển đổi AI để thay đổi Việt Nam

Doanh nghiệp công nghệ số hãy nhận lấy sứ mệnh dùng chuyển đổi AI để thay đổi Việt Nam

Các doanh nghiệp công nghệ số Việt Nam, nhất là các doanh nghiệp AI, phải nhận lấy sứ mệnh dùng chuyển đổi AI để thay đổi Việt Nam. Đầu tiên là chuyển đổi AI chính doanh nghiệp của mình trước. Rồi sau đấy mới là chuyển đổi AI các tổ chức khác, các lĩnh vực khác.
Không biết con người của bạn đáng giá bao nhiêu?

Không biết con người của bạn đáng giá bao nhiêu?

Có một thanh niên nọ luôn nghi hoặc bản thân, hay than vãn không hiểu vì sao mình mãi vẫn chưa giàu, lúc nào cũng rầu rĩ, cau có.
Quy định về quản lý nhiệm vụ khoa học và công nghệ cấp Bộ của Ủy ban Dân tộc

Quy định về quản lý nhiệm vụ khoa học và công nghệ cấp Bộ của Ủy ban Dân tộc

Ủy ban Dân tộc đang lấy ý kiến góp ý với dự thảo Thông tư quy định về quản lý nhiệm vụ khoa học và công nghệ cấp Bộ của Ủy ban Dân tộc.