引言
GPS是一項成熟的技術,但是,在我國,民用產品開發方面還不算非常普及,主要集中在導航設備中。在學校,老師工作、學生學習的時間安排等信息往往是通過打鈴儀進行傳播的。學校現有的打鈴儀一般采用時控開關進行控制,時控開關內部由單片機作為主控芯片,走時系統主要依賴于里面的時鐘芯片,時鐘芯片的精度很大程度上取決于外接的晶振,晶振的精度總會存在誤差,時間長了,誤差累計,系統計時就會出現較大的誤差。比如,一個月后,時鐘總是會快或者慢1到2分鐘。隨著時間的推移,誤差會越來越大。所以,每隔一段時間必須通過人工進行維護校準。當學校面積較大時,可能需要用到多個時控開關,而這些時控開關各自的精度也不一定一樣。這樣,勢必會造成作息鈴聲不同步,并且普通的時控開關與打鈴儀之間的連接是通過電線來實現的,中間的線路老化問題也不可避免。通過GPS授時來實現打鈴控制,可以做到時間準確無誤,無需人工校準。通過無線模塊進行傳輸控制信息,可能做到強電與弱電分離,省去控制設備與被控制設備中間電線。線路簡潔,更加安全可靠。對于學校、企事業單位、工廠、部隊等需要用來做作息打鈴和時間控制等場合來說,具有非常良好的應用前景。
1 設計思路與方案
要解決現有學校打鈴設備打鈴時間不準的問題,必須要有一個準確的計時系統和一個可靠的控制打鈴的設備,兩者缺一不可。如果只有計時系統準確,而控制打鈴的設備不能可靠地執行,或者控制打鈴的設備能可靠地執行,而計時系統不準。這樣都無法準確地實現打鈴。
針對上述問題,解決的思路是這樣的:一是利用衛星授時,可以做到高準確性,程序里可以設置每5S鐘校準一次。也就是說幾乎每時每刻都能保持與國家授時中心的時間一致。二是在被控設備上,采用的是無線驅動,即控制系統通過2.4GHz的無線電信號來控制我們的打鈴等設備。
具體的做法是:利用GPS模塊接收衛星標準時間,通過串行通信傳輸給單片機,單片機將信號解調出來,完成對時鐘模塊的校時。操作者可通過紅外遙控器進行設置(打鈴時間、鬧鐘等)。系統可以根據操作者設置的時間,通過無線模塊將指令傳輸給遠端繼電器模塊,并通過繼電器模塊驅動各種控制設備從而實現相應的功能。系統功能框圖見圖1,顯示界面見圖2。
該設計能實現以下功能:GPS自動授時,接收衛星時間,完成對時鐘芯片的授時;無線傳輸控制信號,控制打鈴設備與家用電器或者學校電器設備的工作;定時打鈴功能,可對打鈴設備進行定時打鈴,并可對家用電器或者學校電器設備進行定時開機與關機;消防、地震警報,在出現火災或地震來臨時報警,自動或是手動觸發警報裝置;萬年歷顯示,在液晶屏上顯示年、月、日、時、分、秒,農歷、溫度和24節氣;生日提醒與節日提醒功能,利用大屏幕液晶顯示器顯示相應的文字,對全家人的生日和節假日進行提醒;軟件動態校時,可對時鐘誤差進行修正(在不用GPS時),保證走時精度;按鍵與紅外遙控器兩種設置模式,紅外可提高操作靈活性,更加安全。
2 GPS模塊硬件與軟件設計
2.1 硬件設計
GPS模塊采用瑞士u-blox公司的 NEO-6M主芯片,此芯片為多功能獨立型GPS模組,以ROM為基礎架構,成本低,體積小,并具有眾多特性。內置陶瓷天線,可使用USART串口TTL或IIC通信。串口波特率默認9600,4800和38400bps,NMEA通信協議。UBX協議下串口波特率57600bps。
本模塊采用內置28db增益二級放大有源天線,高增益,高信號,高精度。
本文引用地址:https://www.eepw.com.cn/article/266055.htm
(1)可以根據需求定制波特率,4800、9600、38400、19200、115200。
(2)可以根據需求定制輸出頻率,1Hz-5Hz任意選。
(3)可以根據需求定制輸出電平,TTL/USB/232可選。
GPS模塊共有6個引腳,分別是1-BOOT、2-電源VCC、3-RXD、 4-TXD、5-GND、 6-PPS , 6個引腳,其中1腳BOOT 是廠家內部升級使用、PPS是一個脈沖周期為1秒、高電平為100ms的秒脈沖輸出端。該電路中使用的是RXD、TXD、電源與地四個引腳。GPS模塊的TXD、RXD與單片機串行口RXD、TXD相連。電路見圖3。
2.2 軟件設計
GPS模塊通過串口向單片機發送固定格式的數據,單片機的串口接收到數據后,進行解析,提取出年、月、日、時、分、秒等信息,然后與時鐘芯片DS1302的時間信息進行比對,不同則修改,程序流程圖見圖4。
NMEA-0183協議定義的語句很多,以“$”開始,常用的兼容性最廣的語句主要有$GPGGA,$GPVTG,$GPRMC。其中:
本文引用地址:https://www.eepw.com.cn/article/266055.htm
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh
<1> 為UTC時間,hhmmss(時分秒)格式 。
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh
<9> 為UTC日期,ddmmyy(日月年)格式 。
$GPRMC在本設計中沒有用到。
由于GPS波特率的原因,必須使用11.0592M晶振,否則單片機解析不出數據包。
3 2.4GHz無線模塊硬件與軟件設計
3.1 硬件設計
2.4GHz無線模塊使用的是nRF2401,nRF24L01是NORDIC公司生產的一款無線通信芯片,采用FSK調制,內部集成NORDIC自己的Enhanced Short Burst協議。可以實現點對點或者是1對6的無線通信。無線通信速度可以達到2Mbps。
nRF2401是3.3V供電,電壓過低或過高都會對通信造成影響,要么不能完全通信要么斷斷續續地通信,需要穩壓到3.3V,可以采用穩壓二級管,也可以使用LM317進行穩壓。電路見圖5。
3.2 軟件設計
nRF2401有工作模式有四種:收發模式、配置模式、空閑模式和關機模式。nRF2401的工作模式由PWR_UP 、CE和TX_EN和CS三個引腳決定,詳見表1。
收發模式下有兩種通信方式:ShockBurstTM模式與Direct模式。
ShockBurstTM模式:數據首先傳送到芯片內,然后以設定的速率將數據發射出去,這樣可以保證在較高的數據通信速率下使用低速控制器,降低功耗同時減少受干擾的機會,同時內部集成硬件通信協議和CRC數據校驗,保證了極高的通信穩定性。
Direct模式:數據發送到芯片即通過RF直接發射出去,所有的通信協議、數據校驗都由控制器軟件實現。
兩種模式對比,ShockBurstTM模式更加節能,數據在空中停留時間短,抗干擾性高,程序編制會更加簡單,所以把其配置為ShockBurstTM收發模式。
本文引用地址:https://www.eepw.com.cn/article/266055.htm
nRF2401的所有配置工作都是通過CS、CLK1和DATA三個引腳完成。
ShockBurstTM的配置字可以分為以下四個部分:
數據寬度:聲明射頻數據包中數據占用的位數。這使得nRF2401能夠區分接收數據包中的數據和CRC校驗碼;
地址寬度:聲明射頻數據包中地址占用的位數。這使得nRF2401能夠區分地址和數據;
地址:接收數據的地址,有通道1的地址和通道2的地址;
CRC:使nRF2401能夠生成CRC校驗碼和解碼。
流程圖見圖6。
4 性能分析
本系統主要性能指標有:GPS模塊信號接收范圍、授時精度、無線傳輸距離。
從實際測試的情況來看,GPS模塊通過單片機串口實現數據的接收,只需將GPS模塊安置在靠窗戶邊位置就行。再通過無線模塊進行傳輸就能在室內任何一點就能正常地接收GPS信號。
經測試,授時精度能與國家授時中心保持同步;無線模塊的傳輸距離可以達幾十米,如果加裝天線可以達幾百米。
5 結語
利用GPS授時,可做到時間分秒不差,無需人工校時(改善了學校原有的打鈴控制器時間不準,每隔一段時間需要人工校時的情況)。采用紅外遙控,操作方便可靠。利用大屏幕液晶顯示器顯示,操作界面清晰、友好。利用無線模塊控制,改進了硬件,節約成本,提高了可靠性和安全性。綜上所述,本設計具有較大的推廣價值。
參考文獻:
[1] 樊昌信,曹麗娜. 通信原理(第7版). 北京: 國防工業出版社,2012
[2] 朱清慧,張鳳蕊.電子線路設計、制版與仿真. 北京:清華大學出版社,2008
[3] 劉建清. 輕松玩轉51單片機. 北京: 北京航空航天大學,2011
[4] 郭天祥.新概念51單片機C語言教程. 北京:電子工業出版社,2009
上一篇:基于HW2181B的航模無線遙控通信系統設計與實現
下一篇:最后一頁
- 熱門資源推薦
- 熱門放大器推薦
設計資源 培訓 開發板 精華推薦
- 【武漢理工大學校賽】電子設計競賽
- AD1583 2.5V 至 5.0V 微功率、精密串聯模式電壓基準的典型應用電路
- LTC3214EDD 演示板,低噪聲、高電流 LED 閃光燈充電泵,Vin = 2.9V - 4.4V
- 使用基于 ZICM3588SP0-1-R Ember EM35x 收發器模塊的 Mesh Connect EM35x 迷你模塊的典型應用電路
- FEBFCM8531_B01H300A,用于 FCM8531 SOC 應用處理器的 PMSM/BLDC 電機控制評估板
- 使用 Microchip Technology 的 TCL1584 的參考設計
- LTC3632EMS8E 高效 5V 穩壓器的典型應用電路
- TCR5SB25A、150mA、2.5V 輸出電壓 CMOS 低壓降穩壓器的典型應用
- LT1072HVIT 負降壓轉換器的典型應用
- 雙子座 ELRS 高頻頭 Genimi 高頻頭 (使用ESP32模塊)