本發(fā)明涉及一種具有同步閃功能的燈器,特別是一種同步閃燈器的低功耗實現(xiàn)方法。
背景技術(shù):
具有同步閃功能的燈器,在夜晚下有節(jié)奏地閃爍著(燈的閃爍周期,由亮的時長和滅的時長組成,以下稱為燈質(zhì)),可以使路基、航道界限更加分明,改善夜航環(huán)境,有助于提高保障交通安全的能力。
ZL97204998.3公布了一種浮標燈同步閃光裝置,由GPS接收天線、GPS接收機、接口電路、處理電路、電源管理電路、輸出電路和浮標燈等組成,由此奠定了日后基于GPS技術(shù)實現(xiàn)同步閃航標燈的硬件框架;ZL200420032200.7、ZL200820192645.X也針對各自應用提出了基于GPS技術(shù)的同步閃航標燈硬件設(shè)計;CN103929859A進一步公開了一種航標燈無線同步閃爍方法,控制電路板具備具有本地時間計時能力的計時電路,用秒脈沖信號的邊沿對計時電路的秒沿信號進行精確同步,以此在控制板上建立一個精確的絕對時間參考系,同步時間起點從每個整點開始,即實現(xiàn)每小時同步一次。
綜上所述,此類應用系統(tǒng)以對GPS協(xié)議報文編程分解和PPS相結(jié)合的方式來提高授時精度,滿足一些如精確授時、同步控制等具體應用,因此在由蓄電池供電、太陽能充電等無人值守的應用場合,在實現(xiàn)高精度應用的基礎(chǔ)上,如何降低整機功耗,無疑是很有意義的一項研究。
技術(shù)實現(xiàn)要素:
本案申請人提出了“一種燈器的同步閃快速控制實現(xiàn)方法”(已于2015年3月25日提出發(fā)明專利申請),燈器的硬件終端由微處理器101、電源模塊102、GPS/北斗電路103、LED燈頭104、光敏傳感器和燈質(zhì)撥碼105及通訊接口106組成,微處理器101內(nèi)部有一個燈器的燈質(zhì)控制結(jié)構(gòu)寄存器,同步閃時刻檢查及同步閃控制操作是在由PPS信號引起的INT中斷服務中完成的,并詳細說明了同步閃時刻檢查及同步閃控制操作的算法和流程。
本發(fā)明的目的是在提供一種同步閃燈器的低功耗實現(xiàn)方法。
為達到上述目的,本發(fā)明的設(shè)計技術(shù)方案是:
一種同步閃燈器的硬件終端由微處理器101、電源模塊102、GPS/北斗電路103、LED燈頭104、光敏傳感器和燈質(zhì)撥碼105及通訊接口106組成;電源模塊102分別和微處理器101、GPS/北斗電路103、LED燈頭104相連;微處理器101和GPS/北斗電路103、LED燈頭104、光敏傳感器和燈質(zhì)撥碼105及通訊接口106相連,其中微處理器101具有中斷功能的INT引腳和GPS/北斗電路103的PPS信號引腳相連,微處理器101的UART引腳和GPS/北斗電路103的UART引腳相連,微處理器101的一個IO口GPS_PWC和GPS/北斗電路103的PWC相連,微處理器101的一個IO引腳和LED燈頭104相連。
所述GPS/北斗電路,由LDO模塊202和GPS/北斗模塊201組成。
所述微處理器101,通過其IO口GPS_PWC端和GPS/北斗電路中的LDO使能端EN相連,由此實現(xiàn)控制LDO輸出電源或關(guān)閉電源,使GPS/北斗模塊上電或斷電。
所述微處理器101,內(nèi)部設(shè)置有一個時間定時器T1,用來控制燈器的亮/滅時長,T1周期(TT1)的單位為毫秒,通常取值范圍:5~100,通常取50。
所述微處理器101,內(nèi)部有一個燈器的燈質(zhì)控制結(jié)構(gòu)寄存器,由【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】、【燈質(zhì)的數(shù)據(jù)編碼數(shù)組序號】單元、【當前編碼數(shù)據(jù)】單元、【同步閃控制時刻】(單位:分)和【時間同步時刻】(單位:秒)組成。
所述燈質(zhì)的數(shù)據(jù)編碼,其算法是:用燈質(zhì)中的各亮、滅時長(單位:秒)乘以1000后再除以TT1,結(jié)果必須為整數(shù)(即TT1的取值必須滿足此條件),該結(jié)果保存到【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】中,如果不為整數(shù),需重新調(diào)整T1的周期,以滿足燈質(zhì)中各亮、滅的數(shù)據(jù)編碼均為整數(shù)。
所述微處理器101,當開始GPS報文數(shù)據(jù)解析,獲得報文中的UTC分和UTC秒時刻,通過計算公式:60-UTC秒時間,獲得時間同步時刻并保存在【時間同步時刻】。
所述微處理器101,當進入到由GPS/北斗模塊103的PPS信號引起的INT中斷服務時,首先檢查【時間同步時刻】的數(shù)據(jù)是否為0,當不為0時,將【時間同步時刻】保存的數(shù)據(jù)進行減一操作,再判斷結(jié)果是否為0,如果不為0,則不進行同步閃控制操作,否則為0,則意味著當前時刻為x分0秒(x在0~59之間),需進行同步閃時刻檢查及同步閃控制操作,即同步閃時刻檢查及同步閃控制操作是在由PPS信號引起的INT中斷服務中完成的。
所述的同步閃時刻檢查,用UTC時時間乘以60后和UTC分時間的累加值除以【同步閃控制時刻】保存的數(shù)值,即求余運算,如果余數(shù)不為0,不進行同步閃控制操作,否則為0,進行同步閃控制操作。
所述的同步閃控制時刻,是在燈質(zhì)確定后計算獲得的,計算方法是:
N=M×SUMDZ×TT1/(1000×60)
其中,SUMDZ為設(shè)定燈質(zhì)的數(shù)據(jù)編碼累積和;
TT1為定時器T1的周期,單位:毫秒;
M為實現(xiàn)N為整數(shù)的最小整數(shù)值;
N為整數(shù),表示同步時刻,單位:分,通常取值范圍:1~59。
N的數(shù)值保存【同步閃控制時刻】中。
所述的同步閃控制操作,將【燈質(zhì)的數(shù)據(jù)編碼數(shù)組序號】單元的數(shù)據(jù)修改為0,即指向【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】首地址,讀取【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】中序號0的數(shù)據(jù)編碼到【當前編碼數(shù)據(jù)】單元。
所述微處理器101,內(nèi)部有一個GPS/北斗電路的斷電時長計時器Shutdown,單位:毫秒;當上述同步閃控制操作執(zhí)行后,微處理器101對計時器Shutdown賦值,賦值計算公式:(N×60-M)×1000/TT1,其中,N為【同步閃控制時刻】保存的數(shù)值,最小值為1,M代表距離下一次同步閃控制時刻的前(M)秒,取值范圍:1~59;TT1為定時器T1的周期,單位:毫秒。
所述微處理器101,在定時中斷服務程序中對斷電時長計時器Shutdown進行判斷和減法處理,如果Shutdown為0,則控制將GPS/北斗電路供電,如果Shutdown不為0,則控制將GPS/北斗電路斷電。
所述微處理器101,在不需要燈器亮(如白天燈滅或強制燈滅)、或為常亮燈時,就循環(huán)將Shutdown賦值為非零固定常數(shù),勿使其在定時中斷服務程序中計算結(jié)果為0。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:在現(xiàn)有航標終端硬件資源平臺上,不僅可每分鐘實現(xiàn)同步閃爍的檢查與控制,達到較精確的同步閃效果,而且在同步后可關(guān)閉GPS電源一定時間,然后在下一步同步時刻前再上電,從而有效降低整機功耗。
本發(fā)明的目的、特征及優(yōu)點將通過實施例并結(jié)合附圖進行詳細說明。
附圖說明
圖1是本發(fā)明的硬件平臺結(jié)構(gòu)圖。
圖2是本發(fā)明的GPS/北斗電路框圖。
圖3是本發(fā)明的PPS信號INT中斷服務流程圖。
圖4是本發(fā)明的同步閃時刻檢查及控制操作流程圖。
圖5是本發(fā)明的微處理器定時中斷服務程序流程圖。
具體實施方式
圖1中,101是微處理器,102是電源模塊,103是GPS/北斗電路,104是LED燈頭;電源模塊102分別和微處理器101、GPS/北斗電路103、LED燈頭104相連;微處理器101和GPS/北斗電路103、LED燈頭104、光敏傳感器和燈質(zhì)撥碼105及通訊接口106相連,其中微處理器101具有中斷功能的INT引腳和GPS/北斗電路103的PPS信號引腳相連,微處理器101的UART引腳和GPS/北斗電路103的UART引腳相連,微處理器101的一個IO口GPS_PWC和GPS/北斗電路103的PWC相連,微處理器101的一個IO引腳和LED燈頭104相連
圖2是GPS/北斗電路框圖,201是GPS/北斗模塊,202是LDO模塊,PWC信號和202的EN端相連,POWER信號分別和201的Vbackup、202的Vin端相連,202的Vout端和201的Vcc端相連。
為了更詳細的描述本發(fā)明,下面結(jié)合圖3、圖4和圖5作進一步說明。
步驟301:PPS信號INT中斷服務開始,執(zhí)行步驟302;
步驟302:判斷【時間同步時刻】的數(shù)據(jù)是否為0,為0,則執(zhí)行步驟306,否則不為0,執(zhí)行步驟303;
步驟303:【時間同步時刻】的數(shù)據(jù)進行減一操作,執(zhí)行步驟304;
步驟304:判斷【時間同步時刻】的數(shù)據(jù)是否為0,不為0則執(zhí)行步驟306,否則為0,執(zhí)行步驟305;
步驟305:執(zhí)行同步閃時刻檢查及控制操作,執(zhí)行步驟305;
步驟306:PPS信號中斷服務結(jié)束。
步驟401:同步閃時刻檢查及控制操作開始,執(zhí)行步驟402;
步驟402:計算當前分,計算公式為:UTC時時間×60+UTC分時間,然后執(zhí)行步驟403;
步驟403:用計算獲得的當前分對【同步閃控制時刻】進行求余運算,例如:x=當前分%【同步閃控制時刻】;(%符號為C語言中求余運算符),然后執(zhí)行步驟404;
步驟404:對步驟403中獲得x進行判斷,如果為0,則執(zhí)行步驟405,否則不為0,執(zhí)行步驟406;
步驟405:【燈質(zhì)的數(shù)據(jù)編碼數(shù)組序號】單元=0,【當前編碼數(shù)據(jù)】單元=【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】序號0的數(shù)據(jù),即【燈質(zhì)的數(shù)據(jù)編碼數(shù)組序號】單元指向【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】首地址,讀取【燈質(zhì)的數(shù)據(jù)編碼數(shù)組】首地址的數(shù)據(jù)到【當前編碼數(shù)據(jù)】單元,其次,計算獲GPS斷電時長,保存在斷電時長計時器Shutdown,計算公式為:(N×60-M)×1000/TT1,然后執(zhí)行步驟406;
步驟406:結(jié)束。
步驟501:定時中斷服務開始,執(zhí)行步驟502;
步驟502:判斷斷電時長計時器Shutdown是否為0,如果是0,則執(zhí)行步驟504,否則執(zhí)行步驟503;
步驟503:斷電時長計時器Shutdown進行減一操作,然后執(zhí)行步驟504;
步驟504:判斷斷電時長計時器Shutdown是否為0,如果是0,則執(zhí)行步驟506,否則執(zhí)行步驟505;
步驟505:控制標號GPS_PWC的引腳輸出對應電平,控制GPS/北斗電路斷電,然后執(zhí)行步驟507;
步驟506:控制標號GPS_PWC的引腳輸出對應電平,控制GPS/北斗電路供電,然后執(zhí)行步驟507;
步驟507:定時中斷服務程序結(jié)束
雖然以上描述了本發(fā)明的具體實施方式,但是熟悉本技術(shù)領(lǐng)域的技術(shù)人員應該理解,我們所描述的具體實施例只是說明性的,而不是用于對本發(fā)明范圍的限定,任何受本發(fā)明技術(shù)路線啟發(fā)所作的等效修飾以及變化,都應當涵蓋在本發(fā)明權(quán)利要求所保護的范圍內(nèi)。