המרת זמן ההד לסנטימטרים
חלק מהיחידה צגים וחיישנים במסלול ה-Arduino של Coddy. שיעור 19 מתוך 24.
הקול עובר כ־0.034 סנטימטר בכל מיקרו־שנייה. הכפל את זמן ההד במספר הזה ותקבל את המרחק שהקול עבר.
אבל הקול עבר אל העצם וחזרה, ולכן העצם נמצא במרחק חצי מזה:
float cm = duration * 0.034 / 2;במרחק של מטר אחד, ההד נמשך כ־5800 מיקרו־שניות: 5800 כפול 0.034 הם 197 סנטימטר הלוך ושוב, כלומר 98.6 סנטימטרים משם. כתוב את 0.034 עם הנקודה העשרונית שלו: כך התוצאה תשמור על הספרות שאחרי הנקודה.
צפה לסטייה של סנטימטר או שניים: טמפרטורת האוויר משנה את מהירות הקול, והחיישן הזה מודד מעט פחות מהמרחק בפועל.
אתגר
קלהסקץ' מדפיס את זמן ההד. הדפס את המרחק במקום זאת:
- המר את הזמן לסנטימטרים: כפול 0.034, חלקי 2
- הדפס את הסנטימטרים במקום את הזמן
לחץ על Run, הזז את העצם, ואז לחץ על Check.
נסו בעצמכם
const int trigPin = 9;
const int echoPin = 10;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
// המר את זמן ההד לסנטימטרים והדפס את התוצאה
Serial.println(duration);
delay(200);
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה צגים וחיישנים
4חיישנים
זמן ההד של אולטרסוניקהמרת זמן ההד לסנטימטריםטמפרטורה באמצעות תרמיסטורהמרה מצלזיוס לפרנהייטמד עוצמת אורמרחק על גבי ה-LCDמדחום LCDתרגלו בעצמכם: Arduino אונליין