» إلكترونيات » اردوينو »عجلة مسافة متر (curvimeter) على اردوينو تفعل ذلك بنفسك

افعل ذلك بنفسك متر مسافة العجلة (curvimeter) على Arduino

مرحبا بالجميع! الآن سأحاول التحدث بالتفصيل حول كيفية جعل أبسط وأقل تكلفة من curvimeter.

لكن أولاً ، دعنا نكتشف ما هو ولماذا هناك حاجة إليه. في الواقع ، يخبرنا اسمه عن غرضه. يتكون من الكلمة اللاتينية curvus ، والتي تعني منحنية أو متموجة. وهذا يعني أن مقياس الانحناء هو عداد مسافة العجلة أو الأسطوانة. يتم تمييز نوعين من أجهزة قياس المنحنيات: صغير (رسم الخرائط) ، والذي يُستخدم عادةً للقياسات على الخريطة ، وكبير (طريق) ، والتي تُستخدم عادةً لقياس طول الأجزاء المنحنية للطرق السريعة بالفعل. يمكن استخدامها حيثما يكون من غير المناسب أو من المستحيل قياسها باستخدام لعبة الروليت القياسية ، لذلك يعد المشروع بأن يكون مثيرًا للاهتمام.

أول شيء يجب مراعاته عند بناء مقياس المنحنيات هو عجلة أو بكرة. يجب أن تكون صغيرة بما فيه الكفاية بحيث تكون دقة الجهاز عالية ، وفي نفس الوقت يجب أن تكون كبيرة بما يكفي بحيث لا تتأثر قيمة القراءات بشكل كبير بعدم انتظام السطح المقاس. في حالتي ، يبلغ قطر العجلة 14 سم.

الآن تحتاج إلى تحديد مادة وحجم الهيكل. استخدمت شجرة.

على القضبان قمت بعمل علامة وقمت بالقطع والثقوب اللازمة.

ثم قمت بتجميع الأجزاء المجهزة باستخدام مسامير صغيرة.
الآن دعونا نتطرق قليلاً من مقياس المنحني نفسه ونفكر في كيف يمكن لهذا الشيء حتى تحديد المسافة؟ كل شيء بسيط للغاية. نحتاج فقط إلى حساب عدد دورات العجلة والضرب في طول محيطها الخارجي ، ومن الأسهل إضافة قيمة طول في كل مرة تصنع فيها العجلة ثورة أخرى.

لحساب كل ثورة في أبسط الحالات ، يمكنك استخدام "الاتصال المنزلق". ومع ذلك ، لا أوصي باستخدام مثل هذه الآلية المرجعية. من الأفضل استخدام مفتاح القصب أو مستشعر القاعة.

حان الوقت للتجربة على عجلة. سأربطها بمسمار طويل. نجد مكانًا على الإطار حيث تكون حافة العجلة قريبة منه قدر الإمكان وتمييزها بحدود. حول هذه المنطقة ، يجب علينا تثبيت مفتاح القصب.

على العجلة تحتاج إلى تثبيت مغناطيس صغير.تأكد من أن قوته ستكون كافية لإغلاق جهات اتصال مفتاح القصب.
الآن سننخرط في "أدمغة" النظام. في حالتي ، هذا رسم اردوينو UNO. سيقرأ حالة مفتاح القصب وينقل البيانات عبر اتصال Bluetooth ، باستخدام وحدة HC-05 ، إلى الهاتف. بالمناسبة ، مفتاح القصب متصل باللوحة مثل زر عادي. أعتقد أنه يجب ألا تكون هناك أي مشاكل في توصيل وحدة Bluetooth.

أما الكود نفسه فهو بسيط للغاية. وحاولت التعليق عليه حتى يكون كل شيء واضحًا قدر الإمكان.

int gercon = 12 ؛ // توصيل مفتاح القصب بـ 12 دبوس
مسافة مزدوجة = 0 ؛ // أنشأ متغير مزدوج لتخزين المسافة
إعداد باطل () {
   Serial.begin (9600) ؛ // توصيل اتصال تسلسلي
 }}
  حلقة فارغة () {
/ * التالي هو حلقة if. إذا تم إغلاق مفتاح القصب ، فسيتم حساب المسافة التالية. القيمة 0.46472 هي بالفعل الطول المحسوب لثورة واحدة للعجلة. لتجنب البيانات "الإضافية" ، أضف تأخيرًا يبلغ 200 مللي ثانية واعرض القراءات
* /
   if (digitalRead (gercon) == HIGH)
   {
 المسافة = المسافة + 0.46472 ؛
 تأخير (200) ؛
 Serial.println (المسافة) ؛
}}
  }} 


هنا لدينا curvimeter وجاهزة!

دعونا نجري بضعة سباقات اختبار. كل شيء يعمل بشكل رائع!


يمكنك مشاهدة مقطع فيديو عن تجميع هذا الجهاز ، ربما ستجد هناك شيء مثير للاهتمام.
[الوسائط = https: //youtu.be/kx_7ztPsLws]

هل لديك تكرار جيد للمشروع!
5
5
7

أضف تعليقًا

    • ابتسميبتسمxaxaحسنًالا أعرفياهونيا
      رئيسهالصفرأحمقنعمنعم نعمعدوانيسر
      آسفارقصرقص 2رقص 3العفومساعدةالمشروبات
      توقفالأصدقاءجيدجيدصفارة الحكمإغماءلسان
      دخانالتصفيقصرخةيعلنمشتقعدم الإشارةتنزيل
      حرارةغاضبتضحك 1mdaاجتماعالمسكسلبي
      not_iالفشارمعاقبةاقرأتخويفيخيفبحث
      ساخرشكرا لكهذاtoclclumnikحادتوافق
      سيءالنحلblack_eyeblum3استحىتباهىالملل
      للرقابةإرضاءسر 2تهددانتصاريونظارة شمس
      صدمةتنفسههههساداهلا وسهلاكروتويya_za
      ya_dobryiالمساعدne_huliganne_othodiحمىحظرقريب
1 تعليق
ضيف سيرجي
لماذا UNO عندما attiny13 كافية للعيون ...
بالنسبة للرمز ، على الأقل تحتاج إلى إضافة تحقق من أن المغناطيس قد غادر مفتاح القصب ، لأنه في هذا التطبيق ، بسرعة معينة ، وأكثر من ذلك إذا توقفت العجلة ، يمكن أن تتم معالجتها أكثر من مرة أو لا تتم معالجتها على الإطلاق. للقيام بذلك ، ما عليك سوى إضافة متغير عام والتحقق من حالته قبل حساب الطول ، مثل:
int gercon = 12 ؛ // توصيل مفتاح القصب بـ 12 دبوس
int i = true ؛
مسافة مزدوجة = 0 ؛ // أنشأ متغير مزدوج لتخزين المسافة
إعداد باطل () {
Serial.begin (9600) ؛ // توصيل اتصال تسلسلي
}
حلقة فارغة () {
/ * التالي هو حلقة if. إذا تم إغلاق مفتاح القصب ، فسيتم حساب المسافة التالية. القيمة 0.46472 هي بالفعل الطول المحسوب لثورة واحدة للعجلة. لتجنب البيانات "الإضافية" ، أضف تأخيرًا يبلغ 200 مللي ثانية واعرض القراءات
*/
if (digitalRead (gercon) == HIGH)
{
إذا (i <1)
{
المسافة = المسافة + 0.46472 ؛
ط = 1 ؛
// تأخير (200) ؛
Serial.println (المسافة) ؛
}
}
إذا (i> 0)
{
ط ++ ؛
تأخير (1) ؛
}
if (digitalRead (gercon) == LOW)
{
إذا كان (i> 30) // يتجنب الإيجابيات الزائفة بسبب ارتداد الاتصال
{
ط = 0 ؛
}
}
}

والأفضل من ذلك ، ضع مفتاحي القصب ، وهذا سيسمح لك بتحديد اتجاه الدوران (لم أذهب إلى هناك للقياس - لقد عدت ، ولم أبدأ من البداية أو هزته في مكانه إلى الأمام وعودة التحدث مع أحد الجيران ، إلخ.) يمكنك أيضًا إضافة مغناطيس لتغيير الدقة.
ZY لم أتحقق من التغييرات في الرمز ، قد تكون هناك أخطاء.

ننصحك بقراءة:

تسليمها للهاتف الذكي ...