工控網(wǎng)首頁
>

應(yīng)用設(shè)計(jì)

>

什么是EtherCAT?使用軟件PLC的測量控制

什么是EtherCAT?使用軟件PLC的測量控制

1.png

目錄

》什么是EtherCAT?

》EtherCAT產(chǎn)品的兼容性問題

》什么是PLC

》什么是CODESYS?

》使用CONPROSYS PAC系列的EtherCAT通信控制

    *CODESYS編程教程

    *與CONPROSYS HMI的聯(lián)動

什么是EtherCAT?

EtherCAT(Ethernet for Control Automation Technology)在2016年被豐田汽車公司全面采用后備受關(guān)注,它是由倍福自動化有限公司開發(fā)的具有實(shí)時(shí)功能的開放式現(xiàn)場網(wǎng)絡(luò)(Open Field Network)。目前,功能要求和認(rèn)證程序是由2003年成立的EtherCAT Technology Group(EtherCAT技術(shù)協(xié)會)進(jìn)行規(guī)定和管理。

什么是現(xiàn)場網(wǎng)絡(luò)

現(xiàn)場網(wǎng)絡(luò)是用來在工廠內(nèi)的控制設(shè)備和傳感器等測量設(shè)備之間進(jìn)行通信的網(wǎng)絡(luò)。該現(xiàn)場網(wǎng)絡(luò)中使用以太網(wǎng)的網(wǎng)絡(luò)稱為工業(yè)用以太網(wǎng)。工業(yè)用以太網(wǎng)包括Profinet、Ethernet/IP、CC-Link/IE Field、Modbus/TCP等,EtherCAT也是一種工業(yè)用以太網(wǎng)。

EtherCAT的通信示意圖

EtherCAT分為主站和從站,一個(gè)主站上連接了一個(gè)或多個(gè)從站控制器??墒褂镁栈ㄦ溞秃托切瓦M(jìn)行連接。

2.jpg

通信方法是將所有從站的數(shù)據(jù)匯總成一個(gè)數(shù)據(jù)包發(fā)送出去。上述示例中,數(shù)據(jù)包的內(nèi)容如下。

3.png

設(shè)備數(shù)據(jù)的大小和功能等在EtherCAT Slave Information文件中進(jìn)行描述,EtherCAT主站事先使用這些信息來創(chuàng)建上述數(shù)據(jù)包。

數(shù)據(jù)依次從離主站最近的從站控制器進(jìn)行傳輸。藍(lán)色箭頭(1)至(6)為EtherCAT數(shù)據(jù)包的傳輸順序。在上述連接的情況下,該設(shè)備的數(shù)據(jù)依次從(1)到(3)進(jìn)行更新。對于輸入數(shù)據(jù),將數(shù)據(jù)更新為數(shù)據(jù)包,對于輸出數(shù)據(jù),將設(shè)備更新為數(shù)據(jù)的值。在到達(dá)終端從站③后,數(shù)據(jù)沿著(4)至(6)的箭頭方向折返,最后在主站接收后更新輸入數(shù)據(jù)。

4.jpg

EtherCAT的冗余化

EtherCAT如果在主站上有多個(gè)LAN端口,可通過環(huán)形連接實(shí)現(xiàn)雙重冗余。如果將2個(gè)LAN端口分配給EtherCAT,CPS-PC341EC-1-9201將無法進(jìn)行LAN通信,下方示例為通過配備了軟件PLC且配備2個(gè)以上LAN端口的PC進(jìn)行連接的情況。

5.jpg

此時(shí),藍(lán)色和綠色兩個(gè)方向各自進(jìn)行通信。藍(lán)色箭頭(1)至(4)為LAN端口1的傳輸順序,綠色箭頭(1)至(4)為LAN端口2的傳輸順序。

雙重冗余時(shí),即使線路發(fā)生斷線,通信也能繼續(xù)而不會中斷。而且,斷線位置也能清楚顯示。下方為從站②與從站③之間發(fā)生斷線時(shí)的示意圖。由于從站②無法進(jìn)行通信,綠色箭頭的LAN端口2的通信到達(dá)從站③之后返回到主站,如綠色箭頭(1)至(2)所示僅從站③進(jìn)行通信。由于從站③無法進(jìn)行通信,藍(lán)色箭頭的LAN端口1的通信傳輸?shù)綇恼劲谥蠓祷刂髡?。藍(lán)色箭頭(1)至(4)為LAN端口1的通信。

6.jpg

EtherCAT產(chǎn)品的兼容性問題

EtherCAT產(chǎn)品包括各種主站和從站產(chǎn)品。并非所有的功能都能在引入了EtherCAT主站軟件的PC、主站產(chǎn)品和EtherCAT從站產(chǎn)品上正常工作。EtherCAT技術(shù)協(xié)會將對EtherCAT主站及從站開發(fā)廠商進(jìn)行每年一次的連接測試,以盡可能地消除兼容性問題。

康泰克的CONPROSYS PAC系列推出了EtherCAT主站/從站產(chǎn)品,已確認(rèn)PAC系列的組合可正常工作,可放心使用。另外,希望在康泰克以外的主站上使用康泰克的從站產(chǎn)品,或者不清楚康泰克以外的從站和康泰克的主站產(chǎn)品能否正常工作,希望在購買前確認(rèn)動作時(shí),選擇使用康泰克提供的測試機(jī)租借服務(wù)。

什么是PLC

如果想在EtherCAT主站進(jìn)行編程,例如通過EtherCAT通信獲取控制和傳感器狀態(tài)等,您可將其引入使用了PLC和軟件的系統(tǒng)中。PLC是可編程邏輯控制器(Programmable Logic Controller)的首字母縮寫,也稱為定序器。它是可按照邏輯控制傳感器和LED等控制設(shè)備的控制器。以微型計(jì)算機(jī)為主體,專門進(jìn)行邏輯處理的專用設(shè)備稱為硬件PLC,在工業(yè)用計(jì)算機(jī)等安裝了PLC功能,進(jìn)行多種處理的設(shè)備稱為軟件PLC??堤┛说腜AC系列采用軟件PLC CODESYS。

什么是CODESYS?

CODESYS?是指根據(jù)CODESYS.GmbH開發(fā)出的符合國際標(biāo)準(zhǔn)IEC 61131-3的軟件PLC。支持IEC 61131-3中定義的5種語言。已安裝了CODESYS的產(chǎn)品可用作EtherCAT主站。CODESYS軟件由LINX公司提供,有可通過此處免費(fèi)下載 (日文)。(CODESYS和LINX都需要用戶注冊)

關(guān)于PC編程和CODESYS的PLC編程的差異

在PC上進(jìn)行Python等編程時(shí),感覺是從起點(diǎn)出發(fā)朝著規(guī)定的終點(diǎn)邁進(jìn),而在CODESYS編程中,則感覺是按照規(guī)定的循環(huán)時(shí)間繞著跑道一圈圈地進(jìn)行處理。

【PC上進(jìn)行編程的基本示意圖】

7.jpg

【CODESYS編程的基本示意圖】

8.jpg

在PC編程中,有一種線程稱作定時(shí)器線程,該線程在規(guī)定的時(shí)間內(nèi)運(yùn)行,雖可加以使用,但當(dāng)單位為毫秒到微秒時(shí)就會出現(xiàn)時(shí)間波動,很難保持線程在1毫秒內(nèi)運(yùn)行,經(jīng)常出現(xiàn)線程偏離10毫秒的情況。對于CODESYS,根據(jù)設(shè)備的不同,可設(shè)置毫秒單位或數(shù)百微秒。但是,進(jìn)行PLC編程時(shí)需要加以注意。例如,在PC上進(jìn)行編程時(shí),可使用 “等待”(如睡眠),但CODESYS編程要求在規(guī)定的循環(huán)時(shí)間內(nèi)持續(xù)運(yùn)行,所以編程方式必須是 “在下一個(gè)循環(huán)處理 ”而非“等待”。

CODESYS?的編程語言

IEC 61131-3定義的PLC編程語言為梯形圖(LD)、指令表(IL)、功能模塊圖(FBD)、順序功能流程圖(SFC)及結(jié)構(gòu)化文本(ST)這5種語言。CODESYS可使用IEC 61131-3中定義的PLC編程語言進(jìn)行編寫。

使用CONPROSYS PAC系列的EtherCAT通信控制

選擇產(chǎn)品

作為擁有軟件PLC功能的設(shè)備,康泰克具有配備了CODESYS的CONPROSYS PAC系列。CONPROSYS PAC控制器作為人機(jī)界面配備了CONPROSYS HMI,可將CODESYS收集的EhterCAT從站設(shè)備數(shù)據(jù)可視化。

9.jpg

包括EtherCAT主站產(chǎn)品“CPS-PC341EC-1-9201”或“CPS-PCS341EC-DS1-1201”、作為EtherCAT從站產(chǎn)品可擴(kuò)展最多16臺模塊的EtherCAT從站耦合器“CPS-ECS341-1-011”、可連接最多8臺IO-Link傳感器的IO-Link網(wǎng)關(guān)“CPSL-08P1EN”。下方為產(chǎn)品分類圖。

【產(chǎn)品分類圖】

10.jpg

使用CODESYS編程的示例

本次在下列構(gòu)建中安裝了CODESYS開發(fā)環(huán)境后,通過HMI監(jiān)控進(jìn)行EtherCAT通信的模擬電流,當(dāng)電流值下降到閾值時(shí)打開數(shù)字量輸出。

11.jpg

CODESYS編程教程

要點(diǎn)!如果在最初設(shè)置好構(gòu)建信息和連接信息,編程變得簡單!

1.安裝PAC控制器、EtherCAT構(gòu)建信息

首先安裝PAC控制器CPS-PC341EC-1-9201的程序庫。CPS-PC341EC-1-9201的程序庫可通過此處下載。通過數(shù)據(jù)包管理器進(jìn)行安裝。

12.jpg

下面安裝EtherCAT構(gòu)建信息ESI文件(Ethercat Slave Information File)。CPS-ECS341-1-011的ESI文件可通過此處下載。通過設(shè)備資源庫進(jìn)行安裝。

13.jpg

2.項(xiàng)目創(chuàng)建/編程語言選擇

下面進(jìn)行項(xiàng)目創(chuàng)建。

選擇類似于C語言等可編程語言“結(jié)構(gòu)化文本(ST)”繼續(xù)創(chuàng)建。

14.jpg

3.EtherCAT的連接設(shè)置

在控制器上添加EtherCAT主站。添加EtherCAT主站后,設(shè)置CPS-ECS341-1-011的設(shè)備。本次連接了數(shù)字量輸出和模擬輸入設(shè)備,注冊這兩臺設(shè)備。設(shè)置后,注冊使用的模擬輸入端子(AnalogInput0)和數(shù)字量輸出端子(DigitalOutput0、DigitalEchoOutput0)。

15.jpg

至此準(zhǔn)備工作完成。

4.程序

將程序畫面寫入PLC_PRG。存在指令聲明部分和程序部分,使用已聲明的變量和3.進(jìn)行注冊的端子進(jìn)行編程。

變量聲明部分

VAR

 // 在HMI上注冊的變量

 threshold :LREAL:= 0.0;// 閾值(mA)

 value : LREAL := 0.0;//當(dāng)前值(mA)

 lump0 : BOOL := FALSE; // 數(shù)字量輸出的確認(rèn)值(Echoback Input的值)

 // CPS-AI-1608ALI的設(shè)備

 max_current : LREAL := 20.0; // 最大值(mA)

 resolution : LREAL := 65536.0; // 分辨率 16bit -> 2的16次方

END_VAR

程序部

value := (AnalogInput0*max_current) / (resolution – 1.0); // 轉(zhuǎn)換為mA

if (value < threshold ) then

 DigitalOutput0 := TRUE;

else

 DigitalOutput0 := FALSE;

end_if

lump0 := DigitalEchoOutput0;

在PC上對EtherCAT庫進(jìn)行編程時(shí),必須對ESI文件的讀取、EtherCAT通信交互以及稱為對象字典的參數(shù)的消息通信交互進(jìn)行編程。如果使用CODESYS,則會執(zhí)行CODESYS庫,EtherCAT的通信部分的編程將省略,從而可直接輕松地操作模擬輸入設(shè)備和數(shù)字量輸出設(shè)備。

5.為了在CONPROSYS HMI中使用,注冊value和threshold,lump0的變量。

因此,添加符號配置。

16.jpg

添加后,勾選要使用的變量,然后再次按下構(gòu)建按鈕以完成。

17.jpg

在這種狀態(tài)下關(guān)閉CPS-PC341EC-1-9201的電源后,本程序會消失,因此通過Web瀏覽器訪問本機(jī)并保存程序。

18.jpg

與CONPROSYS HMI的聯(lián)動

要點(diǎn)!創(chuàng)建監(jiān)控畫面,配置部件后聯(lián)動CODESYS注冊的變量即可!

1.編輯監(jiān)控。

電流值和閾值采用趨勢圖,數(shù)字量輸出的確認(rèn)采用指示燈。為了在標(biāo)簽上顯示電流值,在文本框上顯示閾值,對部件進(jìn)行布局。下方為創(chuàng)建畫面。

19.jpg

本次,指示燈的設(shè)置僅使用最上層。此外,趨勢圖的Y軸刻度已固定為最大值20/最小值0。

20.jpg

2.關(guān)聯(lián)CODESYS中注冊的變量(value、threshold、 lump0)。

21.jpg

之后保存即可完成。如果電流值低于閾值,數(shù)字量輸出開啟后,指示燈亮紅燈。將12mA設(shè)置為閾值時(shí)的CONPROSYS HMI如下所示。

22.jpg

23.jpg

怎么樣?如此可輕松執(zhí)行使用EtherCAT通信的控制程序。此處僅介紹了控制EtherCAT,其他還有各種功能如PAC控制器的文件保存功能和云傳輸功能,可實(shí)現(xiàn)聯(lián)動。要創(chuàng)建該類程序時(shí),準(zhǔn)備了參考指南(軟件)和示例程序作為詳細(xì)資料。

審核編輯(
王靜
)
投訴建議

提交

查看更多評論
其他資訊

查看更多

新產(chǎn)品通信 – 僅兩張名片大小的嵌入式計(jì)算機(jī) 盒式計(jì)算機(jī) BX-U310全新發(fā)售

康泰克:新產(chǎn)品通信 – CONPROSYS? nano系列 I/O模塊 2種數(shù)字量輸出 新上市

新品發(fā)布:17英寸無風(fēng)扇PCAP觸摸屏電腦

EV制造時(shí)的ECU檢查、汽車維修保養(yǎng)用CAN通信單元

?康泰克董事長兼社長西山和良致辭