Мазмуну:

Offline аба ырайы станциясы Arduino: 18 кадам (сүрөттөр менен)
Offline аба ырайы станциясы Arduino: 18 кадам (сүрөттөр менен)

Video: Offline аба ырайы станциясы Arduino: 18 кадам (сүрөттөр менен)

Video: Offline аба ырайы станциясы Arduino: 18 кадам (сүрөттөр менен)
Video: Самые жуткие страшилки января 2024 года 2024, Июль
Anonim
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino
Offline аба ырайы бекети Arduino

Жыйынтык

Акыркы жолу мен термометр сатып алганда, маанилерде дээрлик дайыма айырма бар экенин көрдүм. Менин милдетим - баланын бөлмөсүндөгү температураны жана нымдуулукту сактоо. Ошондой эле көпчүлүк термометрлерде 2-3 метр диапазондогу маанилерди окуу көйгөйү пайда болду жана мен температуранын маанисин көрүү үчүн туруп кетишим керек болчу, менде эң термометрдеги көйгөй жарык болчу. Башка көйгөй - мен температураны көрө албайм, анткени ал энергияны үнөмдөө үчүн арткы жарыксыз. Мен энергияны үнөмдөөнү каалабайм, эгерде негизги энергия линиясы өчүп калса, бул аппарат иштеши үчүн бир нече саат энергия сактоо керек.

Ошентип, мен бир идея менен келдим:

- Температуранын маанисин өзгөртүү үчүн термометрди түзүү.

- Арткы жарык жана түстөр менен болушу мүмкүн.- Кадимки термометрдеги бардык нерселерди бириктирүү үчүн: (RTC, Battery, Min Max t, ж.б.)- Жана мезгилдер жана майрамдар сыяктуу кошумча мүмкүнчүлүктөргө ээ болуу

Ошентип, мен бул долбоорду 1 жылга чейин баштадым. Программалык бөлүктү бүтүрүү үчүн мага бир нече ай керек болду. Мен программалык камсыздоонун бир нече версиясын түздүм жана акыркы 2 жумада мен долбоорду аяктадым.

Программалык камсыздоо маалыматы

Arduino коду жана китепканалары:

Код ошондой эле Code кадамына жүктөлөт.

https://github.com/stlevkov/KT2_144

https://github.com/stlevkov/Arduino-Libraries

Түзмөктүн өзгөчөлүктөрү

  • Жүктөө барагы - акыркы камтылган жүктөө күнүн жана убактысын көрсөтүү.
  • Негизги бет - убакыт, күн, батарея сүрөтчөсү, температура сүрөтчөсү, температура мааниси, нымдуулук мааниси, Tmax, Tmin, мезгилдер, майрамдар, USB индикатору сайылып турганда.
  • Меню барагы - Temp, Clock, Battery, About, Back менюлары менен
  • Temp Page - DHT сенсорун калибрлөөгө мүмкүндүк берет
  • Саат барагы - Убакытты жана Күндү түзөтүүгө мүмкүндүк берет
  • Батарея барагы - Батарея маалыматын, % пайызын, мВ чыңалуусун, Заряддоо абалын көрсөтүү
  • Барак жөнүндө - автор үчүн маалыматты көрсөтүү
  • Менюдан чыгуу үчүн Артка функциясы
  • Ачык панелдер
  • RTC узак өмүр
  • Литий батареясы - ~ 9 саатка чейин (450мАч)
  • Батарея көрсөткүчү төмөн - сөлөкөттү кызыл түстө көрсөтүү ~ калган 5 мүн.
  • Ар кандай түстөр - төмөн, орто, жогорку температура
  • Майрамдар жана мезгилдер боюнча билдирүүлөр
  • Программалануучу розетка - арт жагында
  • Колдонуучу интерфейси - Rotary Encoder колдонуу

Тактайдын арткы бети жабылбайт, анткени мен бала тактанын көрүшүн жана тийишин каалайм, ал эми аппарат күйгүзүлгөн эмес. Сиз тактанын арткы бетине кандайдыр бир капкакты түзө аласыз.

1 -кадам: Түзмөктүн эскизин, Инит идеясын тартыңыз

Түзмөктүн эскизин, Инит идеясын тартыңыз
Түзмөктүн эскизин, Инит идеясын тартыңыз
Түзмөктүн эскизин, Инит идеясын тартыңыз
Түзмөктүн эскизин, Инит идеясын тартыңыз
Түзмөктүн эскизин, Инит идеясын тартыңыз
Түзмөктүн эскизин, Инит идеясын тартыңыз

Эмнеге ээ болууну чечиңиз - канча барак, меню, меню менен барактарды кантип өзгөртүү керек.

Эгерде сизде башка идеялар болсо, анда аны arduino коду менен өзгөртө аласыз.

Каалаган формаңызды жана оңой жасала турган нерсени чечиңиз. Мен алгач 3D басып чыгарууну тандап алам, бирок андан кийин жөнөкөй материалды колдонууну чечтим.

Идея үстү жана асты тунук дубалдарга ээ болуу, ошондой эле сиз дагы жакшы кутучаны түзө аласыз.

Ошентип, кутунун негизги бөлүктөрү:

  1. Front - Дисплей жана Ротари Encoder менен
  2. Оңдо - RTC модулу менен
  3. Сол - DHT модулу менен
  4. Артка - тактайдын карама -каршы тарабы менен
  5. Top - 3.7V Батареясы жана ON/OFF Слайд которгучу менен тунук
  6. Төмөн - Тунук

2 -кадам: Туура компоненттерди тандоо

  1. TP4056 Micro USB Заряддагыч 5V 1A 18650 Литий Батареясынын Кубаттоочу Тасы - Ebay
  2. 1.44 "128x128 SPI Full Color 65K TFT LCD дисплей модулу ST7735 - Ebay
  3. Arduino үчүн KY -040 Rotary Encoder Module - Ebay
  4. DHT22 AM2302 Санарип температурасы жана нымдуулук сенсору - Ebay
  5. Tiny RTC I2C Modules 24C32 Memory DS1307 Real Time Clock RTC Module Board - Ebay
  6. Pro Micro Controller Board ATmega328P 16MHz Arduino Pro Mini Module - Ebay
  7. 3.7V 450mAh кайра заряддалуучу батарея - Ebay
  8. 6 казык 2 позиция DPDT On/On Mini Slide Switch - Ebay

  9. CR2032 CR 2032 3V Button Cell Монета Батареясы - Ebay
  10. 10x22cm Soldering Prototype Copper PCB Board Single Side Universal - Ebay
  11. Эркек жана Аял 40pin 2.54mm Header Socket Single Row Strip - Ebay

3 -кадам: Кабелдик диаграмманы даярдаңыз

Кабелдик диаграмманы даярдаңыз
Кабелдик диаграмманы даярдаңыз

Диаграмма окшош сенсорлордун байланышын көрсөтөт, ал эми Дисплей дээрлик бирдей.

Тиешелүү пин колдонуу үчүн, Code кадамындагы Arduino кодун караңыз.

Pinout жөнүндө кененирээк маалымат алуу үчүн фризинг файлын жүктөп алыңыз. Модулдардын так төөнөгүчтөрүн көрүү үчүн диаграммадан пункттарды алып келиңиз.

4 -кадам: Баштоо алдында кошумча маалымат - Электр энергиясын керектөө

Башталардан мурун кошумча маалымат - энергия керектөө
Башталардан мурун кошумча маалымат - энергия керектөө

Долбоор 450mAh батарейканы колдонот, бирок сиз чоңураак колдоно аласыз. Белгилүү бир сааттарда керектүү батарейканы тандоо жана эсептөө үчүн жөн гана энергия керектөөнү карап көрүңүз. 450mAh колдонгондо, түзмөк болжол менен иштей алат. 9 саат.

Бош турганда түзмөк болжол менен 0.102А менен иштейт - Бул жерде энергияны үнөмдөөчү оптимизация жок

Кнопка басылганда, жогорку ток колдонулат жана ал 0.177Aдын тегерегинде болот.

5 -кадам: Дисплейди туташтыруу

Дисплейди туташтыруу
Дисплейди туташтыруу
Дисплейди туташтыруу
Дисплейди туташтыруу

Дисплей туташуу үчүн SPI колдонот.

Бул айдоочу ST7735 үчүн adafruit китепканасы бар.

6 -кадам: RTC модулун туташтыруу

RTC модулун туташтыруу
RTC модулун туташтыруу

CR2032 Батареясын колдонуу үчүн PCB өзгөртүүсүн түзүңүз.

  • D1ди алып салуу
  • R4 алып салуу
  • R5ти алып салуу
  • R6 алып салуу
  • Кыска R6

Бул өзгөртүү жөнүндө көбүрөөк маалымат бул жерде.

7 -кадам: Дисплей, РТК, Батарея, Ротари Encoder менен алдыңкы дубалды тиркеңиз

Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз
Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз
Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз
Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз
Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз
Дисплей, RTC, Батарея, Ротари Энкодер менен Алдыңкы Дубалды Таптаңыз

Эгерде сиз түзмөктү жүктөөнү кааласаңыз, жөн эле Code кадамынан кодду жүктөп бериңиз жана жаңы бөлүктөрдү алмаштырып, тиркеп жатканда башка кадамдарды аткарыңыз.

8 -кадам: Тунук дубалдарды даярдоо

Ачык дубалдарды даярдоо
Ачык дубалдарды даярдоо

Мен 3мм плекси колдоном. Сиз ушундай тунук материалды колдоно аласыз. Мен астынкы жагына бирөөнү гана колдоном.

9 -кадам: Оң дубалды түзүү

Оң дубал түзүү
Оң дубал түзүү
Оң дубал түзүү
Оң дубал түзүү

Оң каптал дубалды түзүү. Тешик үчүн CR2032 өлчөмүн колдонуңуз.

10 -кадам: Сол жактагы дубалды түзүү

Сол жактагы дубалды түзүү
Сол жактагы дубалды түзүү
Сол жактагы дубалды түзүү
Сол жактагы дубалды түзүү
Сол жактагы дубалды түзүү
Сол жактагы дубалды түзүү

Сол каптал дубалды жасаңыз. Тешик үчүн DHT модулунун өлчөмүн колдонуңуз.

11 -кадам: Универсалдуу такта жана темир жолдор менен розетканы түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз

Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз
Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз
Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз
Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз
Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз
Универсалдуу такта жана темир жолдор менен сокетти түзүңүз, RTC, Encoder, Display жана Displayди туташтырыңыз

Зымдын диаграммасына ылайык бардык казыктарды туташтырыңыз жана ширетиңиз. Сиз Arduino Mini программасын орнотуу үчүн бош эскиз менен Arduino UNO колдоно аласыз. Керектүү казыктар:

  • VCC 5V
  • GND
  • RX
  • TX
  • КАЛПЫНА КЕЛТИРҮҮ

Эгерде сиз эскизди тетиктери менен бүтүрүүдөн мурун жүктөсөңүз, анда 3.7V батарейкасын өчүрүүнү унутпаңыз.

12 -кадам: Улантуудан мурун аны күйгүзүңүз

Image
Image

Бул жерде сиз түзмөктү күйгүзүп, бардык функцияларды колдоно аласыз.

1.1 версиясында программалык камсыздоо кандай болгонун көрүү үчүн Видеону алдын ала көрүүнү колдонуңуз. Ошондой эле акыркы жаңыртууну көрүү үчүн кыскача кадамда github шилтемеси бар.

Үстүн капкагын жабуудан мурун башка кадамдарды улантуудан мурун түзмөктү күйгүзүңүз, ал кадимкидей иштээрин текшериңиз.

13 -кадам: TP4056 жана Батарейканы кошуңуз, Слайд которуштургучун кошуңуз, Пин 5ке кубаттоочу зымды кошуңуз, Артка программалоочу сокетти кошуңуз

TP4056 менен Батареяны кошуңуз, Слайд которуштургучун кошуңуз, Пин 5ке кубаттоочу зымды кошуңуз, Артка программалоочу сокетти кошуңуз
TP4056 менен Батареяны кошуңуз, Слайд которуштургучун кошуңуз, Пин 5ке кубаттоочу зымды кошуңуз, Артка программалоочу сокетти кошуңуз
TP4056 жана Батареяны кошуңуз, Слайд которуштургучту, 5 -Пинге Заряддоо Зымын кошуңуз, Артка программалоочу сокетти кошуңуз
TP4056 жана Батареяны кошуңуз, Слайд которуштургучту, 5 -Пинге Заряддоо Зымын кошуңуз, Артка программалоочу сокетти кошуңуз
TP4056 менен Батареяны кошуңуз, Слайд которуштургучун, 5 -Пинге Заряддоо Зымын кошуңуз, Артка программалоочу сокетти кошуңуз
TP4056 менен Батареяны кошуңуз, Слайд которуштургучун, 5 -Пинге Заряддоо Зымын кошуңуз, Артка программалоочу сокетти кошуңуз

Ар бир ширетүүдөн кийин, системаны текшериңиз, улантуудан мурун тетиктери жакшы иштеп жатканын текшериңиз.

14 -кадам: Жогорку мукабаны түзүңүз

Жогорку мукабаны түзүү
Жогорку мукабаны түзүү
Жогорку мукабаны түзүү
Жогорку мукабаны түзүү
Жогорку мукабаны түзүү
Жогорку мукабаны түзүү

Мен кубат банкынын кутусунан 0,5 мм плекси баракты колдоном.

15 -кадам: Код

Тандоолорду аныктоо үчүн init бөлүмүндөгү параметрлерди колдонуңуз.

Майрамдарда мен болгар тилин колдоном. Сиз массивди өлкөңүздөгү майрамдарды колдонуу менен түзөтө аласыз.

Түзмөк 4 мезгилди көрсөтүп жатат, аларды жайгашкан жериңизге ылайыктуу коддо түзөтүңүз.

Эгерде сенсорлоруңуз башка болсо, пиндердин аныктамаларын ээрчип, аларды коддо түзөтүңүз. Мен кодду жакшыраак түшүнүү үчүн дээрлик бардык саптарга комментарий калтырдым.

Сыналган платформалар:

  • Arduino UNO
  • Arduino Pro Mini

Репозиторийден керектүү китепканаларды алыңыз, эскизде аныкталгандарды колдонуңуз.

16 -кадам: Акыркы Тийиштер алдында түзмөктү сыноо

Түзмөктү акыркы тийүүгө чейин сынап көрүңүз
Түзмөктү акыркы тийүүгө чейин сынап көрүңүз
Түзмөктү акыркы тийүүгө чейин сынап көрүңүз
Түзмөктү акыркы тийүүгө чейин сынап көрүңүз
Түзмөктү акыркы тийүүгө чейин сынап көрүңүз
Түзмөктү акыркы тийүүгө чейин сынап көрүңүз

Түзмөк идеалдуу, меники -4*C калибрленген, мен аны калибрлөө үчүн Toshiba кондиционеримди, 2 жөнөкөй дубалдуу термометрди жана эки санарип термометрди колдондум. Эгерде сенсор башка баалуулуктарды өлчөсө, эми аны өзгөртө аласыз.

17 -кадам: Interface Preview

Interface Preview
Interface Preview
Interface Preview
Interface Preview
Interface Preview
Interface Preview

Ишеним грамотаңызды көрсөтүү үчүн коддун баштапкы бөлүмүндөгү Программалык камсыздоо маалыматын түзөтүүнү унутпаңыз же аны ошол бойдон калтырыңыз.

Сунушталууда: