效用:利用超音波感測器測量物體距離,物體距離小於15公分亮紅燈;物體距離大於15公分且小於30公分時亮黃燈;物體距離超過30公分亮綠燈。
應用:此裝置可用於防止汽車追撞的緊急剎車系統。
電路接法:
圖形程式方塊:
程式碼:
int _ABVAR_1_e = 0 ;
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( 9 , LOW );
pinMode( 2 , OUTPUT);
pinMode( 5 , OUTPUT);
pinMode( 8 , OUTPUT);
}
void loop()
{
_ABVAR_1_e = ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 9 , 10 ) ;
if (( ( ( _ABVAR_1_e + 5 ) ) < ( 15 ) ))
{
digitalWrite(2 , HIGH);
delay( 300 );
digitalWrite(2 , LOW);
delay( 300 );
digitalWrite(2 , HIGH);
}
else
{
if (( ( ( _ABVAR_1_e + 5 ) ) < ( 50 ) ))
{
digitalWrite(5 , HIGH);
delay( 300 );
digitalWrite(5 , LOW);
delay( 300 );
digitalWrite(5 , HIGH);
}
else
{
digitalWrite(8 , HIGH);
delay( 300 );
digitalWrite(8 , LOW);
delay( 300 );
digitalWrite(8 , HIGH);
}
}
}
沒有留言:
張貼留言