www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]CAN 總線允許高達(dá)1M bit /s通訊速率, 支持多主通訊模式, 有高抗電磁干擾性而且能夠檢測(cè)出通信過程中產(chǎn)生的任何錯(cuò)誤, 已被廣泛應(yīng)用到各自動(dòng)化控制系統(tǒng)中。

CAN 總線允許高達(dá)1M bit /s通訊速率, 支持多主通訊模式, 有高抗電磁干擾性而且能夠檢測(cè)出通信過程中產(chǎn)生的任何錯(cuò)誤, 已被廣泛應(yīng)用到各自動(dòng)化控制系統(tǒng)中。在項(xiàng)目的特殊環(huán)境要求下, CAN總線通信要求使用FPGA作為系統(tǒng)中的主控制器, 較之傳統(tǒng)設(shè)計(jì)使用的單片機(jī), FPGA能夠在速度和體積上有更好的適應(yīng)性。FPGA 一方面減少了電路板的復(fù)雜程度, 縮短了實(shí)現(xiàn)周期;另一方面, 其豐富的資源、超高的性能和靈活的可編程性, 提高了整個(gè)設(shè)備的可靠性, 大大增強(qiáng)了電路板設(shè)計(jì)的靈活性和可擴(kuò)展性。文中通過設(shè)計(jì)FPGA 的接口電路, 并利用Verilog語言來編程實(shí)現(xiàn)CAN節(jié)點(diǎn)之間的通信功能。

CAN總線控制器實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898–1的所有低級(jí)功能,同時(shí)收發(fā)器與物理層通信。不同的物理層需要不同的收發(fā)器,如高速can、低速容錯(cuò)can、高速可變數(shù)據(jù)速率can。

在一個(gè)典型的實(shí)現(xiàn)中,CAN總線控制器和微處理器被統(tǒng)一成一個(gè)啟用CAN的微控制器。市面上有帶SPI接口的外部CAN總線控制器,主要由微芯片制造,但它們往往會(huì)增加不必要的成本和復(fù)雜性。

在本文中,我們將研究從收發(fā)器到can總線連接器的電路設(shè)計(jì)。是時(shí)候把我們的手弄臟,設(shè)計(jì)我們的CAN總線電路!

第一步-選擇正確的IC

所有的CAN總線收發(fā)器的工作原理類似,因?yàn)樗鼈兾挥趯?shí)現(xiàn)CAN總線控制器的微控制器(或FPGA)和CAN總線本身之間。不過,還是有一些不同之處,你應(yīng)該仔細(xì)考慮。

快速搜索合適的八角分類揭示了CAN總線收發(fā)器的主要制造商按提供的集成電路數(shù)量降序排列為NXP半導(dǎo)體、微晶片、德州儀器、Maxim Integrated、模擬器件和ST微電子。

所有這些收發(fā)器看起來都很相似,但它們的特性和性能卻各不相同。

ESD保護(hù)

市場(chǎng)上第一個(gè)CAN總線收發(fā)器包括很少的ESD(靜電放電)事件保護(hù)。它們要求所有的I/O保護(hù)都要用外部組件來實(shí)現(xiàn)。

在實(shí)際選型過程中,我們需關(guān)注CMC的多個(gè)關(guān)鍵特性,包括電感值、漏感(leakage inductance)、直流電阻(DC resistance)以及模式轉(zhuǎn)換特性(mode conversion characteristics),以確保所選CMC能夠最優(yōu)化地滿足系統(tǒng)的EMC需求。

1.1、電感值

在選取CMC電感值時(shí),我們首要考慮的是其對(duì)總線共模噪聲的抑制能力。為了有效抑制共模噪聲,CMC在共模噪聲頻率處應(yīng)具備盡可能高的電感值,從而呈現(xiàn)高阻抗?fàn)顟B(tài),阻止噪聲傳播。然而,電感值的選擇并非越大越好,過大的電感值會(huì)帶來尺寸和成本上的挑戰(zhàn)。

綜合考慮,針對(duì)500kbps的CAN通信,推薦使用51uH電感值的CMC;而對(duì)于2Mbps的CAN FD通訊,則建議采用100uH電感值的CMC,以實(shí)現(xiàn)共模噪聲的有效抑制并兼顧尺寸與成本。

1.2、泄漏電感

泄漏電感,亦稱為差模電感,對(duì)差模信號(hào)具有一定的抑制效果。然而,過大的泄漏電感可能會(huì)引發(fā)CAN信號(hào)的振鈴現(xiàn)象,從而干擾CAN總線的正常通訊。與此同時(shí),適量的泄漏電感又能有效抑制CAN總線中的差模電流,進(jìn)而提升系統(tǒng)的整體EMI性能。

因此,在權(quán)衡泄漏電感的影響時(shí),我們應(yīng)確保其既能發(fā)揮差模抑制作用,又不至于在總線信號(hào)上產(chǎn)生顯著的振鈴,確保CAN總線的正常通訊不受干擾。適度的泄漏電感對(duì)于優(yōu)化系統(tǒng)性能是有益的。

1.3、直流電阻

共模電感的直流電阻對(duì)總線信號(hào)的損耗具有直接影響。隨著直流電阻的增大,總線信號(hào)的損耗也會(huì)相應(yīng)增加,從而導(dǎo)致傳輸效率降低。因此,在確定了共模電感的電感值之后,選擇直流電阻盡可能小的CMC顯得尤為重要。

這樣做可以有效減少總線信號(hào)的損耗,提高信號(hào)傳輸效率,確保CAN總線通信的穩(wěn)定性和可靠性。

1.4、CMC的模式轉(zhuǎn)換特性

共模電感的模式轉(zhuǎn)換特性揭示了其上下線圈的對(duì)稱程度,這一特性通過Ssd12/Sds21參數(shù)來衡量。當(dāng)Ssd12/Sds21參數(shù)的差異較大時(shí),意味著模式轉(zhuǎn)換特性更為顯著,可能表明CMC的上下線圈存在較大的不對(duì)稱性。這種不對(duì)稱性會(huì)在CAN總線通信過程中引入額外的共模噪聲,從而降低CMC的EMI濾波效能。因此,在選擇CMC時(shí),我們應(yīng)傾向于選擇那些Ssd12/Sds21參數(shù)接近的器件,以優(yōu)化EMI性能。

如下圖所示的DLW32SH101XF2阻抗與頻率特性曲線,清晰地展示了CMC在共模噪聲頻率下的高共模阻抗Zc,這有助于有效抑制共模噪聲。同時(shí),在CAN總線通信頻段內(nèi),CMC保持了較低的差模阻抗Zd,確保在抑制共模噪聲的同時(shí),不會(huì)對(duì)總線的正常通訊造成不利影響。

在CAN網(wǎng)絡(luò)的正常通信過程中,若總線遭遇異常故障,例如短路至BAT或Vcc,CMC的存在可能導(dǎo)致總線上產(chǎn)生接近或超出總線耐受電壓的瞬態(tài)電壓。對(duì)于NOVOSENSE系列的CAN收發(fā)器而言,此類因總線短路而在CMC上產(chǎn)生的瞬態(tài)過壓,恰好滿足芯片總線引腳內(nèi)部ESD防護(hù)電路的啟動(dòng)條件。

因此,由CMC感生的過壓能量將通過內(nèi)部ESD防護(hù)電路得到完全泄放,確保芯片免受任何損害,從而保障了收發(fā)器的可靠性和穩(wěn)定性。

1 CAN 接口硬件設(shè)計(jì)

1.1 CAN 節(jié)點(diǎn)的系統(tǒng)構(gòu)成

一般來說, 每個(gè)CAN 模塊能夠被分成3 個(gè)不同的功能塊,其結(jié)構(gòu)如圖1所示。CAN總線收發(fā)器提供CAN協(xié)議控制器與物理總線之間的接口, 控制從CAN 控制器到總線物理層或相反的邏輯電平信號(hào)。它的性能決定了總線接口、總線終端、總線長(zhǎng)度和節(jié)點(diǎn)數(shù), 是影響整個(gè)總線網(wǎng)絡(luò)通信性能的關(guān)鍵因素之一。CAN 控制器執(zhí)行在CAN 規(guī)范里規(guī)定的完整的CAN 協(xié)議, 它通常用于報(bào)文緩沖和驗(yàn)收濾波, 對(duì)外具有與主控制器和總線收發(fā)器的接口。主控制器負(fù)責(zé)執(zhí)行應(yīng)用的功能, 例如控制命令的發(fā)送、讀傳感器和處理人機(jī)接口等。它通過對(duì)CAN 控制器進(jìn)行編程, 來控制CAN 總線的工作方式和工作狀態(tài), 以及進(jìn)行數(shù)據(jù)的發(fā)送和接收。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖1 CAN 模塊系統(tǒng)構(gòu)成

1.2 接口電路設(shè)計(jì)

接口電路如圖2所示。SJA1000的AD0~ AD7地址數(shù)據(jù)復(fù)用端口、ALE地址鎖存端口、RD、WR、片選CS端口均通過轉(zhuǎn)換芯片與FPGA的I /O口相連。SJA1000 的中斷輸出信號(hào)INT連入FPGA, 使CAN通信可以采用中斷或查詢方式。RST 端口的電路實(shí)現(xiàn)SJA1000的上電自動(dòng)復(fù)位功能。MODE 模式選擇端接+ 5 V, 設(shè)置SJA1000控制器為Intel模式。SJA1000 的時(shí)鐘晶振采用16MH z, 頻率調(diào)整電容取15 pF. R16為終端電阻,設(shè)計(jì)中取120Ω。CAN 驅(qū)動(dòng)器PCA82C250 的RS腳為工作模式選擇位, 接地工作于高速模式, 接高工作于待機(jī)模式。系統(tǒng)通過電阻R14將芯片設(shè)定于斜率控制模式, 電阻值為47 kΩ , 這時(shí)CAN 總線應(yīng)工作于低速模式, 可提高CAN 總線抵抗射頻干擾的能力。在這種情況下, 可直接使用非屏蔽雙絞線作為總線。

設(shè)計(jì)中有2點(diǎn)需要特別注意:點(diǎn)是FPGA 并沒有與SJA1000直接相連。這是因?yàn)閷?duì)于設(shè)計(jì)選取的FPGAXCV600, 其接口電平不支持5 V TTL的I/O 標(biāo)準(zhǔn), 如果與5 VI/O標(biāo)準(zhǔn)的SJA1000直接相連, 將可能導(dǎo)致FPGA 管腳電流過大, 造成器件鎖死或者燒毀。為此采用雙向總線收發(fā)器74ALVC164245, 把SJA1000的5 V TTL電平信號(hào)AD0 ~ AD7、ALE 轉(zhuǎn)換成3.3 V I/O 標(biāo)準(zhǔn)信號(hào), 連接到FPGA 的引腳上。74ALVC164245 有2個(gè)8位電平轉(zhuǎn)換端口, 可獨(dú)立操作。其中電平信號(hào)AD0~ AD7必須按順序連接在總線收發(fā)器的一個(gè)8位端口上, 不可以分開。第二點(diǎn)是:在CAN 控制器與收發(fā)器之間不采用光電隔離。這是因?yàn)樵黾庸怆姼綦x雖然能增強(qiáng)系統(tǒng)的抗干擾能力, 但也會(huì)增加CAN 總線有效回路信號(hào)的傳輸延遲時(shí)間, 導(dǎo)致通信速率或距離減少。82C250等型號(hào)的CAN 收發(fā)器本身具備瞬間抗干擾、降低射頻干擾( RFI)以及實(shí)現(xiàn)熱防護(hù)的能力, 它具有的電流限制電路還提供了對(duì)總線的進(jìn)一步保護(hù)功能。如果現(xiàn)場(chǎng)傳輸距離近、電磁干擾小, 可以不采用光電隔離, 以使系統(tǒng)達(dá)到的通信速率或距離。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖2 接口電路

2 系統(tǒng)軟件設(shè)計(jì)

2.1 設(shè)計(jì)流程

FPGA對(duì)CAN 總線通訊模塊的控制主要包括3 部分:CAN總線節(jié)點(diǎn)初始化、報(bào)文發(fā)送和報(bào)文接收。由于通訊模塊對(duì)接收數(shù)據(jù)的實(shí)時(shí)性要求并不是很高, 因此CAN 總線的數(shù)據(jù)接收和發(fā)送采用查詢方式。

2.1.1 初始化過程

系統(tǒng)上電后首先對(duì)82C250 和S JA1000 進(jìn)行初始化, 以確定工作主頻、波特率、輸出特性等。SJA1000的初始化只有在復(fù)位模式下才可以進(jìn)行, 初始化主要包括工作方式的設(shè)置、驗(yàn)收濾波方式的設(shè)置、驗(yàn)收屏蔽寄存器( AMR )和驗(yàn)收代碼寄存器( ACR)的設(shè)置、波特率參數(shù)設(shè)置和中斷允許寄存器( IER) 的設(shè)置等。在完成SJA1000 的初始化設(shè)置以后, SJA1000 就可以回到工作狀態(tài), 進(jìn)行正常的通信任務(wù)。設(shè)計(jì)中使SJA1000工作在PeliCan的方式下。

2.1.2 發(fā)送過程

發(fā)送時(shí), 用戶只需將待發(fā)送的數(shù)據(jù)按特定的格式組合成一幀報(bào)文, 送入SJA1000發(fā)送緩沖區(qū)中, 然后啟動(dòng)SJA1000發(fā)送即可。當(dāng)然, 在往SJA1000 發(fā)送緩存區(qū)送報(bào)文之前, 必須先判斷發(fā)送緩沖區(qū)是否鎖定, 如果鎖定則等待;判斷上次發(fā)送是否完成, 未完成則等待發(fā)送完成。FPGA 通過SJA1000 向CAN 總線進(jìn)行數(shù)據(jù)發(fā)送的流程圖如圖3所示。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖3 發(fā)送數(shù)據(jù)流程圖

2.1.3 接收過程

接收子程序負(fù)責(zé)節(jié)點(diǎn)報(bào)文的接收以及其他情況處理。接收子程序比發(fā)送子程序要復(fù)雜一些, 因?yàn)樵谔幚斫邮請(qǐng)?bào)文的過程中, 同時(shí)要對(duì)諸如總線關(guān)閉、錯(cuò)誤報(bào)警、接收溢出等情況進(jìn)行處理。只有在總線正常, 沒有錯(cuò)誤報(bào)警, 并且接收緩沖區(qū)中有新報(bào)文, 才開始進(jìn)行數(shù)據(jù)接收操作。對(duì)接收緩沖區(qū)的數(shù)據(jù)讀取完畢后釋放CAN接收緩沖區(qū)。FPGA 通過SJA1000接收CAN總線上的數(shù)據(jù)流程圖如圖4所示。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖4 接收數(shù)據(jù)流程圖

2.2 FPGA 頂層模塊設(shè)計(jì)

FPGA頂層的模塊設(shè)計(jì)如圖5 所示。其中c lkdiv 模塊是將輸入的50MH z時(shí)鐘clock十分頻后作為模塊基準(zhǔn)時(shí)鐘。SJACTROL模塊是控制總線通信的主模塊, 而R&W 模塊則是根據(jù)主模塊的信號(hào)生成SJA1000所需要的讀寫時(shí)序信號(hào)。SJACTROL模塊通過start和isw r兩個(gè)信號(hào)通知R&W 模塊是否要進(jìn)行讀或?qū)懣偩€操作。若是寫操作, 則將地址和數(shù)據(jù)通過Addrout和Dataout傳遞給R&W, R&W 將負(fù)責(zé)把數(shù)據(jù)準(zhǔn)確地送到S JA1000的數(shù)據(jù)地址復(fù)用總線ADDR, 并驅(qū)動(dòng)SJA1000接收數(shù)據(jù), 在寫操作完成后發(fā)送w riteover信號(hào)通知SJACTROL寫操作完成。讀操作時(shí)R&W根據(jù)SJACTOL送來的地址, 從SJA1000的數(shù)據(jù)總線上讀取數(shù)據(jù), 并將得到的數(shù)據(jù)通過Datasave 總線返回給SJACTROL。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖5 頂層模塊設(shè)計(jì)

SJACTROL的狀態(tài)機(jī)通過5個(gè)狀態(tài)的轉(zhuǎn)換來實(shí)現(xiàn)控制:空閑狀態(tài)、初始化狀態(tài)、查詢狀態(tài)、讀狀態(tài)、寫狀態(tài)。R&W 則是按照SJA1000的芯片數(shù)據(jù)手冊(cè)進(jìn)行時(shí)序邏輯設(shè)計(jì)。在編寫模塊時(shí), 需注意雙向總線的編寫技巧。雙向口在頂層定義, 否則模塊綜合的時(shí)候容易出錯(cuò)。

3仿真結(jié)果

FPGA中利用Verilog 編程產(chǎn)生SJA1000的片選信號(hào)CS, 地址鎖存信號(hào)ALE, 讀寫信號(hào)RD、WR.這些控制信號(hào)共同驅(qū)動(dòng)SJA1000進(jìn)行數(shù)據(jù)接收和發(fā)送。設(shè)計(jì)選取的是v irtex系列的芯片, 邏輯開發(fā)在ISE 平臺(tái)上進(jìn)行。在FPGA 的調(diào)試階段, 使用xilinx的應(yīng)用軟件 ChipScope pro( 在線邏輯分析儀) 來在線觀察FPGA設(shè)計(jì)內(nèi)部信號(hào)的波形, 它比傳統(tǒng)的邏輯分析儀更方便。圖6為在線進(jìn)行數(shù)據(jù)傳送接收時(shí)的實(shí)際波形。


CAN總線控制器如何實(shí)現(xiàn)網(wǎng)絡(luò)協(xié)議ISO 11898?

圖6SJA1000接收和發(fā)送數(shù)據(jù)的時(shí)序仿真

4 結(jié)束語

通過對(duì)CAN 通信系統(tǒng)的分析, 利用FPGA作為CAN 通信節(jié)點(diǎn)的主控制單元, 對(duì)CAN 節(jié)點(diǎn)的硬件接口電路設(shè)計(jì)方案進(jìn)行了詳細(xì)的說明, 并編寫了CAN 節(jié)點(diǎn)通信流程中的初始化程序、數(shù)據(jù)發(fā)送接收程序。通過軟硬件的聯(lián)調(diào), 實(shí)現(xiàn)了CAN 總線的通信功能, 系統(tǒng)工作狀態(tài)良好。實(shí)踐證明CAN 通信節(jié)點(diǎn)采用FPGA作為控制單元, 與傳統(tǒng)的單片機(jī)設(shè)計(jì)相比, 更加靈活并且擴(kuò)展性更強(qiáng)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在電子電路設(shè)計(jì)中,確保電源的穩(wěn)定和安全至關(guān)重要。LTC4365 作為一款出色的過壓(OV)、欠壓(UV)以及反向極性故障保護(hù)控制器,在眾多領(lǐng)域得到了廣泛應(yīng)用。其能夠?yàn)殡娫摧斎腚妷嚎赡艹霈F(xiàn)過高、過低甚至負(fù)值的應(yīng)用場(chǎng)景提供可...

關(guān)鍵字: 控制器 柵極 輸出電壓

ZCC3790 作為一款同步 4 開關(guān)升降壓電壓 / 電流調(diào)節(jié)器控制器,展現(xiàn)出了強(qiáng)大的性能。它能夠在輸入電壓高于、低于或等于輸出電壓的復(fù)雜情況下,精準(zhǔn)地調(diào)節(jié)輸出電壓、輸出電流或輸入電流。其恒定頻率、電流模式架構(gòu)賦予了它靈...

關(guān)鍵字: 升降壓 控制器 寬電壓

2025年8月12日 – 專注于引入新品的全球電子元器件和工業(yè)自動(dòng)化產(chǎn)品授權(quán)代理商貿(mào)澤電子(Mouser Electronics) 是Phoenix Contact解決方案的全球授權(quán)代理商。貿(mào)澤供應(yīng)超過93,000種可訂...

關(guān)鍵字: 樓宇自動(dòng)化 控制器 連接器

在之前的文章“為機(jī)器人技術(shù)的未來發(fā)展筑牢安全防線:網(wǎng)絡(luò)安全的作用”中,我們?nèi)娼榻B了機(jī)器人控制系統(tǒng)面臨的安全挑戰(zhàn)。文章強(qiáng)調(diào)了遵守機(jī)器人行業(yè)安全標(biāo)準(zhǔn)的重要性,并探索了加強(qiáng)機(jī)器人控制系統(tǒng)保護(hù)所需的基本安全能力。此外,我們還展...

關(guān)鍵字: 機(jī)器人 PLC 控制器

工業(yè)4.0的核心是工廠自動(dòng)化,工業(yè)機(jī)器人、自主移動(dòng)機(jī)器人(AMR)和協(xié)作機(jī)器人對(duì)于實(shí)現(xiàn)現(xiàn)代工業(yè)4.0至關(guān)重要。機(jī)器人正日益智能化,協(xié)作能力不斷增強(qiáng),能夠在有人或無人干預(yù)的情況下高效完成復(fù)雜任務(wù)。隨著自動(dòng)化程度和機(jī)器人使用...

關(guān)鍵字: 機(jī)器人 工業(yè)4.0 控制器

全新 I/O 解決方案賦予制造商更大的設(shè)計(jì)自由度,打造更智能、更具適應(yīng)性更的設(shè)備

關(guān)鍵字: 控制器 I/O 系統(tǒng)

【2025年7月24日, 德國(guó)慕尼黑訊】全球功率系統(tǒng)和物聯(lián)網(wǎng)領(lǐng)域的半導(dǎo)體領(lǐng)導(dǎo)者英飛凌科技股份公司(FSE代碼:IFX / OTCQX代碼:IFNNY)近日推出新型英飛凌ID Key系列,進(jìn)一步擴(kuò)展其通用串行總線(USB)...

關(guān)鍵字: 控制器 USB 非易失性存儲(chǔ)器

挑戰(zhàn)賽鼓勵(lì)參與者利用 WL-ICLED 技術(shù)展示創(chuàng)意

關(guān)鍵字: LED 控制器

許多電源轉(zhuǎn)換應(yīng)用都需要支持寬輸入或輸出電壓范圍。ADI公司的一款大電流、高效率、全集成式四開關(guān)降壓-升壓型電源模塊可以滿足此類應(yīng)用的需求。該款器件將控制器、MOSFET、功率電感和電容集成到先進(jìn)的3D集成封裝中,實(shí)現(xiàn)了緊...

關(guān)鍵字: 穩(wěn)壓器 控制器 MOSFET

在電力電子技術(shù)飛速發(fā)展的今天,開關(guān)電源憑借高效、小型化、輕量化等優(yōu)勢(shì),廣泛應(yīng)用于通信、計(jì)算機(jī)、工業(yè)控制等領(lǐng)域。而三端 PWM 開關(guān)作為開關(guān)電源的核心控制部件,其性能直接影響著開關(guān)電源的整體表現(xiàn)。本文將深入探討三端 PWM...

關(guān)鍵字: PWM 開關(guān)電源 控制器
關(guān)閉