国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

 找回密碼
 注冊
搜索

西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500)

[復制鏈接]
樓主
coolice 發表于 2020-4-19 17:24:08 | 只看該作者 |只看大圖 |倒序瀏覽 |閱讀模式
1.C#語言開發,采用NET4.0框架,模塊化設計,通信效率不怎么高 可以湊合用。
2.工程結構類似OPC通訊方式,采用Tag的方式,通過標簽名就可以讀寫寄存器。
3.采用XML配置式標簽的方式實時讀寫PLC內部寄存器,可讀寫寄存器包括I、Q、PI、PA、M、DB。
4.具有PLC斷線重連功能,通訊穩定可靠。
5.完全開源、包括Dll文件、附件內包含源代碼。 SiemensPLC通信.zip (5.22 MB, 售價: 2 E幣)
西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 2.jpg 西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 1.jpg

西門子PLC S7-200/300/400/1200/1500 TCP 通訊組件V2.0

工業自動化監控管理軟件里面有一部分是自己用高級語言開發,一部分是用組態軟件,用組態軟件的組態軟件的也需要買軟件,雖然開發快,但價格貴而且不靈活,無法開發更加復雜的業務了,本組件面向的主要用戶是采用高級開發語言(如C++,C#,VB,java等)開發監控管理系統的用戶,通過通訊中間件,能夠在開發軟件過程中更加專注于自身的生產業務流程,而無需要考慮設備通訊的問題,大大縮短開發時間,更加提升了軟件整體質量。

西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 69.001.jpg

1.C#語言開發,采用NET4.0框架,模塊化設計,二次開發使用方便。

2.工程結構類似OPC通訊方式,采用Tag的方式,通過標簽名就可以讀寫寄存器。

3.采用XML配置式標簽的方式實時讀寫PLC內部寄存器,可讀寫寄存器包括I、Q、PI、PA、M、DB。

4.具有PLC斷線重連功能,通訊穩定可靠。

5.正式版功能支持至少10路PLC同時通訊,每個PLC讀寫點數<=20000點。

6.如需要可提供COM形式組件,供C++、VB等其他語言調用。


本軟件為測試版本,僅供測試用途,測試版本會有16的變量點的限制。如需應用到現場工程,請購買正式版二次開發組件,屆時將提供例程源碼和函數說明文檔。

syscfg.xml文件說明:

1.該文件是配置讀寫PLC寄存器重要文件,可根據自身項目需要配置讀寫的標簽。

2.節點說明

Device節點:

  • ip: PLC的IP地址,這里面可以設置,代碼里面也可以設置,以代碼為最終設置結果。
  • PLCType:”1”: S7-200/smart系列,”2”: S7-300/400/1200/1500系列;
  • cpuSlotNO:CPU所在的槽號,S7-300的PLC一般都為"02",S7-400的PLC一般都為"03", S7-200/1200/1500的PLC一般都為"01"。
  • localTASP :S7-200/Smart需要用的參數,S7-200:"10 11",Smart:"02 01" 。其他PLC忽略,其中S7-200的TSAP設置可參考【附2】。
  • remoteTASP:S7-200/Smart需要用的參數,S7-200:"10 01",Smart:"02 00"。其他PLC忽略,其中S7-200的TSAP設置可參考【附2】。

TagGroup節點:


    • name:節點名稱,全局唯一,不能重復。
    • mmtype:寄存器名稱,可選 I、Q、PI、PA、M、DB、V(200PLC專用)。
    • block:DB塊的地址,如地址DB100.DBW1,其中,block=100,如寄存器不為DB塊,設為空值。注意,如要讀DB塊數據,請保證PLC里面里面已經建立了相應的DB塊,并且塊大小不能小于readCount,不然會出錯!!!
    • beginAddress:讀寄存器的起始地址,建議為偶數。
    • readCount:讀的字節數,不能超過200,不然效率低。

Tag節點:

  • name:節點名稱,在所屬的TagGroup中的name不能重復。不同的TagGroup中的兩個name可以相同。
  • address:標簽地址,若讀寫標簽是位,地址形式應該設置為 N.M(0<M<7),如“100.5”,否則為實際標簽地址。該地址的的大小應不小于TagGroup節點中beginAddress的大小,且不能大于beginAddress 和 readCount的和值。
  • dataType:數據類型,可選 bool,byte,short,int,float。

【bool】:對用PLC的位(bit)類型。

【byte】:對用PLC的byte類型,位8位無符號數。

【short】:對用PLC的word類型,位16位有符號數。

【int】:對用PLC的Dword類型,為32位有符號數

【float】:對用PLC的real類型,為32位有符號浮點數。

  • desc:描述。

附1、S7-1200/1500特殊說明:


    • 針對這兩種PLC,需要啟用通信才可讀寫數據,即在TIA軟件中,在CPU的屬性--保護—聯結機制,勾選“允許來自遠程對象…”如下圖:

西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 69.002.jpg


    • 針對DB塊的讀寫,需要進行如下操作,使得按照標準的地址進行訪問,TIA軟件中在對應的數據塊點擊鼠標右鍵選擇屬性,不勾選“優化的塊訪問”,如下圖:

西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 69.003.jpg


附2、S7-200TSAP的默認設置界面:


西門子PLC TCP通訊組件C#源碼 開源(支持S7-200/300/400/1200/1500) 69.004.jpg
200PLC的設置圖


您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

手機版|小黑屋|ELEOK |網站地圖

GMT+8, 2026-5-26 09:55

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回復 返回頂部 返回列表