Uploaded by Salman Khimishev

3D-куб

advertisement
Университет Центральной Флориды
Старший проектной документации 1 Проект
Группа # 15
3D LED Cube
Авторы:
Люк Ausley
Джошуа Moyerman
Эндрю кузнец
2 декабря 2013
содержание
1. Резюме
1
2 Описание проекта
2
2.1 Мотивация и цели. , , , , , , , , , , , , , , , , , , , , , , , , , ,
2
2.2 Цели. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
2
2.3 Требования и спецификации. , , , , , , , , , , , , , , , , , , , ,
3
5
3 Исследования, относящиеся к проектам и продуктам
3.1 Существующие проекты и продукты. , , , , , , , , , , , , , , , , , , , ,
5
3.1.1 Jameco Электроника LED Cube Kits. , , , , , , , , , , , , , ,
5
3.1.2 Все Спарк 16x16x16 RGB LED куб. , , , , , , , , , , , , ,
6
3.1.3 Instructables 8x8x8 Синий светодиодный куб. , , , , , , , , , , , , ,
8
3.1.4 HNTE 8x8x8 RGB LED куб. , , , , , , , , , , , , , , , , ,
9
3.2 Компонент исследований. , , , , , , , , , , , , , , , , , , , , , , , , , ,
3.2.1 Light Emitting Diode. , , , , , , , , , , , , , , , , , , , , , ,
10
10
LED выбор. , , , , , , , , , , , , , , , , , , , , , , , , , , ,
3.2.2 LED Электропроводка. , , , , , , , , , , , , , , , , , , , , , , , , , , ,
Индивидуальное подключение. , , , , , , , , , , , , , , , , , , , , , , , ,
13
13
13
Мультиплексирование. , , , , , , , , , , , , , , , , , , , , , , , , , , ,
14
Charlieplexing. , , , , , , , , , , , , , , , , , , , , , , , , , ,
15
, , , , , , , , , , , , , , , , 16
Электропроводка выбор для 3D LED куб
3.2.3 Драйверы светодиодов. , , , , , , , , , , , , , , , , , , , , , , , , , , ,
LED Driver: Texas Instruments TLC5940. , , , , , , , , , ,
16
17
LED Driver: Texas Instruments TLC5948A. , , , , , , , , ,
18
LED Driver: My-Semi MY9161. , , , , , , , , , , , , , , , ,
19
LED Driver выбор. , , , , , , , , , , , , , , , , , , , , , , ,
20
3.2.4 Встроенные процессоры. , , , , , , , , , , , , , , , , , , , , , ,
20
Встроенный Процессор: Atmel Atmega 2560. , , , , , , , , , ,
21
Встроенный процессор: Microchip PIC24HJ256GP206A. , , ,
22
Встроенный Процессор: TI AM3358. , , , , , , , , , , , , , , ,
23
Встроенный процессор Choice. , , , , , , , , , , , , , , , , , ,
23
3.2.5 MOSFETs. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
МОП-транзистор: В фи неоновой технологии SPD15P10PL G. , , , , , ,
24
25
МОП-транзистор: Fairchild Semiconductor FDD5614P. , , , , , , ,
25
МОП-транзистора: Vishay / Siliconix SUD45P03-10-E3. , , , , , , , ,
25
MOSFET выбор. , , , , , , , , , , , , , , , , , , , , , , , ,
25
3.2.6 ПВМ
, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , 25
FPGA: Xilinx Spartan 3. , , , , , , , , , , , , , , , , , , , ,
я
27
FPGA: Xilinx Spartan 6. , , , , , , , , , , , , , , , , , , , ,
27
FPGA: Altera EP1C6. , , , , , , , , , , , , , , , , , , , , ,
28
FPGA выбор. , , , , , , , , , , , , , , , , , , , , , , , , , ,
28
3.2.7 Методы и протоколы связи. , , , , , , , , , , , ,
29
Back-самолет связи. , , , , , , , , , , , , , , , , , ,
29
Inter Processor Communication. , , , , , , , , , , , , , , , ,
31
3.2.8 Источники питания. , , , , , , , , , , , , , , , , , , , , , , , , ,
33
Источник питания: Mean Well SP-200-5. , , , , , , , , , , , , , ,
33
Источник питания: Mean Well SP-150-5. , , , , , , , , , , , , , ,
33
Блок питания выбор. , , , , , , , , , , , , , , , , , , , , , ,
33
3.3 Исследование программного обеспечения. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
3.3.1 Язык программирования. , , , , , , , , , , , , , , , , , , , ,
33
34
C ++. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
34
Джава . , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
34
Python. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
35
3.3.2 Библиотеки. , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
35
Direct3D. , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
35
OpenGL. , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
36
Открытая архитектура освещения. , , , , , , , , , , , , , , , , , ,
36
4 Оборудование проекта и Software Design
37
4.1 Архитектура и связанная с ним схема. , , , , , , , , , , , , , , , , , ,
4.1.1 Архитектура аппаратного обеспечения. , , , , , , , , , , , , , , , , , , , , ,
37
37
Встроенный процессор. , , , , , , , , , , , , , , , , , , , , , ,
38
FPGA. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
42
Драйверы светодиодов и МОП-транзисторов. , , , , , , , , , , , , , , , , , ,
43
Управление Power Board. , , , , , , , , , , , , , , , , , , , , , ,
46
Светодиодный куб. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
46
4.1.2 Архитектура программного обеспечения. , , , , , , , , , , , , , , , , , , , , , ,
49
Анимация. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
50
Связь. , , , , , , , , , , , , , , , , , , , , , , , , ,
50
Моделирование. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
4.1.3 Software Design. , , , , , , , , , , , , , , , , , , , , , , , , ,
Системные Требования . , , , , , , , , , , , , , , , , , , , , , ,
51
52
52
Функциональные требования . , , , , , , , , , , , , , , , , , , , ,
52
Анимация. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
53
Связь. , , , , , , , , , , , , , , , , , , , , , , , , ,
57
Моделирование. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
58
4.1.4 Печатные платы. , , , , , , , , , , , , , , , , , , , , ,
60
4.1.5 Физическая структура. , , , , , , , , , , , , , , , , , , , , , , ,
61
5 Дизайн Резюме аппаратного и программного обеспечения
62
5,1 Высокий уровень дизайна. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
62
5.2 Оборудование. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
63
5.3 Программное обеспечение. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
64
б
5.3.1 Анимация. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
65
Анимация Творца GUI. , , , , , , , , , , , , , , , , , , , ,
65
Программируемый Animation Framework. , , , , , , , , , , , , ,
66
Анимация контроллер. , , , , , , , , , , , , , , , , , , , , , ,
66
5.3.2 Связь. , , , , , , , , , , , , , , , , , , , , , , , , ,
67
5.3.3 Моделирование. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
68
Firmware Simulator. , , , , , , , , , , , , , , , , , , , , , , ,
69
Оборудование Simulator
, , , , , , , , , , , , , , , , , , , , , , , 69
6 Проект Прототип Строительство и Coding
70
6.1 Части Приобретение. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
70
6.2 Ведомость материалов. , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
71
6.3 Печатные платы Строительство. , , , , , , , , , , , , , , , , , ,
71
6,4 LED куб Строительство. , , , , , , , , , , , , , , , , , , , , , , , ,
73
6.5 Программное обеспечение реализации. , , , , , , , , , , , , , , , , , , , , , , , ,
74
6.5.1 компонентов. , , , , , , , , , , , , , , , , , , , , , , , , , , ,
75
Светодиодный куб. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
75
Анимация. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
76
Связь. , , , , , , , , , , , , , , , , , , , , , , , , ,
77
Моделирование. , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
77
6.5.2 Особенности программы. , , , , , , , , , , , , , , , , , , , , , , , ,
78
Анимация Творца GUI. , , , , , , , , , , , , , , , , , , , ,
78
Объект растеризации. , , , , , , , , , , , , , , , , , , , , , ,
79
Анимация контроллер. , , , , , , , , , , , , , , , , , , , , , ,
6.5.3 Анимация Особенности. , , , , , , , , , , , , , , , , , , , , , , ,
79
79
83
7 Prototype Тестирование проекта
7.1 Проверка оборудования окружающей среды. , , , , , , , , , , , , , , , , , , , , , ,
83
7.2 Аппаратные тесты. , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
83
7.3 Software Test Environment. , , , , , , , , , , , , , , , , , , , , , , ,
84
7.4 Программные тесты. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
84
7.4.1 Анимация тесты. , , , , , , , , , , , , , , , , , , , , , , , ,
7.4.2 Связь тесты. , , , , , , , , , , , , , , , , , , , , , ,
7.5 Итоговые комплексные испытания. , , , , , , , , , , , , , , , , , , , , , , , , ,
85
85
86
87
8 Административного Содержание
8.1 Основные этапы. , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
87
8.2 Загруженность распространения. , , , , , , , , , , , , , , , , , , , , , , , , ,
88
8.3 Бюджет и финансы. , , , , , , , , , , , , , , , , , , , , , , , , , ,
89
8.4 Группа пользователя. , , , , , , , , , , , , , , , , , , , , , ,
90
9 Заключение
92
A Патентные права
A
III
Глава 1
Управляющее резюме
Эта старшая проектная документация будет изложена подробно процесс для завершения группы № 15 по проекту
- куб 3D LED. В данной статье будет описана целями и задачи, спецификация и требование,
научно-исследовательская, проектная, создание прототипа, а также испытания и оценка кубы 3D LED. Исходя из
коллективного интереса к хобби / индустрии освещения, завершенный 3D LED куб будет выступать в качестве
эстетический дисплея, способного создавать различные динамические и уникальные визуальные анимации в
трехмерном пространстве. Кроме того, этот проект будет служить в качестве доказательства из-концепции,
обеспечивая широкую основой исследования в захватывающую технологию: истинные 3D дисплеев.
Кульминация этого проекта - функционирующий прототип - будет построена к специфичному набору
стандартов. Работая с разрешением 10x10x10 вокселей (трехмерных пикселей), куб будет использовать
1000 светодиодов и действуют на основе концепции сохранения зрения (быстрое мигание, чтобы дать
появление твердого источника света). Поддерживая минимум LED Частота обновления 100 Гц, куб
будет способна отображать, казалось бы, непрерывные графики на наблюдатель при минимальной
частоте обновления анимационной 25Hz, при работе в полном 24bit цветового пространства, каждый
светодиод способен производить 16,8 миллионов отдельных цветов. Размер куба будет находиться в
пределах 2x2x2ft, содержится в наружном корпусе, который будет немного больше. Корпус будет
состоять из акриловых листов для защиты светодиода куба, не уменьшая видимость куба.
Хотя существует множество путей для выполнения основных задач при проектировании светодиодного
куба: программном обеспечении, аппаратных средствах управления и подключении аппаратного
обеспечения, подробные исследования, направленных на группу использования специфических
технологий. Контроль кубы со стороны программного обеспечения будет обработан с помощью
пользовательского программного пакета, который будет толкать инструкции два пользовательские
печатных плат (PCB), содержащих встроенный процессор, а также ПЛИС на один, и светодиодные
драйвера и МОП-транзисторы с другими , По мультиплексирование, структура управления будет иметь
возможность индивидуально управлять каждым светодиодом, манипулируя ток, подаваемый на каждого
человека СИД с использованием светодиодных драйверов и МОП-транзисторов. Эта структура
управления и постоянный ток модуляция, в сочетании с концепцией сохранения зрения,
1
Глава 2
Описание Проекта
3D LED дисплей рождается из желания спроектировать и построить высокое качество RGB LED куб. Куб
состоит из RGB-светодиодов позволит пользователям отображать более широкую цветовую палитру. Дисплей
3D LED охватывает не только сам физический куб, а создание дружественного интерфейса пользователя для
анимации и изменения содержимого, отображаемого на кубе. Пользовательский интерфейс будет состоять из
компьютера, сообщающегося с контроллером фи rmware в светодиодной кубе через соединение Ethernet.
Связи позволят отображать как статическую, так и интерактивную графику и анимацию.
В дополнение к представлению статические и динамические графики, 3D LED дисплей также будет способен
реагировать на внешние стимулы, такие как звуковые сигналы, вход акселерометра и т.д. Оператор будет иметь
динамический контроль 3D Светодиодный дисплей с использованием нескольких контрольных механизмов; либо из
портативного компьютера или выбора предварительно запрограммированной анимации. Эти уникальные методы
общения с дисплеем позволят пользователю выполнять различные задачи с 3D LED куб, такими как представление
текст, интерактивная графика, или даже видеоигры в 3D.
2.1 Мотивация и цели
3D LED дисплей представляет особый интерес для группы из-за желание экспериментировать с новыми способами
вождения и взаимодействия с большим RGB LED куб дисплеев. Учитывая очарование членов группы с тем обеих
светодиодных матриц и светодиодов кубов, мы выбрали наши старшие векторы Дизайн проект для изучения понятий,
связанных с работой 3D LED кубы, улучшая при методах, используемых в прошлом во время включения новое и
неизведанное элементы в технологии. 3D светодиодный дисплей включает в себя различные аспекты дизайна,
которые обращаются конкретно к каждому члену группы. Электрическое проектирование, разработка встраиваемой
систем, а также разработки программного обеспечения обеспечивают хорошо, определяемую область,
представляющий интерес для каждого члена группы.
2.2 Цели
Помимо общего направления проекта, как определен в описании и целями, Специфические цели гр были
перечислены для успешного завершения проекта. Основной замысел проекта должен завершить куб 3D LED
способный отображать визуальные анимации. Это будет достигнуто путем разработки пользовательского
пакета программного обеспечения для обработки ввода от пользователя и передавать информацию
анимации к пользовательской плате, содержащей FPGA и встроенному процессор. FPGA должен быть
2
способно декодировать информацию от процессора и перевести его в сигналы, которые Специфический
контроль Cally как частоту, цвет и интенсивность света на каждом из 1000 светодиодов, которые содержат куб.
Физическая структура кубы будет прочной, с профессиональным внешним видом, сохраняя при этом как механической
и электрической целостности. Куб будет размещен внутри акрилового случае, что позволяет для защиты
чувствительных светодиодов, сохраняя при этом высокую видимость с любого угла вне куба. Каждый RGB LED будет
правильно припаяны, работающий в полном 24-битном цвете. Куб будет получать питание от общей электрической
розетке, работающих при 120В постоянного тока с максимальным током 6A. Несмотря на то, что проект будет
завершен с бюджетом в $ 750, гибок максимальный потолок до $ 1200 будет на месте, предоставляя для каких-либо
невидимых затрат или дополнительных возможностей группы может выбрать для добавления. Весь куб будет
функционировать в качестве одного физического блока, со всеми печатными платами и схемами, содержащимися в
структуре кубы.
В то время как каждый член группы будет возложена ответственность за различные аспекты дизайна, каждый член приобретет
прибыльную фективность в междисциплинарных навыках, необходимые для разработки и создания кубы 3D LED. Эти навыки
включают в себя проектирование программного обеспечения (программирование), аппаратный дизайн (PCB / дизайн FPGA) и
электрическая схема оборудования (пайки / питание). Кроме того, знакомство со всеми соответствующими технологиями, такими
как светодиоды, микроконтроллеры и светодиодные драйверы будут достигнуты каждым членом.
2.3 Требования и спецификации
В спецификациях, перечисленные ниже, будут организовывать и описывать более лаконично
требования, которые уже широко упомянуты в задачах проекта. Кроме того, как и появились эти
спецификации на будет изложены на.
• Куб Разрешение 10x10x10
• Куб Размер 2x2x2ft
• Общий размер 2.5x2.5x3ft
•
Минимальная частота обновления 100 Гц
• Минимальная частота кадров анимации из 25Hz
• 24 бит RGB Color Space (16.8 миллионов цветов)
• Номинальное рабочее напряжение: 12
• Максимальный рабочий ток: 6A
• Рабочая температура: 50-100F
3
• Влажность: 10% -80%
Размер куба был определен на основе нескольких факторов. Количество светодиодов в каждом направлении
(10), расстояние между каждым СИД (шаг), размер корпуса для физического аппаратного обеспечения
управления на базе, а также расстояние между кубом и наружным кожухом.
Для того, чтобы работать постоянством зрения, исследования установлено, что частота обновления
100Гц будет отвечать требованиям для мигания светодиодом достаточно быстро, так что, кажется,
постоянно зрителем. Это является основой для светодиодного куба, как если бы каждый светодиод на
самом деле были на 100% время, требование к мощности будет слишком велико, и каждый из 1000
светодиодов требуют индивидуального управления линии. По мультиплексированию, что стало
возможными только за счет сохранения зрения, конструкция может быть выполнена только с 310 линиями
управления. Частота обновления анимации 25Hz позволяет каждой анимация будет показана на
стандартной частоте кадров, используемой в большинстве телевизионных и кино приложений. Ниже этой
частоты кадров, анимации не будет казаться гладким, в то время как выше этой частоты кадров,
Такая конструкция решила использовать высококачественный коммерчески упакованный СИД, содержащую как
красные, зеленые и синие диоды. Хотя это увеличивает электрические требования и усложнили управления и
проектирования структуры, то выгода существенна по сравнению с простой одноцветный светодиодный куб. Используя
эти диоды, каждый светодиод в кубе будет иметь возможность генерировать 24-битный цвет, а также различной
интенсивности в отдельности - осуществляется с помощью широтно-импульсной модуляции (ШИМ). Кроме того,
качество светодиодов позволяет высокий уровень интенсивности, чтобы быть сгенерирован только с умеренным
уровнем тока - позволяет 3D-дисплей, чтобы иметь впечатляющие присутствие даже в ярко освещенной комнате.
Цель светодиодного куба - для отображения анимации аудитории - означает, что куб должен быть
работоспособным в общих ситуациях. Это вынудил группу разработать куб для питания от розетки.
Переменный ток (AC) в постоянный ток (DC) преобразователь, так же, как той, которая используется для
ноутбука, будет выступать в качестве источника питания для системы. Этот аспект дизайна также тесно
связана с LED выбора. Несмотря на то, что ожидается, что это 3D-дисплей будет работать в контролируемых
климатических условиях, его рабочая температура и влажность воздуха должна включать в себя бу Ff эр. По
этой причине, светодиодный куб был разработан, чтобы иметь рабочую температуру 50-100F и 10% -80%. Это
позволит куб работать с электрической целостности в более сложных условиях, если это необходимо.
4
Глава 3
Исследования, связанные с проектами и
Товары
Куб 3D LED является популярным проектом как хобби и коммерческие рынки. Надлежащий анализ существующих проектов
позволит успешных исследований и разработок. Глядя на подобные продукты позволяют сравнения наборов функций для
рассмотрения, а также возможные ограничения и для улучшения заведений все. Исследования в смежные продукты и
компоненты, которые они используют это жизненно важное значение для начала процесса проектирования. Некоторые
части могут быть приемлемы в одном приложении, но не может хорошо масштабируется для больших проектов. Обзор
проектов от различных поставщиков, которые охватывают большой объем будет обеспечивать богатый набор компонентов
для выбора между или начать исследование дальше в. С адекватной базой компонентов и наборами функциональных
возможностей для выбора, дизайнерские решения могут начать быть сделано с выбранными компонентами, которые фи т
требованиями проекта.
3.1 Существующие проекты и продукты
Есть целый ряд проектов - как коммерческий, академического и хобби - которые разработали конструкцию
кубы 3D LED. Эти проекты варьируются от маленьких кубиков (4x4x4) гораздо более крупных (16x16x16).
Изучив существующие продукты и проекты, основа исследования могут быть созданы, чтобы позволить
улучшенный дизайн.
3.1.1 Наборы Jameco Электроника LED Cube
Jameco Электроника (jameco.com) о ФФ ERS одновременно DIY 4x4x4 и 8x8x8 куб комплект LED за $ 69,95 и $
149,95 соответственно. Комплект включает в себя необходимую печатную плату, Atmel (4x4x4) или Ардуин (8x8x8)
микроконтроллер, транзисторы, резисторы, конденсаторы, провод, батарея и другие различные части одного цвета
синих светодиодов. Jameco цитирует ди FFI трудности в 8x8x8 проекте, как «Advanced» со временем сборок
нескольких дней, в отличие от «Intermediate» и 6 часов для 4x4x4 куб. Инструкции комплекта обеспечивают
несколько полезных советов для создания структуры решетки из проволоки. Jameco также пример кода для
программирования Arduino. Оба эти ресурсы будут использоваться для ссылки на этапе прототипирования этого
проекта. На рисунках 3.1 и 3.2 ниже показан результат фи NAL из 4x4x4 и 8x8x8 синего светодиода кубов.
5
Рисунок 3.1: Jameco Электроника 4x4x4 DIY Синий светодиодный куб
Печатный с разрешением, предоставлен Jameco.com [1]
Рисунок 3.2: Jameco Электроника 8x8x8 DIY Синий светодиодный куб
Печатный с разрешением, предоставлен Jameco.com [1]
3.1.2 Все Спарк 16x16x16 RGB LED Cube
Все Спарк куб пример куба с более сложной конструкцией, чем предлагаемый в этом проекте.
Конструкция куба относительно стандарта, используя
6
толщина 16 калибра проволока как в качестве структуры для куба и электрического соединения. Интересная часть
аппаратного дизайна все свечи команды был их выбор, чтобы использовать 16 индивидуальных пользовательских
микроконтроллеры, по одному для каждой панели. Микроконтроллеры управляется «электростанция» системы,
Ардуино Мега 2560. Эта конструкция использует интерфейс RS-232 от компьютера и RS485 для кросса-панель связи.
проектная документация The всех свечи команда не включает в себя информацию об их разработке программного
обеспечения - хотя они упоминают развитие открытого источника светодиодного куба набора программного
обеспечения. Рисунок 3.3 ниже показывает заключенную 16x16x16 куб, который был завершен.
Рисунок 3.3: Все Спарк 16x16x16 3D RGB LED Cube Печатается с
разрешения, Предоставлено AllSparkCube.com [2]
Же концептуальный процесс контроля светодиодов в дизайне 16x16x16 куб используется в нашем проекте. Куб
использует мультиплексирование для создания 3D-изображений, отображая 2D панелей в быстрой
последовательности - слишком быстро для глаз заметить. Широтно-импульсная модуляция используется для
управления цветом каждого диода. Это делается путем изменения рабочего цикла каждого отдельного красного,
зеленого и синего диода. Более высокий рабочий цикл (диод дольше, чем это о Ф.Ф.) соответствует более яркий
светодиод этого специфичным цвета. Варьируя рабочие циклы, и, соответственно, яркость каждого цвета
светодиода, микроконтроллер способен отображать любой цвет светодиода.
7
3.1.3 Instructables 8x8x8 синий светодиодный куб
Instructables перечисляет очень подробный процесс проектирования для их одноцветной LED куб. Хотя контроль
схема их проект ди ERS и след от приведенного в данной статье, шаги к их конструкции будут служить полезным
ресурсом для небольших проблем, возникающих, что другие проекты не может быть упомянуты. Instructables
атрибуты 50% рабочей нагрузки в конструкции оборудования и 50% для разработки программного обеспечения.
Рисунок 3.4 ниже показывает результат Instructables синего светодиода куб.
Рисунок 3.4: Instructables 8x8x8 3D синий светодиодный куб Печатный с
разрешения, предоставлено Instructables.com [3]
Конструкция Instructables использует микроконтроллер Arduino ATmega32 с
тактовая частота 14.7456MHz, так как она делится на все популярные RS232 популярные скорости передачи данных. Они решили
использовать 74HC138 от 3 до 8 декодера и 8x 74HC574 8 битой защелки для мультиплексирования.
Они используют 5V питание компьютера для того, чтобы поддерживать высокий ток. Конструкция 8x8x8
нарисует 64 светодиодов * индивидуальный диод ток, если все диоды горят. Дизайн 10x10x10 в этой статье,
будет иметь более жесткие требования к источнику питания с 100 светодиодами * 3 цвета * индивидуальный
диод током, или 470% от максимального тока, требуемого 8x8x8.
Instructables предоставляет некоторые базовый открытую исходный код в C, а также псевдокод и объяснение
для достижения контроля над простой, специфической анимацией. Это может оказаться полезной отправной
точкой для создания анимации пьес на выбор в 10x10x10 дизайне, который будет представлен.
8
3.1.4 HNTE 8x8x8 RGB LED Cube
Светодиодный куб RGB отличен Как не инженер разделяет некоторые аналогичные аспектов в предлагаемой
конструкцию для проекта в этой статье. Их конструкция использует 12 STP16 светодиодные драйверы, 4 для каждого
цвета: красный, зеленый и синий. Каждый набор из 4-х водителей, содержит 64 бит, для каждого светодиода на панели
8x8. Мультиплексирование позволяет это управление архитектуры работать. 32-битный chipKIT УНО используются для
управления LED STP16 драйверов, обеспечивая последовательный выход и используя угол битой модуляцию (BAM)
исчезать каждый цвет светодиод, обеспечивая полный диапазон цветов для каждого светодиода. Бит угол модуляция
(БАМ работает путем присвоения ди-FF различны бит для каждой области светодиодного выходного драйвера сигнала.
Включение или о ФФ состоянии каждого бита определяет длину импульса быть посылает к СИДУ, в сущности,
контролируя цвет светодиода с значение. Этот способ аналогичен по своей концепции широтно-импульсной модуляции.
фиг.3.
Рисунок 3.5: Бит Угловая модуляция
Печатный с разрешением, предоставлен HowNotToEngineer.com [4]
Один впечатляющий аспект проекта HTNE был тот факт, что их куб был построен с использованием минимальной мощности
обработки, конструкция эта группа будет использовать, скорее всего, связаны с более надежные вычисления. На рисунке 3.6
показан завершенный 8x8x8 RGB LED куб, построенный HTNE.
9
Рисунок 3.6: HNTE 8x8x8 3D RGB LED куб напечатаны с разрешения,
предоставленный HowNotToEngineer.com [4]
3.2 Компонент исследований
Выбор отдельных компонентов для куба 3D LED является наиболее важным шагом в процессе разработки
аппаратного обеспечения. Все дальнейшие проектные решения регулируются спецификациями и ограничения
компонентов, выбранных. Сравнения между компонентами различны ди с решениями, и след, сделанных на
основе сильных и слабых сторон, а также возможность внести свой вклад и соответствовать целям Perfomance
проекта и стандарты.
3.2.1 Light Emitting Diode
Выбор светодиодов будет ТФ ЭСТ всех других проектных решений, и поэтому будет рассмотрены первой
очередью. Рынок светодиодных компонентов колеблется в широких пределах в стоимости, качества и брендинга.
Светодиоды состоят из PN-перехода, который производит свет, когда смещен вперед, упакованный в
полупрозрачный пластиковом корпусе с точками соединения металла для анода и катода. Один светодиод
-переход способен производить только один цвет света.
Для того, чтобы создать дисплей с более чем одного цвета,
несколько ди ФФ различны цвета необходимы. Из-аддитивной природы, как человеческое зрения воспринимает
цветной свет, цвет, необходимый для получения полного спектра цветов: красный, зеленый и синий.
Для разработки мульти-цветной дисплея, необходимо включить вышеуказанные три цвета в каждый воксель. Это обычно
делается с помощью двух методов ди Ф.Ф. различны. Метод Первый состоит в использовании трех отдельных светодиодов
пакетов, каждый излучающий специфичным цвет. Второй способ заключается в использовании одного светодиода пакет,
содержащий три отдельных PN перекрестки, по одному для каждого цвета. Каждый метод имеет выгоду ц и недостатки, которые
будут обсуждаться
10
ниже. На рисунке 3.7 показаны три отдельные красные, зеленые и синие светодиоды, тогда как цифра 3.8 иллюстрирует один
светодиод пакет, содержащий красный, зеленый и синий диоды.
Рисунок 3.7: светодиоды дискретных RGB
Печатный с разрешением, предоставлен Wikipedia.org [5]
Рисунок 3.8: Одиночный пакет СИД RGB Печатных с
разрешением, предоставлен Wikipedia.org [5]
11
Три дискретных светодиодов:
Недостатки
преимущества
• Лучше Термические характеристики
•
Дополнительное подключение
•
•
Увеличение затрат
Более высокая надежность
• Широкий выбор упаковки
• Снижение цвета Blending
Одиночные светодиоды Пакет:
Недостатки
преимущества
•
• Плохо Тепловыделение
Упрощена Электропроводка
• Снижение затрат
• Lower Надежность
• Лучше Цвет Blending
• Снижение доступности пакета
Сравнивая два варианта, с использованием одного комплекта светодиодов с тремя отдельными PN переходов
будет использоваться для строительства этого проекта. Выбор использовать один пакет позволит значительно
сократить затраты на строительство и время, сложность проекта, и увеличит визуальную привлекательность куба,
позволяя гораздо лучше смешивать цвета и насыщенность.
Коммерчески доступные светодиоды о ФФ Ered во многих различных размерах упаковки и форматах. Как и
большинство электронных компонентов поверхностного монтажа и через отверстие варианты (этилированный) пакет
доступны. Светодиоды поверхностного монтажа устройств, обычно сокращенно SMD, которые плоские чипы, которые
излучают свет приблизительно в 180 ◦ поле зрения. Эти светодиоды обычно не имеют линз, и предназначены для
обеспечения освещения, а затем осветить себя. Через отверстие светодиоды обычно в виде небольшого
пластмассового пули, и содержат два или больше потенциальных клиентов, которые выходят из нижней части
упаковки и традиционно проходят через печатную плату. Этот пластиковый пакет, а предназначен, чтобы скрыть, как
мало света, насколько это возможно, на самом деле будет гореть с перекрёсткой, этот пакет может быть виден из
более чем 180 ◦ угол, что прототип куб будет построен с.
LED качество может быть измерено в двух очень разных, но важных факторах, е FFI фективности и цвета длиной волны.
Во время строительства светодиодов, каждый е и далее орт делается для получения высокого качества продукции. Во
время контроля качества, процесс, называемый биннинга происходит там, где каждый светодиод испытывается и
измеряется для того, чтобы он соответствовал стандартам качества. Чем выше е FFI тивности, и тем более точный цвет
длина волны, тем выше цена светодиод будет командовать. Кроме того, не перечислить всех поставщиков фактических
спецификаций на их продукции при розничной торговле их. Из-за эти проблемы, группа будет выбирать пройти через
уполномоченный дистрибьютор продуктов, предоставляемый выбранный светодиодный производитель, в отличии от
продажи или торгов сайта, как eBay и Amazon.
12
Светодиоды по своей сути температуры и напряжения чувствительные устройства. Светодиоды, когда смещены при более высокой
температуре излучают меньше света. В больших светодиодах, это е и далее ЭСТ вызывает резкое снижение мощности светового
потока. Из-за низкую природу мощности светодиодов, используемых в этой конструкции, а также от условий эксплуатации проекта,
тепловой электронная FFI тивности не следует ТФ т.д. яркость светодиодов используется.
LED Choice
Решение, для которого Светодиоды использовать в 3D-куба абсолютно самый критический выбор. Поскольку светодиоды
действительно главный компонент LED куба, группа выбрала более ди FFI культ еще более полезный путь. Вместо
использования коммерческой о FF- на шельфе (COTS) диодов, изготовленные на заказ светодиоды были Специфической
Эда и заказали. Этот выбор позволил значительно более высокую степень контроля над остальной частью дизайна
компонентов. Поскольку большинство дизайна зависит от Конкретных катионов светодиодов, начальный пользовательский
дизайн позволил остальной части проектных решений, которые будут сделано с значимо большей легкостью, чем если
светодиоды представлены более широкими конструктивные проблемами и недостатками.
20 м ток переднего привода
Пик 100mA вперед рейтинг (1 / 10th Рабочий цикл)
- 40 ◦ до 100 ◦ C Рабочая температура 5V Reverse
Номинальное напряжение 1000В Электростатический
разряд Порог
Таблица 3.1: LED катионы Специфических
3.2.2 LED Электропроводка
Существует несколько ди ФФ различны архитектуры для подключения и питания большого количества светодиодов.
Некоторые из наиболее распространенных технологий будут рассмотрены и обсуждены в деталях, и выбор будет сделан,
какой архитектура лучше всего подходит для LED куба 3D.
Индивидуальное подключение
Самый простой и самый прямой способ контролировать количество светодиодов для подключения каждого
светодиода к индивидуальной линии управления микроконтроллера или аналогичного устройства. Другой штырь
СИД будет соединен с землей. С помощью этого метода, одна контрольная линия необходима для каждого
светодиода, чтобы контролировать. Для власти и управления LED куб с 1000 светодиодов в трех цветах каждый,
3000 линий управления не потребуется. Это было бы крайне сложно провода и контроля, и это меньше, чем
идеальный выбор.
13
Для того, чтобы включить все одного цвета на сразу, в 1000 раз ток каждого светодиода необходимо
подавать схему управления. Если все цвета должны быть включены, чтобы произвести белыми,
увеличивается до 3000 раз тока одного светодиода. Это потребовало бы быть в состоянии поставлять
около 60 ампер. Это было бы непомерно высокой для передачи на таком низком напряжении.
Индивидуальная проводка действительно обеспечивает то преимущество, что полная яркость светодиодов доступна. Там нет
сканирования или освежающих светодиодов, которые будут отвлекать от яркости доступной, де бесконечны плюс. Другое
преимуществом индивидуальной проводки является то, что без сканирования через светодиоды, нижняя производительность
процессор может быть использован.
мультиплексирование
Одним из наиболее распространенных способов вождения больших массивов светодиодов заключается в использовании схемы
мультиплексирования. Это метод, который используется для большинства телевизионных и больших экранов формата.
Мультиплексирование контролирует два больших размеры массивов светодиодов с меньшим количеством линий управления, чем
проводка каждой из светодиодов по отдельности. Пример того, как мультиплексирование подключен показан ниже на рисунке 3.9
Рисунок 3.9: Схема мультиплексирование с разрешением
Печатного, Предоставлен Wikipedia.org [5]
14
При мультиплексировании, все аноды подряд соединены вместе и катоды столбца соединены друг с другом.
Применяя силу только одной строке, и заземление только один столбец, индивидуальный светодиод может быть
включен. При подаче питания на несколько рядов, и заземление только один столбец, все светодиоды в одной
колонке можно управлять. После того, как эта колонка находится под контролем, следующий столбец может быть
заземлен, а его соответствующие строки получать питание.
Этот цикл повторяется для каждого из столбцов на дисплее, достаточно быстро, так что сохранение
человеческого зрения воспринимает, что каждый из светодиодов, был включен в один момент, это постоянно. При
скорости около 50 Гц, большинство людей видят светодиоды, как постоянно, однако некоторые обнаружения
мерцания. После примерно 100Гц, сканирование, как представляется гладкой.
Используя мультиплексирование, число контрольных линий резко снижается. Для массива из десяти по десять
светодиодов только двадцать линий управления требуется, в отличие от ста линий управления, которые
потребовались бы при подключении их по отдельности. Подключение куба, как массив из десяти светодиодов
триста (сто три цветов), 310 линии управления требуется, резкое сокращение по сравнению с 1000, необходимым
при использовании индивидуального метода проводки. Мультиплексирование также позволяет легко проводки куба,
аноды могут быть соединены плоскостями, и катодов по столбцу или строке, помогая обеспечить структурную
поддержку.
Charlieplexing
Charlieplexing представляет собой метод для приведения в движение большого количества светодиодов с небольшим числом
контрольных линий. Этот метод был впервые предложен Чарли Аллен в Maxim Integrated. Charlieplexing, в отличие от
индивидуальной проводки, и мультиплексирования, требует три логики состояния, на, о и далее, а также высоком импедансе. Этот
режим высокого импеданса обычно реализуется путем установки линии управления на вход. С помощью этого третьего состояния,
светодиоды могут быть подключены по схеме, как показано на рисунке 3.10.
Ф.Л. озоления через каждый из необходимых светодиодов, которые должны быть достаточно быстро, так как с
мультиплексированием, весь дисплей может гореть одновременно. В отличии от мультиплексирования однако, только несколько
светодиодов находятся в то время, когда с помощью charlieplexing, в некоторых случаях только один светодиод. Это
значительно увеличивает скорость сканирования, которая требуется для достижения мерцания свободного дисплея.
Существующие требования charlieplexing снижения резко, хотя, как только горстка светодиодов на то же время.
15
Рисунок 3.10: Схема Charlieplexing Печатного с
разрешением, предоставлен Wikipedia.org [5]
С помощью этого метода, огромное улучшение по сравнению с количеством линий управления, необходимыми найдено.
Количество светодиодов, L, что может быть обусловлено рядом контрольных линий, п,
задается уравнением: Л = п 2 - п. Решение для п, было установлено, что п = 1+ √ 1 + 4 L
2
,
Эта архитектура приводит к необходимости только 55 линий управления для привода трех тысяч светодиодов.
Тем не менее, характер светодиодов, выбранных общим катодом, не допускает charlieplexing. Это исключает
возможность использования charlieplexing, однако это будет новая идея рассмотреть LED куб с этим методом
подключения.
Электропроводка выбор для 3D LED куб
Учитывая все преимущества и недостатки указанных индивидуальной проводки, мультиплексирование и
charlieplexing, группа обнаружила, что мультиплексирование будет лучшим выбором для создания светодиодного
куба. Это упростит наш проводниковые е Ф.Ф. орты для построения куба, и позволит нам использовать самую
простую, е FFI систему управления Cient для питания куб. Принимая во внимание, что куб десять вокселей в каждом
направлении, это делает большинство смысла для группы проволоки каждого столбца катодов в одной строке, и
каждую плоскость анодов, как строки. С точки зрения управления и программирования, это будет сделать куб, как
будто это было два Трехмерный дисплей с десятью рядами, и три сотни столбцов. Просмотр куба таким образом,
также упростит проводку, так как катоды и аноды каждого светодиода могут быть использованы в качестве несущих
конструкций.
3.2.3 Драйверы светодиодов
Светодиоды, будучи PN переходами, являются нелинейными устройствами, которые требуют специфичной осторожности,
чтобы гарантировать, что устройство работает в пределах своих физических пределов. PN перекрестки имеют
экспоненциальный рост диссипацией тока с линейным увеличением напряжения смещения, что делает текущий чрезвычайно
важным фактором для питания светодиодов. По этой причине, 3D LED Cube использует постоянную технологию тока при
движении светодиодов.
16
Это гарантирует, что тепловые и физические характеристики светодиодов не передаются, и распад не
происходит.
Есть многочисленные светодиодные драйверы, доступные на рынке, ориентированные Специфическое сегментов С и приложений,
некоторые предназначены для приведения в движение только небольшое количество светодиодов, некоторые предназначены для
питания светодиодов очень большие, а некоторые предназначены для питания больших количеств светодиодов. Для 3D LED куб, группа
ищет Чтобы найти светодиодный драйвер, который может работать как адекватный ток, и количество выходов, необходимых, в то же
время доступны в удобном для сборки пакета.
Большинство светодиодных драйверов имеют одинаковую базовую архитектуру. Как правило, некоторая форма задней
плоскости последовательное соединение обеспечивает ввод данных в регистры внутри чипа. Внутренний генератор
приводит в действие счетчик, с которым каждый регистр по сравнению с, чтобы произвести необходимые выходы. Когда
регистр счетчика равно, выход переключается на логику на. Последовательный характер этих светодиодных драйверов
часто работают в диапазоне мега-герц, требующих высокой скорости связи для того, чтобы быть наиболее е и далее ective. В
сообщении такого рода может быть лучше всего подходит для FPGA.
Выход светодиодных драйверов поставляется в двух основных вариантах, с открытым стоком / коллектором и стандартным TTL.
Открытым стоком работает путем подключения выхода чипа к стоку внутреннего МОП-транзистора, или собирателя внутреннего
биполярного транзистора, в зависимости от того, что строится IC с. С открытым стоком может затем использоваться, чтобы
тонуть тока, или соединить выход на землю, что позволяет большой диапазон напряжений, которые будут использоваться с
выходом.
LED Driver: Texas Instruments TLC5940
TLC5940 является одним из самых старых устройств в линейке драйверов LED Texas Инструмента. Эксплуатация 16
каналов при постоянном токе, он может поставить либо 0-60mA (Vin < 3.6V) или 0-120mA (Vin> 3.6V). Максимальный ток
для всех 16 каналов управляются с помощью внешнего резистора. Максимальное выходное напряжение для
светодиодов водителя 17V. С 12 бит управления яркостью (BC), то TLC5940 способен к шагу яркости в 4096 с шагом, с
помощью широтно-импульсной модуляции (PWM), что позволяет светодиодный куб для отображения RGB цвета. 6
бит коррекция точки включена, позволяя светодиодный драйвер для регулировки изменения яркости как между ди
каналами и след различно, а также ди и далее различен светодиодными драйверами, так что яркость соответствует
для каждого светодиода. Данные для коррекции точек хранятся в бортовом EEPROM.
Кроме того, TLC5940 включает в себя две ошибке уведомлена катионные цепей: LED открытого обнаружения
(LOD) и тепловая ошибка фла аги (ТЭФ). LOD указывает на сломанный или отсоединены светодиод, и TEF
указывает на перегрев. Все коммуникации с водителем (BC, точкой коррекции, поиск ошибок) осуществляются с
помощью последовательного соединения. Наконец, TLC5940 доступен в пакетах 28HTSSOP, 28PDIP и 32VQFN.
Пакеты Устройства доступны просто и далее ЭСТ формы устройства и мощность диссипации из-за эту форму.
Производительность устройства будут одинаковы для разных пакетов. Рисунок 3.11
17
Ниже приведена блок-схема драйвера TLC5940 LED.
Рисунок 3.11: TLC5940 Блок-схема напечатаны с
разрешением, Предоставлено Texas Instruments [6]
LED Driver: Texas Instruments TLC5948A
TLC5948A более новая, более надежная версия TLC5940. Подобно TLC5940, она действует 16 каналов на
постоянном токе, либо подачи 2mA-45mA (Vin < 3.6V) или 2mA-60mA (Vin> 3.6V). Где она затмевает его
предшественника с 16-битным управления яркостью (BC), отступая в 65536 с шагом. Кроме того, он имеет
7 бит точечной коррекции (DC), что позволяет более точной коррекции постоянного тока между каналами
и отдельными устройствами. Другая интересная особенность TLC5948A является его 7 битами
глобального контроля яркости. TI приводит постоянную точность тока этого драйвера на ±. 6% (тип), ± 2%
(макс) канал-канал и ± 1% (тип), ± 4% (макс) устройство-устройство.
TLC5948A имеет данные даты обновления на 33МГц, режим экономии энергии, чтобы свести к минимуму Vin тока и
расширенные катионы фи ошибка Noti. Это шесть ошибок фли AGS светодиодные открытое обнаружение (LOD), LED для
обнаружения короткого замыкания (LSD), обнаружение утечки выхода (OLD) эталонного ток терминала обнаружения
коротких фл AG (ISF), предварительно термическое предупреждение (PTW), и тепловую ошибка фла AG (ТЭФ) , Катионы фи
ошибки NotI извлекаются через последовательный порт интерфейса. Рабочая температура TLC5948A -40 С ◦ до +85 C ◦.
Тем не менее, его максимальная LED напряжение меньше TLC5940 только на 10V. Он доступен в
24HTSSOP и 24SSOP пакетов. Рисунок 3.12 ниже показывает блок
18
схема для TLC5948A светодиодного драйвера.
Рисунок 3.12: TLC5948A Блок-схема напечатаны с
разрешением, Предоставлено Texas Instruments [6]
LED Driver: My-Semi MY9161
MY9161 Моею-Semi Инкорпорейтед другой жизнеспособной светодиодный драйвер. Эксплуатация 16 каналов
при постоянном токе, он принимает входное напряжение между 3,3 В и 5В. Выходы рассчитаны на 17V,
обеспечивая 55mA выходного тока (на входе 5В) в строку светодиодов. Этот высокий выходной ток необходим
для приведения в действие светодиода на соответствующем уровне яркости. Выходной ток дополнительно
программируется с выходным сопротивлением. LED затемнение (позволяет RGB цвет) осуществляется с
25MHz ДВК. MY9161 имеет прозрачную защелку 16 бит, 16 бит регистра сдвига, а также 4-проводной
последовательный интерфейс (DI, ДВК, DO, ENB). Данные из (DO) позволяет водителям быть каскадно
вместе, требование к конструкции LED куб. MY9161 также специфическая ред иметь точность постоянного
тока ±. 7% канала к каналу и ±. 1% устройство-устройство, с ±. 1% мощность выходного тока регулирования и
50ns время отклика переходной выход. Драйвер работает над температурой -40 ° С ◦ до +85 C ◦, более чем
достаточно для применения куба LED. MY9161 доступен в пакетах SOP24, SSOP24 и QFN24. Рисунок 3.13
ниже показан блок-схема для MY9161 светодиодного драйвера.
19
Рисунок 3.13: Блок-схема MY9161
Печатается с разрешения, Предоставлено My-Semi Инкорпорейтед [7]
LED Выбор драйвера
Texas Instruments TLC5948A был лучшим вариантом для этой конструкции. Основной пункт продажи для этого драйвера
является его 16 битым управлением яркостью. Это обеспечит множество вариантов более цветов, чем меньше
разрешения диммера и значительно повысить визуальное представление светодиодного куба. Недостатки этого
драйвера по сравнению с другими, рассмотренных в этом проекте в конечном итоге быть спорными. В то время как он
имеет только максимум 10V LED напряжение, это превышает наши требования. Несмотря на то, что не может
обеспечить более 60мА тока (при 5,5В), светодиоды, выбранные для этого проекта потребует 50mA тока. Расширенное
обнаружение ошибок и частота обновления данных 33МГц некоторые другие менее важные причины, которые вносит
свой вклад в то, что TLC5948A поднимается выше своих конкурентов для этого приложения.
3.2.4 Встроенные процессоры
Почти любое устройство, сделанное сегодня имеет какое-то процессор или микроконтроллер вложенный в него.
Вопрос часто не в том или не будет процессор, но процессор использовать, и насколько мощный процессор
необходим. Для того, чтобы общаться как с компьютера пользователя, а также FPGA для схемы привода, будет
необходим процессор с несколькими линиями связи. Группа хочет использовать процессор, который имеет
хорошую документацию и справочные конструкции имеющиеся, а также низкий уровень разработки
программное обеспечение расходов и аппаратное обеспечение.
Встроенный процессор будет нести ответственность за управление работой LED куб. Желательно, чтобы
процессор иметь базовый веб-страницу, способную контролировать и создавать простые анимации, со
сложными анимация, которые будут оказываться на
20
сервер. Встроенное программное обеспечение процессор будет пройти через множество изменений и обновлений,
поэтому в поле обновления являются обязательными. Процессор также необходимо способна обеспечить новый фи
rmware к FPGA, либо путем загрузки его непосредственно, либо путем перепрограммирования устройства хранения на
борту. Кроме того, учитывая желание сохранить содержание на самом светодиодном кубе, процессор должен будет
иметь возможность сопряжения с внешним механизмом хранения. Полный список желаемых спецификаций и
возможностей процессора приведены ниже в таблице 3.2. Эти требования будут использоваться, чтобы помочь группе
в выборе встроенного процессора, способного контролировать проект.
В обновлениях программных поле (Bootloader желательно, ICSP, если нет) пакет
Доступность (легко паять) подключения Ethernet контроллера DMA
Внешнее запоминающее устройство (МБ в ГБ диапазон)
Обильный RAM SPI (по крайней мере один) Low Power 3х3
желательно C или C ++ компилятор
Таблица 3.2: Желаемая Особенности и спецификации
Встроенный Процессор: Atmel Atmega 2560
Компании Atmel Atemga 2560 является популярным процессором среди хобби проектов, из-за его включение в линии
Arduino плата развития. Atmega 2560 является одним из самых больших 8-битовых микропроцессоров Atmel,
обеспечивая 256Kb бортового хранения фл золы и 8 КБ оперативной памяти. Atmega 2560 удовлетворяет
большинство требований проекта, однако имеет самую низкую производительность кандидатов. Это более низкая
скорость не потребует группы, чтобы сделать почти все его обработку O и след совета, и ни один из них на
встроенном процессоре. Полный список Конкретных катионов Atmega 2560 приведен в таблице
3.3 ниже. Это все из спецификаций, что группа делается вывод был бы полезен для проекта. Почти все
Конкретных катионы соответствуют или превышают потребность группы проектирования, однако процессор
медленной часть выбран, и не работает на 3.3V. Это потребовало бы, что группа представит сдвигающую схему
уровней между процессором и FPGA. Смещение уровня является тривиальной задачей, однако было бы добавить
больше конструкции, то необходимо и победить группы желание сохранить схему, как просто и легко, как это
возможно.
21
8 Bit AVR Архитектура
16 MIPS пропускная способность при эксплуатации устройства 16МГц
тактовая частота 5V 86 пользователя IO Pins 5 SPI Интерфейсы 1 I2C
Интерфейсы Интерфейс 4 UART
Опции Внешние Ethernet Доступно 8 KB
Статический RAM 4 KB Программа EEPROM
пользователя 256Кб фл пепел память Доступный
в TQFP100 Пакет C и C ++ компиляторы
доступны Assembler доступны
Совместимость со средой разработки Arduino
Таблица 3.3: Ateml Atmega 2560 Особенности и катионы фи Конкретные
Встроенный процессор: Microchip PIC24HJ256GP206A
PIC24 от Microchip является относительно мощный, 16 битого Harvard архитектуры процессора. Процессор способен
работать со скоростью 40 MIPS, более чем в два раза, что микросхемы Atmega, перечисленных выше. Эта норма
инструкции более чем достаточно, чтобы быть в состоянии выполнять все процессы, необходимые. Microchip линейка
процессоров совместима с их линией локальных сетей интерфейсов, через SPI и параллельные интерфейсы. При
использовании Microchip линии локальных сетей интерфейсов, всех стек TCP / IP Microchip может быть использован, что
позволит значительно снизить уровень й фф Орт группы будет иметь, чтобы положить, чтобы получить рабочий раствор и
работает. PIC24 также имеет большое количество пользовательского ввода-вывода и большим набором функций, как
показано в таблице 3.4
16 Bit MIPS архитектуры 40 MIPS
Пропускная способность
Эксплуатация 3.3V устройства 53 пользователя IO Pins 2 SPI
интерфейс 2 I2C Интерфейсы 2 UART Интерфейсы 16KB
статическое ОЗУ 256Кб Программа флэш-память доступна в
TQFP64 Пакет C и Ассамблеи Поддерживаемые Интерфейс
Ethernet и библиотеки Код доступен
Таблица 3.4: PIC24HJ256GP206A Особенность и спецификации
22
Встроенный Процессор: TI AM3358
AM3358 TI является мощным 1 ГГц процессор ARM Cortex-A8, способный работать под управлением операционной
системы, такие как Linux. Используется в BeagleBone линии макетных плат, поддержка сообщества и справочная
документация в изобилии. AM3358 является самым мощным процессором, который группа рассматривает, что
позволяет с пропускной способностью до 2000 MIPS с тактовой частотой 1 ГГц тактовой частотой. Эта величина
мощности позволит группе сделать огромное количество обработки на борту. AM3358 имеет огромное количество
пользовательского ввода-вывода доступны, и большое количество штырьков, способных быть использованы в
качестве общего вывода. AM3358 является почти идеальным кандидатом для 3D LED кубы, однако это требует
чрезвычайно сложная конструкция для использования. Пакет BGA является один, что группа не может работать в
своих собственных возможностях. Процессор, как это потребовал бы, по меньшей мере печатной платы
шестислойной, и потребует группы, чтобы нанять помощь сборочной компании. Полный список функций, полезных
для проекта приведен ниже в таблице 3.5. Это не полный список возможностей процессора, но только то, что
группа делается вывод, имеющие отношение к проекту.
32 бита ARM Cortex-A8
2000 MIPS пропускная способность на 1 ГГц тактовой частотой
1.1V Ядро эксплуатации, 3.3V IO Эксплуатация 128 общего
назначения IO Pins 2 SPI интерфейсы 3 I2C Интерфейсы 6
UART Интерфейсы
2 Бортовые 1Гбит Ethernet Интерфейсы Доступный в
298 или 324 Pin BGA пакет
Linux, Android, и операционные системы Bare Metal Доступно.
Таблица 3.5: TI AM3358 Особенность и спецификации
Встроенный процессор Выбор
Группа решила использовать PIC24HJ256GP206A в качестве встроенного процессора для проекта. Этот
процессор охватывает все функции, которые мы необходимы для того, чтобы обеспечить приятный дисплей,
в то же время достаточно легко работать, а также стоимость е и далее ective. PIC24 не самый быстрый из
процессоров, что группа считается, но более чем достаточно мощным, чтобы иметь возможность общаться
со всеми периферийными устройствами, а также обеспечить низкую частоту обновления задержки. PIC24
также доступен в гораздо проще работать с пакетом, TQFP, в отличие от пакета BGA в AM335X. PIC был
выбран более Atmega устройства Atmel, из-за более высокую общую тактовую частоту и большое богатство
производителей поддерживаются библиотеки разработки и примеры кода.
23
3.2.5 MOSFETs
MOSFET мощность, или металл-оксид-полупроводник поле Е и далее ECT транзистор, представляет собой
три-терминал (источник, ворота и сток) транзистор. МОП-транзистор является самым популярным поле е и
далее ЭСТ транзистор используется в настоящее время, обгоняя один раз популярный биполярный транзистор
(BJT). Канала из полевого МОП-транзистора может нести либо электроны (NMOS) или отверстия (PMOS),
изменяя направление тока потока через МОП-транзистора. MOSFET мощностью имеет три операции в режиме
расширения (со ссылкой на увеличение проводимости с увеличением несущей при добавлении оксида поля),
которые являются Cuto и далее, триод, и насыщенность (также известный как активный). Эти режимы
управляются напряжением Vds, приложенным между стоком и истоком транзистора. Рисунок 3.14 описывает
вольтамперную характеристику общего полевого МОП-транзистора. Обратите внимание на то, как в Cuto фф,
транзистор считается о и далее, с отводом тока Id = 0. По мере увеличения Vds, МОП-транзистор входит в его
линейном (триод) области работы, с постоянным увеличением тока с напряжением. Однако, в точке, ток
насыщается и МОП-транзистор называются в области насыщения. Прошлое этот момент, ток будет
регулироваться на этом уровне - независимо от величины VDS. Как показано на рисунке, кривые
вольт-амперный-ди-FF различны достигается на основе ди значений и далее отличен от VGS-ВТНО. Vtn
является транзистор собственности, основанный на его строительстве, но Vgs является оператором
контролируемого значения. С учетом этих характеристик в виду, MOSFET становится ценным устройством
текущего контроля. Это особенно полезно при применении куба 3D LED, так как количество МОП-транзисторов
может быть использован для управления, какой слой (плоскости ху) светодиодов активируется. По существу,
Рисунок 3.14: Generic MOSFET вольт-амперные характеристики
24
МОП-транзистор: В фи неоновой технологии SPD15P10PL G
SPD15P10PL G на В фи неоновых технологиях является P-канальный МОП-транзистор с высоким
непрерывным дренажным током 15, что позволяет текущее регулирование всего светодиодного куба, даже при
максимальной мощности. Она имеет сток-исток из -100V и затвор-исток из ± 20V. Это намного превышает
требования, предъявляемые к данной заявке. Сопротивление сток-исток (на) несколько низком уровне 200mΩ.
Рабочая температура МОП-транзистора колеблется от -55 ◦ C до 175 ◦ С и имеет типичный поворот время
задержки уплотнительного ФФ 50ns. Он доступен в пакете TO-252.
МОП-транзистора: Fairchild Semiconductor FDD5614P
FDD5614P от Fairchild Semiconductor является Р-канальный МОП-транзистор с высокой непрерывной дренажного
тока 15А. Напряжение пробоя сток-исток является -60В, а напряжение пробоя затвор-исток ± 20V. Сопротивление
сток-исток (далее) приводится в качестве 76mΩ. рабочая температура этого MOSFET является также -55 ◦ C до 175 ◦ C.
Его характерный поворот о времени задержки ФФ 19ns.
МОП-транзистор: Vishay / Siliconix SUD45P03-10-E3
SUD45P03-10-Е3 от Vishay / Siliconix является Р-канальный МОП-транзистор с высокой непрерывной дренажного
тока 15А. Напряжение пробоя сток-исток является 30V с напряжения затвор-исток пробое ± 20V. Сопротивление
сток-исток (на) является очень низкой 18mΩ. рабочая температура этого MOSFET является также -55 ◦ C до 175 ◦ С.
Типичное очередь о времени задержки и далее выше, на 100 нс.
MOSFET Choice
МОП-транзистор выбран для этого проекта является Vishay / Siliconix SUD45P03-10-E3. Самым привлекательным качеством этого
полевого МОП-транзистора является его низкое Rds (на) сопротивление, при 18mΩ. Это очень важно, так как при 15А, мощность
рассеивается в МОП-транзистора будет Р = 15 2 *. 018 =
4.05W. Однако, если плата управления разделена на две отдельные доски, то мощность, выделяемая сводится к Р =
7,5 2 *. 018 = 1.0125W, гораздо более разумное значение. Это низкое значение Rds (на) представляет собой ди FFI
культ достичь с таким большим током, - но очевидно, что оно является одним из наиболее важных проблем для этой
конструкции. Кроме того, очередь о времени задержки и далее от 100ns хлопотно. И проблема рассеиваемой
мощности и выше времени задержки потребует решения в ди и след различны аспекты дизайна LED куб. Эти
решения будут рассмотрены более подробно в соответствующих разделах.
3.2.6 ПВМ
Из-за строгие требования по срокам проведения светодиодных драйверов выбраны, микроконтроллер не является
идеальным для общения с водителями, используемыми. Группа решила использовать FPGA для обработки строгих
требований по срокам проведения светодиодных драйверов, и, чтобы облегчить общую нагрузку на процессор, чтобы
позволить ему сосредоточиться на генерации и преобразования данных. FPGA будет использоваться для генерации всех
необходимого контроля
25
сигналы для приведения в действие светодиодных драйверов и МОП-транзисторы для того, чтобы обеспечить самую высокую частоту
обновления возможно. FPGA устройства по своей природе являются идеальными для строгой синхронизации из-за того, что они
являются аппаратными устройствами, нет прерывания, чтобы замедлить выполнение.
ПВМ, будучи Рекон фи gurable аппаратных устройств, требуется некоторый способ передачи этой конструкции с
компьютера разработки на самой FPGA. Есть много возможных путей достижения этого процесса, каждый из которых
нацелен на специфичный интерес и нуждается. Существуют различные методы, чтобы обеспечить простой способ
обновления программного обеспечения, безопасности кода, быстрое время загрузки и дешевой стоимости
компонентов. Группа оценивает процесс, который будет легко обновить до новой версии фантастического rmware, в
связи с характером развития этого проекта. Низкая стоимость компонента также является преимуществом, но не
является высшим приоритетом, потому что там будет только один пульт управления сделал. Основные методы кон
фи guring ПЛИСА являются внешним EEPROM, используя CPLD, используя внешний микропроцессор, к которому
ПЛИС является ведомым, или с помощью подключения к компьютеру разработки. Благодаря предложенной
архитектуры этого проекта, имеет наибольший смысл, что процессор будет отвечать за программирование ПЛИС.
Из-за относительно большой природы ПЛИС конфигурации фи ле, необходимо, чтобы процессор будет иметь
внешнюю память для хранения этой конфигурации, которая будет иметь для чтения при запуске, и отправляется на
FPGA с помощью соответствующего метода.
При подтвер- guring ПЛИС через внешний процессор, можно использовать последовательный или параллельный метод.
Использование любого из этих методов, необходимо общаться с FPGA и сказать ему, когда ожидать программы
изображения, и, как ожидает эту программа изображения. Есть целый ряд режимов штифтов для говорить FPGA,
которые FPGA будет считывать при включении питания, чтобы определить, каким образом она должна получить его
конфигурацию. Эти штыри режим будет трудно проводной в нашей конструкции схемы, чтобы позволить только для
внешней нагрузки через процессор. Процессор будет подключен к FPGA для того, чтобы сигнализировать, когда он
должен выполнить сброс, и когда он должен загрузить новые данные из входных данных. Последовательные методы
требуют лишь небольшое количества контактов для передачи данных, линии синхронизации и линии передачи данных.
Параллельные методы требуют часов, и ряд выводов данных, соответствующая ширине шины данных. Из-за легкости
последовательной связи внутри встроенного процессора, выбранного и природы, что только несколько булавок
требуются для связи, FPGA, будет загружен ЦП в последовательном характере.
FPGA также может быть использован для выполнения более сложного анализа и вычисление на встроенной платформе,
благодаря своей способности выполнять сложные операции очень быстро. Группа может быть в состоянии выполнить
процесс, такие как быстрое преобразование Фурье (FFT) для анализа сигналов в реальном масштабе времени,
полученные встроенной системой управления, чтобы обеспечить интерактивный дисплей.
Обзор желаемых функций и черт FPGA для куба 3D LED можно найти в таблице 3.6 ниже. Эти признаки,
перечисленные в резюме того, что группа ищет в кандидате FPGA, и будут использоваться, чтобы
помочь группе объективно выбирать между исследуемыми частями FPGA.
26
QFP или другой этилированном пакет для сборки Нагружаемого через
внешний процессор 40 ввод-вывод доступных выводы
3.3V терпимым IO
Свободные или низкая стоимость инструментов разработки
Дружественный с развитием низкой стоимости легко получить
Таблица 3.6: Желаемая FPGA Особенности и спецификаций
FPGA: Xilinx Spartan 3
Xilinx Spartan 3 FPGA являются очень распространенным FPGA для малого использования проекта, доступны в
различных размерах ди Ф.Ф. различны, пакетов и цен. Spartan 3 линия ПВМ будет достаточно большой, чтобы
справиться с мультиплексированием светодиодных драйверов, и связь с встроенным процессором. Каждый член
группы знаком с Spartan 3 линии ПВМ от классов, требующих проектирования FPGA. Знакомство с программным
обеспечением, используемым для разработки фи rmware и природой ПЛИСА Xilinx является большой выгодой
группы. Таблица применимых функций для проекта можно увидеть ниже в таблице 3.7.
QFP Пакет доступен
загружаемый через SPI 173 IO
Pins
3.3V терпимым IO Free Development ISE
люкс $ 15 в незначительном количестве
Доступны с большинством дистрибьюторов электроники 200k
System Gates 216Kb RAM
Таблица 3.7: Xilinx Spartan 3 Особенности и катионы фи Конкретные
FPGA: Xilinx Spartan 6
Spartan 6 линией ПВМ является более мощной, большой архитектурой Spartan 3 линии. Спартанский 6 включает в себя
дополнительные функции, такие как блоки обработки DSP на борту, большие блоки логики, а также возможности для
более высоких тактовых частотах и ​больше пропускной способности. В Spartan 6 ПВМ доступны в больших упаковках.
Таблица применимых функций для проекта можно увидеть ниже в таблице 3.8.
27
QFP Пакет доступен
загружаемый через SPI 200 IO
Pins
3.3V терпимым IO Free Development ISE
люкс $ 15 в незначительном количестве
Доступный от большинства дистрибьюторов электроники 9152
Logic Cells 576KB RAM
Таблица 3.8: Желаемая FPGA Особенности и спецификаций
FPGA: Altera EP1C6
Альтера EP1C6 FPGA является одним из их самых большого ПЛИСА доступны в пакете TQFP. Группа считает
эту часть, чтобы сравнить о ФФ erings от Xilinx с другими производителями. Без особого знакомства с линией
Altera в ПЛИС, группа решаются использовать его без большого количества выплат, ц, что группа не смогла
фи-й. Xilinx Spartan 6 части имеет больше внутреннего ОЗУ, имеет больше IO булавку, и имеет более низкую
стоимость. Это делает Altera отчасти является неразумным выбором для этой группы, чтобы использовать.
Полный список полезных функций для Altera EP1C6 можно найти ниже в таблице
3,9
QFP пакет Доступный
загружаемый через SPI 185 IO
Pins
3.3V терпимым IO
Free Разработка Quartus программного обеспечения $ 28,40
в незначительном количестве
Доступна с большинства дистрибьюторов электроники 5980
Logic Elements 80Kb RAM
Таблица 3.9: Желаемая FPGA Особенности и спецификаций
FPGA Выбор
С учетом потребностей проекта, группа считает, что лучший выбор FPGA быть от линии Xilinx Spartan 6.
Конкретно, то XC6SLX9 FPGA, самый большой доступный в пакете TQFP распиновка. Группа ограничивается
использованием FPGA, доступных в пакете TQFP из-за простоты его использования по сравнению с BGA или
пакет QFN. Этот пакет будет также упростить конструкцию печатной платы, что позволяет группе, чтобы иметь
возможность направлять все следы монтажной платы с легкостью на минимально сложной плате. Spartan 6
также имеет срез DSP, который группа сможет использовать, чтобы делать сложные вычисления, которые в
противном случае перегрузки встроенного процессора.
28
Xilinx Spartan 6 соответствует или превосходит все желаемые функции для системы FPGA. Выбор ПЛИС,
который больше, чем необходимо будет обеспечить группу для роста, а также добавить дополнительные
функции, как время позволяет.
3.2.7 Методы и протоколы связи
Данные должны перемещаться между несколькими компонентами на протяжении систем проекта.
Для того, чтобы передать эти данные, использование, определяемых протоколов упростить
процесс коммуникации. Различные методы существуют с различными достоинствами и недостатками,
которые могут извлечь выгоду от различны частей ди ФФ проекта. Методы связей должны быть выбраны
как для обмена данных между фи rmware и аппаратными компонентами, а также для передачи данных из
программного обеспечения. Выбор протокола связи повлияет на производительность и сложность
передачи данных в рамках компонентов проекта.
Back-самолет связи
Природа кубы 3D LED потребует, чтобы несколько компонентов печатной платы имеют возможность общаться
друг с другом электронной FFI ciently и быстро. Задняя плоскость расположена на печатной плате - будет
требоваться способ связи. Есть много методов различны-ди-FF и протоколов, доступных для обмена данных
между различными чипами программируемых схем. Дизайн проекта потребует использования нескольких
коммуникационных шин, несущий информацию через различные уровни напряжения и тактовой частоты.
Последовательный интерфейс периферийных устройств SPI, также известный как последовательный интерфейс периферийных устройств,
представляет собой общий интерфейс, используемый между чипами цепи. Этот интерфейс будет использоваться для связи с
светодиодными чипами драйвера на печатной плате драйвера, используемых для питания LED куб. SPI является свободно-де определено
стандартом, способный быть реализованы в различных уровней напряжения, тактовых частот, а также методов передачи. SPI, наиболее
часто реализуется на одной печатной плате, или используется для соединения двух печатных плат вместе, либо через на борту
спаривание физический разъем, или физический разъем и длину провода между печатными платами. SPI представляет собой протокол
шины на основе, что позволяет нескольким устройствам обмениваться данными с использованием тех же проводов. Автобус в
управляется ведущим устройством шины или мастера для краткости. Все остальные устройства шины рабы, рабы для краткости. Мастер
шины чип является единственным чипом разрешается водить часы, Chip Select, и Master Out булавки. Эти штифты считаются выходами
для ведущего устройства, а также входы для всех ведомые на шине. Мастер не будет вести мастер в колоде, и оставит этот вывод в
качестве входа. Мастер может также управлять Chip Select линией либо высоким или низким, в зависимости от специфичного ведомого
устройства, чтобы предупредить ведомое устройство, которое он должен слушать и реагировать на данные. Когда Чип Выбор линии для
устройства приводится в активное состояние, ведомый выборку данных из мастера чтобы предупредить подчиненное устройство, которое
он должен слушать и реагировать на данные. Когда Чип Выбор линии для устройства приводится в активное состояние, ведомый выборку
данных из мастера чтобы предупредить подчиненное устройство, которое он должен слушать и реагировать на данные. Когда Чип Выбор
линии для устройства приводится в активное состояние, ведомый выборку данных из мастера
29
либо на переднему или заднему фронту тактового сигнала, в зависимости от реализации и спецификации,
выбранной. В то же время, ведомый будет передавать данные по линии ведомого Out, которые должны быть
считаны с помощью главного чипа. Это единственный вывод, который ведомый способен приводить в действие, и
это единственный выход для ведомого устройства, все остальные штифты на ведомом устройстве считаются
входами. Для того, чтобы иметь более одного чипа на шине и взаимодействовать с отдельными чипами без
столкновений, можно использовать несколько фишек линии выбора. Мастер будет знать, какой чип в какой адрес
через чип выбор линию, и установит этот адрес на чипе выбор линии до начала общения. Используя этот метод,
можно за мастер общаться с числом ди различны и след чипов, разделяя ту же шину данных. Это иногда называют
мультиплексированием шиной данных и напоминает параллельную архитектуру, как показано на рисунке 3.15.
Кроме того, можно управлять несколько чипами в серии или ромашка муи конфигурации, как показано на рисунке
3,16. С помощью этого конфигурацию, шина SPI использует один чип выбора, и каждый чип соединен в
последовательной цепи образом. Мастер подключается к MOSI ФИ первому чипу, мисо из первой микросхемы
будет подключаться к MOSI второму чипу, и так далее, и так далее, пока MISO последнего чипа не
подключается к MISO мастеру шины. С помощью этого метода, все данные передаются через каждый из чипов
в серии образом.
SPI является протоколом четыре провода, когда в полном объеме. Эти четыре проводов каждый имеют
специфичную цель и направление. Четыре сигнала, необходимый для полного осуществления SPI Часовые, Master
В Ведомом Out, MISO, Master Out рабыня, MOSI и Chip Select, CS. Реализации, требующие только один способ связи
может оставить о FF линии передачи данных в направлении не используется, и использовать SPI в качестве метода
три проводной связи.
Рисунок 3.15: SPI-Чип Выбор топологии печатных с
разрешения, предоставлено Wikipedia.org [5]
30
Рисунок 3.16: SPI, последовательная цепочка Топология Printed с
разрешения, предоставлено Wikipedia.org [5]
Параллельно Параллельные интерфейсы реже используются для связи между схемы связи в текущий момент времени
с постоянно растущими тактовыми частотами в пределах центральных процессоров и ПЛИС, однако стоит
рассмотреть. При правильном применении параллельных интерфейсов, можно передавать большие объемы данных в
относительно короткие периоды времени, то, что будет необходимо в кубе 3D LED. Параллельные интерфейсы могут
быть использованы при обмене данных на дискретные элементы схемы, такие как транзисторы. Параллельные
интерфейсы могут быть либо синхронизированы, или синхронизированные, в зависимости от параметров схемы они
соединительные. Параллельные интерфейсы работают над широким спектром напряжений, скорости передачи данных
и кабелями. При использовании параллельного интерфейса, то важно, чтобы длина кабеля спички для каждого из
линий данных. Если длина кабеля не имеют себе равных, существует вероятность того, что один сигнал поступит на
приемном конце перед другой. Это может привести к большой проблеме, если каждым из линий данных читались
перед всеми данными присутствовали на входе. Это, как правило, только забота о высокой частоте, длинных
расстояний кабелей, но вполне возможно, что это может стать проблемой для группы. Каждый е и далее орт будет
соответствовать длине кабеля.
Inter Processor Communication
Inter Processor связь относится к связям, которая происходит между ноутбуком, который будет запущен
программный интерфейс и панель управления в светодиодной кубе, который будет контролировать драйвера
светодиодов. Эта связь является жизненно важным аспектом светодиодной конструкции куба, что делает его
крайне важно использовать надежную и высокую скорость протокола связи. Для того, чтобы толкать анимации из
интерфейса запуска программного обеспечения на ноутбуке с платой управления с желаемой скоростью,
скоростью передачи данных приблизительно 2 мегабита в секунду будет требоваться. Это будет главной заботой
в выборе протокола связи.
Ethernet Ethernet является высокоскоростным стандартом IEEE опубликовали для связи. Это скорость передачи данных составляет
от порядка гигабит в секунду по сравнению со стандартным медным кабелем (CAT5). Ethernet является одновременно надежным, с
проверкой построена ошибка, а также дешевые
31
реализовать дешево реализовать. Каждые из этих причин способствовать массивной популярности локальных сетей в
качестве коммуникационного протокола.
RS232 RS232 представляет собой старый протокол связи, который, в то время как когда-то популярным, не используется почти
столько же, как это было раньше. В то время как надежность, его скорость ограничена до 115 килобайтов в секунду. Кроме того,
с использованием этого протокола, потребует адаптер как на ноутбуке и встроенный процессор. Она также имеет ограниченное
расстояние около 50 футов.
DMX512 Из-за горстки собственных и несовместимыми методов связи для управления освещением решения, DMX512
был разработан как стандартизированный цифровой способ связи. Последовательный протокол передает 512 байт
данных на узлы, соединенных вдоль шины. DMX512 используется во всей индустрии управления освещения для
приложений, которые варьируются от небольших домашних хозяйств проектов освещения до профессионального
сценического освещения и специальных электронных и след ектов.
Art-Net Art-Net был разработан для передачи DMX512 пакетов по стеке Internet Protocol (IP). Art-Net посылает
информацию DMX512 освещения от сервера к узлам по локальной сети в протоколе передачи данных (UDP) пакеты
пользователя. Art-Net протокол имеет то преимущество, что приложения могут по-прежнему использовать протокол
DMX512 через существующие соединения Ethernet без необходимости специализированных последовательных
интерфейсов.
E1.31 E1.31 является протоколом в рамках архитектуры для сетей управления (ACN), которые используются для
управления освещением с приложениями UDP пакетов по IP-пакета. E1.31 де фи NES Streaming DMX над ACN
похож на Art-Net позволяет DMX512 сообщения через существующую сеть Ethernet или беспроводную рамку.
Протокол E1.31 становится новым стандартом для передачи DMX через IP и превзойдет протоколы, такие как
Art-Net.
блютуз Bluetooth стала очень популярной протокол передачи данных по беспроводной сети. Первоначально это был
интересный метод, но низкие скорости около 100 килобайт / сек disquali фи эд его. Еще одна проблема в использовании
Bluetooth является довольно ограниченный диапазон 30ft. Хотя используются в смартфонах, планшетных ПК и многих
беспроводных устройств, это не является твердым вариантом для данной конструкции
Коммуникационный протокол Выбор В то время как на начальном этапе, была причина, чтобы исследовать различные
протоколы передачи данных, Ethernet быстро становится ясным выбором. Другие протоколы не способны обеспечить скорости,
необходимые для этого проекта, и Ethernet не предусматривает каких-либо осложнений или проектных проблем, в то время как
другие методы. Art-Net протокол, работающий через Ethernet будет служить для передачи информации управления
освещением, чтобы с помощью программного обеспечения для светодиодного вождения фи rmware.
32
3.2.8 Источники питания
Блок питания для 3D LED куба является важным фактором. Светодиодный куб будет рисовать означающее количество
фи косяк ток (15А) при достаточно низкое напряжение для светодиодов (5V). Кроме того, центральный процессор и
ПЛИС ввод / вывод потребуют приблизительно 2 при
3.3V и ядро ​FPGA потребует приблизительно 1A на 1.25V. С источником питания 5V, эти более низкие
напряжения будут получены с помощью простого регулятора напряжения. Это важно при рассмотрении вопроса
о власти перелетают требования, так что блок питание не работает около 100% мощности. Использование 75%
до максимум 80% является идеальным.
Источник питания: Mean Well SP-200-5
Mean Well SP-200-5 представляет собой надежный источник питания, обеспечивающий выходной ток 40A на 5V (200W). Он
принимает 85-264V AC или 120-370V DC в качестве входного напряжения. Его размер относительно компактно в 200 мм L х
100 мм х 50 мм Ш Х. Заявлено коммерческого источника питания, он полностью заключен - обеспечение по существу
подключи и играть операцию
Источник питания: Mean Well SP-150-5
Mean Well SP-150-5 очень похож на SP-200-5, с 10А меньше тока, что обеспечивает выходной ток 30А на
5V (150W). Он принимает 90-264 AC или 254-370V DC в качестве входного напряжения. Оно аналогично
прилагается и компактный на 200 мм L х 100 мм х 50 мм Ш H.
Блок питания выбор
В то время как источники питания Mean Well фантастические варианты, то 150W обеспечивает всю необходимую
мощность. Хотя эти высокого класса источников питания будет работать вблизи% емкости 100, используя 150W блок
питания гарантирует, что мы будем работать по оценкам, 65% (5 В * 20 A = 100 W) емкость с комнатой, чтобы добавить
дополнительные функции или функции, если это необходимо. Mean Well SP-150-5 является выбор первичного
источника питания для данного проекта.
3.3 Программное обеспечение Исследования
Компьютеры выполнить ряд двоичных инструкций, или машинный код, для того, чтобы обработать компьютерную
программу. Машина кода, а также де определенно не легко программируются людьми. Языки программирования были
разработаны для создания формального описания более высокого уровня программы. Язык программирования высокого
уровня удаляет тон- детали на уровне аппаратной архитектуры из программы и позволяет разработчику сосредоточить
большую часть своего развития на основной целью программы. На протяжении компьютерного программного обеспечения,
некоторые процедуры являются общими между программами. Для того, чтобы облегчить необходимость переписывать
одни и те же участки кода, программисты разработали наборы обычно
33
используемые процедуры и упаковывают их в так называемых библиотеках. Библиотеки позволяют общий интерфейс
программирования, который может быть разделен между несколькими разработчиками и повышением совместимости
между программами. Несколько языков программирования и встроенные библиотеки существуют, с которыми
разработать программную часть проекта. Каждый язык имеет свои преимущества, которые приносят силы в процесс
разработки программного обеспечения, а также потенциальные недостатки, которые могли бы сделать развитие более ди
FFI культ достичь. Тщательный выбор языка и конкретных библиотек фи гр позволит для простоты разработки и
интеграции на протяжении всего проекта.
3.3.1 Язык программирования
Выбор языка программирования является основой программной части проекта. Язык программирования
диктует, какие наборы функций доступны для разработчиков, а также какие существуют средства разработки
для поддержки этого языка. Языка также влияет на направление и темп проекта с некоторыми языками,
благоприятствующих скорость прототипирования с другими благоприятствующих надежность на протяжении
всего жизненного цикла разработки. Программирование библиотеки может зависеть от выбора языка и
потенциально может помочь или помешать развитию в зависимости от поддержки языка выбора.
C ++
Разработан для отменяют и расширения языка программирования Си, C ++ позволяет разработчику иметь обе функции
высокого уровня языка, такие как объектно-ориентированные методы, встроенные в абстрактных типов данных, и
обработка ошибок, а также по-прежнему дает разработчикам контроль низкого уровня программы позволяя им делать
тон- оптимизацию к фи конечному скомпилированному коду до компиляции. C ++ находится в разработке с начала 1980-х
годов, и из-за его особенностей, он вырос большой пользователей, разработчиков и поддержки базы. Язык является
одним из основных профессиональных языков разработки программного обеспечения, поэтому многие ресурсы и
библиотеки существуют для дальнейшего развития. Возможности оптимизации фи уровня пе имеют преимущество в
чувствительных ко времени приложений, таких как куб 3D LED, где минимальное время выполнения является
необходимостью для достижения оптимальной производительности. Через библиотеки Framework Class Microsoft (MFC),
разработчики Windows, имеют основу для разработки графического интерфейса пользователя (GUI) приложений. Сила и
гибкость ТФ orded разработчику делает этот язык сильным кандидатом на части программного обеспечения проекта.
Джава
Другой популярный язык программирования Java, который был разработан, чтобы чувствовать себя похож на программиста на C или
C ++. Java программы выполняются в виртуальной машине, называемой Java Runtime Environment (JRE), который позволяет
программам быть независимым от платформы и очень портативным. Чисто объектно-ориентированный язык программирования,
Java был разработан с повторным использованием кода в виду. Разработчики стремятся к де классы определяют для описания
данных, их програмов на уровнях определяют абстракции для того, чтобы обеспечить для повторного использования среди
34
аналогичные проблемы. Менталитет абстрактного описания данных и кода многократного использования позволяет
разработчикам ускорить разработку сразу твердый каркас создается. Из этого следует, что если Java пакеты уже
существуют, реализующие особенности на потребностях разработчиков, разработчик не должен воссоздать
решение. Разработчики могут использовать Свинг инструментарий для разработки ГПИ расширить там приложения в
основном так же, как и с MFC в C ++. Разработка кубы 3D LED в Java позволит для удобства поддержки и
дальнейшего развития как проект растет, а также способность к программе для запуска на несколько платформ. Дело
в том, что Java-приложения должны работать в JRE накладывает дополнительный слой вычислений, которые могут
оказаться препятствовать время критической производительности системы.
питон
Python это язык программирования высокого уровня, предназначенный для разработчиков, чтобы воплотить свои идеи
ясно и сжато в читаемый код. Python имеет динамическую типизацию что означает, что язык будет выводить типы
переменных данных через контекст их использование без необходимости жестких де определений. программы Python
выполняются через переводчик, который разбирает через источник фи ле, чтобы выполнить программу или код Python
можно ввести вручную переводчик и выполняться в режиме реального времени. Эта функция языка поддается Python
является в основном используется в качестве языка сценариев. Способность быстро кодировать свои идеи дает
разработчикам возможность быстро создавать прототипы понятий. Эта практика делает небольшой, быстрые прототипы
и испытание по мере разработки, улучшают процесс разработки и позволяют за незначительные корректировки курса,
которые будут сделаны в ход разработки на месте большого изменения нуждающегося быть сделано в конце важной
вехи. Python поддерживает объектно-ориентированное программирование и может быть собран в автономный
исполняемую для достижения аналогичной производительности для других скомпилированных программ.
3.3.2 Библиотеки
С многими разработчиками работают над аналогичными сложными вопросами, там стал спросом на центральный интерфейс
прикладного программирования (API) коллекции известных как библиотеки. Преимущества разработчиков, использующих
библиотеку над их самогонным решением включают в себя повторное использование кода, надежность, стандартизацию и
простоту разработки. Разработки могут использовать мощь библиотеки программирования, который обрабатывает сложные
процедуры, такие как сети или графики, просто используя API, что библиотека делает доступной. API-интерфейсы, как
правило, гораздо более разработчик дружественные и удалить большую тяжелый из той части развития. Благодаря
использованию соответствующих библиотек, разработчик имеет возможность значительно расширить возможности их
применения.
Direct3D
Microsoft разработала собственную 3D графическую библиотеку, известную как Direct3D, который является
эксклюзивным для платформы Windows. Direct3D был разработан в качестве дополнения к коллекции графики API
DirectX и теперь в текущей версии поддерживает 2D-графики
35
особенности DirectX. Библиотека Direct3D позволяет для рендеринга 3D-сцен с поддержкой таких функций, как
отображение текстуры, сглаживание, альфа-смешивание, и глубина бу занности и след. Структура будет
пытаться использовать аппаратные ускорения, если доступны для ускорения графики вычислений. Библиотека
Direct3D поддерживается COM-зависимые языки, такие как Visual C ++, C # или Visual Basic. Это ограничение
ограничивает выбор языков программирования, доступный разработчик.
OpenGL
Open Graphics Library, более известный как OpenGL, является открытым стандартом 2D и 3D графическая библиотека,
которая непосредственно конкурирует с Direct3D Microsoft. OpenGL API реализует аналогичный, и во многих случаях
одни и те же 3D-рендеринга графики функции, как его конкурент включить. OpenGL управляет аппаратными ресурсами,
а не требовать программы, чтобы сделать это, ключевую ди Ф.Ф. разностным в OpenGL над Direct3D. Это позволяет,
для облегчения разработки графических приложений из-за дополнительных работ, выполняемых внутри самой
библиотеки. OpenGL был разработан, чтобы быть независимым от языка и широко поддерживается огромным
количеством языков программирования. Кроме того, OpenGL не зависит от платформы и не ограничивается только
операционными системами Windows.
Открытая архитектура Освещение
Архитектура Open Lighting предоставляет интерфейс для программ для передачи и приема сообщений DMX512
через IP. Используя эту библиотеку, разработчики могут контролировать свои световые решения по любому
протоколу IP, таких как Ethernet или беспроводной, в дополнение к традиционным интерфейсам DMX512.
Архитектура Open Lighting включает libartnet, библиотека, которую разработчики могут использовать для передачи и
приема с Art-Net протокол. В настоящее время архитектура Open Lighting поддерживает только Linux, FreeBSD и Mac
OS X, но есть решения, чтобы сделать библиотеки работают в операционных системах Windows. Конкретно,
инструкции существуют для компиляции libartnet на компьютер Windows, в динамически подключаемую библиотеку
(DLL) для использования withWindows приложений.
36
Глава 4
Аппаратные средства и программное обеспечение проекта
дизайн
Конструкция обоих аппаратных и программных подсистем проекта включает в себя основную часть работы и е и
след орта для первой половины проекта. Правильная и тщательная работа на этапе разработки проекта
гарантирует, что работа не должна быть повторена, и что строительство, интеграция и тестирование фаза
проекта будет проходить гладко. Проектная документация включает в себя аппаратные электрические схемы,
диаграммы классов программного обеспечения, данные поток диаграмм, расчетов мощности и конструктивных
требований. Следуя конструкции, изложенные в этой главе, строительство и интеграция частей проекта будет
значительно упрощено.
4.1 Архитектура и связанные диаграммы
В этом разделе подробно описаны аппаратной и программной архитектуры, достигнутую в ходе фазы разработки
этого высшего дизайнерского проекта, который необходим для завершения куб прототипа 3D LED. Каждый
компонент аппаратного и программного обеспечения будут рассечены и проанализированы ясно, с поддержкой
графики, чтобы отчетливо проиллюстрировать функционирование 3D LED куб на гораздо более подробным и
более низком уровне, чем обсуждалось в других областях.
4.1.1 Архитектура аппаратного обеспечения
Аппаратная архитектура этого проекта была разработана, чтобы быть простыми и прямо вперед, как это возможно.
Группа выбрала архитектуру, которая поддается легкой конструкции и конфигурации, над тем, которая является
слишком сложной. Светодиодный куб будет полностью находиться система, не требующая внешней сборки или
соображения. Достаточно просто подключить шнур питания к розетке и подключения куба через Ethernet кабель к
любой существующей сети или прямого подключения к компьютеру, куб будет иметь возможность осветить и
управляться пользователем.
Куб 3D светодиод будет содержать несколько плат каждый из которых функционирует, чтобы фул фи Л.Л. в роли ди
различны и след в освещении светодиодов. Фи NAL прототип будет состоять из трех печатных плат, один пульт
управления, содержащий FPGA, процессор и другие необходимые компоненты, и две платы драйвера, каждый из
которых идентичен друг другу, содержащий драйверы светодиодов, МОП-транзисторов и другие компоненты,
необходимые для управления светодиодами по мере необходимости, чтобы осветить куб. Платы будут соединяться
друг с другом с помощью средства коротких кабелей ленты. Выбор разделить архитектуру на нескольких плат было
из-за огромное количество компонентов, которые необходимы для того,
37
для привода LED куб такого размера. Другая причина, по которой группа решила создать более одной
печатной платы была попытка половины шанс неудачи в том, что если есть пагубные ошибки или фл ав в
цепи управления, схема привода может еще работать в то время как новая плата предназначена или
изготовлен.
Встроенный процессор
Встроенный процессор является одним из наиболее важных компонентов проекта. Это отдельная часть
будет обрабатывать все связи с компьютером пользователя и ПЛИС для отображения данных на куб. PIC24
процессор выбран более чем достаточно вычислительной мощности, чтобы иметь возможность реагировать
на ввод данных пользователем своевременно, и передать этот вход в FPGA, или ответить на запрос
пользователя. Процессор будет подключаться к большинству компонентов схемы непосредственно, и любые
компоненты не соединены напрямую, соединены через FPGA, и будет передан при общении с FPGA. Эта
гибкость позволит группе вносить изменения в проект, как они считают фи т. CPU будет подключаться
непосредственно к интерфейсу Ethernet, микро Secure Digital карты, ПЛИС и кучки светодиодов состояния и
пользовательских кнопок. Способность к CPU для подключения к такому большому количеству внешних
интерфейсов увеличит гибкость системы. Принципиальная схема всех соединений процессора показана на
рисунке 4.1. Эти интерфейсы подробно описаны ниже, а также.
Возможность подключения PIC24 процессора к интерфейсу Microchip Ethernet будет использоваться в рамках
этого проекта, с тем чтобы обеспечить легкий, безаварийный способ взаимодействия с кубом с точки зрения
пользователей. Куб будет иметь возможность взаимодействовать с любой стандартной проводной или
беспроводной сети, облегчение необходимости группы, чтобы создать пользовательский интерфейс. протоколы
Стандартный TCP / IP будет использоваться для облегчения необходимости создания слоя пользовательского
протокола, и будет еще больше упростить архитектуру программного обеспечения на встроенном процессоре.
Одна из причин, групп по выбору использовать локальные сети была вездесущность локальных сетей устройств.
Почти каждый человек имеет беспроводной Ethernet подключенное устройство, и будет иметь возможность
взаимодействовать с кубом через беспроводную сеть, возможно, подключив беспроводной маршрутизатор в порт
локальных сетей на LED куб.
Встроенный процессор будет перепрограммируемой внешним устройством ICSP. Эти устройства часто используются для
программирования первого до загрузчика не записываются или доступен. Это группы хотят, чтобы загрузчик будет создан
таким образом, что группа не будет использовать программатор физическую схему, но быть в состоянии просто
перепрограммировать плату с любого компьютера пользователей, с небольшой утилитой программного обеспечения,
которое будет взаимодействовать с процессором через его интерфейс Ethernet и обеспечивает обновление программного
обеспечения в поле. Это желание не является обязательной особенность, но значительно упростит процесс обновления
программного обеспечения. В фактическом выпуске продукции, требование иметь купли-продажу пользовательскому
внешний комплект программирования не вариант, и потребует необходимости рабочего загрузчика.
38
Рисунок 4.1: Схема процессора
39
Рисунок 4.2: Схема Ethernet
40
Связь между встроенным процессором и FPGA будет происходить на двух автобусах. Там будет
высокоскоростной SPI интерфейс между FPGA и встроенным процессором для передачи данных,
которое будет отображаться на светодиодном куб. Этот интерфейс будет состоять из одиночных кадров
связи, которые содержат весь кадр отображает анимацию. Этот интерфейс должен быть высокой
скоростью из-за цели группы, чтобы достичь скорости анимации в двадцати пяти кадров в секунду, при
этом каждый кадр содержит восемь битые данные освещения для каждого из трех тысяч светодиодов в
кубе. Это требование диктует скорость передачи данных, по меньшей мере, 600kbit в секунду. Эта
скорость передачи данных легко достижима с SPI. Другой интерфейс между процессором и FPGA будет
параллельный интерфейс общего назначения. Этот широкий интерфейс Восьмибитовое останется
невыполненным,
Встроенный процессор также отвечает за кон фи guring ПЛИС при включении питания. Это необходимо,
так как FPGA не может прочитать его конфигурацию непосредственно с карты микро SD, прежде чем
она была запрограммирована. Конфигурация фи ле для FPGA будет храниться в микро SD карты на
борту, так как она не в состоянии фи т в памяти процессора. Во время инициализации, процессор будет
читать это фи ль с SD-карты и будет толкать его на FPGA в нужном формате. Процессор будет отвечать
за связь с ПЛИС, когда необходимо перезагрузить, когда следует ожидать новую конфигурацию, и при
том, что конфигурация должны быть реализовано. Процессор будет принимать непосредственное
управление гурацией линий подтвер- ПЛИСА, и контролировать его состояние выхода, чтобы
гарантировать, что FPGA загружает его конфигурацию правильно.
Встроенный процессор будет делить автобус к микро надежной цифровой карты (SD-карте), способный хранить гораздо
больше данных, чем во внутренней памяти процессора или FPGA. Это SD-карта будет использоваться для хранения
больших объемов данных, как заранее запрограммированные последовательности и FPGA изображений для разработки и
производства. Микро-интерфейс SD будет реализован на вторичной SPI шину с ЦП, действующим в качестве ведущего
устройства шины, когда она взаимодействует с картой, и выпуская контроль и позволяя FPGA действовать в качестве
ведущего устройства шины, когда ему необходимо обмениваться данные с SD-картами , Предполагается, что FPGA будет
иметь возможность общаться с SD-карты на гораздо более высокой скоростью, и будет использоваться для большинства
операций хранения данных.
Встроенный процессор будет иметь ряд пять светодиодных индикатора состояния, используемые для
отображения текущего состояния и обработки системы утилизации. Эти светодиодные индикаторы будет
поверхностным монтажом на плату управления, и будет использоваться для целей диагностики только, так как
они не будут видны, когда схема управления заключена в структуре проекта. Процессор также интерфейс к
серии SMD переключателей, которые будут прочитаны процессором и используются для управления каким
режима работы системы работает. Эти коммутаторы, как и светодиоды не будет доступны из вне структуры
проекта, и будет используется в основном на стадии разработки проекта.
41
Наиболее важная часть процессора является фи rmware, который будет работать, как только сапоги устройства.
Программное обеспечение будет отвечать за обработку всех обмена данными, а также обеспечение того, чтобы
пользовательский интерфейс работает, как ожидалось. Фи rmware будет проходить через ряд шагов инициализации,
перед началом цикла обработки, который будет принимать данные на входе, обрабатывать полученную информацию,
и распределить необходимые выходы для выходных устройств различно ди FF. Этот контур управления будет
работать с максимально возможной скоростью. Это будет необходимо сохранить программу от блокировки, или
ожидание ввода, для того, чтобы все раздражители можно ответить своевременно. Развитие фи rmware будет
осуществляться с помощью среды разработки MPLAB X компании Microchip, а также стек TCP / IP компании Microchip,
которая доступна без лицензии для коммерческих и некоммерческих проектов. Использование этого стека TCP / IP
позволит сэкономить большое количество времени на разработку рабочего программного обеспечения.
FPGA
FPGA на плате управления также является одним из наиболее важных компонентов конструкции. FPGA
имеет важное значение в обеспечении того, чтобы схема привода передается в пределах своих строгих
требований синхронизации, и это единственный способ, что куб будет иметь возможность осветить.
FPGA подключен ко многим частям цепи, и любые части не подключены непосредственно к FPGA будет
подключен через процессор на плате, и доступны через общение с ним. FPGA будет непосредственно
связана со схемой привода для светодиодного куба, ЦП и микро SD карты на борту. Как многие из IO
линий Лишнего FPGA будет разбиты на внешний разъем, чтобы позволить группе расширить
возможности системы с добавлением большего количества элементов. Показано ниже на рисунке 4.3
это приставка для ПЛИС в схеме управления.
FPGA будет взаимодействовать со схемой привода для светодиодного куба, и управлять всем димминг контроля светодиодов. Драйвера
светодиодов взаимодействуют через интерфейс SPI, который работает с 5 вольтовым интерфейсом SPI. ПЛИС, однако, работает с
интерфейсом ввода-вывода 3,3 вольт. FPGA не сможет надежно общаться с водителем СИД, как это было бы не в состоянии послать
надежный сигнал высокого уровня для водителей, и будет поврежден из-за сигналов, поступающих от светодиодных драйверов, которые
были получены в 5 вольт. Для того, чтобы обеспечить надежный способ связи, будет необходим метод сдвига уровня. В направлении к
FPGA схемы драйвера, простая логика бу и далее эр обеспечит необходимый сдвиг уровня. Использование 74HCT241 повысит выход
FPGA с 3,3 вольта до 5 вольт. Это работает с тем, что 74HCT241 является пять вольт часть, однако класс HCT деталей требует только
уровень 2 вольт на входном выводе, чтобы считать высоким, допуском более 50% для уровня выходного сигнала в ПЛИС. В другом
направлении, необходимо перевести 5 вольт до 3,3 вольт, необходимых для входов к FPGA. 74LVC245 может быть использован. Этот чип
позволяет ПЛИС для связи с уровнем напряжения 3,3 вольта, в то время как схема драйвера выдает сигнал 5 вольта. Природа MOSFETs
также диктует, что они имеют высокое напряжение привода 74LVC245 может быть использован. Этот чип позволяет ПЛИС для связи с
уровнем напряжения 3,3 вольта, в то время как схема драйвера выдает сигнал 5 вольта. Природа MOSFETs также диктует, что они имеют
высокое напряжение привода 74LVC245 может быть использован. Этот чип позволяет ПЛИС для связи с уровнем напряжения 3,3 вольта, в
то время как схема драйвера выдает сигнал 5 вольта. Природа MOSFETs также диктует, что они имеют высокое напряжение привода
42
возможно, тем выше напряжение источника затвора, тем больший ток может проходить через с меньшим сопротивлением.
В 74HCT241 чипы обеспечивают пять вольт выход для управления МОП-транзисторы.
В Xilinx Spartan 6 ПВМ имеют два способа хранения памяти на борту. Есть целый ряд блоков барана устройств, каждое из
которых содержит восемнадцать килобайт дискового пространства. Эти барана устройство распределено в виде
дискретных блоков по всему FPGA, и может быть использовано для хранения больших объемов данных. Другим вариантом
являются элементы хранения в пределах логических срезов FPGA, которые могут быть объединены с образованием более
мелких элементов памяти. Природа LED куба будет один, который требует большего количества памяти, три тысяч байт на
кадр анимации, а также большое количество информации, необходимой для приведения в движение кубы электронной FFI
ciently.
FPGA будет также иметь пять индикаторов состояния, доступные для отображения текущего состояния
ПЛИС, и текущий процесс он работает на. Светодиоды, как светодиоды процессора будут в основном для
отладки и разработки целей, и будут скрыты от глаз во время нормальной работы куба. Эти светодиоды
будут чрезвычайно полезны для развития, как это ди FFI культ отладить проект на ПЛИС без какого-то
результативных показателей и визуальной индикации того, что текущий процесс.
Светодиодные драйверы и MOSFETs
Светодиодные драйверы, используемые в кубе 3D LED будет использоваться для управления каждым из трех
сотен отрицательных клемм светодиодов. Они будут использоваться для тонуть и управления током, когда
желаемая светодиод должен быть включен. Светодиодные драйверы будут содержаться в печатных платах
драйверов проекта. Эти драйверы будут распределены между двумя досками, половина на каждом. Это позволит
для распределения тока, вместо того, чтобы поставить полный ток через одну печатную плату, ток разделен
пополам, 7,5 ампер на одной плате, и 7,5 ампер на другой соответствующей платы. Это позволит значительно
уменьшить мощность, рассеиваемую компонентов схемы, так как мощность уменьшается по экспоненциальному
фактор с линейным уменьшением тока.
Драйверы LED получить все свои данные через шину SPI. Тактовая частота этой шины SPI продиктована не только
количеством фишек водителя в серии, и скорость, с которой кубик должен быть обновлен. Для того, чтобы
обновить куб с желаемой скоростью 100 Гц, как указано в Специфических катионах проекта, необходимо обновить
через каждый из десяти слоев со скоростью сто раз в секунду. На этой частоте, то каждый слой будет освещен в
течение одной миллисекунды. Данные должны быть в состоянии быть направлены светодиодные драйверы
достаточно быстро, так что он может повернуть на новый слой, и оставить достаточно времени для глаз, чтобы
обнаружить новые огни включения. Каждый чип, содержащий 16 каналов, в 16 битов каждый, потребует 256 бит
информации во время каждого обновления. При этом много данных, необходимо использовать несколько линий
связи, в отличие от одной линии связи для всех чипов. Каждая из двух плат драйверов будет содержать две
отдельные линии SPI, каждый из которых соединен с четырьмя светодиодными чипами драйвера,
43
Рисунок 4.3: Схема ПЛИС
44
Рисунок 4.4: Схема драйвера
в общей сложности четыре линии SPI. Это деление позволит обеспечить более высокую пропускную способность и более
низкой задержкой из данных, полученных в FPGA, на данных, отображаемых на выходах.
Драйверы светодиодные регулируемые постоянные источники тока. Ток устанавливается с помощью одного резистора для
каждого чипа привода, и желательно, чтобы быть установлена ​в 50 м. Уравнение для вычисления этого тока возбуждения
находится в техническом описании для водителя TLC5948A СИД, и задается следующим образом:
р прил = У ссылка я о * 42,3
р прил = 1,20 В50 мА * 42,3
р прил = 1015Ω
Для того чтобы сохранить текущее устройство как можно более точным, резисторы, используемые будет
иметь допуск 1%. Это будет гарантировать, что максимальный ток будет 50,005 м, а минимальный ток
будет 49,995 м. Это позволит для равномерного появления яркости через весь экран. В дополнение к
этому, можно также использовать функцию управления яркостью в светодиодный драйвер, который будет
исследованной группой, если однородный цвет распределение цвета еще не достигнуто. Значения
резисторов выбраны, а также способ подключения светодиодных драйверов можно увидеть в следующем
схематическом захвате, рисунок 4.4 ниже.
МОП-транзисторы в пределах кубы 3D LED будут использоваться для включения каждого из десяти положительных клемм LED
куб. Два МОП-транзисторы будут использоваться для каждого слоя, каждый из которых соответствует светодиодам пятидесяти
на сто фи. Там будет в общей сложности двадцать MOSFETs, десять на каждой плате драйвера для управления
светодиодами. Это будет сделано, чтобы гарантировать, что власть ограничивает рассеивание не прошло, и что компоненты,
используемые работать в пределах их максимальных значений. Каждый МОП-транзистор будет самое потребуется
45
Источник 7,5 ампер тока от утечки к исходному терминалу. Как и с любым элементом цепи с током, протекающего
через него, определенное количество мощности будет рассеиваться внутри, и будет вызывать тепла должен быть
создан. Использование двух МОП-транзисторов на один слой будет сокращать количество энергии разочарован в
каждом FET вниз в четыре раза. Расчеты мощности, рассеиваемой в следующем.
P = I 2 * RP = 7.5A * 18mΩ
P = 1.0125W
Как видно, МОП-транзисторы должны будут иметь возможность рассеивать немногим более одного ватта каждый. Это
будет полностью в пределах конструкции печатных плат, так как будет достаточно тепло тонуть доступно, а также
только один МОП-транзистор будет включен в одно время. Именно эти группы желают, чтобы схема работы привода,
как круто, как это возможно. С фигурами нашли до сих пор, это может быть возможным, чтобы запустить все куб без
активного охлаждения.
Power Board Control
Плата управления требует активного управления питанием в связи с различными требованиями к напряжению
питания компонентов на плате. ЦПУ требуется источник напряжения
3.3, а также интерфейс Ethernet, ПЛИС потребует как 3.3V и 1.25V, а также SD-карты потребуется 3.3V. Схема
управления будет принимать в 5V от основного источника питания проекта, и будет в дальнейшем фильтром и
регулировать это вниз к необходимому 3.3V и 1.25V, что требуется. Это будет достигнуто с помощью
использования двух отдельных регуляторов REG1117. Эти регуляторы каждый принимать входную мощность, и
будут регулировать напряжение вниз на новый уровень с помощью рассеивать дополнительное напряжение.
Рассеиваться напряжение будет впустую в виде тепла. Полная схема двух регуляторов можно увидеть ниже на
Рисунке 4.6.
LED Cube
Наиболее сложная проводка часть этого проекта будет сборка одной тысячи светодиодов, что куб состоит. Каждый из
этих светодиодов имеет четыре терминала, общий положительный полюс, и три отрицательных терминала, один для
красного, один для зеленого и один для синего. Каждый из этих светодиодных терминалов будет припаян к шине
проводу, который будет подключаться к каждому из других светодиодов вместе, и обеспечивает структуры светодиода.
Аноды все будут соединены друг с другом в пределах одной плоскости XY, и каждый из цветных катодов будут
соединены друг с другом в вертикальной колонне оси Z.. Это будет достигнуто в качестве свободной постоянной
структуры, и будет состоять из четырех тысяч паяных соединений для группы, чтобы закончить. Соединение одной
плоскости светодиодов можно видеть на рисунке
4,7. Это показывает, как один слой XY будет соединено вместе. Каждый из слоев XY идентичны друг другу, за
исключением в том, что аноды будут каждый быть соединены вместе, чтобы ди-FF различны
МОП-транзисторов для целей контроля.
46
Рисунок 4.5: Схема Mosfet
Рисунок 4.6: Управление питанием Схема
47
Рисунок 4.7: Куб Схематическое
48
4.1.2 Архитектура программного обеспечения
Архитектура программного обеспечения должна состоять из нескольких основных компонентов, показанных на рисунке
4,8 взаимодействие с остальной частью кубы 3D LED. Несмотря на то, что оборудование может отображать матрицу светодиодов в
предопределенных определены моделях с несколькими цветами, это сам по себе не интересно. Таким образом, программа будет
разрабатывать несколько серий анимации для отображения на светодиодном куб. Создание анимации являются ключевым компонентом
этого проекта и значимы акцент будет сделан на разработку надежной и простой в использовании программное обеспечение и разработка
шаблонов для использования разработчиком, чтобы создать визуальные эффекты. После анимации генерируются, эта информация
должна быть передана в фантастическом rmware для того, чтобы отображаться на светодиодном куб. Отдельная часть программного
обеспечения будет обрабатывать связь между кодом, который генерирует анимацию и фи rmware, которая будет управлять LED куб. Связь
будет происходить через проводное соединение Ethernet. В заключение, способствовать развитию наряду, но независимый от аппаратных
средств и фи rmware, программное обеспечение, предназначенные для имитации поведения фи rmware и аппаратных светодиодной кубы
будет стоять в качестве замены для обеспечения упрощения тестирования фи эд в то время как другие подсистемы находятся в
разработке или не доступны для тестирования , Наличие программных тренажеров значительно повысить производительность процесса
разработки программного обеспечения, позволяя модули для тестирования на протяжении развития и, следовательно, позволит сократить
число нежелательных ошибок, которые будут возникать в процессе интеграции и тестирования. программное обеспечение,
предназначенные для имитации поведения фи rmware и аппаратных светодиодной кубы будет стоять в качестве замены для обеспечения
упрощения тестирования фи эд в то время как другие подсистемы находятся в разработке или не доступны для тестирования. Наличие
программных тренажеров значительно повысить производительность процесса разработки программного обеспечения, позволяя модули
для тестирования на протяжении развития и, следовательно, позволит сократить число нежелательных ошибок, которые будут возникать в
процессе интеграции и тестирования. программное обеспечение, предназначенные для имитации поведения фи rmware и аппаратных светодиодной кубы будет с
Рисунок 4.8: Архитектура программного обеспечения
49
Анимация
Компонент анимации программного обеспечения будет способен генерировать анимации с помощью двух
различных методов. Многие сложные анимации, такие как манипуляции геометрических объектов, прокрутка
фигурам и отображение 3D-математические модели могут быть разработаны просто путем написания кода, чтобы
управлять поведением каждого воксела в течение каждого кадра анимации. Подвергаются API для обеспечения
контроля тон- светодиодных анимации кубы, это позволяет разработчикам иметь мощный интерфейс для создания
анимации. В качестве альтернативы, ручной ввод каждого воксела для каждого кадра анимации через GUI
представление светодиодного куба, как показано на рисунке 4.9, позволяет на уровне тон- управления к
пользователю за счет времени и сложности. GUI анимации создатель просто замять API доступны для
разработчиков и создать удобный интерфейс для разработки анимации для светодиодного куба. Сочетание этих
двух элементов программного обеспечения позволяет разработчикам и начинающим пользователям, так, чтобы
создать богатый набор анимации и функций, разрешая простое включение дополнительных наборов анимаций.
Рисунок 4.9: Анимация Creator GUI
связь
Программное обеспечение связи будет способствовать передаче анимации из анимации программного обеспечения
для фи rmware вождения светодиодного куба. Этот сегмент программного обеспечения должен действовать как
черный ящик и прокси между анимацией и светодиодным кубом, который отображает его. Программное
обеспечение связи будет использовать несколько режимов передачи, показанных в таблице 4.1 для достижения
цели отображения анимации на светодиодном куб. Каждый режим передачи позволит функции ди и далее различен
должна быть реализована в пределах LED куба анимации, такие как сложные анимации
50
или высокой Refresh анимации скорости. Полная анимация может быть прижата к ФИ rmware и сохраняется в
памяти перед отображением для анимации малого размера. Преимущества передачи всей анимации в одном
длинных передач включают в себя сложные анимации, которые требуют длительного времени вычислений, никакой
зависимости от скорости передачи данных, а также высокую частоту обновления. С другой стороны, анимации
могут быть отправлены кадр за кадром с каждым кадром, который будет отображаться, как оно получено. Этот
режим позволяет большие динамические или сложные анимации должны быть обработаны с помощью
программного обеспечения анимации, а не просто быть переигран контроллером LED за счет частоты обновления.
Этот метод, скорее всего, будет наиболее используемых, как это должно позволить анимации для вычисления в
реальном времени с помощью программного обеспечения анимации и не требует каких-либо дополнительных
ресурсов хранения. Еще два режима, которые делают компромиссы между обсуждавшимся выше методами, чтобы
изменить выбранный кадр на светодиодном куб. Это достигается либо путем сдвига рамки слоя на любом из шести
сторон и толкая в новом слое, или де фи нинами вращения или перевод текущего кадра. Перемена слоев в
существующем фрейм позволяет поддерживать анимации, где следующий кадр только изменения в минимально из
кадра, который в настоящее время существует на кубе. Вращение и перевод текущего кадра производит поддержку
различной анимации только с минимальной передачей данных. Это позволяет с высокой скоростью передачи и
низкой пропускной способностью за счет ограниченных возможностей анимации и расширением использования
вычислительной мощности в пределах фи rmware.
Способ передачи
преимущества
Недостатки
Полная анимация
Высокая частота обновления
Малые размеры анимации
Покадровый
Большие,
Медленнее частота обновления
Больше
сложные анимации
Сдвиг слоя в
Более высокая частота
Медленнее скорость анимации
обновления и низкая пропускная способность
Перевести / Поворот кадра Высокая скорость обновления и
Ограниченные возможности анимации
низкая пропускная способность
Таблица 4.1: Методы передачи
моделирование
Поскольку конструкция светодиодного куба будет завершена параллельно с разработкой программного
обеспечения, необходимо разработать тренажер физических элементов светодиодного куба для целей
тестирования. Тренажер будет состоять из двух независимых секций, чтобы отражать фи rmware и аппаратные
компоненты светодиодного куба. Фи rmware тренажер будет получать анимации передачи и обрабатывать их в
соответствии с ожидаемым поведением фи rmware. Для того, чтобы надлежащим образом имитировать
соединение Ethernet между программным обеспечением и фи rmware частей проекта, фи rmware Тренажер будет
также получать данные таким же образом, как фактический фи rmware будет. Фи rmware тренажер будет
передавать информацию для каждого кадра в графическом
51
предоставление светодиодного куба. Аппаратная симулятора обеспечит визуализацию светодиодной
структуры кубы в тонированном 3D сцены. Аппаратная симулятора будет принимать данные как фи
rmware тренажера, а также компоненты анимации непосредственно. Использование этих тренажеров
позволит простой визуализации анимации и облегчить тестирование как анимация и методы передачи в
процессе развития и на всех этапах процесса интеграции и тестирования.
4.1.3 Software Design
В то время как архитектура программного обеспечения описывает поведение высокого уровня всех программных
компонентов куба 3D LED, дизайн программного обеспечения попытки подробно каждый отдельный компонент на достаточно
низком уровне, чтобы полностью описать все системы в программном обеспечении. Проекты включают в себя требование о
том, как каждый компонент программного обеспечения должен выполнять, в явном виде, определяемое поведение каждого
компонента и диаграммы классов для всех соответствующих компонентов и их структур данных.
Системные Требования
Подсистема программного проекта должна передавать данные о текущей анимации к фи rmware компонент
светодиодного куба с достаточно высокой скоростью, чтобы обеспечить желаемую частоту кадров достигается. Для
того чтобы это произошло, то коммуникационный компонент должен быть способен передавать данные на фи rmware
со скоростью, которая выше, чем данные потребляется. Кроме того, компонент анимации должен предоставить
новые данные анимации в компонент связи со скоростью, которая выше, чем данные потребляется этим модулем.
Компоненты моделирования программного обеспечения должны имитировать функциональность и поведение фи
rmware и аппаратных компонентов светодиодного куба как можно ближе к одинаково, насколько это возможно. Фи
rmware Тренажер должен принимать передачи от компонента св зи, в том же порядке, что и фи rmware. Для целей
тестирования, аппаратный имитатор должен иметь возможность получать данные управления непосредственно из
компонента анимации, а также через фи rmware тренажер. Эти требования будут создавать ближайшее решение для
окружающей среды конечного фантастическома для того, чтобы действовать в качестве соответствующего
испытательного стенда для части программного обеспечения куба 3D LED.
Функциональные требования
Компонент связи будет регулировать передачу анимации для других подсистем светодиодного куба и будет
служить основным препятствием для подсистемы программного обеспечения. Передача данных управления
освещением от компонента связи должен быть способен заполнением входящих данных и след бу эр от фи
rmware быстрее, чем данные потребляется для приведения в действие СИД куб. Поэтому в следующих
режимах передачи, коммуникационный компонент должен гарантировать передачу на минимальных ставки,
определяемые в таблице 4.2, с тем чтобы предотвратить ограничение программного обеспечения на других
физических подсистемах.
52
Способ передачи
Данные
минимальная ставка
Полная анимация
10x10x10xT RGB вокселей
5 Гц
Покадровый
10x10x10 RGB вокселей
25 Гц
Сдвиг слоя в
10x10 RGB вокселей Направление + 100 Гц
Перевести / Поворот рамки Перевести / Поворот Вектор
250 Гц
Таблица 4.2: Скорость передачи данных Требования
Выше требование налагает требование сложения на компоненте анимации программного обеспечения. Для
того чтобы гарантировать минимальное время передачи, компонент анимации должен фи Л.Л. передачи б эр
и след по крайней мере, минимальная скорость передачи для текущего режима передачи. Это означает, что в
данных режимах передачи, компонент анимации может провести максимальное время вычислений на
следующую части данных анимации для передачи, определяемой в таблице 4.3. Это требование будет
потенциально ограничить сложность анимации, которые доступны при работе в каждом режиме передачи.
Способ передачи
Данные
Максимальное время
Полная анимация
10x10x10xT RGB вокселей
200 мс
Покадровый
10x10x10 RGB вокселей
40 мс
Сдвиг слоя в
10x10 RGB вокселей + 10 мс Направление
Перевести / Поворот рамки Перевести / Поворот Вектор
4 мс
Таблица 4.3: Анимация Рейтинг Требования
Компонент моделирования будет обрабатывать как минимум ставкам, определяемого по фи rmware и
аппаратных подсистем. Все внутренние типы данные в пределах тренажеров должны соответствовать
аппаратным ограничениям физических систем, они пытаются имитировать. Компонент моделирования
также задушить себя максимальные возможности фи rmware и аппаратных подсистем правильно
имитировать подсистемы. Эти ограничения позволят для выявления узких мест и условий, которые
превышают возможности проекта, которые могут возникнуть в процессе разработки до этапа интеграции.
Анимация
Внутренне, светодиодный куб, показанный на рисунке 4.10 и визуализированы на рисунке 4.11, представляет собой
логическую карту 3D физического куба с каждого воксела, представляющей собой RGB LED на LED куб. Внутреннее
представление светодиодного куба может быть модифицирован воксель по вокселю или скопом, изменив весь 2D слой
сразу. Кадр, показанный на рисунке
4.12, представляет собой светодиодный куб на одной дискретной точке времени с соответствующей продолжительностью времени для
кадра, который будет отображаться. Анимация будет циклически через каждый кадр в последовательности задержавшись
соответствующего отрезка времени между изменениями в каркасных.
53
Рисунок 4.10: LED Cube Диаграммы классов
Рисунок 4.11: Внутренний кадр анимации Представление
54
Рисунок 4.12: Диаграммы классов анимации
GUI Creator Анимация Анимации Создатель графического интерфейса пользователя, было показано ранее на рисунке
4.9, позволит разработчик вручную вводить значение цвета RGB для каждого воксел в кадре. Каждый вокселей может быть
решен в 3D пространстве его ( х, у, г) координат или путем выбора из 3D-представления с помощью мыши через графический
интерфейс анимации создателя. Для того, чтобы добавить контроль нера Fi, пользователь может выбрать специфичный
слой вдоль любого из три первичной оси, как и на Рисунке 4.13, чтобы редактировать по отдельности как 2D представление
воксел, показанных на рисунке 4.14. После того, как цветовые значения для всех вокселей в кадре и соответствующей
задержке были назначены, пользователь может приступить к разработке следующего кадра в анимации. Создатель
анимации GUI позволит кадров, которые будут создаваться и удаляться из анимации в любой точке последовательности
анимации. Перегруппировка кадров в настоящее время в анимации также будет поддерживаться. Все значения в пределах
анимации создателя графического интерфейса по умолчанию будет частота кадров фиксированных и все воксели
первоначально в состоянии о ТФЕ.
55
Рисунок 4.13: Рама Представление с выбранным слоем
Рисунок 4.14: Представление отдельного слоя
56
Кодовый анимации интерфейса Разработчик может повторить функциональность GUIs анимации создателя в
более структурированном и автоматизированном способе де фи функции Ning изменить воксели в кадрах для
создания анимации. Каждый воксела адресуется это (х, у, г, т) координат, с т координат, обозначая, к которому
кадр последовательности анимации она принадлежит. Светодиодный куб каждого кадра непосредственно модусы
Fi способен так же, как это в GUI анимации создателя. API-интерфейсы, которые используют G анимации
создатель для создания анимации просто подвергаются программисту. Разработчик теперь определяют кадры в
массовом порядке с алгоритмом для создания анимации.
связь
Передача данных между программным обеспечением, которое генерирует анимацию и фи rmware, которая будет
контролировать отображение анимации обрабатывается компонентом связи. Передача данных будет происходить
через IP наборе протоколов через соединение Ethernet. Коммуникационное программное обеспечение будет
передавать данные анимации к фи rmware с использованием ArtNet, цифровой протоколом управления
освещением, показанный на рисунке 4.15. Пакет ArtNet содержит заголовок с магическими числами, чтобы отличить
его как пакет ArtNet, полей для обозначения протоколов и версии используются, упорядоченной информацией,
адрес источника и назначения, и, наконец, до 512 байт данных управления освещения. Каждый из нашего RGB
вокселя содержит три байта данных цвета. Это означает, что один пакет ArtNet может передавать информацию
управления до 170 вокселей. Полный кадр содержит 1000 вокселей плюс целое число Определим время
отображения и полностью передается с шестью ArtNet пакетов. Программное обеспечение анимация будет
отправлять полные кадры или анимации на коммуникационное программное обеспечение для обработки его как
черный ящик. Коммуникационное программное обеспечение будет управлять сегментирование кадров для отправки
в фантастическом rmware. Структуры данных и функциональные возможности компонента связи, описаны на
рисунке 4.16.
0
16
8
24
31
'A'
'р'
«Т»
'-'
'N'
«Е»
«Т»
0x00
Опкод ArtDMX (0x5000)
Последовательность
Версия протокола (14)
физический
вселенная
Длина (2-512, даже)
Данные
,, , Данные ...
Рисунок 4.15: ArtNet пакетов
Коммуникационный компонент может использовать четыре способа передачи для передачи анимации на
светодиодный драйвер куба. Все данные будут содержаться в пакетах
57
разумный размер для среды передачи. Этот метод Первый должен послать всю анимацию к фи rmware.
Анимации передается на светодиодный куб как весь блок делится между требуемым количеством пакетов.
Компонент связи может затем ждать, пока фи rmware не запрашивает следующую анимацию. Аналогичным
образом, анимация может быть послан кадр за кадром. Каждый кадр анимации передается в виде целого
блока разделены между требуемым количеством пакетов. Новый кадр будет выталкиваться к фи rmware на
де определены частоты кадров анимации. Для решения низкого пропускной способности, анимации могут
быть созданы путем изменения текущего кадра и смещения слоя в раму от одной из шести сторон кубы и
перехода из противоположного слоя каркаса. Коммуникационный компонент будет передавать слой кадра и
с какой стороны слой будет переходить в. Аналогично методу кадр за кадром, каждый новый слой
проталкивается к фи rmware на де определены частоты кадров. Способ передачи фи NAL требует
наименьшей шириной полосы, так как он не передает данные кадра. Все, что передается на фах rmware
является поступательным и вращательным значением, которое определяет, как текущий кадр будет
сдвинут в пределах куба. Фи rmware будет обрабатывать смещение кадра.
Рисунок 4.16: Связь Диаграмма классов
моделирование
Компоненты программного обеспечения моделирования имеют решающие значение для процесса тестирования в то
время как физический светодиодный куб либо в конструкции или не доступен для тестирования. Тренажеры должны вести
себя так же физические компоненты они имитирующих. Таким образом, проектирование структур и процедур обработки
данных в программное обеспечение имитатора должны быть похожи на физические компоненты. Фи rmware тренажер
будет выступать в качестве контроллера фи rmware для куба 3D LED и оборудования тренажера будет действовать, как и
сам LED куб. Аппаратная симулятора будет уникальной и не в полной мере отражали реальное поведение в том, что
разработчики могут получить доступ к нему либо через фи rmware
58
Тренажер или непосредственно через API открытой.
Рисунок 4.17: Моделирование Диаграмма классов
Firmware Simulator Фи rmware тренажер предназначен для моделирования и проверки связи между программным
обеспечением и фи компонентами rmware. Для того, чтобы правильно смоделировать это, никакие данные не будут
непосредственно переданы фи rmware тренажере через API. Скорее всего, все данные будут получены фи rmware
тренажер с помощью пакетов ArtNet через интерфейс Ethernet. После того, как имитатор получает пакет, он
добавляется к входящему б Данные FF эр, где он будет ждать до тех пор, пока тренажер может обрабатывать пакет.
Тренажер будет анализировать пакеты из входящего бу и след эр и поместить заполненные кадры в бу эр и след
кадров, который действует в качестве последовательности отображения. Как кадры планируется отображаться, кадр
будет разлагаться в бу эр и след вокселей передать на аппаратном тренажере. Наконец, имитатор будет
контролировать выход оборудования тренажера.
Оборудование Simulator Аппаратная симулятора будет отображать 3D-графики представление светодиодного куба.
Светодиодный куб будет смоделирован в виде 10x10x10 куб цветных сфер, установленных в 3D сцены. Рендеринг
график будет обрабатываться с OpenGL, чтобы создать сцену, которую пользователь может вращать и вид со всех
сторон. Аппаратная симулятора позволит отдельным вокселям быть установлены, а также целые кадры и обновят
только тогда, когда будет предложено обновить экран. Все управление аппаратной тренажера через API открытого и
данные будут передаваться непосредственно через них, чтобы имитировать прямые связи между фи rmware и
светодиодным контрольным оборудованием. Несмотря на то, имел в виде, чтобы имитировать поведение кубы 3D
LED, аппаратный имитатор будет принимать данные непосредственно из программного обеспечения анимации для
того, чтобы изолировать процесс тестирования анимации от тестирования методы связи.
59
4.1.4 Печатные платы
Проект потребует разработки и сборки двух печатных плат, чтобы держать и соединить все компоненты,
необходимые для освещения и управления огромное количество светодиодов на кубе. Коллективно, группа имеет
некоторый опыт в проектировании печатных плат с помощью редактора Eagle CadSoft в. Группа будет использовать
это программное обеспечение снова для разработки печатных плат для того, чтобы сэкономить время того, чтобы
узнать новый редактор, при проектировании сложной печатной платы. Группа надеется, что при наличии эталонных
образцов промышленности и промышленности советников, что их плата будет разработана с легкостью, и будет
работать с электронной FFI фективностью. Есть много соображений, что группа будет иметь, чтобы при
проектировании и изготовлении печатной платы этой сложности, некоторые из них толщины трассы, заземление
самолетов, длины трасс, размещения компонентов, перепускной емкости, и радиочастотные выбросы. Группа
надеется сбалансировать все эти факторы для того, чтобы создать хорошо разработанный, высокое качество,
функциональные печатную плату. Группа надеется, чтобы быть в состоянии прототипа, как большая часть
конструкции, как это возможно, чтобы уменьшить вероятность ошибок в рамках схем, и повысить надежность и
подтвер- рия в проектируемой схеме.
Печатные платы, как и любой другой метод подключения сигналов напряжения, будет рассеивать мощность
из-за сопротивления используемых материалов. Необходимо использовать как можно более широкие следы
для любого компонента, который будет нести большую мощность и меньшие следы для тех, кто будет нести
только сигналы и сообщения. Кроме того, необходимо, чтобы убедиться, что сопротивление следов цепи в
пределах причины. Каждый сигнал будет иметь небольшое количество сопротивления, емкости,
индуктивности и, что будет ТФ т.д., как чипы цепи способны передавать напряжение вдоль них. Чем дольше
след, тем большее сопротивление она будет иметь. Это сопротивление будет ТФ ЭСТА, сколько тока может
переходить от одного чипа к другому. Кроме того, с увеличением длины трассы, емкость трассировки
увеличивается. Эта емкость вызывает напряжение расти медленнее, и уменьшает скорость нарастания
выходного напряжения на выходе из зависимости от того, схема вождения след. Это ограничивает частоту,
как схема требует больше времени для стабилизации. Команда будет держать эти факторы во внимание,
когда они проектирования печатной платы, и будет делать каждые е и далее Орт держать след длиной как
можно короче. Другой важный аспект проектирования трасс, как следы согнуты. Очень немногие платы
способны соединять все следы как прямые линии, некоторые изгибы будут иметь важное значение. Изгибы,
однако, может создать производство ди FFI culties, в связи с тем, что травление используется для создания
печатной платы может объединять в углу следа. Кроме того, угловые следы создание размера антенны
микро, которая может передавать радиочастотные помехи, которая является очень нежелательным
признаком для любой схемы. По этой причине,
Конструкция печатных плат будет все завершено в течение разработки программного обеспечения Eagle,
выпущенный Cadsoft. Группа имеет некоторое знакомство с программой, а также его популярность с хобби и
хакерским сообществом благодаря простоте использования и низкая стоимость помогла группе сделать их
решение использовать эту программу. Группа, в это время, выполнили все схемы для проекта необходимо,
и
60
будет использовать эти схемы для того, чтобы начать вынимая печатную плату. Используя этот метод, он будет
уверен, что группа зацепила все компоненты до надлежащего напряжения питания, а также соответствующие
компоненты соединены друг с другом. Группа будет использовать утилиту правила проектирования клетчатой
​внутри Eagle, чтобы убедиться, что печатная плата направляется таким образом, что он сможет быть успешно
изготовлены на печатной плате дома выбрали.
Один из крупнейших факторов, часто забывают дизайнеры послушник платы, и эксперты, так это
форм-фактор печатной платы будет производиться, и как она будет установлена ​на корпусе, что он
находится. Группа желает всем из печатные платы для фи т в кубе базе LED, и установить их в систему с
помощью пластиковой stando и след с, что спариваться с монтажными отверстиями на печатной плате.
Группа будет разрабатывать и размещать componenets на печатной плате таким образом, что плата будет
шесть дюймов в одном измерении при макс. Группа желает, что при таком размере, печатная плата будет
достаточно легко работать, но не загромождать площадь под LED куб.
4.1.5 Физическая структура
Структура куба будет состоять из 18 калибра предварительно луженой медной проволоки. Это обеспечит как
электрические соединения для анодов и катодов светодиодов, а также структурной поддержки куба. Провод
продается в катушках 100s ног, с примерно 2000 футов проволоки, необходимой для этого строительного
назначения. Каждый кусок проволоки будет нарезают длиной около 60 см каждая. Проволока будет
растягиваться, чтобы выпрямить проволоку и увеличить его прочность, предотвращая проволочную рамку
стать согнуто. В 3-х мерной системе координат кубы, каждая плоскость х будет припаяна к анодам
светодиодов, в то время как проводники в плоскости г будут ссылаться на катодах. Шаг, или как далеко
каждый светодиод будет на расстоянии друг от друга, будет 6смом. Когда куб построен, он будет помещен на
деревянной основе, которая разместится оборудование управления: плат управления и плат драйверов. За
пределы LED куба будут иметь акриловые панели, что, прикрепленные к основанию, защищая тонкие
светодиоды и пол-нежной структуру медной проволоки.
61
Глава 5
Дизайн Резюме Аппаратное и
Программного обеспечения
В этой главе приведены аппаратные и программные проекты, а также их взаимодействие друг с другом. Краткое описание
Высокий уровень всех систем описывается посредством использования блок-схем. Краткое описание функциональных
возможностей предоставляется для всех основных компонентов программного обеспечения. Данные потока является де
определены от создания, через передачу, все пути к фи NAL дисплея на 3D LED куб. описания высокого уровня и
визуализация особенностей, взаимодействия и данные потока предоставляются далее определяет внутренние работы
проекта.
5,1 Высокий уровень дизайна
Самый высокий уровень описания куба 3D LED включает в себя только это наиболее общие компоненты. Рисунок 5.1
описывает это путем перечисления сигнал потока из пользовательского ввода в визуальной светодиодной продукции.
После того как пользователь вводит команду в программное обеспечение, с помощью графического интерфейса,
программа сообщит подробности анимации на встроенный процессор на одном из печатных плат. Встроенный процессор
будет контролировать на борту FPGA, который будет управлять строки и столбцы схемой для обновления анимации на
светодиодную кубе кадра за кадром. Рисунок 5.1 показывает этот сигнал потока куба 3D LED на системном уровне.
62
Рисунок 5.1: Светодиодный куб Блок-схема
5.2 Оборудование
Высокоуровневое описание аппаратных средств включает в себя только более подробно, чем общее описание.
Рисунок 5.2 иллюстрирует посредством использования сигнала потока блок-схемы операции аппаратных
компонентов куба 3D LED.
63
Рисунок 5.2: светодиодный куб блок-схема аппаратных
5.3 Программное обеспечение
Раздел программного обеспечения проекта делятся на три основных компоненты: анимация, коммуникацию и моделирование. Компонент
анимации генерирует последовательность анимации для отображения на LED куб. Компонент анимации далее разделен между Animation
Creator GUI и программируемый Animation Framework. Каждый из них предоставляет разработчикам и пользователям мощных
интерфейсов, с которыми они могут создавать анимации для отображения. Компонент связи передает все данные управления
освещением, необходимые для приведения в действие анимации к подсистеме фи rmware. Режимы передачи, поддерживаемый компонент
связи позволяют для широкого набора вариантов анимации для использования в кубе 3D LED. Компонент связи выглядит как черный ящик
для анимации компонентов для отправки анимации на LED куб. Компонент моделирования использует как ФИ rmware и аппаратный
тренажер для имитации поведения физических компонентов проекта. Оба симуляторы стремятся имитировать поведение физических
подсистем настолько точно, насколько это возможно, но они также позволяют функции, которые не существуют в действительности для
дополнительных опций отладки. Тренажеры будут служить в качестве испытательного стенда для процесса разработки программного
обеспечения. Разработчики могут использовать как имитатор, чтобы протестировать функции в программном обеспечении до этапа
интеграции и тестирования проекта. Программное обеспечение подсистемы и их взаимодействие друг с другом, показаны на рисунке 5.3.
но они также позволяют функции, которые не существуют в действительности для дополнительных опций отладки. Тренажеры будут
служить в качестве испытательного стенда для процесса разработки программного обеспечения. Разработчики могут использовать как
имитатор, чтобы протестировать функции в программном обеспечении до этапа интеграции и тестирования проекта. Программное
обеспечение подсистемы и их взаимодействие друг с другом, показаны на рисунке 5.3. но они также позволяют функции, которые не
существуют в действительности для дополнительных опций отладки. Тренажеры будут служить в качестве испытательного стенда для
процесса разработки программного обеспечения. Разработчики могут использовать как имитатор, чтобы протестировать функции в программном обеспечении до
64
Рисунок 5.3: Программное обеспечение Резюме
5.3.1 Анимация
Компонент анимации управляет генерацией анимации для отображения на светодиодном куб. Анимация служит в
качестве наиболее наглядного представления программного обеспечения части кубы 3D LED, и как такового
разработчик должна иметь мощные инструменты и интерфейсы для создания анимации. Анимации генерируются
вручную с помощью использования графического интерфейса создателя анимации для создания подробной анимации
кадр за кадром или путем использования открытой API для редактирования вокселей в LED куб каждый кадра в
анимации, хотя код для автоматизации процесса.
GUI Creator Анимация
GUI анимации создатель обеспечивает удобный интерфейс, в котором они способны генерировать очень детальные и
сложные анимации. Благодаря анимации создателя пользователей GUI способны объединить основные строительные
блоки кадров вместе, чтобы создать полную анимацию. Через интерфейс, пользователи могут просматривать
3D-изображение каждого кадра в качестве светодиодного куба и редактировать содержание цвета каждого воксел в
кадре. Процесс выбора индивидуальных вокселей облегчается за счет возможности дальнейшего выбора слоя каркаса из
любого из трех основных осей и редактировать вокселов в пределах 2D плоскости, которая более просто
визуализированных. Оба представления 2D и 3D отображаются бок о боке, чтобы дать пользователю полное
представления об изменениях они делают и то, как они представляют собой след текущего выполнения над каждым
кадром. Пользователь может добавлять дополнительные
65
кадров в анимации и редактировать их в той же манере. ФИ NAL особенность в GUI анимации создателя является возможность
добавлять, редактировать и удалять кадры из анимационной последовательности. Эти кадры будут отображаться в
графическом интерфейсе пользователя в очереди, которые подробно порядок и продолжительность каждого кадра в пределах
текущей последовательности анимации. Таким образом, графический интерфейс анимации создателя позволяет пользователю
создавать и изменять анимацию через манипуляцию с цветами светодиодов в кадре, порядок кадра и длительность кадра.
Программируемый Animation Framework
Каждая анимация, когда полностью сломано это просто набор вокселей, организованных и проведенных в памяти.
GUI анимации создатель пытается удалить всю сложность этого от пользователя, добавив дополнительный слой
абстракции процесса и отображения процесса создания анимации в удобной для пользователя форме. Для
разработчика, который знаком с API используется для управления процессом создания анимации, хотя многие
сложные и интересные анимации могут быть созданы, просто используя тот же API для достижения подобного, но
автоматизированный процесс создания анимации. Разработчик будет поддерживать список фреймов в пределах
анимации и добавлять кадры анимации, как они созданы. Вокселы каждого отдельного кадра, вероятно, будет
назначена в соответствии с, определяемого алгоритмом для получения желаемого е и далее ЭСТ. Этот процесс
может повторяться позволяет многим обширно ди Ф.Ф. различны анимации, которые будут созданы, просто
модифицировать алгоритм, используемый для обозначения воксельных цвета. Благодаря программируемым рамок
анимации, разработчик может быстро создать большой набор анимации только с ограниченным количеством е и
след орты затраченным в дизайне.
Анимация контроллер
Контроллер анимации обеспечивает дружественный пользователю интерфейс, в котором они способны объединять,
редактировать и отображать анимацию на светодиодном куб. Благодаря анимации пользователи контроллера может
сочетать анимацию, а также редактировать выбери переменные, чтобы изменить поведение анимации, чтобы создать
большую или более сложную последовательность анимации. Контроллер анимации позволяет анимация должна быть
секвенирована вместе, чтобы сформировать большие последовательности и ведет себя так же, как графический интерфейс
создателя анимации, но с использованием полной анимации вместо кадров. Различные реализованные анимации содержат
набор пользователей модифицированных фи способных переменные, которые изменяют поведение анимации. Эти
переменные, такие как текст для прокрутки по кубе, устанавливается в интерфейсе для создания последовательности
анимации для отображения. Так же, как GUI анимации создателя абстрагирует программируемые рамки анимации от
пользователя, так что делает контроллер анимации от компонента связи. Контроллер анимации позволяет пользователю
выбирать анимации для отображения на LED кубы 3D без необходимости использовать компонент связи напрямую.
66
5.3.2 Связь
Компонент связи управляет передачей анимации для самого светодиодного куба и действует как прокси между
программным обеспечением и фи rmware. Этот компонент будет выступать в качестве наиболее критической
части участка программного обеспечения проекта. Без надлежащей связи между программным обеспечением
анимации и физических компонентов, не будут правильно отображаться ни один из анимации, если вообще.
Передача данных управления освещением осуществляется через несколько способов передачи, которые
обеспечивают уникальные наборы функций и производительности tradeo Ff с, чтобы обеспечить множество
анимационных функций. Все данные управления освещением передается по проводной Ethernet соединение с
помощью Art-Net протокол. Методы связей включают в себя передачу всей анимации, передачу отдельных
кадров, и передачи данных, используемых для преобразования текущего кадра. Каждый способ обладает
наборами преимуществ и недостатков, которые делают их пригодными для определенных наборов анимации.
Передача всей последовательности анимации позволяет сложные анимации, которые должны передаваться к фи
rmware, не заботясь о скорости передачи данных. Это позволит с высокой скоростью воспроизведения с
ограничением памяти, доступной для компонента фи rmware. Передача отдельных кадров и отображать их сразу
же после полного кадра принимаются позволяет динамические анимации для отображения на LED кубе в режиме
реального времени. Частота обновления анимации ограничена скоростью передачи программного обеспечения
связи. Наконец, в тех случаях, когда текущий кадр остается в основном те же, небольшие модификации в кадр
будет сообщено в результате решения низкого пропускной способности. Одиночные слои могут быть переданы и
проталкиваются в текущий кадр из назначенной оси, позволяющей для простой прокрутки объектов в пределах
кадров. Аналогичным образом, объект в пределах кадра может поворачиваться без необходимости повторно
передавать весь кадр. Сочетание всех вариантов передачи, показанных на рисунке 5.4, позволяет обеспечить
надежный набор функций связи, что расширяет возможность анимации для проявителя значительно.
67
Рисунок 5.4: Способы передачи
5.3.3 Моделирование
Компонент моделирования позволяет разработчику тестировать все компоненты программного
обеспечения в процессе разработки. Благодаря всем частям развития, происходящих одновременно, то
все компоненты светодиодного куба могут быть не доступны для тестирования на протяжении всего
процесса разработки. По этой причине способ, чтобы проверить отдельные компоненты программного
обеспечения, без физического имеющего LED куб чрезвычайно выгодно. Светодиодный куб Тренажер
состоит из двух компонентов, чтобы моделировать как фи rmware и аппаратные компоненты
светодиодного куба, ведут себя одинаково физические компоненты самого светодиодного куба для
тестирования. В дополнении к поведению традиции, которая существует в физических подсистемах,
функциональность добавляется включать дополнительные опции отладки. Поток данных между
компонентами программного обеспечения и тренажерами показан на рисунке 5.5.
68
Рисунок 5.5: Тренажер данных FLOW
Firmware Simulator
Фи rmware тренажер действует реплицировать поведение подсистемы фи rmware проекта, который управляет LED
куб заданной входной сигнал от программных подсистем. Это специфичный тренажер служит для проверки
работоспособности компоненты связи программного обеспечения. Для того, чтобы должным образом имитировать
поведение подсистемы rmware фи, то фи rmware Тренажер будет принимать передачи таким же образом, как
компонент фи rmware. Фи rmware Тренажер будет получать все данные управления освещением путем
прослушивания на интерфейсе Ethernet. Нет данных для управления освещением не будет передаваться
непосредственно на тренажере через память, так как это не будет точно имитировать связь между этими двумя
компонентами. Фи rmware тренажер будет поддерживать все режимы передачи компоненты связи и будет
имитировать ограничения физических компонентов в получении и сохранении этих данных в памяти. После приема
и декодирования данных управления освещением, ФИ rmware Тренажер будет вести себя так же, как в
фантастическом rmware себя и управлять LED куб имитируется с помощью аппаратного имитатора.
Оборудование Simulator
Аппаратная Тренажер служит для визуализации анимации, как они будут появляться на кубе 3D LED.
Аппаратная симулятора отображает 3D-рендеринг LED куба, пользователи имеют возможность
манипулировать для просмотра со всех возможных углов. Через моделируемой дисплей, разработчики
могут проверить правильность анимации и отдельных кадров. Аппаратная симулятора будет принимать
входной сигнал от фи rmware тренажера, чтобы воссоздать поведение, которое существует в пределах
физических подсистем. В дополнении к этому, аппаратный тренажер позволит для ввода
непосредственно из программного обеспечения анимации, поведение, которое не существует в
физических подсистемах. Это прямой вход дает разработчикам возможность отладки анимации
напрямую.
69
Глава 6
Проект Прототип Строительство
и кодирования
С проектом, как большой, как LED куб будет, план сборки и строительства необходимо. В следующей главе
будут изложены приобретение и завершение строительства светодиодного куба. Группа будет объяснить и
предоставить детали для оборудования, фи rmware и завершения программного проекта, а также методы,
используемых для того, чтобы куб построен Специфическим катион.
6.1 Приобретение запчастей
Как уже выбрана каждая часть для прототипа, он остается, чтобы описать, как будут получены части. Таблица
6.1 описывает, как будет приобретен каждый элемент необходим для разработки и прототипа сборки.
Составная часть
Метод Приобретенная
светодиоды
Оплаченные (бесплатно)
провод
купленный
Встраиваемый компьютер
Дизайн / Приобретенные
FPGA
купленный
печатная плата
Дизайн / Приобретенные
Драйверы светодиодов
Выборочные (бесплатно)
MOSFETs
Выборочные (бесплатно)
Аналого-цифровой преобразователь
Выборочные (бесплатно)
Источник питания
купленный
Обработка компьютеров
Принадлежит (бесплатно)
Рама & Case
Встроенный / Приобретенные
Строительные материалы (фанера, винты и т.д.) Приобретенные Акриловые
купленный
панели
Таблица 6.1: Компонент Приобретение
70
6.2 Ведомость материалов
Спецификация перечисляет каждый специфичного производитель и номер детали для всех основных компонентов,
которые будут использоваться для построения прототипа. не будут включены мелкие элементы или части, которые будут
получены на основании необходимости на протяжении всего проекта. Таблица 6.2 описывает, как будет приобретен
каждый элемент необходим для разработки и прототипа сборки.
6.3 Печатные платы Строительство
Куб 3D LED будет поставлена ​под угрозу из двух уникальных плат, каждая из которых будет направлен о ФФ для
профессионального производства, и будет собираться группой. Группа имеет некоторый опыт в проектировании и пайки
печатных плат, однако завершение плат как комплекс, как это будет нетривиальная задачей для группы, чтобы
закончить. Группа будет выделять большое количество времени для того, чтобы быть уверенными, что они не спешат
через сборку и испытание печатных плат для того, чтобы гарантировать, что ни один из компонентов не повреждены во
время сборки. Группа будет следовать всем стандартным статическим процедурам безопасности электричества, и
будет использовать соответствующие procudures заземления при работе с чувствительными к статическому
электричеству устройств. В целом, группа надеется принять все возможные меры, необходимые для обеспечения того,
чтобы печатные платы собраны без проблем.
Сборка каждой из плат будет завершено к группе. Группа имеет некоторый опыт в поверхности паяльной
монтажа компонентов на порядок величины, что конструкция будет использоваться. Группа будет
использовать различные методы для правильной пайки каждого из компонентов платы. Группа желает, чтобы
быть в состоянии завершить сборку в большинстве электронной FFI Cient, безопасный и простой способ,
гарантируя, что качество любого из компонентов, используемых не уничтожаются, и что любой и каждый
спецификацией положить в производителя при условии, радиокомпоненты следуют. Группа будет
использовать метод конфорки для пайки всех большой поверхностного монтажа чипов на первой стороне
печатной платы, а затем будет использовать паяльник, и, возможно, горячий воздух переделки станции для
пайки другого поверхностного монтажа чипов. Группа будет использовать комбинацию паяльной пасты и
твердым припоем, как неэтилированный для облегчения сборки и пайки. Группа предвосхищает
строительство плат, принимающих только около двух дней в общей сложности.
Как и в любом проекте, группа понимает, что будет необходимо иметь запасные части, которые легко
взаимозаменяемы. Группа надеется, что ничего не удастся в системе, но всегда есть возможность для
отказа. Группа будет заказать запасные части каждой из частей положить на печатной плате, и будет в
состоянии обеспечить ремонт в цепи должен компонент не получится, и будет также понять и
проанализировать, почему компонент не удалось, и, если необходимо подмена быть сделано, чтобы
предотвратить будущие неудачи. Группа также надеется создать одну полную запасную печатную плату
каждого водителя, и конструкция управления, такие, что
71
Составная часть
Количество
Пользовательские индикаторы
1200
18 Gauge Предварительно луженая медная проволока
PIC24HJ256GP206A 2000 футов
1
XC6SLX9
1
Печатные платы
3
TLC5948A
20
SUD45P03-10-E3
20
REG1117
2
ADS1278I
1
8MHz кварцевый генератор
2
SP-150-5
1
Lenovo Thinkpad W530
1
RJ45
1
разъем MicroSD
1
ENC624J600
1
светодиод состояния
10
4 полюс Микропереключатель
1
100uf емкостное
6
10uF емкостное
1
, 1uF емкостное
56
1nF емкостное
36
10nF емкостное
2
6.8nF емкостное
2
18pF Конденсатор
4
Резистор 100 кОм
1
12.4kΩ Резистор
6
4.7kΩ Резистор
8
330Ω Резистор
1
100Ω Резистор
4
75Ω Резистор
4
10Ω Резистор
1
1015Ω Резистор
25
Акриловые панели
5
Строительные материалы
сортированный
Таблица 6.2 Ведомость материалов
группа будет иметь возможность избежать последней неудачи минут, и напряжения в пределах завершения
проекта. Если печатная плата неудачна, группа сможет заменить его в течение минимального времени, и
демонстрирует работу, легко поддерживать продукт.
72
6,4 LED куб Строительство
Конструкция светодиодного куба будет завершена в нескольких этапах. Сам, или фактические 1000 светодиодов и их проводки /
структура куба, будет завершена плоскость-на-плоскости. Каждая плоскость светодиодов будет припаяна к их соответствующим
соединениям, выполненным из 10х10 пересечения кусков 18 калибра предварительно луженой медной проволоки, тщательно
разнесенные на основании требуемого шага 6 мм. Расстояние между будет достигнуто путем построения плоскости фл в, на панели
фанеры. Винты будут размещены в фанеры, чтобы направить интервалы в 18 калибра проволоки. Этот этап построения показан на
рисунке 6.1. Светодиоды будут припаяны к структуре проволоки плоскости над фанерой. Наконец, после завершения и тестирования
панели, панель будет интегрирована в другие панели, один за другим, чтобы сформировать куб. Это будет достигнуто путем
размещения долго, тонкие куски фанеры O и далее в сторону скамейки, дерево устойчиво крепится винтами к скамейке. Каждая
плоскость из проволоки и светодиодов будет скользить вертикально над кусками дерева, торчащий из скамейки. По мере того как
самолеты будут висеть надежно на этой деревянной оправке, размещение между плоскостями также может быть точно
контролироваться. Именно с этой позиции, заставивших 10x10x10 куб затем будет прикреплен к основанию куба. Этот этап конструкции
показан на рисунке 6.2. Именно с этой позиции, заставивших 10x10x10 куб затем будет прикреплен к основанию куба. Этот этап
конструкции показан на рисунке 6.2. Именно с этой позиции, заставивших 10x10x10 куб затем будет прикреплен к основанию куба. Этот
этап конструкции показан на рисунке 6.2.
Рисунок 6.1: LED Plane Строительство
73
Рисунок 6.2: LED плоскости интеграции
Основание куба будет построен отдельно, приблизительно 2.5ft Ш х 2.5ftL х 1ft
H. Он также будет построен с фанерой, скреплен винтами. Аппаратные средства управлений будут
храниться внутри основания куба, и соединены через основание к структуре светодиодного куба.
Реализация 6.5 Программное обеспечение
Подсистема программного обеспечения этого проекта обеспечивает необходимую функциональность для куба 3D LED.
Процесс разработки программного обеспечения начнется де фи нинами самого основных типов данных и функция в
качестве строительных блоков. Развитие будет продолжать реализацию программных компонентов и функций в
соответствии с графиком разработки программного обеспечения, описанного ниже. График разработки программного
обеспечения и приоритеты компонентов функции критичности, зависимость и меры инвестиций по сравнению с
вознаграждением. Развитие базовой функциональности имеет наивысший приоритет, а затем тщательно протестировать
среду кровать для тестирования интеграции, и, наконец, после того, как все основные этапы разработки программного
обеспечения будут выполнены, развитие анимации и дополнительных функций может начаться. Процесс разработки
программного обеспечения включает в себя тестирование интеграции между программными компонентами и с помощью
моделирования на всех основных этапах в развитии. Это будет служить для выявления ошибок и ошибок в программном
обеспечении на ранних стадиях развития, и мы надеемся уменьшить влияние ошибок и проблем интеграции в конце цикла
разработки, когда времени для развития станет критическим.
74
6.5.1 Компоненты
Часть программного обеспечения этого проекта распределяется между различными компонентами. Все это имеет
решающее значение для процесса развития, хотя лишь некоторые из них необходимы для завершенного проекта.
Процесс разработки можно увидеть на рисунке 6.3. Классы программного обеспечения де фи Ning светодиодный куб
сам являются наиболее важными, поскольку они присутствуют во всех компонентах программного обеспечения. После
того, как основные строительные блоки построены, рамки для создания анимации может начаться. Разработка
аппаратных средств Тренажер будет следовать, чтобы служить в качестве испытательного стенда и визуализатора
для анимации. Аппаратная симулятора будет также служить в качестве важного компонента для тестирования и
использовать фи rmware тренажер, поэтому его раннее развитие служит двойной цели. Компонент связи и фи rmware
имитаторы будут разработаны одновременно в следующем. Оба компонента неразрывно связаны, и никакие другие
компоненты не зависят от их развития, поэтому они не Су Ф.Ф. эр от позднего развития. Наконец, когда все другие
критические компоненты и соответствующие наборы тестов разработаны, разработка графического интерфейса
создания анимации может начаться последней крупной целью. Интеграция между развитыми компонентами будет
опробована во всех точках на протяжении всего процесса разработки, чтобы гарантировать, что все компоненты
правильно работать.
Рисунок 6.3: Процесс разработки программного обеспечения
LED Cube
Наиболее важные компоненты программного обеспечения для всей подсистемы программного обеспечения
являются кубической и вокселями реализации LED. Функциональность обоих классов будет соответствовать с
диаграмм классов, описанных на рисунке 4.10. Воксельные просто реализован в виде структурированного типа
данных с функциями, чтобы работать во полей. Все три 8-битных цветовых каналов воксела реализованы в виде
одного 32-разрядного целого числа, как показано на рисунке 6.4. Значение 0x00 в канале означаемого ES цвета не
производятся из этого канала, в то время как значение 0xFF означающего эс полноцветный прочности при условии,
с этим каналом. Функции SETR (), SETG (), и SETB () будет назначить один байт в соответствующем месте цветового
канала в значение цвета. SetColor () функция
75
назначить все три цветовых канала одновременно. GetR (), GetG (), GetB и GetColor () функции дополнительно
реализованы, чтобы получить доступ к Speci значения фи гр от структуры. Использование макросов может включить
все эти функции должны быть реализованы в виде встроенных функций с битмаски.
0
16
8
0x00
24
зеленый
красный
31
синий
Рисунок 6.4: вокселей Datatype
Светодиодный куб представлен в виде 3-мерного массива вокселей. Массив реализован с й-координатой
является медленным индексом сканирования, у-координата падения между ними, и, наконец, Z-координата как
быстрый индекс сканирования. Каждый вокселей будет соответствовать единице координаты вдоль
положительных осей XYZ на основе начала координат. При инициализации все воксели будут иметь значение
цвета черных, или просто равно 0x00. Разработчик может установить значение цвета воксела непосредственно
с функцией SetVoxel () со ссылкой на его 3D координат и цвет воксела. Цветовые значения для всего слоя куба
может быть аналогичным образом назначается с функцией SetLayer (), передавая слой вокселей, на какую ось
слой принадлежит, и с указанием координат, чтобы держать константу. Функция PushLayer () обрабатывает
массив воксел в качестве 3-мерного двухпоточным очереди, где слой может быть нажат из любого грани куба и
остальные слоев будет смещаться для размещения, в конечном счете, в результате чего слоя на
противоположную поверхность, чтобы быть сдвинуты из массива вокселей. Функция Rotate () будет принимать
3-мерный вектор, задающий вращение куба по каждому из трех основных осей с центром в середине кубы. Все
вокселей будут отображаться в блоке шкаф координат в кубе после поворота и несопоставленные значения
будут присвоены значения цвета черного. Функция Перевести () осуществляется аналогично функции Поворот
() за исключением того, что вектор также указывает сдвиг вдоль, а не вращение вокруг, в каждом из трех
основных осей.
Анимация
Реализация анимации компонент на основе классов документированных на рисунке 4.12, и в значительной
степени зависит от типа данных, определяемого на рис 4.10. Анимации состоит как последовательность
кадров. Кадр содержит цветовые данные всех воксел в LED кубе и задержек, описывающей длину дисплея.
Светодиод данные кубы в кадре только устанавливаются на раму с функцией SetFrame (). Все манипуляции
с содержимым кадра осуществляется через класс LED куб. SetDelay () присваивает длительность кадра,
который будет отображаться. Анимации проводятся в виде списка кадров. Классы анимации реализует два
метода для вставки кадра в последовательности анимации. Функция ADDFRAME () неявно вставляет кадр в
хвосте последовательности анимации, при задании индекса к одной и той же функции будет вставить кадр
по этому индексу последовательности, толкая остальную часть последовательности обратно. Функция
RemoveFrame () будет удалить кадр из последовательности, что и вернуться
76
Рамка. Используя ADDFRAME () функции в RemoveFrame () и, разработчик может изменять порядок кадров в
анимации.
связь
Коммуникационный компонент лежит между компонентом анимации и физическими системами для передачи анимации в качестве данных
управления освещения посредством осуществления, описанного на рисунке 4.16. Данные передаются в пределах ArtNet пакета,
определяемого на рис 4.15. Функция MakeHeader () присваивает значения по умолчанию в заголовке пакета. Функция SetPayload ()
присваивает данные управления освещением к пакету. Функция будет также гарантировать, что данные ограничены от 2 до 512 байт и
дополняются нулевой байтом, чтобы обеспечить равномерную длину, если это необходимо. После того, как обе эти функции были
названы, заполненное пакет готов к передаче возвращается с функцией GetPacket (). Класс связи должен поддерживать всю необходимую
информацию для связи анимации. Сетевой разъем присоединен к интерфейсу Ethernet и режиму передачи оба инициализированы во
время выполнения функции Initialize (). Компонент анимации передает данные анимации с помощью функции SetAnimation (). В
зависимости от режима передачи, функции в MakePackets () выводит следующий набор пакетов ArtNet к выходу бу эр и след для передачи.
Передача данных управления освещением осуществляется с помощью функции SendNextPacket (). Функциональность класса
обрабатывается в главном потоке, который принимает данные анимации, как это видно из компонента анимации и передает пакеты ArtNet
по мере необходимости для физических подсистем. функция MakePackets () выводит следующий набор пакетов ArtNet к выходу бу эр и
след для передачи. Передача данных управления освещением осуществляется с помощью функции SendNextPacket (). Функциональность
класса обрабатывается в главном потоке, который принимает данные анимации, как это видно из компонента анимации и передает пакеты
ArtNet по мере необходимости для физических подсистем. функция MakePackets () выводит следующий набор пакетов ArtNet к выходу бу
эр и след для передачи. Передача данных управления освещением осуществляется с помощью функции SendNextPacket ().
Функциональность класса обрабатывается в главном потоке, который принимает данные анимации, как это видно из компонента анимации
и передает пакеты ArtNet по мере необходимости для физических подсистем.
моделирование
Программные имитаторы будут реализованы в виде двух отдельных подсистем, описанных на рисунке 4.17. Моделирование
фи rmware будет стоять одна от остальной части программного обеспечения, в то время как аппаратное моделирование
позволит непосредственного взаимодействия с обеих фантастическом моделирования rmware и программных компонентов.
Развитие подчеркнет соответствие реальных ограничений систем они имитируют. Хотя точность в реальных системах
необходимо, имитаторы будут осуществлять дополнительные функции, чтобы помочь в отладке. Реализации имитатора
будут принимать входные данные из компонентов программного обеспечения так же, как физические компоненты будут и их
функциональные возможности будут появляться прозрачны для программных компонентов.
Моделирование прошивки Фи rmware тренажер получает все данные управления освещением через ArtNet
пакетов через интерфейс Ethernet. После инициализации фи rmware Тренажер будет поддерживать
сокет-соединение к интерфейсу, где он будет прослушивать входящие данные с функцией GetNextPacket (). Все
входящие пакеты не помещаются в принятые пакеты бу эр до тех пор, и след основного тренажера нить может
обрабатывать их. Функция ParsePacket () принимает данные управления освещением от принятых пакетов ArtNet
и реконструировать данные в кадры анимации последовательности. После того, как реконструированы кадры
помещаются в анимационной последовательности, аналогичной той, поддерживаемой компонентом связи.
Основной Тренажер поток будет контролировать выход
77
из кадров анимации в аппаратной имитатора на основе задержек, связанных с каждым кадром. В
соответствующих интервалах функция OutputNext () будет передавать данные воксельного кадр к
аппаратному тренажеру для отображения и обновление отображения аппаратного имитатора.
Аппаратное моделирование Аппаратный тренажер реализует LED куб как 3D OpenGL сцена в 10x10x10
равномерно распределенные сферы. Аппаратная симулятора будет поддерживать 3D-массив вокселей
похожи на светодиодном класс куб. Сцена поддерживается аппаратная тренажер может быть изменена
путем установки всех куб вокселей с помощью функции SetFrame () или путем установки цветовых
данных для отдельных вокселей с функцией SetVoxel (). Воксели могут быть установлены либо с
помощью фи rmware тренажера для имитации реального поведения системы или с помощью
компонента анимации для того, чтобы изолировать анимации в процессе тестирования. Визуализации
3D сцены отображаются пользователю обновляется только тогда, когда функция Display () вызывается.
6.5.2 Software Features
Функции программного обеспечения, доступные для пользователей значимо повысить полезность,
функциональность и простоту использования при создании и отображении анимации с 3D LED куб. В то время как
разработчик, который работал над проектом в течение всего семестра может иметь глубокие знания о внутренней
работе программного обеспечения. Было бы наивно распространить такое же предположение, любому другому
пользователю. Через дополнительные функции программного обеспечения, то же утилита доступна для
разработчиков становится доступным с дополнительным слоем абстракции от самого кода и увеличение простоты
для пользователя. Эти функции также служат для усиления мощности основного кода, позволяя пользователю
изменять, комбинировать и создавать больше анимации легко в заданных рамках.
GUI Creator Анимация
GUI анимации создателя позволяет пользователю создавать анимацию через удобный графический интерфейс, который
абстрагируется программируемая рамкой анимации. Графический интерфейс анимации создателя будет содержать три основных
сегмента редактирования анимации окна, аналогичны фиги
4,9, а также панель инструментов цветовой палитры. Два основной сегмента окна для редактирования цветных
воксел в пределах кадра анимации будет отображением 3D-рендеринг куба, а второй дисплей из одного слоя
из куба. Сегмент одного окна слой карты к слою внутри куба и выбирается через ряд выпадающего меню,
чтобы определить основную ось для хранения постоянная и индекса этого конкретного слоя. Выбранный слой
будет визуализироваться в сегменте 3D-окна, чтобы позволить пользователю быстро увидеть, какой слой они
редактируют. Цвета выбираются из цветовой палитры, аналогичной реализовано в программе Microsoft Paint, и
все воксели в сегменте 2D окна будут получить выбранный цвет при нажатии. Сегмент фи NAL окно служит в
качестве редактора для анимационной последовательности. С помощью этого раздела, дополнительная
анимация
78
кадры могут быть добавлены, удалены, заказаны и отредактированы. Поведение создателя GUI анимации для
создания анимационной последовательности будет очень похожа на то, как Microsoft PowerPoint реализует
создание слайд-шоу. Эта система устраняет необходимость кодировать анимацию вручную через
программируемые рамки анимации.
растеризации объекта
Бене фи CIAL функция для пользователя будет помогать в процессе создания 2D или 3D рисунка. Без этой функции,
пользователь, который хочет, чтобы воссоздать изображение на светодиодной кубе придется вручную наметить и ввести
соответствующие цвета для каждого воксел в кубе. Через процесс растеризации, вектор фигура может быть сведена к
точечным представлению матрицы, которая сразу же готов для показа на светодиодном куб. Все координаты в пределах
рисунка оцифровываются и отображаются в VOXEL на светодиодной кубе с соответствующим цветом. Функция объекта
растеризации позволяет вновь созданная светодиодный куб цифра будет экспортироваться для использования в GUI
анимации создателя. С помощью этой функции пользователь может теперь вход или фигура и он воссоздал для
отображения на светодиодном куб с минимальным е и след орта.
Анимация контроллер
Точно так же, чтобы как GUI анимации создатель позволяет пользователю быстро и легко создавать анимацию,
контроллер анимации позволяет пользователю быстро и легко отображать наборы анимации на светодиодном куб.
Через графический интерфейс, пользователи могут создавать последовательность анимации для воспроизведения.
Контроллер анимации поддерживает список анимаций, которые могут быть выбраны для добавления в
последовательности анимации или для непосредственного отображения на LED куб. Список анимации будет
включать в себя функции анимации обсуждается ниже и позволит для различных переменных в анимации можно
манипулировать, чтобы изменить поведение анимации. Контроллер анимации создаст последовательность
анимации путем добавления каждой анимации друг с другом, чтобы создать более длинную анимацию, которая
может быть сохранена или передается вместе бесшовно с другими компонентами программного обеспечения.
Контроллер анимации будет абстрактный компонент связи и выполнить передачу выбранных анимации для
физических компонентов LED куба. Контроллер анимации будет контролировать распределение анимации для
компонента связи для воспроизведения.
6.5.3 Анимация Особенности
Набор функций анимации будет выступать в качестве визуального представления мощности и полезности
компоненты анимации программного обеспечения. Богатый набор функций анимации будет напрямую связан с
непосредственным восприятием аудитории в успешности проекта, и по этой причине, набор функций должен быть
прочным и обширен. Следующие анимации все полученные через программируемый Animation Framework API.
Возможности анимации будут доступны для выбора из анимации контроллера с анимацией гр переменных
Специфической открытым, чтобы изменить поведение и внешний видом анимации. Каждая специфичная функция
анимации может потребовать дополнительные структуры данных
79
необходимо сохранить, чтобы поддерживать каждую отдельную анимацию для получения желаемых функций.
Функции будут общие функции в качестве компонентов для достижения большей и более сложной анимации.
Несколько анимационных функции будут зависеть от ввода от других периферийных компонентов, таких как аудио
источников и акселерометров.
Математические шаблоны Казалось бы, сложные узоры и визуально привлекательные анимации могут быть
созданы де фи нин математические функции в 3-мерном пространстве и с помощью куба визуализировать
результат. Эти функции будут вычислены на
ху Плоскость в сетке из (0, 0) до (9, 9) с Z координирует де Fi Ning результирующую воксель на светодиодном куб. Все
функциональные решения будут привязываются к ближайшему блоку координаты для отображения на вокселе, что
существует. Все значения, которые превышают пределы вокселей будут щелкнули наибольшую координату куб способен
отображать. Математические функции также может де цветовые значения определяют для каждого воксела.
Параболоид по центру кубы, который является вертикально сдвинутой от намного ниже кубы намного выше
кубы дает иллюзию воксел щелкающим от нижнего слоя к верхнему слою куба. Только видимый участок
перехода воксел будет в воксел в пределах диапазона видимого г на куб, потому что все воксели ниже или
выше диапазона будут прилипать к самым низким и наивысочайшим вокселям соответственно. Отрицание
функции может достигнуть е и далее ЭСТ анимации работает в другом направлении и воксели возвращаются
в исходное положение. Использование синусоидальных функций создает периодические анимации с
интересными узорами, которые могут появиться. Генерация синусоидальных функций с переменной
амплитудой, частотой и фазой через зависят как Икс
а также Y и, возможно, время может создать обширный набор анимаций. Дополнительные анимации могут
быть созданы путем расширения или сжатия сферы или другие томов от различных координат в
светодиодной кубе. Число возможных анимация, которые используют комбинацию математических функций
ограничены только разрешение блока дисплея LED куб.
Raining Воксели Е время дождя и далее ЭСТ может быть достигнуто с помощью светодиодного куба,
имея полностью зажгли вокселей по всей видимости, падение от верхней к нижней части куба. Этот е и
далее ЭСТ осуществляется довольно просто путем нажатия новых слоев на верхней части куба, в
результате чего весь куб смещается вниз на каждой итерации. Надавив слоев создает е и далее ЭСТ
тяжести, с новыми капли начинают только тогда, когда новый слой вставляется. При таком способе
вставки и сдвига слоев капель вниз, анимация должна вычислять только новые места капельные и не
нужно следить за капель дождя в анимации. В дополнении к этому, создавая затухающий след за
каждую падающую каплю создает дополнительную иллюзию движения. Это реализуется просто путем
уменьшения интенсивности цвета предыдущего слоя с помощью постоянного множителя перед
добавлением в новых капель.
80
Фейерверк Иллюзия фи доработок может быть создано путем объединения некоторых функций,
описанных выше особенностей анимации. ФИ переделки анимация состоит из фи переделки выстрела
поднимающегося колонку светодиодного куба, взрывая создать полую сферу частиц, сосредоточенных
на пике восходящего выстрела, и, наконец, все взрывались частицы падают вниз куб. Растет выстрел
часть анимации осуществляется аналогично дождь вокселей анимации путем сдвига слоев в нижней
части куба до тех пор, пока выстрел достиг своего пика. Фи переделка взрыв создается путем генерации
расширяющейся полой сферы вокселей, центрированных на пике выстрела. После взрыва завершена,
сила тяжести тянет взорванного частицы на землю осуществляется аналогично тому, как реализуются
падающие капли дождя.
Прокрутка Цифры Светодиодный куб может отображать прокрутки фигур похожих на прокрутку светодиодного
баннер в нескольких манерах, которые дополняют, а также расширяют общие черты традиционного 2D LED
баннер. Традиционный 2D прокрутки анимации с одного лица к другому осуществляется в 3D поддерживает
как 2D фигурам через один слой вдоль оси движения или 3D-фигур распространилась по всему слою
перпендикулярно к оси движения. Прокрутки фигура представлена ​внутри как массив тех же размеров, что и
СИД куб с одним исключением, что ось движения расширена для поддержки длины прокрутки анимации.
Скользящее окно через прокрутку структуру данных рисунка будет определять текущее изображение на
светодиодном куб. Поскольку новые слои проталкивают в светодиодном куб, старые слои будут смещаться
наружу, достижения прокрутки е и далее по ЭСТ одной оси движения. Рассматривая LED куб в виде полого
куба и принимая во внимание только крайние вокселей, е и далее ЭСТ из 2D баннера прокрутки через
3D-объем достигается. Опять же, внутри прокрутки анимации 2D будет представлена ​2D массив вокселей
высота куба и ширина прокрутки рисунка. Число граней, выбранных в качестве отображения поверхностей
определяет, сколько слоев должны быть выбраны из прокрутки рисунка на дисплее. С примером только с
использованием трех граней и пренебрегая заднюю поверхность, левая направо прокрутки анимация
начнется на крайнем левое лице, путешествие по передней поверхности, и исчезает между правыми и
задними гранями. Три двигающихся окна, которые перекрываются на один столбец воксел на их границах
будут сдвинуты вдоль рисунка 2D, и весь слой будет установлены на каждую соответствующую грани кубы
для отображения. Внедренная скроллинг фигур особенности воссоздать, но и расширить возможности
аналогичного 2D LED дисплеи, выделив возможности 3D LED куб.
Вращающиеся фигуры Твердая фигура может быть повернута в пределах LED куба, чтобы обеспечить
дополнительную функцию, а также, возможно, добавить поддержку для других функций. С рисунком, помещенным в
центре кубы, то фигура должна быть ограничена цилиндром радиуса 5 с возможностью поворота вокруг одной
первичной оси или сферы радиуса 5 для вращения вокруг всех осей, чтобы предотвратить клиппинг анимации на
кромки. Серия де определены повороты результатов базы анимации в повернутом наборе вокселей в пространстве
координат для отображения. После поворота, не все воксели от базовой анимации будут выстраиваться
81
отлично воксели для отображения. Вокселы повернутый рисунок будет привязанные к вокселю представленного
ближайшей единицы координат. Внутреннее представление базового рисунка никогда не будет модифицировано для
предотвращения деградации GURE фи. Скорее, вращающаяся фигура анимация будет поддерживать вектор,
представляющий текущую ориентацию базового рисунка. Возрастающие изменения вращения на рисунке сделаны
непосредственно вектора ориентации и отображается фигура пересчитывается из этого вектора ориентации на
каждой итерации, чтобы предотвратить непреднамеренное ходьбу или деградацию вокселей из исходного рисунка.
Гравитация моделирование В качестве расширения вращающихся фигур вращающихся фигур анимации, интересная особенность может
быть добавлена ​путем добавления акселерометра на светодиодную кубе, чтобы обеспечить данные об ориентации. С ориентацией куба,
известного во все времена, можно ориентировать отображаемый на рисунке куба таким образом, что она, по всей видимости будет и
далее ected под действием силы тяжести и всегда лежит на дне куба относительно земли. Эта сила тяжести е и далее ECT создается
путем применения выходного сигнала акселерометра в качестве входных данных для вращающегося рисунка анимации. Входной сигнал
от акселерометра должен быть выбран часто и обновление фигура должна отображаться при высокой частоте обновления для
достижения реалистического е и далее ЭСТ. Роман пример этой функции анимации является рассмотрение светодиодом будучи
наполовину полон воды и ограниченных ребрами куба. Слой вокселей лежит в середине кубы, представляющей поверхность воды и
вращает на основе ориентации кубы, чтобы оставаться уровня по отношению к земле. Все воксели ниже поверхности воды будут
заполненными как вода. Дополнительный адрес и далее ECT бы, чтобы позволить открытой верхней поверхности, а также, чтобы
позволить уровень воды, чтобы уменьшить, как вода выливается из верхней части куба. Для этой функции должны быть реализована, это
требует добавлений дополнительного физического компонента к светодиодному кубу и канал для связи обратно в программу анимации. и
позволить уровень воды, чтобы уменьшить, как вода выливается из верхней части кубы. Для этой функции должны быть реализована, это
требует добавлений дополнительного физического компонента к светодиодному кубу и канал для связи обратно в программу анимации. и
позволить уровень воды, чтобы уменьшить, как вода выливается из верхней части кубы. Для этой функции должны быть реализована, это
требует добавлений дополнительного физического компонента к светодиодному кубу и канал для связи обратно в программу анимации.
Аудио визуализация Аккуратная и интерактивная функция анимации, чтобы включить это аудио визуализатор.
Принимая звуковой образец в качестве входных данных и применение быстрого преобразования Фурье для сигнала,
форма сигнала будет разлагаться в спектре частот и связанных с ними амплитуд. Визуализация звукового сигнала
создается путем построения спектра на xz- плоскость куба с Z ось, представляющая амплитуду и отображается
относительно смещаемой временного окна вдоль y- ось. Цвета вокселей будет определяться как частотой и
амплитудой, чтобы обеспечить дополнительную визуальное разделение по всему спектру звуковых сигналов. Эта
анимация дает зрителю возможность визуализировать звуковой сигнал, они слышат и определить интересные
особенности звукового сигнала, которые появляются в спектре через время. Звуковые сигналы могут быть введены
как в режиме реального времени с помощью микрофона или периферийного устройства из сохраненного аудио фи ле
ввода в программное обеспечение анимации.
82
Глава 7
Прототип Тестирование проекта
Важным аспектом процесса проектирования тестирует прототип, чтобы установить, что оно отвечает всем критериям, дизайн и
функциональность в требуемых средах. Завершение стадии тестирования прототипа будет подтвер- Р.М. спецификация светодиодного
куба, а также последовательной функциональной работа. Кроме того, тесты будут проводиться как модульность и хронологически, а это
означает, что каждый специфичный этап проектирования будет испытан индивидуален в течение всего процесса сборки. Это позволит
ошибки каскадные (ошибка в начале процесса сборки, вызывая множество ошибок в дальнейшем), чтобы полностью избежать, а также
обеспечить отождествление каких-либо ошибок в специфичным аппаратного или программного обеспечения функциональности концерна.
Например, вместо того, заявив, что «один ряд светодиодов не включается. »Эта процедура тестирования позволит нам конкретно указать
причину проблемы; которые могли бы быть «наш источник питания не работает правильно», или «мы спаяны ряд неправильно», или
«была допущена ошибка в разработке программного обеспечения.» Очевидно, что этот тип процедуры тестирования имеет жизненно
важное значение для завершения любого проекта - особенно один с целым рядом сложных компонентов. Редко задачи выполнены
отлично время первого - мы не ожидаем, что эта конструкция будет без ошибок. Используя правильный протокол испытаний, мы ожидаем,
чтобы обнаружить свои ошибки и фи х них в большинстве е FFI метода фективного возможен. этот тип процедуры тестирования имеет
жизненно важное значение для завершения любого проекта - особенно один с целым рядом сложных компонентов. Редко задачи
выполнены отлично время первого - мы не ожидаем, что эта конструкция будет без ошибок. Используя правильный протокол испытаний,
мы ожидаем, чтобы обнаружить свои ошибки и фи х них в большинстве е FFI метода фективного возможен. этот тип процедуры
тестирования имеет жизненно важное значение для завершения любого проекта - особенно один с целым рядом сложных компонентов.
Редко задачи выполнены отлично время первого - мы не ожидаем, что эта конструкция будет без ошибок. Используя правильный протокол испытаний, мы ожидае
7.1 Проверка оборудования окружающей среды
Все тесты будут проводиться в пределах влажности и заданные диапазоны рабочих температур куба 3D LED, а
в хорошо освещенной области, чтобы проверить яркость светодиодов. Большинство тестов будет проводиться в
помещении с температурой около 75 ◦ Р и влажность вблизи 50%. Освещение в комнате будет эквивалентно
стандартным крытым обстановке.
7.2 Аппаратные тесты
Три основные аппаратные компоненты для тестирования будут светодиоды, светодиодные драйверы и платы
управления. Каждый из этих компонентов будет испытываться отдельно на карантин какой-либо ошибки и помочь в
находка решений с помощью процесса ликвидации.
светодиоды Светодиоды будут испытаны в простой форме, кон фи rming их функциональность. Каждый тест LED
будет включать в себя «включено / о FF» проверить каждый цвет: красный, зеленый и синий. Каждый светодиод будет
испытан индивидуально перед тем, как припаять к кубу, а затем также индивидуально после пайки кубы. Это
гарантирует, что как индикатор находится в рабочем состоянии, а также для выявления каких-либо проблем в
проводке LED куб.
83
По мере того как куб будет припаяна одну плоскости, в то время, каждый самолет будет испытан перед его
добавлением к структуре кубы. Наконец, при добавлении каждой плоскости к кубу, весь куб, существующий на
тот момент будет испытан.
Драйверы светодиодов Светодиодная плата драйвера является простым компонентом светодиодного куба,
контролируя только ток, яркость и цвета. Каждый из этих факторов будет испытан по отдельности от каждого канала.
Каналы будут откалиброваны так, что та же цвет / яркость появляется для всех светодиодов через каждый светодиод
канал драйвера и устройство.
Пульт управления Плата управления, сложная конструкция компоненты, будет проходить тщательное
тестирование. На самом простом уровне фи rmware будет обновляться и доступ на чтение / запись в
бортовой SD-карты будут проверены. Связь между ноутбуком и плате управления CPU будет проверен
хостинг основной веб-сайт на панели управления, простой процедурой на основе Ethernet протокола
связи. Связь между платой управления и платой драйвера будет испытана миганием светодиодов на и
О фф.
7.3 Программное обеспечение Test Environment
Программный симулятор как фи rmware и аппаратного обеспечения позволит тестировать большую часть программных
компонентов. Фи rmware тренажер будет служить для тестирования компонент связи программного обеспечения. Хотя,
аппаратный имитатор будет служить для тестирования компонент анимации программного обеспечения.
Фи rmware тренажер будет измерять скорость передачи данных от узла связи. Кроме того, он будет проверять, что все
данные анимации передаются в фантастическом rmware может быть правильно реконструируемыми предоставлена
​информацией, полученной фи rmware тренажером. Фи rmware тренажер будет отражать физический дизайн фи rmware.
Таким образом, фи rmware Тренажер позволяет выявить случаи, когда возможности ФИ rmware в превышены, в том
числе, но не ограничиваясь скорость обработки, скорость передачи данных и б эр и след над притоками.
Аппаратная тренажер обеспечивает визуальное представление светодиодного куба. В дополнении к визуализации
светодиодов, аппаратные средства имитатор будет измерять ток, напряжение, и требование к мощности каждого
отдельного кадра и полной анимации. Это позволяет разработчикам просматривать анимацию, а также измерить
физические требования каждой анимации будут принимать на LED куб.
7.4 Испытания программного обеспечения
Каждая часть программного обеспечения, которое входит в проект должна быть тщательно проверена перед интегрированием в
проект фи NAL релиза. Все функции и анимация должны быть проверены первой на испытательном стенде тренажера затем
испытанный с физическим светодиодным самим кубом.
84
7.4.1 Анимация тесты
Любые анимации, которые разрабатываются будут проходить через испытательный стенд программного обеспечения
предварительного проверить анимации делает, как предполагалось, и что она не превышает требования к мощности
LED куб. Если анимация превышает любые физические ограничения светодиодного куба, анимация должна быть
переработана. Точно так же, если анимация не делает, как задумано, анимация должна быть исправлена ​и повторно.
GUI Creator Анимация Функциональность Animation Creator GUI должна быть протестирована. Тестер должен
убедиться, что все вокселей из карты Анимация Создание GUI точно соответствующий светодиод на LED куб.
Тестер должен убедиться в том, что анимация Создатель GUI способен производить соответствующие цвета,
когда отображается на LED куб. Это будет включать в себя тестирование всех градиентов каждого канала RGB.
Кодовый Анимации Кодированные анимации должны быть протестированы таким же образом. Тестер должен
убедиться, что все воксели индексируются в карте коды точно соответствующий светодиод на светодиодном куб.
Тестер должен убедиться в том, что код может производить соответствующие цвета, когда отображается на LED
куб. Это будет включать в себя тестирование всех градиентов каждого канала RGB.
7.4.2 Испытания связи
Тесты связи будет состоять из послав VERI фи ред анимации в компонент связи и проверки вывода
после того, как данные передаются в фи rmware тренажере. Тесты связи также убедиться, что методы
связей способны производить пропускную способность, которая соответствует требованиям функции.
Полная анимация Режим передачи полной анимации будет Вери фи эд путем ввода полной анимации
компонента связи. После того, как передача анимации от компонента связи к фи rmware тренажера
завершена, то анимация будет Вери фи-е изд как путем воспроизведения анимации с помощью
аппаратных средств тренажера и сравнения памяти. Вся анимация должна быть передана отлично.
Пропускная способность методы полной передачи анимации должны соответствовать функциональным
требованиям.
Покадровый Режим передачи кадра за кадром будет Верьте фи-й изд путем повторного ввода одного
кадра к компоненту связи. После передачи кадра от компонента связи к фи rmware тренажеру
завершена, рама будет Верьте фи-й изд как путем отображением кадра через аппаратный тренажер и
сравнение памяти. Весь кадр должен быть передан полностью. Пропускная способность способа
передачи кадра к кадру должны соответствовать функциональным требованиям.
85
Сдвиг слоя в Сдвиг слой в режиме передачи будет Верьте фи-й изд путем повторного ввода одного
слоя с каждой стороны кубы к компоненту связи. После того, как передача слоя и стороны от
компонента связи к фи rmware тренажеру завершена, обновленный кадр будет Верьте фи-й изд как
путем отображением кадра через аппаратный тренажер и сравнение памяти. Информация всего слоя и
стороны должна быть передана отлично. Пропускная способность переключающего слоя в способе
передачи должны соответствовать функциональным требованиям.
Перевести / Поворот кадра Режим передачи перевода / поворот рамы будет Верь фи ред путем
многократной отправки перевода и вращение векторов к компоненту связи. После того, как передача
перевода и вращение вектора из компонента связи на фи rmware тренажера завершена, обновленный
кадр будет Верьте фи-й изд как путем отображением кадра через аппаратный тренажер и сравнение
памяти. Весь перевод и вращение вектор должен быть передан полностью и желаемый адрес и далее
т.д. должны быть произведены в отображаемом кадре. Пропускная способность переводить / вращать
способ передачи кадров должны соответствовать функциональным требованиям.
7.5 Итоговые комплексные испытания
После завершения каждого отдельного испытания, ФИ NAL интегрированный тест будет выполняться. Цель этого
всеобъемлющего, строгий тест, чтобы убедиться, что никакие дополнительные ошибки не возникают из-за
интеграции каждого отдельного проекта компонента. Поставив дизайн фи NAL посредством всеобъемлющего теста,
целостность системы будет подтвер- rmed. Этот интенсивный тест будет состоять из 2-х часов во время
выполнения. Программное обеспечение будет типы петли ди Ф.Ф. различны анимация в течение этого периода
времени, и каждый дизайн компонента будет тщательно контролируется для подтверждения надлежащего рабочего
состояния. Программное обеспечение будет наблюдаться, с отмеченными любыми показателями, ухудшающие
ошибками. Каждый аппаратный компонент будет периодически измеряли: напряжение / выходной ток источника
питания, выходной ток светодиодных драйверов и выходной ток из МОП-транзисторов. Температура каждого
компонента будет измеряться после означающей суммы фи косяка от времени выполнения для подтверждения всех
аппаратных частей остаются в пределах соответствующего диапазона температур для работы. Визуально будет
наблюдаться светодиодный куб для подтверждения, что яркость и цвет по светодиодам в целом согласуется с
программными инструкциями. Каждая анимация будет показано последовательно на кубе, чтобы убедиться, что
анимации появляются как задумано, с правильной синхронизации, цвет, яркость и с минимальной задержкой
сигнала. Наконец, несколько отдельных зрителей будут наблюдать LED куб для подтверждения частоты обновления
превышает порог, необходимый для восприятия непрерывной работы, так как этот фактор может быть по
отношению к зрителю. Любые ошибки будут отмечены и итеративно фиксированы.
86
Глава 8
Административная Содержание
Как и в любом проекте, необходимо создать и обеспечить, чтобы график и бюджет следуют тщательно.
Важно также, чтобы узнать людей, работающих над проектом, а также их цели и стремления. В
следующей главе будет охватывать административный материал проекта, а также обеспечит краткий
обзор в который группа состоит из, и то, что нам нравится делать.
8.1 Основные этапы
Задача Старшего проектной документации и процесса проектирования было создание и следуя графику.
Принятие знаковой диаграммы, с конкретными требованиями времени фи С для завершения каждого компонент
исследования и разработано, разрешенные для систематического завершения руководства. Рисунок 8.1
описывает время, отведенное, а также срок для каждой стадии развития.
87
Рисунок 8.1: Основные этапы проекта
8.2 Загруженность Распределение
Нагрузка для завершения этого старшего дизайн-проекта был разделен как можно более равномерно среди членов
группы. Каждый член был делегирован ответственность за основной компонент проекта. Все аппаратное
управление и схема была дана Джоша, все схемы для LED операции был дан Лукой, и Андрей взял на себя
ответственность всех разработки программного обеспечения. Такое разделение ответственности показано на
рисунке 8.2, который показывает блок-схему кубы 3D LED, с ответственностью каждого члена команд уважаемому.
Хотя ответственность отделили, каждый член группы играет ключевую роль во всех аспектах дизайна.
Исследовательские векторы постановив, как команда, и части были также исследованы вместе. Джош, член группы
финансирования проекта, были приняты решения по закупкам фи NAL. Каждый член группы утверждал SPECI,
разделы фи С в этой документации бумаге по своему усмотрению, однако, мимо начального черновике этапа,
каждый член группы внес свой вклад в содержание и редактирование множества отдельных секций. Эта статья и
этот проект действительно является полностью совместными е и далее орт, и в то время как каждый член групп
вышли с опытом в их специфических областях, высокий уровень компетентности был сформирован и
поддерживается во всех проектных структурах каждого член группы.
88
Рисунок 8.2: Распределение рабочей нагрузки
8.3 Бюджет и финансы
Светодиодный дисплей 3D аппроксимируется стоить $ 900. Спонсорский по Stellascapes будет покрыть
стоимость светодиодов и печатной платы, что позволит снизить из кармана стоимости в группу.
Stellascapes имеет большой интерес к работе встроенного процессора и FPGA, работающих совместно
для управления освещением. В обмене на] спонсорство, группа будет делиться всем конструкциям ценной
информацией, полученной в процессе / прототипа дизайна. Член группы Джошуа Moyerman обеспечит
баланс расходов проекта, вплоть до суммы дополнительно $ 1000, из-за интерес к владеющему проекту
после его завершения. Члены группы будут равномерно распределять любые дополнительные расходы,
необходимые для завершения проекта между собой. Таблица 8.1 описывает бюджет группы по пункту.
89
Вещь
Стоимость
светодиоды
$ 350
провод
$ 150
Встраиваемый компьютер
$ 10
Печатные платы
$ 100
Драйверы светодиодов
$ 60
MOSFETs
$ 10
Аналого-цифровой преобразователь $ 40
Компоненты Пассивные
$5
Источник питания
$ 70
Обработка компьютеров
Группа Принадлежит
Рама & Case
$ 115
Промежуточный итог
$ 900
Рекламные
(450 $)
Выборочные
(100 $)
Всего
$ 350
Таблица 8.1: Бюджет проекта
8.4 Группа пользователя
Люк Ausley родился 2 апреля 1993 года в городе Пенсакола,
штат Флорида и вырос в попрошайничать Флориды.
Присутствовавший на Collegiate средней школы на
северо-западном Florida State College, Люк закончил в мае 2011
года с его диплом средней школы и сотрудник степени искусств.
Люк закончит с его бакалавром наук в области электротехники
(BSEE) в мае 2014 года, чтобы продолжить карьеру в его поле
интересов: Оптика. В свободное время, Люк имеет несколько
хобби с примечательными интересами, связанных с
автомобилями,
пейзаж / природа
фотографии и звуковое оборудование высокого класса.
Наслаждаясь путешествия, один его жизненные цели, чтобы
ступить на каждом континенте. Получатель из Министерства
обороны SMART учености, Люк работал полный рабочий день в
качестве технического стажера в течение последнего 4 лета с
исследовательской лабораторией в ВВС (AFRL) боеприпасы
директората в Eglin AFB, штат Флорида. Он принял
пост-дипломную работу с AFRL в качестве электроники
инженер.
90
Джошуа Moyerman родился 14 марта 1992 года в
Филадельфии, штат Пенсильвания, и вырос как в
Пенсильвании и Флориде. Принимая участие Ист-Ридж
средней школы, и Lake Sumter Community College в средней
школе, Джош закончил в мае 2010 года с его диплом
средней школы, а через год в колледже уже завершена.
Джош предвидит окончил с его Бакалавр наук в области
вычислительной техники (BSPE) в мае 2014 года, чтобы
продолжить карьеру в поле внедренного развития. Джош
добровольно и работал на протяжении всей своей карьеры в
колледже, чтобы расширить свой инженерный опыт. Joshua
в настоящее время работает Stellascapes, компания в
значительной степени ответственной за спонсорские этот
проект, и надеется продолжить там работать
после того, как он выпускников. Он надеется также тратить больше наслаждаться его увлечения фотографией, музыкой и чтением.
Эндрю Смит родился 11 декабря 1990 года в Бойнтон-Бич, штат
Флорида. Андрей жил кратко на Maxwell AFB в Монтгомери, штат
Алабама до переезда в MacDill авиабазе в городе Тампа, штат
Флорида. Он посетил завод HB средней школу, где он был
футболистом Государственного Чемпиона и закончил в мае 2009
года Эндрю присоединился к военно-воздушным силам ROTC его
младший год в колледже и введет в эксплуатации в ВВС США
(USAF) в качестве 2LT, когда он заканчивает свою степень
бакалавра наук в области вычислительной техники (BSPE) в мае
2014 г. Эндрю интернированы с информационной Assurance
интернатуры информационного директората AFRL летом 2013 г. в
настоящее время он работает в качестве стажера в программе
колледжа работы Опыт с Lockheed Martin разрабатывает и
поддерживает инструменты разработки для Arrowhead
управления фи ре
система. После окончания школы Андрей начнет работу с USAF в качестве операции Киберпространство O FFI
ЦЭИ проводит свою страсть к кибер-безопасности и защиты сетевых ресурсов нации.
91
Глава 9
Заключение
Завершение этой проектной документации завершилась четким и точным направлении движется к завершению тонконечного прототипа куба 3D LED. На протяжении исследовательской фазы развития, каждый член группы построил
высокий уровень прибылей фективности в каждом из соответствующих областей концентрации, сохраняя при этом
компетентности во всех областях дизайна проекта. Этап проектирования был где индивидуальные навыки членов
группы были поставлены на испытания - создание высоко детализированный и сформулированный план
проектирования для достижения требуемых спецификаций для завершенного прототипа. Каждый этап этого процесса
проектирования был сильно задокументирован и изложен в этой статье, добавив, подотчетность каждого основного
решения, принятое - поскольку каждый шаг должен был иметь спецификации и факты, поддерживающие эту
конкретную директиву.
Этап исследования старшего проекта разработки привел к ряду важных решений - выбор частей, а также замечать и
перспективное планирование для потенциальных проблем дизайна. Когда проект был закончен и документирован,
мы имели четкую и функциональную схему: программный интерфейс для отправки инструкции к бортовой плате
управления, содержащий встроенный процессор и FPGA, работающий в унисон, чтобы контролировать два
отдельных плат драйверов, содержащих драйверы светодиодов и MOSFETs который, в свою очередь,
модулированный ток каждого отдельного светодиода с высоким уровнем скорости и точности. Подробное описание
процедуры тестирования подтвер- среднеквадратичное функционирования 3D LED куб уходит из группы с четким и
фи nalized путь движения вперед.
Наиболее существенный результат этой документации был изучение опыта отдельных членов группы.
Этот старший дизайн-проект принял член это далеко за пределами их официального классе
электротехники и вычислительной техникой опыта. Хотя развитие навыков было на широкой основе, в
то числе управления временем, создание команды, коммуникацию и технические записи, первичный
рост происходил из достижения цели данного проекта: создание функционального 3D LED дизайна куб
прототипа. Этот успех сопутствовал новые навыки и получили такие как разработки встраиваемых
процессоров, дискретную интеграция компонентов, печатной конструкция печатной платы, протоколы
связи, разработка программного обеспечения, внедренной и разработки программного обеспечения
знаний. Очевидно, что этот проект натянутое несколько тем, охватывающих темы как электротехники и
вычислительной техники.
92
Приложение
Все права защищены права
[1]
[2]
[3]
A
[4] Разрешение на рассмотрении от HowNotToEngineer.com [5]
[6]
В
[7]
С
Download