倒車?yán)走_已經(jīng)非常普遍,這個專案做一個倒車?yán)走_系統(tǒng)。將這個倒車?yán)走_系統(tǒng)整合到遙控車?yán)?,就可以實現(xiàn)自動倒車的功能。
硬件方面,我們使用的開發(fā)板是webduino,webduino的優(yōu)點是可以因為web的開發(fā)模式簡單達成跨平臺的需求,亦可以因為網(wǎng)絡(luò)聯(lián)機而能遙控操作,缺點則是也受限于網(wǎng)絡(luò)聯(lián)機,若無網(wǎng)絡(luò)則無法運作。
開發(fā)工具
Ameba 8195AM
N條連接線蜂鳴器*1
超音波模塊*1
超音波鏈接庫(library)
面包版
系統(tǒng)連接如下圖
程序代碼如下
#include
#define TRIGGER_PIN 12 //定義模塊triger端為數(shù)字接腳12
#define ECHO_PIN 13 //定義模塊echo端為數(shù)字接腳11
int spk=8; //定義揚聲器為數(shù)位接腳13
Ultrasonic ultrasonic(TRIGGER_PIN,ECHO_PIN); //設(shè)定HC-SR04初始化參數(shù)
void setup()
{
Serial.begin(9600);
pinMode(spk, OUTPUT);
}
void loop()
{
float cmMsec; //定義浮動數(shù)
long microsec = ultrasonic.timing(); //測距,返回的是一個時間單位(microsec)
cmMsec =ultrasonic.convert(microsec,Ultrasonic::CM); //將測得的時間單位計算為距離單位
Serial.print(" CM: ");
Serial.println(cmMsec);
if( cmMsec >= 80 && cmMsec <=100){ //假設(shè)距離介于80~100之間
for(int i = 0; i < 12000; i++) //循環(huán)重復(fù)
digitalWrite(spk, 0);
digitalWrite(spk, 1);
delay(300);
}
else if (cmMsec >= 60 && cmMsec<= 79){ //假設(shè)距離介于60~79之間
for(int i = 0; i < 12000; i++) //循環(huán)重復(fù)
digitalWrite(spk, 1);
digitalWrite(spk, 0);
delay(100);
}
else if (cmMsec >= 40 && cmMsec<= 59){ //假設(shè)距離介于40~59之間
for(int i = 0; i < 12000; i++) //循環(huán)重復(fù)
digitalWrite(spk, 1);
digitalWrite(spk, 0);
delay(50);
}
else if (cmMsec >= 30 && cmMsec<= 39){ //假設(shè)距離介于30~39之間
for(int i = 0; i < 12000; i++) //循環(huán)重復(fù)
digitalWrite(spk, 1);
digitalWrite(spk, 0);
delay(20);
}
else if (cmMsec >= 20 && cmMsec<= 29){ //假設(shè)距離介于20~29之間
for(int i = 0; i < 6000; i++) //循環(huán)重復(fù)
digitalWrite(spk, 1);
digitalWrite(spk, 0);
delay(10);
}
else if (cmMsec<19){ //假設(shè)距離小于19
digitalWrite(spk, 1);
delay(10);
}
else
digitalWrite(spk, 0);
}
下載程序到Ameba板,完成
-
雷達
+關(guān)注
關(guān)注
50文章
2926瀏覽量
117441 -
蜂鳴器
+關(guān)注
關(guān)注
12文章
891瀏覽量
45906
原文標(biāo)題:提上褲子就走的TI
文章出處:【微信號:xinpianlaosiji,微信公眾號:芯世相】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論