史增芳,周偉
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南南陽473000)
基于CC1010單片機的無線測速系統(tǒng)設(shè)計
史增芳,周偉
(河南工業(yè)職業(yè)技術(shù)學(xué)院,河南南陽473000)
摘要:石油鉆井滾動軸承的轉(zhuǎn)動速度需要進(jìn)行監(jiān)控,以便進(jìn)行數(shù)據(jù)收集及故障監(jiān)測。設(shè)計了一種基于CC1010單片機的無線測速系統(tǒng),在測量過程中無需與被測物直接接觸,避免了機械磨損,對被測物影響小,而且后期維護方便,應(yīng)用廣泛。對電路實物的實際測試結(jié)果表明,所設(shè)計的無線測速系統(tǒng)能夠準(zhǔn)確測量被測對象。關(guān)鍵詞:單片機;霍爾傳感器;速測;無線數(shù)據(jù)傳輸
石油鉆井作業(yè)是連續(xù)的作業(yè)過程,電機在運行過程中,轉(zhuǎn)速的平穩(wěn)性很重要,其對絞車和并車箱的壽命起決定性作用,需要適時對電機的轉(zhuǎn)速進(jìn)行測量,同時轉(zhuǎn)動速度也是對其進(jìn)行故障監(jiān)測的一項有效參數(shù)。目前,鉆井井場由于大都通過電纜方式將各傳感器提取的有效數(shù)據(jù)送達(dá)控制中心,造成工作現(xiàn)場設(shè)備繁雜,降低了系統(tǒng)的穩(wěn)定性,影響了電機的工作效率[1];本文介紹一種基于CC1010單片機的無線測速系統(tǒng),將CC1010單片機與霍爾測速傳感器相結(jié)合,實現(xiàn)無線收發(fā)并對轉(zhuǎn)速進(jìn)行測量和監(jiān)控。
基于單片機的無線轉(zhuǎn)速測量,本系統(tǒng)采用霍爾測速傳感器,用來檢測軸承轉(zhuǎn)速,利用傳感器將轉(zhuǎn)速信號轉(zhuǎn)換成電信號。測速數(shù)據(jù)無線收發(fā)從機模塊放置于鉆井現(xiàn)場,無線收發(fā)主機模塊放置于遠(yuǎn)處的監(jiān)測房內(nèi),可通過串口將無線接收到的數(shù)據(jù)上傳至上位計算機用于進(jìn)一步分析[2]。圖1為所設(shè)計的無線測速系統(tǒng)總體設(shè)計框圖。
圖1 無線測速系統(tǒng)總體設(shè)計框圖
3.1 CC1010無線單片機
CC1010單片機是挪威某公司推出的單片、低功耗、多頻段、超高頻射頻芯片,采用Chipcon公司的0.35μmCMOS技術(shù)制成,能夠為工業(yè)領(lǐng)域、科學(xué)研究領(lǐng)域、醫(yī)學(xué)領(lǐng)域提供四個工作頻段[3]。芯片內(nèi)集成了微處理器內(nèi)核、Flash程序存儲器、SRAM數(shù)據(jù)存儲器、定時器/計數(shù)器、看門狗、SPI接口、A/D轉(zhuǎn)換器、射頻收發(fā)器等功能模塊。適用于家庭自動化、安防系統(tǒng)、遙控開鎖、遙感勘測、遙控玩具等諸多無線應(yīng)用領(lǐng)域[4]。
CC1010芯片供電電壓范圍為2.7-3.6V,工作電流只有9mA,靈敏度為-107dBm,最大發(fā)射頻輸出為+10dBm,通信速率為76.8kb/s,符合EN 300 220和FCCCFR47規(guī)范。CC1010單片機還具有結(jié)構(gòu)簡單、易于擴展、成本低等優(yōu)點[5]。
CC1010無線收發(fā)模塊應(yīng)用電路圖如圖2所示,該芯片內(nèi)部寄存器控制其工作模式[6、7]。當(dāng)其處于接收數(shù)據(jù)狀態(tài)時,低噪聲放大器先將射頻輸入信號放大,其次將信號經(jīng)混頻器轉(zhuǎn)換成中頻信號,接著再次放大信號,最后濾波后傳輸至射頻寄存器。當(dāng)其處于發(fā)送數(shù)據(jù)狀態(tài)時,從壓控振蕩器出來的信號經(jīng)放大、調(diào)制后送達(dá)射頻寄存器[8-10]。
圖2 CC1010應(yīng)用電路圖
3.2霍爾測速傳感器
霍爾元件是利用霍爾效應(yīng)實現(xiàn)測量電轉(zhuǎn)換的一種元器件,它具有靈明度高、線性度好等特點,所以在測量技術(shù)、自動化技術(shù)及信息處理等方面得到了廣泛應(yīng)用,通常被用來測量位移、壓力、轉(zhuǎn)速等物理量[11]。轉(zhuǎn)速數(shù)據(jù)的采集采用A3144E霍爾傳感器,其是由電壓調(diào)整器、霍爾電壓發(fā)生器、史密特觸發(fā)器、差分放大器、集電極開路和溫度補償電路的輸出極組成的磁敏傳感電路。只要傳感器接收到磁感應(yīng)信號,就會輸出一個數(shù)字電壓訊號[12]。A3144E霍爾傳感器的優(yōu)點有體積小、靈敏度高、精確度高、反應(yīng)速度快、對工作環(huán)境的溫度要求不高(-20~85℃)等。
3.3測速電路
霍爾測速傳感器以霍爾元件為核心,加上外圍電路,構(gòu)成測速模塊用于轉(zhuǎn)速數(shù)據(jù)的采集[13]。具體將一塊永久磁鋼固定在轉(zhuǎn)軸上的轉(zhuǎn)盤邊沿,轉(zhuǎn)盤旋轉(zhuǎn),磁鋼也將跟著同步旋轉(zhuǎn),在轉(zhuǎn)盤下方安裝一個霍爾元件,轉(zhuǎn)盤隨軸旋轉(zhuǎn)時,受磁鋼所產(chǎn)生磁場的影響,霍爾元件輸出脈沖信號,對LM393產(chǎn)生輸入電壓。LM393電壓比較器將模擬量電壓信號和一個參考固定電壓相比較,在二者幅度相等的附近,輸出電壓將產(chǎn)生躍變,并相應(yīng)地輸出高電平或低電平。當(dāng)輸入電壓小于參考電壓時輸出高電平,當(dāng)輸入電壓大于參考電壓時輸出低電平??刂破髯R別得到處理后的脈沖信號,隨后進(jìn)行脈沖計數(shù),根據(jù)脈沖計數(shù)來實現(xiàn)轉(zhuǎn)速測量。以A3144E霍爾元件為核心搭建的測速傳感器電路圖如圖3所示。
圖3 測速電路圖
3.4串口電路
圖4所示電路主要由串行通信接口RS-232和單電源電平轉(zhuǎn)換芯片MAX232組成,是連接上位監(jiān)測機與CC1010的串行通信接口電路,具有低功耗、高集成等優(yōu)點。整個接口的電路簡單、可靠性高。串行電路模塊的串口電路圖如圖4所示。
圖4 串口電路圖
圖5 測速程序示意圖
圖6 無線發(fā)送流程圖
圖7 無線接收程序流程圖
4.1數(shù)據(jù)采集模塊軟件設(shè)計
霍爾測速傳感器的信號端與CC1010的P3.2外部中斷0口連接,下降沿觸發(fā),用于檢測霍爾測速傳感器產(chǎn)生的脈沖信號,對霍爾測速傳感器產(chǎn)生的脈沖信號進(jìn)行轉(zhuǎn)速計算,通過測量兩個輸入脈沖所需的時間來進(jìn)行測速。設(shè)2個脈沖之間的間隔時間為T,則轉(zhuǎn)速n=60/T。考慮到功耗的問題,加上沒必要時刻對轉(zhuǎn)速進(jìn)行檢測,本設(shè)計每間隔1秒開中斷檢測一次,當(dāng)轉(zhuǎn)速即將為零的時候有兩種情況出現(xiàn),程序中分別進(jìn)行如下處理:
(1)開中斷,在2秒內(nèi)單片機沒有再接收到脈沖信號中斷觸發(fā),這時認(rèn)為轉(zhuǎn)速已經(jīng)為零;
(2)開中斷,單片機接收到一個中斷,但在下1秒中沒有再接收到脈沖信號中斷觸發(fā),此時也認(rèn)為轉(zhuǎn)速已經(jīng)為零。
具體示意圖如圖5所示。所涉及程序包括三部分,分別為外部中斷0服務(wù)程序,其用于霍爾測速傳感器脈沖信號的接收處理;定時器1中斷服務(wù)程序,其用于兩脈沖信號外部中斷之間計時的溢出處理;定時器0中斷服務(wù)程序,其用于定時開啟中斷檢測,并對轉(zhuǎn)速數(shù)據(jù)進(jìn)行計算。這三種中斷,定時器1的中斷優(yōu)先級最高,外部中斷0的次之,定時器0的最低。4.2無線通信軟件設(shè)計
4.2.1收發(fā)程序軟件設(shè)計
無線收發(fā)主機模塊和從機模塊的無線接收程序均采用函數(shù)模塊形式編寫,直接調(diào)用,無線收發(fā)主機模塊將收到的信息轉(zhuǎn)發(fā)到上位監(jiān)測機。
無線發(fā)送流程圖如圖6所示,其完成數(shù)據(jù)包的發(fā)送,函數(shù)的參數(shù)有:前導(dǎo)字節(jié)數(shù)、發(fā)送數(shù)組首地址指針、發(fā)送數(shù)據(jù)長度。前導(dǎo)和同步字節(jié)都是在發(fā)送程序內(nèi)部自己完成的,包括校驗也是在發(fā)送完成后,并把16位校驗加在整個數(shù)據(jù)包后面發(fā)送出去。無線接收程序流程圖如圖7所示,接收時也一定按照上述順序:先發(fā)前導(dǎo),讓接收機準(zhǔn)備接收;發(fā)同步字節(jié),讓接收同步;發(fā)送數(shù)據(jù)長度,接收后,根據(jù)長度判斷接收結(jié)束;發(fā)CRC校驗,檢驗傳輸是否正確;最后一定要傳輸一個空子節(jié),保證所有有效數(shù)據(jù)傳輸完畢。
4.2.2串口數(shù)據(jù)軟件設(shè)計
在CC1010中有兩個串行接口,分別是串口0 (UART0)和串口1(UART1),可通過寄存器SCON0 和SCON1來控制,數(shù)據(jù)緩沖寄存器分別為SBUF0 和SBUF1。本設(shè)計中使用的是串口0。以下程序的作用是完成串口的初始化和串口發(fā)送數(shù)據(jù)的功能。函數(shù)voidUART_SETUP()是對串口需要的條件初始化,如RXD和TXD引腳的傳輸方向、波特率產(chǎn)生(9600b/s)等;函數(shù)uart0_send(byte d)是通過串口發(fā)送一個字節(jié)數(shù)據(jù);函數(shù)void Uart0_SendPacket(byte *packetdate,byte length)發(fā)送一組數(shù)據(jù)。
首先是對串口0進(jìn)行設(shè)置
void UART0_SETUP()
{
P3DIR|=0x01;∥I/O設(shè)置P3DIR&=~0x02;P3_1=1;
CKCON&=~0x10;∥T1M=1;PCON|=0x80;∥MOD1=1;TH1=0xF8;
∥TH1=256-14745600/(9600*16*4);TR1=1;
TMOD=(TMOD&0x0F)|0x20;
SCON0=0x10+0x40;
}
通過串口0發(fā)送數(shù)據(jù)
uart0_send(byte d)
{
EA=0;TI_0=0;SBUF0=d;
while(!TI_0);TI_0=0;EA=1;
}
通過串口0發(fā)送數(shù)據(jù)包
void Uart0_SendPacket(byte*packetdata,byte length){
while(length--)uart0_send(*packetdata++);}
經(jīng)過實驗測試,本系統(tǒng)實現(xiàn)了鉆井平臺上對轉(zhuǎn)速的測量以及數(shù)據(jù)的無線傳輸,通過安裝多個傳感器來實現(xiàn)對軸承的多點監(jiān)測,從而形成無線傳感器網(wǎng)絡(luò)系統(tǒng),并通過多點協(xié)作采集數(shù)據(jù)發(fā)送給觀察者對其進(jìn)行全面監(jiān)測。同時,系統(tǒng)可以將單向的數(shù)據(jù)采集變?yōu)殡p向的采集兼控制,這樣可以實現(xiàn)對機械的遠(yuǎn)程操控。該系統(tǒng)結(jié)構(gòu)簡單、實用性強,且具有良好的穩(wěn)定性。
參考文獻(xiàn):
[1]韓彬,李嬌蔓,李傳偉.鉆井井場數(shù)據(jù)采集無線節(jié)點的設(shè)計和實現(xiàn)[J].石油儀器,2009.
[2]張芳.基于無線傳感器網(wǎng)絡(luò)的機電監(jiān)測系統(tǒng)的應(yīng)用研究[D].成都:電子科技大學(xué),2008.
[3]孫維艷.內(nèi)嵌MCU的RF收發(fā)芯片CC1010及其應(yīng)用[J].科技信息,2008,5(1):80-81.
[4]李文仲,段朝玉.CC1010無線Soc高級應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007.
[5]鄭啟忠,朱宏輝,耿四軍.內(nèi)嵌51MCU的射頻收發(fā)芯片CC1010及其應(yīng)用[J].單片機與嵌入式系統(tǒng)應(yīng)用,2004,(11):41-44.
[6]鄭鋒凱.無線傳感器網(wǎng)絡(luò)在地震區(qū)山地災(zāi)害監(jiān)測中的應(yīng)用研究[D].太原:太原理工大學(xué),2010.
[7]Chipcon公司.CC1010數(shù)據(jù)手冊[Z].
[8]霍爾測速傳感器數(shù)據(jù)手冊[Z].
[9]丁芝琴.基于霍爾傳感器的電機測速裝置設(shè)計[J].農(nóng)機化研究,2010,(5):81-83.
[10]賴義漢.基于單片機的無線轉(zhuǎn)速測量儀設(shè)計[J].自動化技術(shù)與應(yīng)用,2013,31(1):76-78.
[11]無線龍.現(xiàn)代無線傳感網(wǎng)概論[M].北京:冶金工業(yè)出版社,2011.
[12]楊立林.基于CC1010無線傳感器網(wǎng)絡(luò)節(jié)點研究與設(shè)計[J].南京曉莊學(xué)院學(xué)報,2009,(6):86-89.
[13]侯向鋒.基于運動加速度的步態(tài)識別研究[D].武漢:華中師范大學(xué),2007.
中圖分類號:TP216
文獻(xiàn)標(biāo)識碼:A
文章編號:1005—7277(2015)06—0036—04
作者簡介:史增芳(1973-),河南焦作人,博士研究生,副教授,主要研究方向為機械電子工程。
收稿日期:2015-10-09
Design of wireless velocity measuring system based on CC1010 MCU
SHI Zeng-fang,ZHOU Wei
(Henan Polytechnic Institute,Nanyang 473000,China)
Abstract:The rotational speed of petroleum drilling roller bearing needs to be monitored for data collection and fault monitoring.A wireless velocity measuring system based on CC1010 MCU is designed,which does not require direct contact with the measured object during measurement.It can avoid mechanical wear and has little effect on the measured object.Moreover,it is easy for post-maintenance and can be widely used.The testing results show that the designed wireless velocity measuring system can accurately measure the velocity of the measured objects.Key words:MCU;Hall sensor;velocity measurement;wireless data transmission