CAN總線(xiàn)在自動(dòng)生產(chǎn)線(xiàn)中的應用
標識符字節1設定發(fā)送節點(diǎn)/接收節點(diǎn),設定內容見(jiàn)表2。標識符字節2中ID.2~ID.0(高3位)無(wú)定義取0,RTR是遠程發(fā)送請求位,低4位為數據長(cháng)度碼。
報文的標識符就象報文的名字,它在接收器的接收過(guò)濾中被用到。網(wǎng)絡(luò )上所有的節點(diǎn)可以通過(guò)接收過(guò)濾確定是否采用該報文。接收過(guò)濾功能是可選項,如選擇接收過(guò)濾功能,則應將接收屏蔽寄存器中各個(gè)位設置成“相關(guān)”,如不選擇接收過(guò)濾功能,接收屏蔽寄存器中各個(gè)位應設置成“不相關(guān)”。當選擇了接收過(guò)濾功能時(shí),一旦節點(diǎn)接收到數據,則只有當接收碼與標識符的ID.6~ID.3相同,接收的數據才會(huì )被節點(diǎn)采用。
報文中數據區第1個(gè)字節的內容設定為信息類(lèi)別,第2字節為待發(fā)送的數據。信息類(lèi)別根據被傳送的信息類(lèi)型進(jìn)行編碼,詳見(jiàn)表3。數據用來(lái)區分工件的黑/白顏色、正品/次品等信息。
3.2 CAN通訊節點(diǎn)軟件設計
CAN通訊節點(diǎn)的軟件設計主要包括兩個(gè)部分:CAN通訊模塊程序、站內控制模塊程序。站內控制模塊程序包括單片機初始化和站內控制功能的實(shí)現以及對CAN子程序的調用。CAN總線(xiàn)通訊程序是指在單片機的控制下將本節點(diǎn)的數據發(fā)送到總線(xiàn)上,以及接收總線(xiàn)上發(fā)送給本節點(diǎn)的信息并將其存人單片機,主要包括CAN總線(xiàn)控制器sJAlooo的初始化、報文發(fā)送和報文接收3個(gè)部分。CAN通訊的數據傳輸按照用戶(hù)自定義通訊協(xié)議的格式進(jìn)行。
第2站(搬運站)的CAN通訊數據幀定義見(jiàn)表4。
3.2.1 CAN初始化子程序流程
CAN控制器初始化是CAN總線(xiàn)系統正常工作的前提,CAN控制器SJAlooO的初始化設置是在復位模式下進(jìn)行的。由于篇幅關(guān)系,本文不作詳細說(shuō)明。
3.2.2 CAN發(fā)送子程序流程
報文的發(fā)送由SJAl000根據CAN總線(xiàn)協(xié)議自動(dòng)完成,用戶(hù)所要做的是把要發(fā)送的信息按特定的格式組成一幀報文,從單片機內的系統發(fā)送緩沖區送到SJA1000的發(fā)送緩沖區中,然后通過(guò)寫(xiě)命令寄存器的相應位啟動(dòng)“發(fā)送請求標志位”。在將系統發(fā)送緩沖區數據送到SJAl000的發(fā)送緩沖區前,應先判斷總線(xiàn)上是否正在接收數據,還需判斷一下上次發(fā)送是否成功,否則不能寫(xiě)入數據。
3.2.3 CAN接收子程序流程
報文的接收仍然由SJAlooO獨立完成。在搬運站中,節點(diǎn)從總線(xiàn)上接收報文采用中斷的方式進(jìn)行。搬運站通過(guò)中斷接收方式接收的信息有前站的工件顏色、前站準備好的信息以及后站準備好的信息。
采用中斷的方式進(jìn)行控制時(shí),總線(xiàn)上的報文通過(guò)本節點(diǎn)的驗收濾波器測試后,這條完整的報文就被保存在接收緩沖器中。此時(shí),接收緩沖器狀態(tài)標志位RBS被置1,表示接收緩沖區有新的數據,并同時(shí)產(chǎn)生外部中斷。
單片機進(jìn)入中斷接收程序后首先保護現場(chǎng),然后CPU讀出接收緩沖區的內容,接著(zhù)發(fā)送釋放接收緩沖器命令,清除接收緩沖器狀態(tài)標志。最后恢復現場(chǎng),中斷返回。
4 結束語(yǔ)
網(wǎng)絡(luò )技術(shù)在自動(dòng)控制系統中的應用已成為現代控制技術(shù)的一個(gè)重要發(fā)展方向。作為目前現場(chǎng)總線(xiàn)的主流標準-CAN總線(xiàn)技術(shù)在現代自動(dòng)控制領(lǐng)域中的應用狀況,從某種程度上代表著(zhù)現代工業(yè)控制技術(shù)的發(fā)展水平。
本文根據預期的通訊速度快、可靠性高的目標和要求,設計這套測控系統,通過(guò)用戶(hù)自定義網(wǎng)絡(luò )應用層協(xié)議,給出了具體的設計方案,闡述了CAN通訊程序的實(shí)現方法,滿(mǎn)足了自動(dòng)生產(chǎn)線(xiàn)實(shí)時(shí)化、網(wǎng)絡(luò )化和智能化的設計要求。
隨著(zhù)計算機、通訊和控制等技術(shù)的不斷發(fā)展,建立于這些技術(shù)基礎之上的現場(chǎng)總線(xiàn)技術(shù)也在不斷向前發(fā)展,CAN總線(xiàn)的特點(diǎn)和優(yōu)勢,使它非常適合于作為現場(chǎng)監測和控制系統的通訊協(xié)議,其技術(shù)開(kāi)放性及低成本,使基于CAN總線(xiàn)的測控技術(shù)可以廣泛應用于工業(yè)自動(dòng)化領(lǐng)域。
評論