使用的超音波模組是 HC-SR04 ,目前網購價錢最低只要95元,我買100元。同樣的模組價錢居然可以高到660元,購買時請多比價。 程式碼參考網址 http://trollmaker.com/article3/arduino-and-hc-sr04-ultrasonic-sensor 原先的duration和distance以整數int宣告,但我需要小數點的精確數字,所以改以float宣告 接著為了能夠和PLX DAQ串接後以MS EXCEL呈現資料,所以修改不少程式碼。 用Excel可即時用折線圖呈現趨勢,下圖一個是xt圖,另一個是vt圖。有時候兩個時間點測量時,距離沒有改變,所以vt圖就會呈現v =0的狀態(折線上下跳動),解決方法應該是在excel中公式改寫成每10個或20個點測量一次速度改變。 以下是arduino的程式碼 /* HC-SR04 Ping distance sensor] VCC to arduino 5v GND to arduino GND Echo to Arduino pin 13 Trig to Arduino pin 12 More info at: http://goo.gl/kJ8Gl */ #define trigPin 12 #define echoPin 13 int time=0; int row = 0; void setup() { Serial.begin (9600); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); Serial.println("CLEARDATA"); Serial.println("LABEL,Time,X"); } void loop() { float duration, distance; int intervaltime=100; //每幾毫秒測量一次 digitalWrite(trigPin, HIGH); delayMicroseconds(1000); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH);