» إلكترونيات » اردوينو »ساعة بمقياس حرارة على Attiny

مشاهدة ترمومتر الحرارة

مشاهدة ترمومتر الحرارة



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

نجمع كل ما هو ضروري:

- Digispark Attiny85 (إصدار USB مصغر)
- ds18b20 (في علبة بلاستيكية)
- شاشة Oled بدقة 128 × 64 ، I2C
- 2 قطعة 18650 بطارية أو بطارية كمبيوتر محمول Li-ion قديمة
- المقاومات (3.3 kΩ ، 4.7 kΩ ، 10 kΩ)
- بلاستيك رقيق (للإسكان)
- توصيل الأسلاك بألوان مختلفة
- مبرمج ISP (أو أي اردوينو الرسوم)
- زر
- موصلات دوبونت 2.54 مم "أم" و "أب"
- سكين القرطاسية ، الشريط على الوجهين ، الشريط الكهربائي ، المصهور
- كل شيء للحام (لحام الحديد ، الصنوبري ، اللحيم)

حالة الخطوة الأولى.
ستصنع علبة الساعة المستقبلية من البلاستيك الرقيق. يمكنك شراء ورقة من هذا البلاستيك في متجر متخصص أو طلب على aliexpress. أو يمكنك (لا تنتظر ولا تنظر) للذهاب إلى المكتب الكتابي وشراء مجلد ورقي بلاستيكي بلونك المفضل. أبعاد الساعة المستقبلية: العرض - 40 مم ، السمك - 30 مم ، الارتفاع - 70 مم. وفقًا للرسم البياني أدناه ، قمنا بقص مسح ضوئي من البلاستيك:


نقطع على طول خطوط سميكة ، والانحناء بلطف على طول الخطوط الرفيعة. نقطع المستطيل في المنتصف باستخدام سكين كتابي ، هذه نافذة للعرض. ونتيجة لذلك ، نحصل على مسح من البلاستيك:


ننتقل إلى Attiny.

الخطوة 2 Attiny + Oled.
كما قلت ، في قلوبنا محلية الصنع سيكون Attiny 85. من الأفضل شراء هذه الشريحة ، ملحومة على الفور إلى اللوحة مع منظم الجهد والحزام. Digispark Attiny85 مناسب تمامًا. اختر الإصدار الذي يحتوي على micro-USB على اللوحة. تعديلات أخرى على اللوحة لن تناسب الحجم. يحدث أن يتم بيع هذه اللوحة مع موصلات Dupon "الذكور" ملحومة بالفعل. إذا كان الأمر كذلك ، لحام جميع الموصلات. نجمع الأسلاك الملونة. نحتاج 10 سم بألوان مختلفة. نحن نلحمهم في Attiny ونكتب أي السلك الذي يتوافق مع الاستنتاج. يجب لحام الأسلاك P0 و P2 في سلكين. مطلوب الزوج الثاني لتوصيل شاشة Oled. نحصل على ما يلي:


كتبت الرسم البياني التالي على السلك:


الشاشة صغيرة (لتتناسب مع وحدة التحكم) ، لكنها تبدو جميلة. OLED (الصمام الثنائي العضوي الباعث للضوء) هو عرض رسومي. لا يوجد ضوء خلفي ، وبدلاً من ذلك ، فإن كل بكسل هو LED مستقل. أحجام الشاشات - 0.96 بوصة.القرار 128x64. متصل عبر حافلة I2C. يستخدم سلكين فقط للتواصل مع Attiny. تأتي بألوان مختلفة ، تختار حسب ذوقك. أحببت اللون الأزرق مع شريط أصفر في الأعلى. نتصرف على غرار ديسبارك. إذا كانت هناك موصلات ملحومة - لحامها. اللحيم ، في الوقت الراهن ، فقط أسلاك الكهرباء:


كن حذرًا عند اللحام ، لا تتلف الكبل بمكواة لحام على الشاشة:


نقوم بتوصيل الألواح باستخدام شريط مزدوج الوجهين:


نقوم بلحام شاشة Digispark Attiny و Oled معًا وفقًا للمخطط (قد تختلف ألوان الأسلاك ، والشيء الرئيسي هو عدم العبث بالاستنتاجات):


للراحة والنظام نجمع كل الأسلاك معا. يمكنك لفها بشريط كهربائي حتى لا تخلط بينها:


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


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


عند اللصق ، انتبه إلى أن الشاشة حتى:


الخطوة 3 الطاقة.
من أجل القوة ، سنستخدم عنصرين Li-ion. اكتب 18650. يمكنك شراؤها بشكل منفصل. في هذه الحالة ، قم بلحامها بالتوازي وعزل وإخراج الموصل للاتصال والشحن اللاحق:


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


الشيء الرئيسي هو أنه Li-ion. نقوم بتفكيكها بعناية ، تحتاج إلى فتح العلبة البلاستيكية ، حتى لا تتلف العنصر بالداخل. في معظم الأحيان ، تنقسم البطارية إلى عنصرين متصلين بالتوازي. نخرجها ونفصل زوجًا واحدًا عن الباقي:


من الأفضل اللحام على منصات الاتصال:


الصق هذا الزوج في الجزء الخلفي من الساعة:


الخطوة 4 تحديد شحن البطارية.
وظيفة ملائمة للساعة تشير إلى شحن البطارية. سنحدد درجة الشحن بالجهد. الحد الأدنى للجهد لهذه البطاريات هو 2.4 فولت. الجهد الأقصى 4.2 فولت.

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



أو استخدم

R1 تأخذ قيمة اسمية قدرها 10 كيلو أوم. ثم R2 نحصل على 3.55 KOhm ، وهو الأقرب المناسب من القيم القياسية 3.3 KOhm ، ونأخذها. يتم إجراء القياسات بين الجهد الداخلي و GND ، لذلك يتم لحام المقاوم 3.3 KΩ إلى الطرح ، و 10 KΩ إلى زائد. نضع المقاومات على البطارية ، نسحب السلك من الفاصل.


نقوم بعزل جميع جهات الاتصال لتجنب حدوث ماس كهربائي:


سيتم توصيل السلك من المقسم بـ PB4.

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


لحام الأسلاك الصغيرة ، وربط الموصلات


السلك من مستشعر DQ متصل بـ PB 3.

زر الخطوة 6.
لدينا القليل من الاستنتاجات ، ولكن هناك العديد من المتطلبات للساعات. سنستخدم زرًا واحدًا لضبط الوقت. لا يمكننا الاعتماد على المزيد. لحام الأسلاك إلى الزر ، جهة اتصال واحدة منه إلى GND. دمج مع مستشعر درجة الحرارة لدينا:


جهة الاتصال الثانية من الزر متصلة بـ PB 1.

الخطوة 7 إعداد بيئة التطوير
لمزيد من العمل مع الرسم ، وكذلك تحريره وملئه ، نحتاج إلى Arduino IDE. قم بتنزيل هذا البرنامج من:

أضف الآن الدعم لـ Attiny 85 يوم الأربعاء. افتح Arduion IDE وتابع السير على المسار:
ملف - إعدادات - إدراج "عناوين URL إضافية لمدير اللوحات" الرابط:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


انقر فوق OK.
انتقل إلى:
أدوات - مجلس - مدير المجالس يدخل Attiny وانقر على "attiny by David A. Mellis". انقر فوق "تثبيت" واترك القهوة.
والآن عن المكتبات. يحتاجون إلى اثنين:

للعمل مع شاشة Oled

التحكم بمستشعر درجة الحرارة

بعد تنزيل هذه الأرشيفات ، قم بتفريغها في مجلد "المكتبات" ، الذي يسهل العثور عليه من خلال الذهاب في مسار التثبيت لـ Arduino IDE.

مبرمج الخطوة 8.
Digispark Attiny 85 لوحة رائعة. مصممة للاتصال بجهاز كمبيوتر USB. ويمكن برمجته من خلاله. لكن Attiny يستخدم برنامج USB ، والذي بدوره يستهلك 2 كيلوبايت من 8 كيلوبايت من الذاكرة. هذا لا يناسبنا ، وبالتالي سنومض Attiny 85 من خلال واجهة ISP. وهنا نحتاج إلى مبرمج ISP. إذا لم يكن هناك - لا يهم. خذ اردوينو. في حالتي ، اردوينو UNO:


يمكنك أن تأخذ أي لوحة متوافقة أخرى من خط Arduino. نقوم بالاتصال بالكمبيوتر ، وفتح Arduino IDE ، وتحديد منفذ com الذي تتصل به لوحة Arduino ، وفتح الرسم في الأمثلة ، Arduino ISP وملئه في اللوحة. نحتاج أيضًا إلى سلك للاتصال بسرعة بـ Attiny.


الاتصال كما يلي:

D11 - P0
D12 - P1
D13 - P2
D10 - P5

لا تنسى عناية التغذية.

الخطوة 9 قم بتحرير الرسم وملءه.

تنزيل رسم

قبل الملء ، تحتاج إلى تعديل الرسم.
يعمل المستشعر المتكامل ds18b20 ، كما ذكرنا سابقًا ، باستخدام بروتوكول One Wire. يحتوي كل مستشعر على عنوان 64 بت الفريد الخاص به. تحتاج إلى العثور على عنوان المستشعر الخاص بك وكتابته في رسم تخطيطي. افتح Arduino IDE ، واتبع المسار:
ملف - أمثلة - درجة حرارة دالاس - OneWireSearch.

املأ الرسم في Arduino. افتح شاشة المنفذ. يجب أن ترى عناوين جميع أجهزة الاستشعار المتصلة وقراءات درجة الحرارة الخاصة بها. نكتب عنوانك. افتح الرسم الخاص بي وقم بتغيير العنوان إلى عنوانك الخاص في السطر:

بايت addr [8] = {0x28، 0xFF، 0x75، 0x4E، 0x87، 0x16، 0x5، 0x63} ؛


لضبط تقدم الساعة ، استخدم الثابت التالي:

if (micros () - prevmicros & gt؛ [b] 497000 [/ b]) 


كلما كانت هذه القيمة أكبر ، كانت الساعة أبطأ.
للتحكم ، يتم عرض الثواني على الشاشة:

OzOled.printNumber ((long) sek، 0، 7)؛ // ثواني إخراج لضبط دقيق 


علق على هذا الخط لإزالة الثواني.
الآن نقوم بتوصيل المبرمج أو Arduino كمبرمج ، حدد com-port ، حدد لوحنا في قائمة Tools واضبط المعلمات التالية:
المجلس: Attiny 25/45/85
المعالج: Attiny 85
الساعة: داخلي 16
ثم اختر في نفس القائمة:
أدوات - مبرمج - "Arduino as ISP".
وأخيرًا:
رسم - تحميل عبر المبرمج

الخطوة 10 التجميع النهائي والإطلاق.
أوقف تشغيل المبرمج وقم بتوصيل المستشعر والطاقة والزر:


حتى يتم تكوين المسار الصحيح للساعة ، يمكنك إغلاق العلبة باستخدام مطاط البنك. عند الانتهاء ، يمكنك لصقها.


تقييم المشاهدة
مجموع الأصوات: 13
10
10
10

أضف تعليقًا

    • ابتسميبتسمxaxaحسنًالا أعرفياهونيا
      رئيسهالصفرأحمقنعمنعم نعمعدوانيسر
      آسفارقصرقص 2رقص 3العفومساعدةالمشروبات
      توقفالأصدقاءجيدجيدصفارة الحكمإغماءلسان
      دخانالتصفيقصرخةيعلنمشتقعدم الإشارةتنزيل
      الحرارةغاضبتضحك 1mdaاجتماعالمسكسلبي
      not_iالفشارمعاقبةاقرأتخويفيخيفبحث
      ساخرشكرا لكهذاtoclclumnikحادتوافق
      سيءالنحلblack_eyeblum3استحىتباهىالملل
      للرقابةإرضاءسر 2تهددانتصاريونظارة شمس
      صدمةتنفسههههساداهلا وسهلاكروتويya_za
      ya_dobryiالمساعدne_huliganne_othodiحمىحظرقريب
9 التعليقات
المؤلف
الفكرة رائعة. لقد فعلت شيئا حيال ذلك. فقط عند أطراف أصابعي كان متغير 5 kΩ. أدرجته في الكتف السفلي. ثم يحل محلها الأنسب الدائم. ولكن في تعليمات التصنيع ، أعتقد أن كتابتها غير ضرورية. لماذا لا تقوم بهذه القياسات عدة مرات.
لم أر حاجة للكتابة عن المحاكمات المملة والطويلة.
لا حاجة لفعل أي شيء طويل وممل. قم بتشغيل المقاوم (2.7 ... 3) kOhm في الذراع السفلي ، بالتسلسل معه 1 kOhm الانتهازي. من مصدر طاقة قابل للتعديل ، تقوم بإدخال القيم القصوى للجهد المتحكم فيه إلى الإدخال ، وتعديل نقطة التشغيل ، ثم ، إذا رغبت في ذلك ، يمكنك قياس مقاومة أداة التشذيب واستبدالها بمقاوم ثابت.
المؤلف
بتردد 8 ميجا هرتز ، لم أحاول بدء الساعة وقياس دقة الدورة وفقًا لذلك. تم عمل جميع القياسات عند 16 من الداخل. لا استطيع ان اقول عن الشهر ايضا. حتى الآن ، دون إغلاق ، عملوا بحد أقصى أسبوع. التجارب والتحسينات لا تزال في العملية.
المؤلف
فيما يتعلق بمقسم الجهد ، هناك بالفعل الكثير من الفروق الدقيقة والأخطاء. وتناثر مقاومة المقاومات وتناثر الجهد المرجعي. حاولت كل شيء في الممارسة العملية. عند استخدام المقاوم 3.6 كيلو أوم ، حتى مع جهد البطارية 3.9 فولت ، يُظهر المنفذ التناظري Attiny 1023 (عند التحويل إلى 100٪ في المائة). عند استخدام المقاوم 3.3 كيلو أوم ، تنخفض قيمة المنفذ التناظري حتى عند 4.1 فولت على البطارية. لذلك ، كتبت أنه تم الحصول على الشهادة بشكل أكثر دقة ، لم أرَ حاجة للكتابة عن المحاكمات الطويلة والمملة.
المؤلف
أضبط الساعة لمدة أسبوع ، وقمت بتعديل تقدمها كل يوم أو أكثر. ونتيجة لذلك ، بقيمة 497343 ، يندفعون لحوالي 10 ثوانٍ في الأسبوع.
يمكن تقليل التردد. لم أغير المعلمة ، لم يكن هناك حاجة
حسنًا ، وما هي دقة ساعة RC-8 ميجاهرتز؟ شهريا؟
ولماذا الساعة: داخلي 16؟
من الأفضل اختيار أقل ، ثم تكون القراءات أكثر دقة.
ليس بشكل أكثر دقة ، ولكن ببساطة يجب أن يكون جهد الدخل أقل من المرجع. بالإضافة إلى ذلك ، في تفكيرك ، لا تأخذ في الاعتبار على الإطلاق انتشار المعلمات: المقاومات ، على الأرجح ، سيكون لديك خمسة بالمائة ، Vbg = (1.0 ... 1.2) V. لذا قد يتبين أن 3.3 كيلو أوم كبيرة جدًا ، وربما ستفعل 3.6 كيلو أوم.
المؤلف
إذا كنت تستخدم 3.6 جهد الخرج نحصل على 1.11. وإن لم يكن الكثير ، ولكن أكثر الجهد المرجعي. عند استخدام 3.3 - 1.04. من الأفضل اختيار أقل ، ثم تكون القراءات أكثر دقة.
وأما أنت على حق ، فأنا لم أنتبه لهذه التفاصيل الصغيرة.
بعد لصق الحالة ، يمكن الوصول إلى مقبس الشحن والأزرار من أسفل الساعة عن طريق قطع الغطاء السفلي أو ببساطة عدم التصاقه.
ثم R2 نحصل على 3.55 KOhm ، الأقرب من القيم القياسية 3.3 KOhm ،
لا على الإطلاق. أقرب E24 في النطاق القياسي هو 3.6 كيلو أوم. وبالمناسبة ، ليس "KOhm ، ولكن" KOhm.
حتى يتم تكوين المسار الصحيح للساعة ، يمكنك إغلاق العلبة باستخدام مطاط البنك. عند الانتهاء ، يمكنك لصقها.
كيف سنقوم بشحن البطارية؟
وكيفية التلاعب بالزر؟

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

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