Talaan ng mga Nilalaman:

Animated Heart: 5 Hakbang (na may Mga Larawan)
Animated Heart: 5 Hakbang (na may Mga Larawan)

Video: Animated Heart: 5 Hakbang (na may Mga Larawan)

Video: Animated Heart: 5 Hakbang (na may Mga Larawan)
Video: Magiging piloto na si Eva ng Voltes V robot? | Voltes V Legacy 2024, Nobyembre
Anonim
Image
Image
Mga Materyales at Tool
Mga Materyales at Tool

Sa oras lamang para sa araw ng Valentine, isang maliit na gadget na ibibigay sa iyong kasintahan: isang puso na umikot sa maraming mga animasyon. Maayos itong umaangkop sa isang desk o mesa upang maalala ka ng iyong mahal!

Ang animated na puso na ito ay napaka-compact at simple: ilipat lamang ito at ang 12 LEDs na bumubuo ng isang puso ay ikot sa pamamagitan ng isang loop ng mga animasyon na maaari mong ganap na ipasadya.

Nagpapatakbo ito ng isang tugma at batay sa isang napaka-pangkaraniwan at murang microcontroller, ang 8-pin ATTINY13, na maaaring madaling mai-program sa isang Arduino Uno. Sa pamamagitan ng espesyal na pamamaraan ng charlieplexing, 12 LEDs ay maaaring indibidwal na makontrol na may 4 na output pin lamang.

Hakbang 1: Mga Materyales at Tool:

Mga Materyales:

  • 12 5mm na pulang LEDs
  • Isang 3x7cm prototype board (10x24 hole, ang makapal na berde na may dalawang panig ang pinakamahusay)
  • Isang Attiny13A microcontroller
  • Isang 8-pin DIP socket
  • Isang mini-switch
  • Isang may hawak ng coin cell
  • Isang CR2032 coin cell
  • 20cm ng kulay na multi-straced hookup wire
  • 15cm ng makapal na solid-core wire

Mga tool:

  • Isang Arduino Uno upang mai-program ang ATTINY
  • Isang bakal na bakal
  • Isang wire clipper

Hakbang 2: Buuin ang Puso

Buuin ang Puso
Buuin ang Puso
Buuin ang Puso
Buuin ang Puso
Buuin ang Puso
Buuin ang Puso

Ang 12 LEDs ay ipinasok sa isang prototype board sa isang hugis-puso na pag-aayos, tulad ng ipinakita sa diagram. Bigyang pansin ang polarity: 6 na LEDs ang may anode pakanan at natira ang cathode, 6 na LED ang naipasok sa kabaligtaran na paraan. Takpan ang mga LED ng cellotape upang maiwasan silang mahulog habang nagtatrabaho kami sa likod na bahagi.

Ang mga lead ng LEDs ay maiugnay sa isang masalimuot na pattern. Bend ang mga pin at putulin ang mga ito sa pagsunod sa diagram. Mag-ingat na ang diagram ay nagpapakita ng front side, habang nagtatrabaho kami sa likod na bahagi, kaya dapat itong magmukhang mirror-image ng diagram, tulad ng ipinakita sa larawan. Ang mga lead ay maaari na ngayong solder na magkasama at alisin ang cellotape.

Subukan na gumagana ito: ang puso ay may apat na mga koneksyon sa kuryente na ipinahiwatig bilang asul, berde, dilaw at puti sa diagram. Ikonekta ang ground sa isang koneksyon at + 5V sa serye gamit ang isang 1kOhm risistor sa isa pa. Ang 1 LED ay dapat na ilaw, at lahat ng 12 LEDs ay dapat na naiilawan sa ganitong paraan.

Hakbang 3: Patakbuhin ang Puso Mula sa isang Arduino

Image
Image
Paglipat sa ATTINY
Paglipat sa ATTINY

I-upload ang naka-attach na sketch sa isang Arduino UNO o Nano at ilakip ang mga pin na D8-D11 sa 4 na koneksyon sa kuryente ng puso: D8 hanggang asul, D9 hanggang berde, D10 hanggang dilaw at D11 hanggang puti. Dapat magpakita ang puso ng isang animasyon na tumatagal ng halos 1 minuto.

Maaaring ipasadya ang code upang baguhin ang bilis o baguhin ang animasyon. Naglalaman ang array na 'patt' ng pattern ng animasyon. Dalawang byte ng bawat hakbang ang nagpapahiwatig kung aling mga LED light ang naka-on sa bawat hakbang. Ang mga LED ay may bilang na 0-11 na nagsisimula mula sa ibaba at tumatakbo nang pabaliktad sa buong paligid. Ang LED0 ay tumutugma sa bit 0, LED1 hanggang bit 1 atbp.

Ang pattern array ay nakaimbak sa memorya ng programa, na nagbibigay-daan para sa isang mas mayamang animasyon kaysa kung naimbak ito sa RAM. Ang kasalukuyang sketch ay may 168 na mga hakbang. Para sa Arduino, mayroong puwang para sa libu-libo pa, at kahit para sa ATTINY13, na mayroon lamang 1kByte ng memorya ng programa, may puwang para sa humigit-kumulang na 400 mga hakbang.

Ang bilis ng animasyon ay natutukoy ng ‘steptime’ na tinukoy sa linya 196. Upang mapabilis ang animasyon, gawing mas maliit ang bilang na ito. Mag-ingat sa ATTINY, ang animasyon ay tatakbo nang mas mabagal dahil tatakbo namin ito sa isang mas mababang bilis ng orasan.

Hakbang 4: Paglipat sa ATTINY

Paglipat sa ATTINY
Paglipat sa ATTINY
Paglipat sa ATTINY
Paglipat sa ATTINY

Ang code ay sapat na maliit upang magkasya sa isang napaka-maginhawang maliit na 8-pin microcontroller, ang ATTINY13A. Ang sketch mula sa nakaraang hakbang ay gagana nang walang anumang pagbabago sa ATTINY.

  • Mayroong nakatuon na mga itinuturo https://www.instructables.com/id/Programming-an-A… kung paano i-program ang ATTINY13A. Ang isang maikling buod ay nasa ibaba:
  • Simula sa Arduino IDE, buksan ang 'Mga Kagustuhan' pagkatapos ay idagdag ang https://mcudude.github.io/MicroCore/package_MCUdude_MicroCore_index.json para sa mga karagdagang tagapamahala ng lupon.
  • Sa ilalim ng 'Tools / Board', piliin ang 'Board Manager' at sa ilalim ng listahan, i-install ang 'MicroCore ng MCUdude'
  • Ikonekta ang Arduino Uno at i-upload ang 'ArduinoISP'. Magagamit ito sa ilalim ng 'File / halimbawa'
  • Ikonekta ang Arduino sa ATtiny, pinakamadaling gawin sa pamamagitan ng paglalagay ng ATtiny sa isang prototype na kalasag: Arduino pin 13 - ATtiny pin 7 Arduino pin 12 - ATtiny pin 6 Arduino pin 11 - ATtiny pin 5 Arduino pin 10 - ATtiny pin 1 Arduino + 5v - ATtiny pin 8 Arduino GND - ATtiny pin 4
  • Piliin ang 'Board ATtiny13', 'B. O. D 2.7V', 'Clock 1.2 MHz internal' at programmer na 'Arduino bilang ISP' (pansin: hindi 'ArduinoISP' ngunit 'Arduino bilang ISP')
  • Gawin ang 'Burn Bootloader' - walang bootloader para sa attiny, at maaari itong magbigay ng isang error, ngunit kinakailangan ang hakbang na ito upang 'maitakda ang mga piyus' sa tamang setting ng orasan Mag-upload ng sketch.

Subukan kung ito ay gumagana: ikonekta ang asul, berde, dilaw at puting mga koneksyon ng puso sa PB0 (pin 5), PB1 (pin 6), PB2 (pin 7) at PB3 (pin 2), ayon sa pagkakabanggit. Ang puso ay dapat na buhayin sa parehong paraan tulad ng sa Arduino, medyo mabagal lamang. Suriin din na gumagana ito kapag ang ATTINY ay pinapagana mula sa isang suliranin.

Hakbang 5: Pagtatapos sa Proyekto

Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto
Pagtatapos sa Proyekto

Ngayon na mayroon ka ng heart circuit at isang naka-program na ATTINY, ang proyekto ay maaaring matapos. Paghinang ng socket ng IC, ang may hawak ng coin cell at ang on / off switch sa prototype board at kumpletuhin ang mga koneksyon tulad ng ipinakita sa diagram. Ipasok ang ATTINY, magkasabay at mag-on upang suriin na gumagana ito.

Sa wakas, nagdagdag ako ng isang paninindigan sa paggawa nito ng ~ 15cm solid-core electrical wire. Tanggalin ang paghihiwalay 2cm sa magkabilang panig at yumuko ito sa hugis ng isang stand. Ang hinubad na bahagi ay maaari na ngayong solder sa mga pad ng prototype board.

Nakahanda na upang gumawa ng kamangha-manghang regalo ng Valentine!

Paligsahan sa Puso
Paligsahan sa Puso
Paligsahan sa Puso
Paligsahan sa Puso

Runner Up sa Paligsahan sa Puso

Inirerekumendang: