多年前就有做一下無線傳送數據的想法,最初在現實生活中接觸到的是摩托車防盜器上的遙控裝置,后來因為種種原因一直拖了下來沒有做成,最近憑著搞電波鐘解碼的余熱,利用了五一假期把這個無線傳數搞了出來。
無線傳數模塊在生活中應用途極廣,比如車輛監控、遙控、遙測、小型無線網絡、無線抄表、門禁系統、小區傳呼、工業數據采集系統、無線標簽、身份識別、非接觸RF能卡、小型無線數據終端、安全防火系統、無線遙控系統、生物信號采集、水文氣象監控、機器人控制、無線232數據通信、無線485/422數據通信、數字音頻、數字圖像傳輸等。此次采用的模塊是價格相對便宜的433M模塊,淘寶上價格7元一對,適合用于少量數據的傳送,還有些模塊是適合較高速率傳送的(達Mbps級別),但價格相對較高。此套模塊優點是成本低,抗干擾能力強,靈敏度高,傳送距離遠;缺點是傳送速率較低,一般在4Kbps下可以穩定傳送。
一、收發模塊技術參數
下面是發射和接收模塊的實物圖和對應的電路原理圖。其中天線是另外用細電線約20cm長繞圈形成。
1、通訊方式:調幅AM
2、工作頻率:433MHz
3、頻率穩定度:±75KHZ
4、發射功率:≤500MW
5、靜態電流:≤0.1UA
6、發射電流:3~50MA
7、工作電壓:DC 3~12V
DF數據發射模塊的工作頻率為433M,采用聲表諧振器SAW穩頻,頻率穩定度極高,當環境溫度在-25~+85度之間變化時,頻飄僅為3ppm/度。聲表諧振器的頻率穩定度僅次于晶體,而一般的LC振蕩器頻率穩定度及一致性較差,即使采用高品質微調電容,溫差變化及振動也很難保證已調好的頻點不會發生偏移。
DF發射模塊未設編碼集成電路,而增加了一只數據調制三極管Q1,這種結構使得它可以方便地和其它固定編碼電路、滾動碼電路及單片機接口,而不必考慮編碼電路的工作電壓和輸出幅度信號值的大小。比如用PT2262等編碼集成電路配接時,直接將它們的數據輸出端第17腳接至DF數據模塊的輸入端即可。
DF數據模塊具有較寬的工作電壓范圍3~12V,當電壓變化時發射頻率基本不變,和發射模塊配套的接收模塊無需任何調整就能穩定地接收。當發射電壓為3V 時,空曠地傳輸距離約20~50米,發射功率較小,當電壓5V時約100~200米,當電壓9V時約300~500米,當發射電壓為12V時,為最佳工作電壓,具有較好的發射效果,發射電流約60毫安,空曠地傳輸距離700~800米,發射功率約500毫瓦。當電壓大于l2V時功耗增大,有效發射功率不再明顯提高。這套模塊的特點是發射功率比較大,傳輸距離比較遠,比較適合惡劣條件下進行通訊。天線最好選用25厘米長的導線,遠距離傳輸時最好能夠豎立起來,因為無線電信號傳輸時受很多因素的影響,所以一般實用距離只有標稱距離的20%甚至更少。
DF數據模塊采用ASK方式調制,以降低功耗,當數據信號停止時發射電流降為零,數據信號與DF發射模塊輸入端可以用電阻或者直接連接而不能用電容耦合,否則DF發射模塊將不能正常工作。數據電平應接近DF數據模塊的實際工作電壓,以獲得較高的調制效果。
DF發射發射模塊最好能垂直安裝在主板的邊緣,應離開周圍器件5mm以上,以免受分布參數影響。DF模塊的傳輸距離與調制信號頻率及幅度、發射電壓及電池容量、發射天線、接收機的靈敏度、收發環境有關。一般在開闊區最大發射距離約800米,在有障礙的情況下,距離會縮短,由于無線電信號傳輸過程中的折射和反射會形成一些死區及不穩定區域,不同的收發環境會有不同的收發距離。
接收模塊主要技術指標:
1、通訊方式:調幅AM
2、工作頻率:433MHZ
3、頻率穩定度:±200KHZ
4、接收靈敏度:-106DBM
5、靜態電流:≤5MA
6、工作電流:≤5MA
7、工作電壓:DC 4.8~5V
8、輸出方式:TTL電平
接收模塊為超再生接收電路,L1C1選頻后信號進入Q1及周邊電路組成高放電路,Q2及周邊電路組成本振,接收的信號經過LM358雙運放整形為TTL電平的方波信號。輸出端常態為低電平,當接收到信號時,輸出為高電平。
二、測試電路
因為51MCU上電后IO口默認為高電平,因此在發射模塊前和接收模塊后加了三極管作反相,這樣常態下電平與MCU一致,將發射模塊直接連接在發射控制MCU的TXD,將接收模塊連接在接收MCU的RXD上。發射端編寫程序約隔1秒由串口發送一個數據,數據由0-9循環變化,以觀察數據是否正確傳送,數據通信采用異步方式,1開始位8數據位1停止位,每個數據共10個位;接收端MCU接收數據后送LCD1602 顯示。通信速率分別測試了2400bps、4800bps、7200bps、9600bps,其中2400bps及4800bps速率下數據均能穩定傳送無丟碼、誤碼,7200bps及9600bps速率下數據偶爾會亂碼,基于穩定性及兼顧傳送速率,在后面的程序中均采用4800bps速率。
發射端采用低電壓系列MCU,由二節1.5V電池供電,接收端連接在實驗板上進行測試。實際測試中,3V供電給發射模塊可以正常工作,兩機相隔約8米,中間隔二道墻,信號仍能穩定正確傳送。后來又測試了不加天線的情況,發現如果發射與接收均不加天線在上述條件下則會出現亂碼,任一端加上天線均能在上述條件下穩定正確傳送數據。發射端連同MCU在內,發射時平均約7ma電流,休眠時約幾ua,耗電量較理想,適合采用電池供電。
三、實際應用
完成測試后,對模塊工作原理及性能有初步了解,于是作進一步應用,控制發射模塊的MCU板原來是于測試電波解碼的,于是作了一點修改,將BPC信號(中國電波授時信號)及JJY信號(日本電波授時信號)解碼后通過DF模塊將時間數據發射出去,接收端接收后進行處理及顯示。
下面是連接BPC接收模塊的實物圖。
下面是連接JJY接收模塊的實物圖。
在測試電路中作單個數據的傳送較為簡單,目的是用于觀察數據傳送是否出錯,但在實際應用中,需要傳送的數據往往不止一位,當要進行多位數據的傳送時,需要在發射端及接收端做一個數據傳送的協議,并在必要時對傳送數據增設校驗,以確保傳送的數據正確無誤。
此次實驗需要傳送的時間數據包含年、月、日、星期、時、分、秒共7個,因為純數字不容易介定類型,所以最好是采取按順序傳送方式,另外增加數據頭以判斷一組數據的開始,另外在數據末端增加1個校驗數據用于判斷傳送的數據是否正確。一組數據結構如下:
數據頭+年+月+日+星期+時+分+秒+校驗
數據頭采用固定的0xfe、0xef,采用這樣特殊的組合是為了避免傳送的數據中出現與數據頭一致的情況,這樣一組數據一共有10位。以下是成功接收的數據,數據頭不顯示。
此組數據顯示的信息是:2012年、5月、1日、星期2、0時、26分、00秒。最后一個01是奇偶校驗數據。
因為本人所處位置離河南商丘約1300公里,離日本福岡約1800公里,所以信號較弱,一般都需要在凌晨時分才能正確接收,以上信息就是0時26分接收到的中國BPC授時信息,日本的授時信息至凌晨4點多才正常接收。經實際觀察,DF無線傳送模塊與電波授時信號在同一電路中沒有互相干擾,并經過一夜連續穩定工作。
四、使用感受
經過試用,覺得此模塊工作穩定、不容易受干擾、接口簡單、控制容易、價格低,零售7元一對的價格實際很有吸引力,雖然數據傳送速率較慢,但在一般傳送控制數據而非語音、圖像的應用中還是足夠的,以4800bps穩定工作的速率計算,每秒約可以傳送480個字節,扣除數據頭及校驗位等,也可以傳送約 300-400個有效數據,還是相當不錯的。下一步會考慮在實際更多的應用中使用此模塊,如多組數據采集無線傳送回主機,或主機發送控制信號多機同時接收同步受控等。