SRF02是一個超音波的感測器

SRF02可以使用I2C或者是串列通訊(RX/TX)的方式來設定命令及獲得距離的資料。

本文使用I2C的方式來測試.

srf02_beamwidth

圖1:SRF02的距離感應對應圖

從原廠提供的資料中,可以知道SRF02的距離量測有角度上的限制,也就是待測物最好是能跟感應器在同一平面上,這樣SRF02可以測得更遠更準.

 

SRF02感測器的暫存器,SRF02總共有6個暫存器(Register)

srf02_reg

圖2:SRF02的暫存器

 

感測器的命令如下圖

srf02_command

圖3:SRF02的命令

包括量測的單位為:inches, centimeters,microseconds.

可以利用I2C的方式.命令下達的方式,SRF02的命令是下達在第0個暫存器內

感測器的I2C位置,如下圖表示.

srf02_i2cAddress

圖4:SRF02的I2C位置表及燈號顯示方式

 

 

 


 

在Arduino:

#include <wire.h>

void sendCommand (int address, int command)

{

  // start I2C transmission:

  Wire.beginTransmission(address);

  // send command:  

  Wire.write(0x00); //命令要寫在第0個暫存器內.

  Wire.write(command);

  // end I2C transmission:

  Wire.endTransmission();

}

adress:SRF02的I2C位置

command:要傳送指配的命令


 

 

 

 

  

 

arrow
arrow
    全站熱搜

    一定!! 發表在 痞客邦 留言(0) 人氣()