• 
    

    
    

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

      ?

      智能全站儀雙電池供電及雙LCD背光控制系統(tǒng)

      2015-01-03 07:57:50劉堯猛丁忠林暢衛(wèi)功
      天津科技大學學報 2015年5期
      關(guān)鍵詞:背光驅(qū)動程序全站儀

      劉堯猛,丁忠林,暢衛(wèi)功

      (天津科技大學計算機科學與信息工程學院,天津 300222)

      智能全站儀雙電池供電及雙LCD背光控制系統(tǒng)

      劉堯猛,丁忠林,暢衛(wèi)功

      (天津科技大學計算機科學與信息工程學院,天津 300222)

      采用OMAP3530微處理器和Linux操作系統(tǒng)設(shè)計了智能全站儀,可實現(xiàn)距離和角度測量、參數(shù)設(shè)置及數(shù)據(jù)管理等功能.為提高系統(tǒng)野外續(xù)航能力和顯示效果,采用TLV0832微處理器設(shè)計了雙電池供電和雙LCD顯示硬件電路.在分析Linux 2.6.29的SPI同步串行接口驅(qū)動運行機制和驅(qū)動接口功能的基礎(chǔ)上,提出了Linux 2.6.29的內(nèi)核配置SPI驅(qū)動方法,針對TLV0832的A/D轉(zhuǎn)換時序和TLV5626的D/A轉(zhuǎn)換時序,設(shè)計相應(yīng)的測試程序并實現(xiàn)了雙電池顯示和雙LCD背光控制功能.本文設(shè)計可為全站儀GUI應(yīng)用程序調(diào)用底層驅(qū)動及其他戶外儀器實現(xiàn)雙電量顯示與雙LCD背光控制提供參考.

      OMAP3530;全站儀;底層設(shè)計;Linux;SPI;驅(qū)動程序

      全站儀主要應(yīng)用于大地測量等工程領(lǐng)域[1].隨著光電子技術(shù)、計算機技術(shù)等新技術(shù)的應(yīng)用,全站儀已逐步向自動化、智能化方向發(fā)展,全站儀自動化程度高、功能多、精度好,通過配置適當?shù)慕涌?,可將野外采集的測量數(shù)據(jù)直接輸入計算機進行數(shù)據(jù)處理或輸入自動化繪圖系統(tǒng).與傳統(tǒng)的測量方法相比,全站儀省去了大量的中間人工操作環(huán)節(jié),使工作效率和經(jīng)濟效益明顯提高,同時也避免了人工操作、記錄等過程中差錯率較高的缺陷.

      當前智能全站儀大多采用WinCE系統(tǒng),測量程序豐富,操作簡單、便捷,并可全漢字顯示,數(shù)據(jù)傳輸可采用電纜傳輸、PC卡傳遞或無線通信,還可以根據(jù)用戶需要編寫測量程序,進行系統(tǒng)開發(fā).智能全站儀的代表產(chǎn)品有索佳POWERSET SET4000、尼康DTM750、南方NTS-960R等[2].

      隨著傳統(tǒng)智能全站儀向影像輔助攝影掃描全站儀發(fā)展[3],就需要采用具有更好的圖像處理能力和數(shù)據(jù)通信能力的嵌入式MCU和嵌入式操作系統(tǒng).而當前采用的單核32位MCU處理器的圖像處理能力不足,采用的WinCE操作系統(tǒng)在定制性、實時處理能力、高可靠性等方面都不如Linux操作系統(tǒng);此外,大多全站儀都只配置單電池供電,單塊LCD顯示,不能很好地滿足野外工作需要.

      本文采用雙核結(jié)構(gòu)的OMAP3530微處理器和Linux2.6.29操作系統(tǒng)設(shè)計智能全站儀.為提高其續(xù)航能力和在室外環(huán)境的顯示效果,采用雙電池供電和兩塊LCD屏幕.

      1 智能全站儀整體設(shè)計

      智能型全站儀器可實現(xiàn)距離測量和角度測量等測量功能[4],顯示設(shè)置、電源設(shè)置、蜂鳴器設(shè)置、測距設(shè)置和測角設(shè)置等系統(tǒng)控制功能,存儲管理、測點管理、文件管理等數(shù)據(jù)管理功能,內(nèi)業(yè)通信等數(shù)據(jù)通信功能.智能全站儀的整體設(shè)計原理如圖1所示.其中底層設(shè)計主要包括硬件層和設(shè)備驅(qū)動層.

      圖1 整體設(shè)計原理圖Fig.1 Overall design

      2 智能全站儀底層硬件設(shè)計

      2.1 主控板硬件設(shè)計

      微處理器選用OMAP3530,其采用65,nm低功耗工藝制造,內(nèi)部集成了4倍于ARM9器件處理能力的CORTEX-A8彈性內(nèi)核和430,MHz的TMS 320C64x+DSP內(nèi)核.ARM+DSP的雙核結(jié)構(gòu)使操作系統(tǒng)效率和代碼執(zhí)行更加優(yōu)化,ARM端負責系統(tǒng)控制工作,DSP端則承擔實時信號處理任務(wù),從而成功地解決了性能與功耗的最佳組合問題.具有雙核結(jié)構(gòu)的OMAP3530非常適合智能全站儀的設(shè)計:低功耗可以更好地實現(xiàn)測量的便攜性,滿足野外測量需要;借助ARM對多種操作系統(tǒng)的支持,可以獲得更好的監(jiān)護界面;利用DSP的運算能力可以對測量數(shù)據(jù)進行快速的計算[5].

      圖2 主控板硬件原理圖Fig.2 Control board hardware

      由于OMAP3530具有豐富的控制器接口,如USB,SPI,I2C等,基于OMAP3530的嵌入式系統(tǒng)可以支持多種接口:根據(jù)系統(tǒng)需要設(shè)計了鍵盤和LCD輸入輸出接口;此外還有MiniUSB,可以很好地掛載U盤,用戶可以通過U盤下載系統(tǒng)中的數(shù)據(jù);而數(shù)據(jù)采集接口主要用于采集測量數(shù)據(jù);藍牙接口可實現(xiàn)藍牙數(shù)據(jù)通信;其他接口可用于系統(tǒng)的調(diào)試與測試,如RS232和JTAG接口.

      2.2 雙電池電量顯示與雙LCD液晶背光控制硬件設(shè)計

      系統(tǒng)采用兩塊電池供電和兩塊LCD顯示,控制原理如圖3所示.

      圖3 雙電池電量顯示與雙LCD背光控制原理圖Fig.3 Double electric quantity display and double LCD backlight control

      采用D/A轉(zhuǎn)換器TLV5626實現(xiàn)雙LCD顯示的背光控制,采用雙通道A/D轉(zhuǎn)換器TLV0832實現(xiàn)雙電池電量顯示.TLV6526和TLV0832都是串行設(shè)備,OMAP3530上的SPI是一個主/從同步串行總線,有4個獨立的SPI模塊(SPI1,SPI2,SPI3,SPI4),其中SPI3支持2個SPI設(shè)備,由SPI3_CS0和SPI3_CS1分別選擇TLV5626和TLV0832.TLV0832是雙通道A/D轉(zhuǎn)換器,可以直接通過DI選擇通道.但是TLV5626只有1路D/A轉(zhuǎn)換,無法同時實現(xiàn)兩塊LCD的背光控制,因此使用了單一控制雙輸出電源驅(qū)動芯片TPS61150A,該驅(qū)動芯片有2個選擇引腳,可以控制2個輸出單獨打開或者同時打開,系統(tǒng)使用OMAP3530引腳GPIO_26和GPIO_27實現(xiàn)對兩路電壓的輸出選擇.

      3 Linux系統(tǒng)的SPI驅(qū)動程序設(shè)計

      3.1 SPI驅(qū)動分析

      在Linux2.6.29內(nèi)核中,SPI的驅(qū)動架構(gòu)可以分為3個層次:SPI核心層、SPI控制器驅(qū)動層和SPI設(shè)備驅(qū)動層[6–7].其中,SPI核心層的代碼位于driver/ spi/spi.c.由于該層是平臺無關(guān)層,本文將不再敘述.

      3.1.1 SPI控制器驅(qū)動層

      每種處理器平臺都有自己的控制器驅(qū)動,SPI控制器驅(qū)動層屬于平臺移植相關(guān)層,它的職責是為系統(tǒng)中每條SPI總線實現(xiàn)相應(yīng)的讀寫方法.在物理上,每個SPI控制器可以連接若干個SPI從設(shè)備.SPI控制器驅(qū)動程序的注冊采用Platform設(shè)備和驅(qū)動機制.

      Platform設(shè)備的注冊代碼位于內(nèi)核文件的arch/arm/mach-omap2/devices.c中,代碼主要包括Platform設(shè)備的定義和Platform設(shè)備的注冊,其中注冊是由內(nèi)核在啟動時完成的.

      在Linux2.6.29內(nèi)核中,SPI控制器驅(qū)動程序位于drivers/spi目錄下,OMAP3530的SPI控制器驅(qū)動程序為omap2_mcspi.c.該驅(qū)動程序注冊的目的是初始化OMAP3530的SPI控制器,并且向SPI核心層注冊SPI控制器.該驅(qū)動程序主要包括Platform驅(qū)動的定義和Platform驅(qū)動的注冊.

      3.1.2 SPI設(shè)備驅(qū)動層

      SPI設(shè)備驅(qū)動層為用戶接口層,其為用戶提供了通過SPI總線訪問具體設(shè)備的接口.A/D和D/A均屬于字符設(shè)備,可直接使用系統(tǒng)提供的SPI通用設(shè)備程序.

      SPI通用設(shè)備驅(qū)動程序通過帶有操作集file_operations的標準字符設(shè)備驅(qū)動為用戶空間提供了訪問接口.其中操作集和一般字符設(shè)備驅(qū)動一樣,也包括打開、讀、寫和關(guān)閉等接口.此驅(qū)動模型是針對SPI設(shè)備的,只有注冊board info時的modalias是“spidev”才能由此驅(qū)動訪問.訪問各個設(shè)備的基本框架是一致的,具體的差異將由從設(shè)備號來體現(xiàn),代碼位于drivers/spi/spidev.c中.

      應(yīng)用程序調(diào)用的驅(qū)動接口函數(shù)主要包括:打開和關(guān)閉設(shè)備節(jié)點函數(shù)open()和close()、讀寫設(shè)備函數(shù)read()和write()、接口函數(shù)ioctl().其中,讀寫設(shè)備函數(shù)每次讀寫不能大于4,096,Byte;接口函數(shù)可以實現(xiàn)讀寫SPI設(shè)備的模式、讀取和設(shè)置SPI設(shè)備的字長、讀取和設(shè)置SPI設(shè)備的通信時鐘頻率、一次進行雙向/多次讀寫操作等功能.

      3.2 SPI驅(qū)動配置

      Linux內(nèi)核配置時,在[Device Drivers]菜單下選擇[SPI support]子菜單,在該子菜單下選擇[McSPI driver for OMAP24xx/OMAP34xx]和[User mode SPI device driver support]即可.配置結(jié)束后,可以查看主控板文件系統(tǒng)下是否有/dev/spidev3.0和/dev/spidev 3.1,進行配置驗證.

      4 A/D和D/A驅(qū)動程序軟件測試

      4.1 A/D驅(qū)動程序測試

      在用戶空間,Linux設(shè)備是以文件的形式進行操作的.如果驅(qū)動程序正常加載,系統(tǒng)啟動后會在Linux根目錄下自動生成/dev/spi3.0和/dev/spi3.1設(shè)備文件.其中,TLV0832對應(yīng)的設(shè)備文件為spi3.1.打開設(shè)備文件后,可以直接利用SPI設(shè)備驅(qū)動接口函數(shù)控制TLV0832的模數(shù)轉(zhuǎn)換.TLV0832的A/D轉(zhuǎn)換時序如圖4所示.

      圖4 TLV0832的A/D轉(zhuǎn)換時序Fig.4 A/D conversion timing of TLV0832

      利用SGL/DIF和ODD/EVEN地址復(fù)用選擇不同的通道,從而實現(xiàn)雙電池的電量顯示,A/D測試程序流程如圖5所示.

      圖5 采用TLV0832的A/D測試程序流程圖Fig.5 Flow chart of A/D test program with TLV0832

      SPI進行數(shù)據(jù)收發(fā)用到的結(jié)構(gòu)體主要有兩個:spi_message和spi_transfer,兩者都定義在include/ linux/spi/spi.h中.spi_transfer用于實現(xiàn)數(shù)據(jù)收發(fā),該結(jié)構(gòu)體的成員包括接收緩沖區(qū)、發(fā)送緩沖區(qū)、發(fā)送數(shù)據(jù)的長度、速率、每個數(shù)據(jù)的位數(shù)等參數(shù).以上流程實現(xiàn)代碼主要使用了SPI設(shè)備驅(qū)動程序中的static long spidev_ioctl(struct file *filp,unsigned int cmd,unsigned long arg)函數(shù),其中參數(shù)cmd是要對SPI設(shè)備進行的具體配置與操作,具體命令參數(shù)可查看設(shè)備驅(qū)動程序.

      使用萬用表測量通道0的電壓為2.305,V,通道1的電壓為0.016,V;運行A/D測試程序轉(zhuǎn)換后的電壓值如圖6所示,實測值和測試程序轉(zhuǎn)換值一致.TLV0832的量程為0~3.3,V,而實際電池的電壓為0~8.4,V,電池電壓經(jīng)過62 kΩ和30 kΩ電阻分壓后得到通道電壓,因此通道0的實測電壓2.305 V對應(yīng)的電池電壓值為7.068 V.

      測量電池的剩余電量一般有電壓測試法、電池建模法、庫侖計法.本文采用電壓測試法,根據(jù)的原理是電池放電時其電壓會隨著電池電量的流失而下降.由于電池電壓與電量不是線性關(guān)系,因此這種測量方法不精確.具體方法是,將電池的放電曲線按時間進行4等分,確定電池電壓值與顯示電量的關(guān)系為:電池最大電壓為8.4,V,大于7.23,V時顯示三格電量;大于6.84,V小于等于7.23,V時,顯示兩格電量;大于6.4,V小于等于6.84,V時顯示一格電量;大于6,V小于等于6.4,V時不顯示電量格數(shù);小于等于6,V時,提示電量低.

      圖6 A/D測試程序運行結(jié)果Fig.6 Operation results of A/D test procedure

      4.2 D/A驅(qū)動程序測試

      TLV5626,D/A轉(zhuǎn)換與TLV0832,A/D轉(zhuǎn)換都采用SPI接口,可以直接利用系統(tǒng)提供的通用SPI設(shè)備驅(qū)動程序,只是選擇的通道不一樣.其中,使用SPI3_CS0選擇TLV5626,對應(yīng)的設(shè)備文件為/dev/spidev3.0.TLV5626的D/A轉(zhuǎn)換數(shù)據(jù)格式見表1.

      表1 TLV5626的D/A轉(zhuǎn)換數(shù)據(jù)格式Tab.1 D/A conversion data format of TLV5626

      SPD是速度控制位,決定轉(zhuǎn)換的速率,PWR是電源控制,而R1和R0決定了寫不同的寄存器.如果寫控制寄存器,則12位數(shù)據(jù)中低兩位決定了參考電壓的選擇.例如:寫控制寄存器且參考電壓為2.048,V,則16位控制數(shù)據(jù)為0xD002.如果是寫數(shù)據(jù)緩沖器,則12位數(shù)據(jù)中高8位為新轉(zhuǎn)換數(shù)據(jù),而低4位為0.16位數(shù)據(jù)緩沖器dout的值可以通過如下程序得到:

      根據(jù)以上轉(zhuǎn)換原理,測試程序流程如圖7所示.

      圖7 采用TLV5626的 D/A測試程序流程圖Fig.7 Flow chart of D/A test program with TLV5626

      通過給定不同數(shù)字量,利用萬用表測量其轉(zhuǎn)換后的模擬量進行驗證.當給定數(shù)字量0x11時,理論電壓為0.22,V,實測電壓為0.266,V;當給定數(shù)字量128時(圖8),實測電壓為1.675,V,理論值(128/255)× 3.3=1.656,V;當給定數(shù)值量為255時,理論電壓為3.3,V,實測電壓為3.279,V.結(jié)果表明轉(zhuǎn)換正確,符合設(shè)計要求.

      圖8 D/A測試程序運行結(jié)果Fig.8 Operation results of D/A test procedure

      5 結(jié) 語

      利用OMAP3530的SPI接口,通過A/D接口芯片TLV0832和D/A接口芯片TLV5626實現(xiàn)了全站儀雙電池顯示和雙LCD背光控制.基于OMAP3530嵌入式雙核微處理器的全站儀比當前使用ARM9微處理器的全站儀在性能上有較大的提升.當前廣泛應(yīng)用的Android操作系統(tǒng)其底層仍為Linux內(nèi)核[8],因此,全站儀底層驅(qū)動程序也可以適用于Android操作系統(tǒng).此外,如果全站儀添加GPRS等通信接口,可很好實現(xiàn)全站儀內(nèi)外業(yè)數(shù)據(jù)通信和在線數(shù)據(jù)處理,從而全面提高全站儀的功能和生產(chǎn)效率.

      [1] 周天彤.基于ARM技術(shù)的智能全站儀外業(yè)測量一體化系統(tǒng)設(shè)計與分析[D].南京:南京理工大學,2007.

      [2] 王剛.全站儀結(jié)構(gòu)原理與發(fā)展分析[J].現(xiàn)代物業(yè),2013,12(10):35–36.

      [3] Scherer M,Lerma J L.From the conventional total station to the prospective image assisted photogrammetric scanning total station:Comprehensive review[J].Journal of Surveying Engineering,2009,135(4):173–178.

      [4] 楊俊志.全站儀的原理及其檢定[M].北京:測繪出版社,2004.

      [5] 黃飛.OMAP平臺的開發(fā)及其在便攜式儀器中的應(yīng)用[D].長沙:國防科學技術(shù)大學,2004.

      [6] 李忠良,陳衛(wèi)兵,鄒豪杰,等.嵌入式Linux下AD7714與SPI接口及驅(qū)動的實現(xiàn)[J].儀表技術(shù)與傳感器,2011(4):42–44.

      [7] 張曉雷,陳相寧,郭劍.嵌入式Linux下基于SPI總線的網(wǎng)絡(luò)設(shè)備驅(qū)動設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2008,29(23):6003–6005.

      [8] 葉炳發(fā).Android操作系統(tǒng)移植及關(guān)鍵技術(shù)研究[D].廣州:暨南大學,2010.

      責任編輯:常濤

      Double Battery Power Supply and Double LCD Backlight Control System of Intelligent Total Station

      LIU Yaomeng,DING Zhonglin,CHANG Weigong
      (College of Computer Science and Information Engineering,Tianjin University of Science & Technology,Tianjin 300222,China)

      OMAP3530 microprocessor and Linux operating system were adopted to design an intelligent total station,which can realize distance and angle measurement,parameter setting and data management,etc.In order to improve the filed endurance and display effect of the system,double battery powered with TLV0832 microprocessor and double LCD display were designed.SPI synchronous serial interface driver operation mechanism and driver interface functions of the Linux 2.6.29 were analysed.Based on this,a kernel configuration method for SPI driving was proposed.According to A/D conversion timing of TLV0832 and D/A conversion timing of TLV5626,corresponding test procedures were designed and the display function of the double power supply and control of double LCD backlight were realized.The research can provide reference for the application of total station GUI to the driver and other outdoor instruments in order to realize the display of double electric quantity and control of double LCD backlight.

      OMAP3530;total station;bottom design;Linux;SPI;driver

      TP216

      A

      1672-6510(2015)05-0062-05

      10.13364/j.issn.1672-6510.20140109

      2014–07–30;

      2015–04–14

      天津市科技型中小企業(yè)技術(shù)創(chuàng)新基金資助項目(13ZXCXGX55600);天津市科技支撐計劃重點資助項目(12ZCZDGX02400)

      劉堯猛(1972—),男,湖南漢壽人,副教授,liuym@tust.edu.cn.

      猜你喜歡
      背光驅(qū)動程序全站儀
      NTS-382R12/15/20超長測程彩屏全站儀
      北京測繪(2020年12期)2020-12-29 01:37:18
      基于快牙平臺實現(xiàn)全站儀與計算機的數(shù)據(jù)通信
      光學薄膜技術(shù)及在背光模組中的應(yīng)用研究
      電子制作(2019年12期)2019-07-16 08:45:20
      一種用于LCD的高功率LED側(cè)式背光系統(tǒng)設(shè)計
      電子測試(2018年6期)2018-05-09 07:31:41
      關(guān)于超薄LED背光模組設(shè)計探討
      電子測試(2017年11期)2017-12-15 08:57:38
      基于全站儀二次開發(fā)的覆冰厚度測量與實現(xiàn)
      電測與儀表(2016年9期)2016-04-12 00:29:52
      全站儀進行水準測量的可行性分析
      河南科技(2014年5期)2014-02-27 14:08:32
      三波段白光LED的高色域背光封裝方案
      河南科技(2014年5期)2014-02-27 14:08:30
      驅(qū)動程序更新與推薦
      驅(qū)動程序更新與推薦
      金寨县| 虞城县| 定州市| 凌海市| 通渭县| 江孜县| 蒲城县| 民县| 皋兰县| 阜平县| 武宁县| 陇川县| 阿尔山市| 牡丹江市| 万山特区| 无为县| 岑巩县| 宜春市| 化州市| 尉氏县| 武穴市| 诸城市| 登封市| 吴江市| 平泉县| 得荣县| 彰化县| 阿荣旗| 南开区| 通江县| 泸州市| 米易县| 东莞市| 博湖县| 安泽县| 新津县| 房产| 施甸县| 商河县| 若羌县| 吉林省|