谘詢電話
ENGLISH0755-88840386發布時間:2021-10-15 14:35:19 |來源:網絡轉載
提出了一種基於C8051F064和CC1101的近距離無線傳輸稱重控製器的設計,將嵌入式技術和無線通信技術有機結合起來,采用了二級定量稱重控製,該控製器實時性強,穩定性好,有著廣泛的應用前景。
1稱重控製器的工作原理
稱重控製器以C8051F064為信息處理單元,並以CC1101為無線通信單元,主要由稱重信號采集模塊、鍵盤和稱重顯示模塊、輸入輸出控製電路、無線傳輸模塊等部分組成。當稱重傳感器上裝載重物時,稱重傳感器產生與被測物體載荷成正比的電壓信號,電壓信號經放大和濾波後,傳送至C8051F064單片機內部的16位的AD轉換器轉換,完成稱重信號的采集,經單片機數據處理後通過顯示電路顯示被測物體載荷的大小。稱重控製器利用CC1101無線傳輸模塊,將數據通過無線傳輸的方式發送至上位計算機。
2硬件電路的設計
2.1信號采集電路
信號采集電路由稱重傳感器、放大濾波電路及C8051F064內的16位AD轉換器等組成。稱重傳感器采用電阻應變式傳感器,實現將稱重載荷信號轉換為微弱的電壓信號。放大濾波電路采用TI公司的OPA37和OP07等組成。該電路將稱重傳感器輸出的電壓信號進行放大和濾波。
2.2輸入輸出控製模塊
輸入輸出控製模塊用於實現加料門和排料門的控製。加料門有兩種加料狀態:快加料、慢加料。控製輸出模塊由TLP521-4光電耦合器和S8050驅動三極管等器件組成,用於將控製信號經光電耦合器和三極管驅動後,對繼電器和相應的加料門和排料門進行控製。控製輸入模塊主要用於檢測加料門和排料門位置傳感器輸入信號的狀態。先檢測排料門傳感器,如確認排料門處在關閉狀態,則可以加料。加料時首先進入快加料,當快加料達到預定值時,單片機接口P5.0輸出控製信號使加料門置於慢加料工作狀態;然後進行慢加料,慢加料結束時,單片機接口P5.1輸出信號關閉加料門,結束加料,並且檢測加料門位置傳感器,如確認加料門處在關閉狀態,則可以排料,排料結束後進入下一個過程。
3數據預處理
采集到的重量數據受各種幹擾影響,必須先進行預處理。本文采用一種滑動平均濾波法對稱重數據預處理。滑動平均濾波則k時刻濾波器的輸出數
學表達式如下:
由(1)式可知,滑動平均濾波器首先采集2N+1個數據並分別存入2N+1個內存單元;完成2N+1個稱重數據的初次采樣後,以後每采樣一次,每次采樣的新數據放入隊尾,並扔掉隊首的一次數據,把隊列中的2N+1個數據求平均運算,即獲得新的濾波數據輸出序列。滑動平均濾波器長度2N+1由AD轉換速率和稱重結果穩定時間決定。C8051F064的AD轉換速率最大可達1Msps,本設計采用的采樣周期為4.5ms,並考慮短時間內采樣值的穩定,經多次試驗取2N+1=15。
4軟件設計
稱重控製器的主程序主要實現信號采集和處理、加排料控製、重量顯示和無線數據傳輸等功能。
4.1數據采集
數據采集通過向ADC0控製寄存器的AD0BUSY寫“1”啟動數據轉換,當查詢到ADC0控製寄存器的AD0INT為“1”時,轉換結束,接著處理ADC數據。
數據采集的程序如下:
voidGetADdata()
{charold_SFRPAGE=SFRPAGE;
intidatatemp;
BYTEADH,ADL;
temp=0;
SFRPAGE=ADC0_PAGE;
AD0INT=0;
AD0BUSY=1;
while(AD0INT==0);
SystemDelay(20);
ADH=ADC0H;
ADL=ADC0L;
temp=ADH;
temp=temp<<8;
temp=temp+ADL;
SFRPAGE=old_SFRPAGE;
}
4.2控製子程序
控製程序中用的二級定量分為快加料目標量M1,慢加料目標量M2。當快加料重量達到M1時,快加料過程結束;控製加料門變為慢加料,進入慢加料過程,慢加料達到M2時,慢加料過程結束,關閉加料門,M2=M-M3,其中M為設定目標量,M3為提前量。從發出關閉加料門指令到關上加料門這段時間內,加料口繼續加料,會出現一個落差量(也就是提前量),所以要提前關閉加料門,才能確保加料更準確。
4.3無線通信模塊軟件設計無線通信功能模塊主要由CC1101接收和發送程序組成,單片機通過SPI接口對CC1101進行配置。當CSn為低電平時,SPI接口開始工作,準備接受一條指令,CSn由高到低跳變時開始轉換指令。
CC1101發送模式編程過程:
1)發送模式初始化,對要發送的數據進行編碼;
2)使能TX狀態,傳數據到TXFIFO,如果數據沒有全部傳輸到TXFIFO,則MCU進入低功耗模式;
3)如果發送數據小於256時采用固定長的發送,否則采用無限長度發送。
CC1101接收模式編程過程:
1)接收模式初始化,並設置無限接收字節長度模式,使能接收中斷選通接收狀態;
2)激活接收模式,如果所有字節沒有全部被讀到RXFIFO,則MCU將設置為低功耗模式;
3)對RXFIFO數據包進行解碼,讀出有效載荷送入單片機。
5結束語
該稱重控製器能實時地將測量數據通過無線傳輸的方式發送給上位計算機,並可以通過組網方式實現對分散的測量數據集中管理,此無線稱重控製器實時性強,穩定性好。
本文源於網絡轉載,如有侵權,請聯係刪除