Съдържание:

Мини лава лампи с USB управление: 9 стъпки
Мини лава лампи с USB управление: 9 стъпки

Видео: Мини лава лампи с USB управление: 9 стъпки

Видео: Мини лава лампи с USB управление: 9 стъпки
Видео: Zigbee LAN координатор HamGeek - китайский клон Zigstar c POE и USB C 2024, Юли
Anonim
Мини лава лампи с USB управление
Мини лава лампи с USB управление
Мини лава лампи с USB управление
Мини лава лампи с USB управление
Мини лава лампи с USB управление
Мини лава лампи с USB управление

Тази инструкция описва изграждането на USB захранван и контролиран набор от лава лампи от USB клавиатура и две лазерни лампи Think Geek USB, използващи обикновена транзисторна релейна верига, задвижвана от светодиодите на клавиатурата. Той илюстрира лесен начин за управление на до три превключвателя с висока латентност (до 120 волта, 0,5 ампера) през USB връзка, за минимална сума пари (0 $ до 40 $ в зависимост от събирането на боклуци) и без да имате за програмиране на USB драйвер за сериен контрол или микроконтролер. Потенциално бихте могли да използвате и клавишите на клавиатурата, за да добавите над 100 входа, които биха въвели символи, които биха могли да се използват за управление на програма (както е описано от randofo и от David Merrill, но този подход не е използван за този проект. Този проект е замислен като подарък за моя приятел Крис Лашър, за да отбележи преместването си и започването на магистърска програма по биоинформатика. Крис ще се занимава много с програмиране и е привърженик на прагматичното / гъвкаво програмиране, един от основните принципи на който е модулното тестване. се провеждат единични тестове на програма, хубаво е да се знае дали успяват или се провалят и кое е преобладаващо. Известно е, че някои прагматични програмисти са направили система за обратна връзка, като контролират лава лампи в пълен размер от рамката за модулно тестване, като свързват някои готови устройства за домашно управление (струваше им над $ 60). Лампите им позволяваха да видят дали изпитанията преминават или не, а постепенното загряване на една лампа им позволяваше да видят кои дори ts бяха преобладаващи. Това е страхотна идея, но исках да направя Крис нещо, което: 1) ще управлява две малки лавови лампи, захранвани с USB, 2) ще се захранва от фантастичния нов лаптоп на Крис и интерфейс чрез USB (няма наследени портове на по-новите компютри, по-специално лаптопи), 3) биха били малко по-домашни и хакерски, 4) биха били по-евтини. Шофирането на релета от USB към конвертор на сериен порт изглежда просто решение. Налични са много вериги онлайн за проекти за управление на сериен порт. Един отличен проект, който адаптирах, беше на https://www.windmeadow.com/node/4. За съжаление, почти всички USB към серийни устройства не позволяват ниско ниво на битове (ръчно превключване на контролни линии), което е необходимо за използване на тези схеми. Друг подход би бил да закупите USB интерфейсна схема или да я изградите от микроконтролер. Така или иначе, проектът ще изисква доста код на микроконтролер и драйвери (дори с помощта на вече съществуващите драйвери за човешки интерфейс или предварително изработен контролер). Избрах да реша този проблем със спасена USB клавиатура, тъй като те са сравнително евтини, и съдържат всичко, което е необходимо за три прости изхода за включване/изключване, под формата на номера, капачки и светодиоди за заключване на превъртане. Под Linux има редица механизми за превключване на вашите светодиоди от програма или команден ред (един дори е посочен в Cryptonomicon). Setled е най-простият и е предварително инсталиран на почти всички машини, ledd е изграден по модел клиент-сървър и дори има модул на езика за програмиране Ruby. Windows и Mac OS и други езици за програмиране трябва да имат сравними механизми - публикувайте ги в коментарите, ако знаете как да превключвате светодиодите на клавиатурата в други операционни системи или езици за програмиране! единичните тестове преминават, всички програмисти в новия му отдел могат да знаят какъв готин производител е сам.

Стъпка 1: Списък на частите

2 USB лава лампи (от Thinkgeek или froogle ~ 10 щ.д. всяка) 1 USB клавиатура (клавиатурата на Apple също би ви позволила да спасите два USB жака, което прави хакерството, изброено в стъпката "USB жак на бедния човек", ненужно) $ 0 за остъргната клавиатура с мъртъв ключ или два, до $ 4 онлайн (https://froogle.google.com/froogle?q=usb%20keyboard) до $ 30 при най-добра покупка) 2 релета за превключване на тръстиката (Radio Shack #275-233 $ 3,00, Mouser #677-OMR-112H $ 1,54) всички други електрически компоненти трябва да струват само няколко долара. 2 транзистора (като 2N2222) (Radio Shack #276-1617, Mouser #511-2N2222A) 2 резистора (Radio Shack #271-1124, Mouser #291-4.7k, жълто-виолетово-червено-златни ленти) 4 диода, нещо като 1N404 (Radio Shack #276-1103, Mouser #512-1N414B) 1 превключвател на захранването (SPST) малко тел 1 perfboard (Radio Shack #276-1395) 1 Altoids тенък картон, лист прозрачност/режийно фолио Инструменти: поялник и / или инструмент за увиване на тел и инструмент за окачване с кабел или ръчен инструмент и търпение пробиване и бита цифров мултицетен и зелен маркер за рязане Знания и умения: Основни познания за запояване и електроника. Силно препоръчвам книгата на Forest Mimm, ако сте начинаещ по електроника и бихте искали да знаете как работят схемите. Време: Този проект отне две вечери и един следобед, включително отстраняване на неизправности.

Стъпка 2: Изкормване на клавиатурата

Evisceration на клавиатурата
Evisceration на клавиатурата
Evisceration на клавиатурата
Evisceration на клавиатурата
Evisceration на клавиатурата
Evisceration на клавиатурата

Разглобете клавиатурата си възможно най -неразрушително. Клавиатурата, която лежах, беше мултимедийна USB клавиатура Dynex, номер на модел DX-MKB101. Когато разглобявате, внимавайте да не скъсате тънките проводници, които често се използват. Трябва да видите нещо като втората картина след отваряне на клавиатурата. Искате да спасите тялото на веригата и платката със светодиодите (често на една и съща платка) и да загубите обемистата клавиатура. Надяваме се, че можете да отделите тънкия пластмасов филм, който действа като превключвател на клавишите за клавиатурата, или по друг начин да отрежете превключвателите на клавиатурата, без да повредите главната верига. Трябваше да прорязвам малко пластмаса, за да освободя дъската, но след приключване трябва да можете да включите клавиатурата, да я разпознаете и да превключите голите светодиоди с друг, функционален клавиш за заключване на клавиатурата, включен в същия компютър. Можете да имате няколко клавиатури, USB и не, включени едновременно с повечето съвременни операционни системи и те ще задействат взаимно Caps Lock и други ключове за заключване. На този етап трябва да кажа, че е възможно да повредите или унищожите компютъра си, като включите голи вериги към него. Бъдете внимателни и продължете внимателно. Ако се притеснявате, тествайте с евтин USB хъб. От друга страна, опитах всякакви неща, докато отстранявах неизправности на тази верига, включително преосмисляне на вериги под напрежение, а лаптопът ми остава непържен.

Стъпка 3: USB щепсел на бедния човек

USB щепсел на бедния човек
USB щепсел на бедния човек
USB щепсел на бедния човек
USB щепсел на бедния човек

Не исках да унищожа USB щекерите на лава лампите, за да могат да се използват отделно и така, че контролерът на USB лава лампа да е модулен (други устройства могат да се използват включени и изключени вместо лампите). Ако разглобите ябълкова клавиатура в последната стъпка, ще имате два женски USB-A жака, които можете да използвате, и така можете да пропуснете тази стъпка. Можете също така да закупите женските USB-A жакове от мишката или да ги спасите от резервен USB хъб. Избрах обаче да отида с евтин и прост вариант - обикновен USB жак, направен от някаква раирана телена обвивка (всяка тънка жица би била достатъчна), малко перфорирана плоскост и малко хартия и прозрачно фолио за изолация. Просто изрежете малко перфорирана дъска, за да влезете вътре в USB щекерите, добавете проводник през отворите, така че поставянето на щепсела да не ги извади и да им позволи да се свържат с +5V и заземяващите конектори в щепсела (вижте изводите на " Направете верига "стъпка, за която коя връзка е). След това изрежете малко прозрачно фолио, което да покрие едната страна на дъската, така че перфорираният проводник да не се късо до металното тяло на щепсела. Забийте тази изолирана платка в USB щепсела и потвърдете с вашия мултицет, че проводниците имат добър контакт и не са къси. Ето как лавовите USB лампи са свързани към веригата. За този проект направете два от тези щекери на бедния човек главата до главата на един и същ бит на перфборда (вижте изображението). По време на стъпката на сглобяване ще видите как калъфът държи и двата USB щекера на този конектор.

Стъпка 4: Изрежете корпус и перфорирана дъска

Изрязване на корпус и перфорирана дъска
Изрязване на корпус и перфорирана дъска
Изрязване на корпус и перфорирана дъска
Изрязване на корпус и перфорирана дъска

Разберете оформлението на вашия проект в кутията му. Използвах все по-популярната калай Altoids. Пробийте дупка в задната част на калай Altoids за големия ключ за включване/изключване SPST, един отпред за USB кабела на клавиатурата и два отвора отстрани за щепселите на лава USB лампата. Нарежете прорезите за ключови отвори с колело за рязане на dremel или ръчен трион до предните и страничните отвори, така че USB кабелите да могат да се вместят (вижте снимката). Оформете дупки с тиксо, за да предотвратите разрязването на кабелите. Решете формата на вашата перфорирана дъска за вашата верига и изрежете тази форма с инструмент dremel. Това ще бъде доста стегнато…

Стъпка 5: Направете верига

Направете верига
Направете верига
Направете верига
Направете верига
Направете верига
Направете верига

Сърцето на този проект е просто използване на софтуер за превключване на светодиодите на клавиатурата и отвличане на светодиодите за превключване на по -големи токове. Тук трябва да спомена, че някои светодиоди се включват чрез прилагане на положително напрежение към анода, докато други вериги (като тази в тази клавиатура) издигат LED анода високо (така че светодиодът е изключен) и обвързват катода на светодиода с заземяване, когато е активиран (превключване надолу). Можете да промените тази схема, за да работи с двете, но аз ще схематизирам отрицателния метод за свързване. Изключеният светодиод (настроен високо) включва транзисторен превключвател, който затваря реле и накрая лава лампата се активира. Това означава, че софтуерният превключвател за лампата ще бъде обърнат от светодиода. Адаптирах схемата от windmeadow, но тя се основава на прост транзисторен превключвател, както е описано в повечето текстове по електроника (стр. 50 в книгата на Mimm или в wikipedia). Включих файл ktechlab, за да можете да видите как работи транзисторният превключвател и пълна схема (във формати svg и png). Не забравяйте да използвате оригиналната схема или svn файла за разпечатване, тъй като по -малките изображения не са ясни. Ще трябва да премахнете светодиодите от платката на клавиатурата и да определите полярността им и коя страна се превключва с мултицет. Прокарайте един проводник от всеки светодиод, който ще бъде включен в комутационна верига (те са означени като SCROLLLOCK и CAPSLOCK на схемата). Разкачете +5v и заземете от веригата на клавиатурата, за да осигурите захранване на перфборда, и след това пуснете проводници, за да върнете захранването към платката (това е +5V и основите на схемата). След това следвайте схемата, за да направите веригата, като използвате изводите на компонентите, за да идентифицирате връзките. Първо сглобете тази схема на макет и тествайте веригата. Това беше стъпката, при която установих, че светодиодите са издърпващи, а не падащи, и като цяло достигнаха точката на максимален хаос на работната ми маса. Когато веригата работи (може да се тества чрез натискане на клавиша Caps Lock или Scroll Lock и да се види дали лавовите лампи се превключват), разберете как да опаковате компонентите върху перфорираната дъска. Може да се използва телена обвивка, но най -простият метод за сглобяване е просто да прокарате компоненти през отвори, да увиете кабелите заедно и да ги запоите заедно. Проверете дали сглобената верига работи върху перфорираната дъска.

Стъпка 6: Оцветете USB лава лампи

Цветни USB лава лампи
Цветни USB лава лампи

Направете прозрачните лава USB лампи, оцветени, като оцветите петно от горния филм с червени или зелени маркери, след което изрежете кръг, който да поставите в основата на лампата между светлината и камерата "лава". Сглобете отново лава лампи.

Стъпка 7: Окончателно сглобяване

Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване
Окончателно сглобяване

Алтоидните кутии правят страхотни заграждения. Те са добри в екранирането, но за съжаление са проводници и ще съкратят незащитените вериги. За да предотвратите това, изрежете картона и прозрачното фолио до размера на калай и го поставете между платката на клавиатурата и вашата перфорирана дъска. Поставете превключвателя в задния отвор на кутията си. Поставете USB щепселите, свързани към USB конектора на бедния, в отворите на ключалката отстрани, така че калайът да държи щепселите в конектора. Натъпкайте в перфорирана и спасена клавиатурна верига, изолирайте с картон и прозрачно фолио. Опитайте се да затворите калайдата (нашата почти не се побира).

Стъпка 8: Код

Лавовите лампи ще се управляват чрез системни извиквания към програмата "setled", която ще включва и изключва Capslock и светодиодите за заключване на превъртане. Тествайте го, като стартирате следното от командния ред (възможно като root, в зависимост от вашата конфигурация), за да накарате лампите да мигат: setleds -L -caps +scroll < /dev /tty0; sleep 3s; setleds -L +caps -scroll < /dev /tty0; сън 3; setleds -L </dev/tty0 разбиване на това:#За да включите червената лампа: setleds -L -caps +превъртане </dev/tty0#, за да включите зелената лампа: setleds -L +caps -scroll </dev/ tty0#, за да се върнете в състоянието, в което светодиодите показват настройките на клавиатурата -L </dev/tty0 Можете да включите тези системни повиквания в собствената си програма или да използвате модула за проверка на единица phython, който Крис написа въз основа на изградената рамка за тестване на модулите PyUnit в python. Просто разопаковайте файловете от tar архива (tar -xzvf lava_unittest.tar.gz от конзола) и опитайте следните команди от конзолата: python lava_unittest.py test_lava_unittest-passpython lava_unittest.py test_lava_unittest-failorpython test_lava_unit fail.pyЗа да стартирате от терминални емулатори, декомментирайте предупредително маркираните редове и опитайте да го стартирате като root от терминален емулатор. С този код всичко, което трябва да направите, е да размените копия на "unittest" с "lava_unittest" в скриптове на Python единично тестване. Не е необходимо прекодиране.

Стъпка 9: Доста опаковка

Доста опаковка
Доста опаковка
Доста опаковка
Доста опаковка

За да завършите този проект, направете и отпечатайте свой собствен етикет или използвайте включеното изображение (отворете секонг изображението в пълен размер или xcf файла с gimp). Просто поставете върху капака на вашите невероятни лавови лампи с USB управление.

Препоръчано: