基于SmaU RTOS51的汽車動(dòng)態(tài)稱重儀的設(shè)計(jì)
動(dòng)態(tài)汽車稱重是汽車以一定的速度經(jīng)過一定寬度的稱重臺(tái)面,由稱重臺(tái)面測出汽車每個(gè)軸的重量,然后累加得出汽車總重。該稱重過程是一個(gè)強(qiáng)實(shí)時(shí)過程,需要單片機(jī)及時(shí)采集汽車每個(gè)軸的數(shù)據(jù)并快速計(jì)算其重量。如果單片機(jī)速度過慢或者程序設(shè)計(jì)不合理,就會(huì)給儀表帶來穩(wěn)定性和可靠性的問題。當(dāng)前很多智能儀表的軟件采用前/后臺(tái)系統(tǒng)設(shè)計(jì),整個(gè)應(yīng)用程序是一個(gè)無限的循環(huán),后臺(tái)程序循環(huán)調(diào)用相應(yīng)的函數(shù)完成相應(yīng)的操作,中斷服務(wù)程序處理異步事件。這種傳統(tǒng)的程序設(shè)計(jì)思路有著明顯的不足。整個(gè)應(yīng)用程序是一個(gè)有機(jī)的整體,使得實(shí)時(shí)應(yīng)用程序的設(shè)計(jì)和擴(kuò)展困難,時(shí)間要求苛刻的事件難以達(dá)到快捷有效的處理,對(duì)事件的串行處理使得資源得不到很好的利用。在智能儀表中移植嵌入式操作系統(tǒng)能較好的解決以上問題,并使軟件開發(fā)工作變得規(guī)范、容易測試,實(shí)現(xiàn)模塊化編程和縮短開發(fā)周期。當(dāng)然RTOS本身需要占用一定的資源,隨著半導(dǎo)體技術(shù)的發(fā)展,器件的性能不斷上升、成本不斷下降,使得RTOS所消耗的成本不再重要。汽車動(dòng)態(tài)稱重儀就是移植了嵌入式操作系統(tǒng),在實(shí)際應(yīng)用中增強(qiáng)了系統(tǒng)穩(wěn)定性和可靠性。
2 系統(tǒng)總體方案
汽車動(dòng)態(tài)稱重儀主要由數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊、顯示模塊、數(shù)據(jù)通訊模塊、外部存儲(chǔ)器和外部看門狗組成,如圖1所示。數(shù)據(jù)采集模塊負(fù)責(zé)將稱重傳感器檢測到的重量信號(hào)放大、濾波,轉(zhuǎn)換成數(shù)字信號(hào)傳送給CPU;CPU負(fù)責(zé)與各個(gè)外設(shè)的通訊和重量信號(hào)的分析和處理,并將處理完的重量信號(hào)發(fā)送給顯示模塊和通訊模塊;顯示模塊負(fù)責(zé)重量信號(hào)的顯示:通訊模塊負(fù)責(zé)將重量信號(hào)發(fā)送到上位機(jī);外部存儲(chǔ)器存放儀表的參數(shù):按鍵用來設(shè)置和修改儀表參數(shù);外部看門狗用來提高儀表的抗干擾能力,增強(qiáng)儀表的穩(wěn)定性。
3 硬件電路設(shè)計(jì)
3.1 數(shù)據(jù)采集模塊
由于稱重儀表需要高精度,采用外接A/D轉(zhuǎn)換器,選用CS5532。該器件是美國Cirrus Logic公司推出的一種具有極低噪音的多通道型模擬/數(shù)字轉(zhuǎn)換器,由于其采用電荷平衡技術(shù)和極低噪聲的可編程增益斬波穩(wěn)定測量放大器,內(nèi)部集成了放大和濾波功能,可得到高達(dá)24位分辨率的輸出結(jié)果,且具有高動(dòng)態(tài)范圍和靈活的電源配置選項(xiàng)等優(yōu)點(diǎn),使得該器件非常適合于動(dòng)態(tài)稱重。其基準(zhǔn)電壓由專門的基準(zhǔn)電壓器件AD780提供。電路如圖2所示。
3.2 微處理器和外部存儲(chǔ)器
微處理器是系統(tǒng)的核心,其性能的好壞直接決定了稱重系統(tǒng)的準(zhǔn)確性、穩(wěn)定性和可靠性。基于汽車動(dòng)態(tài)稱重儀對(duì)精度和實(shí)時(shí)性的要求,選用PHILIPS公司的P89C668單片機(jī)。它具有以下特點(diǎn):
①片內(nèi)帶有8 KB RAM,64 KB Flash存儲(chǔ)器,該存儲(chǔ)器既可并行編程也可串行編程(ISP),在實(shí)際的成型產(chǎn)品中可通過ISP升級(jí)用戶程序;②該器件在6個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條指令,是傳統(tǒng)的80C51的2倍;在每個(gè)機(jī)器周期,6個(gè)時(shí)鐘周期下速度高達(dá)20 MHz(相當(dāng)于40 MHz性能);③該器件有4個(gè)8位I/O端口,3個(gè)16位定時(shí)器/事件計(jì)數(shù)器,多中斷源,4個(gè)優(yōu)選級(jí),可嵌套中斷結(jié)構(gòu),一個(gè)增強(qiáng)型UART和片內(nèi)振蕩器及時(shí)序電路;這些資源為系統(tǒng)的硬件設(shè)計(jì)提供足夠的I/O端口,為軟件復(fù)雜功能的實(shí)現(xiàn)和未來程序的擴(kuò)展,提供了足夠的程序存儲(chǔ)空間,為重量數(shù)據(jù)的采樣、濾波和稱重算法的實(shí)現(xiàn),提供了足夠的數(shù)據(jù)存儲(chǔ)空間,可采用ISP功能實(shí)現(xiàn)產(chǎn)品的軟件升級(jí)。
外部存儲(chǔ)器采用ATMEL公司的AT24C512器件,擁有64 KB存儲(chǔ)容量、I2C接口的電可擦除非易失EEPROM存儲(chǔ)器,為設(shè)置和校準(zhǔn)參數(shù)提供存儲(chǔ)空間。
評(píng)論