新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種具有CAN總線通信的稱重設(shè)備設(shè)計

一種具有CAN總線通信的稱重設(shè)備設(shè)計

作者: 時間:2016-11-19 來源:網(wǎng)絡(luò) 收藏
  本課題以CAN總線為例,設(shè)計了基于CAN總線的稱重設(shè)備,可把從稱重傳感器采集的數(shù)據(jù)直接發(fā)送到CAN現(xiàn)場總線上,取代傳統(tǒng)的稱重儀表,使稱重設(shè)備在整個工業(yè)現(xiàn)場實現(xiàn)隱形化和智能化。本課題針對中準確度等級的稱重設(shè)備,設(shè)計了具有總線功能的通信結(jié)構(gòu)。試驗用的儀表是一臺標準負荷測量儀。試驗用傳感器的檢定分度數(shù)符合3級秤的要求,通過對其進行靜態(tài)稱重試驗,采集數(shù)據(jù),做計量研究分析。用標準負荷測量儀的示值與總線通信數(shù)據(jù)進行比較,通過對試驗數(shù)據(jù)的采集分析,判斷設(shè)備工作是否符合要求,同時測試通信數(shù)據(jù)是否準確可靠。

  一、稱重設(shè)備的硬件設(shè)計

本文引用地址:http://m.butianyuan.cn/article/201611/318329.htm

  稱重設(shè)備硬件結(jié)構(gòu)如圖1所示,主要由單片機、外部存儲器、電源電路、看門狗電路、CAN總線接口電路和傳感器采集電路組成。

  圖1

  1.單片機

  本課題選用宏晶科技的STC12C5A60S2作為中央處理器。它處理速度快、功耗低、抗干擾能力強,集成了內(nèi)部復(fù)位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換、大容量Flash、大容量SRAM、定時/計數(shù)器以及片內(nèi)R/C振蕩器和外部晶體振蕩電路等模塊,功能穩(wěn)定強大。

  2.外部存儲單元

  外部存儲單元包括外部非易失性存儲器(E2PROM)和數(shù)據(jù)存儲器(RAM)。非易失性存儲器選用Atmel公司的存儲芯片AT24C02,主要應(yīng)用于需要掉電保存歷史記錄;數(shù)據(jù)存儲器選取英特爾公司生產(chǎn)的6264RAM芯片,相當于PC機中的內(nèi)存條,主要用來存放程序中間變量和參數(shù)。

  3.看門狗電路

  看門狗芯片選取MAX706。能夠在上電或斷電時產(chǎn)生復(fù)位信號,也能夠防止程序鎖死。為了保持系統(tǒng)的一致性,該設(shè)計不考慮單片機內(nèi)部的看門狗,而統(tǒng)一采用看門狗芯片進行監(jiān)控。

  4.LED指示單元

  紅綠雙色LED組成了設(shè)備狀態(tài)指示燈,參照CAN協(xié)議規(guī)范,指示燈的顏色及閃爍的含義如表1所示。

  表1

  5.傳感器信號采集電路

  稱重傳感器信號采集電路采用電子秤常用的高精度的A/D轉(zhuǎn)換芯片HX711。它內(nèi)部包含穩(wěn)壓電源和時鐘振蕩電路,可以減少一些外圍電路的設(shè)計,節(jié)省了元器件和布線空間。

  6.系統(tǒng)電源

  電路板上所有電子元器件都采用5V電壓供電,因此選用TI公司生產(chǎn)的開關(guān)電源芯片LM2575-5.0將現(xiàn)場總線上的24V電壓轉(zhuǎn)換為5V的標準電壓提供給電路板上的所有電子元器件。

  7.現(xiàn)場總線接口電路

  包括總線控制器芯片SJA1000、光耦和總線接收發(fā)送芯片PCA82C250。

  采用恩智浦半導(dǎo)體的控制器芯片SJA1000來實現(xiàn)CAN總線中物理層與數(shù)據(jù)鏈路層的復(fù)雜網(wǎng)絡(luò)協(xié)議,通過編寫SJA1000的驅(qū)動程序,把應(yīng)用層建立在SJA1000的基礎(chǔ)之上。

  CAN總線收發(fā)器PCA82C250可以在最大1Mbps的通信速率下進行工作。該芯片可以把控制器數(shù)據(jù)信號與總線的差分信號進行相互轉(zhuǎn)換,實現(xiàn)傳輸和接收總線數(shù)據(jù)功能。

  二、稱重設(shè)備的軟件設(shè)計

  1.軟件架構(gòu)設(shè)計

  軟件程序采用前后臺結(jié)構(gòu),包括主程序和中斷程序,其中中斷程序為外部中斷程序。從開始進入稱重狀態(tài)后進行初始化和參數(shù)配置,然后判斷是否上線,如是則運行應(yīng)用程序,循環(huán)采集重量并往總線發(fā)送數(shù)據(jù);如否則進行錯誤診斷,排除故障后繼續(xù)判斷是否上線。

  2.稱重傳感器數(shù)據(jù)采集的程序設(shè)計

  串口通信線由管腳DOUT和TPD_SCK組成,當管腳DOUT輸出的數(shù)據(jù)等于高電平時,表示未輸出采集數(shù)據(jù),端口PD_SCK應(yīng)為低電平。當管腳DOUT由高電平轉(zhuǎn)換成低電平后,端口PD_SCK會輸入25或者27個時鐘脈沖。從第一個時鐘脈沖的上升沿開始讀數(shù),直到第24個脈沖被讀完,將讀出輸出24位數(shù)據(jù)的MSB。

  3.CAN現(xiàn)場總線接口程序設(shè)計

  CAN現(xiàn)場總線接口程序設(shè)計包括CAN控制器SJA1000的初始化、CAN對象類的設(shè)計和應(yīng)用層協(xié)議的設(shè)計。本課題設(shè)計的稱重設(shè)備是具備CAN現(xiàn)場總線通信能力的從站設(shè)備。

  在設(shè)備上電和硬件復(fù)位后,為了配置CAN通信參數(shù),需要先對CAN控制器SJA1000進行上電初始化。初始化首先進行關(guān)中斷,然后復(fù)位,之后設(shè)置接收代碼寄存器和屏蔽寄存器,再設(shè)置波特率和地址,最后設(shè)置輸出控制寄存器。完成后開中斷,打開操作模式,結(jié)束。

  三、實驗設(shè)計與結(jié)果

  1.實驗平臺的搭建

  該實驗的測試平臺如圖2所示。傳感器采集的數(shù)據(jù)同時發(fā)送給標準負荷測量儀與CAN總線。

  圖2

  2.實驗結(jié)果和分析

  USB轉(zhuǎn)CAN接口模塊通道選擇Channel0,網(wǎng)絡(luò)波特率選擇250kbps,設(shè)備MAC ID濾波范圍為000~7FF。上位機采用德國SYSTEC公司的USB轉(zhuǎn)CAN接口模塊,它能支持多達64個設(shè)備同時連接到上位機,網(wǎng)絡(luò)分析軟件為PCANView。壓力傳感器使用的是一只S型傳感器,它的準確度等級為C2級,最大量程為200kg,檢定分度值e=0.1kg。標準負荷測量儀的準確度為0.005%FS。傳感器和標準負荷測量儀經(jīng)檢驗是合格的,依據(jù)JJG539-1997《數(shù)字指示秤檢定規(guī)程》進行相關(guān)測試點的選擇。

  以稱重砝碼為1.7kg時舉例,此地址包含8個字節(jié),在PCANView上顯示時從左到右為低字節(jié)到高字節(jié)排列顯示??稍O(shè)定左面第一位為小數(shù)點后第一位第二位是個位數(shù),第三位是十位數(shù),第四位是百位數(shù),以此類推,單位為kg。程序運行后,在PCANView中顯示讀數(shù)為1.7kg。同時觀察標準負荷測量儀的示值,得到的測量值與CAN總線上傳輸?shù)闹凳且恢碌摹?/p>

  本實驗證明在CAN總線上傳輸?shù)姆Q重數(shù)據(jù)是實時完整和有效的。通過本實驗,開發(fā)的稱重設(shè)備能夠連接到CAN總線上并能準確傳輸具有CAN接口的稱重設(shè)備采集信號并且通信正常,實現(xiàn)了預(yù)定的目標。



關(guān)鍵詞: CAN總線通信稱重設(shè)

評論


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

關(guān)閉