Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Resumo:
Este projeto transmite vídeo ao vivo de uma câmera tipo olho de peixe para um monitor heads-up vestível. O resultado é um campo de visão mais amplo em uma área menor (a tela é comparável a uma tela de 4 "a 12" de distância do seu olho e produz a 720p). O objetivo principal é fornecer mais consciência espacial para aqueles com Retinite Pigmentosa (abreviado como RP), uma doença ocular degenerativa que resulta em visão de túnel (é comparável a olhar através de um rolo de papel higiênico o tempo todo). Dito isso, como o projeto é baseado em um RPi, há uma grande variedade de aplicações possíveis (algumas das quais serão discutidas no final).
Lista de materiais:
- (1) Raspberry Pi Zero ($ 5) (Raspberry Pi Zero W também funciona)
-
(1) Cartão Micro SD para Raspberry Pi (US $ 8) (apenas um cartão Micro SD comum, nada de especial. Mínimo recomendado de 8 GB de armazenamento)
-
Externos RPi: (você não precisa deles se já os possui ou se tiver outro modelo RPi)
- (1) Adaptador USB ($ 5)
- (1) Cabo Mini HDMI para HDMI (US $ 6) (com visão boa, o Vufine pode ser usado como monitor, eliminando assim a necessidade desse cabo)
-
- (1) Tela vestível Vufine ($ 200)
-
(1) Cabo de fita Micro para Mini HDMI (US $ 10) (foi descontinuado, consulte os marcadores abaixo)
-
Adaptadores HDMI
(Tipo C e tipo D; esperamos especificar o modelo no final deste fim de semana (hoje é 2018-03-02)) (Adafruit também vende esses conectores, mas eles são mais caros)
- Cabo de fita HDMI
-
- (2) Micro Cabo USB ($ 1-5 cada) (apenas 2 cabos micro USB normais, nada de especial)
- (1) Câmera Fish-Eye para Raspberry Pi ($ 25)
- (1) Cabo de câmera Raspberry Pi ($ 8)
- (1) Pacote de gravatas zip pequenas ($ 3)
Custo total: ~ 265 USD (depende do que você já tem e de quanto você paga pelo frete)
Lista de ferramentas:
- Cortadores de arame
- Decapantes de fio (para tamanhos de fio de cerca de 26 awg)
- Pistola de cola quente (e cola em bastão para a dita pistola de cola quente)
- Teclado
- Tela (deve ser compatível com HDMI, mas, novamente, com visão boa o suficiente, o Vufine pode ser usado como monitor)
- Ferro de solda (e solda)
- Faca X-Acto
Nota pessoal:
Este projeto foi inspirado na minha avó. Ela foi diagnosticada com RP há muito tempo e sua visão tem piorado ao longo dos anos. Recentemente, ela decidiu desistir de seu cão-guia, Ventura (apelidado de Seymour, trocadilho intencional), por causa da idade. Embora isso possa ter facilitado a vida em alguns aspectos, tenho certeza de que tornou outras coisas mais triviais (como caminhar em um shopping). Eu já estava pensando em fazer um dispositivo como este por um tempo, mas não havia telas prontamente disponíveis (com preços razoáveis). Isso mudou quando encontrei Vufine. É uma ótima empresa com um ótimo produto e não, não estou sendo pago para dizer isso; é uma empresa genuinamente boa. Quanto à minha avó, ela relatou que este dispositivo praticamente dobrou seu campo de visão (em termos de diâmetro, não de área).
Atualizar:
Eu construí isso com um módulo Vufine configurado para o olho esquerdo (minha avó é completamente cega do olho direito), então pode haver alguns problemas para quem está construindo isso para o olho direito (nada grande, apenas uma mudança de orientação para alguns partes). Dito isso, Vufine teve a gentileza de me enviar um módulo para o olho direito para que eu pudesse continuar este projeto e corrigir esses problemas. Assim que o fizer, irei atualizar ainda mais este instrutível.
Etapa 1: Configurando o Raspberry Pi
Configurando o Hardware do Pi:
Nota: Se você tiver um Raspberry Pi diferente de um RPi Zero (W ou normal), você pode fazer as edições de software necessárias usando esse Pi e transferir o cartão SD para o Pi Zero.
Segunda observação: na verdade, não comprei parte do hardware que se conecta ao Pi; Em vez disso, tenho um chapéu conveniente. Dito isso, a imagem acima mostra como sua configuração deve ser. Não é meu e foi tirado daqui.
Primeiro, vamos conectar o teclado. Como o seu teclado tem um conector USB tipo A (o ubíquo retangular) e o Pi Zero não, teremos que usar o adaptador USB. Conecte o adaptador USB na porta USB mais próxima do meio da placa. Em seguida, conecte o teclado ao adaptador USB. A outra porta USB será usada para alimentação. Os dois cabos superiores na imagem são cabos USB com o cabo superior fornecendo energia.
Em segundo lugar, conecte o cabo HDMI na porta mini HDMI no Pi e na porta HDMI na tela (se você escolheu usar o monitor Vufine como tela, use o cabo de fita HDMI).
Configurando o software do Pi:
Este processo está documentado em todos os lugares, mas o guia oficial está aqui. É importante observar várias coisas: você estará usando o cartão micro SD que você comprou (o que eu escolhi tem um adaptador para que você possa instalá-lo em um computador normal), você instalará o Raspbian e deverá habilitar a câmera no menu de configuração do Raspberry Pi. Além disso, NÃO siga o tutorial ao executar "startx". Se você fez isso, não é nada demais, mas você precisará de um mouse agora. Vá para a linha de comando (deve se parecer com uma janela preta na barra de tarefas) e use-a (o "pi @ raspberry ~ $" deve aparecer dentro dessa janela). Agora vamos desligar o Raspberry Pi executando:
sudo shutdown -h now
Etapa 2: Instalando a câmera
Conexões físicas:
Primeiro, deixe-me explicar como funcionam as conexões do cabo plano. Para conectar e desconectar cabos de fita, é necessário primeiro levantar as abas na lateral (para o Pi Zero, esta é uma direção para fora), o que permitirá que o conector se dobre para dentro e para fora em algum grau, permitindo que o cabo de fita saia dentro e fora. Para prender o cabo de fita no lugar (e, assim, concluir o processo de conexão), você deve pressionar a peça dobrável do conector plano contra o cabo e reinserir as abas. O cabo agora deve ser preso dentro do conector. Para ver um vídeo oficial de como isso é feito, clique aqui.
É importante notar que o cabo branco que vem com a câmera não serve para o Pi Zero; certifique-se de substituí-lo por um dos cabos de fita dourados. Além disso, certifique-se de que o lado exposto do cabo esteja voltado para baixo, no Pi e nas placas da câmera.
Programas:
A configuração da câmera é relativamente fácil no lado do software. Para transmitir vídeo diretamente da câmera para o HDMI, basta executar a seguinte linha no terminal:
raspivid -t 0 -rot 0
A câmera agora deve estar transmitindo para sua tela. Agora, pare o stream pressionando ctrl + c. Agora estaremos executando o mesmo comando, mas se você comprou um módulo Vufine padrão (configurado para o olho direito) mude o 0 após "-rot" para 90. Da mesma forma, se você comprou um display Vufine configurado para o olho esquerdo mude o 0 após "-rot" para 270.
Agora, se você segurar a câmera contra o visor do Vufine de maneira semelhante à forma como é mostrado na fotografia, deverá ver uma imagem vertical (na tela, não necessariamente no Vufine). Se sua imagem estiver de cabeça para baixo, tente o outro número (270 se você fez 90 antes e 90 se você fez 270 antes; você ainda precisa pressionar ctrl + c para sair do fluxo).
Depois de orientar o fluxo da câmera corretamente (via software), queremos ter certeza de que ele será iniciado sempre que o Raspberry Pi for ligado. A primeira etapa é executar:
sudo nano /etc/rc.local
Agora, digite um comando semelhante ao que você executou anteriormente ("/ usr / bin / raspivid -t 0 -rot 90/270") nas linhas entre "fi" e "exit 0" (mantenha-o em uma linha como visto na foto). Se você quiser uma imagem de resolução mais baixa com uma taxa de quadros mais alta, use "/ usr / bin / raspivid -t 0 -rot 90/270 -md 6". Depois de digitar, você deve salvá-lo pressionando ctrl + x, digitando y (sim, você gostaria de salvá-lo) e pressionando enter para salvá-lo com o mesmo nome. Agora você deve estar de volta à linha de comando ("pi @ raspberry ~ $"). Por fim, você pode testar para ter certeza de que tudo funciona reiniciando o Raspberry Pi com:
sudo reboot
Se tudo funcionar, você deverá ver a câmera transmitindo vídeo para a saída HDMI no final do processo de inicialização.
Notas:
- Depois que todos os itens acima foram concluídos, você pode querer considerar a aplicação de uma pequena quantidade de cola quente no cabo / conector de fita na câmera e no Pi para garantir que ele permaneça no lugar. Isso é puramente opcional e é algo que eu realmente não fiz.
- Se você tiver uma tela Vufine configurada para o olho direito e optar por orientá-la de maneira diferente (é mais conveniente se as portas USB do Pi estiverem na parte inferior), a parte superior da câmera ficará à esquerda quando você a usar.
- A câmera na foto já está montada. Veremos isso em uma etapa posterior.
- Eu queria postar uma foto do conector da câmera no Pi, mas não quero tirar o Pi se não puder colocá-lo de volta e eu perdi todas as minhas zíperes (que você verá que são necessárias para montá-lo em uma etapa posterior) e não tenho certeza de quando poderei comprar mais alguns, então decidi apenas fazer o upload agora e atualizar mais tarde.
Etapa 3: Carregando o Vufine Display
A tela do Vufine tem bateria própria, mas dura apenas 90 minutos e, embora isso possa ser suficiente para o uso pretendido do Vufine, é insuficiente para nossos propósitos. Dito isso, podemos carregar o Vufine enquanto ele está sendo usado e, assim, estender a vida útil da bateria. No entanto, os cabos USB regulares são bastante grandes e como queremos minimizar o peso, teremos que modificar um (tornando-o menor e mais leve no processo); vamos retirar um cabo USB ao mínimo.
Nota: O restante desta etapa detalha como obter o conector de um fio USB. Dito isso, fui informado sobre esses conectores USB baratos (no custo). Usá-los permitiria que você pule a parte perigosa de remover o conector do fio. Não tenho experiência com eles, mas atualizarei este manual de instruções sobre como usá-los assim que os fizer.
Preparando o cabo USB
Nota: Esta é, de longe, a parte mais perigosa da construção. Extremo cuidado deve ser exercido em torno de facas afiadas
O primeiro passo para "minimizar" o cabo USB é cortá-lo cerca de 5 polegadas (eu diria cerca de 7 para uma configuração de olho direito) da extremidade micro USB. Continue removendo o fio até a extremidade micro USB.
Agora, para a parte perigosa, você terá que cortar o invólucro de plástico usando a faca X-Acto. Sugiro usar um alicate ou um torno de mesa para segurar o plugue enquanto você o corta para minimizar o risco de se cortar. A melhor maneira de cortar é cortar ao longo das costuras na lateral (parecem linhas), conforme mostrado na imagem. Você deve usar uma quantidade razoável de força para cravar a faca no invólucro. Depois de um tempo, um lado pode ser capaz de "girar" para fora e, dependendo de quão livre ele estiver, você pode escolher usar um alicate para arrancar o resto em vez de cortá-lo.
Finalizando a peça USB
Assim que ficar apenas com a peça de metal, você deve remover os dois fios do meio (o não vermelho e o preto). Você pode fazer isso cortando-as ou usando um ferro de solda para dessoldar suas conexões e simplesmente removê-las (sugiro dessoldar se você tiver experiência suficiente). Em seguida, coloque um pouco de cola quente na base dos fios (onde eles se encontram com o plugue Micro USB) para fornecer um isolante e mantê-lo seguro. Quando terminar, a imagem deve se parecer com o USB da foto (embora ainda não tenhamos conectado ao Pi).
Conectando-o ao Pi
Esta etapa é bastante simples. Tudo o que você precisa fazer é soldar o fio vermelho à porta 5v e o fio preto ao pino terra (GND) no RPi. Para ver exatamente quais portas, veja a imagem com o retângulo vermelho no Pi. Para ver um vídeo sobre soldagem básica, clique aqui. Eu sugiro que você use um pouco de cola quente em ambos os lados do Pi (onde você soldou) para prender os fios e fornecer um isolante.
Etapa 4: conectando tudo
Protegendo o Pi
Neste ponto, coloque o Pi contra o módulo Vufine com a porta da câmera perto da frente e os conectores USB (instalados no Pi) voltados para baixo e para dentro. Prenda-o usando os dois pares (um par para cada lado) de laços zip. Faça isso colocando um zíper em um dos orifícios do canto superior da torta, enrolando-o em volta do Vufine (para baixo) e colocando-o no orifício do canto inferior no mesmo lado do Pi. Em seguida, pegue outro zíper e prenda-o no primeiro. Aperte para que o Pi seja puxado para perto do Vufine. Corte o corpo da gravata zip restante de ambas as gravatas zip (todas para a segunda e a parte que fica para fora da segunda gravata zip para a primeira). Repita esta etapa do outro lado do Pi.
Conectando coisas
Esta é talvez a etapa mais simples de toda a construção. Conecte o cabo USB que você soldou no Pi no display do Vufine.
Colagem a quente do conector
O ímã na Magnetic Docking Station não é realmente forte o suficiente para nossos propósitos, então vamos adicionar um pouco de cola quente para fortalecer a conexão. Anexe o módulo Vufine à Magnetic Docking Station que vem com (não plus) com a alça para cima (como mostrado na imagem). Certifique-se de que ele esteja quase paralelo ao Vufine real (você ainda poderá ajustar a posição da tela movendo a alça dos óculos). Aplique uma boa quantidade de cola quente na parte superior e inferior. Deixe esfriar antes de prosseguir para garantir que não seja empurrado para uma posição estranha antes de solidificar.
Conectando Coisas, Continuação
Embora esta parte não seja tão fácil quanto a primeira parte do Plugging Stuff, você não deve se esforçar muito. Basta conectar o cabo de fita HDMI ao Vufine e ao Pi (a luta é mais psicológica do que física; você pode fazer isso. Eu acredito em você).
Conectando a Câmera
Configuração do olho esquerdo:
Esta é uma parte fácil, mas o posicionamento da câmera torna difícil descrever com palavras. Basicamente, você conectará a câmera de forma que ela fique de lado com o cabo de fita enrolado sob ela. Veja a foto para ver o que quero dizer. Pressione-o contra a tela Vufine e fixe-o nesta posição aplicando cola quente na parte superior e inferior. Eu não colocaria nenhum nas laterais, pois fazê-lo apenas na parte superior e inferior é suficiente para prendê-lo e fazê-lo nas laterais pode impedir qualquer ajuste lateral da fita e da tela Vufine.
Configuração do olho direito:
Não fiz a configuração correta do olho antes (irei voltar e editar assim que fizer), mas essencialmente você precisa se certificar de que a câmera está de lado e em uma posição razoável no topo da tela. A parte superior (o lado oposto ao conector) deve estar voltado para a esquerda (esquerda quando você estiver usando). Use cola quente para prender a câmera à peça da tela no módulo Vufine. Além disso, você pode usar cola quente (ou laços zip) para se certificar de que qualquer excesso de cabo de fita está preso (dê a ele algum espaço para ajuste e tente não vincar a fita, pois não se destina a suportar altos graus de rotação). Você também pode voltar para a Etapa 2: Instalando a câmera se precisar reconfigurar o fluxo da câmera como resultado de uma mudança em seu posicionamento físico.
Etapa 5: Fin
Ligando
Para ligá-lo, basta ligar o módulo Vufine pressionando o botão cinza na parte traseira. Deve começar a piscar em azul. Em seguida, conecte o Pi Zero usando a porta USB da extrema direita (na parte externa e identificada como PWR IN). Você deve ver agora uma luz vermelha sólida acesa, além do LED azul piscando no módulo Vufine. Isso significa que o Vufine está sendo carregado. Além disso, a tela deve iniciar e você deve ver o Pi passar pelo processo de inicialização com o fluxo da câmera chegando no final. Assim que a tela for exibida, a luz azul piscando no botão Vufine deve ficar sólida.
Nota: Se você ligar o Pi primeiro (seguido pelo Vufine), sua tela pode ficar estranha. Para corrigir isso, desligue o Pi e ligue-o novamente.
Desligando
Desligue o RPi desconectando o USB que o fornece energia. Para desligar o Vufine, você pode deixá-lo desligar sozinho (o que acontecerá depois de não receber um sinal por um curto período de tempo) ou você pode manter pressionado o botão cinza (com um LED azul) no Vufine até o LED azul apaga. Prefiro deixá-lo desligar sozinho, mas você faz isso.
Outras melhorias
Como dito no resumo, como o projeto é baseado em um Raspberry Pi, o projeto tem uma grande capacidade de evoluir. Para começar, aqui estão algumas ideias que tive:
-
Você pode conectá-lo a um teclado sem fio para uso conveniente como um computador linux heads-up. Eu usaria um teclado (e mouse) como este e o conectaria em um processo semelhante a este.
Adicionar uma interface baseada em movimento manual como essa também seria legal
- Adicione botões ao lado para salvar fotos e vídeos e para aumentar e diminuir o zoom
- Adicione um interruptor de alimentação nativo (digo nativo porque alguns cabos USB têm interruptores integrados)
- Faça uma caixa impressa em 3D para tudo.
- Adicionar uma saída de áudio
- Adicionar um acessório de bateria
Colocá-lo do outro lado dos copos seria uma maneira conveniente de adicionar um contrapeso (o peso nos copos está um pouco torto)
-
Faça uma CNN (rede neural convolucional) com saída TTS (texto para fala) para uma audiodescrição do ambiente. Esta rede neural pode ser executada em um Movidius Neural Compute Stick para obter mais poder computacional.
Possível uso de uso Estimulação Vestibular Galvânica para manobras de emergência
Você pode ver algumas dessas ideias sendo implementadas na minha página do github.
Observação:
Provavelmente adicionarei mais algumas fotos mais tarde. Se você quiser alguma foto em particular, por favor me avise e eu farei o meu melhor. O mesmo se aplica a explicações; se você quiser que eu vá em mais detalhes, me avise e eu tentarei fazer isso.
Obrigada
- Aprendi muito com esta comunidade; espero que isso ajude outros, pois muitos aqui já me ajudaram antes.
- Novamente, este é meu primeiro instrutível e todo e qualquer feedback seria muito apreciado. Se alguém fizer algo com isso, por favor, me avise; Eu adoraria ver aonde a comunidade leva isso.
Um agradecimento especial à minha avó por tudo o que ela fez por mim ao longo da minha vida. Nunca poderei pagar você de volta, mas vou tentar o meu melhor.
Primeiro prêmio no Raspberry Pi Contest 2017