Съдържание:

01//atch: 12 стъпки
01//atch: 12 стъпки

Видео: 01//atch: 12 стъпки

Видео: 01//atch: 12 стъпки
Видео: 12 Стъпки за Зависимите от Алкохол, Наркотици, Преяждане, Компулсии и Разрушителни Навици (12 АА) 2024, Ноември
Anonim
01/\/atch
01/\/atch
01/\/atch
01/\/atch
01/\/atch
01/\/atch

01/\/atch, защото … "в света има 10 типа хора, тези, които четат двоични файлове, и тези, които не го четат" - линия с маркер slashdot. 01/\/atch е двоичен часовник за китка с LED дисплей. Допълнителните функции са достъпни чрез превъртаща се система от менюта на неговата 3x4 LED матрица. Текущите характеристики включват: измервател на напрежение, двоичен брояч, клуб режим и показване на времето. Часовникът е напълно програмируем. Бъдещите надстройки на фърмуера ще включват: хронометър/таймер, аларма, скоростомер/одометър за велосипеди, регистриране на данни и меню за разширена конфигурация. Вижте го в действие: https://www.youtube.com/embed/l_tApl3JmmMA Всички файлове на проекта са в.zip архива на тази страница. Схеми и печатни платки във формат Cadsoft Eagle. Фърмуер в mikroBasic. Текстът на тази инструкция е включен като.odt (OO.org/open text) и.pdf файлове. PCB изкуството от най-висок слой (огледално) е включено като. PDF готов за трансфер на тонер или фото процес. Копира се няколко пъти на един лист, защото трябва да удвоя на прозрачните фолиа. /ex/i/47F2F12223BA1029BC6B001143E7E506 Това също е половин стъпка към часовник nixie с повърхностен монтаж, върху който работя. Проектът 01/\/atch е въведение в компонентите за повърхностно монтиране и логика на задържане на времето без допълнителна сложност на захранването с никси тръба. (https://www.instructables.com/ex/i/2C2A7DA625911029BC6B001143E7E506/?ALLSTEPS) Малко гугълче пусна този двоичен часовник в thinkgeek: https://www.thinkgeek.com/gadgets/watches/6a17/The 01/ \/atch се основава на PIC16F913/6. Този PIC първоначално беше избран, защото имаше хардуерен LCD драйвер. Мислех, че мога да превърна LCD драйвера в LED мултиплексор с няколко транзистора. Оказа се, че не е така. Все още е добър избор, защото има много място за програмиране и много малко ограничени входно -изходни щифтове. F913 е около $ 2,00 в Mouser. PIC16F913 Подробности: https://www.microchip.com/stellent/idcplg? IdcService = SS_GET_PAGE & nodeId = 1335 & dDocName = en020199PIC16F916 Подробности (същото като 913, с повече място в програмата): https://: microchip.com/stellent/idcplg? от файловете на Eagle Board с Eagle3D и POV лъч: https://www.matwei.de/doku.php? id = bg: eagle3d: eagle3d

Стъпка 1: Показване

Дисплей
Дисплей
Дисплей
Дисплей
Дисплей
Дисплей

Двоичният дисплей е направен от 12 светодиода в матрица 3х4. Всяка колона от четири светодиода представлява четирибитово „хапване“или половин байт. Всяка колона може да показва 0-15 в двоичен формат (1+2+4+8 = 15). Времето се показва в трите реда като часове/десетки минути/минути. Това не е истински двоичен, а опростен подмножество, което прави часовника по -лесен за четене. Часовникът thinkgeek например използва „по -истински“двоичен код за представяне на минути с цял байт. Каквото и да предпочета, истинският маниак ще показва времето, използвайки епохата на Unix, в двоичен формат! (https://en.wikipedia.org/wiki/Unix_timestamp) LED мултиплексът е ясен. Редове (4) се свързват към щифтове на PIC чрез ограничители на тока. За всеки ред се използва само един ограничаващ тока резистор, тъй като винаги свети само един светодиод на ред. Светодиодите работят при 20ma, използвайки 56 ома резистори (56ohm при 3 волта = 20ma). Светодиодите могат да работят по -високо, защото са мултиплексирани, в листа с данни е посочено нещо около 40ma. Намирам ги за твърде ярки само при 20ma-мултиплексирани. Колоните (3) са свързани към земята от NPN транзистори. Транзисторите се превключват от PIC щифтове през 1Kohm резистори. Мултиплексът функционира чрез заземяване на колона от светодиоди през транзистора, като същевременно осветява правилните LED редове за тази колона. Това се повтаря за всяка колона в кратка последователност, което прави матрицата непрекъснато осветена. PIC Timer0 управлява мултиплекса. Той брои до 256, след което променя стойностите на реда и заземената колона. Транзистор: NPN транзистор, NPN/ 32V/ 100mA, (Mouser #512-BCW60D $ 0,05).

Стъпка 2: Избор на LED

Избор на LED
Избор на LED
Избор на LED
Избор на LED

На този часовник бяха използвани жълти и червени светодиоди с размер "1206" с резистор за ограничаване на тока 56 ома. Цветовете са избрани за ниска цена. Червените, жълтите и оранжевите светодиоди са около 10 цента всеки, докато сините светодиоди са 40 цента и повече. Освен това LED синьото вече определено не е охладено. Ако откриете лилаво, кажете ми.

Снимката показва 5 -те типа LED, които бях на прослушване. Mouser Part # Производител Цвят Цена 859-LTST-C171KRKT Lite-On SMT LED Червен, прозрачен $ 0,130 859-LTST-C171KSKT Lite-On SMT LED жълт, прозрачен $ 0,130 859-LTST-C150KFKT Lite-On SMT LED оранжев, прозрачен $ 0,130 638- 121SURCS530A28 Everlight LED SMD Red Water Clear $ 0,110 638-1121UYCS530A28 LED Everlight SMD Yellow Water Clear $ 0,110 Everlight червено и жълто бяха използвани за прототипния часовник. Харесвам Lite-On червено и оранжево повече, те ще бъдат използвани при следващия часовник, който направя.

Стъпка 3: Интерфейс/Бутони

Интерфейс/Бутони
Интерфейс/Бутони

Шантавият часовник се нуждае от призрачен интерфейс. Капацитивните сензори за докосване са ярост в момента, но изискват доста допълнителни компоненти. Вместо това отидох със сензорен сензор, базиран на транзистор на Дарлингтън, с контактни заглавки като контактна точка. Какво по -странно от пин заглавие? Нищо. За първи път видях идеята тук: (https://www.kpsec.freeuk.com/trancirc.htm):" Двойката от Дарлингтън е достатъчно чувствителна, за да реагира на малкия ток, преминаващ през кожата ви, и може да се използва за направете превключвател с докосване, както е показано на диаграмата. За тази схема, която само осветява светодиод, двата транзистора могат да бъдат всякакви транзистори с ниска мощност с общо предназначение. 100-омният резистор защитава транзисторите, ако контактите са свързани с парче тел. "A PNP транзисторът е добавен към този прост дизайн (на мястото на светодиода в диаграмата), така че да може да даде висок/нисък изход на PIC. Между PIN щифта и земята е добавен издърпващ резистор, за да се предотврати фалшиво натискане на бутони. Този превключвател е в твърдо състояние, водоустойчив и с ниска мощност - с добавената гъвкавост на заглавките на щифтовете. Когато е натиснат превключвател, Timer2 (8 -битов таймер) се стартира с 16 предсказващи и 16 постскалер. При включване на Таймер 2 прекъснете PIC проверките, за да видите дали бутоните все още са натиснати. След две последователни прекъсвания без натиснати бутони таймерът се спира и бутоните се конфигурират за по -нататъшно въвеждане. Горният превключвател е свързан към PIC прекъсващия щифт. Въвеждането на този щифт може да изведе PIC от режим на заспиване. Това ни позволява да използваме чиста техника за управление на захранването: PIC е в режим на ниска мощност, когато дисплеят не се използва. Въвеждането на бутоните събужда PIC и възобновява работата. Транзистори: Darlington Transistor, SOT-23, (Mouser #512-MMBT6427, $ 0.07). PNP транзистор, SOT-23, (Mouser #512-BCW89, $ 0.06).

Стъпка 4: Запазване на времето

Запазване на времето
Запазване на времето

Бележка 582 на приложението Microchip описва основните принципи на часовника с ниска мощност, базиран на PIC. (Http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011057) Часовникът е прост и елегантен. Часовник с кристал 32.768kHz е свързан към щифтовете осцилатор timer1 на PIC. Timer1 е чудесен за това, защото може да се увеличи дори докато PIC спи. Таймер 1 е настроен да брои до 65536 (2 секунди при 32.768kHz) и да събуди PIC от режим на заспиване с прекъсване. Когато PIC се събуди, той увеличава времето с две секунди. PIC е само активен и консумира енергия за кратко на всеки няколко секунди. Използвах евтин кварцов часовник кристал от Citizen. Мислех, че името Citizen може да даде легитимност на часовника ми. CFS206 (12.5pf) има точност от около +/- 1.7 минути годишно (20ppm). Два 33pF кондензатора допълват външната кристална верига. 33pF вероятно е малко, но беше наличен на местно ниво на разумна цена. По-добър кристал може да се използва за по-точно време.

Стъпка 5: Измервател на напрежение

Измервател на напрежение
Измервател на напрежение

Сякаш не сме потънали в дълбините на джийкъри с двоичен часовник, ние пляскаме референтното напрежение и входния щифт, за да направим измервател на напрежение. Референцията за напрежение е Microchip MCP1525. Това е 2,5 волта справка с работен обхват от 2,7 до 10+ волта. В показания часовник се използва пакетът TO-92, въпреки че бъдещите часовници ще използват версията за повърхностен монтаж (SOT-23). Референцията се захранва от PIC щифт, така че може да бъде изключена, за да се пести енергия. В този момент можем да измерваме до 2,5 волта, използвайки аналоговия цифров преобразувател на PIC. Правим още една крачка напред и добавяме резисторен делител на напрежение към входа на мултицета. Използвайки два резистора (100K/10K), разделяме входното напрежение на 11, давайки нов входен диапазон от ~ 30 волта. Това е добра точка, която обхваща всички ниски напрежения, които е вероятно да срещнем (батерии от 1,2/1,5 волта, 3 волтови монети, 5 волта логика, 9 волтови батерии и 12 волта захранващи релси). Резистор от 22Kohm може да бъде заменен с 10K резистор, даващ по -малък обхват, но по -висока разделителна способност. Електронната таблица, включена в тази инструкция, може да ви помогне да изберете стойности на резистора. Земята и измервателните сонди се свързват към заглавката за програмиране в задната част на часовника. MCP1525 Подробности: https://www.microchip.com/stellent/idcplgidcplg? IdcService = SS_GET_PAGE & nodeId = 1335 & dDocName = en019700

Стъпка 6: Програмиране на заглавка/Външни връзки

Програмираща заглавка/Външни връзки
Програмираща заглавка/Външни връзки
Програмираща заглавка/Външни връзки
Програмираща заглавка/Външни връзки

Часовникът е „програмируем“. ICSP заглавка се извежда отзад, за да може да се инсталира нов фърмуер. Заглавката е ред от нископрофилни гнезда за жени, които намерих в местния магазин за електроника. Същото може да се постигне, като се намали наполовина дългият качествен DIP гнездо. Свързвам моя ICSP щепсел с "сменител на пола" на pin-header-поставете парче pin-header в гнездото, след което свържете ICSP щепсела към pin заглавието. Ще ви е необходим ICSP програмист, за да поставите нов софтуер в часовника. Един прост JDM2 ICSP програмист е включен във файловете на Cadsoft Eagle.

Когато не се използва за програмиране, заглавката на ICSP може да се използва за събиране на данни, регистриране на събития и др. Всички ICP пинове са достъпни за използване, както е отбелязано в таблицата по -долу. Щифтът на измервателя на напрежение (щифт 1/6) е доста предназначен за тази употреба поради делителя на напрежението. Мултицет - ADC, I/O, с резисторен делител. (PIN2, PORTA0/AN0) MCLR - само входен извод. Вход за задействане на Шмит за шумни сигнали. (PIN1, RE3) Vcc - +3 волта Vss - заземен щифт Данни - вход/изход с прекъсване при смяна, по избор слабо издърпване (PIN27, RB6), опция слабо издърпване (PIN28, RB7)

Стъпка 7: Фърмуер

Фърмуер
Фърмуер

Фърмуерът е написан с помощта на безплатната версия на mikroBasic. Текущият фърмуер е v0.1. Бъдещите фърмуери вероятно ще бъдат написани на C. Опциите за конфигуриране са зададени във фърмуера. Те трябва да бъдат както следва: MCLR - DISABLEDBODEN/BOREN - DISABLEDWDT - DISABLEDOscillator -Вътрешен Osc, БЕЗ часовник. //www.qsl.net/dl4yhf/winpicpr.html).v0.1Configuration/Menu System - Опциите на менюто се придвижват през дисплея и се избират/разширяват с помощта на двата бутона за въвеждане. Време - показва времето в двоичен формат (по подразбиране при натискане на бутон). Клик - брояч. Понякога се оказвам, че изпълнявам броене. Броят на трафика, броят на птиците и каквото и да е. 01/\/atch подводници като двоичен брояч. Клубен режим - Реалната стойност на всеки часовник се определя от неговия „клубен“режим. 01/\/atch използва генератор на произволни числа, за да мига шаблони на LED дисплея. Възможно е също така да се включат фрагменти от думи с помощта на вътрешната библиотека с матрични шрифтове (предстои още). Скоростта може да се регулира с бутон 1. Крайният пакет за надграждане на клуба ще включва температурен сензор, който контролира скоростта на промяна на модела. С нагряване на потребителя моделите се променят по -бързо. Volt - измервател на напрежение. Понастоящем показва необработеното отчитане на ADC в 10 бита. Ще бъде надграден до действителната стойност на волта в v0.2. Set - Задаване на време. Exit - Изход от менюто, поставяне на PIC в режим на заспиване.

Стъпка 8: Система за превъртане на меню

Система за превъртане на меню
Система за превъртане на меню

Достъп до функциите на менюто за превъртане се осъществява чрез системата за превъртане на менюто. Елементите от менюто се зареждат като растерни карти в масив и непрекъснато се превъртат „нагоре“. Скролирането се основава на кратно на драйвера за мултимедия на Timer0. Скролиращото меню "изтича", използвайки кратно на Timer1 (брояч на секунди) след около 10 секунди. 'опция от менюто по подразбиране. Докоснете бутон 2, за да влезете в зададения режим. Ще се покаже текущото време (12:11). Използвайте бутон 1, за да увеличите часовете, докоснете бутон 2, за да преминете към следващата единица за време (часове, 10 минути, минути). Докоснете бутон 2 след като минутите са настроени, за да спестите времето и да се върнете в превъртащото се меню. За да спестите енергия, дисплеят и PIC обикновено са изключени. Докоснете бутон 1, за да събудите PIC и да покажете текущото време за 10 секунди. Докоснете бутон 2, докато се показва времето за достъп до системата за превъртане на менюто. Функциите на часовника са достъпни чрез превъртащото се меню. Докоснете бутон 1, за да преминете към следващия елемент от менюто, докоснете бутон 2, за да изберете елемент от менюто. Вижте го в действие: https://www.youtube.com/embed/l_tApl3JmmM Функциите на бутоните за всяка опция от менюто са очертани в таблицата По-долу. B1 и B2 са съкращения на бутон 1 и бутон 2.

Стъпка 9: Пътна карта на фърмуера

Пътна карта на фърмуера
Пътна карта на фърмуера

v0.2

Потвърждение за изход/диалогов прозорец. Настройка-Разширете опциите за настройка, за да включите: Продължителност на включване/изчакване на менюто (и винаги включен режим). Яркост (работен цикъл). Скорост на превъртане. Надстройка на шрифта на менюто -'E 'и' B 'изглеждат много зле, използвайте' e ',' b '. Преминете към 1Mhz или 32.768khz осцилатор (4MHz в v0.1). v0.3 Хронометър (нарастване на времето напред) -Започва да брои секунди, след това увеличава минути и часове след ограничението на дисплея 15:59. Таймер/аларма (нарастване на времето назад) -Таймер за деинкрементиране, всички светодиоди мигат, когато таймерът достигне 0. EEPROM (записване на стойности във флаш паметта) -Запазване на напрежения, броене, опции, хронометър и т.н., за да мига EEPROM паметта. -Логов брой дни от смяната на батерията. Също така: брой часове с включен дисплей. v0.4 Външни хардуерни функции (използвайки заглавка на ICSP): Регистриране на събития при прекъсване. Велоодометър/скоростомер. Регулируем дисплей на единица (двоичен или десетичен шрифт).

Стъпка 10: ПХБ

Печатни платки
Печатни платки
Печатни платки
Печатни платки
Печатни платки
Печатни платки

ПХБ и веригата са във формат орел. Включих и куп библиотеки, които използвах, за да направя дъската, която може да е необходима.

Печатната платка е проектирана с предимно компоненти за повърхностно монтиране. Дъската е направена с мастилено -струйни прозрачни фолио върху фото позитивна дъска. Това беше първата ми дъска за повърхностен монтаж (както ецване, така и монтаж). Направих едностранна дъска и използвах джъмперни проводници за следи от долния слой. Дъската е направена с оглед на Olimex, така че техният файл за проверка на правилата от 10 милиони е използван при проектирането на дъската. Нищо не е ужасно малко, но със сигурност е предизвикателство. Всичко беше споено на ръка с ютия от 10 евро, лепенка и ярка светлина. Лупа не беше необходима. Кристалът е оставен като компонент за повърхностно монтиране. Металната кутия е отличителен изглеждащ елемент и много по-разпознаваем от черна кутия с повърхностен монтаж. Прототипът на снимката също използва еталон за напрежение TO-92-крайната печатна платка показва версия на SOT-23, която (все още) нямах под ръка, когато направих платката. Схема и печатни платки са в архива на проекта (формат Cadsoft Eagle - безплатна версия www.cadsoft.de). Разположението на компонентите може да се види във файла с печатни платки. Направих и PDF с огледален горен слой и копирах няколко пъти. Това трябва да е готово за трансфер на тонер или снимка. Списък с части (през отвор) 32.768kHz Гледайте кристал (метална кутия 0206) Пин заглавие -x4 Заглавие за програмиране - 6 пина Списък с части (повърхностен монтаж) SO -300 PIC16F1206 0.1uF кондензатор 1206 33pf кондензатори - x2 1206 LED (жълт, червен, оранжев и др.) -x12 1206 Резистор - 4x56 ома 1206 Резистор - 3x1Kohm 1206 Резистор - 3x10Kohm 1206 Резистор - 3x100Koh SOT -23 NPN транзистор (100ma или повече) SOT -23 PNP транзистор (общо предназначение) SOT -23 NPN Darlington транзистор, hfe на ~ 10000) SOT-23 MCP1525 Референтно напрежение (2.5 волта) Батерия CR2032 3v литиева

Стъпка 11: Поставяне на часовника

Поставяне на часовника
Поставяне на часовника
Поставяне на часовника
Поставяне на часовника
Поставяне на часовника
Поставяне на часовника

За да направите часовника подходящ за ежедневна употреба, се нуждаете от калъф. Посетих AFF Materials (https://www.aff-materials.com/), за да си купя полиестерна смола. Един хубав човек там предложи вместо това да използвам чист епоксид. Според него полиестерната смола се свива ~ 5%, което може да разруши връзките на печатната платка. Прозрачният епоксид се свива само с 2%. Той също така предположи, че газовете от полиестера могат да повредят компонентите, докато се втвърдяват. Никога преди не съм работил с бистра епоксидна смола, направих някои тестови отливки. Започнах, като хвърлих някои проби в тава за кубчета лед. Слънчогледовото масло, силиконовата смазка и силиконовата смазка за велосипеди бяха тествани като отделящи агенти. Една проба беше направена без освобождаващ агент. Силиконовите смазочни материали се нанасят в дъното на формата и оставят следи от епоксидна смола. Контролният смуче до дъното на формата. Маслото работеше доста добре, но остави лек остатък в епоксидната смола. След това трябваше да знам как да направя многослойно леене с този материал. Полиестерна смола обикновено се излива на слоеве. Първият слой се оставя да се втвърди (около 15 минути) към гел. На първия слой се поставя обект, а отгоре се излива втори слой прясна смола. Работното време на моя епоксид е около 60 минути. Изсипах първи слой и го проверих след 30 минути - все още мек. След около 1 час и 15 минути първият слой се стегна достатъчно, за да постави обект върху него. За този тест сложих LED тестовата платка, видяна в стъпка 2, с лицето надолу върху първия слой и покрита със слой прясна епоксидна смола. Това работи чудесно, светодиодите не изскачаха от платката. Тук стигнах до заключението, че при липса на подходяща форма, най -ясната повърхност, която мога да направя, е интерфейсът въздух/епоксидна смола. „Горната част“на кастинга има значителна грешка. Грешката е ограничена до самия ръб на корпуса и лесно се отстранява с мелница. За първия истински тест имах нужда от правоъгълна пластмасова форма. Най -добрият вариант, който открих, беше контейнер „smeer kaas“. Не беше перфектен, затова го направих по-малък с няколко слоя лента, обвита с лента. Това не беше звездна форма, но изборът на горната част като повърхността на дисплея ми даде малко свобода на действие. Формата беше леко избърсана с масло върху хартиена кърпа. Отхвърлих процедурата за многослойно изливане отгоре. Запоявах проводници от държача на батерията с монетни клетки към печатната платка. Държачът на клетката беше горещо залепен (добре, залепен с лепка) към дъното на печатната платка. Поставката на батерията беше пълна с лепкави ленти, а заглавката за програмиране е защитена с още повече лепкава лепка (пластилинът също ще работи чудесно). След това това беше поставено, с лицето нагоре, във формата. Стикерът, който предпазва батерията и заглавката, беше притиснат здраво в дъното на формата, закрепвайки часовника на място. Чист епоксид се излива във формата, докато покрие часовника. Щифтовете са все още доста дълги, но могат да се режат след изсъхване на епоксидната смола. Часовникът се освобождава от формата след около 36 часа. Защитната замазка се отстранява с отвертка. Ръбовете бяха загладени с мелница за пробиване. Часовникът беше излят малко голям, за да се носи като ръчен часовник. Може да се опитам да го намаля, ако намеря лентов трион. Засега това ще бъде джобен часовник. Лентата върху пяна придава студена текстура и ултра бистра повърхност. Следващия път ще се опитам да направя цялата матрица, използвайки този материал, нещо по -близко до размера на ръчния часовник.

Стъпка 12: Допълнителни подобрения

Допълнителни подобрения
Допълнителни подобрения

В допълнение към актуализациите на софтуера, очертани в пътната карта, има няколко области за подобрение.

Хардуер 4x5 матрица от 0805 светодиоди ще заема същото място като съществуващия масив 1206. Купих няколко вида светодиоди 0805, за да опитам в бъдещите дизайни. Споменатият по-горе температурен сензор може да бъде добавен, за да направи усъвършенстван пакет за ъпгрейд на „клубния режим“. Печатната платка е проектирана за производство от Olimex като двустранна дъска (~ 33 долара). Те работят директно от Eagle файлове и панелизират (правят няколко по -малки дъски от една голяма дъска) безплатно. Не съм правил това, но бих си купил такъв, ако някой друг ги е направил. Софтуер На PIC има много допълнително място. Предвижда се скоростомер/одометър. Може да се добавят игри.

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