作者:Alessandro Leonardi, Giorgio Paganini, and Fulvio Bagarelli
? ? ? 工業(yè)4.0帶來(lái)了長(zhǎng)距離邊緣智能的承諾,10BASE-T1L以太網(wǎng)憑借其數(shù)據(jù)線供電(PoDL)功能、高數(shù)據(jù)傳輸速率以及與基于以太網(wǎng)的協(xié)議的兼容性鋪平了前進(jìn)的道路。本文解釋了如何將新的10BASE-T1L以太網(wǎng)物理層標(biāo)準(zhǔn)集成到自動(dòng)化和工業(yè)場(chǎng)景中,以連接控制器和用戶接口與端點(diǎn),如多個(gè)傳感器和執(zhí)行器,所有這些都使用標(biāo)準(zhǔn)以太網(wǎng)接口進(jìn)行雙向通信。
10BASE-T1L是面向工業(yè)連接的物理層標(biāo)準(zhǔn)。它使用標(biāo)準(zhǔn)雙絞線電纜提供高達(dá)10 Mbps的數(shù)據(jù)速率和長(zhǎng)達(dá)1000米的電力傳輸。低延遲和PoDL功能允許遠(yuǎn)程控制傳感器或執(zhí)行器等設(shè)備。本文介紹了如何實(shí)現(xiàn)一個(gè)由遠(yuǎn)程主機(jī)組成的系統(tǒng),該主機(jī)同步控制兩個(gè)或多個(gè)步進(jìn)電機(jī),從而展示遠(yuǎn)距離實(shí)時(shí)通信的能力。
系統(tǒng)概況
首先,圖1顯示了系統(tǒng)級(jí)應(yīng)用的示意圖。在主機(jī)端,標(biāo)準(zhǔn)鏈路和10BASE-T1L鏈路之間的轉(zhuǎn)換由管理ADIN1100和ADIN1200以太網(wǎng)物理層,而在遠(yuǎn)程端,控制器使用ADIN1110以太網(wǎng)MAC-PHY,只需要一個(gè)SPI外設(shè)來(lái)交換數(shù)據(jù)和命令。利用ADI Trinamic可實(shí)現(xiàn)精確、同步的運(yùn)動(dòng)控制TMC5160步進(jìn)電機(jī)控制器和驅(qū)動(dòng)器允許產(chǎn)生用于定位的六點(diǎn)斜坡,而不需要在控制器上進(jìn)行任何計(jì)算。選擇這些元件還可以降低對(duì)微控制器所用外設(shè)、計(jì)算能力和代碼大小的要求,從而允許使用各種商用產(chǎn)品。此外,在達(dá)到預(yù)定義的功耗限制時(shí),整個(gè)遠(yuǎn)程子系統(tǒng)可以直接由數(shù)據(jù)線供電,因此媒體轉(zhuǎn)換器板是唯一需要本地電源的模塊。
圖一。系統(tǒng)概述。
系統(tǒng)硬件
該系統(tǒng)由四塊不同的板組成:
這EVAL-ADIN1100該板配有一個(gè)adin 1200 10 base-T/100ba se-T PHY,與ADIN1100 10BASE-T1L PHY配合使用,將消息從一種物理標(biāo)準(zhǔn)轉(zhuǎn)換為另一種物理標(biāo)準(zhǔn)。它可以配置為不同的工作模式。在這個(gè)項(xiàng)目中,使用標(biāo)準(zhǔn)模式15(媒體轉(zhuǎn)換器)。EVAL-ADIN1100板還集成了一個(gè)微控制器,可執(zhí)行媒體轉(zhuǎn)換所需的基本配置,并讀取診斷信息。但是,它不能與發(fā)送和接收的消息進(jìn)行交互;該板對(duì)通信是完全透明的。
這EVAL-ADIN1110是遠(yuǎn)程設(shè)備控制器的核心。ADIN1110 10BASE-T1L MAC-PHY通過(guò)10BASE-T1L鏈路接收數(shù)據(jù),并將其傳輸至板載Cortex?-M4微控制器通過(guò)SPI接口進(jìn)行處理。該板還提供Arduino Uno兼容接頭,可用于安裝屏蔽,為板增加功能。
TMC5160 shield是基于Arduino shield外形定制開發(fā)的主板。單個(gè)屏蔽最多支持兩個(gè)TMC5160 SilentStepStick板,多個(gè)屏蔽可以堆疊在一起,以增加受控電機(jī)的最大數(shù)量。所有驅(qū)動(dòng)器共享相同的SPI時(shí)鐘和數(shù)據(jù)信號(hào),但片選線路保持獨(dú)立。在這種配置下,可能有兩種通信模式:如果片選線路單獨(dú)置位,微控制器可以與單個(gè)控制器通信,例如配置運(yùn)動(dòng)參數(shù)。相反,通過(guò)同時(shí)斷言更多的芯片選擇線,所有選擇的驅(qū)動(dòng)器同時(shí)接收相同的命令。后一種模式主要用于運(yùn)動(dòng)同步目的。該板還為步進(jìn)桿提供一些額外的輸入電容,以降低電機(jī)啟動(dòng)時(shí)的電流峰值,并在正常情況下平滑電流曲線。這允許使用PoDL為整個(gè)系統(tǒng)提供最多兩個(gè)NEMA17電機(jī)(默認(rèn)設(shè)置下,24 V時(shí)的最大傳輸功率為12 W)。該板還用于通過(guò)使用螺絲端子簡(jiǎn)化與步進(jìn)電機(jī)的連接,使控制器的相位輸出更容易接近。
兩塊EVAL-ADIN11X0EBZ板,一塊用于媒體轉(zhuǎn)換器,另一塊用于EVAL-ADIN1110EBZ,用于增加PoDL功能。該板是一個(gè)插件模塊,可以安裝在評(píng)估板的MDI原型設(shè)計(jì)接頭上,并且可以配置為從數(shù)據(jù)線供電和接收電源。
軟件
軟件代碼可供下載:10Base-T1L以太網(wǎng)遠(yuǎn)程運(yùn)動(dòng)控制–代碼。
為了保持代碼的輕量級(jí)和最小化通信開銷,在數(shù)據(jù)鏈路層之上沒(méi)有實(shí)現(xiàn)標(biāo)準(zhǔn)的通信協(xié)議。所有消息都使用具有預(yù)定義固定格式的以太網(wǎng)幀的有效載荷字段進(jìn)行交換。數(shù)據(jù)被組織成46字節(jié)的段,由2字節(jié)的固定報(bào)頭和44字節(jié)的數(shù)據(jù)字段組成。報(bào)頭包括一個(gè)8位設(shè)備類型字段,用于確定如何處理接收到的數(shù)據(jù);還包括一個(gè)8位設(shè)備ID字段,用于在出現(xiàn)更多相同類型的設(shè)備時(shí)選擇單個(gè)物理設(shè)備。
圖。通信協(xié)議格式。
主機(jī)接口是用Python編寫的,以確保與Windows和Linux主機(jī)兼容。使用Scapy模塊管理以太網(wǎng)通信,該模塊允許在堆棧的每一層創(chuàng)建、發(fā)送、接收和操作數(shù)據(jù)包,包括以太網(wǎng)數(shù)據(jù)鏈路。協(xié)議中定義的每種設(shè)備類型都有一個(gè)相應(yīng)的類,其中包括存儲(chǔ)要交換的數(shù)據(jù)的屬性,以及一組可用于修改這些屬性的方法,而不必直接編輯變量。例如,要在運(yùn)動(dòng)控制器的速度模式下更改運(yùn)動(dòng)方向,需要定義“setDirectionCW()”和“setDirectionCW()”方法,而不必手動(dòng)將0或1值賦給方向標(biāo)志。每個(gè)類還包括一個(gè)“packSegment()”方法,該方法根據(jù)所考慮的設(shè)備類型的預(yù)定義格式,以字節(jié)數(shù)組的形式打包并返回對(duì)應(yīng)于受控設(shè)備的段。
固件使用ChibiOS環(huán)境用C編寫,其中包括實(shí)時(shí)操作系統(tǒng)(RTOS)、硬件抽象層(HAL)和外設(shè)驅(qū)動(dòng)程序,允許代碼在類似的微控制器之間輕松移植。該項(xiàng)目基于三個(gè)定制模塊:
ADIN1110.c是用于通過(guò)SPI接口與ADIN1110交換數(shù)據(jù)和命令的驅(qū)動(dòng)器。它包括從器件寄存器讀寫數(shù)據(jù)的低級(jí)通信功能,以及發(fā)送和接收以太網(wǎng)幀的高級(jí)功能。它還包括用于在10BASE-T1L收發(fā)器之間建立通信的功能。通知新幀是否可用的引腳在中斷時(shí)讀取,以最大限度地減少延遲。
TMC5160.c實(shí)現(xiàn)了控制TMC5160運(yùn)動(dòng)控制器所需的所有功能,配置為在全功能運(yùn)動(dòng)控制器模式下工作。實(shí)現(xiàn)了恒速和位置控制模式,允許通過(guò)六點(diǎn)斜坡實(shí)現(xiàn)平滑和精確的定位。與多個(gè)運(yùn)動(dòng)控制器的通信通過(guò)帶獨(dú)立片選線路的單條SPI總線實(shí)現(xiàn)。還提供了一組函數(shù)和類型定義來(lái)簡(jiǎn)化運(yùn)動(dòng)同步。
Devices.c是從T1L鏈路接收的數(shù)據(jù)與連接到控制器的物理設(shè)備之間的接口。它包括與主機(jī)接口中定義的結(jié)構(gòu)相似的結(jié)構(gòu),并在每次收到包含有效數(shù)據(jù)的新幀時(shí)更新這些結(jié)構(gòu)。該模塊還用于確定每次更新結(jié)構(gòu)時(shí)執(zhí)行哪些操作,例如,哪個(gè)物理運(yùn)動(dòng)控制器與在特定設(shè)備地址接收的命令相關(guān)。
系統(tǒng)亮點(diǎn)和驗(yàn)證
該項(xiàng)目旨在展示新的10BASE-T1L以太網(wǎng)物理層標(biāo)準(zhǔn)如何集成到自動(dòng)化和工業(yè)場(chǎng)景中,以連接控制器和用戶界面與端點(diǎn),如多個(gè)傳感器和執(zhí)行器。該應(yīng)用旨在遠(yuǎn)程實(shí)時(shí)控制多個(gè)步進(jìn)電機(jī),廣泛用于低功耗自動(dòng)化任務(wù),也可用于輕型機(jī)器人和CNC機(jī)器,如臺(tái)式3D打印機(jī)、臺(tái)式銑床和其他類型的笛卡爾繪圖儀。然而,它的用例也可以擴(kuò)展到其他類型的執(zhí)行器和遙控設(shè)備。與用于類似目的的現(xiàn)有接口相比,它的主要優(yōu)點(diǎn)是:
簡(jiǎn)化布線,只需要一根雙絞線。還可以在數(shù)據(jù)線上供電,這樣就可以通過(guò)這種連接直接為傳感器等低功耗器件供電,進(jìn)一步減少所需的布線和連接器數(shù)量,從而降低整個(gè)系統(tǒng)的復(fù)雜性、成本和重量。
PoDL標(biāo)準(zhǔn)使用疊加在數(shù)據(jù)線上的DC電壓為連接到的器件供電。這種類型的耦合只需使用無(wú)源元件即可實(shí)現(xiàn),一旦接收器端的電壓經(jīng)過(guò)濾波,便可直接用于為器件或直流-DC轉(zhuǎn)換器供電,無(wú)需整流。通過(guò)正確確定用于這種類型耦合的組件的尺寸,可以實(shí)現(xiàn)高效率的系統(tǒng)。在本項(xiàng)目中,使用安裝在評(píng)估板上的標(biāo)準(zhǔn)元件可實(shí)現(xiàn)約93%的總效率(24 V電源和200 mA總負(fù)載電流)。然而,這一結(jié)果仍有很大的改進(jìn)余地,事實(shí)上,大部分損耗是由電源路徑上無(wú)源元件的阻性壓降造成的。
多功能性,因?yàn)樗捎糜谧詈笠挥⒗锖投它c(diǎn)連接。ADI公司的10BASE-T1L器件已經(jīng)過(guò)測(cè)試,最遠(yuǎn)可達(dá)1.7米,它們還支持菊花鏈連接,對(duì)系統(tǒng)復(fù)雜性的影響很小。例如,通過(guò)使用ADIN2111雙端口低復(fù)雜度開關(guān),可以設(shè)計(jì)集成菊花鏈功能的器件,使鏈路也適用于端點(diǎn)網(wǎng)絡(luò)。
易于與已經(jīng)集成了以太網(wǎng)控制器的現(xiàn)有設(shè)備接口,包括個(gè)人電腦和筆記本電腦。數(shù)據(jù)幀遵循以太網(wǎng)數(shù)據(jù)鏈路標(biāo)準(zhǔn),所有以太網(wǎng)兼容的協(xié)議都可以在其上實(shí)現(xiàn),因此只需要一個(gè)媒體轉(zhuǎn)換器作為與標(biāo)準(zhǔn)以太網(wǎng)鏈路的橋梁。例如,本項(xiàng)目中使用的EVAL-ADIN1100板可以用作透明媒體轉(zhuǎn)換器的參考設(shè)計(jì),只需要兩個(gè)以太網(wǎng)phy和一個(gè)可選的微控制器來(lái)進(jìn)行配置和調(diào)試。
高數(shù)據(jù)速率,高達(dá)10 Mbps,全雙工。這與菊花鏈拓?fù)洌ɑ诠I(yè)以太網(wǎng)的協(xié)議可以在其上實(shí)施)相結(jié)合,使其能夠用于要求確定性傳輸延遲的實(shí)時(shí)應(yīng)用中。
收發(fā)器與介質(zhì)之間的隔離可以通過(guò)容性或磁性耦合來(lái)實(shí)現(xiàn),具體取決于應(yīng)用的安全性和魯棒性要求。
對(duì)該系統(tǒng)進(jìn)行了多次測(cè)量以評(píng)估其性能。用于與ADIN1110收發(fā)器和TMC5160控制器通信的所有外設(shè)均配置為標(biāo)準(zhǔn)硬件配置可達(dá)到的最大速度。考慮到微控制器的80 MHz系統(tǒng)時(shí)鐘,SPI外設(shè)的數(shù)據(jù)速率對(duì)于運(yùn)動(dòng)控制器設(shè)為2.5 MHz,對(duì)于ADIN1110收發(fā)器設(shè)為20 MHz。對(duì)于TMC5160,通過(guò)調(diào)整微控制器時(shí)鐘配置并向IC提供外部時(shí)鐘信號(hào),SPI頻率可進(jìn)一步提高至8 MHz,而對(duì)于ADIN1110,數(shù)據(jù)手冊(cè)規(guī)定的最大限值為25 MHz。
對(duì)于延遲,數(shù)據(jù)請(qǐng)求和應(yīng)答幀的接收之間的總時(shí)間估計(jì)為大約4 ms(500個(gè)樣本的平均值,使用Wireshark協(xié)議分析器計(jì)算數(shù)據(jù)請(qǐng)求和相應(yīng)應(yīng)答的時(shí)間戳之間的差異來(lái)測(cè)量)。進(jìn)行了額外的評(píng)估,以確定系統(tǒng)的哪些部分對(duì)這種延遲負(fù)責(zé)。結(jié)果表明,主要原因是RTOS提供的延遲功能,該功能允許1 ms的最小延遲,用于設(shè)置TMC5160的寫和讀操作之間的間隔,而所需的延遲為幾十納秒的量級(jí)。這可以通過(guò)定義允許更短延遲間隔的不同的基于定時(shí)器的延遲函數(shù)來(lái)改善。
造成這種延遲的第二個(gè)原因是用于接收幀的Scapy函數(shù),該函數(shù)在被調(diào)用后至少需要3 ms的建立時(shí)間。在實(shí)際應(yīng)用中,這可以通過(guò)直接使用操作系統(tǒng)的網(wǎng)絡(luò)適配器驅(qū)動(dòng)程序開發(fā)接口來(lái)改進(jìn),而不是像Scapy這樣的第三方工具。然而,缺點(diǎn)包括失去與不同操作系統(tǒng)的兼容性和增加代碼復(fù)雜性。
圖。電源路徑的簡(jiǎn)化方案。
在微控制器上實(shí)現(xiàn)的回調(diào)的精確執(zhí)行時(shí)間是通過(guò)切換GPIO并用示波器測(cè)量高電平周期來(lái)測(cè)量的。測(cè)量的執(zhí)行時(shí)間包括用于讀取和解析接收到的幀以及向運(yùn)動(dòng)控制器發(fā)送命令的功能。
表1。測(cè)量的執(zhí)行時(shí)間
第二組測(cè)量用于評(píng)估使用PoDL為遠(yuǎn)程設(shè)備供電時(shí)傳輸路徑上的功率損耗。通過(guò)用設(shè)置在不同電流下的電子負(fù)載替換運(yùn)動(dòng)控制器屏蔽進(jìn)行測(cè)試,從0.1 A到0.5 A,步進(jìn)為100 mA,以確定哪些元件對(duì)功率損耗有重大影響,從而確定如何改進(jìn)設(shè)計(jì)以實(shí)現(xiàn)更高的額定電流。
表二。系統(tǒng)效率
?
圖。每個(gè)無(wú)源元件的功率損耗,作為電流的函數(shù)。
結(jié)果表明,橋式整流器和肖特基二極管D2是損耗的主要來(lái)源,兩者都用于反極性保護(hù)。這兩個(gè)元件都可以用基于MOSFET晶體管和理想二極管控制器的類似電路來(lái)代替,以獲得更高的效率,而不會(huì)失去這種類型的保護(hù)。在較高電流下,用于輸入和輸出電源濾波的耦合電感的DC電阻的貢獻(xiàn)占主導(dǎo)地位,因此為了提高電流能力,還需要具有較高額定電流的類似電感。
結(jié)論
工業(yè)4.0正在拓展智能自動(dòng)化的邊界。ADI Trinamic技術(shù)與ADIN1100、ADIN1110和10BASE-T1L收發(fā)器配合使用,可在距離控制器1700米的范圍內(nèi)遠(yuǎn)程控制傳感器和執(zhí)行器,無(wú)需在邊緣供電。通過(guò)一種可靠的遠(yuǎn)程控制方法,步進(jìn)電機(jī)可以很容易地在更遠(yuǎn)距離進(jìn)行實(shí)時(shí)控制,而不會(huì)犧牲任何性能或速度。系統(tǒng)解決方案為工業(yè)轉(zhuǎn)型鋪平了道路,這種轉(zhuǎn)型承諾前所未有的響應(yīng)時(shí)間和最大的性能。
審核編輯:黃飛
評(píng)論
查看更多