Светоэффект вращения - Статьи :: Международный Электротехнический Журнал Электрик
Рубрика

Инженерные решения

4399
Светоэффект вращения


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


два вида наиболее распространенных световых эффектов вращения

 

Дизайн конструкции придуман давно. Например, на железнодорожном вокзале в г. Харькове установлено вращающееся информационное табло. На рис.1 показаны два вида наиболее распространенных световых эффектов вращения: светоэффект вращения Юла и вращения штанги со стойкой светодиодов.


дизайн конструкции светового вращения

 

Автор собрал небольшую комнатную настольную модель (см. фото вначале статьи), отличающуюся простотой по сравнению с конструкциями зарубежных радиолюбителей [1]. Такая модель может использоваться в виде рекламы или украшения в центре праздничного стола и т.д. Основная отличительная особенность в том, что двигатель конструкции находится в том же механическом узле, что и плата управления, блок питания и светодиоды. Это позволяет отказаться от скользящих контактов, передающих питание схеме управления, и тем самым упростить механический узел и повысить надежность и энергонезависимость схемы. Все механические детали и двигатель заимствованы от старого CD-R-привода для оптических дисков. На рис.2 показан дизайн конструкции. На рис.2 обозначены:

1 – стопорные ограничители выключателя питания;
2 – корпус батарейного отсека;
3 – батареи питания типоразмера ААА;
4 – двигатель вращения;
5 – основание конструкции;
6 – магнит;
7 – датчик Холла;
8 – светодиодная линейка;
9 – плата управления;
10 – колпачок выключателя питания.

Как обеспечить светоэффект?

Чтобы при вращении светодиоды зажигались в фиксированных местах, необходимо задать частоту вывода кода на линейку светодиодов и синхронизировать ее с вращением конструкции. Для синхронизации конструкции используется стартовый импульс от датчика Холла. В течение первых нескольких оборотов МК рассчитывает скорость вращения и делит на сегменты дугу окружности. В окружности используется 1/3 сегмента для вывода информации (рис.3). Сегмент делится на 5 букв по 5 отрезков.


Обеспечение светоэффекта

 

В данном случае высвечивается слово «РАДИО». Для написания слова «РАДИО» в каждой букве 4 отрезка засвечиваются, а 5-й не засвечивается. Тем самым буквы имеют промежуток друг между другом. Буква построена по высоте из семи светодиодов, при вращении светодиоды засвечиваются в определенной последовательности, так получим букву и слово (рис.3).

Структурная схема

Структурная схема показана на рис.4. Схема запитана от батарейного блока питания 4,5 В. Нестабилизированное напряжение питает МК tiny26. Напряжение 4,5 В также подается на стабилизатор 3,6 В, который питает переменный резистор R. Start-импульс формирует датчик hall при вращении конструкции. Магнит находится на дуге, по которой двигается датчик hall. Формируемый импульс попадает на МК, где стартует программа вывода кода на светодиоды. Временные отрезки, между выводом кода, получаются путем деления времени полного оборота конструкции на три сегмента по 23 отрезка. То есть время полного оборота делится на 69 отрезков. Для засветки используется только один сегмент дуги. Для обеспечения ручного управления, от полученных данных после деления, вычитается код АЦП. На АЦП подается напряжение с переменного резистора R и с источника опорного напряжения. Для стабильности отсчета напряжения используется внутренний опорный источник напряжения МК. АЦП формирует код пропорциональный входному напряжению на переменном резисторе R. Вычитая от времени отрезка код АЦП, есть возможность уменьшать длину букв. После арифметических преобразований и получения данных о временных отрезках, в порт ввода-вывода подается код для засветки светодиодов. Так как выходной ток МК недостаточен для управления светодиодами, то на выходе МК установлены транзисторы усилителей тока Q1–Q7, через которые и протекает ток светодиодов LED1–LED7.



 

Принципиальная схема устройства

Принципиальная схема устройства показана на рис.5 (см. прикрепленные данные). Питание схемы поступает от батарейного отсека на контакты JP1, JP2 через выключатель S1. Питание двигателя вращения берется с контактов JP3, JP4. Нестабилизированное напряжение +4,5 В питает схему управления на МК и выходной каскад на транзисторах Q1–Q7. Задающий генератор МК стабилизирован кварцевым резонатором Q8 на 4 МГц. При включении питания МК устанавливается в начальное состояние сигналом сброса, формируемого цепочкой R8C5. В начале программы МК выполняет пустой цикл в ожидании стартового импульса. Одновременно, при подаче питания, включается двигатель вращения. Во время вращения отсчет стартового импульса осуществляется датчиком Холла IC2. Датчик Холла реагирует на магнитное поле магнита, установленного в основании конструкции. Выходной каскад датчика Холла содержит транзистор с открытым коллектором. В качестве нагрузки выходного транзистора датчика Холла используется подтягивающий резистор порта МК. Но если сигнал от датчика будет плохо восприниматься входом МК, необходимо дополнить схему резистором R* номиналом 950 Ом.

При прохождении, во время вращения, магнитного поля магнита формируется импульс, который попадает на вход INT0 (PB6) МК. При его поступлении в МК стартует программа по внешнему прерыванию. Программа обрабатывается МК, после чего выдается кодированный сигнал в порт А. С порта А МК выполняется управление ключами на транзисторах Q1–Q7, которые коммутируют светодиоды LED1–LED7. Время засветки светодиодов автоматически рассчитывается МК с помощью встроенных таймеров. Для ручного управления временем засветки используется переменный резистор Р1. Чтобы получить стабильные данные напряжения с Р1, необходима стабилизация питания. Стабилизацию питания Р1 выполняет стабилизатор на элементах С1, R9, D1, C2. В результате стабильное напряжение с Р1 поступают на вход АЦП МК, что позволяет оперативно изменять длину слова.

Блок-схема программы

Блок-схема программы показана на рис.6 (см. прикрепленные данные). Как ранее отмечено, для полноценной работы светоэффекта необходима синхронизация при вращении. Чтобы начать процесс вычислений и синхронизации, программа выполняет пустой цикл. Для старта процесса вывода информации в программе используется система прерывания МК по сигналу INT0, которая задает синхронизацию вывода букв. Надо отметить, что программа имеет следующие режимы синхронизации: режим, не зависящий от синхронного вывода информации по INT0; режим синхронизации вывода информации по INT0 и режим синхронизации по памяти (запоминание предыдущего значения и синхронизация по внутреннему отсчету).

Смешанные действия в программе позволяют работать устройству в любых условиях, даже при отсутствии синхронизации от INT0 или в случае сбоев (перерывов, пропусков сигнала INT0). Для независимой синхронизации работы устройства задействованы два таймера-счетчика МК. Таймер 0 выполняет операцию измерения времени полного оборота устройства вокруг оси. Таймер один выполняет операцию отсчета измеренного таймером 0 времени полного оборота устройства. По окончанию отсчета таймер 1 независимо от сигнала INT0 генерирует прерывание. В случае если сигнал INT0 был пропущен, сгенерированный сигнал прерывания от таймера 1, стартует вывод букв на светодиодную матрицу. Если сигнал от датчика Холла INT0 сгенерирован вовремя, то программа переходит из цикла по вектору прерывания на подпрограмму обработки прерывания INT0. В этой подпрограмме останавливается таймер 0, и считываются данные старшего и младшего разряда таймера 0. После чего начинают работу таймер 0 и таймер 1. Таймер 0 выполняет функцию измерителя времени, по его данным загружается таймер 1, который через отсчитанный момент времени генерирует прерывание TIME 1. Эта процедура необходима в случае пропуска сигнала с датчика Холла. В обеих подпрограммах задается константа S=1. Эта константа позволяет выйти из цикла в начале программы и запускает алгоритм вычисления времени вывода кода. При выходе из вектора прерывания программа выходит из цикла и переходит на следующий шаг.

Как ранее отмечалось, схема имеет ручное управление. Данные с регулятора управления поступают на АЦП, где обрабатываются и записываются в ячейку памяти D. После чего МК выполняет процесс деления st, ml на 69 отсчетов. Результат деления заносится в ячейку памяти М. Затем выполняется арифметическое действие М=М+D. Число М задает время засветки светодиодов на коротком участке дуги окружности.

Далее выполняется цикл вывода информации на участках трех сегментов окружности. На первом сегменте выводится слово «РАДИО», на оставшихся двух сегментах информация не выводится. По окончанию вывода информации, программа переходит в начало. В начале программы задается константа S=0, которая заставляет программу выполнять бесконечно пустой цикл. Программа ожидает прерывание от таймера 1 или от входного стартового импульса INT0. Процесс повторяется заново. Всегда существует вероятность наложения процедур друг на друга. Поэтому автор использовал только один сегмент окружности. Кроме того, сама конструкция выполнена из непрозрачного материала, и вывод слова в оставшихся сегментах все равно не будет виден зрителю. Отсутствие идеального регулирования процесса может привести к размытому изображению слова или к подергиванию букв. В данном случае именно этот процесс проверяется на МК tiny26-8SU. Результат проверки позволит судить о качестве МК.

Программа вывода слова

Ее работа начинается с установки конфигурации портов и системы прерывания (листинг 1 см. прикрепленные данные). Для работы прерывания необходимо установить разрешение прерывания в регистре SREG. В регистре GIMSK нужно установить прерывание от вывода INT0, в регистре MCUCR – задать прерывание по спадающему фронту сигнала на выводе. В этом случае можно избежать путаницы с сигналом в прохождении датчика мимо магнита. В начале программы настраивается конфигурация таймера 0 и таймера 1. В старший разряд st и младший разряд ml записывается максимальное значение FF. Задается S=0. Программа начинает работать в пустом цикле, пока не возникнет прерывание. Для работы восьмиразрядных таймеров в реальном времени, необходимо задать тактовую частоту f=fClk/1024 (где fClk=4 МГц). В этом случае, восьмиразрядный таймер (имеющий 255 отсчетов) будет переполняться 15 раз в секунду. А двигатель с частотой оборотов w=1000 об/мин будет вращать вал 16 раз в секунду. Так как ось вала вращается быстрее, то заблаговременное срабатывание таймера не произойдет. Как только появляется сигнал INT0, подпрограмма обработки вектора прерывания INT0 устанавливает S=1 и запускает оба таймера. Вектор прерывания программы возвращается в место прерывания цикла, и при условии S=1 программа переходит на считывания уровня Р1 (рис.5 см. прикрепленные данные). Одновременно в векторе прерывания осуществляем запуск таймеров. Аналоговые данные с Р1 проходят арифметические преобразования, после чего задается временная задержка между выводимыми кодами в порт В МК. Далее программа выполняет поочередный вывод данных на светодиодную матрицу. Подпрограмма выводит последовательно три сегмента данных. Один сегмент занимает слово «РАДИО», два остальных без засветки светодиодов. Код прошивки букв записан в табл.1. Полная версия программы (листинг 1 см. прикрепленные данные), код ввода данных программатором в МК (листинг 2 см. прикрепленные данные) выложены на сайте журнала.

 

Светодиоды

LED7

LED6

LED5

LED4

LED3

LED2

LED1

PORTA

Коды прошивки портов

Буква

Шаг

 

 

 

 

 

 

 

BIN cod

HEX cod

 

1

1

1

1

1

1

1

1

01111111

7F

 

2

1

0

0

1

0

0

0

1001000

48

Р

3

1

0

0

1

0

0

0

1001000

48

 

4

0

1

1

0

0

0

0

0110000

30

 

5

0

0

0

0

0

0

0

0000000

00

 

6

0

1

1

1

1

1

1

0111111

3F

 

7

1

0

0

1

0

0

0

1001000

48

А

8

1

0

0

1

0

0

0

1001000

48

 

9

0

1

1

1

1

1

1

0111111

3F

 

10

0

0

0

0

0

0

1

0000001

01

 

11

0

1

1

1

1

1

1

0111111

48

 

12

1

0

0

0

0

0

1

1000001

41

Д

13

1

0

0

0

0

0

1

1000001

41

 

14

0

1

1

1

1

1

1

0111111

48

 

15

0

0

0

0

0

0

1

0000001

01

 

16

1

1

1

1

1

1

1

1111111

7F

 

18

0

0

0

1

0

0

0

0001000

08

И

17

0

0

1

0

0

0

0

0010000

10

 

19

1

1

1

1

1

1

1

1111111

7F

 

20

0

0

0

0

0

0

0

0000000

00

 

21

0

1

1

1

1

1

0

0111110

3E

 

22

1

0

0

0

0

0

1

1000001

41

О

23

1

0

0

0

0

0

1

1000001

41

 

24

0

1

1

1

1

1

0

0111110

3E

Конструкция и детали

Для уменьшения веса платы управления выберем для схемы элементы поверхностного монтажа. Такой выбор позволит уменьшить массу, а значит, снизить центробежную силу и уменьшить подставку под конструкцию, и в целом габариты конструкции. Для работы устройства необходимо напряжение 3,0…4,5 В. Для длительной эксплуатации устройства можно использовать элементы типоразмера АА.

Используется микроконтроллер MK IC1 tiny26-8SU, который имеет корпус SOIC-20 и работает при напряжении питания 2,7…5,5 В. Транзисторы ключей светодиодов Q1-Q7 BSS123 [2] VGS=2,8 В при Id=1 мА, Idmax=150 мА. Датчик Холла IC2 SS441A [3] напряжение питания 3,8х30 В, Imax=10 мА, униполярный. Стабилитрон D1 BZV55 типа 3V6 Uстаб=3,6 В, Imax=40 мА в корпусе SOD 80.

 


Монтажная плата  вращающегося табло

 

Монтаж выполняется на плату, состоящую из SMD-элементов поверхностного монтажа (фото 1). Для этого необходимо иметь маломощный паяльник на 12 В, с тонким, острым (в виде конуса) жалом. Удерживать элементы монтажа руками невозможно, поэтому автор рекомендует приобрести специальный пинцет-зажим с малым усилием зажима. Отличие пинцета в том, что он имеет не разогнутые лапки, повторяя букву «Л», а согнутые лапки друг к другу, повторяя букву «Х». Монтажная плата может быть выполнена согласно рис.7. Перед монтажом элементов в плате необходимо высверлить два отверстия диаметром 3 мм, для крепления платы к корпусу батарейного отсека. Затем паяют SMD-элементы, после чего устанавливают остальные элементы схемы.


Монтажная плата  вращающегося табло
Монтажная плата  вращающегося табло
Монтажная плата  вращающегося табло

 

 

Перед монтажом IC1 в МК прописывают программу (листинг 2 см. прикрепленные данные). Затем в плату впаивают МК. К плате (к точкам JP3, JP4) двигатель подключают так, чтобы вращение было против часовой стрелки. К точкам JP1, JP2 подключают последовательно выключатель S1 и батарейный блок питания.


Позиционирование колпачка вращающнгося табло

 

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

1 – колпачок;
2 – цилиндр основания;
3 – верхний сегмент контакта с проводом из меди;
4 – изолятор из фторопласта;
5 – нижний сегмент контакта с проводом;
6 – основание;
7 – ограничители хода колпачка;
8 – подвижной ограничитель;
9 – винт крепления колпачка.

Верхний и нижний сегмент контакта изготавливают из листовой меди толщиной 0,2 мм. На краях сегментов оставляют небольшой отрезок, который загибают под углом 90°. В основание выключателя и в колпачок впаивают ограничители хода (изготавливают из булавок). На оба сегмента припаивают гибкие провода. На нижнем сегменте выдавливают шариком (от подшипника) выпуклости, для улучшения контакта. Между сегментами по внутреннему диаметру укладывают фторопластовую пластину. Нижний сегмент клеят к основанию, верхний – к колпачку (выступающие отрезки сегментов нагревают и впаивают в пластик). Колпачок и верхний сегмент позиционируют так, чтобы в выключенном состоянии ограничитель колпачка касался серого ограничителя основания (рис.8). При повороте колпачка, верхний и нижний сегмент замыкаются, в этом случае ограничитель колпачка должен касаться черного ограничителя основания. Как только все детали готовы и высох клей, выключатель собирают согласно эскизу рис.8. Провода от колпачка должны быть гибкими. Они должны свободно двигаться с подвижным верхом колпачка.

Сборка конструкции

Ее начинают с изготовления дополнительных узлов. Прежде всего, делают скобу для удержания двигателя (рис.9 и фото 2). После скобу устанавливают на двигатель (позаимствован от CD-R-привода). В корпусе батарейного отсека высверливают отверстия для удержания платы и закрепляют ее. Сверху батарейного блока питания прикручивают колпачок выключателя. Провода соединяют последовательно с батарейным блоком питания к плате управления согласно схеме рис.5. Провода лучше помещать в трубочки для уменьшения завихрений. Трубочки также надевают с краев платы управления, что придает обтекаемость плате. Для уменьшения вибрации при вращении проводят балансировку батарейного корпуса и платы с вставленными батарейками. Для этого находят центр масс батарейного отсека в горизонтальной плоскости и устанавливают двигатель так, чтобы ось двигателя совпадала с центром масс. Затем устанавливают скобу с двигателем и в корпусе батарейного отсека высверливают отверстия для крепления. После чего на основании конструкции наклеивают магнит. На плате устанавливают датчик hall так, чтобы при вращении он попадал в поле действия магнита. Ось двигателя через втулку вставляют в основание конструкции. Проверяют жесткость крепления всех узлов, после чего конструкция готова к эксплуатации.


Скоба удержания двигателя вращающнгося табло

 

Для четкого наблюдения светоэффекта эксплуатацию конструкции проводят в темном месте. Конструкцию устанавливают на ровную твердую поверхность или жестко крепят в необходимое место. Затем путем поворота колпачка по ходу вращения включают питание схемы. Конструкция начинает вращение против часовой стрелки, и через несколько оборотов включаются светодиоды. В этот момент можно наблюдать светоэффект со словом «РАДИО». Выключается светоэффект при нажатии на колпачок.

Себестоимость конструкции составляет примерно 9 евро.

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

Выводы

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

Литература

  1. Steffen Sorge. Text at the speed of light//Elector. – 2007. – №1.
  2. Data sheet. BSS123 N-channel enhancement mode vertical D-MOS transistor. Philips Semiconductors. April 1995.
  3. Datasheet. Solid State Sensors SS441A. Honeywell, 2002.
  4. Data sheet. ATtiny26-8 bit microcontroller. Atmel, 2002.
Понравилась статья? Расскажите друзьям!
ПОХОЖИЕ СТАТЬИ
comments powered by Disqus