2016年5月25日 星期三

Arduino學習250.超音波倒車雷達電子尺



Arduino學習250.超音波倒車雷達

此篇運用超音波模組HC-SR04,來量測距離監控顯示,並由蜂鳴器警示,
準備硬體
超音波模組HC-SR04
有源蜂鳴器5V
利用音波每秒346公尺,由發射端Trig發出人耳聽不到的波頻,
碰到物品回聲由Echo接收端接收波頻,再將來回時間透過計算距離,
 


由模塊接腳分別接上線,及加上蜂鳴器,
HC-SR04腳位
Arduino對應
Vcc
+5V
Trig
D2
Echo
D3
GND
GND



超音波模組在ArduBlock有內建模組,依版本不同積木顏色及位置會不同,
將測得的距離數距設定為變數SR,將其顯示在監控視窗,單位為公分,
並套用在蜂鳴器的間斷時間,使距離長斷音長,距離短斷音時間就短,
上傳後記得打開監控視窗



unsigned long _ABVAR_1_SR = 0UL ;
int ardublockUltrasonicSensorCodeAutoGeneratedReturnCM(int trigPin, int echoPin)
{
  long duration;
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(20);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  duration = duration / 59;
  if ((duration < 2) || (duration > 300)) return false;
  return duration;
}


void setup()
{
  digitalWrite( 2 , LOW );

  Serial.begin(9600);
  pinMode( 7 , OUTPUT);
}

void loop()
{
  _ABVAR_1_SR =      ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 2 , 3 ) ;
  Serial.print(_ABVAR_1_SR);
  Serial.print(" ");
  Serial.println();
  delay( 100 );
  digitalWrite(7 , LOW);
  delay( _ABVAR_1_SR );
  digitalWrite(7 , HIGH);
}


打開監控視窗,可將收到的訊號透過內建程式直接顯示測到的距離CM公分,
超音波模組除了用在倒車雷達警示外,也可用在智慧車,電子尺等等運
 

沒有留言:

張貼留言