Obsah:

Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0: 5 krokov (s obrázkami)
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0: 5 krokov (s obrázkami)

Video: Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0: 5 krokov (s obrázkami)

Video: Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0: 5 krokov (s obrázkami)
Video: We Played Present Pile-Up Board Game 2024, Júl
Anonim
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0
Veselý sveter Grinchmas, termálna tlačiareň + GemmaM0

Sveter Merry Grinchmas je interaktívny odev, ktorý poskytuje širokú škálu personalizovaných tlačených správ ako sťažnosť vždy, keď sa niekto dotkne brmbolca Grinchovej čiapky. Správy pred Vianocami prichádzajúce prostredníctvom tepelnej tlačiarne ovládanej technológiami Gemma MO, Arduino a Capacitive Sensing.

Krok 1: Zoznam materiálu

- Gemma MO

- Tepelná tlačiareň Guts -

- Vodivá textilná páska

- Voľný sveter

- Cítil som sa

- Súprava Roving + plstenie

- Vodivé vlákno -

- Medený závit

- Rezistory (3,3 k + 2,2 k)

- Napájanie - 7,5V, 3A

- Li-Po batéria

- Spájka

- Látkové lepidlo

- Arduino Uno, aligátorové klipy a doska na chlieb (na testovanie)

Krok 2: Test + nastavenie tlačiarne

Test + nastavenie tlačiarne
Test + nastavenie tlačiarne
Test + nastavenie tlačiarne
Test + nastavenie tlačiarne
Test + nastavenie tlačiarne
Test + nastavenie tlačiarne

Najprv otestujte tlačiareň, aby ste zistili, či má dostatok energie. V opačnom prípade bude po stlačení tlačidla reset na tlačiarni vytlačiť testovaciu stránku stále rovnaká čiara (obrázok 1).

Keď vyjde skúšobná tlač, je načase skontrolovať BaudRate, pretože Printer Guts pracuje na 9 600 a v predvolenom nastavení Adafruits Library používa 19200 ako ostatné termálne tlačiarne, ktoré predávajú. Pozrite sa sem:

Obrázok 3 konkrétne ukazuje, ako zapojiť tlačiareň.

Test pomáha kalibrovať rôzne štýly písma a vytvárať tak prispôsobený dizajn. (Obrázok 4).

K dispozícii je náhodné číslo, ktoré si vyberá z 12 rôznych viet vrátane rôznych textových štýlov nadpisu, hlavného textu a podpisu.

Nakoniec, ak chcete pridať akýkoľvek obrázok, musíte ho previesť na bitmapový obrázok. (Obrázok 6). Tu bol výber Grinch. (Obrázok 7)

Jedna posledná poznámka Používanie tlačiarne s Gemma M0 vyžaduje určité úpravy, aby bolo možné použiť hardvérový seriál (Obrázok 8).

Krok 3: Návrh programu

Navrhovanie programu
Navrhovanie programu

Čo očakávam od svojho programu?

1) Mám LED diódu RGB, ktorá poskytuje vizuálnu spätnú väzbu o tlačiarni. Zelená pre pripravenosť, červená pre tlač

Pretože Gemme M0 má v sebe zabudovaný Neopixel, na jeho kódovanie je potrebné LED riešiť tak, ako keby išlo o LED pás.

#define NUMPIXELS 1 // Počet LED diód v páse

neplatné nastavenie () {

strip.begin (); // Inicializácia pinov pre výstup strip.show (); // ASAP vypnite všetky LED diódy

}

prázdna slučka () {

strip.setPixelColor (0, 255, 127, 0);

strip.show ();

}

2) Kapacitný senzor, ktorý spustí systém.

Kapacitné snímanie vyžaduje knižnicu a definovanie niektorých premenných. Používa jeden analógový vstup, ktorý je potrebné kalibrovať. Na zmenu hodnôt dotyku môžem vyžadovať určité testovanie.

#include "Adafruit_FreeTouch.h"

int touch = 1000; #define CAPTOUCH_PIN A0

long oldState = 0;

void checkpress () {// Zistenie aktuálneho stavu tlačidla. long newState = qt_1.measure (); Serial.println (qt_1.measure ()); if (newState> touch && oldState <touch) {// Krátke oneskorenie pri odblokovaní. oneskorenie (20); // Skontrolujte, či je tlačidlo aj po odskoku stále nízke. long newState = qt_1.measure (); } if (newState <touch) {// Nerobiť nič} inak {// Robiť}

3) Vytlačte rôzne správy pri každom spustení systému

Program náhodne vyberie číslo pri každom spustení programu

void printChristmas () {

randomSeed (analogRead (0)*analogRead (1));

randomNumber = random (1, 12);

printer.inverseOn ();

printer.println (F („Xmas Inc. predstavuje“)); printer.inverseOff ();

prepínač (randomNumber) {

prípad 1: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („O tom to vlastne je, nie? O tom to vždy bolo *. *Darčeky, darčeky … darčeky, darčeky, darčeky, darčeky, darčeky! Chcete vedieť, čo sa stane s vašimi darmi? Všetci prídu ku mne. Vo vašich odpadkoch. Vidíte, čo hovorím? Vo vašom *odpade *. Mohol som sa obesiť všetkými zlými vianočnými kravatami, ktoré som našiel na smetisku. A chamtivosť.. “)); prestávka; prípad 2: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Ach, tá Who-manity.“)); prípad 3: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Ach nie, sane, darčeky, budú zničené a ja sa starám!“)); prestávka; prípad 4: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Pustite si túto vianočnú hudbu. Je radostná a víťazná.“)); prestávka; prípad 5: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Len jem, pretože sa nudím?“)); prestávka; prípad 6: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Existuje však jedna maličká vianočná tradícia, ktorú považujem za celkom zmysluplnú … [zdvihne imelo] Imelo. [položí imelo na zadok] Teraz strčte a pobozkajte, Whoville! [krúti imelom] Boi-yoi-yoi-yoing! ")); prestávka; prípad 7: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Teraz ma počúvajte, mladá dáma! Aj keď budeme *strašne pokazení *, na Vianoce nebudú žiadne smutné tváre.“)); prestávka; prípad 8: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Dovolenka kto-čo-čo?“)); prestávka; prípad 9: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Máte sväté, veselé Vianoce?“)); prestávka; prípad 10: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („A budú hodovať, hodovať, hodovať, hodovať. Budú jesť ich Pudingovú a vzácnu Who-Roast Beast. Ale to je niečo, v čom nemôžem ani v najmenšom obstáť. Ach nie. Ja „ROZPRÁVAM V RÝME!“)); prestávka; prípad 11: // príkazy printer.println (F ("")); // Nastaviť zarovnanie textu (vpravo, v strede, vľavo) - akceptuje tlačiareň 'L', 'C', 'R' printer.justify ('L'); printer.println (F („Lakomosť nikdy nekončí! Chcem golfové palice. Chcem diamanty. Chcem poníka, aby som na ňom mohol dvakrát jazdiť, nudiť sa a predať ho na výrobu lepidla. Pozrite sa, nechcem robiť vlny, ale toto * celé * vianočné obdobie je … “)); prestávka; }

// Otestujte viac štýlov

printer.boldOn (); printer.justify ('R'); printer.println (F ("Grinch")); printer.boldOff (); printer.println (F ("")); printer.justify ('L'); // Testovací znak s dvojitou výškou na tlačiarni & mimo tlačiarne.doubleHeightOn (); printer.println (F („Veselé Grinchmas!“)); printer.doubleHeightOff (); printer.println (F ("")); printer.println (F (""));

// Vytlačte logo 75 x 75 pixelov v adalogo.h:

printer.printBitmap (grinch_width, grinch_height, grinch_data);

printer.println (F (""));

printer.println (F (""));

printer.sleep (); // Povedzte tlačiarni, aby spala

oneskorenie (3000L); // Spánok na 3 sekundy printer.wake (); // MUSÍTE pred ďalšou tlačou prebudiť (), aj keď resetujte printer.setDefault (); // Obnovenie predvolených nastavení tlačiarne}

Krok 4: Mäkký obvod

Mäkký obvod
Mäkký obvod
Mäkký obvod
Mäkký obvod
Mäkký obvod
Mäkký obvod
Mäkký obvod
Mäkký obvod

Pretože mäkký obvod je potrebné bezpečne umiestniť do svetra, venoval som osobitnú pozornosť konštrukcii obvodu (obrázok 1) a umiestneniu komponentu.

Po otestovaní celého obvodu pomocou svoriek aligátora a dosky na chlieb (obrázky 2 a 3) som skočil na umiestnenie dočasných komponentov na plsť pred šitím a spájkovaním (obrázky 4 a 5).

Dôležitá poznámka: Zapojenie vrátane rezistorov je nevyhnutné, pretože tento obvod potrebuje rozdeľovač napätia, aby sa zabránilo poškodeniu dosky prúdom. (Obrázok 6)

Posledný krok tu, testovanie všetkého (obrázok 7)

Krok 5: Dajte všetko dohromady

Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady
Dať všetko dohromady

1) Vytvorenie plochy plsteného písma (obrázky 1 a 2)

2) Šiť písmená (obrázok 3)

3) Vytvorte vrecko na kotúč papiera a štruktúru pre tlačiareň a držiak batérie Li-po (obrázky 4 a 5). Všetko je šité na sveter.

4) Vytvorte tvár Grincha, ktorá funguje ako kryt tlačiarne. Okruh pokračuje pod klobúkom vrstvou textilnej vodivej pásky, ktorá sa pripája k pomponu. Bambuľka je vyrobená z prediva zelenej vlny a vodivého vlákna. (Obrázok 6).

5) Pretože zdroj napájania vyžaduje napájanie kábla, vytvoril som kryt vyrobený z priadze pomocou francúzskeho úpletu. (Obrázok 7 Voliteľné).

6) Úplne posledný krok, uistite sa, že je všetko na svojom mieste, a vyskúšajte si to!

Odporúča: