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