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