Оглавление:

Откройте навигационный компьютер Apollo DSKY: 13 шагов (с изображениями)
Откройте навигационный компьютер Apollo DSKY: 13 шагов (с изображениями)

Видео: Откройте навигационный компьютер Apollo DSKY: 13 шагов (с изображениями)

Видео: Откройте навигационный компьютер Apollo DSKY: 13 шагов (с изображениями)
Видео: Космическая Гонка: Почему больше НЕ ЛЕТАЮТ на ЛУНУ? Подробная История! 2024, Июль
Anonim
Image
Image

Горжусь тем, что с 1/10/18 стал рекомендуемым учебным пособием. Проголосуйте за нас и поставьте лайк!

Кампания на Kickstarter имела супер успех!

Откройте DSKY Kickstarter

Наш Open DSKY в настоящее время размещен на Backerkit (https://opendsky.backerkit.com/hosted_preorders) и доступен на нашем сайте электронной коммерции.

Билл Уокер (создатель проекта Apollo Educational Experience Project) написал удивительное программное обеспечение (с почти 50 функциями) со справочником команд, смоделированным на основе плана полета Apollo для своих двух открытых DSKY, и делает его доступным исключительно для всех через свой GoFundMe. страница. Пожалуйста, поддержите его.

Хотя это, конечно же, не первое воссоздание Iconic AGC (Apollo Guidance Computer) DSKY (Display / Keyboard), используемого во всех миссиях Apollo 1960-х годов, и вы можете ожидать, что еще больше появится в этом и следующем году из-за Приближаясь к 50-летию первой высадки на Луну, несколько лет назад мы решили создать нашу собственную версию, которая отвечала бы минимальному количеству предварительных условий.

Этот проект возник по предложению одного из наших спонсоров / участников Open Enigma, и мы хотели бы поблагодарить Роба за его предложение / вклад. Спасибо, Роб!

Предварительные требования:

- Должен быть построен с использованием Arduino и предлагать программное обеспечение с открытым исходным кодом.

- Должен выглядеть и чувствовать себя настоящим. Точная копия, очевидно, БЕЗ основной памяти …

- Необходимо имитировать функцию / поведение летающих аппаратов Аполлона.

- Необходимо использовать компоненты, которые позволяют собирать его как комплект.

Шаг 1: ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций

ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций
ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций
ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций
ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций
ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций
ИССЛЕДОВАНИЯ, сбор оригинальных спецификаций

Хотя у нас лично НЕ было доступа к физическому устройству, нам повезло, что другие люди, которые имели (или имели) доступ, задокументировали свои выводы (например, Фрэн Бланш - независимо от того, поддерживаете ли вы наш Kickstarter или нет, подумайте о поддержке ее кампании по краудфандингу https://www.gofundme.com/apollo-dsky-display-project), некоторые из них позволили нам извлечь пользу из этих знаний. Как писал Исаак Ньютон: «Мы стоим на плече гигантов».

Использование отличного набора бумаги от EduCraft ™ для точных размеров, бесплатного приложения для iPad от AirSpayce Pty Ltd для минимальной жизнеспособности функций и очень подробной книги Фрэнка О'Брайена «Управляющий компьютер Apollo - Архитектура и работа» вместе с многочисленными ресурсами НАСА включая полный исходный код на GitHub, мы смогли определить и воспроизвести многие из точных спецификаций оборудования и программного обеспечения.

Оригинальные электролюминесцентные дисплеи, использованные в Apollo, были очень недолговечной технологией, которой уже давно нет. В начале 1970-х он устарел, поэтому мы очень быстро решили использовать светодиоды в виде семи сегментов, чтобы имитировать их. Это также позволило нам НЕ использовать реле высокого напряжения и 156 механических реле для управления дисплеями EL. Найти правильный размер было непросто, но мы мало знали, что найти сегмент +/- 3 будет невозможно! (даже в наши дни…) Мы действительно нашли в Израиле около 3-х сегментов +/-, интегрированных с 7-сегментным блоком, и решили попробовать их в наших самых ранних прототипах …

Шаг 2. Немного истории…

Следует отметить, что первое, что действительно напоминало бы современный микроконтроллер, вероятно, было бы Apollo AGC. Это был первый настоящий бортовой компьютер, а также первое крупное использование интегральных схем. Но вам нужно пройти еще десять лет, прежде чем все основные функции компьютера будут объединены в одном чипе LSI; такие как Intel 8080 или Zilog Z80. И даже тогда память, часы и многие функции ввода-вывода были внешними. Это было не очень удобно для пользователя-хобби.

Это ARM, AVR и подобные чипы, которые делают следующий важный шаг; с включением энергонезависимой флэш-памяти стало возможным построить компьютер практически без внешних компонентов. Серия микросхем AVR (с которой мы наиболее знакомы) имеет буферизованные линии ввода / вывода, последовательные UART, аналого-цифровые преобразователи и генераторы ШИМ, сторожевые таймеры и даже внутренние генераторы, если это необходимо. В формате Arduino и аналогичных плат эти микросхемы окружены правильным тактовым кристаллом или резонатором, регулируемым источником питания, некоторым источником питания и другими конденсаторами развязки с критическими выводами, а также несколькими мигающими индикаторами для мониторинга состояния.

Парадоксально, что 50 лет спустя платформа, выбранная для проекта DIY, предлагает в основном те же функции (Ram / Rom / Processing) за ничтожную долю стоимости (и веса!).

Шаг 3: ПРОТОТИПИРОВАНИЕ

ПРОТОТИПИРОВАНИЕ
ПРОТОТИПИРОВАНИЕ
ПРОТОТИПИРОВАНИЕ
ПРОТОТИПИРОВАНИЕ
ПРОТОТИПИРОВАНИЕ
ПРОТОТИПИРОВАНИЕ

Мы решили, что сначала нам нужно проверить концепцию на макете из 3 микросхем Maxim, управляющих 15 7-сегментными светодиодами, чтобы убедиться, что они будут вести себя так, как ожидалось. Это был успех. Затем мы вкратце попытались построить устройство на проектной плате и очень быстро обнаружили, что плотность схемы не позволяет изготавливать машину на ней. Вы просто не можете получить 21 7 сегментов + 3 3 сегмента (и 4 Maxim для управления ими) плюс 18 светодиодов + 19 кнопок для размещения на плате проекта, не говоря уже о микроконтроллере, IMU, RTC, GPS. и т. д. Поэтому нам пришлось приступить непосредственно к разработке печатной платы, которая, как нам казалось, была лучшим способом создать надежную и точную копию. Извините.

Мы также протестировали MP3-плеер на макетной плате И… мы создали прототип 3-х сегментной 3D-печати, чтобы произвести неуловимый желаемый +/- светодиодный блок.

Шаг 4: Схема

Схемы
Схемы
Схемы
Схемы
Схемы
Схемы
Схемы
Схемы

Схемы теперь доступны, чтобы помочь всем, кто хочет построить DSKY без нашей печатной платы или комплекта.

Первая схема (NeoPixels) показывает, как мы подключили 18 Neopixels к Arduino Nano Pin 6. Вторая схема показывает, как мы подключили (все 18) Neopixels и 5-вольтовый бак, геркон, реле уровня линии и SKM53 GPSr вместе с 19 кнопки. На третьей схеме показаны соединения IMU и RTC.

Мы использовали поверхностный монтаж 5050 NeoPixels, который требовал балластного резистора 470 Ом перед первым пикселем, и мы использовали конденсатор 10 мкФ для каждого второго пикселя.

Если вы используете NeoPixel на коммутационной плате Adafruit (совместимой с макетной платой), как показано выше, то вам не нужны никакие резисторы или конденсаторы, поскольку они встроены в коммутационную плату Adafruit.

Объяснение схемы GPS: Большинство устройств Arduino GPS работают от источника питания 5 В. При этом логический уровень на этих же устройствах составляет 3,3 В. В большинстве случаев Arduino будет считывать на своем выводе RX 3,3 В выше, чем половина от 5 В. Проблема заключается в аппаратном последовательном интерфейсе … Мы не уверены, почему, но у нас есть лучшие результаты с использованием логического выравнивателя. Отказ от использования, похоже, зависит от использования серийного программного обеспечения. Последовательная библиотека программного обеспечения и версия, включенная в новые версии IDE, изменяют таймеры и порты на микросхеме Atmel 328. Это, в свою очередь, отключает возможность использования библиотеки Maxim, которая нам нужна / используется для управления регистрами сдвига для семи сегментных дисплеев. Так что мы используем старый добрый аппаратный серийник.

Герконовое реле используется для включения и выключения аппаратного последовательного интерфейса, чтобы можно было программировать Arduino во время установки. Его можно не указывать, однако для программирования устройство Arduino необходимо удалить с основной платы, так как серийный номер будет украден GPS. Это работает следующим образом: при считывании данных GPS вывод 7 поднимается высоко, закрывая язычок. Затем GPS начинает заполнять последовательный буфер (GPS никогда не отключится, если он исправит ошибку). Последовательный буфер опрашивается, и когда обнаруживается достаточный объем данных, он считывается и анализируется. Затем на выводе 7 записывается низкий уровень, отключающий GPS, что позволяет Arduino возобновить нормальное поведение.

Шаг 5: 3D-печать

Ниже приведены 5 необходимых файлов stl для создания полной реплики Open DSKY.

Обратите внимание, что, хотя лицевую панель и крышку батарейного отсека можно напечатать практически на любом 3D-принтере, настоящий DSKY был 7 дюймов в ширину и почти 8 дюймов в высоту, так что это размеры нашей верхней пластины, среднего кольца и нижней части, для которых требуется 3D Принтер, который может печатать не менее 180 мм на 200 мм.

Мы печатаем лицевую панель, верхнюю пластину и среднее кольцо на сером материале, а нижняя часть и крышка батарейного отсека - черным.

Шаг 6: лазерная резка / гравировка

Лазерная резка / гравировка
Лазерная резка / гравировка
Лазерная резка / гравировка
Лазерная резка / гравировка
Лазерная резка / гравировка
Лазерная резка / гравировка

Ниже представлены файл с лазерной резкой / гравировкой ButtonCaps и матовое окно Lampfield. Напечатанный с помощью лазера, затем файл с лазерной резкой / гравировкой.

Мы используем Rowmark (Johnson Plastics) Lasermax Black / White 2ply 1/16 (LM922-402) для вырезания и гравировки 19-кнопочных колпачков клавиш. Как и для всех файлов, отправляемых на лазерный резак, вам может потребоваться настроить размер файла, пока вы не получить колпачки клавиш 19 мм на 19 мм На нашей машине с водяным охлаждением CO2 мощностью 60 Вт мы используем мощность 40% и скорость 300 мм / с для гравировки и 50% мощности и скорость 20 мм / с для резки акрилового листа.

Матовое окно создается путем печати вышеуказанного изображения на прозрачной пленке, точно названной «Аполлон» (зачем использовать какой-либо другой бренд?) С помощью любого лазерного принтера, а затем подачи его на лазерный резак / гравер для «протравливания» по горизонтали, а затем по вертикали, используя 20 % мощности и скорости 500 мм / с, что, как нам кажется, создает идеальный "матовый" вид.

Шаг 7: СЧЕТ МАТЕРИАЛА

ЗАЯВЛЕНИЕ НА МАТЕРИАЛ
ЗАЯВЛЕНИЕ НА МАТЕРИАЛ

1 плата v1.0D

1 детали, напечатанные на 3D-принтере

1 Ардуино Нано

1 ВА RTC

1 ИДУ

1 доллар StepDown

1 SKM53 GPS

1 выравниватель линии

1 геркон

1 DFPlayer Mini

1 карта MicroSD 2 ГБ

1 2-дюймовый динамик с сопротивлением 8 Ом

1 держатель батареи 6AA

6 батареек AA

1 провод клеммы

1 переключатель включения / выключения

4 Maxim7219

4 розетки 24 контакта

1 40 женских штифтов

1 конденсатор емкостью 10 мкФ

1 резистор 15 Ом

1 резистор 100 Ом

Резисторы 470 Ом

22 резистора по 1 кОм

4 резистора 10 кОм

3 резистора 100 кОм

18 NeoPixel RGB

19 светодиодных кнопок

19 колпачков для пуговиц с лазерной резкой

21 7 сегментов 820501G

3 3 сегмента STG

2 Матовые окна

Большинство вышеперечисленных компонентов легко найти на eBay или Amazon и по разумной цене.

Исключениями, конечно же, являются наша собственная печатная плата (которая объединяет все эти компоненты вместе, наши колпачки для кнопок, вырезанные лазером, которые выглядят действительно хорошо и позволяют свету проходить через кнопку, матовые окна, которые, попробовав многочисленные альтернативы, Джеймс получил удар. гениальности (подробнее об этом позже) и, наконец, дисплей! @ # $% ^ 3-сегментный +/-, который нам пришлось создать с нуля. Добавьте к этому наш собственный корпус, напечатанный на 3D-принтере, и у вас есть все ингредиенты.

Если кто-то готов смириться с отсутствием знака «+» перед соответствующими числовыми данными, отображаемыми, то вы можете просто добавить еще 3 7 сегментов и завершить этот день. Для нас это просто НЕ было вариантом, поэтому мы создали свой собственный 3-сегментный сегмент.

Шаг 8: 3 СЕГМЕНТ

3 СЕГМЕНТ
3 СЕГМЕНТ
3 СЕГМЕНТ
3 СЕГМЕНТ
3 СЕГМЕНТ
3 СЕГМЕНТ

Можно подумать, что в 2018 году, когда нам доступны все ресурсы по всему миру, можно просто заказать блок 3Segment +/- LED… Ну, это не так!

Итак, мы поняли, что для того, чтобы оставаться верными оригинальному Apollo DSKY, нам придется создать с нуля наш собственный 3Segment +/- LED.

После многочисленных разработок у нас наконец-то появился 3D-печатный блок со встроенным теневым ящиком.

Затем мы закупили соответствующие светодиоды SMT (поверхностного монтажа) и протестировали их.

Теперь мы были готовы спроектировать крошечную печатную плату, которая поместилась бы в нашу напечатанную на 3D-принтере 3-сегментную оболочку.

Собрать все это было непросто, учитывая, что мы почти не видим крошечные светодиоды, но результат просто фантастический!

Шаг 9: ФУНКЦИОНАЛЬНОСТЬ

ФУНКЦИОНАЛЬНОСТЬ
ФУНКЦИОНАЛЬНОСТЬ

Затем настал момент определить минимальную функциональность нашей реплики, а также производственные цели и список наших желаний.

После небольшого исследования мы нашли бесплатное приложение в iTunes, которое может быть полезно, поэтому мы купили iPad специально для этой цели.

Бесплатное приложение для iPad от AirSpayce Pty Ltd дало нам представление о нашем MVP (минимально жизнеспособном продукте).

После написания кода для выполнения теста Full Lamp мы немедленно реализовали установку / отображение времени, мониторинг IMU и мониторинг GPS.

Код был заморожен, пока мы не решили добавить один из наших безумных пунктов списка желаний, который должен был воспроизводить знаменитую речь Джона Кеннеди 1962 года на стадионе Райс «Мы решили отправиться на Луну…». Затем мы добавили еще пару знаковых звуковых дорожек.

Шаг 10: ИНСТРУКЦИЯ ПО СБОРКЕ - Электроника

ИНСТРУКЦИИ ПО СБОРКЕ - Электроника
ИНСТРУКЦИИ ПО СБОРКЕ - Электроника

Во-первых, убедитесь, что у вас есть все необходимые компоненты.

Перед началом сборки полностью прочтите следующие инструкции.

1. Припаиваем все 20 резисторов по 470 Ом.

2. Припаиваем все 22 резистора номиналом 1 кОм.

3. Припаиваем все 4 резистора 10 кОм.

4. Припаиваем все 3 резистора по 100 кОм.

5. Припаяйте резистор на 15 Ом.

6. Припаяйте резистор 100 Ом.

7. Необязательно: чтобы припаять крошечный Surface Mount 5050 RGB NeoPixels, я нанесу немного припоя на каждую из 4 контактных площадок для каждого из 18 светодиодов RGB.

8. Вырежьте 2 полоски гнездовых контактных разъемов и припаяйте их к месту Arduino Nano на задней стороне печатной платы.

9. Тщательно припаяйте все 18 NeoPixels поверхностного монтажа в правильной последовательности, следя за тем, чтобы не закоротить соседние переходные отверстия. После сборки многих блоков мы обнаружили, что более эффективно припаять 1 Neopixel, запитать Arduino (через его USB-порт) с помощью strandtest.ino, чтобы убедиться, что он загорается, выключить Arduino, припаять следующий Neopixel в последовательности, протестируйте и повторите для всех 18 неопикселей. При устранении неполадок имейте в виду, что проблема с Neopixel может быть результатом того, что предыдущий Neopixel НЕ был припаян должным образом (выходной контакт). Я обнаружил, что 680 градусов - это слишком жарко (и иногда убивает красный и зеленый), 518 градусов кажется намного лучше.

10. Отрежьте полоску из 4 штырьков с внутренней резьбой и припаяйте ее к месту расположения понижающего преобразователя.

11. Вставьте Arduino Nano и Buck Converter прямо сейчас, если вы хотите протестировать светодиоды RGB с помощью strandtest. INO.

12. Отрежьте заподлицо обе черные прокладки под каждой из 19 кнопок с подсветкой, чтобы кнопки полностью прилегали к печатной плате.

13. Вставьте, затем припаяйте все 13 кнопок с подсветкой, убедившись, что все красные точки (катод) находятся с левой стороны. После того, как все кнопки вставлены, я включаю Arduino через USB-порт, чтобы проверить, загорятся ли все 19 светодиодных индикаторов кнопок, ПЕРЕД тем, как я их припаяю …

14. Припаяйте все 4 гнезда Maxim, соблюдая ориентацию.

15. Подготовьте IMU, припаяв его штырьковые контакты и подключив штырь ADO к VCC.

16. Подготовьте линейный выравниватель, припаяв его штыри со стороны низкого и высокого уровня.

17. Вырежьте и припаяйте охватывающие контакты, чтобы установить IMU, VA RTC и линейный выравниватель.

18. Припаяйте все 10 колпачков, соблюдая полярность. Более длинный штифт - положительный.

19. Припаяйте герконовое реле, соблюдая ориентацию.

20. Припаяйте клемму провода.

21. Припаяйте все 21 7 сегментов, убедившись, что точки (десятичная точка) находятся в правом нижнем углу.

22. Припаяйте все 3 сегмента S&T GeoTronics 3 (Custom Plus / Minus).

23. Снова вставьте все 4 микросхемы Maxim 7219 в гнезда, соблюдая ориентацию.

24. Вставьте IMU, RTC, Buck, Arduino Nano и Line Leveler.

25. Припаяйте динамик и MP3-плеер / SD-карту, соблюдая ориентацию и удерживая плату как можно выше, потому что GPS на другой стороне должен быть заподлицо с печатной платой для правильной установки.

26. Припаяйте GPS, накрыв под ним слой изоленты, чтобы предотвратить возможное замыкание контактов.

27. Подключите аккумуляторную батарею на 9 В и проверьте собранную электронику.

ПОЗДРАВЛЯЕМ! Вы закончили сборку электроники.

Шаг 11: ИНСТРУКЦИИ ПО СБОРКЕ - Корпус

ИНСТРУКЦИИ ПО СБОРКЕ - Корпус
ИНСТРУКЦИИ ПО СБОРКЕ - Корпус

ЗАЯВЛЕНИЕ НА МАТЕРИАЛЫ

Кол-во Товар

1 рамка, напечатанная на 3D-принтере

1 верхняя пластина с 3D-печатью

1 средняя часть, напечатанная на 3D-принтере

1 нижняя часть с 3D-печатью

1 крышка батарейного отсека, напечатанная на 3D-принтере

1 матовое окошко с принтом

1 акриловое окно

19 колпачков для пуговиц с лазерной резкой

15 шурупов по дереву с головкой под торцевой ключ (M3-6 мм)

6 крошечных шурупов по дереву

После того, как электронный блок будет полностью протестирован, выполните следующие действия:

1. Установите все 19 колпачков кнопок на свои места, как показано на рисунке выше.

2. Осторожно вставьте собранную плату в верхнюю пластину. Это может быть плотная посадка и может потребоваться небольшая шлифовка компонента, напечатанного на 3D-принтере.

3. Используя 6 крошечных медных винтов, прикрутите печатную плату к верхней пластине. НЕ затягивайте слишком сильно.

4. Используя 2 винта с головкой под торцевой ключ, прикрепите динамик, а затем переключатель включения / выключения к средней части, напечатанной на 3D-принтере, нажав на нее.

5. Используя 8 винтов с головкой под торцевой ключ, прикрутите собранную верхнюю пластину к средней части, убедившись, что переключатель включения / выключения и отверстие динамика находятся впереди.

6. Припаяйте перемычку к каждой стороне динамика, перемыкая их к каждому отверстию аудиовыхода рядом с SD-картой.

7. Используя двусторонний скотч, закрепите батарейный отсек внутри батарейного отсека, убедившись, что и красный, и черный провода вставлены в отверстие.

8. Прикрутите черный провод от батарейного отсека к позиции Gnd синей винтовой клеммы и припаяйте красный провод от батарейного отсека к любому контакту кулисного переключателя Вкл. / Выкл.

9. Прикрутите перемычку к 9В стороне синей винтовой клеммы и припаяйте другой конец к доступному контакту на двухпозиционном переключателе.

10. Закройте заднюю крышку и с помощью 8 винтов с головкой под торцевой ключ прикрутите собранную заднюю крышку к средней части. НЕ затягивайте слишком сильно.

ПОЗДРАВЛЯЕМ! Вы закончили сборку корпуса, и теперь у вас есть полный DSKY!

Шаг 12: ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Пожалуйста, посетите другой наш Open DSKY Instructable под названием «ПРОГРАММИРОВАНИЕ OPEN DSKY»

для получения более подробной информации о программировании и видео по программированию вашего Open DSKY.

Поскольку мы широко используем Neopixels, вам потребуется посетить веб-сайт Adafruit и загрузить их замечательную библиотеку. В этой библиотеке есть несколько прекрасных примеров, таких как "standtest.ino", которые также написали Лимор и ее команда.

Кроме того, поскольку мы используем регистры сдвига для управления 7 сегментами, библиотека Maxim необходима для микросхемы Max7219.

Получите это здесь: LedControl Library

Прилагаем наш текущий код по состоянию на 09.01.2018. Это прототип с ограниченной функциональностью. Пожалуйста, уточняйте информацию на сайте www. OpenDSKY.com, поскольку мы продолжаем развивать и оптимизировать набор функций. Этот текущий прототип кода тестирует все регистры сдвига 7 Segments / Maxim, все неопиксели, очень точные часы реального времени, IMU с 6 степенями свободы, GPS и MP3-плеер.

Вся эта функциональность в 3 аутентичных глаголах, 3 аутентичных существительных и 3 программах, которые мы добавили в демонстрационных целях.

СПИСОК ГЛАГОЛ СПИСОК СУЩЕСТВИТЕЛЬСТВА СПИСОК ПРОГРАММ

16 MONITOR DECIMAL 17 IMU 62 «Мы выбираем полет на Луну»

21 ЗАГРУЗИТЬ ДАННЫЕ 36 ВРЕМЯ 69 «Орел приземлился»

35 ТЕСТОВЫЕ ЗАПИСИ 43 GPS 70 «Хьюстон, у нас была проблема»

Посмотрите видеоролик, в котором вы увидите короткую демонстрацию некоторых функций, реализованных в настоящее время.

Шаг 13: КИКСТАРТЕР

Image
Image

Следуя нашей успешной формуле, использованной в нашем проекте Open Enigma, мы предлагаем на Kickstarter различные комплекты, собранные / протестированные блоки и реплику Ultimate 50th Anniversary Limited Edition (Make 100).

Мы предлагаем:

- Только печатная плата

- Комплект Barebones

- Комплект для самостоятельной сборки электроники

- Полный комплект (с 3D-печатью и лазерной резкой)

- Собранный / протестированный блок

- Ограниченное юбилейное издание к 50-летию с серийным номером и сертификатом подлинности

Наш Kickstarter в настоящее время работает!

Откройте DSKY Kickstarter

Посетите https://opendsky.com для получения дополнительной информации.

Посетите www.stgeotronics.com, чтобы заказать печатную плату или комплект.

Рекомендуемые: