谘詢電話

ENGLISH0755-88840386
新聞中心

谘詢電話

0755-88840386
您的位置:首頁 > K8凯发大酒店天生赢家專題 > 專業技術專題 > 工業自動化稱重儀表>詳情頁

基於CS1160和ATmegal6L的智能稱重儀表設計

發布時間:2020-08-13 11:13:17 |來源:網絡轉載

0引言

稱重計量技術在冶金、交通、電力、建材和化工 等領域有著非常廣泛的應用。在生產過程或工藝 流程中,對各種配料稱重、定量稱重及動態稱重技 術的要求越來越高。衡器已成為工藝技術、預包裝 技術、收發貨業務及商貿行業中必不可少的組成部 分,稱重傳感器及智能稱重儀表作為衡器的心髒部 件,在工業過程控製和貿易結算等方麵倍受 重視⑴。

目前,稱重傳感器主要分為壓電式、壓磁式和 電阻應變式,其中電阻應變式稱重傳感器是現階段 應用廣泛、性能穩定、準確度高且技術成熟的稱重 傳感器⑴。它利用金屬彈性體的應變效應進行轉 換,在力的作用下,彈性體發生形變,帶動應變片 發生形變,產生電阻的變化,電阻的變化反映力的 大小。

為了解決傳統稱重儀表設計方法上的不足,本 文對國產基手CSU60和ATmegal6L設計的智能稱 重儀表結構原理介紹如下。

1簡化結構設計

在給定激勵電壓10-12V的條件下,電阻應變 式稱重傳感器的輸出電壓在0 ~30mV,如此微弱的 信號隻有在智能稱重儀表的配合下,將傳感器的信 號轉化成重量,並通過各種通信接口輸出給上位 機[2~4]o稱重儀表的組成結構如圖1所示⑸。信號 調理電路主要由濾波電路、抗混疊電路等組成;放 大電路主要由運算放大器構成,用來將毫伏級信號

放大到伏級,以便A/D電路將其轉化成數字量。

稱重儀表組成結構圖

 

圖1稱重儀表組成結構

 

上述電路中,半導體集成度不高、器件多、溫度 補償不好控製並且可靠性低。而由深圳生產的 CS1160是16位高精度、低功耗Sigma-Delta模數轉 換芯片,可以在2.7 -5.5V電源電壓條件下工 作⑸。CS1160的1 ~128倍可編程增益放大器,當 工作在128倍時,CS1160有效分辨力可達16bitso 備有一個二階Sigma-Delta調製器,芯片的FIR濾波 器提供50Hz和60Hz陷波濾波,有效提高了芯片的 抗幹擾性能。

該芯片不僅集成了信號調理電路、放大電路和 數模轉換電路,還提供了非常適合儀表產品的校正 功能。因此,可將圖1簡化為圖2所示的設計 簡圖。

2改進硬件設計

隨著信息技術的高速發展,微控製器(MCU) 的性能大幅度提高,為高度智能化儀表的設計製造 提供了平台。本文智能稱重儀表設計采用Atmel公 司的ATmegal6L高性能、低功耗8位AVR微處理 器。它采用先進的RISC結構,工作於16MHz時性

稱重儀表設計簡圖

 

圖2稱重儀表設計簡圖

能高達16MIPS;內置16kB的係統內可編程Flash、 512B 的 EEPROM、lkB 的片內 SRAMJTAG 接口支 持擴展的片內調試功能;2個8位定時器/計數器、1 個1位定時器/計數器、4通道PWM、8路10位 ADC.TWI兩線接口、SPI串行接口、串行USART接 口等。

基於CS1160和ATmegal6L設計的智能稱重 儀表具備以下特點:自動調零、自動平衡、自動補 償和自選量程等信息處理功能;數據自動采集、預 處理、相關濾波,且由傳感器本身消除異常值和例 外值,提供比傳統傳感器更全麵、更真實的信息; 能夠隨機標定;具有一定程度的記憶與處理功能, 內含特定算法並可根據需要進行改變;能輸出數 字信號,具有遠程通信能力和良好的人機界麵。 依照上述要求設計的智能稱重儀表外圍電路如圖 3所示。集成芯片CS1160有16個管腳,模擬電 源(+12V, AGND)、數字電源(卩cc, DGND)、參考 電壓(匕Q都是單獨分開的,數模轉換的時鍾由一 個4.9152MHz外部晶振實現,參考電壓5 V由 TI431提供,所以R,。和R”選擇了 IO®精度的等 值27kfl電阻。電阻應變傳感器的激勵電壓選擇 + 12V直流,差分信號經阻容濾波電路後接到 CS1160的AIN0和AIN]兩端。CS1160芯片的 DRDY、SCLK、SDO、SDI、CS引腳分別是數據準備 就緒、串行時鍾、串行數據輸出、串行數據輸入、片 選,它們與MCU的SPI接口連接,用來讀寫控製 CS1160,完成數模轉換。

主控MUC釆用ATmegal6L高性能AVR芯片, 外部晶振采用7. 3728MHz,方便在線調試和程序燒 錄;LCM選擇了 OCMJ4X8C,其內置一二級漢字庫、 128 x64的顯示點陣,可以顯示圖形和中英文字符, 而無需自建字模。該液晶還可以通過PSB控製引 腳,切換到串行方式,節省MCU的I/O引腳。

稱重儀表外圍電路圖

3優化程序設計

CS1160使用了一係列指令來完成對芯片的工 作模式、工作速度和誤差校正等的控製。接收數據 時總是高位在前,發送數據的格式則由ACR寄存器 的BITORDER位來決定。CS1160指令描述如表1 所示。

1)數據讀取函數的編寫如下:

void spi_init( void)

i

SPCR = 0x00 ; // diable spi

SPSR=0x00; 〃2X

SPCR = 0x52 ; //setup SPI

稱重儀表指令描述表

 

2)將SPI接口初始化完畢後,就可以通過對 SPI數據寄存器SPDR的操作,完成CS1160指令。 下麵是讀取CS1160數模轉換結果的函數,使用的 是RDATA指令:

Unsigned int ReadData( void)

I

cs=o;〃片選

unsigned char i =0;

unsigned int data =0; 〃返回值變量

unsigned char tmp = 0;〃臨時變量存放中間值 while(DRDY);〃當DRDY為高時,不讀取數據 SPDR=0x01;〃將命令寫入SPI寄存器,同時開始 寫到CS1160

while( ! ( SPSR&0x80));〃等待發送完畢 tmp=SPSR;〃清除發送標誌

tmp = SPDR; 丟棄該數據

SPDR=0x00;

while( ! ( SPSR & 0x80)); 〃繼續輸入讀數脈衝 tmp = SPSR ;

tmp = SPDR ;〃丟棄該數據

SPDR =0x00;

while( ! ( SPSR & 0x80)); 〃繼續輸入讀數脈衝 tmp 二 SPSR ;

data = SPDR ;

data = data < < 8 ; 〃讀取高8位數據

SPDR = 0x00 ;〃高8位置於高位

while( ! ( SPSR & 0x80)); 〃繼續輸入讀數脈衝 tmp = SPSR ;

data I = SPDR; 低8位置於低位

CS = 1;〃取消片選

return data; 〃返回結果

I

3)指令RREG和WREG與指令RDATA操作 方式類似:

Void WriteCommand(unsigned char Comm)

I

SPDR = Comm; 〃寫入命令 while ( ! ( SPSR & 0x80)); tmp = SPSR ;

I

4結束語

通過使用CS1160集成芯片,配以ATmegal6L 高性能單片機,不僅簡化了稱重儀表的設計、降低 了產品成本、提高了可靠性,而且在實際生產應用 中效果良好。另外,在應用過程中,有些功能不能 夠很好地滿足現場的需求,比如,由於現場條件限 製,對傳感器的標定方法還不夠靈活、係統電源的 抗幹擾能力較差等,需要進一步開發研究。

 

文章來源於網絡轉載,侵刪

分享到
網站地圖凱發K8凱發K8凱發K8凱發K8凱發K8凱發K8凱發K8