Мазмұны:

Merry Grinchmas жемпір, термалды принтер + GemmaM0: 5 қадам (суреттермен)
Merry Grinchmas жемпір, термалды принтер + GemmaM0: 5 қадам (суреттермен)

Бейне: Merry Grinchmas жемпір, термалды принтер + GemmaM0: 5 қадам (суреттермен)

Бейне: Merry Grinchmas жемпір, термалды принтер + GemmaM0: 5 қадам (суреттермен)
Бейне: Домашний VLOG / Макияж, вдохновленный Искусственным Интеллектом / Распаковка и примерка 2024, Қараша
Anonim
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0
Merry Grinchmas жемпір, термалды принтер + GemmaM0

Merry Grinchmas жемпір - интерактивті киім, ол жеке баспа хабарламаларының кең спектрін ұсынады, егер біреу Гринч шляпасының помпонына қол тигізсе, шағым ретінде. Рождествоға қарсы хабарламалар Gemma MO, Arduino және Capacitive Sensing бақылайтын термалды принтер арқылы келеді.

1 -қадам: материалдар тізімі

- Джемма МО

- Guts термалды принтері -

- өткізгіш мата таспасы

- Бос жемпір

- Киіз

- Арқан + киізге арналған жиынтық

- Өткізгіш талшық -

- Мыс жіп

- резисторлар (3.3k + 2.2k)

- Қуат көзі - 7,5 В, 3А

- Li-Po батареясы

- Дәнекер

- матаға арналған желім

- Arduino Uno, Alligator клиптері және тақта (тестілеу үшін)

2 -қадам: Принтерді тексеру + орнату

Принтерді тексеру + орнату
Принтерді тексеру + орнату
Принтерді тексеру + орнату
Принтерді тексеру + орнату
Принтерді тексеру + орнату
Принтерді тексеру + орнату

Біріншіден, принтердің қуаты жеткілікті екенін тексеру үшін тестілеу, әйтпесе, сынақ бетін басып шығару үшін принтердегі ысыру түймесін басқанда, ол бір жолды қайта -қайта басып шығара береді (1 -сурет).

Сынақ басылымы шыққан кезде, BaudRate -ті тексеру уақыты келді, себебі Printer Guts 9600 -де жұмыс істейді және әдепкі бойынша Adafruits Library, олар сататын басқа термиялық принтерлер сияқты 19200 -ді қолданады. Оны мына жерден тексеріңіз:

3 -суретте принтерді қалай сыммен қосу керектігі көрсетілген.

Тест кез келген реттелген дизайнды жасау үшін әр түрлі қаріп стильдерін калибрлеуге көмектеседі. (4 -сурет).

Кездейсоқ сан бар, ол тақырыпқа, мәтінге және қолтаңбаның әр түрлі мәтіндік стильдерін қосқанда 12 түрлі сөйлемді таңдайды.

Ақырында, кез келген суретті қосу үшін оны нүктелік кескінге түрлендіру қажет. (6 -сурет). Мұнда таңдау Гринч болды. (7 -сурет)

Соңғы бір ескерту. Принтерді Gemma M0 көмегімен пайдалану аппараттық құралдың сериясын пайдалану үшін кейбір түзетулерді қажет етеді (8 -сурет).

3 -қадам: Бағдарламаны құру

Бағдарламаны жобалау
Бағдарламаны жобалау

Мен өз бағдарламамнан не күтемін?

1) Менде принтер туралы визуалды кері байланыс беретін RGB светодиоды бар. Дайын үшін жасыл, басып шығару үшін қызыл

Gemme M0 ендірілген Neopixel болғандықтан, оны кодтау үшін светодиодты жарықдиодты жолақ сияқты шешуге тура келеді.

#depine NUMPIXELS 1 // Жолақтағы жарықдиодтар саны

жарамсыз орнату () {

strip.begin (); // шығыс жолағы үшін түйреуіштерді инициализациялау.show (); // Барлық светодиодтарды тез арада өшіріңіз

}

void loop () {

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

strip.show ();

}

2) Жүйені іске қосатын сыйымдылық сенсоры.

Сыйымдылықты сезу үшін кітапхана қажет және кейбір айнымалыларды анықтау. Ол калибрлеуді қажет ететін бір аналогтық кірісті пайдаланады. Мен сенсорлық мәндерді өзгерту үшін кейбір тестілеуді қажет етуі мүмкін.

#«Adafruit_FreeTouch.h» қосыңыз

int touch = 1000;#CAPTOUCH_PIN A0 анықтаңыз

long oldState = 0;

void checkpress () {// Ағымдағы түйме күйін алу. long newState = qt_1.measure (); Serial.println (qt_1.measure ()); if (newState> touch && oldState <touch) {// Шығу түймесінің қысқа кідірісі. кешіктіру (20); // Шығудан кейін түйменің әлі де төмен екенін тексеріңіз. long newState = qt_1.measure (); } if (newState <touch) {// Ештеңе жасамаңыз} басқа {// Мұны жасаңыз}

3) Жүйе іске қосылған сайын әр түрлі хабарларды басып шығарыңыз

Бағдарлама іске қосылған сайын санды кездейсоқ таңдайды

жарамсыз басып шығару Рождество () {

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

randomNumber = кездейсоқ (1, 12);

printer.inverseOn ();

printer.println (F («Xmas Inc. Presents»)); printer.inverseOff ();

қосқыш (randomNumber) {

1 -жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Мұның бәрі солай емес пе? Бұл әрқашан *туралы болды. Сыйлықтар, сыйлықтар … сыйлықтар, сыйлықтар, сыйлықтар, сыйлықтар, сыйлықтар! Сыйлықтарыңызбен не болатынын білгіңіз келе ме? Олардың бәрі маған келеді. Сенің қоқысыңда. Менің не айтқанымды көріп тұрсың ба? Сенің *қоқысыңда. Мен қоқыс үйінен тапқан барлық жаман Рождестволық галстуктармен іліп қоюға болар едім. Ал тәкаппарлық.. «)); үзіліс; 2 -жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («О, кім-ерлік.»)); 3 -жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («О, жоқ, шана, сыйлықтар, олар жойылады, мен қамқорлық жасаймын!»)); үзіліс; жағдай 4: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Бұл Рождестволық музыканы жарыңыз. Бұл қуанышты және салтанатты.»)); үзіліс; 5 -жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Мен жалығып кеткендіктен ғана тамақтанамын ба?»))); үзіліс; 6 -жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Дегенмен, менде өте рождестволық бір кішкентай дәстүр бар, ол өте мағыналы … [омеланы ұстайды] Мистлето. [омеліні бөксесіне қояды] Енді оны итеріп, сүй, Уовилл! Бой-йой-йой-йоинг! «)); үзіліс; 7 жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Енді сен мені тыңда, жас келіншек! Егер біз *сұмдықпен мәңгүрттенсек те, Рождествода қайғылы жүздер болмайды.»)); үзіліс; 8 жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Мереке кім-не болу керек?»)); үзіліс; 9 жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Сізде Рождество мерекесі бар ма?»)); үзіліс; 10 жағдай: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Және олар тойлайды, тойлайды, тойлайды, тойлайды. Олар өздерінің пудингін және сирек кездесетін» Қуырылған аңды «жейді. Бірақ мен бұған шыдай алмаймын. О, жоқ. мен) МЕН РИММЕН СӨЙЛЕЙМІН! «)); үзіліс; жағдай 11: // операторлар printer.println (F («»)); // Мәтінді негіздеуді орнату (оңға, ортасына, солға) - 'L', 'C', 'R' принтерін қабылдайды. Justify ('L'); printer.println (F («Сараңдық ешқашан бітпейді! Мен гольф клубтарын қалаймын. Мен гауһар тастар алғым келеді. Мен пони алғым келеді, сондықтан мен оны екі рет мініп, жалықтырып, желім жасау үшін сата аламын. Қарашы, мен толқын жасағым келмейді»), бірақ бұл * тұтас * Рождество маусымы … »)); үзіліс; }

// Басқа стильдерді тексеріңіз

printer.boldOn (); printer.justify ('R'); printer.println (F («Гринч»)); printer.boldOff (); printer.println (F («»)); printer.justify ('L'); // Принтердің қос биіктігін қосуды және өшіруді тексеру.doubleHeightOn (); printer.println (F («Көңілді гринчмастар!»)); printer.doubleHeightOff (); printer.println (F («»)); printer.println (F («»));

// 75x75 пиксель логотипін adalogo.h форматында басып шығарыңыз:

printer.printBitmap (grinch_width, grinch_height, grinch_data);

printer.println (F («»));

printer.println (F («»));

printer.sleep (); // Принтерге ұйықтауды айт

кешіктіру (3000л); // 3 секунд ұйықтаңыз принтер.wake (); // принтер.setDefault () қалпына келтірілсе де, қайта басып шығарар алдында міндетті түрде () ояту (); // Принтерді әдепкі бойынша қалпына келтіру}

4 -қадам: жұмсақ тұйықталу

Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек
Жұмсақ тізбек

Жұмсақ тізбекті жемпірге қауіпсіз орналастыру қажет болғандықтан, мен схеманың дизайнына (1 -сурет) және компоненттің орналасуына ерекше назар аудардым.

Аллигатор қысқыштары мен тақтаны пайдаланып толық тізбекті тексергеннен кейін (2 және 3 -суреттер), мен тігу мен дәнекерлеу алдында киізге уақытша компоненттерді қоюға кірістім (4 және 5 -сурет).

Маңызды ескерту: резисторларды қосатын сымдар өте маңызды, себебі ток тізбегіне зақым келтірмеу үшін кернеу бөлгіш қажет. (6 -сурет)

Мұнда соңғы қадам, бәрін тексеру (7 -сурет)

5 -қадам: Барлығын біріктіру

Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру
Барлығын біріктіру

1) киізден жасалған қаріпті жасау (сурет 1 және 2)

2) Әріптерді тігу (3 -сурет)

3) Қағаз орамасы үшін дорба жасаңыз және принтер мен Li-po батарея ұстағышының құрылымын жасаңыз (4 және 5-сурет). Барлығы жемпірге тігілген.

4) Принтер қақпағы ретінде жұмыс істейтін Grinch бетін жасаңыз. Схема шляпаның астында помпонға қосылатын мата өткізгіш таспамен жалғасады. Помпон жасыл жүннен және өткізгіш талшықтан жасалған. (6 -сурет).

5) Қуат көзі сымды қажет ететіндіктен, мен француз трикотажының көмегімен жіптен жасалған қақпақ жасадым. (7 сурет қосымша).

6) Ең соңғы қадам, бәрі орнында екеніне көз жеткізіңіз және оны қолданып көріңіз!

Ұсынылған: