» אלקטרוניקה » ארדואינו »מד טווח קולי מאוד מדויק

מד טווח קולי מאוד מדויק



מד טווח קולי HC-SR04 שופר באמצעות חיישן הטמפרטורה LM35.

מבית הספר ניתן לזכור כי מהירות הצליל תלויה בצפיפות האוויר, וצפיפות האוויר תלויה בטמפרטורה.
נחשב את הטמפרטורה באמצעות נוסחה זו
temp2 = (temp / 1023.0) * 5.0 * 1000/10;

כאשר temp2 הוא ערך הטמפרטורה המוגמר לאחר הנוסחה,
והיכן טמפ הוא הערך הגולמי מהחיישן.

מה שאנחנו צריכים:
  • מד טווח קולי HC-SR04
  • ארדואינו
  • טיפוס לחם
  • מגשרים
  • תרמיסטור LM35 (חיישן טמפרטורה)


זכור כי HC-SR04 מגיע בשתי צורות -
כאן יש לי טוב וזה מודד ביציבות מרחק.
שניהם מודדים בין 4 ס"מ ל -400 ס"מ.
מופעל על ידי 3.3 עד 5 v


ראשית, אנו לועגים לכל זה על קרש לחם.

חיישן קולי:
  • GND - gnd
  • הד - 3 סיכות
  • טריג - 2 סיכות
  • Vcc - 5v

תרמיסטור LM35:
  • 1 - 5v
  • 2 - A0
  • 3 - GND

מד טווח קולי מאוד מדויק

זה צריך להיות כך:

בשלב הבא אנו ממלאים את הסקיצה.
הורד ספרייה עבור חיישן HC-SR04 -
iarduino_hc-sr04.zip [299.69 Kb] (הורדות: 207)

הורד סקיצה -
sketch_mar23f.zip [338 ב] (הורדות: 157)

# כלול  // חבר את הספריה לעבודה עם חיישן הקולי HC-SR04
iarduino_HC_SR04 hcsr (2,3); // מציין אנשי קשר Trig ו- Echo
זמני temp = 0; // טמפרטורה גולמית
float temp2 = 0; // ערך טמפרטורה מוכן

הגדרת ביטול () {// הפעל פעם אחת
  Serial.begin (9600); // הפעל את צג היציאה
  pinMode (A0, INPUT); // מציין איש קשר A0 כקלט
}

void loop () {// חוזר על מספר אינסופי של פעמים
  temp = analogRead (A0); // קרא את הערך של איש קשר A0 והקצה לו את הזמני המשתנה
  temp2 = (temp / 1023.0) * 5.0 * 1000/10; // חישוב ערך הגלם לפי הנוסחה כדי לקבל את ערך הטמפרטורה המוגמר
  Serial.println (hcsr.distance (temp2)); // כתוב את הטווח המוכן בצג היציאה
  עיכוב (1000); // עיכוב שנייה אחת
}

והנה סקיצה לתצוגת LCD-
הורד סקיצה -
sketch_mar23f-1.zip [861 ב] (הורדות: 139)


# כלול  // חבר את הספריה לעבודה עם חיישן הקולי HC-SR04
#include  // חבר את הספריה לעבודה עם התצוגה באוטובוס I2C

LiquidCrystal_I2C lcd (0x27, 16, 2); // מציין (כתובת, עמודות, שורות)
iarduino_HC_SR04 hcsr (2,3); // מציין אנשי קשר Trig ו- Echo

זמני temp = 0; // טמפרטורה גולמית
float temp2 = 0; // ערך טמפרטורה מוכן

הגדרת ביטול () {// הפעל פעם אחת
  lcd.init (); // לאתחל את התצוגה
  lcd.backlight (); // הפעל את תאורה אחורית לתצוגה
  pinMode (A0, INPUT); // מציין איש קשר A0 כקלט
}

void loop () {// חוזר על מספר אינסופי של פעמים
  temp = analogRead (A0); // קרא את הערך של איש קשר A0 והקצה לו את הזמני המשתנה
  temp2 = (temp / 1023.0) * 5.0 * 1000/10; // חישוב ערך הגלם לפי הנוסחה כדי לקבל את ערך הטמפרטורה המוגמר
  lcd.set סמן (2, 0); // הניח את הסמן על 2 עמודות ושורה 0
  lcd.print (temp2); // כתוב את המרחק
  lcd.set סמן (5,0); // מקם את הסמן בעמודה החמישית ובשורה ה -0
  lcd.print ("ס"מ"); // כתוב ס"מ
  עיכוב (1000); // עיכוב שנייה אחת
}


כתוב הערות ושאלות, אני אענה על הכל!
10
10
10

הוסף תגובה

    • לחייךמחייךxaxaבסדרלא יודעיאהוnea
      בוסשריטהשוטהכןכן כןאגרסיביסודי
      סליחהריקודריקוד 2ריקוד 3סליחהעזרהמשקאות
      עצורחבריםטובטובשריקהלהתנדנדלשון
      עשןמוחא כפייםמשוגעלהכריזלזלזלdon-t_mentionלהוריד
      חוםלא מועילצחוק 1מדמפגשמסגדשלילי
      לא_יפופקורןלהענישלקרואלהפחידמפחידחיפוש
      מתגרהתודהזהלרמזאמניקחריףמסכים
      רעדבורהשחורblum3סומקלהתפארשעמום
      מצונזרהנאהסוד 2לאייםניצחוןיוsun_bespectacled
      שוקכבודחחחקדמהברוך הבאkrutoyya_za
      ya_dobryiעוזרne_huliganne_othodiפלומהאיסורקרוב
13 הערות
האורח אלכסנדר
מאיפה הנוסחה הזו באה:
temp2 = (temp / 1023.0) * 5.0 * 1000/10
האם תוכל לומר לי ביתר פירוט, מאיפה הערכים האלה הגיעו?
הייתי מוסיף גם את נקודה 4. אל תשמש למדידות, רק למכשירי אוטומציה!
אני מבין (אם לשפוט לפי הפרמטרים לעיל) שההוראות אליו נראות כך:
1. תפוס את HC-SR04 ביד שמאל, ואת האטורוצ'קה, או סמן, מימינך.
2. הערך את המרחק בעיניים וכתוב אותו.
3. הכניסו את HC-SR04 חזרה לתיבה.
בסדר
ציטוט: "תכונות של מד טווח הקולי HC-SR04
טווח מדידה: בין 2 ס"מ ל -400 ס"מ.
דיוק המדידה: ± 1 ס"מ (בטווח המרבי של ± 3 ס"מ).

שאלה: עד כמה "משקלו" תיקון הטמפרטורה הוא בשגיאה הכוללת?
אני מאמין שהמוצר הביתי לא יושם, אין תמונה של המכשיר המוגמר והפעלתו.
אני רואה במוצר הביתי הזה "ילדותי", אך המאמר אינו מראה או לועס כיצד לחבר את התצוגה. למתחילים, האתרים שלנו אינם ברורים, אך מנוסים אינם זקוקים לכך. ללעוס ולהראות את כל תוצרת הבית.
ציטוט: אנטון מרטיאנוב
למעשה הם נבדלים זה מזה לא רק בכיתוב אלא גם ברמת הדיוק!

על פי התיעוד או שנתקלת בזה?
הכותב
למעשה הם נבדלים זה מזה לא רק בכיתוב אלא גם ברמת הדיוק!
אבל האם זה לא מספיק ??? בוס לדוגמא, אני גם לא אוהב את זה כשהסימונים כתובים מתחת לחצי מטר !!! מחייך לא יודע
ולמה זה עדיין גרוע, למעט גובה הסימון?
הכותב
הרע הוא הכתובת HC-SR04 התחתונה 0.5 ס"מ
מאוד מדויק
ומה הדיוק? מה שימש כהפניה? מהי שגיאת הטמפרטורה?
זכור כי HC-SR04 מגיע בשתי צורות -
יש לי טוב
ואיזה מהן לדעתך גרועה?
אני אגיד לך מהניסיון שלי שמזין טווח קולי, כמו "רולטה ללא מגע" הוא מפנק !!!
אחד שוכב כמיותר ...
ולא בגלל דיוק מספיק, אלא מכיוון שהם יכולים רק למדוד את המרחק לקיר גדול מספיק של חומר מוצק ... אבל לקיר האחורי של גומחה בקיר הזה - בשום פנים ואופן !!! וזה גם לא יעבוד אם הקיר הזה זרוע ברהיטים ודברים אחרים, ויש רק "חלון" קטן נטול העומס ... (במקרה זה, קל יותר לא לשחרר את הקיר מכל זה, אלא פשוט להשתמש ברולטה רגילה).
שוב, נסה למדוד את המרחק ליתד המונע באדמה !!!

ולחממה?)))
ולקיר המכוסה בבד?)))
ולחזית, שכבר הודבקו בלוחות צמר סלעים, אך עדיין ללא ציפוי סופי?))))
ולפני כל אחד מעשר הקורות המסודרים בשורה?
ומהקיר לקצה הלוח כבר ממוסמר לתקרה בכדי לחתוך את האורך הדרוש ולסגור את "החור" הזה ???

אף אחד מהנ"ל לא יסתדר לך !!!

ואז מה למדוד עם זה במהלך התיקון, או באתר בנייה, למשל ??? רק הגודל והשטח של המקום, בעודם נקיים מרהיטים ???

בקיצור, זרקתי את זה על המדף לפני מספר שנים, וזכרתי את הפתגם על "הרשע שמשלם פעמיים", החלטתי שאני צריך לקנות לייזר….

אנו ממליצים לך לקרוא:

תן אותו לסמארטפון ...