国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

*@URM37 V3.2超聲波測距儀的制作

發(fā)布時間:2011-4-16 19:40    發(fā)布者:1770309616
關鍵詞: 超聲波測距儀
URM37 V3.2超聲波測距儀的制作






     這個超聲波型號為URM37 V3.2的測距傳感器是一種智能傳感器,所謂智能傳感器就是信號采集,數字處理,和信息傳送為一體。用戶只要通過單片機TTL電平串口,向傳感器發(fā)出四個字節(jié)的信息讀取命令,傳感器接收命令后,會向單片機發(fā)回四個字節(jié)的信息,這四個字節(jié)里有兩個字節(jié)就是16位被測距離信息。如果高位字節(jié)和低位字節(jié)都是0xFF,這意味著測量無效,超出測量范圍,否則,高位字節(jié)乘以256再加上低位字節(jié)就是被測距離,單位是厘米。
實驗照片:




通過Labview前面板顯示的距離信息與卷尺對比,測量比較精確。URM37V3.2超聲波測距模塊與單片機是通過TTL模式的串口連接的,只需四根線:VCC、GND、,具體接線圖如下:




   其實這個智能傳感器除了測距,還有一些附加的實用功能,這樣我把它的說明書給大家看,請下載:

URM37V3.2超聲波測距傳感器與Arduino控制器的串口連線,可通過4根杜邦線一端插在傳感器的引針上,另一端插在層疊在Arduino控制器的傳感器擴展板的引針上。如圖所示:




注意:當通過USB,下載Arduino程序,傳感器的RXD和TXD這兩根杜邦線要拔掉,否則無法下載程序。
講到這里,另外再提一個話題,Arduino用戶需特別注意,我曾經出現過類似下載故障:
在使用Arduino的過程中,最令人頭痛的估計就是bootloade毀壞,需要重新燒寫bootloader了。最常見的一種情況就是,在Arduino IDE環(huán)境中下載程序的時候,較長時間沒有反應,這時很多人就直接選擇斷開USB連接線或者電源,然后就會出現無法再上傳程序的錯誤。其實出現這種情況時正確的做法是一直等到Arduino超時返回出錯信息,直接斷電的做法往往會導致bootloader毀壞。如果bootloader毀壞,唯一的辦法就是通過ISP下載線重新燒寫bootloader。
這個實驗的Arduino程序的任務是:
向傳感器發(fā)出“讀取距離信息”的命令,再馬上接收傳感器返回的距離信息,并把兩個字節(jié)的距離信息換算為十進制數據,如果該數據小于等于30厘米,則連接在控制器數字接口的LED燈亮,否則熄滅。然后把兩個字節(jié)的距離信息上傳給上位機的Labview軟件,以便Labview前面板實時顯示傳感器所測距離。
int USValue = 0;//定義存放超聲波測量距離
int ledpin =11;  //定義燈作顯示,小于30CM,燈亮
boolean flag=true;
byte DMcmd[4] = {0x22, 0x00, 0x00, 0x22}; //距離命令

void setup() {
  Serial.begin(9600);  //串口波特率設置         
  pinMode(ledpin,OUTPUT); //初始化,把燈熄滅
  digitalWrite(ledpin,HIGH);
  delay(200);
}

void loop( )
{
  flag=true;
  for(int i=0;i<4;i++)
  {
    Serial.print(DMcmd,BYTE);//發(fā)送超聲波測距命令
  }
  delay(75); //一個延時
  while(flag)
  {
      if(Serial.available()>0) //查詢串口有無數據
      {
        byte header=Serial.read(); //0x22開始接收距離數據
        byte highbyte=Serial.read();//距離數據高8位
        byte lowbyte=Serial.read();//距離數據低8位
        byte sum=Serial.read();//sum校驗和
         if(highbyte==255)  //數據無效
          {
            USValue=65525;  //
          }
          else
          {
            USValue = highbyte*256+lowbyte;
            if (USValue <=30)
            {//如果距離小于30厘米小燈亮起
               digitalWrite(ledpin,LOW);
            }//如果距離大于30厘米小燈熄滅
           else
             digitalWrite(ledpin,HIGH);
          }   
         Serial.print(highbyte,BYTE);//向上位機LABVIEW軟件
         Serial.print(lowbyte,BYTE);//輸出距離
         flag=false;
       }
    }
    delay(100); //
}

上位機Labview前面板:




上位機Labview框圖程序:




從上圖Labview框圖程序看出,程序中“索引數組”VI,被索引出第4、5個元素就是超聲波智能傳感器提供的那兩個字節(jié)的距離信息,為啥第4、5個元素是距離信息那?你仔細看看Arduino程序,每一次主程序,即void loop( )循環(huán),它首先從串口向傳感器發(fā)出了四個字節(jié)的距離采集命令,Arduino控制器與傳感器連接的TTL模式的串口和Arduino控制器與PC機連接的串口是一個串口,接著主程序又向串口發(fā)出了采集到的兩個字節(jié)的距離信息給Labview。所以每次void loop( )循環(huán),Labview要讀取六個字節(jié),所以0~5個元素的數組里,第4、5個元素才是距離信息。
采用Labview、Arduino控制器和超聲波智能傳感器,象搭積木一樣很快組建出自己的超聲波測距儀。
實驗時,把手掌當做障礙物,伸入到超聲波傳感器的視野里,前后晃動手掌,Labview前面板的滑動桿上的游標也跟著晃動,蠻有意思的!

URM37 V3.2使用手冊V1.2.pdf

2.36 MB, 下載積分: 積分 -1

本文地址:http://www.qingdxww.cn/thread-62526-1-1.html     【打印本頁】

本站部分文章為轉載或網友發(fā)布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
jackchenmt 發(fā)表于 2011-4-26 12:14:36
有參考!感謝!
procom 發(fā)表于 2011-4-26 17:22:24
有參考!感謝!
xiandawu 發(fā)表于 2011-8-4 12:35:19
感謝!
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點宏來節(jié)省時間和空間
  • Dev Tool Bits——使用DVRT協議查看項目中的數據
  • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監(jiān)視
  • 貿澤電子(Mouser)專區(qū)
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品入口麻豆高清在线 | 日本在线视频免费看 | 高清一级毛片免免费看 | 97色女| 污片网站| 欧美精品一区在线看 | 热99这里有精品综合久久 | 日韩欧免费一区二区三区 | 一区二区在线观看视频 | 99精品国产福利免费一区二区 | 国产精品嘿咻嘿咻在线播放 | 亚洲欧洲精品视频在线观看 | 在线观看一区二区三区视频 | 亚洲天堂热 | 色综合久久久久久久久久久 | 日韩孕妇孕交在线视频 | 欧美尺寸又黑又粗又长 | 国产精欧美一区二区三区 | 日韩国产精品欧美一区二区 | 青青91 | 色原网站| 美女伊人网 | 国产在线精品99一卡2卡 | 亚洲精品高清国产一久久 | 亚洲熟区 | 欧洲色| 加勒比一区二区三区 | 久久99热成人精品国产 | 久久婷婷五夜综合色频 | 中文字幕无线码一区二区三区 | 一级特黄国产高清毛片97看片 | 适合男人晚上看的app软件 | 向日葵视频在线免费观看 | 欧美三级在线看 | 国产福利自产拍在线观看 | 国产精品成人免费视频 | 久久99热精品免费观看k影院 | 欧美视频一区二区三区精品 | 国产精品玖玖玖在线观看 | 久久久四虎成人永久免费网站 | 99国内精品 |