Tabla de contenido:

Computadora de guía abierta Apollo DSKY: 13 pasos (con imágenes)
Computadora de guía abierta Apollo DSKY: 13 pasos (con imágenes)

Video: Computadora de guía abierta Apollo DSKY: 13 pasos (con imágenes)

Video: Computadora de guía abierta Apollo DSKY: 13 pasos (con imágenes)
Video: Cibercultura 472 Induccion tutores 2024, Mes de julio
Anonim
Image
Image

Orgulloso de ser Instructable destacado desde el 10/1/18. ¡Vota por nosotros y danos un Me gusta!

¡La campaña de Kickstarter fue un gran éxito!

Abrir DSKY Kickstarter

Nuestro Open DSKY está actualmente disponible en Backerkit (https://opendsky.backerkit.com/hosted_preorders) y está disponible en nuestro sitio de comercio electrónico.

Bill Walker (creador del Apollo Educational Experience Project), ha escrito un increíble software personalizado (con casi 50 funciones) con una referencia de comando inspirada en el Plan de vuelo de Apollo para sus 2 DSKY abiertos y lo pone a disposición exclusivamente para todos a través de su GoFundMe. página. Por favor considere apoyarlo.

Si bien esta no es ciertamente la primera recreación del icónico AGC (Apollo Guidance Computer) DSKY (Pantalla / Teclado) utilizado en todas las misiones Apollo de la década de 1960, y puede esperar que aparezcan aún más este año y el próximo debido a la próximo 50 aniversario del primer alunizaje, decidimos hace unos años crear nuestra propia versión que cumpliera con un número mínimo de prerrequisitos.

Este proyecto surgió de la sugerencia de uno de nuestros patrocinadores / contribuidores de Open Enigma y nos gustaría agradecer a Rob por su sugerencia / contribución. ¡Gracias Rob!

Especificaciones de requisitos previos:

- Debe construirse con un Arduino y ofrecer software de código abierto.

- Necesita verse y sentirse como algo real. Una réplica fiel obviamente SIN Core Memory …

- Necesita emular la función / comportamiento de las unidades Apollo voladas.

- Necesita usar componentes que le permitan a alguien construirlo como un kit.

Paso 1: INVESTIGACIÓN, Recopilación de especificaciones originales

INVESTIGACIÓN, Recopilación de especificaciones originales
INVESTIGACIÓN, Recopilación de especificaciones originales
INVESTIGACIÓN, Recopilación de especificaciones originales
INVESTIGACIÓN, Recopilación de especificaciones originales
INVESTIGACIÓN, Recopilación de especificaciones originales
INVESTIGACIÓN, Recopilación de especificaciones originales

Si bien NO tuvimos acceso personalmente a un dispositivo físico, tenemos la suerte de que otras personas que tienen (o tuvieron) acceso hayan documentado sus hallazgos (Fran Blanche, por ejemplo, ya sea que apoye nuestro Kickstarter o no, considere apoyar su campaña de Crowdfunding https://www.gofundme.com/apollo-dsky-display-project), algunos nos han permitido beneficiarnos de este conocimiento. Como escribió Isaac Newton: "Nos apoyamos en los hombros de los gigantes".

Utilizando el excelente kit de papel de EduCraft ™ para obtener las dimensiones exactas, la aplicación gratuita para iPad de AirSpayce Pty Ltd para las funciones de viabilidad mínima y el libro muy detallado de Frank O'Brien "The Apollo Guidance Computer - Architecture and Operation" junto con numerosos recursos de la NASA incluido el código original completo en GitHub, pudimos determinar y replicar muchas de las especificaciones exactas de hardware y software.

Las pantallas electroluminiscentes originales utilizadas en Apolo eran una tecnología de muy corta duración que hace mucho que se ha ido. Pasó por el camino de la obsolescencia a principios de la década de 1970, por lo que rápidamente decidimos usar LED en forma de 7 segmentos para emularlos. Esto también nos permitió NO tener que usar el alto voltaje y los relés mecánicos 156 para manejar las pantallas EL. Encontrar el tamaño correcto fue un desafío, pero poco sabíamos que encontrar un segmento de +/- 3 sería una misión imposible. (incluso hoy en día …) Encontramos en Israel unos 3 segmentos +/- integrados con una unidad de 7 segmentos y decidimos probarlos para nuestros primeros prototipos …

Paso 2: Un poco de historia …

Cabe señalar que lo primero que realmente se parecía a un microcontrolador moderno probablemente sería el Apollo AGC. Esta fue la primera computadora de vuelo real, además del primer uso importante de circuitos integrados. Pero hay que avanzar otra década antes de que toda la funcionalidad básica de una computadora se reúna en un solo chip LSI; como el Intel 8080 o el Zilog Z80. E incluso entonces, la memoria, el reloj y muchas de las funciones de E / S eran externas. No fue muy conveniente para el usuario aficionado.

Son los chips ARM, AVR y similares los que dan el siguiente paso importante; con la inclusión de memoria RAM flash no volátil, fue posible construir una computadora prácticamente sin componentes externos. La serie de chips AVR (con la que estamos más familiarizados) tiene líneas de E / S con búfer, UART en serie, convertidores A / D y generadores PWM, temporizadores de vigilancia e incluso osciladores internos si se desea. En el formato de Arduino y placas similares, estos chips están rodeados de un cristal de reloj o resonador adecuado, una fuente de alimentación regulada, alguna fuente de alimentación y otros condensadores de desacoplamiento de clavijas críticas, y algunas luces parpadeantes para monitorear el estado.

Es irónico que 50 años después, la plataforma elegida para un proyecto de bricolaje ofrezca básicamente la misma funcionalidad (Ram / Rom / Processing) a una fracción minúscula del costo (¡y peso!).

Paso 3: PROTOTIPOS

PROTOTIPOS
PROTOTIPOS
PROTOTIPOS
PROTOTIPOS
PROTOTIPOS
PROTOTIPOS

Decidimos que primero necesitábamos hacer una prueba de concepto en la placa de pruebas de 3 chips Maxim que controlan 15 LED de 7 segmentos para asegurarnos de que se comportarían como se esperaba. Fue un éxito. Luego intentamos brevemente construir el dispositivo en una placa de proyecto y rápidamente descubrimos que la densidad del circuito no permitiría que la máquina se fabrique en eso. Simplemente no puede obtener 21 7 segmentos + 3 3 segmentos (y los 4 Maxim para controlarlos) más 18 LED + 19 botones para que quepan en el tablero del proyecto sin mencionar el microcontrolador, la IMU, el RTC, el GPS., etc. Así que tuvimos que proceder directamente al diseño de la PCB, que pensamos que era la mejor manera de producir una réplica fiel y confiable. Perdón.

También probamos el reproductor MP3 en una placa de pruebas Y … creamos un prototipo de un segmento de 3 impresos en 3D para producir la elusiva unidad +/- LED deseada.

Paso 4: esquemas

Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas

Los esquemas ahora están disponibles para ayudar a todos los que quieran construir un DSKY sin nuestra PCB o Kit.

El primer esquema (NeoPixels) muestra cómo conectamos los 18 Neopixels al Arduino Nano Pin 6. El segundo esquema muestra cómo conectamos (todos los 18) Neopixels y el 5Volt Buck, Reed Relay, Line Leveler y SKM53 GPSr junto con el 19 botones. El tercer esquema muestra las conexiones IMU y RTC.

Usamos Surface mount 5050 NeoPixels que requería una resistencia de balasto de 470 ohmios antes del primer píxel y usamos un capacitor de 10 uF para cada píxel alterno.

Si usa NeoPixel en la placa de ruptura Adafruit (compatible con la placa de pruebas) como se muestra en la imagen de arriba, entonces no necesita ninguna resistencia o condensador, ya que están integrados en la PCB de ruptura Adafruit.

La explicación del circuito GPS: la mayoría de los dispositivos GPS Arduino funcionarán con un suministro de 5 voltios. Dicho esto, el nivel lógico en estos mismos dispositivos es de 3,3 voltios. La mayoría de las veces, el Arduino leerá en su pin RX 3.3V tan alto, ya que es mayor que la mitad de 5V. El problema radica en el serial del hardware… No estamos seguros de por qué, pero obtenemos mejores resultados usando el nivelador lógico. No usarlo parece depender del uso de software en serie. La biblioteca en serie del software y la versión incorporada en las versiones más recientes de IDE modifican los temporizadores y puertos en el chip Atmel 328. Esto, a su vez, deshabilita la capacidad de usar la biblioteca Maxim que necesitamos / usamos para manejar los registros de cambio para las pantallas de siete segmentos. Así que usamos la buena serie de hardware antigua.

El relé de lengüeta se usa para encender y apagar la serie de hardware para que el Arduino aún se pueda programar mientras está instalado. Se puede omitir, sin embargo, el dispositivo Arduino debería retirarse de la placa principal para programarlo, ya que el GPS robará la serie. La forma en que esto funciona es: al leer el GPS, el pin 7 se tira hacia arriba y cierra la lengüeta. Luego, el GPS comienza a llenar el búfer en serie (el GPS nunca se apagará una vez que tenga una solución). Se sondea el búfer en serie y, cuando se detecta una cantidad suficiente de datos, se lee y analiza. Luego, el pin 7 se escribe bajo desconectando el GPS, lo que permite que Arduino reanude su comportamiento normal.

Paso 5: Impresión 3D

A continuación, se muestran los 5 archivos stl necesarios para hacer una réplica completa de Open DSKY.

Tenga en cuenta que si bien el bisel y la tapa de la caja de la batería se pueden imprimir en casi cualquier impresora 3D, el DSKY real tenía 7 "de ancho por casi 8" de alto, por lo que esas son las dimensiones de nuestra placa superior, anillo medio e inferior que requiere un 3D. Impresora que puede imprimir al menos 180 mm por 200 mm.

Imprimimos el bisel, la placa superior y el anillo medio en material gris, mientras que la parte inferior y la puerta de la batería están impresas en negro.

Paso 6: corte / grabado láser

Corte / grabado láser
Corte / grabado láser
Corte / grabado láser
Corte / grabado láser
Corte / grabado láser
Corte / grabado láser

A continuación se muestran el archivo ButtonCaps cortado / grabado con láser y el archivo de ventana esmerilada Lampfield impreso con láser, luego cortado / grabado con láser.

Utilizamos Rowmark (Johnson Plastics) Lasermax Black / White 2ply 1/16 (LM922-402) para cortar y grabar las teclas de 19 botones. Como con todos los archivos enviados a un cortador láser, es posible que deba ajustar el tamaño del archivo hasta que obtenga teclas de 19 mm por 19 mm En nuestra máquina de CO2 enfriada por agua de 60 vatios, usamos 40% de potencia y 300 mm / s de velocidad para grabar y 50% de potencia y 20 mm / s de velocidad para cortar la lámina acrílica.

La ventana esmerilada se crea imprimiendo la imagen de arriba en una transparencia con el nombre apropiado "Apollo" (¿por qué usar cualquier otra marca?) Con cualquier impresora láser y luego alimentándola al cortador / grabador láser para "grabar" horizontalmente, luego verticalmente, usando 20 % de potencia y una velocidad de 500 mm / s que creemos que crea un aspecto "helado" ideal.

Paso 7: LISTA DE MATERIAL

LISTA DE MATERIAL
LISTA DE MATERIAL

1 placa de circuito impreso v1.0D

1 piezas impresas en 3D

1 Arduino Nano

1 VA RTC

1 IMU

1 dólar StepDown

1 GPS SKM53

Nivelador de 1 línea

1 interruptor de lengüeta

1 DFPlayer Mini

1 tarjeta MicroSD 2Gig

1 altavoz de 2 8Ohms

1 soporte de batería 6AA

6 pilas AA

1 terminal de cable

1 interruptor de encendido / apagado

4 Maxim7219

4 enchufes 24 pines

1 40 pines hembra

1 condensadores de 10uF

1 resistencia de 15 ohmios

1 resistencia de 100 ohmios

20 resistencias de 470 ohmios

22 resistencias de 1K ohmios

4 resistencias de 10K ohmios

3 resistencias de 100K ohmios

18 NeoPixel RGB

19 pulsadores LED

19 tapas de botones cortadas con láser

21 7 segmentos 820501G

3 3 segmentos STG

2 ventanas esmeriladas

La mayoría de los componentes anteriores se encuentran fácilmente en eBay o Amazon y tienen un precio razonable.

Las excepciones son, por supuesto, nuestra propia PCB (que integra todos estos componentes juntos, nuestras tapas de botones cortadas con láser que se ven realmente bien y permiten que la luz pase a través del botón, las ventanas esmeriladas que, después de probar numerosas alternativas, James tuvo un golpe de genio (más sobre eso más adelante) y finalmente, la pantalla! @ # $% ^ 3-Segment +/- que tuvimos que crear desde cero. Agregue a esto nuestro propio gabinete impreso en 3D y tendrá todos los ingredientes.

Si alguien está listo para aceptar la falta del signo "+" delante de los datos numéricos apropiados que se muestran, entonces simplemente puede agregar 3 segmentos más y terminar el día. Esto simplemente NO era una opción para nosotros y es por eso que creamos nuestro propio segmento de 3.

Paso 8: 3 SEGMENTOS

3 SEGMENTO
3 SEGMENTO
3 SEGMENTO
3 SEGMENTO
3 SEGMENTO
3 SEGMENTO

Usted pensaría que en 2018, con todos los recursos mundiales disponibles para nosotros, uno puede simplemente pedir una unidad LED de 3 segmentos +/-… ¡Bueno, no es el caso!

Entonces, nos dimos cuenta de que para permanecer fieles al Apollo DSKY original, tendríamos que crear desde cero nuestro propio LED de 3 segmentos +/-.

Después de numerosos diseños, finalmente tuvimos una unidad impresa en 3D con caja de sombra integrada.

Luego, obtuvimos los LED SMT (montados en superficie) apropiados y los probamos.

Ahora estábamos listos para diseñar el pequeño PCB que encajaría dentro de nuestra carcasa de 3 segmentos impresa en 3D.

Reunir todo esto fue un desafío teniendo en cuenta que apenas podemos ver los pequeños LED, ¡pero el resultado es fantástico!

Paso 9: FUNCIONALIDAD

FUNCIONALIDAD
FUNCIONALIDAD

Luego llegó el momento de decidir la funcionalidad mínima de nuestra réplica, junto con los objetivos de producción y cuál era nuestra lista de deseos.

Después de investigar un poco, encontramos una aplicación gratuita en iTunes que podría ser útil, por lo que compramos un iPad específicamente para este propósito.

La aplicación gratuita para iPad de AirSpayce Pty Ltd nos dio una idea de nuestro MVP (producto mínimo viable).

Después de escribir el código para realizar una prueba de lámpara completa, implementamos inmediatamente el ajuste / visualización de la hora, el monitoreo de IMU y el monitoreo de GPS.

El código se congeló hasta que decidimos agregar uno de nuestros locos elementos de la lista de deseos que era reproducir el famoso discurso de JFK de 1962 en el Rice Stadium "Elegimos ir a la Luna …". Luego agregamos un par de otras pistas de sonido icónicas.

Paso 10: INSTRUCCIONES DE MONTAJE - Electrónica

INSTRUCCIONES DE MONTAJE - Electrónica
INSTRUCCIONES DE MONTAJE - Electrónica

Primero, asegúrese de tener todos los componentes necesarios.

Lea las siguientes instrucciones una vez por completo antes de comenzar el ensamblaje.

1. Suelde las 20 resistencias de 470 ohmios.

2. Suelde las 22 resistencias de 1K.

3. Suelde las 4 resistencias de 10K.

4. Suelde las 3 resistencias de 100K.

5. Suelde la resistencia de 15 ohmios.

6. Suelde la resistencia de 100 ohmios.

7. Opcional: para ayudar con la soldadura de los diminutos NeoPixels RGB de montaje en superficie 5050, coloco un poco de soldadura en cada una de las 4 almohadillas para cada uno de los 18 LED RGB.

8. Corte 2 tiras de conectores de clavija hembra y suéldelos a la ubicación de Arduino Nano en la parte posterior de la PCB.

9. Suelde con cuidado los 18 NeoPixels montados en superficie en la secuencia adecuada, asegurándose de no hacer cortocircuitos con vías cercanas. Después de ensamblar muchas unidades, hemos descubierto que es más eficiente soldar 1 Neopixel, alimentar el Arduino (a través de su puerto USB) con el strandtest.ino para verificar que se enciende, apagar Arduino, soldar el siguiente Neopixel en la secuencia., pruébelo y repita para los 18 Neopixels. A medida que soluciona problemas, tenga en cuenta que un problema con un Neopixel puede ser el resultado de que el Neopixel anterior NO se haya soldado correctamente (pin de salida). Descubrí que 680 grados es demasiado caliente (y mata el rojo o el verde a veces), 518 grados parece mucho mejor.

10. Corte una tira de 4 pines hembra y suéldela en la ubicación del convertidor Buck.

11. Inserte Arduino Nano y Buck Converter ahora si desea probar los LED RGB usando strandtest. INO

12. Corte al ras ambos espaciadores negros debajo de cada uno de los 19 botones pulsadores iluminados para permitir que los botones descansen completamente en la PCB.

13. Inserte, luego suelde los 13 botones pulsadores iluminados, asegurándose de que todos los puntos rojos (cátodo) estén en el lado izquierdo. Una vez que se insertan todos los botones, enciendo el Arduino a través de su puerto USB para probar que los 19 LED de los botones se encienden ANTES de soldarlos …

14. Suelde los 4 enchufes Maxim, asegurándose de respetar la orientación.

15. Prepare la IMU soldando sus pines macho y saltando su pin ADO a su VCC.

16. Prepare el nivelador de línea soldando sus pines macho en el lado bajo y en el lado alto.

17. Corte y suelde los pines hembra para recibir la IMU, el VA RTC y el nivelador de línea.

18. Suelde las 10 tapas respetando la polaridad. El pin más largo es positivo.

19. Suelde el relé Reed, asegurándose de respetar la orientación.

20. Suelde el terminal del cable.

21. Suelde los 21 7 segmentos, asegurándose de que los puntos (punto decimal) estén en la parte inferior derecha.

22. Suelde los 3 segmentos de S&T GeoTronics (personalizado más / menos).

23. Inserte los 4 chips Maxim 7219 en sus enchufes, nuevamente, asegurándose de respetar la orientación.

24. Inserte el IMU, RTC, Buck, Arduino Nano y Line Leveler.

25. Suelde el altavoz y el reproductor MP3 / tarjeta SD asegurándose de respetar la orientación Y de mantenerlo tan alto en la PCB porque el GPS del otro lado deberá estar alineado con la PCB para que encaje correctamente.

26. Suelde el GPS después de aplicar una capa de cinta eléctrica debajo para evitar un posible cortocircuito de las clavijas.

27. Conecte el paquete de baterías de 9 voltios y pruebe el conjunto electrónico completo.

¡FELICIDADES! Ha terminado con el ensamblaje de la electrónica.

Paso 11: INSTRUCCIONES DE MONTAJE - Caja

INSTRUCCIONES DE MONTAJE - Caja
INSTRUCCIONES DE MONTAJE - Caja

LISTA DE MATERIALES

Artículo de la cantidad

1 bisel impreso en 3D

1 placa superior impresa en 3D

1 sección intermedia impresa en 3D

1 parte inferior impresa en 3D

1 puerta de batería impresa en 3D

1 ventana esmerilada impresa

1 ventana de acrílico

19 tapas de botones cortadas con láser

15 tornillos de cabeza hueca para madera (M3-6 mm)

6 pequeños tornillos para madera

Una vez que se haya probado completamente el ensamblaje de la electrónica, proceda con los siguientes pasos:

1. Coloque las 19 tapas de los botones en su ubicación correcta siguiendo la imagen de arriba.

2. Inserte con cuidado la PCB ensamblada en la placa superior. Puede ser un ajuste perfecto y puede requerir un poco de lijado del componente impreso en 3D.

3. Con 6 pequeños tornillos de cobre, atornille la PCB a la placa superior. NO apriete demasiado.

4. Con 2 de los tornillos de cabeza hueca, monte el altavoz y luego el interruptor de encendido / apagado en la sección central impresa en 3D empujándolo hacia adentro.

5. Con 8 de los tornillos de cabeza hueca, atornille la placa superior ensamblada a la sección central, asegurándose de que el interruptor de encendido / apagado y el orificio del altavoz estén al frente.

6. Suelde un cable de puente a cada lado del altavoz, saltándolos a cada orificio de salida de audio junto a la tarjeta SD.

7. Con cinta adhesiva de doble cara, monte la caja de la batería dentro del compartimiento de la batería, asegurándose de que los cables rojo y negro estén insertados en el orificio.

8. Atornille el cable negro de la caja de la batería en la posición de tierra del terminal de tornillo azul y suelde el cable rojo de la caja de la batería a cualquiera de las clavijas del interruptor basculante de encendido / apagado.

9. Atornille un cable de puente al lado de 9V del terminal de tornillo azul y suelde el otro extremo al pin disponible en el interruptor basculante de encendido / apagado.

10. Cierre la cubierta trasera y, usando 8 de los tornillos de cabeza hueca, atornille la cubierta trasera ensamblada a la sección central. NO apriete demasiado.

¡FELICIDADES! ¡Ha terminado con el ensamblaje del gabinete y ahora tiene un DSKY completo!

Paso 12: SOFTWARE

Visite nuestro otro Instructable de Open DSKY titulado "PROGRAMACIÓN DEL OPEN DSKY"

para obtener información de programación más detallada y videos sobre la programación de su Open DSKY.

Debido a que hacemos un uso extensivo de Neopixels, deberá visitar el sitio web de Adafruit y descargar su maravillosa biblioteca. Esta biblioteca viene con algunos buenos ejemplos como "standtest.ino" que también escribieron Limor y su equipo.

Además, debido a que usamos Shift Registers para controlar los 7 segmentos, se necesita la biblioteca Maxim para el chip Max7219.

Consíguelo aquí: Biblioteca LedControl

Se adjunta nuestro código actual al 1/9/2018. Este es un prototipo con funcionalidad limitada. Consulte con www. OpenDSKY.com a medida que continuamos desarrollando y optimizando el conjunto de funciones. Este código de prototipo actual prueba todos los registros de cambio de 7 segmentos / máximo, todos los Neopixels, el reloj de tiempo real muy preciso, la IMU de 6 DOF, el GPS y el reproductor MP3.

Toda esta funcionalidad en 3 verbos auténticos y 3 sustantivos auténticos y 3 programas que agregamos para fines de demostración.

LISTA DE VERBOS LISTA DE SUSTANTIVOS LISTA DE PROGRAMAS

16 MONITOR DECIMAL 17 IMU 62 “Elegimos ir a la Luna”

21 CARGAR DATOS 36 HORA 69 "El águila ha aterrizado"

35 LITES DE PRUEBA 43 GPS 70 "Houston, hemos tenido un problema"

Disfrute del videoclip para una breve demostración de algunas de las funciones actualmente implementadas.

Paso 13: KICKSTARTER

Image
Image

Siguiendo nuestra exitosa fórmula utilizada para nuestro proyecto Open Enigma, ofrecemos en Kickstarter varios kits, unidades ensambladas / probadas y una réplica de edición limitada Ultimate 50th Anniversary (Make 100).

Estamos ofreciendo:

- El PCB solo

- El kit Barebones

- El kit de electrónica de bricolaje

- El kit completo (con componentes impresos en 3D y cortados con láser)

- La unidad ensamblada / probada

- Edición limitada del 50 aniversario con número de serie y certificado de autenticidad

¡Nuestro Kickstarter está EN VIVO!

Abrir DSKY Kickstarter

Visite https://opendsky.com para obtener más información.

Visite www.stgeotronics.com para solicitar su PCB o kit.

Recomendado: