李海 王慧 趙浚堅 周志毅
摘要:紙張計數(shù)顯示裝置基于RT-Thread實時操作系統(tǒng),硬件平臺采用STM32F103單片機為主控制器,以具有抗電磁干擾(EMI)架構(gòu)的模塊作為電容采集傳感器,通過屏蔽雙絞線連接至兩銅極板,讀取采集的數(shù)據(jù)并進行相應(yīng)判斷,應(yīng)用觸摸屏和語音模塊進行狀態(tài)顯示與播報。
關(guān)鍵詞:CD4069;卡爾曼濾波;模糊算法;RT-Thread STM32
中圖分類號:TP83 文獻標識碼:A 文章編號:1007-9416(2020)06-0008-02
0 引言
紙張計數(shù)顯示裝置涉及的主要就是測頻率值,通過CD4069非門構(gòu)成的非對稱式多諧振蕩器,頻率不會出現(xiàn)范圍跳動,相對穩(wěn)定,非門構(gòu)成的非對稱式多諧振蕩器的振蕩頻率理論上可以高達4M,實際我們測的話能達到2M左右,頻率越高,最后測紙數(shù)越多的時候它的區(qū)分度越好。通過主控芯實現(xiàn)計數(shù)功能、計時功能和頻率換算,之后進行算法編程,計算出紙張數(shù)量,最終實現(xiàn)人機交互,并由1602顯示[1]。
1 總體方案設(shè)計
本系統(tǒng)主要由電容式傳感器模塊、測量方案的論證與選擇、壓力式結(jié)構(gòu)、控制系統(tǒng)組成,以STM32F103單片機為核心,利用單片機的計數(shù)定時功能實現(xiàn)頻率計數(shù),并且采用加權(quán)平均算法,借鑒于卡爾曼濾波算法。其次,在模糊控制中有多重解模糊的方式:面積平分法、加權(quán)平均法(重心法)、平均最大隸屬度法等。根據(jù)系統(tǒng)的特性,我們選用平均最大隸屬度法進行解模糊運算。結(jié)合這兩個算法減小誤差,最終計算出紙張數(shù)量并送到顯示電路顯示。
2 硬件電路設(shè)計
本系統(tǒng)裝置系統(tǒng)結(jié)構(gòu)框圖如圖1所示,裝置STM32模塊、電容極板(采集紙張數(shù)量模塊)、CD4069、驅(qū)動層、LCD顯示模塊組成。以STM32F103單片機作為主控芯片來完成該信標智能檢測系統(tǒng)。
2.1 測量和壓力式結(jié)構(gòu)模塊
用放置重物壓緊,四周打定位孔用螺栓插入,使其相對面積基本保持不變。這種方式制做稍微繁瑣,但兩個極板之間的受力較為均勻,調(diào)試方便,穩(wěn)定性較好[2]。
CD4069非門構(gòu)成的非對稱式多諧振蕩器,頻率不會出現(xiàn)范圍跳動,相對穩(wěn)定,非門構(gòu)成的非對稱式多諧振蕩器的振蕩頻率理論上可以高達4M,實際測能達到2M左右,頻率越高,最后測紙數(shù)越多的時候它的區(qū)分度越好。
2.2 控制系統(tǒng)模塊
系統(tǒng)使用ST公司的STM32F103,STM32系列是一款基于Cortex-M3內(nèi)核的中低端的32位ARM微控制器,最高工作頻率可達72MHz。內(nèi)部帶有高速、高精度定時器,將其時鐘源配置為外部時鐘,就可以對外部脈沖信號進行脈沖計數(shù),還帶有單周期乘法和硬件除法。為了保證系統(tǒng)的測量的精度和設(shè)計所限制時間,決定選用STM32F103單片機。
3 軟件設(shè)計
3.1 系統(tǒng)總體工作流程
軟件部分主要分成用戶交互設(shè)計以及數(shù)據(jù)處理算法設(shè)計,基于RT-Thread實時操作系統(tǒng),利用系統(tǒng)的線程調(diào)度完成各個模塊的程序處理[3]。
3.2 程序設(shè)計思路
在整體軟件中,首先在觸摸屏菜單進行人機交互,進入不同的功能調(diào)用不同的控制函數(shù)與數(shù)據(jù)處理算法。程序線程調(diào)度,主要分為簡單任務(wù)以及核心算法算法任務(wù)。簡單任務(wù)為IO設(shè)備、觸摸屏、OLED屏幕、語音模塊、NB-IOT模塊等設(shè)備控制;核心控制算法任務(wù)為CD4069電容模擬值采集、卡爾曼濾波以及模糊求解最大可能性落點區(qū)間,從而得到當前紙張數(shù)量。
3.3 系統(tǒng)理論分析與計算
3.3.1 加權(quán)平均算法
本次設(shè)計中,軟件方面采用了加權(quán)平均算法,借鑒于卡爾曼濾波算法。根據(jù)觀察可以發(fā)現(xiàn),下一秒的頻率值永遠比上一秒的頻率值更準確(在僅考慮間距的狀態(tài)下),因此可以分配給下一秒的頻率權(quán)重值更大,而上一秒的權(quán)重更小。在算法中,一共在一秒內(nèi)采集5個數(shù)據(jù)(200ms定時采集一次),那么這5個數(shù)據(jù)一定有著不同的權(quán)重值。人為設(shè)定為第一秒權(quán)重為0.1;第二秒權(quán)重為0.1;第三秒權(quán)重為0.2;第四秒權(quán)重為0.3;第五秒權(quán)重為0.3,權(quán)重總和為1。那么這個新數(shù)據(jù)肯定是這五個數(shù)據(jù)的加權(quán)平均值。將新數(shù)據(jù)作為最終當前紙張的頻率值。
3.3.2 模糊算法
在模糊控制中有多重解模糊的方式:面積平分法、加權(quán)平均法(重心法)、平均最大隸屬度法等。根據(jù)系統(tǒng)的特性,我們選用平均最大隸屬度法進行解模糊運算。模糊推理結(jié)果為輸出論域上的模糊集,通過平均最大隸屬度法,取模糊集中具有最大隸屬度的所有點的平均值作為去模糊化的結(jié)果,由此可得到論域上的精確值[4]。
4 電路的測試結(jié)果集分析
測試數(shù)據(jù)分析:
(1)保持測試環(huán)境不變,采集50個樣本,通過MATLAB擬合出紙張頁數(shù)與傳感器原始數(shù)據(jù)的曲線關(guān)系。
(2)根據(jù)(1)中采集50個樣本,確定電容模擬值及紙張數(shù)論域,劃分模糊子集。
(3)根據(jù)(2)中劃分的模糊子集,保持測試環(huán)境不變,固定測量35張紙張,采集到的原始數(shù)據(jù)90%落入35張頁數(shù)所對應(yīng)的區(qū)間[401.35,399.50]。
(4)根據(jù)(2)中劃分的模糊子集,保持測試環(huán)境不變,固定測量46張紙張,模擬值大部分落入46張頁數(shù)所對應(yīng)的區(qū)間[383.6,382.7]。
分析與結(jié)論:根據(jù)上述測試數(shù)據(jù)可知,采集到的原始數(shù)據(jù)與紙張數(shù)大致呈冪函數(shù)關(guān)系,通過劃分規(guī)則控制表,確定每個區(qū)間的隸屬度,可推算出當前的紙張數(shù)量。隨著紙張數(shù)量的增加,頻率變化逐漸變小,造成紙張越過范圍后,測量誤差越大。
5 結(jié)論
本系統(tǒng)在完成了題目要求的同時,還增加觸摸屏進行人機交互,具有十分友善的GUI,并增加了語音提示功能。系統(tǒng)的穩(wěn)定測量源于機械結(jié)構(gòu)的創(chuàng)新特性,采用固定鉸鏈式抗干擾結(jié)構(gòu),確保上下極面的正對面積保持不變。整個系統(tǒng)的構(gòu)建源于機械結(jié)構(gòu)、電路設(shè)計、軟件設(shè)計的合理架構(gòu),最大亮點是基于RT-Thread實時操作系統(tǒng)進行線程調(diào)度,極大程度的利用了MCU的資源,使得系統(tǒng)響應(yīng)快、穩(wěn)定性高。此外,基于電容檢測的特性,增加了擴展功能以適應(yīng)一些生活應(yīng)用場景,包括材料識別,預(yù)先采集材料閾值,進行不同材料的區(qū)分;紙幣識別,識別不同紙幣的面額。
參考文獻
[1] 譚浩強.C程序設(shè)計[M].第2版.北京:清華大學出版社,1999.
[2] 周靜,鄭卉.C語言程序設(shè)計實例教程[M].北京:中國人民大學出版社,2011.
[3] 李良榮.現(xiàn)代電子設(shè)計技術(shù):基于Multisim 7[M].北京:機械工業(yè)出版社,2015.
[4] 石偉,龍永紅.基于灰度投影法的硬板紙計數(shù)方法研究與實現(xiàn)[J].包裝學報,2015,25(4):47+51.