文章來源(yuán)
本(běn)文(wén)轉載自CSDN 作者:姚家灣
終於拿到了施耐德電氣(qì)硬件PAC產品M251MDESE 。以前對EcoStruxure Automation Expert的測試都(dōu)是基於軟件SoftDPAC的。總(zǒng)是有一種運行(háng)仿真軟件的感覺,心中有點不(bú)踏實,現場還是要硬件設備(bèi)解決問(wèn)題。現在我終於見到能夠(gòu)運行IEC61499 的硬件DPAC了。這是我第一(yī)次看見的能運行IEC61499的PAC。實際上它是在施耐德電氣成熟的PLC硬件產品的基礎上,通過軟件升級成為IEC61499 PAC。這(zhè)意味著它能夠在現場高可靠運行,而且具有更多的IO模塊可供選擇。施耐德電氣的EcoStruxure Automation Expert 係統讓長期以來停留在學術領域的IEC61499標準有機會走向在自動控製領域實際應用。正因為如此(cǐ),我特別也期待EAE的(de)硬件產(chǎn)品的測試。
M251簡介
M251是施耐德電氣基於(yú)IEC61131-3的(de)PLC產品。其中TM251MESE型號是雙(shuāng)口以太網的PLC產品。
它的主要特點如下:
●帶有2個端(duān)口的以太網交換機(jī)接(jiē)口(ethernet1_1 和ethernet1_2),100M速率,可以串聯成分布式網絡。
●帶有另外一個以太網接口(ethernet 2),100M速率。可以連接現(xiàn)場總線。例如modbusTCP。
●帶有一個串行口和(hé)一個SD卡座
●一個USB插座,可以通過它更新固件和某些參數的設置。
●可(kě)以擴展TM3/TM2係列的IO模塊(右邊(biān)),也可以擴展TM4 IO模塊(左(zuǒ)邊)
相比我們頭腦中傳統PLC的概念(niàn),M251這些特征透露出網絡時(shí)代新一代PLC的氣息。我拿到的型號是TM251MDESE,其中(zhōng)的D大概(gài)是代表dPAC吧?
測試目的和方案
我主要(yào)測試兩個方麵:
1.通過Ethernet 2連接一個modbusTCP控製器上,實現modbusTCP通信。
這非常重要,意味著可(kě)以接入各種第三(sān)方遠(yuǎn)程IO模塊,或者第三(sān)方的專用傳感器,執行部件等。這意味著M251將稱(chēng)為一個IEC61499網關,將無數非IEC61499的設備瞬間具有了IEC499的能力。這是一件令人興奮的事情。為此,我使用了一個自己原(yuán)來研發的一個基於cortex-M處理器的控製器modular-2,它采用Arm公司的Mbed OS,具有一個Ethernet網口。我為此(cǐ)編寫了一個(gè)modbusTCP server端程序(需要的讀者可以(yǐ)私信分享(xiǎng))。相信許多的國產遠程IO模塊也能夠方便(biàn)地接入。
2.增加一個TM3DM8R-G模塊。測試數字IO控製接口:
有了IO模塊才更像PLC。但是施耐德電氣提供(gòng)給我的M251沒有帶(dài)任何IO模塊,於是(shì)我自己在淘(táo)寶上買了一個TM3DM8R-G模塊,它具有4個24V的(de)輸(shū)入,4個繼電器(qì)輸出。希望後麵能接一些燈和開關(guān),電機。構建一個應用場(chǎng)景。
測試(shì)床的框架如下圖所示:
測試的過程
設置IP地址
●ethernet 1 的IP地址:10.10.1.175
●ethernet 2的IP地址(zhǐ):10.11.1.176
ethernet 1和ethernet 2是隔離的,需要設置為兩個網段。下麵我們會介紹通過EAE軟(ruǎn)件也可以修改設備的Ethernet 1的(de)IP地址,而ethernet2的IP地址則(zé)需要通(tōng)過Automation Device Maintenance 軟件才能夠修改。這個軟件可以在施耐德電氣官網(wǎng)上免費下載。設(shè)置IP地址折騰了我一段時間,後來還是在施耐德電氣工(gōng)程師幫助下得以完全解決。
新建一個(gè)項目mtest
係統的拓撲(pū)圖({physical Topology)
係統由交換機,M251和一個(gè)通用以太網現場設備 Generic Ethernet field device構(gòu)成,其中的通用以太網現場設備是一台基於低成本cortex-M Arm芯片的控製器,它運行Arm公司的Mbed OS,我們在它上麵編寫了一個modbusTCP的測試程序。你也可以連接一台PC機,運行modbusTCP server程序來測試。
下麵是(shì)M251的IP地址的配置:
在(zài)這(zhè)裏我們修改了Ethernet的IP地址為(wéi)192.168.31.175.這要與M251內部的IP地址一致。
注意:M251設備中的IP地址要通(tōng)過(guò)EAE軟件來設置,具體的(de)做法(fǎ)如下:
鼠標點到左邊Ethernet 1的位置後擊(jī)右鍵。彈出下麵的子菜單(dān):
選擇Set IP Address。然後會彈出:
這時你可以修改IPv4 address。然後按Apply。修改IP地址之(zhī)後,機器重(chóng)新上電(diàn)。
Ethernet 2的地址可以使用Automation Device Maintenance軟件。這是一個設備維護軟件,用來下(xià)載硬件的固件和修改某些參數。你可以使用它修改modbus TCP 的IP地址。這裏就不多描述。
添加modbus
和TM3DM8R-G的硬件配置
添加modbus的Hardware CAT
在《施耐德電氣開放(fàng)自動化平台初體驗(3)》已經有(yǒu)了描(miáo)述。讀者可(kě)以參考。再次提醒(xǐng)下麵幾(jǐ)點:
MODBUSGENTCPS的屬性中(zhōng)的IP地址修改為(wéi)外接modbusTCP設備(bèi)的IP地址10.11.1.100。
VAL_IN1_MODBUSGENTCPS和VAL_IN1_MODBUSGENTCPS的ioevent隻能修改為(wéi)cycle。不能是requestread(我不(bú)知道這是為什麽,按理說request read是需要的,為什麽不行呢?要進(jìn)一步測試)
添加TM3DM8R-G模塊 的Hardware CAT
打開HW_Configuration,點擊(jī)窗口上方的第一個圖(tú)標Add new master hardware CAT ,然後彈出下麵的窗口:
選擇ST_IoTMx.BMTM3,在產生的項目上右鍵Add ,出現:
選擇:SE.IoTMx。TM3DM8R-G模(mó)塊。於是,HW_Configuration的窗口變成為:
在(zài)這個窗口中要填入“PLC_1"和”DOUT“。雖然它稱為Value實際上是一個符號連接(jiē)(symbol link ),它是為這(zhè)個硬件輸出(chū)引腳定義了一個符號(hào)(名稱(chēng))。
App中變量連接到硬件CAT 的符號(hào)連(lián)接
BMTM3 CAT不會像modbus那樣通(tōng)過(guò)mapping在RES中自動產生對應的SYMLINKMULTIVARSSRC功能塊,需要手動地在App中添加。
在應用(yòng)中,要使用一個符號(hào)連接多變量源(yuán)功能塊(SYMLINKMULTIVARSSRC)或者符號連接(jiē)多變量(liàng)目標功(gōng)能塊(SYMLINKMULTIVARSDSR)來建立功能塊網絡中的數據與symbol link的連接。這兩個功能塊在runtime.System庫中。在App中添加了這(zhè)個功能塊後發現Value帶一個小紅的x
這是因為VALUE的類型為ANY,可以通過(guò)interface編輯,修改它的類型和數量。方法是擊右鍵
選擇interface edit。這時會出現下列對話框:
第一行是Value的數量,可以(yǐ)增加,也可以將Any 改為UINT。這個功能還是比較貼心的。減少(shǎo)了IEC61499功能塊類型轉(zhuǎn)換的麻煩(4diac就是(shì)如此)。
適當的連線。
添加DPAC_FULLINIT功能塊
完成了上麵的功能塊網絡後,將應用部署(shǔ)到M251 中運行,發現程序運(yùn)行正常,觀察(watch)有關的數據也都能夠看到正確的數據,但是令人遺憾的是M251的(de)硬件沒有任何反應,Ethernet 2沒有發(fā)送ModbusTCP數(shù)據幀,TIM3DM8R-G也沒有繼電器的開關和信號燈閃爍。反複搞了很長時間,結果還是在施耐德電氣上海的工程師給我了(le)幫助,他(tā)提醒我要放置一個DPAC_FULLINIT功能塊。這個功能(néng)塊在SE>DPAC庫中。放上去以後,隻要連一個INIT。
OC_RETRIGGER可以不用連接(jiē)事件(jiàn)。然後下載(zǎi)下去後,modbusTCP和TM3DM8R-G都工作了。
使用中的一些(xiē)小技巧
在使用中也發現一(yī)些奇奇(qí)怪怪的事(shì)情,比如(rú)在(zài)RES 中無法刪(shān)除額外的連線。後來(lái)我就不使用HW_Configuration邊上的Mapping,盡量在(zài)App 中放置所(suǒ)有的功能塊,在本項目中,App最後改為:
自動上電運行
測(cè)試完成(chéng)後發現,M251關電之後重新上電,PLC 不會自動運行(háng)重新,需要在EAE中login而後device run。如何做到自動上電運行呢?做法如下:
1.在logical device 中選中M251,右(yòu)邊的runtime Configuration中有一(yī)個boot選項修(xiū)改為overwrite 。
2.部署界麵擊右鍵(jiàn)選擇deploy device configuration
3.重新部署App。
4.OK
結束語
整整花了兩天的時間,在施耐德電氣工程師(shī)的指導下初步完成了EcoStruxure Automation Expert 硬件M251 PLC 應用測試。感謝施耐德電氣的(de)技術工程(chéng)師們的幫助。他們(men)總是能夠在我山窮水盡時帶來柳暗花明。
通過這(zhè)個測試(shì),我(wǒ)們更加能夠體會到施(shī)耐德電氣EcoStruxure Automation Expert的魅力。在未(wèi)來的工程中,隻(zhī)要使用像(xiàng)M251這樣(yàng)成熟硬件的小型PLC就(jiù)可以實現一個IEC61499分布式控製係統,由於(yú)采用了開放型現場控製協議,第三方的傳感器,執行部件和遠程IO模塊也可以(yǐ)輕鬆地連接到IEC61499網絡中。EcoStruxure Automation Expert使一個長期徘徊在實際應(yīng)用係統之外的,孤芳自(zì)傲的IEC61499標準走到了自(zì)動控製係統的現場。當(dāng)然軟件的逐步完善,文檔,應用指南以及社區交(jiāo)流都非常重要。
下麵我還將進一步地做(zuò)細節的測試。也希望與正在(zài)測(cè)試EAE軟件的朋友做交流。