Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Neste Instructable, vou mostrar como você pode fazer uma câmera IP remota a partir de componentes que você pode comprar facilmente no Ebay, Banggood ou qualquer outro fornecedor econômico. Eu queria que a câmera fosse portátil, razoavelmente compacta e funcionasse na minha rede doméstica.
Etapa 1: o design
Escolhi usar um Arduino Mega em vez de um Arduino Uno porque precisava de 2 portas seriais e, embora pudesse emular uma segunda no Uno, não era tão confiável em velocidades mais altas. Eu escolhi o menor pacote do ESP8266, o ESP-01, para economizar espaço. Para armazenar as imagens, usei um adaptador de cartão microSD Sainsmart. Para uma câmera, eu escolhi o ArduCAM Mini 2MP porque ele tem um FIFO embutido, bem como uma lente ajustável para focar a imagem. Para conectá-lo à placa usei um cabo CAT5 de seção curta, pois ele tinha o número certo de condutores e o conector foi feito para ser uma maneira fácil de conectar e desconectar a câmera da blindagem. Também me permitiu apontar facilmente a câmera em diferentes direções ou adicionar extensões ao cabo.
Usei o Fritzing para capturar o esquema e o layout do PCB. As placas foram feitas pela PCBWay, mas qualquer fabricante capaz de aceitar arquivos Gerber pode fazer as PCBs.
Materiais
- Arduino Mega
- Escudo PCB em branco
- Cabo de programação USB
- 12 V DC, 250 mA ou mais, plugue de 2,1 mm, adaptador de alimentação positivo de pino central
- ESP8266 (ESP-01)
- Placa de Programação ESP8266
- ArduCAM Mini 2MP
- Módulo leitor de cartão microSD + cartão microSD
- AMS1117-33 (regulador de tensão linear 3,3)
- mosfet de canal n (para conversão de nível)
- 4 resistores de 10kΩ
- Capacitor 50V 100 uF
- Conector de rede RJ45 vertical
- Cabo CAT5 e conector (ou algum outro cabo de 8 condutores)
- um coletor fêmea de linha dupla de 8 pinos (para ESP-01)
- um cabeçalho fêmea de linha única de 6 pinos (para o leitor de cartão microSD)
- Separador de nylon de 12 mm (para suportar o leitor de cartão microSD)
- 3 cabeçalhos masculinos de 1 pino (para pontos de teste)
- um cabeçalho macho de 2 pinos (para pontos de teste)
- um cabeçalho macho de 3 pinos (para pontos de teste)
- Capa de acrílico Arduino Mega (opcional)
Ferramentas necessárias
- Ferro de solda
- Solda
- Cortadores nivelados
- Multímetro
- Crimpador RJ45 (se um cabo existente com conector não estiver disponível)
Etapa 2: atualizar o ESP8266
Para piscar o ESP8266, segui um guia da All About Circuits. Eu atualizei o ESP8266 com o conjunto de comandos AT 2.1.0 e SDK versão 1.1.0, que pode ser encontrado aqui com a ferramenta de flash ESP8266. Também usei o PuTTY para verificar se o firmware foi instalado corretamente. O esquema do circuito que usei para programar o ESP8266 também pode ser encontrado acima. Construí a placa de programação em uma pequena protoplaca, pois não valia a pena fabricar uma placa de circuito impresso. Observe que a pinagem do conector de comunicações na placa de programação corresponde à pinagem do adaptador serial para USB que usei.
Materiais para Flashing
- Adaptador serial para USB (CP2102)
- Conversor USB A para B (para que eu pudesse usar um cabo USB comum)
- Protoplaca de 40 x 60 mm, passo de 2,54 mm
- Soquete de terminal de parafuso de 6 pinos
- Cabeçalho fêmea de fila dupla de 8 pinos
- 2 botões (momentâneos)
- AMS1117-33 (regulador de tensão linear 3,3)
- Capacitor eletrolítico 16V 47 uF
- 2 resistores de 10kΩ
- vários pedaços de fio
Etapa 3: montagem do escudo
Há muitas maneiras de soldar os conectores, mas escolhi primeiro conectá-los ao Mega e, em seguida, colocar a placa de circuito impresso no topo. Então eu preguei os pinos de canto com solda e verifiquei o alinhamento, antes de soldar todos os pinos. Depois que todos os pinos foram soldados, removi o PCB do Mega e soldei o resto dos componentes. Comecei do meio do quadro e trabalhei para o lado de fora. Antes de ligar a placa pela primeira vez, verifiquei se não havia curtos entre os pinos ou entre a alimentação e o aterramento.
Etapa 4: Programação do Arduino Mega
Usei uma versão ligeiramente modificada de uma biblioteca SparkFun ESP8266 para o Arduino (biblioteca modificada anexada). Peguei trechos de código do SparkFun (cartão microSD, servidor da web ESWP8266) e ArduCAM. O código é estruturado da seguinte maneira; quando você acessa o site do navegador, ele tira uma foto, salva no cartão microSD e a envia para o navegador. Uma versão básica do site está anexada (index.txt). O site deve ser colocado no cartão microSD. Depois de fazer o upload do código, verifique se tudo está se conectando corretamente, abrindo o monitor serial e lendo as mensagens de inicialização. Um clipe do monitor serial na inicialização está anexado. Mostra que a câmera, o leitor de cartão microSD e o ESP8266 estão conectados, que o ESP8266 está conectado ao WIFI e um endereço IP foi atribuído.
Etapa 5: executando o servidor da Web de imagens
Para executar o servidor web pela primeira vez, execute o IDE do Arduino e defina a porta COM para aquela à qual o Mega está conectado. Abra o monitor serial e defina a taxa de transmissão para a qual o Mega está definido. Assim que você abrir o monitor serial, ele imprimirá algumas informações de inicialização e, em seguida, imprimirá o IP atribuído ao ESP8266 (sublinhado em azul na primeira imagem). Neste ponto, eu loguei em meu roteador e pré-atribuai o endereço IP ao qual o ESP8266 estava conectado permanentemente, para que o ESP8266 sempre recebesse aquele endereço. Por exemplo, para ver imagens do meu servidor web, sempre uso 192.168.1.135 no meu navegador. Posso fazer isso em qualquer dispositivo conectado à minha LAN / WLAN. Em anexo está uma imagem de amostra e provavelmente é tão boa quanto poderia ser para uma câmera de 2 megapixels. Freqüentemente, são necessárias algumas iterações para focar corretamente a imagem. Uma câmera com foco automático seria bom, talvez essa seja minha atualização futura.