• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于AVR單片機的IRIG-B碼授時系統(tǒng)設(shè)計與實現(xiàn)

      2014-01-27 03:00:16普仕凡徐名峰張麗艷費繼友雷子浩
      大連交通大學(xué)學(xué)報 2014年3期
      關(guān)鍵詞:碼元高電平子程序

      普仕凡,徐名峰,張麗艷,費繼友,雷子浩

      (1.中國人民解放軍91550部隊,遼寧 大連 116023;2.大連交通大學(xué) 電氣信息學(xué)院,遼寧 大連116028)*

      基于AVR單片機的IRIG-B碼授時系統(tǒng)設(shè)計與實現(xiàn)

      普仕凡1,徐名峰2,張麗艷2,費繼友2,雷子浩2

      (1.中國人民解放軍91550部隊,遼寧 大連 116023;2.大連交通大學(xué) 電氣信息學(xué)院,遼寧 大連116028)*

      針對野外測量站點測量控制儀器對時的需求,采用AVR單片機為控制核心,通過GPS模塊獲取準(zhǔn)確時間,利用AVR單片機的PWM功能生成IRIG-B(Inter-Range Instrumentation Group-B,靶場儀器組B型碼),研制了一套IRIG-B碼授時系統(tǒng).闡述了設(shè)計思路和軟硬件設(shè)計思想,給出了原理框圖及部分線路圖.

      IRIG-B碼;AVR單片機;PWM;GPS模塊

      0 引言

      目前的測量裝備自動化程度越來越高,大多都具備IRIG-B碼輸入接口,對時間的準(zhǔn)確性也提出更高要求.當(dāng)測量裝備連接測控網(wǎng)時,時間統(tǒng)一信號由指揮控制中心實時提供,保證測控網(wǎng)內(nèi)所有裝備時間一致.距離指揮控制中心較遠(yuǎn)的野外測量站點無重大測控任務(wù)時,得不到指揮控制中心傳來的授時信號,只能通過自身的固有時鐘進(jìn)行守時.如果裝備出現(xiàn)時鐘掉電時間就沒了,而且裝備長時間不對時會出現(xiàn)較大的時間偏差,嚴(yán)重影響裝備平時的操控訓(xùn)練.為此研制本授時系統(tǒng).

      本系統(tǒng)產(chǎn)生的IRIG-B碼的基準(zhǔn)碼元前沿,相對于GPS模塊輸出的1PPS前沿的時間同步誤差小于0.01 ms.能夠滿足授時要求.

      1 系統(tǒng)硬件總體組成

      基于AVR單片機的IRIG-B碼授時系統(tǒng)硬件總體框圖[1-3]主要由主控單片機 ATMEGA128、GPS模塊、電源電路和產(chǎn)生差分 IRIG-B碼的MAX485電路組成,如圖1所示.

      圖1 IRIG-B碼授時系統(tǒng)原理框圖

      1.1 電源電路

      電源模塊選擇LM2576HV系列降壓型開關(guān)穩(wěn)壓器[4],LM2576HV 輸入電壓高,可達(dá) 60 V,對野外站點,可以使用電壓等級小于60 V的蓄電池組或者直流穩(wěn)壓電源為本裝置供電.電源電路[5]如圖2所示.

      圖2 電源電路

      圖2中的J4是電源接入插座,D9為IN4007,起到極性保護(hù)作用,當(dāng)輸入電壓接反時,電路不工作,不會燒壞電路板上的電子元器件.C16、L5、C17構(gòu)成兀型濾波電路.D10是大功率的TVS,反向可承受6 A的電流,當(dāng)電壓高于60 V時,反向?qū)?,拉低輸入電壓,保護(hù)LM22596HV開關(guān)電源芯片不被高壓損壞.IC3是開關(guān)電源芯片,它將輸入5~60 V以內(nèi)的直流電源變換成3.3 V的直流電源VCC輸出,為單片機電路和GPS模塊供電.D2、L3、C9、C12 構(gòu)成LM22596HV-33 的外圍電路.

      1.2 GRS模塊外圍電路

      GPS模塊選用u-blox公司的u-blox NEO 6M.u-blox公司新推出的u-blox NEO 6M GPS模塊體積小,功能多,支持USB,支持UART,支持I2C,支持SPI,是目前UBLOX家族中性價比最高的GPS模塊.GPS模塊外圍電路[6]如圖3所示.

      圖3 GPS模塊外圍電路

      圖3中ANT為GPS天線接入端,LED1為秒脈沖指示燈,LED1由1PPS信號驅(qū)動,當(dāng)NOE6M鎖住至少一顆星能夠輸出GPS時間后,LED1將1 s一閃爍.

      1.3 單片機外圍電路設(shè)計

      ATmega128單片機是本IRIG-B碼授時系統(tǒng)的控制核心,其主要完成對GPS模塊u-blox NEO 6M的設(shè)置、NMEA協(xié)議語句的讀取(只讀GPRMC語句);根據(jù)所獲得的GPS時間和1PPS的上升沿,將時間信息以脈沖編碼的形式調(diào)制到成IRIGB編碼信號輸出.單片機外圍電路[1-3]如圖4所示.

      圖4 單片機外圍電路

      圖4中J3是JTAG接口,ATmega128單片機的程序仿真調(diào)試通過該接口完成,JTAG接口還實現(xiàn)對Flash,EEPROM,熔絲位和鎖定位的編程,最終調(diào)試穩(wěn)定后的程序也是通過JTAG接口固化到單片機內(nèi)部Flash中.ATmega128單片機通過UART1與GPS模塊進(jìn)行數(shù)據(jù)通信.單片機的外中斷4(INT4)為1PPS輸入端,INT4設(shè)置成上升沿觸發(fā)中斷,中斷后即刻啟動單片機的PWM信號輸出.單片機的定時器1工作在快速PWM模式,PWM信號就是直流B碼信號,該信號由OC1B引腳輸出即IRIG-B(TTL).圖4中的U2為485轉(zhuǎn)換芯片,485芯片設(shè)計成只發(fā)送狀態(tài),其作用是將直流B碼信號轉(zhuǎn)換成差分信號傳輸,顯著提高信號的傳輸距離.圖4中J1是B碼信號輸出接口,J1的1為差分信號正,2為差分信號負(fù),3為直流B碼,4為信號地.

      2 軟件設(shè)計思想

      2.1ATmega128單片機PWM信號設(shè)置

      IRIG-B碼是時間系統(tǒng)中的一種常用串行傳輸方式,接口標(biāo)準(zhǔn)化,國際通用.IRIG-B碼又包括兩種方式:B(DC)碼和B(AC)碼,本文只討論B(DC).IRIG-B(DC)時間碼格式幀速率為1幀/s,可將1幀(1 s)分為10個字,每字為10位,每位的周期均為10 ms.每位都以高電平開始,分為3種碼型:高電平8 ms低電平2 ms(表示參考碼元,即每秒開始的第一字的第一位;位置標(biāo)志P0~P9,即每個字的第十位)、高電平5 ms低電平5 ms(表示邏輯“1”)、高電平 2 ms低電平 8 ms(表示邏輯“0”).基本碼元如圖5所示.

      圖5 IRIG-B(DC)碼基本碼元

      B碼第一個字傳送的是秒(s)信息,第二個字是分(min)信息,第三個字是小時(h)信息,第四、五個字是天(從1月1日開始計算的年積日).另外,在第八個字和第十個字中分別有3位表示上站和分站的特標(biāo)控制碼元.一幀完整的IRIG-B(DC)碼[7]如圖6 所示.

      圖6 一幀完整的IRIG-B(DC)碼

      本設(shè)計采用ATmega128單片機定時器1的PWM波形來產(chǎn)生B碼.設(shè)置ATmega128單片機的定時器1工作在快速PWM模式,用來產(chǎn)生高頻的PWM波形.可通過設(shè)置選擇PWM波形從OC1A、OC1B或OC1C輸出,本設(shè)計選擇OC1B接通PWM輸出,快速PWM模式計數(shù)器從BOTTOM計到TOP,然后立即回到BOTTOM重新開始.設(shè)置輸出比較引腳OC1B在TCNT1與OCR1B匹配時清零,在TOP時置位,TOP值為 ICR1.設(shè)置子程序Timer1_PWM_Init(),該子程序?qū)崿F(xiàn)定時器的初始化.程序中將設(shè)置定時器1工作在快速PWM模式,OCR1B與PWM輸出信號連接,啟用OCR1B匹配中斷功能,設(shè)置TOP值為ICR1,設(shè)置ICR1=2 499,分頻因子為64.輸出的PWM 頻率可以通過式(1)計算得到.

      其中,fclk為單片機時鐘,本設(shè)計采用16 MHz的晶體振蕩器,變量N代表分頻因子,TOP為ICR1中存放的數(shù)值.由圖5 IRIG-B(DC)碼基本碼元可知,基本碼元每位的周期均為10 ms即頻率為100 Hz,這就是PWM信號的頻率fPWM.因此可得由式(2)計算TOP值.

      即ICR1=2 499.定時器1從0~2 499計數(shù),一共有2 500個計數(shù)步長,周期是10 ms,因此1 ms對應(yīng)于250個計數(shù)步長.OCR1B的值由匹配中斷子程序SIGNAL(SIG_OUTPUT_COMPARE1B)中計算得到.

      每個基本碼元的高電平時間到后TCNT1與OCR1B匹配,程序轉(zhuǎn)入OCR1B匹配中斷子程序運行.OCR1B匹配中斷子程序用于確定下一個基本碼元的高電平持續(xù)時間.中斷子程序中設(shè)置Times_cent[]存放1 s數(shù)據(jù)從0~100碼元高電平時間的數(shù)組,設(shè)置變量pTimes_cent指向碼元位置.單片機INT4中斷發(fā)生時,1PPS信號的上升沿到來,此時設(shè)置碼元位置為0首位碼元脈寬8 ms即 pTimes_cent=0,Times_cent[0]固定為 8 啟動單片機的PWM信號輸出.數(shù)組Times_cent[]的實時值根據(jù)讀取的GPS時間進(jìn)行配置.

      2.2 GPS時間的讀取

      ATmega128單片機通過UART1讀取GPS模塊輸出的時間.UART1的設(shè)置子程序為Usart_init(void).在該程序中設(shè)置UCSR1B的值為0,UCSR1A的值為0,UBRR1L的值為103,UBRR1H的值為0,UCSR1C和UCSR1B的值分別如式(4)、(5)所示.

      GPS模塊GPRMC語句通過UART1中斷程序讀取.數(shù)組UTCtime[]中存放了UTC時間數(shù)據(jù),數(shù)組UTCdate[]中存放了UTC日期數(shù)據(jù).

      2.3 時間數(shù)據(jù)與B碼的映射

      B碼的第四、五個字是天(從1月1日開始計算的年月日).其計算程序用calatydays(uint Y,uint M,uint D)表示.其中Y,M,D分別表示當(dāng)日的年、月、日,函數(shù)返回值為當(dāng)日是一年中的第幾天.設(shè)置變量CurrentDay中存放的就是當(dāng)日是一年中的第幾天.

      圖7 系統(tǒng)程序流程

      子程序TimeChange()將時間數(shù)據(jù)映射到B碼對應(yīng)位上,在程序中判斷 UTCtime[5]和 UTC-time[4]的每一位,如果該位的值都是1,則將Times_cent[i]的值置為5,如果該位的值不都是1,則Times_cent[i]的值置為 2.

      基于AVR單片機的IRIG-B碼授時系統(tǒng)程序[8]采用 C語言編寫,可讀性強,存于 ATMEGA128單片機內(nèi)部的FLASH存儲器中,程序流程如圖7所示.

      3 結(jié)論

      基于AVR單片機的IRIG-B碼授時系統(tǒng)產(chǎn)生的B碼基準(zhǔn)沿,與GPS模塊輸出的1PPS信號上升沿之間的的誤差小于0.01 ms,具有較高的授時精度.本系統(tǒng)具備IRIG-B碼的差分傳輸輸出,可以同時為多臺具備差分IRIG-B碼輸入接口的裝備提供遠(yuǎn)距離授時服務(wù).

      基于AVR單片機的IRIG-B碼授時系統(tǒng)可廣泛運用到需要IRIG-B碼授時服務(wù)的電力監(jiān)控、移動通信基站等場合.

      [1]普仕凡,張麗艷,李桂林,等.基于89C52單片機的智能溫控儀設(shè)計[J].大連交通大學(xué)學(xué)報,2008(3):93-96.

      [2]劉振超,張麗艷,普仕凡.基于W78E516控制的觸摸液晶顯示屏AG320240A4STCW-T51的應(yīng)用[J].現(xiàn)代顯示,2009(1):45-48.

      [3]普仕凡,付曉偉.基于AVR單片機的煙敏傳感器檢測電路設(shè)計與實現(xiàn)[J].電腦編程技巧與維護(hù),2012(4):87-88.

      [4]普仕凡.基于AVR單片機的無線液位監(jiān)視儀設(shè)計及實現(xiàn)[J].電腦知識與技術(shù),2012(25):103-106.

      [5]薛明軍,張輝,趙敏.LM2575系列開關(guān)穩(wěn)壓集成電路及其應(yīng)用[J].國外電子元器件,2001(1):67-68.

      [6]趙晶.Protel99高級應(yīng)用[M].北京:人民郵電出版社,2001.

      [7]馬紅皎,胡永輝.GPS&IRIG -B 碼時間系統(tǒng)分析[J].電子科技,2005(7):23-27.

      [8]沈文,Eagle lee,詹衛(wèi)前.AVR單片機C語言開發(fā)入門指導(dǎo)[M].北京:清華大學(xué)出版社,2003.

      Design and Implementation of IRIG-B Code Timing System Based on AVR Microcontroller

      PU Shi-fan1,XU Ming-feng2,ZHANG Li-yan2,F(xiàn)EI Ji-you2,LEI Zi-hao2

      (1.Institute 230 of Unit 91550,PLA,Dalian 116023,China;2.School of Electrical and Information Engineering,Dalian Jiaotong University,Dalian 116028,China)

      Aiming at the time hack needs of measurement control instrument in the field measurement site,AVR microcontroller is used as the control core to obtain accurate time though GPS module,and PWM function of AVR MCU is used to generate IRIG-B(DC)code to develop a set of IRIG-B timing system.The paper illustrates the design of software and hardware,the principle drawing and some circuit diagrams.

      IRIG-B code;AVR MCU;PWM;GPS modle

      A

      10.13291/j.cnki.djdxac.2014.03.023

      1673-9590(2014)03-0097-04

      2013-11-05

      國家自然科學(xué)基金資助項目(51376028)和國家863計劃資助項目(2013AA041108)

      普仕凡(1975-),男,工程師,碩士,主要研究方向為嵌入式系統(tǒng)開發(fā)的研究

      E-mail:pushifan@163.com.

      猜你喜歡
      碼元高電平子程序
      一種基于FPGA的PWM防錯輸出控制電路
      LFM-BPSK復(fù)合調(diào)制參數(shù)快速估計及碼元恢復(fù)
      TS-03C全固態(tài)PDM中波發(fā)射機開關(guān)機控制電路原理及故障分析
      科技傳播(2019年15期)2019-08-22 08:07:44
      DM 50KW中波廣播發(fā)射機欠推動故障分析
      基于極大似然準(zhǔn)則的短猝發(fā)信號盲解調(diào)
      PDM 1kW中波廣播發(fā)射機保護(hù)電路分析
      淺談子程序在數(shù)控車編程中的應(yīng)用
      子程序在數(shù)控車加工槽中的應(yīng)用探索
      西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
      一種碼元同步時鐘信號的提取方法及單片機實現(xiàn)
      浦江县| 安顺市| 和顺县| 宜州市| 东光县| 古蔺县| 孟连| 炉霍县| 芦山县| 昂仁县| 南召县| 英德市| 镇原县| 长武县| 碌曲县| 汉中市| 崇义县| 清苑县| 金寨县| 灵寿县| 衡东县| 竹山县| 微博| 富宁县| 霍林郭勒市| 大安市| 江北区| 包头市| 木兰县| 平远县| 安西县| 广饶县| 安顺市| 葵青区| 四子王旗| 龙岩市| 海盐县| 江阴市| 莆田市| 句容市| 广水市|