胡家華,徐 鵬,鄭昌雨,周 揚,梁春陽,寧 宇
(哈爾濱理工大學,黑龍江 哈爾濱150080)
隨著科學技術的快速發展,無線技術也得到了長足的發展,尤其是無線通信技術可以用日新月異來形容。無線技術中包含射頻技術、集成電路技術、無線通信技術,這些技術的發展都給無線數據傳輸系統的設計帶來了極其便利的條件,也使無線數傳系統日益完善,其應用的范圍也越來越廣泛。數據傳輸可以簡單分為有線(光纜、電纜、電信專用線)和無線(建立專用的無線傳輸系統,頻率在433 MHz或2.4 GHz頻段;或者是借用CDPD、GSM、CDMA等公用網信息平臺)兩大類。相比較而言,用無線數傳模塊建立專用無線數據傳輸系統方式比較其他方式有如下優點:成本低廉、建設工程周期短、適應性好、擴展性好,工況惡劣不易架線的環境更適應采用無線數據傳輸系統。油田抽油機運行參數是油田生產部門分析單井產量、單井生產損耗、機井是否運行正常以及機井作業的有效數據,以此可以分析抽油機系統效率,探討抽油機系統效率的影響因素,包括油井供液不足、大馬拉小車和井深、高氣油比等的影響。而油田抽油機井大部分都分布在野外,其工作環境比較惡劣。本文介紹采用KYL-102L模塊結合STC12C560S2單片機設計油田抽油機運行電參數測量的無線數據傳輸系統,實現測量數據的無線收發。
KYL-1020L是一款低功率無線數傳模塊,適合制作遠距離的無線數據傳輸產品。其體積小、功耗低、穩定性強,為用戶提供雙向的數據信號傳輸、檢測和控制功能,比較適合水電氣三表、門禁系統、智能儀器儀表、樓宇控制等設備。其特點是:發射功率為500 mW;接收靈敏度為-118 dB/m(對應9 600 b/s);載頻頻率為433 MHz,無需申請頻點;采用FSK/GFSK調制方式,其傳輸距離可達2 km(空曠地)。其信號連接采用單排9針連接器,引腳信號如表1所示。

表1 KYL-1020L模塊引腳信號說明
由表1可見,該模塊的串行數據收發引腳有6#和7#以及3#和4#引腳,這兩對引腳在使用時是有區別的。如果單片機采用RS232串行異步通信方式,則KYL-1020L模塊要用6#和7#引腳與單片機系統的RS232串行通信的收、發引腳互聯,兩者的電平是RS232電平;如果單片機系統采用單片機本身的串行通信引腳對外進行數據的收發傳遞,此時,KYL-1020L模塊要使用4#和3#引腳與單片機的串行通信的收發引腳互連,兩者的信號電平都是TTL電平。
STC單片機是宏晶科技公司開發的完全兼容MCS-51系列的單片機,其芯片的內核和指令系統完全兼容MCS-51單片機,并在51單片機的基礎上增加了許多功能部件,如芯片本身集成了大容量程序存儲器、提高芯片的時鐘運行頻率等,尤其是在程序下載方面更具特色,它完全拋棄了以往單片機程序下載需要編程器的概念,而是直接通過臺式計算機的RS232串口將編寫好的程序下載到單片機芯片中的程序存儲器中,目前還可以通過芯片轉換技術將單片機的普通串行通信口轉換為USB接口,由臺式計算機或筆記本電腦的USB接口將程序直接下載到單片機芯片中,特別方便現場對程序的修改和下載以及筆記本電腦沒有RS-232串口的使用情況。本文采用的是STC12C5A60S2單片機,其主要的特點是:芯片本身集成有10位8路A/D轉換器,能滿足一般工程的需要;集成在芯片上的60 KB Flash程序存儲器,方便用戶的程序下載;芯片的工作電壓為3.5 V~5.5 V,電壓范圍比較寬,適應在工業環境中用;芯片本身集成有上電復位電路,省去了片外上電復位電路,簡化了印刷電路板的結構等。
采用STC12C5A60S2單片機結合KYL-1020L模塊構成的油田抽油機運行電參數測量的無線數據傳輸系統,系統接收部分的部分電路原理圖如圖1和圖2所示。圖1是STC單片機與KYL-1020L模塊連接原理示意圖,其中元件U11表示KYL-1020L模塊的連接器,根據表1所示引腳信號,將U11的7、6、5號引腳分別與STC單片機的P3.1、P3.0、GND引腳相連,這樣STC單片機與KYL-1020L模塊之間串行通信數據的邏輯電平為TTL電平,當KYL-1020L模塊接收到無線數據后,通過模塊內部的調制解調電路將接收到的數據解調為TTL電平的數字信號,再通過串行通信的形式傳給單片機,單片機對數據進行處理和保存。U5元件是串行的非易失的數據存儲器,用來保存數據,系統掉電后,數據不丟失,該器件I2C是總線接口,單片機的P1.2、P1.3引腳分別與該器件的時鐘線(6腳)和數據線(5腳)相連,單片機用軟件來模擬I2C總線時序。U2元件是數據總線驅動器,用來提高數據口(P0口)的驅動能力。
圖2是無線數據收發系統接收部分的鍵盤顯示電路的原理圖。采用了7279芯片作為鍵盤顯示管理芯片,該芯片是串行接口芯片,與單片機之間的連接只需4根信號線:片選信號(/CS)、時鐘信號(CLK)、數據信號(DATA)、狀態信號(/KEY)。該芯片自動完成對鍵盤和顯示器(數碼管顯示器)的掃描工作,無需單片機的過問。單片機只需將要顯示的數據通過串行方式傳給該芯片或是從該芯片讀出按鍵的鍵值即可,故讀鍵和顯示的程序設計能簡化一些。由圖2可見,該芯片的片選信號、時鐘信號、數據信號和狀態信號分別與STC單片機的P4.3、P4.2、P4.0、P4.1引腳相連,與單片機的連接線非常簡單。
無線數據收發系統發送部分的電路原理圖仍采用圖2所示原理圖,該部分應該和油田抽油機運行電參數測量部分連接在一起,形成一個裝置。油田抽油機運行電參數測量的數據主要是電壓、電流、功率、功率因數和電能的測量。

圖1 STC單片機與KYL-1020L連接原理示意圖

圖2 接收系統的鍵盤與顯示電路原理圖
KYL-1020L模塊能將要發送的數據調制成適合無線發送的模擬信號,由天線發送出去,無需STC單片機的過問,只需完成STC單片機與KYL-1020L模塊之間的數據傳遞問題即可。由于STC單片機與KYL-1020L模塊之間是串行通信,因此要完成串行通信的初始化工作。設定串行通信的波特率為9 600 b/s,用單片機的定時器1作為串行通信的波特率發生器,并將其設定在定時器的工作方式2,即T1工作在自動重裝的8位定時方式,這時定時器T1的溢出率取決于TH1中的初值。而單片機的串行通信的方式采用方式1,數據發送是10位幀格式,串行通信采用異步半雙工通信方式,即通信雙方發送和接收信息是分時段交替進行的,雙方不能同時進行收發操作。通信的數據格式為每幀10位,其中0位起始位,8位數據位,1位停止位。一幀數據的格式如圖3所示。數據的發送是低位在先,高位在后。

圖3 發送一個字節的幀格式
串行通信方式1的波特率的計算公式為:

其中,SMOD是單片機芯片內部的電源控制寄存器PCON中的D7位,可取值為0或為1;fosc是表示單片機外接的晶體振蕩器的頻率。
在實際應用中,數據傳送的波特率最好選擇標稱值,又由于TH1的初值是整數,為了減小波特率計算誤差,單片機外接的晶振頻率盡量選用11.0 592 MHz,這樣串行通信方式1的波特率與TH1的初值的對應關系基本上是一個確定值,如表2所示。

表2 串行通信方式1與TH1初值關系表
根據表2,如果串行通信的波特率選用9 600 b/s,則裝入單片機定時器1的TH1中的初值就是FDH,通過下面的程序完成初始化。
初始化程序:

以上是初始化程序,發送一個字節的程序如下:

KYL-1020L模塊能將接收到的無線數據信號解調為數字信號,再通過串行通信的方式傳遞給STC單片機。因此這里同樣存在著串行通信的初始化設計,其設計過程與3.1節介紹的初始化過程完全一樣。下面給出接收一個字節的程序樣單。
接收一個字節的程序如下:


采用STC12C5A60S2單片機結合KYL-1020L模塊構成的油田抽油機運行電參數測量的無線數據傳輸系統,已在某油田的一個環境比較惡劣的小區塊試運行,其效果還是比較理想。該系統減輕了上井人員的工作強度,提高了數據采集的效率。通過無線收發系統接收的數據與直接上井采集的數據相比較,收發數據的錯碼率非常低,比較適合在油田推廣應用。
[1]李全利.單片機原理及接口技術[M].北京:高等教育出版社,2009.
[2]張永瑞.電子測量技術基礎[M].西安:西安電子科技大學出版社,1994.
[3]趙新民.智能儀器設計基礎[M].哈爾濱:哈爾濱工業大學出版社,2007.