基于MXT8051通用配料控制器的設計
引言
本文引用地址:http://dyxdggzs.com/article/110392.htm混凝土是建筑行業(yè)最重要的材料,在混凝土的生產(chǎn)原料中,除水泥、沙石外最重要的原料當屬減水劑,減水劑是一種表面活性材料,加入后對水泥顆粒起擴散作用,把水泥膠體中包含的游離水釋放出來(lái),雖然其在混凝土中比例微小,但作用巨大,可減少拌合用水,改善和易性,節約水泥,提高強度。
減水劑復配裝置主要解決的是減水劑的生產(chǎn)、稀釋、分裝等生產(chǎn)過(guò)程,目前多數減水劑復配裝置控制系統的解決方案是“重儀表+PLC+HMI”或“稱(chēng)重儀表+工控機+IO板”的方案,在實(shí)施過(guò)程中發(fā)現,這些方案成本高,穩定性可靠性差,不適用于一些成本敏感的項目。
根據上述需求,本文以時(shí)代民芯科技的MXT8051芯片為核心設計并測試了通用配料控制器,其集成了稱(chēng)重儀表、PLC、LCD顯示等功能,很好的滿(mǎn)足了減水劑復配控制的需求,如需應用到其他行業(yè),只需將軟件稍加修改即可。
總體方案設計
本文采用MXT8051芯片驅動(dòng)稱(chēng)重芯片,讀取稱(chēng)重傳感器數值,根據預先設定的配方數據進(jìn)行自動(dòng)產(chǎn)品復配操作,包括自動(dòng)加水、自動(dòng)添加配料(固態(tài)或液態(tài))、自動(dòng)攪拌、自動(dòng)出料等操作。
系統使用16位7段液晶顯示器顯示重量信息、設定信息、狀態(tài)信息等,通過(guò)5個(gè)按鍵進(jìn)行參數設定、系統標定、運行控制、顯示控制等操作。
配方可由RS232或RS485連接到上位機進(jìn)行,上位機軟件可讀取、裝載配方數據,也可實(shí)時(shí)讀取稱(chēng)重數據。
上位機軟件采用VB.NET 2005開(kāi)發(fā),可設置串行通信參數、測試控制器IO、讀取稱(chēng)重數值、管理配方數據等。
硬件設計
MXT8051是以高速單指令周期 8051 為核的 MCU。擁有豐富的外設,包括 PWM、UART、WDT、Timer 等,1KB大容量外部RAM,內嵌 32Kx8 可在線(xiàn)編程 FLASH,10 位 ADC,8位DAC,若干OP,36x4 LCD driver、POR以及可編程增益放大器(PGA)等模擬電路。電路集成片上調試系統,通過(guò)標準 JTAG接口,快速診斷復雜 SoC,該調試系統具有不占用任何硬件資源,支持全速運行、單步運行、硬件斷點(diǎn)、軟件斷點(diǎn)以及觀(guān)察內部特殊功能寄存器、程序指針和內部RAM 等功能。上位機通過(guò)標準 JTAG 接口以及用戶(hù)定義指令執行在線(xiàn)編程和在線(xiàn)調試。
稱(chēng)重專(zhuān)用芯片HX711
HX711是一款專(zhuān)為高精度電子秤設計的24位AD轉換器芯片。與同類(lèi)型其它芯片相比,該芯片集成了包括穩壓電源、片內時(shí)鐘振蕩器等其它同類(lèi)型芯片所需的外圍電路,具有集成度高、響應速度快、抗干擾性強等優(yōu)點(diǎn)。
硬件電路設計
圖2 所示為系統硬件電路設計框圖,系統設計成兩塊電路板,IO板和MCU板。MCU板上集成有HX711稱(chēng)重專(zhuān)用24位Σ-ΔDA轉換芯片,RS232或RS485通信,16位7段LCD顯示,IO板上集成有7路繼電器IO輸出,5路光電隔離IO輸入,一路模擬量輸出,2路模擬量輸入,1路PWM光電隔離輸出,5鍵鍵盤(pán)輸入。
HX711外圍電路以及電壓基準電路設計,采用TL431芯片,通過(guò)電阻設定成5V輸出,同時(shí)作為傳感器電橋激勵和HX711的參考電壓,這樣可以有效抵消溫漂造成的系統誤差(如圖3所示)。
軟件設計
控制器軟件設計
HX711芯片的串口通訊線(xiàn)由管腳 PD_SCK 和 DOUT 組成,用來(lái)輸出數據,選擇輸入通道和增益。 當數據輸出管腳 DOUT 為高電平時(shí),表明AD 轉換器還未準備好輸出數據,此時(shí)串口時(shí)鐘輸入信號 PD_SCK 應為低電平。當 DOUT 從高電平變低電平后,PD_SCK 應輸入25至27個(gè)不等的時(shí)鐘脈沖(如圖4)。其中第一個(gè)時(shí)鐘脈沖的上升沿將讀出輸出 24 位數據的最高位(MSB),直至第 24 個(gè)時(shí)鐘脈沖完成,24位輸出數據從最高位至最低位逐位輸出完成。第25至27個(gè)時(shí)鐘脈沖用來(lái)選擇下一次AD轉換的輸入通道和增益,見(jiàn)表1。
PD_SCK 的輸入時(shí)鐘脈沖數不應少于25和多于27,否則會(huì )造成串口通訊錯誤。 當 AD 轉換器的輸入通道或增益改變時(shí),AD轉換器需要4個(gè)數據輸出周期才能穩定。DOUT 在4 個(gè)數據輸出周期后才會(huì )從高電平變低電平,輸出有效數據。
根據圖4所示的時(shí)序邏輯,讀取通道A,增益128倍,其讀取函數如下:
unsigned int ReadCount()
{
unsigned int ADval;
unsigned long Count;
unsigned char i;
PCR0 = 0xFB; //避免與I2C總線(xiàn)沖突
ADSK = 0;
Count = 0;
while(ADDO);
for (i=0;i<24;i++)
{
ADSK = 1;
Count = Count<<1;
ADSK = 0;
if(ADDO) Count++;
}
ADSK = 1;
;
ADSK = 0;
//判斷是否為負值,并顯示符號
if((Count & 0x800000) == 0x800000)
{
Count = ~(Count - 1);
LCDDATA16 |= 0x80;
}
else
{
LCDDATA16 = 0x00;
}
ADval = (int)(Count >> 8);//取高十六位有效值
B_AdFinish = 1;
return(ADval);
}
主程序流程如圖5所示。
程序主要由初始化代碼和主循環(huán)代碼構成。
上位機軟件設計
上位機軟件采用VB.NET 2005開(kāi)發(fā),主要功能為串行通信參數設置、IO測試、稱(chēng)重數值讀取、配方數據管理。
軟件運行界面如圖6所示。
該軟件的固件技術(shù)為串行指令的接收和發(fā)送,指令包括IO設定指令、IO狀態(tài)讀取指令、稱(chēng)重數值讀取指令、配方數據寫(xiě)指令、配方數據讀指令,其代碼實(shí)現如下:
'0.5秒定時(shí)發(fā)送 讀重量指令
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
command(0) = &H5A
If SerialPort1.IsOpen Then
SerialPort1.Write(command, 0, 1)
End If
End Sub
十六進(jìn)制數5A 表示讀取控制器的稱(chēng)重數值;
'IO輸出 指令
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
If CheckBox1.Checked Then
command(0) = &HF9
Else
command(0) = &HF1
End If
If SerialPort1.IsOpen Then
SerialPort1.Write(command, 0, 1)
End If
End Sub
十六進(jìn)制數F?表示該指令為IO輸出指令,其中第3位數據表示開(kāi)關(guān)狀態(tài),1表示閉合,0表示斷開(kāi),0,1,2位合起來(lái)表示IO通道號;
'讀取輸入信息
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
command(0) = &HF0
If SerialPort1.IsOpen Then
SerialPort1.Write(command, 0, 1)
End If
End Sub
十六進(jìn)制數F0表示該指令為IO狀態(tài)讀取指令,當單片機接到此指令時(shí),立即發(fā)送重量信息給上位機,格式如下:“I_?”,其中 ?即各個(gè)IO的狀態(tài),用1表示接通,0表示關(guān)斷。
結語(yǔ)
目前,我國半導體產(chǎn)業(yè)落后于西方巨頭,時(shí)代民芯作為國產(chǎn)半導體產(chǎn)業(yè)的領(lǐng)軍企業(yè),擁有雄厚的基礎,本文以時(shí)代民芯科技的MXT8051單片機為核心,研發(fā)通用配料控制器,因為該芯片擁有豐富的片內資源,可以簡(jiǎn)化設計,同時(shí),選用國產(chǎn)芯片,也是為民族半導體產(chǎn)業(yè)振興添磚加瓦。
本文的通用配料控制器,除了可以提高減水劑復配效率,改善產(chǎn)品質(zhì)量外,還可應用于其他相關(guān)的物料復配行業(yè)。此外,由于設計和測試時(shí)間有限,該控制器設計中還存在很多遺憾,有很大改進(jìn)空間,比如:可以應用片內運放調節零點(diǎn),提高稱(chēng)重精度;也可以將開(kāi)關(guān)電源集成入控制器,這樣可進(jìn)一步降低用戶(hù)成本,并節省空間。
參考文獻:
【1】MXT8051芯片數據手冊,時(shí)代民芯科技,2009年
【2】HX711中文 數據手冊,芯??萍?,2006年
【3】51單片機C語(yǔ)言應用開(kāi)發(fā)技術(shù)大全,人民郵電出版社,劉坤等,2008 年
【4】Visual Basic 2005高級編程,(美)Bill Evjen, Billy Hollis, Rockford Lhotka 等 ,2006 年
51單片機相關(guān)文章:51單片機教程
c語(yǔ)言相關(guān)文章:c語(yǔ)言教程
稱(chēng)重傳感器相關(guān)文章:稱(chēng)重傳感器原理
評論