摘要:文章針對港口裝卸設(shè)備檢測的特點(diǎn)提出了利用C8051F040單片機(jī)及其內(nèi)部CAN總線技術(shù),設(shè)計(jì)港口裝卸設(shè)備檢測系統(tǒng)智能節(jié)點(diǎn)。現(xiàn)場港口裝卸設(shè)備參數(shù)的采集、轉(zhuǎn)換由相應(yīng)的節(jié)點(diǎn)進(jìn)行處理,提高了系統(tǒng)的可靠性,可降低維護(hù)維修工作量。通過實(shí)驗(yàn)檢測,該設(shè)計(jì)方案可以提高港口裝卸設(shè)備的數(shù)據(jù)傳輸速度和可靠性。
關(guān)鍵詞:C8051f040;CAN總線;節(jié)點(diǎn)
中圖分類號:TP273.5文獻(xiàn)標(biāo)識碼:A文章編號:1006-8937(2011)20-0017-02
港口裝卸設(shè)備在生產(chǎn)作業(yè)時,裝卸強(qiáng)度大,設(shè)備之間的連貫性較強(qiáng),由設(shè)備故障引起的停機(jī)會給裝卸生產(chǎn)帶來嚴(yán)重影響,直至使整個裝卸系統(tǒng)癱瘓。因此對港口裝卸設(shè)備重點(diǎn)部位的檢測顯得尤為重要。設(shè)備所處環(huán)境惡劣,裝卸貨物品種復(fù)雜如硫磺礦石煤炭等,同時港口設(shè)備各種機(jī)型的配電系統(tǒng)高壓低壓電流較多。這些都對檢測技術(shù)提出了較高的要求。 CAN總線作為一種具有國際標(biāo)準(zhǔn)的現(xiàn)場總線,采用拓?fù)浣Y(jié)構(gòu)進(jìn)行總線通訊,具有數(shù)據(jù)通信可靠、實(shí)時性強(qiáng)、靈活性強(qiáng)等特點(diǎn),同時由于其基于發(fā)送報(bào)文的編碼,擴(kuò)展性非常好,且改造成本低。結(jié)合港口泊位特點(diǎn),充分利用CAN總線,傳輸距離長,傳輸速率快,差錯率小等特點(diǎn)進(jìn)行現(xiàn)場數(shù)據(jù)通信。
根據(jù)系統(tǒng)對數(shù)據(jù)采集的功能需求,本文以Silicon Labs公司推出的片內(nèi)集成了一個CAN2.0B控制器新型soc單片機(jī)C8051F040型單片機(jī)為基礎(chǔ),介紹了CAN總線港口裝卸設(shè)備檢測系統(tǒng)節(jié)點(diǎn)設(shè)計(jì)及其應(yīng)用。
1硬件設(shè)計(jì)
1.1節(jié)點(diǎn)構(gòu)成
CAN協(xié)議也是建立在國際標(biāo)準(zhǔn)組織的開放系統(tǒng)互聯(lián)模型基礎(chǔ)上的。不過,由于CAN的數(shù)據(jù)結(jié)構(gòu)簡單,又是范圍較小的局域網(wǎng),其模型結(jié)構(gòu)只取OSI底層的物理層、數(shù)據(jù)鏈路層和應(yīng)用層3層。應(yīng)用層數(shù)據(jù)直接取自數(shù)據(jù)鏈路層或直接向數(shù)據(jù)鏈路層寫數(shù)據(jù)。
節(jié)點(diǎn)是以C8051F040型SOC(System On Chip)單片機(jī)為處理核心進(jìn)行設(shè)計(jì)。主要功能包括:現(xiàn)場數(shù)據(jù)采集功能、數(shù)據(jù)與上位機(jī)通信。所采用的C8051F040型單片機(jī),具有集成度高,外圍電路簡單,現(xiàn)場適用性強(qiáng)等特點(diǎn),因?yàn)槭琴N片式,大大節(jié)省了現(xiàn)場采集電路的體積結(jié)構(gòu),使得硬件設(shè)計(jì)簡單緊湊。主頻支持25 MHz,內(nèi)部 64KBFlash存儲器,4K+256B的SRAM存儲器,支持20個中斷源,具有內(nèi)部l2位A/D轉(zhuǎn)換器和l2位的D/A轉(zhuǎn)換器。該芯片內(nèi)集成了CAN2.0控制器,有利于構(gòu)建總線傳輸網(wǎng)絡(luò)。數(shù)據(jù)采集節(jié)點(diǎn)的整體結(jié)構(gòu)如圖1所示。
節(jié)點(diǎn)主要由數(shù)據(jù)采集電路,電源模塊,地址譯碼電路以及 JTAG下載調(diào)試電路、CAN總線通訊模塊組成。
1.2電源模塊設(shè)計(jì)
電源模塊主要有24 V電壓輸出開關(guān)電源,然后在此基礎(chǔ)上進(jìn)行相應(yīng)的變化,產(chǎn)生各個模塊需要的各種電源。整套系統(tǒng)需要的電源類型共有兩種24 V、5 V。由于C8051F040的工作電壓為3.3V,故設(shè)計(jì)了5 V到3.3 V 的電壓轉(zhuǎn)換電路,通過芯片AS1117,得到 C8051F040 芯片所需要的+3.3 V 電源。
1.3地址譯碼電路設(shè)計(jì)
地址譯碼電路采用分時復(fù)用的方式解決對總線的爭用。譯碼電路采用部分譯碼法,即用高位地址的一部分通過74LS138芯片產(chǎn)生片選信號;剩余的基本外圍電路還包括總線節(jié)點(diǎn)的地址選擇部分,它由一個74LS244與一個8位撥碼開關(guān)組成,在每次系統(tǒng)上電或復(fù)位時,MCU從數(shù)據(jù)總線上讀取撥碼開關(guān)的值作為模塊的驗(yàn)收代碼以及其它的重要參數(shù)使用。
1.4JTAG調(diào)試電路設(shè)計(jì)
C8051F040內(nèi)部集成了JTAG模塊,只需經(jīng)過芯片外部的接口就可以實(shí)現(xiàn)CPU仿真調(diào)試功能。在整個的調(diào)試過程中,只需要一臺能實(shí)現(xiàn)JTAG接口控制功能的主機(jī)即可。具有JTAG接口的芯片,相關(guān)JTAG引腳的定義為:TCK為測試時鐘輸入;TDI為測試數(shù)據(jù)輸入,數(shù)據(jù)通過TDI引腳輸入JTAG接口;TDO為測試數(shù)據(jù)輸出,數(shù)據(jù)通過TDO引腳從JTAG接口輸出;TMS為測試模式選擇,TMS用來設(shè)置JTAG接口處于某種特定的測試模式;TRST為測試復(fù)位,輸入引腳,低電平有效。
1.5CAN節(jié)點(diǎn)通訊模塊設(shè)計(jì)
C8051F040型芯片自帶CAN2.OB(全功能CAN)控制器,只需在外圍外接 TJA1050收發(fā)器就可以完成 CAN總線接口硬件電路。為了進(jìn)一步提高系統(tǒng)的抗干擾能力,在CAN控制器引腳CANTX、CANRX和收發(fā)器TJA1050之間并不是直接相連,而是通過由高速光耦6N137 構(gòu)成的隔離電路后再與TJA1050 相連。
2CAN總線節(jié)點(diǎn)的軟件設(shè)計(jì)
港口裝卸設(shè)備檢測節(jié)點(diǎn)軟件設(shè)計(jì)主要有數(shù)據(jù)采集程序設(shè)計(jì)及CAN總線通信程序設(shè)計(jì)組成,下面主要介紹 C8051F040內(nèi)置 CAN總線通訊程序設(shè)計(jì)。
CAN通信程序主要包括初始化程序、發(fā)送程序、接收程序等。程序流程圖如圖2所示。
節(jié)點(diǎn)在接收數(shù)據(jù)時有查詢方式和中斷方式兩種接收方式。本文實(shí)現(xiàn)數(shù)據(jù)通訊采用中斷方式。采用中斷方式接收時,下位機(jī)節(jié)點(diǎn)在 BUS通訊協(xié)議把數(shù)字信號送到現(xiàn)場處理器進(jìn)行處理、計(jì)算、顯示和上傳。
3結(jié)語
使用C8051F040型單片機(jī)及自帶的CAN總線對港口設(shè)備進(jìn)行檢測相對成本低,設(shè)計(jì)簡單,發(fā)現(xiàn)故障迅速,功耗較低,經(jīng)過實(shí)驗(yàn)測試結(jié)果證明,完全可以達(dá)到港口裝卸設(shè)備數(shù)據(jù)傳輸要求,有效提高了港口裝卸設(shè)備系統(tǒng)的可靠性。
參考文獻(xiàn):
[1] 潘琢金,施國君.C8051FXXX高速 SOC單片機(jī)原理及應(yīng)用 [M].北京:北京航空航天大學(xué)出版社,2002.
[2] 鄔寬明.CAN總線原理和應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:航空航天 大學(xué)出版社,2002.