Мастер-класс по созданию 3D дисплея

10 сентября 2007

Семь вращающихся светодиодов создают иллюзию чисел.

 

Вид сверху                                         Вид сбоку

Как работают эти часы:Двигатель вращает «пропеллер», а микропроцессор фиксирует время и с определенной цикличностью меняет комбинации загорания семи светодиодов. Если посчитать количество светодиодов при вращении, может показаться, что их где-то от 7 до 30. Это иллюзия, но она весьма правдоподобна.Если хотите собрать такие часы, вам потребуется следующее:

  • Опыт обращения с двигателями и механическими устройствами
  • Сломанный видеомагнитофон, флоппи-диск или любое другое устройство, из которого можно взять двигатель и некоторые другие детали                                                                 
  • Программист, который создаст программу для микропроцессоров PIC16C84 или 16F84 (в данной статье уже есть коды программ).

Список деталей для часов-пропеллера

Конденсаторы:

  • C1, C2 – 33 пикофарада, керамический
  • C3, C6 — 0.1микрофарада, керамический
  • C4 – 47 микрофарада, электролитический
  • C5 — 47,000 микрофарада, конденсатор памяти

Диоды:

  • D1-D7 — светодиоды
  • D8-16 — 1N4001 выпрямитель 1А
  • Резисторы:R1 – переменное сопротивление на 120 Ом или семь резисторов общим объемом 120 Ом
  • R2-R6 – 10 кОм

Разное:

  • J1 – коннектор Берга на три клеммы
  • SW1-SW3 — переключатель
  • U1 — PIC16C84 с кодом mclock code
  • XTAL1 – кристалл 4MГц
  • Двигатель — Sharp RMOTV1007GEZZ

Часы располагаются на вращающейся макетной/монтажной плате, к которой подводится питание. У меня было много вариантов, как это сделать. Хотел даже использовать два двигателя для создания вращающегося трансформатора (вал одного был бы прикреплен к плате, второй вращал бы первый двигатель, вырабатывая при этом электричество) или токособирательные кольца. 

В результате я решил сделать иначе: выработать электричество путем вращения арматуры простого двигателя постоянного тока. Для того чтобы убрать из двигателя провода, я вынул подшипник с одного конца, оставив большое отверстие.

Внутри большинства маленьких двигателей постоянного тока есть три клеммы. Получается что-то вроде трехфазного переменного тока, который необходимо выпрямить до постоянного. Положительный побочный эффект: положение двигателя может быть определено при отражении одной из фаз в микропроцессоре.

Первый шаг: разбор двигателя. Найдите видеопроигрыватель, лучше Sharp или Samsung, с плоским мотором бабины. Тот, что нашел я, был маркирован JPA1B01, но по классификации Sharp это RMOTV1007GEZZ. Разберите его, но не трогайте щетки (в три имеющихся отверстия можно вставить скрепки и вытянуть щетки), заметьте, что в двигателе один шарикоподшипник и втулочный подшипник. Выбейте втулочный подшипник из корпуса и приклейте или припаяйте его к другому концу двигатель как продолжение шарикоподшипника. Вал двигателя придется немного подвинуть, чтобы с одного конца была необходимая длина, для этого зажмите его в тиски. Возьмите коннектор Берга с тремя проводами и припаяйте их к трем клеммам в арматуре двигателя. Приклейте распорку с короткой резьбой к концу вала, торчащему из отверстия, заново соберите двигатель (аккуратней с щетками).  Вы можете приклеить двигатель к головке видеомагнитофона, которая будет выполнять функцию базы весов. 

Второй шаг: строим цепь.Я использовал макетную плату (монтажную плату) и проволокой вручную скрепил цепь. Используйте гнездо с 18 контактами для 16C84, потому что запрограммировать его нужно до сборки цепи. Для семи резисторов ограниченного тока я использовал переменное сопротивление, потому что оно позволяет менять яркость светодиодов. Я установил 120 Ом. Вы можете использовать семь обычных резисторов, потому что 120 Ом – это неплохо, хотя это уже токовый пик для 16C84. Продумайте баланс вашей цепи, чтобы вам не пришлось добавлять противовес. Обращайтесь к моим фотографиям, можете заменять любую непонравившуюся вам деталь. Заметьте, что я использовал конденсатор на 47000 микрофарада (ионистор), он позволяет часам работать после выключения, поэтому вы можете установить время включения/выключения. Светодиоды получают электроэнергию отдельно. Не заменяйте керамический резонатор на 4-мегагерцевый кристалл, это часы, и они должны быть точными.

Третий шаг: программируем 16C84. Вам понадобится программирующее устройство для PIC16C84, более подробно о создании и работе с ним, можно прочитать ТУТ (файл 6). Программируйте его, обращаясь к файлу hex, сопровождающему этот документ.  Я включил исходный текст программы (.asm) для общей информации. Составляя программу для микросхемы, установите опции: сторожевой таймер (WDT) ВКЛ.

Четвертый шаг: сводим и отсчитываем время. Прикрутите монтажную плату к двигателю и подключите три коннектора. Подключите электропитание к двигателю. Предпочтительное напряжение – 6,2 вольт, но придерживайтесь диапазона от 5 до 7,5 вольт. Учтите, что напряжение цепи достигает 5 вольт, когда напряжение двигателя составляет 6,2 вольт, из-за потери в диодах. Часы в этом случае покажут 12:00. Если ваши часы не показывают время, возможно, в ионисторе было напряжение, когда вы подключили микросхему. Отключите часы и замкните крепления 5 и 4 (заземление) для сброса. Теперь, когда вы включите часы, они должны работать. Чтобы установить время, нужно нажать на кнопки определенное количество раз (часы, 10 минут, минуты). Если цифры появляются в обратном порядке, измените полярность двигателя, чтобы они вращались в обратную сторону. Вы можете изменить балансировку часов с помощью монтажной пены, так снизится вибрация.

Пятый шаг: корректировки. Если вы внимательно изучите исходный текст программы, вы заметите, что «частота расположения точек» устанавливается в зависимости от скорости двигателя, экран при этом выглядит широким при любой скорости. В том двигателе, что использовал я, щетки находятся под углом 90 градусов, делая два изображения за один оборот. Часы показывают время в две стороны с разницей в 180 градусов. Если бы вы расположили щетки на 180 градусов относительно друг друга, то экран был бы уже не двойным, а одинарным, и цифры были бы очень широкими. Вы захотите изменить программу в секции D_lookup_3. Регистр W при появлении call Delay влияет на ширину цифр. Вы можете установить period_calc value to Delay, с помощью rotating period_calc прямо в W (не забудьте сначала очистить признак переноса). Как здесь:

bcf STATUS,C

rrf period_calc,w

call Delay

Внимание: PIC16C84 устарел. Вы можете смело использовать PIC16F84 или PIC16F84A без изменений.

Внимание: видеомагнитофоны Sharp вышли из употребления. Используйте любой двигатель постоянного тока, лучше, если это будет 12-вольтный двигатель, так как при напряжении 6,2 вольт, скорость не будет слишком высокой.

Скачать:

mclock8.asm — код в формате Microchip MPASM.

mclock8.hex  — шестнадцатеричный код для скачивания в чип PIC16C84 или 16F84 chip.

mclksch2.gif  — большая и удобная для чтения схема

mclkmoto.gif — схема модификации двигателя

Использование двигателя IBM от 5,25« флоппи для часов-пропеллера

Многие из вас не смогут найти мотор бабины видеомагнитофона Sharp, который использовал я. Поэтому я нашел еще один вариант  и придумал, как его видоизменить, чтобы он подошел для часов. 

Вам нужно будет найти полноразмерный (13,34 см) дисковод Tandon, который использовался в оригинальных компьютерах IBM и его клонах. Другие производители делают похожие приводы, но Tandon делал лучшие с двигателями от Buehler. Это именно то, что нам нужно.

Этот двигатель вращается гораздо быстрее, чем Sharp. Мотор от Sharp делает около 1800 об/мин при 6,5 вольтах, а этот — 3000 об/мин. Возможно, вы захотите замедлить вращение и снизите напряжение до 4,5 -5 вольтов. Как результат снизится яркость изображения (помните, что часы используют напряжение на 1,25 вольт меньше, чем  двигатель). Используйте самые яркие светодиоды и  резисторы на 47 Ом вместо 120 Ом.

типичный полноразмерный привод Tandon

двигатель Buehler

двигатель после разборки. Щеточный узел состоит из двух щеточек и двух маленьких пружин. Возможно, вам будет сподручней разобрать двигатель внутри полиэтиленового пакета.

генератор частоты разбирать не нужно.

Разберите оставшийся привод, особенно тарелку диска и маховое колесо. Сохраните фланцевый подшипник. Его наружный диаметр равен 1,58 см,  внутренний – 0,64 см.сделайте отверстие диаметром 1,58 см в заглушке (а не щеточном узле). Ступенчатое сверло отлично справится с этой задачей. 

Найдите прокладку с круглой резьбой диаметром 0,64 см. Диск в этом не поможет. Возможно, вас смутит главный вал тарелки диска, и вы захотите взять его, не нужно этого делать. Вал может оказаться жестче, чем ножовочное полотно, поэтому лучше не рисковать. Прокладка снизу к концу сужается. Вообще-то такого быть не должно, но это единственное, что подошло по размерам. 

Заглушка после просверливания, подшипник, прокладка и ступенчатое сверло.

Используйте пилу, чтобы прорезать три выемки в прокладке. Выемки должны идти по всей толщине прокладки и быть достаточно большими, чтобы вместить изолированный провод.  Это увеличенная фотография прокладки.

Сточите конец вала двигателя, оставляя  0,5 см. поаккуратней с ножовкой, не сломайте ее.

Приклейте прокладку к валу двигателя, оставьте сохнуть. Я использовал  "Automotive Goop", не хуже склеится и с "J.B. Weld" или эпоксидной смолой. До склеивания не забудьте обработать все детали спиртом.

Вам понадобится три маленьких изолированных провода с коннекторами Берга на конце. У жесткого диска слишком толстые провода, они не пролезут в сделанные прорези. Коаксиальные провода подойдут, если вы снимите изоляцию и экранирование. Проденьте провода через шароподшипник, опорный фланец должен быть внутри двигателя.

Припаяйте провода к клеммам на коммутаторе двигателя. У коммутатора семь клемм, провода только три, симметрии не получается. Лучше будет, если два провода будут припаяны к смежным клеммам, третий – к противоположной им. Не заденьте провода двигателя.

Приклейте провода к двигателю, помещая их в свободные участки между отделами ротора и привязывая их ниткой или зубной нитью. 

Начните сборку двигателя с щеточного узла.  Щетки двигателя необходимо установить правильно, изогнутые концы к центру, скошенные к пружинам. Нарезка щеток должна быть видна по мере сборки узла. Чтобы не потерять мелкие детали, собирайте двигатель в полиэтиленовом пакете. 

собранный двигателя имеет Вал с нарезкой для крепления часов-пропеллера, и трехпроводной коннектор, который вращается с двигателем для прикрепления контура часов.

Если вы используете двигатель жесткого диска или любой другой двигатель постоянного тока, щетки которого расположены под углом 180 градусов относительного друг друга, вам пригодится измененный код:

Скачать:

mclockt3.asm Исходный текст программы.

mclockt3.hex Шестнадцатеричный код для чипа.

Если у вас нет возможности ввести программу в чип PIC 16C84 или 16F84, вы можете  самостоятельно его изготовить programmer /http://www.bobblick.com/techref/projects/picprog/picprog.html /.

Часто задаваемые вопросы:

В:    Что такое конденсатор .047 FARAD??
О:    Их можно найти практически везде, в том числе и среди конденсаторов памяти у Jameco Electronics http://www.jameco.com/cgi- bin/ncommerce3/ExecMacro/Jameco/searchResult.d2w/report?sort=&search=142922
      
В:    Что такое коннектор Берга?
О:    А что такое Клинекс? 🙂 печатная плата программируемого контроллера иногда называется «монтажная плата». Светики и кнопки, закрепленные к материнским платам при помощи подобных плат. Крепления квадратные по 0,06 см, с расстоянием между центрами 0.25 см. Гнездовая деталь с внутренней резьбой состоит из изогнутых клемм в пластмассовом корпусе. Пример на http://www.jameco.com/cgi-bin/ncommerce3/ExecMacro/Jameco/searchResult.d2w/report?sort=&search=103376
      
В:    Я видел нечто подобное, но больших размеров в одном из магазинов. Вы видели?
О:    Да, я встречал немало часов с эффектом «инертности зрительного восприятия». Свои часы я сделал в 1996, поэтому все остальные просто скопировали мои часы. 🙂
      
В:    У двигателя головки видеопроигрывателя много проводов. Какие именно мне пригодятся?
О:    Я не использовал двигатель головки, я использовал мотор бобины. У него всего два провода и работает он от постоянного тока. 

Комментарии
  • Аноним says: 15.12.2009 в 18:25

    Крайне непонятная статьья, тому кто сможет делать сей девайс по этому руководству надо дать нобелевскую премию

  • Аноним says: 02.06.2010 в 00:21

    Ахаха) я сделал, подгоните Нобелевскую? Все предельно просто, напишите в поиске «часы Боба Блика» и поймете все.

  • Аноним says: 10.12.2011 в 07:21

    а возможно часы изменить на текст прошивкой? чтоб заместо часов была надпись типа «привет» или что то похожее.

  • Аноним says: 24.01.2012 в 15:51

    каешн еба.

Добавить комментарий