Índice:

Abra o Apollo Guidance Computer DSKY: 13 etapas (com imagens)
Abra o Apollo Guidance Computer DSKY: 13 etapas (com imagens)

Vídeo: Abra o Apollo Guidance Computer DSKY: 13 etapas (com imagens)

Vídeo: Abra o Apollo Guidance Computer DSKY: 13 etapas (com imagens)
Vídeo: from Apollo to P82 — Parts1&2 2024, Julho
Anonim
Image
Image

Orgulho de ser um Instrutível em destaque desde 01/10/18. Por favor, vote em nós e dê um like!

A campanha Kickstarter foi um super sucesso!

Abra o DSKY Kickstarter

Nosso Open DSKY está atualmente disponível no Backerkit (https://opendsky.backerkit.com/hosted_preorders) e disponível em nosso site de comércio eletrônico.

Bill Walker (criador do Projeto de Experiência Educacional Apollo), escreveu um software personalizado incrível (com cerca de 50 funções) com uma Referência de Comando modelado após o Plano de Voo Apollo para seus 2 Open DSKYs e está tornando-o disponível exclusivamente para todos através de seu GoFundMe página. Por favor, considere apoiá-lo.

Embora esta não seja certamente a primeira recriação do Iconic AGC (Apollo Guidance Computer) DSKY (Display / Keyboard) usado em todas as missões Apollo da década de 1960, e você pode esperar ainda mais para aparecer este ano e no próximo ano por causa do próximo 50º aniversário do primeiro pouso na lua, decidimos há alguns anos criar nossa própria versão que atenderia a um número mínimo de pré-requisitos.

Este projeto surgiu por sugestão de um de nossos patrocinadores / contribuidores da Open Enigma e gostaríamos de agradecer a Rob por sua sugestão / contribuição. Obrigado Rob!

Especificações de pré-requisitos:

- Deve ser construído com um Arduino e oferecer software Open Source.

- Precisa se parecer com a coisa real. Uma réplica fiel obviamente SEM memória central …

- Precisa emular a função / comportamento das unidades voadas da Apollo.

- Necessita usar componentes que permitam a alguém construí-lo como um kit.

Etapa 1: PESQUISA, coleta de especificações originais

PESQUISA, coleta de especificações originais
PESQUISA, coleta de especificações originais
PESQUISA, coleta de especificações originais
PESQUISA, coleta de especificações originais
PESQUISA, coleta de especificações originais
PESQUISA, coleta de especificações originais

Embora NÃO tenhamos acesso pessoalmente a um dispositivo físico, temos a sorte de que outras pessoas que têm (ou tiveram) acesso documentaram suas descobertas (Fran Blanche, por exemplo - quer você apoie nosso Kickstarter ou não, considere apoiar sua campanha de Crowdfunding https://www.gofundme.com/apollo-dsky-display-project), alguns nos permitiram tirar proveito desse conhecimento. Como Isaac Newton escreveu: “Nós apoiamo-nos nos ombros de gigantes”.

Usando o excelente kit de papel da EduCraft ™ para dimensões exatas, o aplicativo gratuito para iPad da AirSpayce Pty Ltd para recursos mínimos de viabilidade e o livro muito detalhado de Frank O'Brien "The Apollo Guidance Computer - Architecture and Operation", juntamente com vários recursos da NASA incluindo o código original completo no GitHub, fomos capazes de determinar e replicar muitas das especificações exatas de hardware e software.

Os monitores eletroluminescentes originais usados no Apollo eram uma tecnologia de vida muito curta que já não existia mais. Ele se tornou obsoleto no início da década de 1970, então decidimos muito rapidamente usar LEDs na forma de 7 segmentos para emulá-los. Isso também nos permitiu NÃO ter que usar a alta tensão e os 156 relés mecânicos para acionar os visores EL. Encontrar o tamanho certo foi um desafio, mas mal sabíamos que encontrar um segmento +/- 3 seria uma missão impossível! (mesmo nos dias de hoje …) Encontramos em Israel cerca de 3 segmentos +/- integrados com uma unidade de 7 segmentos e decidimos experimentá-los para nossos primeiros protótipos …

Etapa 2: Um pouco de história …

Deve-se notar que a primeira coisa que realmente se assemelha a um microcontrolador moderno provavelmente seria o Apollo AGC. Este foi o primeiro computador de vôo real, além do primeiro uso importante de circuitos integrados. Mas você precisa avançar mais uma década antes que todas as funcionalidades básicas de um computador sejam reunidas em um único chip LSI; como o Intel 8080 ou o Zilog Z80. E mesmo assim, a memória, o relógio e muitas das funções de E / S eram externas. Não era muito conveniente para o usuário amador.

São os chips ARM, AVR e similares que dão o próximo passo importante; com a inclusão de flash RAM não volátil, tornou-se possível construir um computador praticamente sem componentes externos. A série de chips AVR (com os quais estamos mais familiarizados) tem linhas de E / S com buffer, UARTs seriais, conversores A / D e geradores PWM, temporizadores de watchdog e até mesmo osciladores internos, se desejado. No formato do Arduino e placas semelhantes, esses chips são circundados por um relógio ou ressonador adequado, uma fonte de alimentação regulada, alguma fonte de alimentação e outros capacitores de desacoplamento de pino crítico e algumas luzes piscantes para monitoramento de status.

É irônico que, 50 anos depois, a plataforma escolhida para um projeto DIY ofereça basicamente a mesma funcionalidade (Ram / Rom / Processing) por uma fração minúscula do custo (e peso!).

Etapa 3: PROTOTIPAGEM

PROTOTIPAGEM
PROTOTIPAGEM
PROTOTIPAGEM
PROTOTIPAGEM
PROTOTIPAGEM
PROTOTIPAGEM

Decidimos que primeiro precisávamos fazer uma prova de conceito na placa de ensaio de 3 chips Maxim controlando 15 LEDs de 7 segmentos para ter certeza de que se comportariam como esperado. Foi um sucesso. Em seguida, tentamos brevemente construir o dispositivo em uma placa de projeto e descobrimos muito rapidamente que a densidade do circuito não permitiria que a máquina fosse fabricada nisso. Você simplesmente não pode obter 21 7 segmentos + 3 3 segmentos (e os 4 Maxim para controlá-los) mais 18 LEDs + 19 botões para caber na placa do projeto sem mencionar o microcontrolador, o IMU, o RTC, o GPS etc. Portanto, tivemos que prosseguir diretamente para o projeto do PCB, que acreditamos ser a melhor maneira de produzir uma réplica confiável e fiel. Desculpa.

Também testamos o MP3 player na placa de ensaio E … criamos um protótipo de um 3 Segment impresso em 3D para produzir a unidade de LED +/- indescritível desejada.

Etapa 4: esquemas

Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas
Esquemas

Esquemas agora disponíveis para ajudar todos que desejam construir um DSKY sem nosso PCB ou Kit.

O primeiro esquema (NeoPixels) mostra como conectamos os 18 Neopixels ao Arduino Nano Pin 6. O segundo esquema mostra como conectamos (todos os 18) Neopixels e o 5Volt Buck, Reed Relay, Line Leveler e SKM53 GPSr junto com o 19 botões. O terceiro esquema mostra as conexões IMU e RTC.

Usamos NeoPixels de montagem em superfície 5050 que exigia um resistor de lastro de 470 Ohms antes do primeiro pixel e usamos um capacitor de 10 uF para cada outro pixel.

Se você usar o NeoPixel na placa Breakout Adafruit (compatível com placa de ensaio), conforme ilustrado acima, você não precisa de nenhum resistor ou capacitor, pois eles estão integrados na placa de breakout Adafruit.

A explicação do circuito GPS: a maioria dos dispositivos Arduino GPS operará com alimentação de 5 volts. Dito isso, o nível lógico nesses mesmos dispositivos é de 3,3 volts. Na maioria das vezes, o Arduino lerá em seu pino RX 3.3V tão alto quanto maior que a metade de 5V. O problema está no serial do hardware … Não temos certeza do porquê, mas temos melhores resultados usando o nivelador lógico. Não usá-lo parece depender do uso de serial de software. A biblioteca serial do software e a versão incorporada às versões mais recentes do IDE modificam os temporizadores e as portas no chip Atmel 328. Isso, por sua vez, desativa a capacidade de usar a biblioteca Maxim que precisamos / usamos para conduzir os registradores de deslocamento para as exibições de sete segmentos. Portanto, usamos o bom e velho hardware serial.

O relé de palheta é usado para ligar e desligar o serial do hardware para que o Arduino ainda possa ser programado durante a instalação. Ele pode ser omitido, no entanto, o dispositivo Arduino precisaria ser removido da placa principal para programação, pois o serial será roubado pelo GPS. A maneira como isso funciona é: ao ler o GPS, o pino 7 é puxado para cima, fechando a palheta. O GPS então começa a preencher o buffer serial (o GPS nunca fecha depois de ter uma posição). O buffer serial é pesquisado e quando uma quantidade suficiente de dados é detectada, ele é lido e analisado. Em seguida, o pino 7 é escrito baixo desconectando o GPS, permitindo que o Arduino retome seu comportamento normal.

Etapa 5: Impressão 3D

Abaixo estão os 5 arquivos stl necessários para fazer uma réplica Open DSKY completa.

Observe que, embora a tampa do painel e da caixa da bateria possam ser impressos em praticamente qualquer impressora 3D, o DSKY real tinha 7 "de largura por quase 8" de altura, então essas são as dimensões de nossa placa superior, anel médio e inferior, que requer um 3D Impressora que pode imprimir pelo menos 180 mm por 200 mm.

Imprimimos a moldura, a placa superior e o anel intermediário em material cinza, enquanto a parte inferior e a porta da bateria são impressas em preto.

Etapa 6: Corte / Gravação a Laser

Corte / Gravação a Laser
Corte / Gravação a Laser
Corte / Gravação a Laser
Corte / Gravação a Laser
Corte / Gravação a Laser
Corte / Gravação a Laser

Abaixo estão o arquivo cortado / gravado a laser ButtonCaps e a janela fosca Lampfield impressa a laser e, em seguida, o arquivo cortado / gravado a laser.

Usamos Rowmark (Johnson Plastics) Lasermax Preto / Branco 2ply 1/16 (LM922-402) para cortar e gravar as capas de tecla de 19 botões. Como ocorre com todos os arquivos enviados a um cortador a laser, pode ser necessário ajustar o tamanho do arquivo até você obtenha capas de teclas de 19 mm por 19 mm. Em nossa máquina de CO2 resfriado a água de 60 Watts, usamos 40% de potência e 300 mm / s de velocidade para gravar e 50% de potência e 20 mm / s de velocidade para cortar a folha de acrílico.

A janela fosca é criada imprimindo a imagem acima em transparência chamada apropriadamente "Apollo" (por que usar qualquer outra marca?) Com qualquer impressora a laser e, em seguida, alimentando-a para o cortador / gravador a laser para "gravar" horizontalmente, depois verticalmente, usando 20 % de potência e velocidade de 500 mm / s que acreditamos criar uma aparência "fosca" ideal.

Etapa 7: CONTA DE MATERIAL

LISTA DE MATERIAIS
LISTA DE MATERIAIS

1 PCB v1.0D

1 peças impressas em 3D

1 Arduino Nano

1 VA RTC

1 IMU

1 Buck StepDown

1 SKM53 GPS

1 Line Leveler

1 Reed Switch

1 DFPlayer Mini

1 cartão MicroSD 2Gig

1 alto-falante de 2 8 ohms

1 Suporte de bateria 6AA

6 pilhas AA

Terminal de 1 fio

1 botão liga / desliga

4 Maxim7219

4 soquetes 24pins

1 40 alfinetes femininos

1 capacitores 10uF

1 Resistor de 15 Ohms

1 resistor de 100 ohms

20 resistores de 470 ohms

22 resistores de 1K ohms

4 resistores de 10K Ohms

3 resistores de 100K Ohms

18 NeoPixel RGB

19 LEDs de pressão

19 tampas de botão de corte a laser

21 7 segmentos 820501G

3 3 segmentos STG

2 janelas geadas

A maioria dos componentes acima são facilmente encontrados no eBay ou Amazon e têm preços razoáveis.

As exceções são, claro, nosso próprio PCB (que integra todos esses componentes juntos, nossas tampas de botão cortadas a laser que parecem realmente boas e permitem que a luz atravesse o botão, as janelas congeladas que, após tentar várias alternativas, James teve um derrame de gênio (mais sobre isso depois) e, finalmente, o! @ # $% ^ 3-Segment +/- display que tivemos que criar do zero. Adicione a isso nosso próprio gabinete impresso em 3D e você terá todos os ingredientes.

Se alguém está pronto para aceitar a falta do sinal “+” na frente dos dados numéricos apropriados exibidos, então você pode simplesmente adicionar mais 3 7 segmentos e encerrar o dia. Isso simplesmente NÃO era uma opção para nós e é por isso que criamos nosso próprio 3 Segment.

Etapa 8: 3 SEGMENTOS

3 SEGMENTOS
3 SEGMENTOS
3 SEGMENTOS
3 SEGMENTOS
3 SEGMENTOS
3 SEGMENTOS

Você poderia pensar que em 2018, com todos os recursos mundiais disponíveis para nós, pode-se simplesmente solicitar uma unidade de LED 3Segment +/- … Bem, não é o caso!

Então, percebemos que, para permanecermos fiéis ao Apollo DSKY original, teríamos que criar do zero nosso próprio LED de 3 segmentos +/-.

Depois de vários projetos, finalmente tivemos uma unidade impressa em 3D com caixa de sombra integrada.

Em seguida, fornecemos os LEDs SMT (Surface Mounted) apropriados e os testamos.

Agora estávamos prontos para projetar o minúsculo PCB que caberia dentro de nosso invólucro de 3 segmentos impresso em 3D.

Juntar tudo isso foi um pouco desafiador, considerando que mal podemos ver os minúsculos LEDs, mas o resultado é fantástico!

Etapa 9: FUNCIONALIDADE

FUNCIONALIDADE
FUNCIONALIDADE

Então chegou o momento de decidir a funcionalidade mínima do nosso Replica, juntamente com os objetivos de produção e qual era a nossa lista de desejos.

Depois de um pouco de pesquisa, encontramos um aplicativo gratuito no iTunes que pode ser útil, então compramos um iPad especificamente para esse propósito.

O aplicativo gratuito para iPad da AirSpayce Pty Ltd nos deu uma ideia do nosso MVP (Minimum Viable Product).

Depois de escrever o código para realizar um teste Full Lamp, implementamos imediatamente a configuração / exibição de tempo, monitoramento IMU e monitoramento GPS.

O código foi congelado até que decidimos adicionar um dos nossos itens da lista de desejos malucos que era reproduzir o famoso discurso de JFK de 1962 no Estádio do Arroz “Nós escolhemos ir para a Lua…”. Em seguida, adicionamos algumas outras trilhas sonoras icônicas.

Etapa 10: INSTRUÇÕES DE MONTAGEM - Eletrônica

INSTRUÇÕES DE MONTAGEM - Eletrônica
INSTRUÇÕES DE MONTAGEM - Eletrônica

Primeiro, certifique-se de ter todos os componentes necessários.

Leia as instruções a seguir uma vez completamente antes de iniciar a montagem.

1. Solde todos os 20 resistores de 470 Ohms.

2. Solde todos os 22 resistores de 1K.

3. Solde todos os 4 resistores de 10K.

4. Solde todos os 3 resistores de 100K.

5. Solde o resistor de 15 Ohms.

6. Solde o resistor de 100 Ohms.

7. Opcional: para ajudar a soldar os minúsculos NeoPixels de montagem em superfície 5050 RGB, coloco um pouco de solda em cada um dos 4 pads para cada um dos 18 LEDs RGB.

8. Corte 2 tiras de conectores de pino fêmea e solde-os no local do Arduino Nano na parte de trás do PCB.

9. Solde com cuidado todos os 18 NeoPixels montados na superfície na sequência adequada, certificando-se de não causar curto com as vias próximas. Depois de montar muitas unidades, descobrimos que é mais eficiente soldar 1 Neopixel, alimentar o Arduino (por meio de sua porta USB) com o strandtest.ino para verificar se ele acende, desligar o Arduino, soldar o próximo Neopixel na sequência, teste e repita para todos os 18 Neopixels. Ao solucionar problemas, lembre-se de que um problema com um Neopixel pode ser o resultado do Neopixel anterior NÃO ter sido soldado corretamente (pino de saída). Descobri que 680 graus é muito quente (e às vezes mata vermelho e ou verde), 518 graus parece muito melhor.

10. Corte uma tira de 4 pinos fêmeas e solde-a no local do conversor Buck.

11. Insira Arduino Nano e Buck Converter agora se quiser testar os LEDs RGB usando strandtest. INO

12. Corte os dois espaçadores pretos sob cada um dos 19 botões iluminados para permitir que os botões repousem totalmente na placa de circuito impresso.

13. Insira e solde todos os 13 botões iluminados, certificando-se de que todos os pontos vermelhos (cátodo) estejam no lado esquerdo. Depois que todos os botões estão inseridos, eu ligo o Arduino por meio de sua porta USB para testar se todos os 19 LEDs de botão acendem ANTES de soldá-los …

14. Solde todos os 4 soquetes Maxim, respeitando a orientação.

15. Prepare a IMU soldando seus pinos machos e pulando seu pino ADO em seu VCC.

16. Prepare o nivelador de linha soldando seus pinos machos no lado baixo e no lado alto.

17. Corte e solde os pinos fêmeas para receber o IMU, o VA RTC e o nivelador de linha.

18. Solde todas as 10 tampas respeitando a polaridade. O pino mais longo é positivo.

19. Solde o Reed Relay, respeitando a orientação.

20. Solde o terminal do fio.

21. Solde todos os 21 7 segmentos, certificando-se de que os pontos (ponto decimal) estão no canto inferior direito.

22. Solde todos os 3 S&T GeoTronics 3Segments (Custom Plus / Minus).

23. Insira todos os 4 Chips Maxim 7219 em seus soquetes, novamente, respeitando a orientação.

24. Insira o IMU, RTC, Buck, Arduino Nano e Line Leveler.

25. Solde o alto-falante e o MP3 Player / cartão SD, certificando-se de respeitar a orientação E mantendo o mais alto possível no PCB, pois o GPS do outro lado precisará estar nivelado com o PCB para se encaixar corretamente.

26. Solde o GPS depois de aplicar uma camada de fita isolante por baixo para evitar um possível curto-circuito dos pinos.

27. Conecte o pacote de bateria 9Volt e teste o conjunto eletrônico completo.

PARABÉNS! Você concluiu a montagem dos componentes eletrônicos.

Etapa 11: INSTRUÇÕES DE MONTAGEM - Gabinete

INSTRUÇÕES DE MONTAGEM - Gabinete
INSTRUÇÕES DE MONTAGEM - Gabinete

CONTA DE MATERIAIS

Qty Item

1 moldura impressa em 3D

1 placa superior impressa em 3D

1 Seção intermediária impressa em 3D

1 parte inferior impressa em 3D

1 porta de bateria impressa em 3D

1 janela impressa fosca

1 janela acrílica

19 tampas de botão de corte a laser

15 parafusos de cabeça de soquete para madeira (M3-6mm)

6 parafusos minúsculos de madeira

Depois que o conjunto de componentes eletrônicos for totalmente testado, prossiga com as seguintes etapas:

1. Posicione todas as 19 capas de botão em seus locais adequados, conforme a imagem acima.

2. Insira cuidadosamente o PCB montado na placa superior. Pode ser um ajuste apertado e pode exigir um pouco de lixamento do componente impresso em 3D.

3. Usando 6 parafusos minúsculos de cobre, aparafuse o PCB na placa superior. Não apertar demais.

4. Usando 2 dos parafusos de cabeça de soquete, monte o alto-falante e, em seguida, o botão liga / desliga na seção intermediária impressa em 3D empurrando-o para dentro.

5. Usando 8 dos parafusos de cabeça de soquete, aparafuse a placa superior montada na seção intermediária, certificando-se de que a chave liga / desliga e o orifício do alto-falante estejam na frente.

6. Solde um fio de ligação em cada lado do alto-falante, direcionando-os para cada orifício de saída de áudio próximo ao cartão SD.

7. Usando fita dupla-face, monte a caixa da bateria dentro do compartimento da bateria, certificando-se de que os fios vermelho e preto sejam inseridos no orifício.

8. Aparafuse o fio preto da caixa da bateria na posição Gnd do terminal de parafuso azul e solde o fio vermelho da caixa da bateria em qualquer um dos pinos do interruptor liga / desliga.

9. Aparafuse um fio Jumper ao lado de 9 V do Terminal de Parafuso Azul e solde a outra extremidade ao pino disponível no interruptor On / Off Rocker.

10. Feche a tampa traseira e, usando 8 dos parafusos de cabeça de soquete, aparafuse a tampa traseira montada na seção intermediária. Não apertar demais.

PARABÉNS! Você concluiu a montagem do gabinete e agora tem um DSKY completo!

Etapa 12: SOFTWARE

Visite nosso outro Open DSKY Instructable intitulado "PROGRAMMING THE OPEN DSKY"

para informações de programação mais detalhadas e vídeos sobre como programar o Open DSKY.

Como fazemos uso extensivo do Neopixels, você precisará visitar o site da Adafruit e fazer o download de sua maravilhosa biblioteca. Esta biblioteca vem com alguns bons exemplos como "standtest.ino" que Limor e sua equipe também escreveram.

Além disso, como usamos Shift Registers para conduzir os 7 segmentos, a biblioteca Maxim é necessária para o chip Max7219.

Obtenha aqui: Biblioteca LedControl

Em anexo está nosso código atual de 2018-01-09. Este é um protótipo com funcionalidade limitada. Verifique com www. OpenDSKY.com à medida que continuamos a desenvolver e otimizar o conjunto de recursos. Este código de protótipo atual testa todos os 7 Segments / Maxim shift registers, todos os Neopixels, o Very Accurate Real Time Clock, o 6 DOF IMU, o GPS e o MP3 player.

Toda esta funcionalidade em 3 verbos autênticos e 3 substantivos autênticos e 3 programas que adicionamos para fins de demonstração.

LISTA DE VERBOS LISTA DE NONOS LISTA DE PROGRAMAS

16 MONITOR DECIMAL 17 IMU 62 “Nós escolhemos ir à Lua”

21 CARREGAR DADOS 36 TEMPO 69 “A Águia pousou”

35 TESTE LITES 43 GPS 70 “Houston, tivemos um problema”

Aproveite o videoclipe para uma breve demonstração de algumas das funcionalidades implementadas atualmente.

Etapa 13: KICKSTARTER

Image
Image

Seguindo nossa fórmula de sucesso usada para nosso projeto Open Enigma, estamos oferecendo no Kickstarter vários kits, unidades montadas / testadas e uma Réplica Ultimate 50th Anniversary Limited Edition (Make 100).

Nós estamos oferecendo:

- O PCB sozinho

- O Kit Barebones

- O kit de eletrônicos DIY

- O kit completo (com componentes impressos em 3D e corte a laser)

- A unidade montada / testada

- A edição limitada do 50º aniversário com número de série e certificado de autenticidade

Nosso Kickstarter está AO VIVO!

Abra o DSKY Kickstarter

Visite https://opendsky.com para obter mais informações.

Visite www.stgeotronics.com para solicitar seu PCB ou Kit.

Recomendado: