【導(dǎo)讀】具有靈活數(shù)據(jù)速率的控制器局域網(wǎng)(CAN FD)支持更高帶寬通信,從而滿足工業(yè)自動(dòng)化、HVAC、農(nóng)業(yè)和醫(yī)療健康領(lǐng)域的多節(jié)點(diǎn)網(wǎng)絡(luò)應(yīng)用需求。圖1所示的電路通過與現(xiàn)有串行外設(shè)接口(SPI)總線連接,能夠在Arduino Uno型平臺(tái)上實(shí)現(xiàn)高達(dá)8 Mbps的CAN FD總線連接數(shù)據(jù)速率。
評(píng)估和設(shè)計(jì)支持
電路評(píng)估板
CN-0401電路評(píng)估板(EVAL-ADM3055E-ARDZ)
超低功耗Arduino尺寸開發(fā)板(EVAL-ADICUP3029)
設(shè)計(jì)和集成文件
原理圖、布局文件、物料清單與軟件
電路功能與優(yōu)勢(shì)
具有靈活數(shù)據(jù)速率的控制器局域網(wǎng)(CAN FD)支持更高帶寬通信,從而滿足工業(yè)自動(dòng)化、HVAC、農(nóng)業(yè)和醫(yī)療健康領(lǐng)域的多節(jié)點(diǎn)網(wǎng)絡(luò)應(yīng)用需求。圖1所示的電路通過與現(xiàn)有串行外設(shè)接口(SPI)總線連接,能夠在Arduino Uno型平臺(tái)上實(shí)現(xiàn)高達(dá)8 Mbps的CAN FD總線連接數(shù)據(jù)速率。
CAN FD收發(fā)器具有集成信號(hào)和電源增強(qiáng)隔離功能。集成隔離式DC-DC轉(zhuǎn)換器從邏輯端獲取電源,為總線端隔離通道和收發(fā)器供電,因此CAN FD總線不需要外部電源。
隔離型收發(fā)器具有出色的EMC穩(wěn)健性?!?5 V的擴(kuò)展共模范圍超過ISO11898-2:2016的要求,且對(duì)接收CAN幀時(shí)產(chǎn)生的局部接地電位差具有較高耐受能力。集成ESD保護(hù)功能在CANH和CANL總線引腳上提供IEC 61000-4-2 ESD保護(hù)。差分總線引腳可承受24 V系統(tǒng)的接線錯(cuò)誤和短路,并在CANH和CANL引腳上提供±40 V故障保護(hù)。
CAN總線可連接兩個(gè)或數(shù)百個(gè)節(jié)點(diǎn)。根據(jù)應(yīng)用要求,可使用不同類型的電纜進(jìn)行連接。電纜可以是Cat5e電纜等較低成本的非屏蔽雙絞線,也可以是PROFIBUS電纜等更高質(zhì)量的屏蔽電纜。對(duì)于任何類型的電纜,理想的CAN總線以菊花鏈模式連接各節(jié)點(diǎn),并在兩端提供端接。可通過螺絲端子或CAN CiA 303-1插頭9引腳sub-D端口與總線進(jìn)行連接。
為實(shí)現(xiàn)總線末端端接,電路中使用集成輔助隔離數(shù)字通道對(duì)總線端接進(jìn)行運(yùn)行時(shí)配置??汕袚Q端接電路在CAN總線線路之間連接120Ω帶共模濾波電容的分離式端接??汕袚Q端接允許在改變CAN總線時(shí),對(duì)端接位置進(jìn)行軟件配置。使用可切換端接,只需修改軟件,每個(gè)板即可用于信號(hào)路徑上的任何節(jié)點(diǎn)。
此外,可通過軟件在運(yùn)行時(shí)對(duì)電路進(jìn)行配置,從而進(jìn)入較低功耗待機(jī)模式。在該狀態(tài)下,只有從遠(yuǎn)程節(jié)點(diǎn)接收到ISO11898-2:2016定義的遠(yuǎn)程喚醒序列后,隔離式CAN FD收發(fā)器才會(huì)做出響應(yīng)。
圖1.EVAL-ADM3055E-ARDZ的簡(jiǎn)化原理圖
電路描述
CAN FD協(xié)議
CAN是一種強(qiáng)大的通信網(wǎng)絡(luò),無需在單個(gè)微控制器之間進(jìn)行點(diǎn)對(duì)點(diǎn)布線。
每個(gè)節(jié)點(diǎn)都連接在一根雙絞線上,而不是連接必須相互共享信息的每個(gè)點(diǎn)(或CAN術(shù)語(yǔ)中的節(jié)點(diǎn))。這種配置降低了布線成本和復(fù)雜性。與很多其他協(xié)議不同,CAN是多主機(jī)協(xié)議,節(jié)點(diǎn)的物理位置并不能決定哪個(gè)節(jié)點(diǎn)在CAN總線上優(yōu)先。在SPI、I2C或RS-485中,由一個(gè)節(jié)點(diǎn)負(fù)責(zé)控制和服務(wù)網(wǎng)絡(luò),而在CAN總線上則不存在這種主從關(guān)系。相反,由消息ID或消息編程重要性決定了控制總線的節(jié)點(diǎn)的優(yōu)先級(jí)。單個(gè)節(jié)點(diǎn)可發(fā)送消息或各種優(yōu)先級(jí)。AN-1123應(yīng)用筆記《控制器局域網(wǎng)(CAN)實(shí)施指南》提供了有關(guān)這方面的更多詳細(xì)信息。
兼容CAN FD的控制器向后兼容傳統(tǒng)CAN,并可接納傳統(tǒng)CAN框架。在同一網(wǎng)絡(luò)上,可以讓一組節(jié)點(diǎn)與傳統(tǒng)CAN通信,而其他節(jié)點(diǎn)與CAN FD通信。不過,在添加CAN FD節(jié)點(diǎn)時(shí),必須考慮現(xiàn)有CAN控制器的陳舊年份。原有的傳統(tǒng)CAN控制器可能會(huì)將CAN FD幀的仲裁階段識(shí)別為錯(cuò)誤,并產(chǎn)生一個(gè)覆蓋CAN FD幀的錯(cuò)誤幀。這樣的控制器會(huì)導(dǎo)致CAN FD通信無法進(jìn)行。這些控制器需要更換,或限制未來節(jié)點(diǎn)使用傳統(tǒng)CAN。該電路中的控制器MCP2518FD可在傳統(tǒng)CAN或CAN FD模式下運(yùn)行。在傳統(tǒng)CAN模式下工作時(shí),它可以接納CAN FD幀。
快速環(huán)路延遲和高速數(shù)據(jù)速率
CAN的一個(gè)顯著特點(diǎn)是每個(gè)CAN幀開始時(shí)都有仲裁階段。節(jié)點(diǎn)之間相互仲裁,通過各自傳輸一串顯性和隱性位元,來確定消息傳輸優(yōu)先級(jí)。每個(gè)位元在整個(gè)網(wǎng)絡(luò)中傳輸都需要一定的時(shí)間,每個(gè)參與仲裁的節(jié)點(diǎn)都必須有足夠的時(shí)間做出響應(yīng)。這意味著在仲裁階段,最大數(shù)據(jù)傳輸速率受限于網(wǎng)絡(luò)上任意兩個(gè)CAN控制器之間最長(zhǎng)的總信號(hào)傳輸時(shí)間。
如圖2所示,信號(hào)路徑從節(jié)點(diǎn)A CAN控制器開始傳輸時(shí)開始。信號(hào)首先通過節(jié)點(diǎn)A發(fā)送器,然后在電纜上傳輸,再通過最遠(yuǎn)節(jié)點(diǎn)的接收器,最后到達(dá)最遠(yuǎn)的CAN控制器。在仲裁階段,接收節(jié)點(diǎn)可能也在發(fā)送信號(hào),因此還必須考慮從節(jié)點(diǎn)B到節(jié)點(diǎn)A的信號(hào)傳輸延遲。這種傳輸延遲的最壞情況決定仲裁階段的絕對(duì)最大數(shù)據(jù)傳輸速率。
圖2.CAN總線的總傳輸延遲
總線線路的傳輸延遲隨電纜長(zhǎng)度和結(jié)構(gòu)而增加。電纜長(zhǎng)度通常由節(jié)點(diǎn)所在的物理位置決定,因此這部分信號(hào)傳輸延遲基本上是固定的。通過收發(fā)器接收和發(fā)送電路的傳輸延遲稱為環(huán)路延遲。ADM3055E的最大環(huán)路延遲僅為150 ns,處于行業(yè)先進(jìn)水平,這使得網(wǎng)絡(luò)設(shè)計(jì)人員可以減少用于收發(fā)器的比特時(shí)間。這些節(jié)省的時(shí)間可轉(zhuǎn)化為更高的仲裁數(shù)據(jù)速率、更長(zhǎng)的總線電纜或更長(zhǎng)的總線信號(hào)建立時(shí)間,從而在任何仲裁數(shù)據(jù)速率下提高通信穩(wěn)健性。有關(guān)總傳輸延遲和優(yōu)化CAN網(wǎng)絡(luò)的更多詳情,請(qǐng)參閱《模擬對(duì)話》文章《配置控制器局域網(wǎng)絡(luò)(CAN)位時(shí)序,優(yōu)化系統(tǒng)性能》。
相比之下,CAN FD幀數(shù)據(jù)階段的最大數(shù)據(jù)速率并不是由傳輸延遲決定的,而是由網(wǎng)絡(luò)信號(hào)質(zhì)量決定的。阻抗失配和電纜分支造成的反射是限制多節(jié)點(diǎn)網(wǎng)絡(luò)數(shù)據(jù)傳輸速率的因素之一。隨著CAN FD多節(jié)點(diǎn)網(wǎng)絡(luò)投入使用,大多數(shù)通常都會(huì)保守地選擇2 Mbps的數(shù)據(jù)傳輸速率。ADM3055E信號(hào)和電源隔離收發(fā)器的數(shù)據(jù)傳輸速率可高達(dá)12 Mbps,支持點(diǎn)對(duì)點(diǎn)連接的快速數(shù)據(jù)傳輸,并使多節(jié)點(diǎn)網(wǎng)絡(luò)適應(yīng)未來更快的數(shù)據(jù)傳輸速率要求。
待機(jī)模式和遠(yuǎn)程喚醒
CAN FD控制器和隔離型CAN FD收發(fā)器可通過SPI總線由開發(fā)平臺(tái)發(fā)出的命令,設(shè)置為待機(jī)模式。CAN FD控制器會(huì)將自身和隔離型CAN FD收發(fā)器設(shè)置為待機(jī)模式。在待機(jī)模式下,收發(fā)器的發(fā)送功能會(huì)禁用,其輸出將設(shè)置為高阻抗?fàn)顟B(tài)。
收發(fā)器只能由本地CAN FD控制器退出待機(jī)模式,但收發(fā)器會(huì)響應(yīng)其他節(jié)點(diǎn)發(fā)出的遠(yuǎn)程喚醒呼叫。ISO11898-2:2016和ADM3055E數(shù)據(jù)手冊(cè)中定義了遠(yuǎn)程喚醒模式。該模式可以在無數(shù)據(jù)幀的仲裁字段中發(fā)送,也可以在數(shù)據(jù)字段中發(fā)送。它必須滿足收發(fā)器的時(shí)序要求。當(dāng)接收到遠(yuǎn)程喚醒模式時(shí),ADM3055E收發(fā)器的RXD引腳會(huì)切換,以響應(yīng)CAN FD總線上的低速數(shù)據(jù)。
RXD引腳上的狀態(tài)變化用于觸發(fā)CAN FD控制器的中斷。當(dāng)ADM3055E接收到遠(yuǎn)程喚醒模式時(shí),它不會(huì)退出待機(jī)模式。然后,由開發(fā)設(shè)置決定是否響應(yīng)或切換收發(fā)器的待機(jī)引腳,以停止接收低速數(shù)據(jù)并返回待機(jī)模式,直到再次接收到遠(yuǎn)程喚醒模式。在待機(jī)模式下,收發(fā)器的隔離輔助通道會(huì)鎖定在最后一個(gè)狀態(tài),其集成的isoPower?隔離直流-直流轉(zhuǎn)換器繼續(xù)工作,為總線側(cè)電路供電。
隔離
惡劣的環(huán)境、長(zhǎng)時(shí)間的物理分隔,以及節(jié)點(diǎn)之間不同的電源都會(huì)導(dǎo)致局部接地電位不同,并且是經(jīng)常如此。不同的局部接地電位會(huì)導(dǎo)致電流流經(jīng)地線,從而引起共模偏移和噪聲。隔離物理總線線路可斷開接地環(huán)路,并消除這些問題。ADM3055E可斷開接地環(huán)路,并已通過CAN FD節(jié)點(diǎn)和CAN總線線路之間5 kV rms信號(hào)和電源隔離的系統(tǒng)級(jí)安全認(rèn)證。
可切換端接
為獲得良好的信號(hào)完整性,應(yīng)在CAN總線兩端實(shí)施端接。可切換端接允許軟件配置端接的位置。軟件控制對(duì)于由于增加或刪除節(jié)點(diǎn)而導(dǎo)致對(duì)CAN總線進(jìn)行即時(shí)網(wǎng)絡(luò)重新配置時(shí),非常有用。
為盡可能提高網(wǎng)絡(luò)可靠性,端接電路不得限制共模范圍。端接電路還必須不受信號(hào)共模范圍的影響,或者更具體地說,端接電路必須在設(shè)置為“關(guān)”時(shí)保持關(guān)閉,設(shè)置為“開”時(shí)保持開啟。為了滿足所需的電路特性,EVAL-ADM3055E-ARDZ評(píng)估板上的端接電路使用非常緊湊的光隔離SPST固態(tài)繼電器(SSR),隨傳輸節(jié)點(diǎn)浮動(dòng)。
通過ADM3055E的輔助隔離通道控制繼電器,意味著繼電器不會(huì)橋接隔離間隙。由于繼電器不會(huì)橋接隔離間隙,因此無需提供安全隔離功能,并可選擇盡可能小的封裝,以節(jié)省印刷電路板(PCB)面積。
120Ω端接電阻可通過單個(gè)電阻實(shí)現(xiàn)。不過,將單個(gè)電阻分成兩個(gè)串聯(lián)的60 Ω電阻可為暴露在CAN總線上的兩個(gè)繼電器引腳提供低成本的靜電放電(ESD)保護(hù)。利用第二個(gè)SSR實(shí)現(xiàn)可切換端接電路,還可增加一個(gè)濾波電容。增加的這個(gè)電容與分路端接電阻一起提供低通濾波器,以減少CAN總線上的共模噪聲。
圖3.可切換120 Ω端接電阻,使用通過輔助通道進(jìn)行控制的PhotoMOS繼電器
靜音模式和斜率控制模式
CN-0401電路還支持通過軟件可配置試錯(cuò),并配合收發(fā)器的靜音模式來發(fā)現(xiàn)總線波特率。靜音模式會(huì)禁用收發(fā)器的發(fā)送通道,允許CAN控制器在嘗試與總線數(shù)據(jù)速率同步時(shí)產(chǎn)生錯(cuò)誤幀,但不會(huì)因這些錯(cuò)誤幀而中斷總線通信。
通過CN-0401電路可以訪問ADM3055E斜坡控制模式。對(duì)于低速信令,斜率控制可降低CANH和CANL從隱性到顯性變遷的擺率。降低擺率可有效減少快速邊沿引起的振鈴和電磁干擾(EMI)。請(qǐng)勿將斜率控制模式用于高速信令。
CAN FD控制器
EVAL-ADM3055E-ARDZ使用MCP2518FD外部CAN FD控制器。該控制器和ADM3055E收發(fā)器兼容傳統(tǒng)CAN、CAN 2.0B和CAN FD。加入CAN或CAN 2.0B需要更改軟件。
獨(dú)立式CAN控制器和ADM3055E為系統(tǒng)設(shè)計(jì)人員提供了一個(gè)便利的選項(xiàng),只需連接到通用的SPI端口,即可在現(xiàn)有設(shè)計(jì)中添加一個(gè)或多個(gè)隔離CAN端口。MCP2518FD支持的最大CAN FD數(shù)據(jù)速率為8 Mbps。參見MCP2518FD數(shù)據(jù)手冊(cè)獲取更多信息。
常見變化
EVAL-ADM3055E-ARDZ使用ADM3055E收發(fā)器。這種增強(qiáng)型信號(hào)和電源隔離收發(fā)器的額定過電壓為1分鐘5kv rms。封裝的最小爬電距離為8.3毫米,符合強(qiáng)化安全標(biāo)準(zhǔn)。對(duì)于需要較低隔離能力和優(yōu)先考慮電路板布局空間的應(yīng)用,可以使用ADM3057E。對(duì)于具有總線側(cè)電源的應(yīng)用,ADM3056E是一種增強(qiáng)型信號(hào)隔離解決方案。
電路評(píng)估與測(cè)試
本節(jié)概述了使用EVAL-ADICUP3029對(duì)EVAL-ADM3055E-ARDZ進(jìn)行簡(jiǎn)單評(píng)估的程序。有關(guān)硬件和軟件設(shè)置的更多信息,請(qǐng)?jiān)L問EVAL-ADM3055E-ARDZ用戶指南(CN0401 (EVAL-ADM3055E-ARDZ) 擴(kuò)展板概述)。
設(shè)備要求
● 帶USB端口和Windows? 7(32位)或更高版本的PC
● 串行終端(例如PuTTY或Tera Term)
● 兩個(gè)EVAL-ADM3055E-ARDZ電路評(píng)估板
● 兩個(gè)EVAL-ADICUP3029開發(fā)板
● CrossCore? Embedded Studio或預(yù)構(gòu)建的.hex文件
開始使用
1.在CrossCore Embedded Studio中打開CN0401項(xiàng)目。
2.檢查所有用戶定義設(shè)置是否正確,詳見EVAL-ADM3055E-ARDZ用戶指南。
3.構(gòu)建項(xiàng)目并將項(xiàng)目上傳到ADICUP3029板(也可將預(yù)構(gòu)建的hex文件復(fù)制(拖放)到ADICUP3029板的大容量存儲(chǔ)設(shè)備中)。
功能框圖
圖4所示為測(cè)試設(shè)置的功能框圖。PCB系留節(jié)點(diǎn)軟件設(shè)置一個(gè)命令行界面(CLI),該界面通過PC中運(yùn)行的串行終端發(fā)出指令。通過串行終端,用戶可以命令其他節(jié)點(diǎn)并發(fā)送遠(yuǎn)程喚醒消息。
圖4.EVAL-ADM3055E-ARDZ功能測(cè)試框圖
測(cè)試設(shè)置
如圖5所示,使用Arduino兼容接頭將EVAL-ADM3055E-ARDZ安裝在EVAL-ADICUP3029上,即可設(shè)置CAN節(jié)點(diǎn)。
圖5.使用EVAL-ADM3055E-ARDZ和EVAL-ADICUP3029設(shè)置CAN節(jié)點(diǎn)
通信和遠(yuǎn)程喚醒測(cè)試
在兩個(gè)不同的CAN節(jié)點(diǎn)上構(gòu)建并加載示例軟件后,兩塊板(連接后)通過CAN FD連接相互通信。圖6所示為雙節(jié)點(diǎn)CAN連接。
圖6.雙節(jié)點(diǎn)CAN連接測(cè)試設(shè)置
默認(rèn)仲裁和數(shù)據(jù)傳輸速度分別為500 kbps和2 Mbps。電路板通過USB電纜連接到PC,每個(gè)節(jié)點(diǎn)都有自己的在串行終端上運(yùn)行的CLI。這種配置在設(shè)備之間建立雙向CAN FD通信,并且該對(duì)設(shè)備成為CAN總線上的兩個(gè)獨(dú)立節(jié)點(diǎn)。
起初,所有設(shè)備都處于休眠模式,但可以通過CLI命令喚醒,并在CAN總線上發(fā)送ASCII消息。消息傳輸?shù)某瑫r(shí)時(shí)間為5秒,并且會(huì)重復(fù)發(fā)送,直到另一個(gè)節(jié)點(diǎn)確認(rèn)為止。此消息(尤其是較慢的仲裁階段)會(huì)喚醒另一個(gè)節(jié)點(diǎn),后者會(huì)確認(rèn)消息并在該節(jié)點(diǎn)的串行終端接口上顯示該消息。然后,兩個(gè)節(jié)點(diǎn)重新進(jìn)入休眠狀態(tài)。
當(dāng)連接到PC時(shí),可以命令每個(gè)CAN節(jié)點(diǎn)執(zhí)行通信環(huán)回測(cè)試。CAN控制器將置于外部環(huán)回模式,其中發(fā)送線路在內(nèi)部連接到接收線路。CAN發(fā)送自定義消息,并檢查是否收到相同的消息。如果接收到環(huán)回消息,則在CLI上以ASCII字符形式顯示消息,ADICUP3029上的LED會(huì)閃爍。圖7所示為串行終端接收到的消息截圖。
圖7.串行終端中顯示的消息截圖
了解更多
CN-0401設(shè)計(jì)支持包
Watterson,Conal。AN-1123應(yīng)用筆記《控制器局域網(wǎng)(CAN)實(shí)施指南》。ADI公司2012年。
Watterson,Conal。配置控制器局域網(wǎng)絡(luò)(CAN)位時(shí)序,優(yōu)化系統(tǒng)性能?!赌M對(duì)話》第48卷。ADI公司2014年。
CAN in Automation (CiA)網(wǎng)站上提供的其他資源。
數(shù)據(jù)手冊(cè)和評(píng)估板
ADM3055E數(shù)據(jù)手冊(cè)。
CN0401 (EVAL-ADM3055E-ARDZ)擴(kuò)展板概述
ADICUP3029開發(fā)板(EVAL-ADICUP3029)用戶指南
關(guān)于ADI公司
Analog Devices, Inc. (NASDAQ: ADI)是全球領(lǐng)先的半導(dǎo)體公司,致力于在現(xiàn)實(shí)世界與數(shù)字世界之間架起橋梁,以實(shí)現(xiàn)智能邊緣領(lǐng)域的突破性創(chuàng)新。ADI提供結(jié)合模擬、數(shù)字和軟件技術(shù)的解決方案,推動(dòng)數(shù)字化工廠、汽車和數(shù)字醫(yī)療等領(lǐng)域的持續(xù)發(fā)展,應(yīng)對(duì)氣候變化挑戰(zhàn),并建立人與世界萬物的可靠互聯(lián)。ADI公司2022財(cái)年收入超過120億美元,全球員工2.4萬余人。攜手全球12.5萬家客戶,ADI助力創(chuàng)新者不斷超越一切可能。更多信息,請(qǐng)?jiān)L問www.analog.com/cn。
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請(qǐng)聯(lián)系小編進(jìn)行處理。
推薦閱讀:
高壓數(shù)字控制應(yīng)用中實(shí)現(xiàn)安全隔離與低功耗的解決方案