Professional Documents
Culture Documents
Siemens - Modbus RTU - S7 Gateway - 202204
Siemens - Modbus RTU - S7 Gateway - 202204
1
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Mục lục
5. Kiểm chứng 14
6. Kết luận 17
2
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Ngoài ra, trong thiết kế, các kỹ sư thiết kế còn ngần ngại không biết là lựa chọn số lượng thiết bị
slave sao cho thích hợp. Đa số trường hợp là lựa chọn 5-6 slave cho một master (một module
CM241) để chắc chắn. Các vấn đề nêu trên trên ít người 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ứ không phải là do yếu tố vật lý hoàn toàn”.
Tài liệu này đưa ra kỹ thuật lập trình PLC S7-1200 để thu thập dữ liệu từ mạng các thiết bị sử dụng
giao thức Modbus RTU và ánh xạ (mapping) dữ liệu vào các datablock để từ đó các PLC cấp cao
hoặc SCADA có thể trao đổi dữ liệu với PLC S7-1200 thông qua giao thức S7. Như vậy giải pháp
này có thể gọi ngắn gọn là Modbus RTU / S7 Gateway, có thể ứng dụng trong nhiều hệ thống để
tích hợp mạng Modbus RTU với mạng Ethernet để cho hệ thống được linh hoạt và hiệu quả hơn.
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 RTU đến 16 slave. Đi kèm với tài liệu là mã nguồn dự án Step 7 viết
trên TIA Portal V16. 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. Đồng thời trong dự án cũng có cung cấp
chương trình SCADA xây dựng trên WinCC Professional với phương pháp lập trình hướng đối
tượng, dùng để kiểm tra kết quả giải pháp.
3
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
CM241 S7-1200
Modbu s RTU
Hình 1. S7-1200 với module CM241 đóng vài trò là Modbus RTU / S7 Gateway
Bảng 1 ghi rõ các thiết bị cần thiết để tạo nên Gateway. PLC S7-1200 trong trường hợp này không
ghi rõ loại nào bởi vì người sử dụng có thể sử dụng bất kỳ dòng nào từ 1211 cho đến 1215.
4
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
CM241 S7-1200
S7
3. Modbus
simulation software
USB/RS-485
Converter
Modbu s RTU -
+
Bảng 2 ghi rõ các thiết bị và phần mềm cần thiết để tổ chức kiểm chứng giải pháp. Bộ chuyển đổi
USB / RS-485 có thể dễ dàng mua được trên thị trường. Về phần mềm mô phỏng các thiết bị Modbus
RTU thì có thể dùng ModSim32 của Win-Tech hoặc Modbus Slave của Witte Software. Trong tài
liệu chúng tôi có cung cấp cho người dùng 16 files cấu hình sẵn cho 16 slave có địa chỉ từ 1 đến
16. Mỗi slave có 32 thanh ghi holding register có địa chỉ từ 100 đến 131. Người dùng chỉ cần có
phần mềm ModSim32 thì chỉ cần mở 16 files này và kết nối phần mềm với cổng COM (cổng do bộ
biến đổi USB/RS-485 tạo ra).
5
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Bảng 2. Các thành phần cần thiết sử dụng trong hệ thống kiểm chứng giải pháp
6
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
7
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
3. Sau đó nhân ra 16 datablock dùng để chứa dữ liệu của 16 slave tương ứng. Lưu ý là bỏ
check “Optimized block access” ở mỗi datablock (hình 5).
8
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
4. Tạo một khối Master có kiểu MB_MASTER (hình 6). Khối này là khối duy nhất dùng dùng
để đọc dữ liệu từ 16 slave.
9
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
5. Tạo một khối thực thi nhiệm vụ (OB) có tên Modbus Scanning (hình 7). Bắt đầu chương
trình là cấu hình cổng COM của module CM241 bằng MB_COMM_LOAD có tên là
Port_Config.
10
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Hình 8. Thuật toán cấu hình cổng COM của module CM241
7. Tiếp theo là tạo 16 timer chạy nối tiếp nhau. Kết thúc của timer trước sẽ kích hoạt timer tiếp
theo. Thuật toán làm việc của chuỗi timer này được thể hiện qua hình 9. Điều đặc biệt của
timer này là có ngõ ra là cạnh lên của thời điểm timer bắt đầu đếm. FB của timer này cũng
được cung cấp trong dự án TIA Portal đính kèm với giải pháp (xem MYTIMER, FB1).
Cấu hình
cổng COM
xong Cạnh
lên
Cạnh
lên
Cạnh
& lên
TIMER_1
TIMER_2
Cạnh
TIMER_3 lên
...
TIMER_16
Hình 9. Thuật toán chia slot thời gian để kích hoạt đọc dữ liệu từ 16 slave
11
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Thuật toán này được thể hiện bằng ngôn ngữ SCL như trong hình 10. Mỗi timer được kích
hoạt cách nhau 100ms.
Hình 10. Thuật toán chia slot thời gian để kích hoạt đọc dữ liệu từ 16 slave được thể hiện bằng ngôn ngữ SCL
12
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
8. Đầu ra TT của 16 timer này dùng để kích hoạt đối tượng Master (chân REQ) để đọc dữ liệu
từ 16 slave. Nguyên lý hoạt động này được thể hiện qua hình 11.
Cạnh lên
&
Cạnh lên Đọc
TIMER_1 & Master
TIMER_2
Cạnh lên
TIMER_3 Đang
bận
...
TIMER_16
Hình 11. Nguyên lý đọc dữ liệu từ 16 slave bằng một đối tượng Master
Sơ đồ nguyên lý trên được thể hiện bằng ngôn ngữ SCL như trong hình 12. Sau mỗi lần đọc,
dữ liệu sẽ được chuyển ngay vào khối dữ liệu Device_1, Device_2, ... Device_16 tương ứng
của 16 slave.
Hình 12. Đọc dữ liệu từ 16 slave bằng một đối tượng Master bằng ngôn ngữ SCL
13
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
5. Kiểm chứng
1. Bố trí thiết bị và phần mềm theo như hình 2.
2. Khởi động chương trình ModSim32 và mở 16 files cấu hình cho 16 thiết bị slave với địa chỉ
từ 1 đến 16 (hình 13). Lúc này trên mỗi trang của Device có dòng chữ **NOT
CONNECTED!**. 16 files này có thể được tìm thấy trong thư mục tải về trong đường dẫn tài
liệu của giải pháp.
3. Vào menu Connection và chọn cổng COM. Cổng này là cổng COM số bao nhiêu thì người
dùng có thể xem ở mục Device Manager trong hệ điều hành Windows. Sau khi chọn cổng
COM thì xuất hiện cửa số như hình 14. Chọn Baud Rate (19200), Data Bits (8), Stop Bits
(1), Parity (NONE), giống như các thông số trong hình 8. Nhấn OK.
14
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
4. Download chương trình “Modbus RTU - S7 Gateway” từ Step 7 xuống PLC. Sử dụng User:
admin, Password: abcdefgh để mở chương trình.
5. Mở các Datablock Device_1, Device_2, … Device_16 để theo dõi sự thay đổi các thanh ghi
(hình 15).
Hình 15. Theo dõi các giá trị thanh ghi của các slave từ TIA Portal
6. Thực thi dự án WinCC Professional (tên ”Gateway Monitor”) đã xây dựng sẵn và nằm trong
dự án “Modbus RTU - S7 Gateway”. Giao thức kết nối giữa SCADA với PLC S7-1200 là S7.
Trang chính của SCADA được thể hiện như hình 16.
15
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
7. Khi nhấp chuột vào một Device trên trang chính thì xuất hiện cửa sổ với dữ liệu thay đổi theo
thời gian thực của 32 thanh ghi của slave cần xem (hình 17).
16
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
6. Kết luận
Cấu hình kiểm chứng ở trên với 16 thiết bị slave, trong đó mỗi slave có 32 thanh ghi. Chu kỳ hoạt
động của mỗi timer là 100ms. Như vậy chu kỳ quét 32 thanh ghi của các thiết bị trong hệ thống sẽ
là 1600 ms. Con số này cũng tương đối thỏa mãn trong các ứng dụng thu thập năng lượng hay điều
khiển quá trình. Trong trường hợp số slave nhiều hơn thì chúng ta có thể gắn thêm một module
CM241 nữa và như vậy số đối tượng Master trong phần mềm sẽ là 2 và hoạt động độc lập.
17
Dr. Trương Đình Châu | Ban Công Nghiệp Số Siemens Việt Nam | 2022-04
Nếu bạn cần thêm thông tin, hỗ trợ về sản phẩm và giải pháp, vui lòng liên hệ với chúng tôi theo
thông tin bên dưới:
Email : mailto:truong-dinh.chau@siemens.com
www.siemens.com
http://www.facebook.com/Siemens.Vietnam
18
Thông tin pháp lý
Các ứng dụng mẫu minh họa giải pháp của các tác vụ tự động hóa thông qua sự tương tác của một số thành phần dưới dạng
văn bản, đồ họa và / hoặc mô-đun phần mềm. Các ứng dụng mẫu là một dịch vụ miễn phí của Siemens AG và / hoặc một công
ty con của Siemens AG ("Siemens"). Siemens không bị ràng buộc và không đưa ra tuyên bố về tính hoàn chỉnh hoặc chức năng
liên quan đến cấu hình và thiết bị cho ứng dụng mẫu. Các ứng dụng mẫu chỉ nhằm trợ giúp các tác vụ điển hình; chúng không
tạo thành các giải pháp dành riêng cho khách hàng. Người sử dụng tự chịu trách nhiệm vận hành sản phẩm đúng cách và an
toàn theo các quy định hiện hành đồng thời phải kiểm tra chức năng của ứng dụng mẫu tương ứng và tùy chỉnh nó cho hệ thống
của mình.
Siemens cấp cho người sử dụng, thông qua nhân viên được đào tạo kỹ thuật của mình, quyền sử dụng không độc quyền, không
được cấp phép lại và không thể chuyển giao các ứng dụng mẫu. Người sử dụng chịu trách nhiệm với mọi thay đổi đối với các
ứng dụng mẫu. Người sử dụng chỉ được phép chia sẻ các ứng dụng mẫu với các bên thứ ba hoặc sao chép các ứng dụng mẫu
hoặc đoạn trích của chúng khi được kết hợp với các sản phẩm của riêng người sử dụng. Các ứng dụng mẫu không bắt buộc
phải trải qua các thử nghiệm thông thường và kiểm tra chất lượng như một sản phẩm thương mại thông thường; chúng có thể
có các khiếm khuyết về chức năng và hiệu suất cũng như các lỗi. Người sử dụng có trách nhiệm sử dụng ứng dụng mẫu nhằm
đảm bảo bất kỳ trục trặc nào có thể xảy ra sẽ không gây thiệt hại về tài sản hoặc thương tích cho con người.
Siemens sẽ không chịu bất kỳ trách nhiệm, vì bất kỳ lý do pháp lý nào, bao gồm, nhưng không giới hạn, trách nhiệm đối với khả
năng sử dụng, tính khả dụng, tính toàn vẹn và không bị lỗi của các ứng dụng mẫu cũng như đối với thông tin liên quan, dữ liệu
cấu hình và hiệu suất và bất kỳ thiệt hại nào phát sinh từ đó. Điều này sẽ không áp dụng trong các trường hợp trách nhiệm pháp
lý bắt buộc, ví dụ như theo Đạo Luật Trách Nhiệm Sản Phẩm của CHLB Đức hoặc theo pháp luật của nước sở tại, hoặc trong
các trường hợp cố ý, sơ suất nghiêm trọng hoặc thiệt hại nghiêm trọng về tính mạng, thương tật hoặc tổn hại sức khỏe, không
tuân thủ bảo đảm, gian lận hoặc không tiết lộ về khiếm khuyết hoặc vi phạm nghiêm trọng các nghĩa vụ cơ bản của h ợp đồng.
Tuy nhiên, trách nhiệm của Siemens khi vi phạm cơ bản nghĩa vụ hợp đồng sẽ được giới hạn ở các thiệt hại có thể ước tính
trước và điển hình của loại thỏa thuận liên quan, trừ khi thiệt hại phát sinh do cố ý hoặc sơ suất nghiêm trọng hoặc thiệt hạ i về
tính mạng, thương tật hoặc tổn hại sức khỏe. Người sử dụng có trách nhiệm chứng minh các thiệt hại của mình. Người sử dụng
sẽ đảm bảo Siemens không bị liên đới với các khiếu nại hiện có hoặc trong tương lai từ các bên thứ ba liên quan, ngoại trừ
trường hợp Siemens phải chịu trách nhiệm bắt buộc.
Bằng cách sử dụng các ứng dụng mẫu, người sử dụng đồng ý rằng quy định nêu trên sẽ điều chỉnh toàn bộ trách nhiệm pháp lý
của Siemens đối với các thiệt hại.
Siemens có quyền thực hiện các thay đổi đối với các ứng dụng mẫu bất kỳ lúc nào mà không cần thông báo. Trong trường hợp
có sự khác biệt giữa các gợi ý trong ứng dụng mẫu và các ấn phẩm khác của Siemens như danh mục sản phẩm, nội dung của
tài liệu khác sẽ được ưu tiên.
Các điều khoản sử dụng của Siemens (https://support.industry.siemens.com) cũng sẽ được áp dụng.
Siemens cung cấp các sản phẩm và giải pháp có chức năng An Ninh Công nghiệp hỗ trợ hoạt động an toàn của các nhà máy,
hệ thống, máy móc và mạng.
Để bảo vệ các nhà máy, hệ thống, máy móc và mạng khỏi các nguy cơ an ninh mạng, khách hàng cần thực hiện - và liên tục duy
trì một mô hình an ninh công nghiệp toàn diện, tiên tiến. Các sản phẩm và giải pháp của Siemens là một nhân tố của mô hình
này.
Khách hàng có trách nhiệm ngăn chặn việc truy cập trái phép vào nhà máy, hệ thống, máy móc và mạng của mình. Các hệ thống,
máy móc và thành phần liên quan chỉ nên được kết nối với mạng doanh nghiệp hoặc Internet nếu và trong phạm vi cần thiết và
chỉ khi các biện pháp bảo mật thích hợp (ví dụ: tường lửa và/hoặc phân đoạn mạng) được áp dụng.
Để biết thêm thông tin về các biện pháp an ninh công nghiệp có thể được thực hiện, vui lòng truy cập
https://www.siemens.com/industrialsecurity.
Các sản phẩm và giải pháp của Siemens trải qua quá trình phát triển liên tục để đảm bảo an toàn hơn. Siemens đặc biệt khuyến
nghị khách hàng cập nhật sản phẩm ngay khi các bản cập nhật được phát hành và sử dụng các phiên bản sản phẩm mới nhất.
Việc sử dụng các phiên bản sản phẩm không còn được hỗ trợ và việc không áp dụng các bản cập nhật mới nhất có thể làm tăng
khả năng khách hàng gặp phải các nguy cơ an ninh mạng.
Để được cập nhật thông tin về các bản cập nhật sản phẩm, hãy đăng ký Nguồn Dữ Liệu An Ninh Công Nghiệp Của Siemens
(Siemens Industrial Security RSS Feed) tại: https://www.siemens.com/industrialsecurity.