
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36

Тази инструкция ще ви покаже как да изградите своя собствена кутия за разказване на истории. Чувствайте се свободни да изберете своето приключение.
Така нареченият "GrimmsBox" е проект на студенти от Hochschule der Medien Stuttgart, Германия. Използваме обикновен принтер за разписки, за да отпечатаме първата част на разказа. В края на частта трябва да се вземе решение. С помощта на бутони можете да изберете как ще продължи историята. Използваме Raspberry Pi за стартиране на софтуера.
Две от кутиите ще бъдат използвани много скоро. Обществената библиотека в Манхайм организира семинари с деца. Децата могат да създават свои собствени истории и могат да преживяват своите истории с помощта на GrimmsBox. Основната цел на такива семинари е насърчаване на способностите за четене и писане. Кутиите за разказване на истории също ще бъдат отнесени на събития, така че децата от 3 до 6 клас ще бъдат запознати с потапящо четене.
Стъпка 1: Как да направите случая за GrimmsBox

Необходими материали:
- 1x 6 мм плоча от шперплат (1200x600x6mm)
- 1x 4 мм шперплат (1200x600x4 мм)
- лепило за дърво
- необходими устройства: лазерен нож, компютър
Файловете, използвани от GrimmsBox, са достъпни за безплатно изтегляне. Файловете са svg и dxf файлове на отделните компоненти на GrimmsBox. Това е от една страна подструктурата, където Raspberry Pi намира своето място, след това книгата с огъваща се панта и самостоятелно проектирана стойка за книги.
6 мм шперплатната плоча се използва за основата и стойката за книги. Книгата е изрязана от 4 мм шперплат. По -дебелата чиния би била твърде дебела, за да направи книгата. Пантата за огъване работи само с 3-4 мм шперплат панели. В противен случай щеше да се счупи.
Dxf файловете са правилният избор за тези, които вече не искат да променят нищо. Те са готови за използване на лазерния нож.
Но за тези, които все още искат да придадат на кутията собствено докосване, могат да използват SVG файлове в кутията. Те могат да се променят по желание. За да направите това, файлът трябва да бъде отворен в програма (например Inkscape). С тези програми можете да редактирате отделните компоненти. Ако сте променили нещо (напр. Размера на дупките за бутоните или издърпването), трябва да запишете SVG файла като dxf файл.
Dxf файлът трябва да се отвори на лазерния нож. Веднага щом файлът се покаже на компютъра, трябва да се избере кои линии да се изрязват и кои да се гравират. Надписите отстрани на кутията бяха гравирани върху кутията на Грим и буквите върху книгата бяха слабо изрязани. В зависимост от това, което ви харесва повече, можете да използвате едното или другото. Разбира се, всички външни линии трябва да бъдат изрязани. Използването на лазерния нож обаче може да зависи от модела на лазерния нож и може да бъде различно.
Стъпка 2: Как да сглобите бутоните за GrimmsBox




Необходими материали:
- 6 нормално отворени моментни бутони, напр. бутони за аркадни игри
- 8 джъмперни жици с поне един женски край, нашите бяха с дължина около 40 см
- някаква плитка
- термосвиваеми тръби кутията, използвана за вашия проект, в нашия случай лазерно изрязан горен капак и двата странични капака, които включват допълнителните бутони
- спойка и поялник
- мултиметър
- нож за тел
- машина за сваляне на тел
- запалка или пистолет с горещ въздух
- В нашия код ние използвахме вътрешни резистори, така че трябва само да направим две неща: първо, свържете женски джъмпер проводник към всеки бутон, който ще доведе до съответния GPIO щифт и второ, свържете бутоните един към друг, който след това ще се води заземяване чрез друг женски джъмпер. Свързахме бутона за изключване и бутона за рестартиране на програмата заедно и използвахме един заземен щифт за тях. Четирите бутона, които ще бъдат използвани от двигателя за избор на собствени приключения, също бяха свързани помежду си и споделиха един заземен щифт.
- Ако бутоните ви имат повече от два пина, използвайте мултицет, за да разберете кои са подходящи за свързване на GPIO щифта и земята. С функцията за звук трябва да чувате звук само ако докоснете два щифта и бутонът в момента е натиснат. Можете да направите тест за непрекъснатост, ръководство как да направите това е достъпно на ifixit:
- Вземете един бутон и го поставете в кутията. Вземете един от джъмперните проводници и отрежете единия край, който трябва да ви остави с джъмпер тел с един женски край. Използвайте машината за отстраняване на тел, за да отрежете около 5 милиметра от изолацията. Завъртете разхлабените проводници за малко, така че нито един проводник да не стърчи. Използвайте малко калай, за да направите хубаво покритие за проводниците. Ако сте нов за запояване, има страхотен, кратък комикс, който ви учи как да запоявате. Нарича се запояване е лесно и PDF файлът е достъпен на множество езици на адрес https://mightyohm.com/blog/2011/04/soldering-is-e… Измерете и отрежете термоусадочните тръби, които ще използвате, за да изолирате част, където бутонът и джъмперният проводник ще бъдат запоени заедно. Издърпайте термосвиваемата тръба върху джъмперната жица. Запоявайте кабела на джъмпера към един от щифтовете на бутона.
- Повторете последната стъпка за всички бутони. Винаги не забравяйте да издърпате термосвиваемата тръба върху джъмперната жица преди запояване, тъй като може да не се побере над съединителя.
- Сега ще свържете бутона за изключване и бутона за рестартиране. Използвахме емайлирана медна тел, но тъй като се оказа малко неудобно, бих предложил да използвате нормална плитка. Изрежете няколко сантиметра плитка. Както преди, разглобете го с помощта на маша за тел, но този път от двата края. След това запоявайте единия край към щифта на бутона за изключване или рестартиране. Отново отрежете малко от термосвиваемата тръба и я издърпайте върху плитката.
- След това ще свържете плитката към свободния щифт на другия бутон. Но тук ще свържете и друг джъмпер, който ще доведе до заземяване. Подгответе джъмперната жица, както сте направили с останалите, включително термосвиваемите тръби. Сега огънете плитката, за да можете да я запоите към свободния щифт, идващ от бутона, обърнат към свободния край. След това запоявайте и джъмперната жица към щифта. Запояването на плитката, идваща от едната страна, и джъмперната жица от другата страна, гарантира, че можете да издърпате термосвиваемата тръба върху запоената част.
- Свържете четирите бутона, използвани за играта, като изградите малки мостове. Винаги не забравяйте да издърпате термосвиваемата тръба върху плитката преди запояване. (И също така се уверете, че бутоните ви са в правилната позиция, преди да ги свържете помежду си). Когато свързвате последния бутон, трябва отново, както при другите два бутона, да свържете плитката отдолу и да свържете джъмпер.
-
Използвайки звуковата функция на мултицета, можете да проверите дали всичко е свързано добре. Накрая трябва да проверите дали всички термосвиваеми тръби са на правилното място. След това можете да използвате запалка или пистолет с горещ въздух, за да го свиете. Сега приключихте с сглобяването на бутоните!
Стъпка 3: Настройка на софтуера

Ще имаш нужда:
- Raspberry Pi с инсталиран Raspbian (трябва да можете да използвате и други дистрибуции, но трябва да коригирате някои команди)-използвахме пакет, състоящ се от Raspberry Pi 3 Model B+ с предварително инсталирана SD карта, захранване и случай, други модели също трябва да работят
- принтер за разписки - имайте предвид, че трябва да свържете принтера към Raspberry Pi, така че свързването чрез USB може да е най -лесно
- вашите бутони
-
Свържете вашия Raspberry Pi към екран, мишка и клавиатура. В крайна сметка ще трябва да го свържете към принтера и бутоните. Бутоните трябва да бъдат свързани към конкретни GPIO щифтове. Ако искате да използвате различни щифтове от нас, можете да промените това в кода. Засега този списък ще ви каже кой бутон трябва да бъде свързан към кой щифт. Ще използвам BCM номериране, което също се използва в кода. Има диаграма на адрес https://www.raspberrypi.org/documentation/usage/g…, която ви показва кой щифт има кой номер.
• бутон за изключване - 17 • бутон за рестартиране - 27 • първи бутон, използван за опции в историята/приключението - 5 • втори бутон - 6 • трети бутон - 13 • четвърти бутон - 19 • двата кабела на джъмпера, свързани към щифтовете, които свързват всички бутоните трябва да отидат към земята - в диаграмата, маркирана с черни точки
Стартирайте Raspberry Pi, като включите захранването. Свържете Raspberry Pi към интернет с помощта на LAN кабел или безжична мрежа.
- Първото нещо, което трябва да направите, когато инсталирате необходимия софтуер на raspberry pi, е да актуализирате софтуера, който вече е инсталиран. Ще направим това с помощта на терминала. Ако за първи път използвате терминал, документацията на Raspberry Pi (https://www.raspberrypi.org/documentation/usage/terminal/) ви помага да се движите и да опознавате околната среда. Отворете терминал и въведете sudo apt update и натиснете enter. Това ще актуализира списъка с наличните пакети и версии. След това въведете sudo apt upgrade. Това всъщност ще инсталира по -нови версии на вече инсталираните пакети.
- Инсталирането на драйвера на принтера е следващата стъпка. Управлението на принтера в Linux може да се извърши с помощта на CUPS. Може да се наложи първо да го инсталирате на вашия Raspberry Pi. В терминал въведете sudo apt install cup. Следващата стъпка е да получите драйвери за принтера. Може би имате късмет и той е включен в официалните хранилища. В терминал използвайте apt search [име на принтер или име на производител], за да го потърсите. Повечето принтери вероятно няма да бъдат включени в хранилищата, така че трябва да го получите от друго място. Възможно е към принтера да е приложен компактдиск. На уебсайта на производителя трябва да са налични за изтегляне най -новите драйвери. Някои производители имат различни уебсайтове за различни региони на света и за съжаление не всички от тях включват една и съща информация. Ако имате принтер Star, изглежда, че starasia.com е уебсайтът с най -новите драйвери за изтегляне. Моля, проверете дали изтегляте принтери за Linux. Използвахме драйверите CUPS, а не драйверите JavaPOS.
- След това трябва да инсталирате драйверите. Моля, следвайте инструкциите на производителя. Може да има налично софтуерно ръководство за Linux, което може да е полезно. Моля, следвайте инструкциите за Debian или Ubuntu - има много различни дистрибуции на Linux и не всички от тях са еднакви, затова първо проверете дали имате под ръка правилните инструкции. В нашето ръководство инструкциите започнаха, без да се посочва, че са за системи, базирани на Red Hat, и едва на следващата страница научихме, че инструкциите за системи, базирани на Debian, са различни. Софтуерното ръководство също трябва да посочва кои пакети трябва да бъдат инсталирани, например трябваше да инсталираме „libcups2-dev“. Вероятно ще трябва да изпълните някои команди. За да ви спасим от повтаряне на нашата грешка: ако трябва да компилирате драйверите от изходния код, като използвате make - make install, трябва да се задейства. Само от съобщението за грешка не можахме да разберем какво се обърка.
- Ако не е включено в ръководството за инсталиране, трябва да настроите принтера в CUPS. За да направите това, отидете до localhost: 631 в браузър. Кликнете върху „Администриране“и след това върху „Добавяне на принтер“, за да настроите принтера. Има и раздел за помощ. Трябва да се удостоверите като потребител, вижте https://help.ubuntu.com/lts/serverguide/cups.html… (раздел „Уеб интерфейс“) за подробности. Изберете подходящия формат ppd и хартия. Трябва също да го направите принтер по подразбиране, тъй като софтуерът ще отпечата на принтера по подразбиране. За да направите това, отидете на страницата на принтера и от менюто „Администриране“изберете „Задай като сървър по подразбиране“. От менюто „Поддръжка“можете да изберете „Печат на тестова страница“за първа проверка дали всичко е настроено правилно.
- Друг пакет, от който се нуждаете, е python3-yaml, тъй като историите се записват във yaml файлове и пакетът е необходим, за да може кодът на python да ги интерпретира. Използвайте sudo apt install python3-yaml, за да го инсталирате.
- Сега най -накрая ще започнем с инсталирането на софтуера, който всъщност отпечатва историите и слуша за въвеждане на GPIO щифтовете, свързани с бутоните. Отворете терминал и отидете до началната директория, ако още не сте в нея (това може да стане, като въведете cd (за промяна на директорията)). Тъй като нашият код е на GitHub, можете да го копирате във вашия Raspberry Pi, като използвате git clone https://github.com/fio-na/GrimmsKiste-1.git Това ще създаде локално хранилище на вашия Raspberry Pi на нашия код. Ако получите съобщение за грешка, тъй като git не е инсталиран, можете да го инсталирате, като въведете sudo apt install git.
- Кодът съдържа някои елементи, които може да се наложи да промените. На първо място, историите се записват в yaml файлове, които също са в хранилището на git. Ако пътят към вашата папка не е „/home/pi/GrimmsKiste-1“, ще трябва да промените тези пътища, за да използвате историите. Второ, ние отпечатваме с помощта на подпроцес и предаваме команди на терминала. Това включва някои опции, използвани от нашия драйвер за принтер, които ни позволяват да определим дали хартията ще бъде отрязана след отпечатване или не. Те вероятно няма да работят за вас (освен ако не използвате и принтер Star TSP). Ще забележите също, че ще бъдат отпечатани редица редове, включително само една точка. Имахме нужда от това, защото в противен случай части от историята не бяха четими, защото хартията все още заседна в принтера. И накрая, във функцията format_text използваме текстово преместване, за да получим парчета текст не по -дълъг от 28 знака, защото точно толкова се вписват в един ред на нашата 80 мм хартия. Моля, коригирайте тези неща, за да отговарят на вашите настройки.
- Някои файлове трябва да бъдат изпълними. За да направите това, отидете в папката с току -що изтегления код. Това трябва да бъде cd ~/GrimmsKiste-1, ако сте го последвали. В Linux разрешенията за файлове се обработват от chmod. chmod a+x Engin.py и chmod a+x shutdown-pi-and-restart-program.py прави тези два файла изпълними за всички потребители.
- Сега можем да тестваме дали двигателят може да работи и функционира правилно и дали принтерът и бутоните са настроени правилно. Въведете./Engin.py, за да направите това.
- Ако всичко работи добре, следващата стъпка е да настроите две системни услуги. За повече информация може да помогне wiki страницата на archlinux (https://wiki.archlinux.org/index.php/Systemd) или страницата за управление на systemd.service (https://www.freedesktop.org/software/systemd/ man/systemd.service.html). Първата услуга systemd ще проверява на всеки две секунди дали Engin.py работи в момента и ако не е, ще я стартира. Следователно програмата се стартира и при стартиране на Raspberry Pi. Отворете файл в папката systemd: sudo nano /etc/systemd/system/grimmskiste-restart.service Въведете следното:
-
[Мерна единица]
Описание = рестартира Grimms Kiste на всеки две секунди, ако не успее [Услуга] ExecStart =/home/pi/GrimmsKiste-1/Engin.py Рестартиране = винаги RestartSec = 2 [Инсталиране] WantedBy = многопотребителски целеви
- Трябва да редактирате пътя в ExecStart, ако вашият Engin.py се намира другаде, напр. ако потребителското ви име е различно. За да запишете файл в nano, трябва да натиснете ctrl + x, след това въведете y (за да) и натиснете enter.
- Другата услуга ще стартира скрипта shutdown-pi-and-restart-program.py, който слуша бутона за изключване и рестартиране. Бутонът за рестартиране чете идентификатора на процеса на Engin.py от файл и го убива, а поради другата услуга systemd Engin.py се рестартира след две секунди. Бутонът за изключване просто изпраща команда до Raspberry Pi, която трябва да се изключи сега. Отворете друг файл с помощта на sudo nano /etc/systemd/system/grimmskiste.service и въведете следното:
-
[Мерна единица]
Описание = Управлява два хардуерни бутона, за да изключи малиновото пи или да убие работещата програма Grimms Kiste [услуга] ExecStart =/home/pi/GrimmsKiste-1/shutdown-pi-and-restart-program.py [Install] WantedBy = многопотребителски таргет
- Отново ще трябва да редактирате пътя в ExecStart, ако той е различен на вашия Pi. И отново, можете да запишете файла в nano, като използвате ctrl + x, след това въведете y и натиснете enter.
- Сега имате файловете с единица за системните услуги, но те все още не се използват. Всеки път, когато променяте файлове на единица, въведете sudo systemctl daemon-reload, така че направете това сега. След това стартирайте и двете услуги, като използвате sudo systemctl start grimmskiste.service и sudo systemctl start grimmskiste-restart.service Това ще стартира услугите засега. Използвайте sudo systemctl status grimmskiste.service и sudo systemctl status grimmskiste-restart.service, за да проверите дали те работят и работят. В изхода трябва да има ред, който включва „active (running)“, вероятно в третия ред - ако не е, нещо се обърка. Journalctl може да помогне с повече информация за отстраняване на грешки.
- Използването на systemctl start само стартира услугите засега, но ако искате те да стартират всеки път, когато се стартира Raspberry Pi, трябва да ги активирате. Това става чрез sudo systemctl enable grimmskiste.service и sudo systemctl enable grimmskiste-restart.service.
- Сега трябва да тествате всички бутони дали всичко работи правилно. Тествайте и бутона за изключване и проверете дали всичко продължава да работи правилно след рестартирането. Ако е така, нямате нужда от екран, клавиатура и т.н. и вашата програма трябва да се изпълнява всеки път, когато включите Raspberry Pi в гнездото.
Стъпка 4: Въведение в YAML:




Важно: Полетата в лилаво не трябва да се преименуват. Имената на отделните списъци са изключение. Всяка история получава свой собствен YAML файл с всички възможности за избор. Структурата е същата като за файла start.yaml
Дебело черво: Ако искате да използвате двоеточия в текста, трябва да направите съобщение> след. След това текстът се спуска на един ред и се отстъпва с два празни реда.
Табове: Не използвайте раздели и се уверете, че няма раздели в края на съобщението, това ще доведе до анализатора да не може да прочете файла.
_default_question: Въведеният тук въпрос се приема, ако в историята не е въведено поле с „question“.
_prompt: Това поле се отпечатва, когато читателят трябва да направи запис.
И двете полета могат да съществуват само веднъж във файла start.yaml и не могат да се използват в други файлове.
start: start е името на първия списък на началната страница. Имената не трябва да се дублират във всички други списъци. В шаблона това поле се нарича „Име на историята“и трябва да се промени за всяка история.
Съобщение: Това поле съдържа историята и трябва да стои в един ред. въпрос: Използва се, когато трябва да се използва въпрос, различен от _default_questions. Ако полето не се използва, то трябва да бъде изтрито. (по избор)
Действия: Списъкът „действия“съдържа опциите за избор. Тук могат да бъдат въведени максимум 4 опции. Етикет: Етикетът се отпечатва като опция за избор.
Следващ: Това е името на следващата опция за избор, която трябва да бъде извикана.
край: Списък само със съобщение маркира края на историята. Действията на полетата, етикетът и следващото трябва да бъдат изтрити
Добавете още истории:
Както е обяснено по -горе, всяка нова история получава свой собствен.yaml файл. За да направите това, отворете папката „Grimms Box“и копирайте файла template.yaml. Можете също да го намерите в нашето репо GitHub (https://github.com/fio-na/GrimmsKiste-1). Преименувайте файла на заглавието на историята и я отворете. В новия файл вие добавете производителя и датата и променете полето „Името на историята“към заглавието (вижте фиг. 4: Името на историята тук е HP1). След това попълнете съобщение, въпрос, етикет и следващо. След като направите това, копирайте структурата на данните (както е показано на фиг. 4) и я поставете под последната следваща. Заглавието сега ще бъде променено на един клавиш, използван в „next“в първата част (както е показано на фиг. 4 HP1 след това ще бъде HP2 или gang2, в зависимост от това коя опция е редактирана първо). След това съобщението, въпросът, етикетът и следващият се попълват отново. Направете това за всички избори/действия, докато цялата история е във файла. Във всички краища последният списък трябва да съдържа само съобщение. Всички останали полета в крайния списък трябва да бъдат изтрити. След това файлът трябва да бъде запазен.
Накратко процедурата:
- Отворете папката Grimms Box
- Копирайте Vorlage.yaml и го преименувайте на заглавието на историята.
- Отворете този нов файл.
- Копиране на структурата на данните (фиг. 4)
- Променете името от История на Име на избор
- Въведете текста на историята в полето за съобщение,
- Поставете подходящ етикет.
- Въведете името на следващата опция за избор в следващата.
- Повторете стъпки от 4 до 9, докато историята приключи.
- Във всички краища: Последният списък съдържа само съобщение.
- Запазете файла.
Добавете новата си история към началната страница:
start.yaml е началната страница за кутията на Грим. Този файл обаче първо трябва да има достъп до новите истории. Следователно новите истории трябва първо да бъдат добавени към този файл.
След всяко действие можете да създадете само 4 етикета, защото кутията на Грим има само 4 бутона за избор. Следователно, ако, както в примера на файла start.yaml, вече са зададени 4 етикета и следващите полета, четвъртият етикет трябва да бъде наречен „Още истории“или „Още“и втора структура от данни (тук: S2; със съобщение, въпрос, действия, етикет, следващ) трябва да бъдат добавени и преименувани. След това добавяте новата история с етикет и следваща и я наименувате по подходящ начин. И накрая, тя трябва да бъде запазена.
Накратко процедурата:
В start.yaml:
- Отворете start.yaml
- Попълнете полетата по подходящ начин.
- Действията на полетата, етикетът и следващото трябва да бъдат копирани и поставени.
- Запазване.
Поддържайте основния файл „Engin.py“:
И накрая, историята трябва да бъде добавена към основния файл „Engin.py . За това само пътят на файла на новия YAML файл трябва да бъде въведен в списъка с файлове. Пътят е затворен в кавички и отделен от останалите с запетая.
Накратко процедурата:
- Отворете Engine.py.
- Копирайте пътя на файла на YAML файла
- Копирайте пътя към списъка с файлове
- Разделете пътищата със запетаи.
Стъпка 5: Инструкции за употреба

За да стартирате Grimm's Box, свържете принтера към Raspberry Pi (има малка дупка за кабелите), включете принтера и Raspberry Pi в гнездото и включете принтера. Raspberry Pi стартира самостоятелно, когато е включен. Изчакайте да се зареди. Предполага се, че софтуерът ще стартира сам.
Има бутон за изключване на Raspberry Pi и бутон за рестартиране на софтуера за историята, в случай че някой просто напусне, без да завърши историята. И двете трябва да бъдат натиснати поне 3 секунди. Това е за да се гарантира, че те не са натиснати случайно, но можете да промените времето във файла shutdown-pi-and-restart-program.py. Моля, използвайте бутона за изключване, просто изключването не е добре за Raspberry Pi. С текущата настройка не можете да видите дали Raspberry Pi е включен или изключен, така че трябва да проверите дали все още реагира на други бутони, ако искате да сте сигурни.
Рестартирането на програмата отнема известно време, тъй като трябва да натиснете бутона поне 3 секунди и процесът във фонов режим проверява само на всеки 2 секунди дали програмата работи, така че целият процес, докато не се отпечата отново, може да отнеме 6 секунди. Просто му дайте малко време. Бутонът за рестартиране също може да се използва, ако възникне проблем. Може би рестартирането може да го поправи. Ако това не стане, свързването на Raspberry Pi към екран и т.н. и стартирането на програмата от терминала може да доведе до съобщения за грешка, които можете да потърсите в интернет. Бутоните, използвани за историите, трябва да бъдат натиснати поне 0,1 секунди, но много рядко някой ги натиска по -малко от това.
Ако историята е завършена, хартията се изрязва и програмата стартира отново автоматично. Но за да даде на читателя известно време да прочете края, той чака 3,5 секунди плюс 2 секунди, необходими, за да забележи, че програмата не работи и се рестартира. 3,5 секунди могат да бъдат редактирани във файла Engin.py.
Бутоните, натиснати по -малко от 1,7 секунди след последното натискане, няма да бъдат приети. Приложихме това, защото Raspberry Pi е много по -бърз от принтера и натискането на два бутона би довело до избиране на действие, преди читателят да види опциите.
Препоръчано:
Интерактивното радио за разказване на истории: 6 стъпки (със снимки)

Радиото с интерактивно разказване на истории: В този проект ние превръщаме чисто изглеждащо радио в интерактивен разказвач на гласове с възможност за глас. Бъдеще, ето ни
Направете свое собствено околно осветление с Raspberry Pi Zero: 5 стъпки (със снимки)

Направете собствено околно осветление с Raspberry Pi Zero: В този проект ще ви покажа как да комбинирате Raspberry Pi Zero с няколко допълващи се части, за да добавите околен светлинен ефект към вашия телевизор, който подобрява изживяването при гледане. Да започваме
Направете свое собствено FM радио: 6 стъпки (със снимки)

Направете свое собствено FM радио: В този проект ще ви покажа как да трансформирате TEA5767 и Arduino Pro Mini във функционално и прилично изглеждащо FM радио чрез помощта на няколко допълващи се части. Да започваме
Направете свое собствено твърдо реле: 4 стъпки (със снимки)

Направете свое собствено твърдо реле: В този проект ще разгледаме релетата в твърдо състояние, ще разберем как работят и кога да ги използваме и в крайна сметка ще създадем наше собствено твърдо реле „Направи си сам“. Да започваме
Направете свое собствено интелигентно огледало за под $ 80 - Използване на Raspberry Pi: 6 стъпки (със снимки)

Направете свое собствено интелигентно огледало за под $ 80 - Използване на Raspberry Pi: В този проект ние ще изградим интелигентно огледало, което ще ви покаже полезна информация, докато се приготвяте сутрин. Цялото нещо трябва да струва под 80 долара, което го прави прилично достъпен за повечето хора. Това ръководство само ще ви научи