6ES7322-1BF01-0AA0現貨西門子代理
6ES7322-1BF01-0AA0現貨西門子代理
6ES7322-1BF01-0AA0現貨西門子代理
如果用C#編寫程序讀寫西門子PLC?
S7.NET介紹:
S7.NET是一個C#編寫的,以太網連接西門子帶有Profinet接口CPU的dll驅動庫,官方文件介紹可連接S7-200、S7-300、S7-400、S7-1200、S7-1500。(經本人測試,也可連接S7200 SMART)
S7.NET使用問題說明:(本人踩過的坑,寫給大家借鑒一下)
1、連接S7200 SMART需使用S71200、S71500驅動都可以。
2、讀寫S7200或S7200 SMART的V區數據時,DB塊號需設置為1。
3、使用中發現下面兩個bug:
public object Read(DataType dataType, int db, int startByteAdr, VarType varType, int varCount)
public ErrorCode Write(DataType dataType, int db, int startByteAdr, object value)
上述兩個函數無法完成位操作,請使用其他函數代替。
public object Read(DataType dataType, int db, int startByteAdr, VarType varType, int varCount)
該函數在讀取DInt(32位有符號整型)數據時出現問題,讀取不了負數,負數時,值始終為-2147483648。
4、本程序中一次僅讀取1個數據,實際應用中請按照S7.NET文檔修改!
測試環境說明:
1、連接S7200 SMART:
測試硬件:CPU SR20,自帶以太網接口
2、連接S7-200:(因該系列CPU無以太網接口,需外接模塊,如:西門子CP243-1,大連德嘉CP243u、ETH-ibus等)
測試硬件:S7-200 CPU226 CN + 大連德嘉CP243u模塊(西門子CP243-1設置太麻煩,這里用CP243u代替,協議都一樣)。
3、連接S7-300:(該系列PLC也多數不帶以太網口,需外接模塊,如CP343-1、大連德嘉ETH-MPI(Plus)等)
測試硬件1:CPU 314 + ETH-MPI(Plus) (同上,CP343-1設置同樣麻煩,這里用ETH-MPI(Plus)代替,協議一樣)
測試硬件2:CPU315-2PN/DP,自帶以太網接口
4、連接S7-1200:
測試硬件:CPU 1214C AC/DC/Rly
5、連接S7-1500:
測試硬件:CPU 1511-1PN
6、連接S7-400:未經測試,鄙人手上無S7-400 CPU,如有哪位幫忙測試,請告知結果(請給出詳細硬件說明)。
下面是PLC建立連接部分代碼片段:
建立連接:
讀函數:
寫函數:
這里有一條非常重要的設置,之前忘記了,現在補上:如下圖,1500或者1200編程的時候下圖兩個地方需要注意:
讀寫DB塊的話下面這兩個地方需要設置一下:
- 6ES7321-7BH01-0AB0現貨西門子代理 2024-11-22
- 6ES7321-1FH00-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1FF10-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1FF01-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1EL00-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1CH20-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1CH00-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1BP00-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1BL00-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1BH50-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1BH10-0AA0現貨西門子代理 2024-11-22
- 6ES7321-1BH02-4AA2現貨西門子代理 2024-11-22
- 6ES7321-1BH02-4AA1現貨西門子代理 2024-11-22
- 6ES7321-1BH02-0AA0現貨西門子代理 2024-11-22
- 6ES7392-4BB00-0AA0現貨西門子代理 2024-11-22
聯系方式
- 電 話:17838383235
- 經理:徐嘉泉
- 手 機:17838383235
- 微 信:17838383235