Mündəricat:

Dişlərinizi Fırçalayın!: 5 addım (şəkillərlə)
Dişlərinizi Fırçalayın!: 5 addım (şəkillərlə)

Video: Dişlərinizi Fırçalayın!: 5 addım (şəkillərlə)

Video: Dişlərinizi Fırçalayın!: 5 addım (şəkillərlə)
Video: Dişlərinizi bu üsullarla ağardın 2024, Noyabr
Anonim
Dişlərini fırçala!
Dişlərini fırçala!
Dişlərini fırçala!
Dişlərini fırçala!
Dişlərini fırçala!
Dişlərini fırçala!

5 yaşlı oğlum dişlərini fırçalayan 5 yaşlı uşaqları sevmir …

Ən böyük maneənin əslində dişlərini fırçalamaq deyil, bunu etmək üçün sərf etdiyi vaxt olduğunu öyrəndim.

Hər bir diş qrupuna sərf etdiyi vaxtı (aşağı sol, aşağı sağ, yuxarı sol, yuxarı sağ, ön) izləmək üçün cib telefonumun geri sayımı ilə bir təcrübə etdim. Bu təcrübədən öyrəndiklərim onun üçün bu işi çox asanlaşdırmasıdır. Bundan sonra əslində bunu istədi və heç bir şikayət etmədən dişlərini fırçaladı!

Düşündüm: özündən istifadə edə biləcəyi kiçik bir geri sayma əsərini düzəldəcəyəm, beləliklə daha müstəqil olur və inşallah dişlərini daha tez və daha diqqətli bir şəkildə fırçalayır.

Bilirəm ki, bunu edən digər DIY layihələri və kommersiya məhsulları var, amma bir az fikirləşmək və öz dizaynımı yaratmaq istəyirdim.

Budur dizaynım üçün kriteriyalar:

  • Mümkün qədər yığcam
  • 2 rəqəmli rəqəmləri və işarələri göstərin
  • Hər diş qrupunun başında bir səs çıxarın
  • Şarj edilə bilər
  • İstifadəsi mümkün qədər sadədir

Bu Ible -də sizə necə dizayn etdiyimi və yaratdığımı göstərəcəyəm.

Zövq alın!

Təchizat

  • 1 x Arduino pro mini
  • 2 x 7 seqmentli ekran
  • 1 x düymə
  • 1 x avtotransformator
  • 1 x piezo siqnalı
  • 2 x 470Ω rezistorlar
  • 1 x li-ion şarj cihazı/gücləndirici modulu
  • 1 x 17360 li-ion batareya (şəkildə 18650-ni və tutucusunu görəcəksiniz, amma daha yığcam etmək üçün sonradan fikrimi dəyişdim)
  • perfboard
  • bəzi tellər
  • bir neçə tərəfli köpük lent
  • bir korpus (taxtadan düzəltdim, 3D çap edilə bilər)
  • 4 x rezin ayaq
  • bir az CI yapışqan

Addım 1: Komponentləri lehimləyin

Komponentləri lehimləyin
Komponentləri lehimləyin
Komponentləri lehimləyin
Komponentləri lehimləyin
Komponentləri lehimləyin
Komponentləri lehimləyin

Daha əvvəl Arduino Uno və protoboard ilə bir anlayış sübutu yaratmışdım ki, kodu yazım və hansı komponentlərdən istifadə edəcəyimə qərar verim. Prosesin o hissəsini paylaşmayacağam, çünki çox darıxdırıcıdır və bu kitaba çox şey gətirməyəcək.

Sxemalar

Sxemalar Tinkercad-da mövcuddur: https://www.tinkercad.com/things/77jwLqAcCNo-migh… bəzi komponentlər kitabxanada olmadığından və kodun xüsusi bir kitabxanaya ehtiyacı olduğu üçün işləmədiyi üçün tam deyil.. Buna baxmayaraq, sadə sxemlərin arxasındakı ümumi fikri olduqca dəqiq şəkildə göstərir.

Aşağıdakı təsvirlərdə hansı pinin qəsdən nəyə bağlı olduğunu heç vaxt bildirmirəm. Məncə pin təyinatı komponentlərinizi necə düzəltməyinizdən asılı olacaq. Növbəti addımda, Arduino kodunu düzəldərək pin təyinini harada quracağınızı asanlıqla tapa bilərsiniz

Layout

Əvvəlcə Arduinonun mövqeyinə aid 7 seqment rəqəminin olmasını istədiyim perfboard -a qoydum. Bu xüsusi bir lövhənin çox lazımlı olduğu ortaya çıxdı: rahat əlaqələri olan bir proto lövhə kimi dizayn edilmiş və iki tərəfli çap olunmuşdur. Segmentləri bir tərəfə, Arduino -nu digər tərəfə qoysam, I/O pinləri ilə uyğunlaşacaq rəqəm pinlərinin çoxuna sahib ola bilərəm və çox yığcam bir plan əldə edirəm!

Öz lövhələrinizi çap etdirmək üçün bir yolunuz varsa, bəlkə də ən yaxşısı özünüz dizayn etməkdir.

Rəqəmlər

İki rəqəmli rəqəmləri və simvolları göstərməyin ən asan yolunun 7 LED seqmentindən istifadə etmək olduğunu öyrəndim.

Arduino ilə əlaqəli 7 seqment rəqəmi necə işləyir

7 seqmentin rəqəmi 10 sancağa malikdir: hər seqment üçün bir, nöqtə/nöqtə üçün bir və ortaq anod/katod üçün iki (sonradan A/K adlanır) üçün (daxildə bir -birinə bağlıdır). Arduino ilə seqmentlər tərəfindən istifadə olunan sancaqlar sayını azaltmaq üçün bütün seqmentlər və nöqtə sancaqları bir -birinə bağlanır və istifadə olunan 8 I/O sancağını birləşdirən bir I/O pininə bağlanır. Sonra, hər seqmentin A/K pinindən biri başqa bir I/O pininə qoşulur. 2 seqmentdə bu 10 G/Ç sancağının istifadəsi (7 seqment + 1 nöqtə + 2 rəqəm x 1 A/K = 10) göstərilir.

O zaman hər rəqəmdə fərqli şeyləri necə göstərə bilər? G/Ç pinlərini idarə edən kitabxana, insan gözünün retinal dayanıqlığından istifadə edir. İstədiyiniz rəqəmin A/K pinini açır, qalan hissələri söndürür, seqmentləri düzgün qurur və sonra öz A/K pinlərindən istifadə edərək digər rəqəmlərlə tez -tez dəyişir. Göz yüksək tezlikdə olduğu üçün göz qırpımını "görməyəcək".

Lehimləmə

Əvvəl rəqəmləri və aralarındakı bağlantıları lehimlədim, sonra Arduinonu digər üzünə lehimlədim. Arduino'yu lehimləməzdən əvvəl bütün rəqəmlərin qarşılıqlı əlaqələrini yerinə yetirməyin vacib olduğunu görəcəksiniz, çünki rəqəmlərin arxasına bir dəfə daxil olmağınızı maneə törədir.

Müvafiq cərəyan məhdudlaşdırıcı müqavimət seçin

Göstəricilərim üçün məlumat cədvəli 8mA irəli cərəyanı və 1.7V irəli bir gərginliyi göstərir. 5V ilə işləyən Arduino olduğundan 8mA -da 5 - 1.7 = 3.3V düşməliyəm. Ohm qanununun tətbiqi: r = 3.3 / 0.008 = 412.5Ω Ən yaxın müqavimətçilərim 330Ω və 470Ω -dir. Təhlükəsiz tərəfdə olmaq üçün ekranın hər bir diodundan cərəyanı məhdudlaşdırmaq üçün 470Ω rezistoru seçdim. Ekranın parlaqlığı bu müqavimətin dəyəri ilə tərs mütənasibdir, buna görə hər rəqəm üçün eyni dəyəri istifadə etmək vacibdir.

Piezo səs siqnalı

Sadəcə bir Arduino ilə necə səs çıxarmaq və eyni zamanda kompakt saxlamaq olar? Tapdığım ən yaxşı yol, məsələn, qapı həyəcan siqnallarında tapa biləcəyiniz incə piezo səs siqnallarından birini istifadə etməkdir.

Bu səs siqnalının səslərini gücləndirmək üçün bir yola ehtiyacımız var, çünki onu birbaşa Arduinoya bağlasaq, ondan bir şey eşitmək çətindir.

  • gərginliyi yüksəldəcək bir avtotransformatorla, piezo nə qədər yüksək olarsa
  • passiv akustik gücləndirici ilə, əsasən gitaraya bənzər bir qutu: məsələn, piezonu kartona yapışdırsanız dərhal daha yüksək səs eşidəcəksiniz.

Eyni qapı siqnalında bir avtotransformator tapıla bilər, ümumiyyətlə 3 sancaqlı kiçik bir silindrdir. Bir pin Arduino G/Ç pininə, biri piezoya gedir və sonuncusu həm Arduino GND, həm də digər piezo telinə bağlıdır. Piezonun nə olduğunu bilmək çətindir, buna görə piezodan ən yüksək səsi eşitməyincə fərqli konfiqurasiyaları sınayın.

Güc

İmtina: Bilirəm ki, birbaşa li-ion hüceyrəyə lehimləmək pis bir fikir ola bilər, əgər bundan razı deyilsinizsə, bunu etməyin.

Kiçik bir li-ion hüceyrəsi ilə dövrə bağlamağı seçdim, bu onu qorumaq, şarj etmək və 5V-ə qədər gərginliyi artırmaq üçün bir modulun istifadəsini nəzərdə tutur (li-ion hüceyrələri ümumiyyətlə 3,6V ətrafında istehsal edir). Bu modulu ucuz bir güc bankından götürdüm və çətin USB-A konnektorunu satmadım.

Modul, hüceyrənin harada bağlanması lazım olduğunu göstərir. USB-A dişi konnektorunun pinoutunu axtararkən moduldan 5VCC tellərini arduino GND və VCC pinlərinə bağlaya bilərdim. Arduino-nu 5V-dən çox gücləndirməyə qərar verdinizsə, onu RAW pin vasitəsilə qidalandırmaq istəyəcəksiniz, belə ki, on-board gərginlik tənzimləyicisinin ATMega tərəfindən tələb olunan 5V-ə endirməsinə icazə verə bilərsiniz.

Şarj edilə bilən bir enerji mənbəyi olduğu üçün boşaldığını bilmək üçün bir yola ehtiyacım var idi. Bunun üçün hüceyrənin müsbət ucunu Arduinonun analoq pininə bağladım. Quraşdırma ardıcıllığı zamanı bu gərginliyi oxuyacağam və şarj səviyyəsini qiymətləndirmək üçün onu oxunaqlı bir şəkildə çevirəcəyəm. Li-ion tutumu düsturu haqqında bir fikir yazdım. Daha sonra bunu necə göstərəcəyimi izah edəcəyəm.

Düymə

Geri saymağa başlamaq üçün bir yola ehtiyacımız var və bunun üçün açma/söndürmə açarı yaxşı olardı. GND və RESET pinləri arasında bağlanan bir anlıq düyməni istifadə etməyi seçdim. Bütün geri sayım dövrünün sonunda, Arduino dərin yuxu vəziyyətinə keçir və ya onu söndürüb yandırmaqla və ya RESET pinini aşağıya endirməklə oyandırıla bilər, bu da əlverişlidir. Bu düymə geri sayımı "açmağa" və istədiyim vaxt sıfırlamağa imkan verir. Başlandığı vaxtın geri sayımını döndərə bilmərəm, amma düşündüyüm qədər də böyük bir şey deyil.

Addım 2: Kodu redaktə edin və yükləyin

Kodu redaktə edin və yükləyin
Kodu redaktə edin və yükləyin

Əlavə edilmiş kodu tapa bilərsiniz. Ya IDE -nin kitabxana menecerindən istifadə edərək quraşdıra və ya https://github.com/DeanIsMe/SevSeg saytından yükləyə biləcəyiniz SevSeg adlı kitabxanadan istifadə edir.

Yükləməzdən əvvəl gətirmək istəyə biləcəyiniz bir neçə dəyişiklik var:

Geri sayma

Hər diş qrupu üçün bir geri sayım göstərilir. Hər qrup üçün 20 saniyə təyin etdim. Aralarında simvol göstərilməsi üçün 5 qrup və bəzi fasilələr var (aşağıya baxın), buna görə diş fırçalamağa sərf olunan ümumi vaxt təxminən 2 dəqiqə olmalıdır. Eşitdiyimə görə bu tövsiyə olunan vaxtdır.

Taymeri dəyişdirmək istəyirsinizsə, 14 -cü sətirə baxın.

Tapşırıqları bağlayın

  • ümumi katodlu ekranlardan istifadə edirsinizsə, 84-cü sətri "COMMON_CATHODE" olaraq dəyişdirin
  • seqment sancaqları üçün 82 nömrəli xətti dəyişdirin (hazırda 4 -dən 11 -ə təyin olunur)
  • A/K sancaqları üçün 80 xəttini dəyişdirin (hazırda 2 və 3 olaraq təyin olunur)
  • gərginlik sensoru üçün pin xəttini 23 dəyişdirin (hazırda A0 olaraq təyin olunur)
  • səs siqnalı üçün pin xəttini 19 dəyişdirin (hazırda 12 -ə qoyulmuşdur)

Səslər

Bəzi musiqi notlarını 36 -dan 41 -ə qədər təxmini tezliyi ilə təyin etdim, fərqli tonlarda oynamaq istədiyinizi hiss edirsinizsə, bu siyahıya daha çox əlavə edə bilərsiniz.

2 fərqli ton ödəyir:

  • hər diş qrupunun başında 206 -cı sətirdə bir növ cırıltı
  • ən sonunda "ziyafət" tonu (bir növ mükafat), 201 -ci sətir

Bu tonları dəyişə bilərsiniz, siyahılar musiqi notunun alternativini və notun müddətini ehtiva edir, yaradıcı olun!

Animasiya

Hər diş qrupunun başında sözügedən qrupu simvolizə edən bir ekran var. Beş qrup simvolu 71 -dən 74 -ə qədər sətirdən təyin olunur. İstəsəniz bunu düzəldə bilərsiniz.

Ardıcıllığın sonunda bu simvollar bir növ animasiya yaratmaq üçün bir -birini əvəz edir.

Batareya səviyyəsinin göstəricisi

Ardıcıllığın başlanğıcında, batareya səviyyəsi 3 saniyə ərzində "bar" ekranı olaraq göstərilir. Hər rəqəm üç üfüqi çubuğu göstərə bilər. 6 çubuğun hamısı göründüyü zaman batareyanın dolu olduğunu göstərir. Batareya səviyyəsi azaldıqca çubuqlar yuxarıdan aşağıya və soldan sağa yanmır. Bunu dəyişdirə və istəsəniz, qalan enerji faizini təmsil edən bir rəqəm göstərə bilərsiniz, kod 100 sətirindədir.

Addım 3: Bir Kassa yaradın

Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın
Bir Qapaq yaradın

Əlavə etdiyim Sketchup modelini tapa bilərsiniz.

Ehtimal ki, ehtiyaclarınıza uyğun olmayacaq, çünki bu, kompaktlığınızdan və dövrənizin/komponentlərinizin ölçüsündən çox asılıdır. Lazım olduğu kimi düzəldin:)

Məncə 3/16 "ağcaqayın kontrplak və düymə qapağı üçün 1/2" yuvarlaq dübel istifadə etdim.

Piezo buzzerin bağlandığı qutunun arxasına oyulmuş bir iş görürsən, burada passiv akustik gücləndirməni həyata keçirirəm.

Addım 4: Komponentləri Kassaya yerləşdirin

Komponentləri Kassaya yerləşdirin
Komponentləri Kassaya yerləşdirin
Komponentləri Kassaya yerləşdirin
Komponentləri Kassaya yerləşdirin
Komponentləri Kassaya yerləşdirin
Komponentləri Kassaya yerləşdirin

Batareyanı, şarj cihazını/gücləndirici modulu və piezo səs siqnalı yerində saxlamaq üçün bir neçə tərəfli köpük lentdən istifadə etdim. Mən də bəzilərini taxta və kontrplak arasındakı boşluq kimi istifadə etdim, əks halda ekran o qədər də gözəl olmayan bir şəkildə çıxacaqdı.

Düyməni CI yapışqanla yapışdırdım, amma onu işə salanda təzyiqə tab gətirmək kifayət deyildi, buna görə də yerində saxlamaq üçün kiçik diametrli dübel istifadə etdim (şəklə baxın).

Piezo buzzerini bağlamadan əvvəl arxa plakaya yapışdırmaq üçün CI yapışqanından da istifadə etdim.

Tövsiyəm: montaj zamanı hər şeyin birdəfəlik işlədiyini yoxlayın, bir neçə dəfə qısa qapanma sahələrini yenidən açıb təcrid etməli oldum!

Dibinə bir az rezin ayaq əlavə edin, peşəkar bir görünüş verir;)

Addım 5: Nəticə

Nəticə
Nəticə
Nəticə
Nəticə

Rəqəmlərin tərsinə çevrildiyini görə bilərsiniz, bu, komponentlərin yerləşdirilməsindən bəri etdiyim bir səhvdir. Pin tapşırığını hərəkət etdirərək bu problemi həll etdim, nöqtə/dövrdən istifadə etmədiyim üçün heç bir problem yoxdur.

Hər halda, bu layihə etmək həqiqətən əyləncəli idi və uşağım bunu sevir!

Şərh və təkliflərinizi yazmaqdan çəkinməyin!

Oxuduğunuz üçün təşəkkürlər.

Tövsiyə: