Які робіцца чароўны шар на аснове Arduino Pro Mini

Я глядзеў нейкі фільм, у аднаго з герояў якога быў чароўны шар, які адказвае на пытанні. Мне тады падумалася, што нядрэнна было б зрабіць такі ж, але лічбавы. Я пакорпаўся ў сваіх запасах электронных кампанентаў і паглядзеў, ці ёсць у мяне тое, што трэба для зборкі такога шара. У дні пандэміі мне не хацелася заказваць нешта без скрайняй патрэбы. У выніку я выявіў трехосевой акселерометр, дысплей для Nokia 5110, поплатак Arduino Pro Mini і яшчэ сякія-такія дробязі. Гэтага мне павінна было хапіць і я ўзяўся за працу.

Які робіцца чароўны шар на аснове Arduino Pro Mini

Апаратная частка праекта

Вось спіс кампанентаў, з якіх складаецца мой праект:

  • Плата Arduino Pro Mini.
  • Раз'ём GX-12 (відэлец).
  • Трохасевы акселерометр MMA7660.
  • Дысплей PCD8544 для Nokia 5110/3310.
  • Зарадная прылада для літый-палімерных акумулятараў TP4056.
  • Канвэртар DD0505MD.
  • Літый-палімерны акумулятар тыпаразмеру 14500.

экран

Экран, які я вырашыў выкарыстоўваць у гэтым праекце, захоўваецца ў мяне ўжо даўно. Калі я яго выявіў, я тут жа задаўся пытаннем аб тым, чаму я да гэтага часу яго нідзе не выкарыстоўваў. Я знайшоў бібліятэку для працы з ім, падключыў да яго харчаванне. Пасля гэтага я адразу ж знайшоў адказ на сваё пытанне. Справа была ў яго кантраснасці і ў тым, што для яго працы патрэбны дадатковыя кампаненты. Я знайшоў гэтую бібліятэку для працы з дысплеем і даведаўся аб тым, што да аналагавага кантакту можна падлучыць потенциометр. Я вырашыў выкарыстоўваць акселерометр для наладкі кантрасту дысплея. У прыватнасці, калі перайсці ў меню налад, то нахіл прылады налева прыводзіць да памяншэння адпаведнага значэння, а нахіл направа - да павелічэння. На прыладу я дадаў кнопку, па націску на якую бягучыя налады кантраснасці захоўваюцца ў EEPROM.

Меню, кіраванае акселерометрам

Мне здалося, што перасоўванне па меню з выкарыстаннем кнопак - гэта занадта сумна. Таму я вырашыў паспрабаваць выкарыстоўваць для працы з меню гіраскоп. Такая схема ўзаемадзеяння з меню аказалася вельмі ўдалай. Так, нахіл прылады налева адчыняе меню налады кантрасту. У выніку ў гэтае меню можна перайсці нават у тым выпадку, калі кантраснасць дысплея моцна адхіліцца ад нормы. Для выбару розных створаных мной прыкладанняў я таксама выкарыстоўваў акселерометр. Вось бібліятэка, якую я прымяняў у гэтым праекце.

Прыкладання

Спачатку я хацеў зрабіць нешта, здольнае гуляць ролю чароўнага шара. Але потым вырашыў, што магу абсталяваць тое, што ў мяне атрымаецца, дадатковымі магчымасцямі, прадстаўленымі рознымі праграмамі. Напрыклад, я напісаў праграму, якая імітуе кідок ігральнай косткі, выпадковым чынам выдаючую лік ад 1 да 6. Яшчэ адна мая праграма ўмела адказваць на зададзеныя ёй пытанні «Так» і «Не». Яна дапамагае прымаць рашэнні ў складаных сітуацыях. У маю прыладу можна дадаць і іншыя прыкладанні.

акумулятар

Праблема маіх праектаў заключаецца ў тым, што я заўсёды выкарыстоўваю ў іх няздымныя літый-палімерныя акумулятары. А потым, калі гэтыя праекты аказваюцца на некаторы час забытымі, з акумулятарамі можа здарыцца што-небудзь нядобрае. У гэты раз я вырашыў паступіць інакш і зрабіць так, каб акумулятар з прылады, пры неабходнасці, можна было б выняць. Ён, напрыклад, можа спатрэбіцца ў якім-небудзь новым праекце. Да таго часу я ўжо спраектаваў корпус для акумулятара, але мне трэба было яго дарабіць, абсталяваўшы дзверцамі. Першыя экземпляры корпуса атрымаліся неапраўдана складанымі і грувасткімі. Таму я яго перапраектаваў. Ён можа спатрэбіцца і ў іншых маіх праектах.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Корпус для акумулятара

Вечка корпуса я першапачаткова жадаў замацаваць з дапамогай магніта, але я вельмі не кахаю выкарыстоўваць усялякія дадатковыя кампаненты тамака, дзе можна абыйсціся без іх. Таму я вырашыў зрабіць вечка на зашчапцы. Тое, што ў мяне атрымалася спачатку, не вельмі добрае падыходзіла для трохмернага друку. Таму я перарабіў вечка. У выніку яе ўдалося добра надрукаваць.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Вечка корпуса для акумулятара

Вынікам я застаўся задаволены, але выкарыстанне ў маіх праектах такога акумулятарнага адсека абмяжоўвае магчымасці па іх праектаванні, бо вечка адсека павінна быць на верхняй частцы прылады. Я паспрабаваў убудаваць акумулятарны адсек у корпус прылады так, каб вечка выходзіла б на бакавую частку корпуса, але нічога добрага з гэтага не выйшла.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Друк корпуса для акумулятара

Які робіцца чароўны шар на аснове Arduino Pro Mini
Вечка акумулятарнага адсека знаходзіцца на верхняй частцы прылады

Рашэнне пытанняў харчавання

Мне не хацелася падключаць да асноўнай платы элементы для арганізацыі харчавання прылады, бо гэта павялічыла б яе памеры і павысіла б кошт праекта. Я падумаў, што ідэальна было б, калі б мне ўдалося ўбудаваць у праект ужо наяўныя ў мяне зараднік TP4056 і канвэртар DD0505MD. Так мне не прыйшлося б марнавацца на дадатковыя кампаненты.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Рашэнне пытанняў харчавання прылады

Я зрабіў гэта. Поплаткі апынуліся там, дзе ім і належыць быць, я злучыў іх, ужыўшы паянне, кароткімі цвёрдымі правадамі, што дазволіла зрабіць атрыманую канструкцыю вельмі кампактнай. Падобную канструкцыю можна ўбудаваць і ў іншыя мае праекты.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Унутраная частка корпуса з месцам пад элементы, якія забяспечваюць прыладу сілкаваннем

Дапрацоўка праекта і наступствы няўдалага размяшчэння кампанентаў у корпусе

У ходзе работы над праектам з ім адбылася адна непрыемнасць. Я, пасля таго, як усё сабраў, выпусціў прыладу на падлогу. Пасля гэтага перастаў працаваць дысплей. Спачатку я падумаў, што справа ў дысплеі. Таму я яго перападлучыў, але гэта нічога не выправіла. Праблема гэтага праекта заключалася ў няўдалым размяшчэнні кампанентаў. А менавіта, я, каб зэканоміць месца, змантаваў дысплей над Arduino. Для таго каб дабрацца да Arduino, мне трэба было отпаять дысплей. Але перапайванне дысплея праблему не вырашыла. У гэтым праекце я выкарыстаў новы поплатак Arduino. У мяне ёсць яшчэ адна такая плата, якую я выкарыстоўваю для эксперыментаў з макетнай платай. Калі я падключыў экран да яе – усё зарабіла. Мне, бо я выкарыстаў павярхоўны мантаж, прыйшлося адлітаваць ад гэтай платы піны. Выцягваючы піны з платы, я задаволіў кароткае замыканне, злучыўшы піны VCC і GND. Адзінае, што мне заставалася - замовіць новую плату. Але на гэта я не меў часу. Тады я вырашыў узяць чып з платы, на якой здарылася замыканне, і пераставіць яго на "мёртвую" плату. Гэтую задачу я вырашыў з дапамогай тэрмапаветранай паяльнай станцыі. Да майго здзіўлення, усё зарабіла. Мне толькі спатрэбілася скарыстацца пінам, які выконвае перазагрузку платы.

Які робіцца чароўны шар на аснове Arduino Pro Mini
Поплатак са знятым чыпам

У звычайных умовах я не пусціўся б у такія крайнасці. Але маёй плаце Arduino была ўсяго тыдзень. Таму я пайшоў на гэты эксперымент. Мабыць, пандэмія зрабіла мяне больш схільным да эксперыментаў і больш вынаходлівым.

Мацаванне для шнурка

Я абсталёўваю свае праекты мацаваннямі для шнуркоў. Бо ніколі загадзя не ведаеш аб тым, калі і дзе будзеш імі карыстацца.

Вынікі


Вось як выглядае праца з які атрымаўся ў мяне чароўным шарам.

Тут можна знайсці файлы для 3D-друку корпуса. Сюды можаце зазірнуць для таго, каб убачыць код.

Ці ўжываеце вы Arduino Pro Mini у сваіх праектах?

Які робіцца чароўны шар на аснове Arduino Pro Mini

Які робіцца чароўны шар на аснове Arduino Pro Mini

Крыніца: habr.com

Дадаць каментар