Spisu treści:

Sweter Merry Grinchmas, drukarka termiczna + GemmaM0: 5 kroków (ze zdjęciami)
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0: 5 kroków (ze zdjęciami)

Wideo: Sweter Merry Grinchmas, drukarka termiczna + GemmaM0: 5 kroków (ze zdjęciami)

Wideo: Sweter Merry Grinchmas, drukarka termiczna + GemmaM0: 5 kroków (ze zdjęciami)
Wideo: Watch me Grinch #christmas#christmas2022#grinch#grinchmas#sublimation#sublimationprinting #ecotank 2024, Lipiec
Anonim
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0
Sweter Merry Grinchmas, drukarka termiczna + GemmaM0

Sweter Merry Grinchmas to interaktywna część garderoby, która zapewnia szeroki zakres spersonalizowanych, drukowanych komunikatów, które można narzekać za każdym razem, gdy ktoś dotyka pomponu kapelusza Grincha. Wiadomości antyświąteczne przychodzące przez drukarkę termiczną sterowaną przez Gemma MO, Arduino i Capacitive Sensing.

Krok 1: Lista materiałów

- Gemma MO

- Drukarka termiczna Guts -

- Taśma z tkaniny przewodzącej

- Luźny Sweter

- Poczuł

- Rowing + zestaw do filcowania

- Włókno przewodzące -

- Nić miedziana

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

- Zasilanie - 7,5V, 3A

- Akumulator Li-Po

- Lutowane

- Klej do tkanin

- Arduino Uno, zaciski krokodylkowe i płytka stykowa (do testów)

Krok 2: Test + konfiguracja drukarki

Test + konfiguracja drukarki
Test + konfiguracja drukarki
Test + konfiguracja drukarki
Test + konfiguracja drukarki
Test + konfiguracja drukarki
Test + konfiguracja drukarki

Przede wszystkim przetestowanie drukarki, aby sprawdzić, czy ma wystarczającą moc, w przeciwnym razie po naciśnięciu przycisku resetowania na drukarce w celu wydrukowania strony testowej będzie drukować tę samą linię w kółko (rysunek 1).

Kiedy wychodzi wydruk testowy, nadszedł czas, aby sprawdzić szybkość transmisji, ponieważ Printer Guts pracuje przy 9600 i domyślnie Biblioteka Adafruits używa 19200, podobnie jak inne drukarki termiczne, które sprzedają. Sprawdź to tutaj:

Zdjęcie 3 pokazuje konkretnie sposób podłączenia drukarki.

Test pomaga skalibrować różne style czcionek w celu stworzenia dowolnego niestandardowego projektu. (Zdjęcie 4).

Istnieje losowa liczba, która wybiera spośród 12 różnych zdań, w tym różne style tekstowe w nagłówku, tekście głównym i podpisie.

Na koniec, aby dodać dowolny obraz, należy go przekonwertować na obraz bitmapowy. (Zdjęcie 6). Tutaj wybór padł na Grinch. (Zdjęcie 7)

Ostatnia uwaga. Korzystanie z drukarki z Gemma M0 wymaga pewnych zmian w celu korzystania z portu szeregowego sprzętowego (Zdjęcie 8).

Krok 3: Projektowanie programu

Projektowanie programu
Projektowanie programu

Czego oczekuję od mojego programu?

1) Mam diodę RGB, która daje wizualną informację zwrotną o drukarce. Zielony oznacza gotowość, czerwony nadruk

Ponieważ Gemme M0 ma wbudowany Neopiksel, aby go zakodować, diodę LED należy zaadresować tak, jakby była to taśma LED.

#define NUMPIXELS 1 // Liczba diod LED w pasku

pusta konfiguracja () {

strip.początek(); // Zainicjuj piny dla wyjścia strip.show(); // Wyłącz wszystkie diody LED JAK NAJSZYBCIEJ

}

pusta pętla () {

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

strip.pokaż();

}

2) Czujnik pojemnościowy, który uruchamia system.

Wykrywanie pojemnościowe wymaga biblioteki i zdefiniowania niektórych zmiennych. Wykorzystuje jedno wejście analogowe, które należy skalibrować. Mogę wymagać pewnych testów, aby zmienić wartości dotyku.

#include "Adafruit_FreeTouch.h"

int touch = 1000;#define CAPTOUCH_PIN A0

długi staryState = 0;

void checkpress() { // Pobierz aktualny stan przycisku. long newState = qt_1.measure(); Serial.println(qt_1.measure()); if (nowy stan > dotknij && stary stan < dotknij) { // Krótkie opóźnienie do przycisku odbicia. opóźnienie(20); // Sprawdź, czy przycisk jest nadal niski po odbiciu. long newState = qt_1.measure(); } if (newState < touch) { // Nic nie rób } else { //Zrób to }

3) Drukuj różne komunikaty za każdym razem, gdy system jest uruchamiany

Program losuje liczbę za każdym razem, gdy program zostanie uruchomiony

void printChristmas(){

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

liczba losowa = losowa (1, 12);

drukarka.odwrócona();

printer.println(F("Xmas Inc. Prezentuje")); drukarka.inverseOff();

przełącznik (losowa liczba) {

case 1: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("O to w tym wszystkim chodzi, prawda? O to zawsze *o*. Prezenty, prezenty… prezenty, prezenty, prezenty, prezenty, prezenty! Chcesz wiedzieć, co dzieje się z Twoimi prezentami? Wszyscy przychodzą do mnie. W twoich śmieciach. Widzisz, co mówię? W twoich *śmieciach*. Mógłbym się powiesić tymi wszystkimi złymi świątecznymi krawatami, które znalazłem na śmietniku. I skąpstwo…")); przerwa; przypadek 2: // wyciągi printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Och, kto-manity.")); case 3: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Och, nie, sanie, prezenty, zniszczą, a mnie to obchodzi!")); przerwa; przypadek 4: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Wybuj tę świąteczną muzykę. Jest radosna i triumfalna.")); przerwa; przypadek 5: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Czy jem tylko dlatego, że się nudzę?")); przerwa; przypadek 6: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Istnieje jednak jedna malutka tradycja bożonarodzeniowa, która wydaje mi się całkiem znacząca…[podnosi jemiołę]Jemioła.[przykłada jemiołę do tyłka]Teraz zmarszcz się i pocałuj go, Whoville![ruszy jemiołą] Boi-joi-joi-joing!")); przerwa; przypadek 7: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Teraz mnie posłuchaj, młoda damo! Nawet jeśli *strasznie okaleczeni*, w Boże Narodzenie nie będzie smutnych twarzy.")); przerwa; przypadek 8: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Wakacje kto-jest czym-ee?")); przerwa; przypadek 9: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Czy masz ostrokrzew, wesołe święta?")); przerwa; przypadek 10: // wyciągi printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("I będą ucztować, ucztować, ucztować, ucztować. Zjedzą swój budyń-która i rzadką bestię-która-pieczona. Ale to jest coś, czego w najmniejszym stopniu nie mogę znieść. O nie. „MÓWIĘ W RYMIE!”)); przerwa; przypadek 11: // instrukcje printer.println(F("")); // Ustaw justowanie tekstu (do prawej, do środka, do lewej) - akceptuje 'L', 'C', 'R' printer.justify('L'); printer.println(F("Chciwość nigdy się nie kończy!Chcę kijów golfowych. Chcę diamentów. Chcę kucyka, żebym mógł na nim jeździć dwa razy, znudzić się i sprzedać go, żeby zrobić klej. Słuchaj, nie chcę robić fal, ale ten *cały* sezon świąteczny to…")); przerwa; }

// Przetestuj więcej stylów

drukarka.pogrubienieWł(); drukarka.justify('R'); printer.println(F("Grinch")); drukarka.pogrubienieOff(); drukarka.println(F("")); drukarka.justify('L'); // Testowanie znaków o podwójnej wysokości włączanie i wyłączanie printer.doubleHeightOn(); printer.println(F("Wesołych Grinchmas!")); drukarka.podwójnaWysokość(); drukarka.println(F("")); drukarka.println(F(""));

// Wydrukuj logo 75x75 pikseli w adalogo.h:

drukarka.printBitmap(grinch_width, grinch_height, grinch_data);

drukarka.println(F(""));

drukarka.println(F(""));

drukarka.sen(); // Każ drukarce uśpić

opóźnienie (3000L); // Uśpij przez 3 sekundy printer.wake(); // MUSISZ obudzić() przed ponownym drukowaniem, nawet po zresetowaniu printer.setDefault(); // Przywróć ustawienia domyślne drukarki }

Krok 4: Obwód miękki

Obwód miękki
Obwód miękki
Obwód miękki
Obwód miękki
Obwód miękki
Obwód miękki
Obwód miękki
Obwód miękki

Ponieważ miękki obwód musi być bezpiecznie umieszczony w swetrze, zwróciłem szczególną uwagę na projekt obwodu (Zdjęcie 1) i umiejscowienie komponentu.

Po przetestowaniu całego obwodu za pomocą zacisków krokodylkowych i płytki stykowej (zdjęcia 2 i 3), przed szyciem i lutowaniem zająłem się umieszczaniem tymczasowych elementów na filcu (zdjęcie 4 i 5).

Ważna uwaga: okablowanie, w tym rezystory, jest niezbędne, ponieważ ten obwód wymaga dzielnika napięcia, aby zapobiec uszkodzeniu płytki przez prąd. (Zdjęcie 6)

Ostatni krok tutaj, testowanie wszystkiego (Zdjęcie 7)

Krok 5: Składanie wszystkiego razem

Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem

1) Tworzenie filcowej czcionki (zdjęcie 1 i 2)

2) Szyć litery (zdjęcie 3)

3) Utwórz woreczek na rolkę papieru oraz konstrukcję na drukarkę i uchwyt baterii Li-po (Zdjęcie 4 i 5). Wszystko jest przyszyte do swetra.

4) Utwórz twarz Grincha, która działa jak pokrywa drukarki. Obwód jest kontynuowany pod czapką warstwą tkaniny przewodzącej, która łączy się z pomponem. Pompon wykonany jest z zielonego rowingu wełnianego i przewodzącego włókna. (Zdjęcie 6).

5) Ponieważ do zasilania zasilacza potrzebny jest przewód, wykonałem okładkę z przędzy za pomocą dzianiny francuskiej. (Zdjęcie 7 Opcjonalnie).

6) Ostatni krok, upewnij się, że wszystko jest na swoim miejscu i przymierz!

Zalecana: