• 
    

    
    

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

      ?

      基于STC單片機的電子羅盤-超聲波測障系統(tǒng)設(shè)計

      2013-08-10 10:21:54周鵬
      電子設(shè)計工程 2013年10期
      關(guān)鍵詞:羅盤測距障礙物

      周鵬

      (華僑大學(xué) 信息學(xué)院,福建 廈門 361021)

      超聲波具有束射性好,方向性和抗干擾性強的特點使其被廣泛應(yīng)用于移動機器人的自動導(dǎo)航[1-2]。但僅用超聲波測障無法精確確定移動機器人的位置,因為它不能全面獲知障礙物的方位(角度和方向),所以必須附加具有測試方位的傳感器。

      針對上述問題,提出一種基于STC89C52單片機的電子羅盤-超聲波測障方案,實驗表明,系統(tǒng)在定位精度和可靠性達到設(shè)計要求。

      1 系統(tǒng)架構(gòu)及工作原理

      系統(tǒng)主要由STC89C52單片機,超聲波電路(超聲波發(fā)射電路和接收電路),電子羅盤電路,LCD1602液晶顯示電路和電源組成(如圖1所示)。

      圖1 系統(tǒng)框圖Fig.1 Structure diagram of MCU

      系統(tǒng)中,超聲波電路用于測試與障礙物的距離。其工作原理[3]是根據(jù)系統(tǒng)發(fā)射超聲波和接收到反射波的時間差,結(jié)合修正后的波速計算出與障礙物距離。測距公式如下:

      其中,S為與障礙物距離,單位m。

      v為帶溫度補償?shù)某暡▊鞑ニ俣?,單位m/s。

      t為超聲波發(fā)射與接收到反射波時的時間差,單位s。

      331.5 為0℃時超聲波在空氣中的傳播速度,單位m/s。

      Δ為實測溫度,由測溫度電路測得,單位℃。

      電子羅盤電路用于測試與障礙物的方位(角度和方向)。其工作原理[4]是利用磁阻傳感器測試與地磁場的偏移關(guān)系從而獲取方位信息。

      STC89C52單片機是系統(tǒng)的核心,用于處理上述數(shù)據(jù)并將其顯示在LCD1602液晶顯示器上。

      2 系統(tǒng)硬件設(shè)計

      系統(tǒng)選用STC89C52單片機,它具有抗干擾性能強、速度快、功耗低和指令代碼完全兼容8051單片機等特點。其主要參數(shù)為[5]:時鐘頻率最高可達80 MHz;內(nèi)置8K字節(jié)的Flash-ROM,512字節(jié)的RAM和2 K字節(jié)的E2PROM;3個16位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu)。

      STC單片機系統(tǒng)由STC89C52單片機,時鐘電路,復(fù)位電路組成(如圖2所示)。

      時鐘電路采用內(nèi)部時鐘方式,為單片機系統(tǒng)提供時鐘信號。

      復(fù)位電路采用上電自動復(fù)位和按鍵復(fù)位的方式,只要保證加到RST引腳的高電平持續(xù)時間大于2個機器周期就能使單片機正常復(fù)位。

      2.1 LCD1602顯示電路設(shè)計

      系統(tǒng)選擇LCD1602(HD44780)液晶顯示器實時顯示障礙物的方位,距離,時間等信息。LCD1602是工業(yè)字符型液晶顯示器,它能夠同時顯示32個字符(16列2行),具有低功耗、顯示內(nèi)容豐富等特點。LCD1602與單片機接口電路如圖3所示。

      圖2 STC單片機系統(tǒng)Fig.2 Structure diagram of STC MCU

      圖3 LCD1602與單片機接口電路Fig.3 Interface diagram of LCD1602 and MCU

      2.2 超聲波電路設(shè)計

      超聲波電路由超聲波發(fā)射電路和超聲波接收電路組成,選用壓電式超聲波傳感器 (型號TCT40-16T/R,中心頻率40.0±1.0 kHz)。

      超聲波發(fā)射電路(如圖4所示)由555定時器,CD4069,TCT40-16T發(fā)射器等組成,它是利用發(fā)射器的逆壓電效應(yīng),將高頻電振動轉(zhuǎn)換成機械振動,產(chǎn)生超聲波發(fā)射出去的電路。電路中,當單片機控制引腳P1.4為低電平時,555定時器產(chǎn)生中心頻率40 kHz的高頻信號,由引腳3輸出至CD4069,CD4069將其整形后驅(qū)動發(fā)射器發(fā)射超聲波。

      超聲波接收電路(如圖5所示)由TCT40-16R接收器和紅外線檢波芯片CX20106A等組成,它是利用接收器的壓電效應(yīng),將接收的超聲振動轉(zhuǎn)換成電信號,實現(xiàn)微弱反射回波的放大,濾波,檢波,整形輸出的電路[6]。電路中,反射波由引腳1輸入,此信號被處理后由引腳7輸出低電平,此負跳變通過P1.5引入單片機,單片機以查詢的方式獲取該信號的變化(反射波)。

      圖4 超聲波發(fā)射電路Fig.4 Circuit of ultrasonic emision

      圖5 超聲波接收電路Fig.5 Circuit of ultrasonic receiver

      2.3 電子羅盤電路設(shè)計

      電子羅盤電路由電源電路,HMC5883L集成模塊(主要電路如圖6所示)組成。HMC5883L內(nèi)置磁阻傳感器,12位ADC,放大器,I2C 數(shù)字接口,測量精度達到 1°~2°[7]。

      圖6 電子羅盤與單片機接口電路Fig.6 Interface diagram of electronic compass and MCU

      2.4 電源電路設(shè)計

      系統(tǒng)由電壓芯片7805和662K分別為單片機和HMC5883L提供+5 V和+3.3 V的工作電壓,電源電路如圖7和圖8所示。

      圖7 +5V電源電路Fig.7 Power supply circuit of 5 volt

      圖8 +3.3V電源電路Fig.8 Power supply circuit of 3.3 volt

      3 系統(tǒng)軟件設(shè)計

      系統(tǒng)軟件采用結(jié)構(gòu)化設(shè)計,即主函數(shù)調(diào)用子函數(shù),子函數(shù)再調(diào)用各功能子函數(shù)。主函數(shù)由初始化函數(shù)(初始化定時/計數(shù)器,LCD1602液晶顯示器,電子羅盤模塊等)和調(diào)用子函數(shù)(測距,測方位,時間和日期顯示等函數(shù))組成。子函數(shù)包括測方位函數(shù)(電子羅盤模塊實現(xiàn)),測距函數(shù)(超聲波模塊實現(xiàn))和信息顯示函數(shù)(顯示方位,距離,時間和日期)。功能子函數(shù)用于驅(qū)動底層硬件。系統(tǒng)流程如圖9所示。

      圖9 系統(tǒng)流程圖Fig.9 Flow-process diagram of system

      3.1 主函數(shù)

      1)初始化函數(shù)

      ①void TimerInit(void)//T0/T1 同為定時器,工作方式 1,T0定時50 ms產(chǎn)生一次中斷;T1用于計數(shù)超聲波測距時間

      ②void InitLcd1602(void)//初始化 LCD1602 液晶顯示器

      ③void InitHMC5883(void)//初始化 HMC5883L 電子羅盤模塊

      ④void SetClock (unsigned char, unsigned char, unsigned char)//設(shè)定時間

      ⑤void SetDate (unsigned char, unsigned char, unsigned char)//設(shè)定日期

      2)調(diào)用子函數(shù)

      ①void TrigUltra(void)//啟動超聲波測距

      ②void ShowDistanceUltra(void)//顯示與障礙物的距離

      ③void StartHmc5883(void)//啟動方位測試并顯示結(jié)果

      ④void RunDigitalClock(void)//顯示時間

      ⑤void RunDate(void)//顯示日期

      3.2 主要功能子函數(shù)

      1)LCD1602液晶顯示函數(shù)

      ① void TestLcdIdle(void)//忙檢測

      ②void WriteCommand(unsigned char)//寫入命令

      ③void WriteData(unsigned char)//寫入數(shù)據(jù)

      ④void InitLcd1602(void)//清屏、設(shè)置光標等初始化

      ⑤)void SetPos_1602 (unsigned char,bit)//設(shè)定顯示內(nèi)容的起始位置

      ⑥void PrintC_1602(unsigned char)//字符顯示

      ⑦void PrintS_1602(unsigned char*)//字符串顯示

      2)超聲波測距函數(shù)

      ①void DistanceUltraProcess(void)//根據(jù)定時器計數(shù)值計算距離

      ②void ShowDistanceUltra (long)//顯示測距結(jié)果

      ②void ShowBlindSpotUltra (void)//顯示盲點(超過測距范圍)

      3)電子羅盤測方位函數(shù)

      ①void StartHmc5883(void)//起始信號

      ②void StopHmc5883 (void)//終止信號

      ③void SendAckHmc5883(bit)//發(fā)送應(yīng)答信號

      ④bit RecvAckHmc5883 (void)//接收應(yīng)答信號

      ⑤void SendByteHmc5883 (unsigned char)//發(fā)送單字節(jié)數(shù)據(jù)

      ⑥unsigned char RecvByteHmc5883 (void)//接收單字節(jié)數(shù)據(jù)

      ⑦void WriteByteHmc5883(unsigned char, unsigned char)//寫入單字節(jié)數(shù)據(jù)

      ⑧void ReadByteHmc5883(unsigned char, unsigned char)//讀取單字節(jié)數(shù)據(jù)

      ⑨void ReadAngleHmc5883 (void)//讀出測試角度數(shù)據(jù)

      4 實 驗

      系統(tǒng)實際運行結(jié)果如圖10~13所示。

      圖10 測試結(jié)果一Fig.10 The result of the first experiment

      圖11 測試結(jié)果二Fig.11 The result of the second experiment

      圖12 測試結(jié)果三Fig.12 The result of the third experiment

      圖13 測試結(jié)果四Fig.13 The result of the fourth experiment

      圖中, 第 1 行:”XX:XX:XX” 為時/分/秒;”XX/XX/XX”為年/月/日;

      第2行:”EXXX.X。是以順時針為旋轉(zhuǎn)方向與東的夾角(系統(tǒng)以東為參考起點,角度為0時指向東),單位為度;”DXXX.XCM”為與障礙物的間距,單位為厘米。

      5 結(jié) 論

      經(jīng)過實測,系統(tǒng)能精確測試障礙物的方位和間距,并數(shù)字顯示。實驗表明,系統(tǒng)測障功能達到設(shè)計要求,整個電路簡單實用,為后續(xù)深入研究移動機器人自動導(dǎo)航奠定基礎(chǔ)。

      [1]童峰,許天增.一種移動機器人超聲波導(dǎo)航系統(tǒng)[J].機器人,2002,24(1):55-57.TONG Feng,XU Tian-zeng.A ultrasonic navigation system for mobile robot[J].Robot,2002,24(1):55-57.

      [2]蘇強,林旭梅.一種基于單片機的超聲波傳感器的研究與設(shè)計[J].微型機與應(yīng)用,2010,29(15):92-99.SU Qiang,LIN Xu-mei.Research and design on ultrasonic sensorsbased on single chip[J].Microcomputer& Its Applications,2010,29(15):92-99.

      [3]郭清.基于STC89C52的超聲波測距防撞系統(tǒng)設(shè)計[J].儀表技術(shù)與傳感器,2011(6):74-77.GUO Qing.Ultrasonic ranging and anti-collision system based on STC89C52[J].Instrument Technique and Sensor,2011(6):74-77.

      [4]郭檢楠.基于磁阻芯片和MSP430單片機的電子羅盤設(shè)計[J].信息與電子工程,2010,8(1):12-14.GUO Jian-nan.Design of digital compass with magneto resistive chip and the MCU of MSP430[J].Information and Elecronic Engineering,2010,8(1):12-14.

      [5]王節(jié)旺.一種基于STC89C52RC單片機的計時系統(tǒng)的設(shè)計方案[J].微型機與應(yīng)用,2011,30(6):28-30.WANG Jie-wang.Design and implement of timing system based on STC89C52C MCU[J].Microcomputer& Its Applications,2011,30(6):28-30.

      [6]張丹,賀西平.基于單片機的超聲波測距系統(tǒng)的設(shè)計[J].紡織高校基礎(chǔ)科學(xué)學(xué)報,2008,21(1):117-120.ZHANG Dan,HE Xi-ping.Design of ultrasonic distance testing system based on microprocessor[J].Basic Sciences Journal of Textile Universities,2008,21(1):117-120.

      [7]胡寧博,李劍,趙櫸云.基于HMC5883的電子羅盤設(shè)計[J].傳感器世界,2011(6):35-38.HU Ning-bo,LI Jian,ZHAO Ju-yun.Digital electronic compass based on HMC5883[J].Senor World,2011(6):35-38.

      猜你喜歡
      羅盤測距障礙物
      高低翻越
      SelTrac?CBTC系統(tǒng)中非通信障礙物的設(shè)計和處理
      類星體的精準測距
      科學(xué)(2020年3期)2020-01-06 04:02:51
      淺談超聲波測距
      電子制作(2017年7期)2017-06-05 09:36:13
      不宜上課
      印尼《羅盤報》之中國國家形象
      新聞傳播(2015年9期)2015-07-18 11:04:12
      基于PSOC超聲測距系統(tǒng)設(shè)計
      蒼蠅腦中有“羅盤”
      相對差分單項測距△DOR
      太空探索(2014年1期)2014-07-10 13:41:50
      土釘墻在近障礙物的地下車行通道工程中的應(yīng)用
      汉寿县| 高清| 信阳市| 五华县| 建平县| 永福县| 克拉玛依市| 南溪县| 城市| 沂水县| 晴隆县| 玛纳斯县| 建平县| 高清| 开原市| 台北市| 砀山县| 宿州市| 禄劝| 商河县| 开远市| 扎赉特旗| 罗城| 江源县| 宁津县| 兴安县| 吴堡县| 呼伦贝尔市| 潢川县| 长沙县| 重庆市| 墨脱县| 安国市| 新巴尔虎右旗| 洪江市| 荆门市| 威海市| 桐城市| 盐城市| 交口县| 卢龙县|