Talaan ng mga Nilalaman:

Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0: 5 Hakbang (na may Mga Larawan)
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0: 5 Hakbang (na may Mga Larawan)

Video: Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0: 5 Hakbang (na may Mga Larawan)

Video: Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0: 5 Hakbang (na may Mga Larawan)
Video: Лос-Анджелес за 9 минут «Исследуйте культурное богатство Лос-Анджелеса» 2024, Hulyo
Anonim
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0
Maligayang Grinchmas Sweater, Thermal Printer + GemmaM0

Ang Merry Grinchmas sweater ay isang interactive na kasuotan na nagbibigay ng isang malawak na hanay ng mga isinapersonal na naka-print na mensahe bilang isang reklamo tuwing may dumadampi sa sumbrero ng Grinch. Ang mga mensahe na Anti-Christmasy na dumarating sa pamamagitan ng isang thermal printer na kinokontrol ng Gemma MO, Arduino, at Capacitive Sensing.

Hakbang 1: Listahan ng Materyal

- Gemma MO

- Thermal printer Guts -

- Conductive Tape Tape

- Loose Sweater

- Nadama

- Roving + felting kit

- Conductive Fiber -

- Copper thread

- Mga Resistor (3.3k + 2.2k)

- Power Supply - 7.5V, 3A

- Baterya ng Li-Po

- Solder

- Pandikit sa tela

- Arduino Uno, Alligator Clips at breadboard (para sa pagsubok)

Hakbang 2: Test + Setup Printer

Test + Setup Printer
Test + Setup Printer
Test + Setup Printer
Test + Setup Printer
Test + Setup Printer
Test + Setup Printer

Una sa lahat, ang pagsubok sa printer upang makita kung mayroon itong sapat na lakas, kung hindi man, kapag pinindot ang pindutan ng pag-reset sa printer upang mai-print ang pahina ng pagsubok ay panatilihing paulit-ulit ang parehong linya (larawan 1).

Kapag lumabas ang test print, oras na upang suriin ang BaudRate habang gumagana ang Printer Guts sa 9600 at bilang default na Adafruits Library, gumagamit ng 19200 tulad ng iba pang mga thermal printer na ibinebenta nila. Suriin ito dito:

Ang larawan 3 ay tiyak na nagpapakita kung paano i-wire ang printer.

Tumutulong ang pagsubok upang i-calibrate ang iba't ibang mga estilo ng font upang lumikha ng anumang na-customize na disenyo. (Larawan 4).

Mayroong isang random na numero na pipili sa pagitan ng 12 magkakaibang mga pangungusap kabilang ang iba't ibang mga istilong pangkonteksto para sa isang heading, teksto ng katawan at lagda.

Panghuli, upang magdagdag ng anumang larawan, kailangan itong mai-convert sa isang larawan ng Bitmap. (Larawan 6). Narito ang pagpipilian ay ang Grinch. (Larawan 7)

Isang huling tala. Gamit ang printer na may Gemma M0, nangangailangan ng ilang mga pagsasaayos upang magamit ang serial serial (Larawan 8).

Hakbang 3: Pagdidisenyo ng Programa

Pagdidisenyo ng Programa
Pagdidisenyo ng Programa

Ano ang aasahan ko sa aking programa?

1) Mayroon akong isang RGB na humantong na nagbibigay ng visual na feedback tungkol sa printer. Green para sa handa, pula para sa pag-print

Tulad ng ang Gemme M0 ay may naka-embed na Neopixel, upang mai-code ito, kailangang harapin ang humantong na para bang isang LED strip.

# tukuyin ang NUMPIXELS 1 // Bilang ng mga LED sa strip

walang bisa ang pag-setup () {

strip.begin (); // Initialize pins para sa output strip.show (); // Turn off all LEDs ASAP

}

void loop () {

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

strip.show ();

}

2) Isang capacitive sensor na nagpapalitaw ng system.

Ang Capacitive sensing ay nangangailangan ng isang library at pagtukoy ng ilang mga variable. Gumagamit ito ng isang Analog Input na kailangang i-calibrate. Maaari akong mangailangan ng ilang pagsubok upang mabago ang mga halaga ng ugnayan.

# isama ang "Adafruit_FreeTouch.h"

int touch = 1000; #define CAPTOUCH_PIN A0

mahaba oldState = 0;

walang bisa ang checkpress () {// Kunin ang kasalukuyang estado ng pindutan. mahabang newState = qt_1.measure (); Serial.println (qt_1.measure ()); kung (newState> touch && oldState <touch) {// Maikling pagkaantala upang i-debounce ang pindutan. pagkaantala (20); // Suriin kung mababa pa rin ang pindutan pagkatapos ng pag-debounce. mahabang newState = qt_1.measure (); } kung (newState <touch) {// Huwag gawin} iba pa {// Gawin ito}

3) I-print ang iba't ibang mga mensahe sa tuwing nai-trigger ang system

Ang programa ay magpapalawak ng isang numero sa tuwing tumatakbo ang programa

walang bisa na printChristmas () {

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

randomNumber = random (1, 12);

printer.inverseOn ();

printer.println (F ("Xmas Inc. Presents")); printer.inverseOff ();

lumipat (randomNumber) {

kaso 1: // statement printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Iyon ang tungkol dito, hindi ba? Iyon ang palaging naging * tungkol sa *. Mga regalo, regalo … regalo, regalo, regalo, regalo, regalo! Nais mong malaman kung ano ang mangyayari sa iyong mga regalo? Lahat sila ay lumapit sa akin. Sa iyong basura. Kita mo kung ano ang sinasabi ko? Sa iyong * basura *. Maaari kong ibitin ang aking sarili sa lahat ng masamang mga leeg ng Pasko na natagpuan ko sa dump. At ang avarice.. ")); pahinga; kaso 2: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Oh, the Who-manity.")); kaso 3: // statement printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Oh, hindi, ang sleigh, ang mga regalo, sila ay nawasak, at nagmamalasakit ako!")); pahinga; kaso 4: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Sabog ang musikang ito sa Pasko. Masaya at matagumpay.")); pahinga; kaso 5: // statement printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Kumakain lang ba ako dahil naiinip ako?")); pahinga; kaso 6: // statement printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Mayroong, gayunpaman, isang maliit na maliit na tradisyon ng Pasko na nakikita kong lubos na may katuturan … [pinipigilan ang mistletoe] Mistletoe. [inilalagay ang mistletoe sa kanyang puwit] Ngayon ay pucker up at halik ito, Whoville! [wiggles mistletoe] Boi-yoi-yoi-yoing! ")); pahinga; kaso 7: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Ngayon ay nakikinig ka sa akin, binibini! Kahit na kami ay * kakila-kilabot na mangled *, walang malungkot na mukha sa Pasko.")); pahinga; kaso 8: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Holiday who-be what-ee?")); pahinga; kaso 9: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Nagkakaroon ka ba ng isang holly, masayang Pasko?")); pahinga; kaso 10: // statement printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("At magpapista sila, kapistahan, kapistahan, kapistahan. Kakainin nila ang kanilang Who-Pudding at bihirang Who-Roast Beast. Ngunit iyon ang isang bagay na hindi ko manindigan kahit kaunti. Ay, hindi. Ako 'M SPEAKING IN RHYME! ")); pahinga; kaso 11: // pahayag ng printer.println (F ("")); // Itakda ang katwiran sa teksto (kanan, gitna, kaliwa) - Tumatanggap ng 'L', 'C', 'R' printer. Patunayan ('L'); printer.println (F ("Ang avarice ay hindi nagtatapos! Gusto ko ng mga golf club. Gusto ko ng mga brilyante. Gusto ko ng isang parang buriko upang masakay ko ito nang dalawang beses, magsawa at ibenta ito upang makagawa ng pandikit. Kita n'yo, Ayokong gumawa ng alon, ngunit ang * buong * panahon ng Pasko ay … ")); pahinga; }

// Subukan ang higit pang mga estilo

printer.boldOn (); printer.bigyan ng katwiran ('R'); printer.println (F ("Grinch")); printer.boldOff (); printer.println (F ("")); printer.bigyan ng katwiran ('L'); // Subukan ang dobleng taas na character sa & off printer.doubleHeightOn (); printer.println (F ("Merry Grinchmas!")); printer.doubleHeightOff (); printer.println (F ("")); printer.println (F (""));

// I-print ang logo ng 75x75 pixel sa adalogo.h:

printer.printBitmap (grinch_width, grinch_height, grinch_data);

printer.println (F (""));

printer.println (F (""));

printer.matulog (); // Sabihin sa printer na matulog

pagkaantala (3000L); // Matulog nang 3 segundo na printer. Gisingin (); // DAPAT gisingin () bago muling i-print, kahit na i-reset ang printer.setDefault (); // Ibalik ang printer sa mga default}

Hakbang 4: Soft Circuit

Soft Circuit
Soft Circuit
Soft Circuit
Soft Circuit
Soft Circuit
Soft Circuit
Soft Circuit
Soft Circuit

Tulad ng malambot na circuit na kailangang mailagay nang ligtas sa panglamig, binigyan ko ng espesyal na pansin ang disenyo ng circuit (Larawan 1) at ang pagkakalagay ng sangkap.

Matapos subukan ang kumpletong circuit gamit ang mga clip ng buaya at breadboard (Larawan 2 & 3), lumundag ako sa paglalagay ng mga pansamantalang sangkap sa nadama, bago tumahi at maghinang (Larawan 4 & 5).

Mahalagang tala: Ang mga kable kasama ang mga resistors ay mahalaga dahil ang circuit na ito ay nangangailangan ng isang divider ng boltahe upang maiwasan ang kasalukuyang nakakasira sa board. (Larawan 6)

Huling hakbang dito, sinusubukan ang lahat (Larawan 7)

Hakbang 5: Pagsasama-sama sa Lahat

Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat
Pinagsasama ang Lahat

1) Paglikha ng nadama na mukha ng font (Larawan 1 at 2)

2) Tumahi ng mga Sulat (Larawan 3)

3) Lumikha ng isang pouch para sa paper roll at isang istraktura para sa printer at sa may hawak ng baterya ng Li-po (Larawan 4 at 5). Ang lahat ay natahi sa panglamig.

4) Lumikha ng mukha ng Grinch na gumagana bilang takip ng printer. Ang circuit ay nagpapatuloy sa ilalim ng sumbrero na may isang layer ng tela conductive tape na kumokonekta sa pompon. Ang pompon ay gawa sa berdeng lana roving at conductive fiber. (Larawan 6).

5) Tulad ng pag-supply ng kuryente ay nangangailangan ng isang cord upang mapagana ay lumikha ako ng isang takip na gawa sa sinulid gamit ang isang french knitter. (Larawan 7 Opsyonal).

6) Ang pinakahuling hakbang, siguraduhin na ang lahat ay nasa lugar at subukan ito!

Inirerekumendang: