เปิดตัวซีรีย์ใหม่กับ “Craft โผ่มมม” ที่จะช่วยให้เปิดไอเดียแบบกว้างๆ สำหรับให้รู้ว่าโลกนี้สามารถพัฒนาได้อีกมากด้วยเทคโนโลยี แบบง่ายๆ ภายในสิบนาที ! โดยในตอนนี้เรามาดูว่าถ้าต้องการทำอุปกรณ์ที่ติดท้ายรถที่เราได้ยินเสียงปี๊บๆ กันนั้น ทำยากง่ายแค่ไหน ไปดูกันเลย ! อย่าลืม ! ต้องมีพื้นฐานภาษาโปรแกรมมาก่อนนะ !
สำหรับโค้ดชุดแรกที่เกี่ยวกับการวัดระยะด้วยโมดูลอัลตร้าโซนิค จะประกอบด้วยการปล่อยคลื่นออกไปทางขา TrigPin และ รับจาก EchoPin ตามการหน่วงเวลาที่ได้กำหนดไว้เป็นไมโครวินาที
1234567891011121314151617181920212223242526272829303132const
int
trigPin = 8;
const
int
echoPin = 9;
const
int
speakerPin = 3;
long
duration;
int
distance;
int
beepCount = 0;
void
setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(speakerPin, OUTPUT);
Serial.begin(9600);
}
void
loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.println(distance);
}
ต่อมาให้เราทำการพัฒนาส่วนของการส่งเสียงซึ่งจะมีความยากขึ้นเนื่องจากความถี่ของการส่งเสียงจะแปรผันไปกับระยะระหว่างตัวปล่อยสัญญานและวัตถุ โดยในที่นี้เป็นรูปแบบฟังก์ชัน beep ที่รับค่าระยะทาง ซึ่งมาจากการคำนวณก่อนหน้านั่นเอง
1234567891011<pre>
void
beep(
int
distance) {
beepCount += 15;
if
(beepCount / (distance * 10) > 1) {
digitalWrite(speakerPin, LOW);
Serial.println("Open");
beepCount = 0;
}
else
if
(beepCount > 50){
digitalWrite(speakerPin, HIGH);
Serial.println("Close");
}
และ สำหรับท่านใดที่ต้องการเรียนรู้เพิ่มเติมหละก็ ดูจากวีดีโอของเราในยูทูปจากด้านบนได้เลยย !