เปิดตัวซีรีย์ใหม่กับ “Craft โผ่มมม” ที่จะช่วยให้เปิดไอเดียแบบกว้างๆ สำหรับให้รู้ว่าโลกนี้สามารถพัฒนาได้อีกมากด้วยเทคโนโลยี แบบง่ายๆ ภายในสิบนาที ! โดยในตอนนี้เรามาดูว่าถ้าต้องการทำอุปกรณ์ที่ติดท้ายรถที่เราได้ยินเสียงปี๊บๆ กันนั้น ทำยากง่ายแค่ไหน ไปดูกันเลย ! อย่าลืม ! ต้องมีพื้นฐานภาษาโปรแกรมมาก่อนนะ !
สำหรับโค้ดชุดแรกที่เกี่ยวกับการวัดระยะด้วยโมดูลอัลตร้าโซนิค จะประกอบด้วยการปล่อยคลื่นออกไปทางขา TrigPin และ รับจาก EchoPin ตามการหน่วงเวลาที่ได้กำหนดไว้เป็นไมโครวินาที
[c]
const 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);
}[/c]
ต่อมาให้เราทำการพัฒนาส่วนของการส่งเสียงซึ่งจะมีความยากขึ้นเนื่องจากความถี่ของการส่งเสียงจะแปรผันไปกับระยะระหว่างตัวปล่อยสัญญานและวัตถุ โดยในที่นี้เป็นรูปแบบฟังก์ชัน beep ที่รับค่าระยะทาง ซึ่งมาจากการคำนวณก่อนหน้านั่นเอง
[c]
<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");
}[/c]
และ สำหรับท่านใดที่ต้องการเรียนรู้เพิ่มเติมหละก็ ดูจากวีดีโอของเราในยูทูปจากด้านบนได้เลยย !