新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > CAN總線在自動生產(chǎn)線中的應(yīng)用

CAN總線在自動生產(chǎn)線中的應(yīng)用

作者: 時間:2016-12-20 來源:網(wǎng)絡(luò) 收藏

標(biāo)識符字節(jié)1設(shè)定發(fā)送節(jié)點/接收節(jié)點,設(shè)定內(nèi)容見表2。標(biāo)識符字節(jié)2中ID.2~ID.0(高3位)無定義取0,RTR是遠程發(fā)送請求位,低4位為數(shù)據(jù)長度碼。

表2標(biāo)識符字節(jié)1定義

報文的標(biāo)識符就象報文的名字,它在接收器的接收過濾中被用到。網(wǎng)絡(luò)上所有的節(jié)點可以通過接收過濾確定是否采用該報文。接收過濾功能是可選項,如選擇接收過濾功能,則應(yīng)將接收屏蔽寄存器中各個位設(shè)置成“相關(guān)”,如不選擇接收過濾功能,接收屏蔽寄存器中各個位應(yīng)設(shè)置成“不相關(guān)”。當(dāng)選擇了接收過濾功能時,一旦節(jié)點接收到數(shù)據(jù),則只有當(dāng)接收碼與標(biāo)識符的ID.6~ID.3相同,接收的數(shù)據(jù)才會被節(jié)點采用。

報文中數(shù)據(jù)區(qū)第1個字節(jié)的內(nèi)容設(shè)定為信息類別,第2字節(jié)為待發(fā)送的數(shù)據(jù)。信息類別根據(jù)被傳送的信息類型進行編碼,詳見表3。數(shù)據(jù)用來區(qū)分工件的黑/白顏色、正品/次品等信息。

信息類別編碼

3.2 CAN通訊節(jié)點軟件設(shè)計

CAN通訊節(jié)點的軟件設(shè)計主要包括兩個部分:CAN通訊模塊程序、站內(nèi)控制模塊程序。站內(nèi)控制模塊程序包括單片機初始化和站內(nèi)控制功能的實現(xiàn)以及對CAN子程序的調(diào)用。CAN總線通訊程序是指在單片機的控制下將本節(jié)點的數(shù)據(jù)發(fā)送到總線上,以及接收總線上發(fā)送給本節(jié)點的信息并將其存人單片機,主要包括CAN總線控制器sJAlooo的初始化、報文發(fā)送和報文接收3個部分。CAN通訊的數(shù)據(jù)傳輸按照用戶自定義通訊協(xié)議的格式進行。

第2站(搬運站)的CAN通訊數(shù)據(jù)幀定義見表4。

表4搬運站CAN通訊數(shù)據(jù)幀定義

3.2.1 CAN初始化子程序流程

CAN控制器初始化是CAN總線系統(tǒng)正常工作的前提,CAN控制器SJAlooO的初始化設(shè)置是在復(fù)位模式下進行的。由于篇幅關(guān)系,本文不作詳細說明。

3.2.2 CAN發(fā)送子程序流程

報文的發(fā)送由SJAl000根據(jù)CAN總線協(xié)議自動完成,用戶所要做的是把要發(fā)送的信息按特定的格式組成一幀報文,從單片機內(nèi)的系統(tǒng)發(fā)送緩沖區(qū)送到SJA1000的發(fā)送緩沖區(qū)中,然后通過寫命令寄存器的相應(yīng)位啟動“發(fā)送請求標(biāo)志位”。在將系統(tǒng)發(fā)送緩沖區(qū)數(shù)據(jù)送到SJAl000的發(fā)送緩沖區(qū)前,應(yīng)先判斷總線上是否正在接收數(shù)據(jù),還需判斷一下上次發(fā)送是否成功,否則不能寫入數(shù)據(jù)。

3.2.3 CAN接收子程序流程

報文的接收仍然由SJAlooO獨立完成。在搬運站中,節(jié)點從總線上接收報文采用中斷的方式進行。搬運站通過中斷接收方式接收的信息有前站的工件顏色、前站準(zhǔn)備好的信息以及后站準(zhǔn)備好的信息。

采用中斷的方式進行控制時,總線上的報文通過本節(jié)點的驗收濾波器測試后,這條完整的報文就被保存在接收緩沖器中。此時,接收緩沖器狀態(tài)標(biāo)志位RBS被置1,表示接收緩沖區(qū)有新的數(shù)據(jù),并同時產(chǎn)生外部中斷。

單片機進入中斷接收程序后首先保護現(xiàn)場,然后CPU讀出接收緩沖區(qū)的內(nèi)容,接著發(fā)送釋放接收緩沖器命令,清除接收緩沖器狀態(tài)標(biāo)志。最后恢復(fù)現(xiàn)場,中斷返回。

4 結(jié)束語


網(wǎng)絡(luò)技術(shù)在自動控制系統(tǒng)中的應(yīng)用已成為現(xiàn)代控制技術(shù)的一個重要發(fā)展方向。作為目前現(xiàn)場總線的主流標(biāo)準(zhǔn)-CAN總線技術(shù)在現(xiàn)代自動控制領(lǐng)域中的應(yīng)用狀況,從某種程度上代表著現(xiàn)代工業(yè)控制技術(shù)的發(fā)展水平。

本文根據(jù)預(yù)期的通訊速度快、可靠性高的目標(biāo)和要求,設(shè)計這套測控系統(tǒng),通過用戶自定義網(wǎng)絡(luò)應(yīng)用層協(xié)議,給出了具體的設(shè)計方案,闡述了CAN通訊程序的實現(xiàn)方法,滿足了自動生產(chǎn)線實時化、網(wǎng)絡(luò)化和智能化的設(shè)計要求。

隨著計算機、通訊和控制等技術(shù)的不斷發(fā)展,建立于這些技術(shù)基礎(chǔ)之上的現(xiàn)場總線技術(shù)也在不斷向前發(fā)展,CAN總線的特點和優(yōu)勢,使它非常適合于作為現(xiàn)場監(jiān)測和控制系統(tǒng)的通訊協(xié)議,其技術(shù)開放性及低成本,使基于CAN總線的測控技術(shù)可以廣泛應(yīng)用于工業(yè)自動化領(lǐng)域。


上一頁 1 2 下一頁

關(guān)鍵詞: CAN總線自動生產(chǎn)

評論


技術(shù)專區(qū)

關(guān)閉