基于A(yíng)RM核和CAN總線(xiàn)的煤矸石分選系統
摘要:簡(jiǎn)要介紹了ARM(Advanced RISCM achines)微控制器和CAN(Controlle rArea Network)總線(xiàn)技術(shù)構成的煤矸石在線(xiàn)識別與自動(dòng)分選系統,給出了ARM微控制器AT91M40800與CAN總線(xiàn)控制器SJA1000之間相連的硬件電路,論述了硬件接口之間的數據通信實(shí)現技術(shù),給出了數據通信的軟件設計流程。CPLD(EPM7128)是用來(lái)調整時(shí)序和實(shí)現在線(xiàn)修改。實(shí)驗證明了設計的可行性,探索了一種新的選煤技術(shù)。
關(guān)鍵詞:ARM微控制器 ;CAN總線(xiàn) ;煤矸石 ;分選系統 ;CPLD
引言
隨著(zhù)嵌入式技術(shù)的不斷發(fā)展,高性能、低功耗、低價(jià)格的32位RISC芯片的ARM微控制器呈現出強勁的發(fā)展趨勢,嵌入式系統和現場(chǎng)總線(xiàn)技術(shù)結合,結合二者的優(yōu)點(diǎn),為傳統的選煤技術(shù)提供了新的改造方案。將嵌入式技術(shù)和現場(chǎng)總線(xiàn)技術(shù)相互融合,設計了一種新的煤塊和矸石在線(xiàn)識別與自動(dòng)分選系統。
煤矸石在線(xiàn)識別與自動(dòng)分選系統
煤塊和矸石在線(xiàn)識別與自動(dòng)分選系統的原理框圖如圖1所示。根據選煤工藝要求,本系統主要由下面三大部分構成:
圖1 煤矸石在線(xiàn)自動(dòng)分選系統框圖
(1)檢測部分:由進(jìn)料斗、輸送帶、CCD攝像頭、圖像數據采集電路等組成。開(kāi)采出來(lái)的原煤常含有矸石,必須將矸石從傳送帶上挑選出來(lái)。CCD攝像頭將煤與矸石圖像送圖像數據采集電路進(jìn)行轉換,轉換后的信息送入ARM微控制器,通過(guò)CAN總線(xiàn)網(wǎng)絡(luò )傳送到PC機進(jìn)行處理。
(2)識別與控制部分:由計算機、ARM微控制器和測控設備組成,它是整個(gè)系統的核心。根據模式識別算法計算出煤和矸石的灰分含量,ARM微控制器識別和判斷出煤矸石后,完成控制動(dòng)作。如果判斷為煤,控制部分不動(dòng)作,原煤自然落入煤料斗,從煤塊通道運走。如果判斷為矸石,發(fā)出控制信號,打開(kāi)閥門(mén),使矸石落入矸石通道。
(3)分揀機構:由閥門(mén)、物料斗和系統供電設備等組成,通過(guò)CAN總線(xiàn)網(wǎng)絡(luò ),完成多個(gè)通道的煤和矸石的自動(dòng)分選和運輸。
芯片介紹
AT91M40800
AT91M40800是ATMEL公司基于ARM7TDMI核的16位/32位微控制器系列中具有較高性?xún)r(jià)比的一款芯片,其核心為高性能的32位RISC(Reduced Intro-duction Set Computer)體系結構,并具有16位(thumb)指令集。通過(guò)可編程的外部總線(xiàn)接口(EBI)直接連接到包括FLASH在內的各種片外存儲器,8個(gè)優(yōu)先級的中斷向量控制器和片內外圍數據控制器顯著(zhù)提高了器件的實(shí)時(shí)性能。AT91M40800集成了ARM7DMIARMThumb處理器內核,提供了8kB的片內SRAM,8個(gè)片選線(xiàn),32個(gè)可編程I/O口,軟件可編程的8位或16位的數據總線(xiàn),最大可尋址空間64MB,兩個(gè)USART,每個(gè)USART有兩個(gè)專(zhuān)用的外圍數據控制器通道,內置可編程的看門(mén)狗定時(shí)器,8個(gè)具有優(yōu)先級、可單獨屏蔽的向量中斷控制器,4個(gè)外部中斷控制寄存器,4個(gè)外部中斷,包括一個(gè)高優(yōu)先級、低延遲的中斷請求,3個(gè)外部時(shí)鐘輸入,3通道16位定時(shí)器/計數器。
SJA1000
由于煤倉、矸石山與分選車(chē)間各自有一定距離,需要集中管理和信息處理。而現場(chǎng)總線(xiàn)技術(shù)可以把單個(gè)分散的測量控制設備變成網(wǎng)絡(luò )節點(diǎn),以總線(xiàn)為紐帶,把它們連接成可以相互溝通信息、共同完成自動(dòng)控制任務(wù)的網(wǎng)絡(luò )系統與控制系統。CAN通信速率最高可達1Mbps,直接傳輸距離最遠可達10km(速率5kbps以下),可掛接設備最多達110個(gè),可以完成多通道同時(shí)分選和運輸任務(wù)。SJA1000是Philips公司生產(chǎn)的獨立型CAN總線(xiàn)控制器,用于汽車(chē)和一般工業(yè)環(huán)境中的控制器局域網(wǎng)絡(luò ),它是Philips公司半導體PCA82C200CAN控制器(BasicCAN)的替代產(chǎn)品,增加了新的工作模式(PeliCAN模式),可以方便的和不同模式的處理器相連接,組成CAN控制網(wǎng)絡(luò )。
硬件接口電路設計
圖2 是SJA1000收發(fā)器與AT91M40800芯片的接口電路原理圖。
圖2 SJA1000與AT91M40800接口電路原理圖
EPM7128用來(lái)完成接口間信號的轉換與配置,EPM7128的輸入來(lái)自AT91M40800的片選信號NCS2,數據線(xiàn)D0~D7,地址A0~A1,讀信號NRD,寫(xiě)信號NWE和系統復位信號RST,經(jīng)過(guò)內部的邏輯綜合處理,產(chǎn)生SJA1000所需的功能信號。根據各芯片信號線(xiàn)的要求及端口地址的分配,可以寫(xiě)出CAN總線(xiàn)收發(fā)器的輸入/輸出邏輯關(guān)系表達式如下:
CAN=NCS2A0
CANALE=NCS2A0(NRD+NWE)
CANRD=NRD
CANWR=NWE
CANRST=NCS2+RST
選定SJA1000的地址端口為400000H,數據端口的地址為400001H和復位端口地址為400002H。由于CAN控制器SJA1000的地址數據是復用的,通過(guò)ALE信號下降沿可以鎖存總線(xiàn)上的地址信號。但是AT91M40800的地址總線(xiàn)和數據總線(xiàn)是單獨提供的,不能直接與SJA1000的地址數據總線(xiàn)相連。所以要解決SJA1000與AT91M40800的接口問(wèn)題,關(guān)鍵在于如何將訪(fǎng)問(wèn)SJA1000所需的信號送入其中。這里采用的辦法是分兩次I/O操作完成,第一次往地址端口400000H送入地址值作為SJA1000的單元地址。此時(shí),片選沒(méi)有選通,數據鎖存在A(yíng)D0~AD7總線(xiàn)上。第二次訪(fǎng)問(wèn)數據端口400001H時(shí),SJA1000被選中,在A(yíng)LE信號作用下將第一次的地址值寫(xiě)入SJA1000,CPU對SJA1000進(jìn)行讀/寫(xiě)操作。復位可以分為系統復位和程序復位兩種。系統復位信號RST和程序復位信號在EPM7128中進(jìn)行邏輯或操作,兩者之一有效均可使SJA1000可靠的復位。
為了保證數據通信的可靠性,在CAN總線(xiàn)終端各連接一個(gè)120Ω的終端反射電阻,進(jìn)行總線(xiàn)阻抗匹配。SJA1000的TX1引腳通過(guò)10k8的電阻接地,RX1引腳電平必須維持在0.5Vcc以上。否則,不能形成CAN總線(xiàn)所需的邏輯電平。如果通信距離較近,環(huán)境干擾較小,可以不采用光電隔離電路6N137,這時(shí),可以將82C251的VREF直接與RX1引腳相連,從而簡(jiǎn)化了電路。
ARM微控制器與CAN總線(xiàn)的數據通信
AT91M40800通過(guò)外部總線(xiàn)接口(EBI)產(chǎn)生訪(fǎng)問(wèn)片外存儲器和外部器件的信號,EBI支持不同的訪(fǎng)問(wèn)協(xié)議,可實(shí)現對外部器件的單周期訪(fǎng)問(wèn),設計中EBI的設置為:(1)選擇8位數據總線(xiàn) ;(2)選擇標準讀協(xié)議 ;(3)選擇8個(gè)周期的等待時(shí)間 ;(4)片選線(xiàn)NCS2的基地址為400000H。所有程序均采用AT91庫的C語(yǔ)言編寫(xiě),它具有可讀性強、容易移植、開(kāi)發(fā)簡(jiǎn)單、調試方便等優(yōu)點(diǎn)。正確的初始化是程序正常運行的基礎,系統的初始化主要是AT91M40800微處理器和SJA1000的初始化(SJA1000工作晶振16M),初始化流程如圖3所示。
圖3 通信軟件初始化流程圖
結論
采用ARM微控制器的AT91M40800芯片和CAN總線(xiàn)控制器SJA1000構成的煤矸石在線(xiàn)識別與自動(dòng)分選系統,跟傳統的MCU作為控制的CAN總線(xiàn)網(wǎng)絡(luò )相比,是一種新穎的CAN總線(xiàn)網(wǎng)絡(luò )系統。基于ARM微控制器的嵌入式系統與CAN總線(xiàn)的處理系統具有良好的實(shí)時(shí)性、可靠性和靈活性,為落后的選煤技術(shù)提供了一種新方法。
評論