上海盟疆工業(yè)自動(dòng)化設(shè)備有限公司 經(jīng)銷(xiāo)批發(fā)的西門(mén)子工業(yè)自動(dòng)化控制設(shè)備、西門(mén)子暢銷(xiāo)消費(fèi)者市場(chǎng),在消費(fèi)者當(dāng)中享有較高的地位,公司與多家零售商和代理商建立了長(zhǎng)期穩(wěn)定的合作關(guān)系。上海盟疆工業(yè)自動(dòng)化設(shè)備有限公司經(jīng)銷(xiāo)的西門(mén)子工業(yè)自動(dòng)化控制設(shè)備、西門(mén)子S7-200SMART S7-200 CN 、S7-300、S7-400、S7-1200 、變頻器、觸摸屏、工控機(jī)、數(shù)控系統(tǒng)、NCU數(shù)控主板、西門(mén)子元器件等等西門(mén)子自動(dòng)化品種齊全、價(jià)格合理。上海盟疆工業(yè)自動(dòng)化設(shè)備有限公司實(shí)力雄厚,重信用、守合同、保證產(chǎn)品質(zhì)量,以多品種經(jīng)營(yíng)特色和薄利多銷(xiāo)的原則,贏得了廣大客戶(hù)的信任。
西門(mén)子以太網(wǎng)模塊用作輸出變量的有效數(shù)據(jù) / 用作 PROFINET IO 設(shè)備 / 值512 byte● 用作輸入變量的有效數(shù)據(jù) / 各個(gè)子模塊用作 PROFINET IO 設(shè)備240 byte● 用作輸出變量的有效數(shù)據(jù) / 各個(gè)子模塊用作 PROFINET IO 設(shè)備240 byte● 用作每個(gè)子模塊兼容范圍的有效數(shù)據(jù)240 byte子模塊數(shù)量 / 各個(gè) PROFINET IO 設(shè)備32性能數(shù)據(jù) / 遠(yuǎn)程控制系統(tǒng)協(xié)議 / 支持
● TCP/IP是的產(chǎn)品功能 / 管理、配置、組態(tài)產(chǎn)品功能 / MIB 支持
著工業(yè)自動(dòng)化的發(fā)展, 客戶(hù)一些特殊的要求普通的觸摸屏加PLC的人機(jī)交互方案已經(jīng)不能滿(mǎn)足,比如數(shù)據(jù)庫(kù)儲(chǔ)存,數(shù)據(jù)查詢(xún),壓力位移曲線(xiàn)的保存,簡(jiǎn)易視覺(jué)的構(gòu)建等等,這樣我們就需要通過(guò)工控機(jī)帶PCI總線(xiàn)板卡實(shí)現(xiàn)整套自動(dòng)化系統(tǒng)的方案,但是這種應(yīng)用在中大型自控系統(tǒng)是沒(méi)有問(wèn)題的,而一些小型自動(dòng)化解決方案,用工控機(jī)自控系統(tǒng)性?xún)r(jià)比不高,方案競(jìng)爭(zhēng)力不足,而且整個(gè)工控機(jī)編程對(duì)程序員的文本邏輯性要求比較高,針對(duì)上述情況,推出使用觸摸一體機(jī)與下位機(jī)PLC以太網(wǎng)通訊來(lái)實(shí)現(xiàn),PLC是邏輯控制的可以選擇]器件,上層功能則在觸摸一體機(jī)中實(shí)現(xiàn)。
本文檔針對(duì)西門(mén)子S7-1200PLC來(lái)做此次說(shuō)明,首先好實(shí)現(xiàn)的就是OPC通訊,但是測(cè)試下來(lái)數(shù)據(jù)延遲比較高,S7協(xié)議又是封閉的,所以只能通過(guò)OpenIE 開(kāi)放式以太網(wǎng)的方式來(lái)實(shí)現(xiàn)!
什么是OPENIE(開(kāi)放式以太網(wǎng))?
西門(mén)子S7-1200 Profinet端口支持多種以太網(wǎng)網(wǎng)絡(luò)上的通信標(biāo)準(zhǔn):
1.傳輸控制協(xié)議(TCP)
2.ISO on TCP(RFC 1006)
3.用戶(hù)數(shù)據(jù)報(bào)協(xié)議(UDP)
測(cè)試硬件:S7-1200 1215C V4.0
PC機(jī)或者工控機(jī)
測(cè)試軟件:labview 2014
編程軟件:TIA Protal V13
測(cè)試目的:通過(guò)上位機(jī)控制PLC的輸出點(diǎn),以及在上位機(jī)上反饋PLC輸入點(diǎn)狀態(tài)。
下位機(jī)程序編寫(xiě)步驟:
1.在MAIN程序OB1中添加TSEND_C(帶連接控制的以太網(wǎng)發(fā)送指令)
2.配置發(fā)送指令TSEND_C,配置方法:鼠標(biāo)右鍵指令屬性打開(kāi)配置對(duì)話(huà)框
具體參數(shù)配置如下:
注意:連接數(shù)據(jù)也就是指令中的CONN西門(mén)子以太網(wǎng)模塊ECT不要自己手動(dòng)建,否則會(huì)出現(xiàn)通訊不上。
3.在MAIN程序OB1中添加TRCV_C(帶連接控制的以太網(wǎng)接收指令)
接收指令參數(shù)配置如下:
關(guān)于上述配置中端口的說(shuō)明:
注意:建立被動(dòng)的TCP 、ISO on TCP 和UDP的連接時(shí),建議使用端口范圍: 2000~5000。一些端口號(hào)和TSAP 號(hào)是受到限制不能被使用的。 下列端口號(hào)和TSAP號(hào)不能使用:
ISO TSAP (passive): 01.00, 01.01, 02.00, 02.01, 03.00, 03.01
TCP/UDP port (passive): 20, 21, 25, 80, 102, 135, 161, 34962 34964,53, 80, 162, 443, 520, 9001。
我們好端口號(hào)從2000開(kāi)始。
關(guān)于發(fā)送指令與接收指令中DATA參數(shù)的鏈接說(shuō)明:
符號(hào)尋址:如果建立的DB塊是符號(hào)尋址,那么DATA端口上直接填寫(xiě)DB塊名稱(chēng)即可,另外需要注意的是LEN長(zhǎng)度參數(shù)一定要設(shè)置為0.
地址:如果建立的DB塊是非優(yōu)化的訪問(wèn),也就是地址尋址,那么DAT端口上只能通過(guò)輸入指針的形式來(lái)指向數(shù)據(jù)區(qū),同事參數(shù)LEN一定到準(zhǔn)確,否則會(huì)造成通信錯(cuò)誤,另外S7-1200PLC開(kāi)放式以太網(wǎng)通訊不支持布爾尋址,指針指向形式為: P#DB3.DBX0.0 BYTE 100 。
具體下位機(jī)程序如下:
MAIN中主要通訊程序:
PLC輸入點(diǎn)反饋程序:
PLC輸西門(mén)子以太網(wǎng)模塊出點(diǎn)控制程序:
發(fā)送數(shù)據(jù)區(qū)DB塊:直接使用IW0或者IB0數(shù)據(jù)。
接收數(shù)據(jù)區(qū)DB塊:
上位機(jī)labview程序前面板:
上位機(jī)labview程序框圖:
測(cè)試結(jié)果:通訊速度10ms 快5ms穩(wěn)定,適合繪制實(shí)時(shí)曲線(xiàn),滿(mǎn)足工業(yè)要求。
常見(jiàn)問(wèn)題:
為什么通信數(shù)據(jù)區(qū)在輸入指針形式的地址時(shí)不允許輸入?
答:通信數(shù)據(jù)區(qū) DATA 在輸入指針形式的地址時(shí),雖然輸入地址格式完全正確,但仍會(huì)出現(xiàn)紅色 P#DB3.DBX0.0 BYTE 100 ,表示地址錯(cuò)誤而不允許輸入。這是因?yàn)樵趧?chuàng)建通信數(shù)據(jù)區(qū) DB 塊時(shí)選擇了 Symbolic access only(僅符號(hào)尋址) ,只能用符號(hào)尋址方式訪問(wèn)這個(gè)DB塊。只要在創(chuàng)建DB塊時(shí),不勾選 Symbolic access only(僅符號(hào)尋址) ,就可以正常輸入指針形式的地址了。
Tblock 通信指令是同步傳輸還是異步傳輸?
答:Tblock 通信指令是異步于程序傳輸?shù)模總€(gè)掃描周期分配給通信任務(wù)的時(shí)間百分比可以在CPU屬性中的 Communication load(通信負(fù)載)" 中設(shè)定,默認(rèn)值是 20% 。這就要求在每個(gè)通信任務(wù)完成之前要保證數(shù)據(jù)區(qū)數(shù)據(jù)的一致性。
為何發(fā)送通信任務(wù)不執(zhí)行或只執(zhí)行了一次?
答:在執(zhí)行發(fā)送指令時(shí), REQ 輸入端的每次上升沿