Bem-vindo de volta à série do projeto de laptop de código aberto! No atualização anterior, discutimos como integrar os diversos sensores e a própria montagem eletrônica na moldura do display do laptop.
Decidimos qual tecnologia de PCB gostaríamos de usar e como seria o hardware de montagem para o PCB da webcam. Nesta atualização, vamos focar nossa atenção no design eletrônico e de PCB do módulo da webcam.
PCB da webcam/sensor totalmente montado
Vamos começar entendendo como o PCB da webcam/sensor deve ser interligado com a placa principal do sistema. Temos quatro conexões lógicas que devem ser estabelecidas com a placa-mãe:
A primeira é a webcam, ou interface do sensor de imagem. O sensor de imagem que usaremos é um Omnivision OV2740. Este sensor fornece uma imagem de alta definição 1080p a 60 quadros por segundo. O fluxo de dados de imagem é transmitido por uma interface MIPI-CSI2. Uma interface serial padrão SCCB é usada para controlar o sensor. Algumas linhas de controle globais também são necessárias ao lado desta interface.
Geralmente, tanto webcams internas quanto externas são conectadas via uma interface USB que suporta o protocolo UVC. A especificação UVC, abreviação de USB Video Device Class, permite que dispositivos de transmissão de vídeo sejam usados sem um driver específico para o hardware. Isso possibilita a operação plug-and-play de webcams externas. Outro benefício do uso da interface USB é que apenas um par de dados, além de uma conexão de energia e terra, é necessário para interagir com o dispositivo. Isso minimiza a quantidade de sinais que precisam ser roteados dentro do sistema, o que reduz a complexidade dos conectores e aumenta a confiabilidade de todo o sistema. Outra vantagem de um dispositivo ou módulo USB UVC é que ele pode ser substituído por qualquer outro dispositivo compatível com USB UVC, o que, no caso do nosso design de laptop, permitiria atualizar a placa da webcam para uma versão mais nova facilmente.
Há um problema associado ao uso de um dispositivo compatível com USB UVC em um design de código aberto, no entanto: Para converter a saída CSI do sensor de imagem em uma interface compatível com USB UVC, é necessário um ASIC com um firmware personalizado e ISP. Existem várias soluções integradas disponíveis de grandes fornecedores de ICs, como Realtek ou SONIX Technology. No entanto, a documentação para esses ICs não está disponível gratuitamente e, portanto, não é a escolha certa para um laptop de código aberto.
Uma exceção é o Controlador de Câmera EZ-USB™ CX3 MIPI CSI2 para USB 5 Gbps da Infineon. Este CI vem com documentação acessível, bem como um SDK para projetar um firmware personalizado para o sensor de imagem. O EZ-USB™ CX3, no entanto, é voltado para aplicações USB3.0 para sensores de imagem de maior resolução ou maior taxa de quadros. Com um preço superior a 10€ por CI em volume, este componente seria excessivamente especificado para a nossa aplicação. Como este CI vem em um BGA de 10mm X 10mm com 121 pinos, não conseguiríamos encaixá-lo na placa da webcam de qualquer maneira.
Portanto, por enquanto, estaremos roteando toda a interface CSI2 fornecida pelo sensor de imagem diretamente para a placa-mãe. Temos duas opções; ou usar o espaço disponível para implementar nosso próprio conversor USB UVC ou interfacear o sensor de imagem diretamente com o CPU/PCH e lidar com o processamento de sinal de imagem por meio de firmware no CPU host. Neste momento, a primeira opção é mais provável de ser implementada. Exploraremos isso mais a fundo em uma atualização posterior.
Outras interfaces que precisamos rotear para a placa-mãe são as seguintes:
Estamos usando dois microfones MEMS para gravar áudio estéreo. Esses microfones MEMS fornecem uma saída PWM (modulação de densidade de pulso) que pode ser lida pelo PCH ou controlador embutido na placa-mãe.
O sensor de luz ambiente oferece uma interface I2C que também precisa ser roteada para o controlador embutido na placa-mãe.
Por último, mas não menos importante, temos que rotear a saída das teclas de toque para o controlador embutido. Essas saídas indicam ao controlador embutido se a interface WiFi ou câmera foi desativada no hardware.
Agora que sabemos quantos pinos precisamos alocar para a interface entre a placa PCB da webcam e a placa principal, podemos escolher um conector de placa para placa adequado. Para manter o espaço necessário para o conector o menor possível, usaremos um conector de passo fino.
Para esta versão da placa da webcam, usaremos um conector Molex SlimStack 505550 com 40 pinos com passo de 0,4mm.
Conector Molex SlimStack
Estaremos utilizando um FPC de dupla camada para rotear o sinal da PCB da webcam para a placa-mãe. Embora o conector SlimStack seja uma solução que economiza espaço, os testes mostraram que desconectar este conector é muito difícil enquanto o painel de exibição está posicionado em cima do FPC.
FPC conectado com painel de exibição instalado em cima
Para facilitar a troca da PCB da webcam com o painel de exibição instalado, vamos substituir este conector de placa para placa por um conector FPC direto. Um candidato interessante para tal conector pode ser a série Hirose FH35C, que apresenta uma densidade de pinos muito alta, bem como boa força de retenção.
Os sensores de toque capacitivos TTP232-CA6 usados na placa da webcam são ICs de detecção de dois canais da Tontek. Como um chip fornece dois canais, cada IC lida com a detecção dos botões de ativar e desativar para as funcionalidades da Webcam, WiFi e Microfone.
Em cada entrada dos ICs de detecção, um capacitor opcional em um footprint 0201 é colocado. A sensibilidade do IC de toque pode ser ajustada com esses capacitores opcionais.
Após os circuitos integrados de detecção, um trinco é usado para armazenar a última pressão do botão. Na implementação atual do trinco, o dispositivo inicia com a câmera, WiFi e funcionalidade do microfone desativados após o ciclo de energia. Especialmente para a funcionalidade WiFi, este comportamento pode ser indesejável, o que é o motivo pelo qual o estado padrão para este canal pode ser invertido posteriormente.
Canal de detecção tátil para a funcionalidade WiFi
Os microfones e sensores de luz ambiente que selecionamos em uma atualização anterior do projeto foram implementados de acordo com a ficha técnica. Ambos os sensores são alimentados por um LDO de 3,3V separado que fornece uma tensão de alimentação gerada a partir da entrada de energia de 5V que é encaminhada para a placa da webcam.
O sensor de luz ambiente está localizado em uma pequena placa adicional que contém um capacitor de desacoplamento e os resistores de pull-up do barramento I2C.
Microfone e sensor de luz ambiente
O sensor de imagem da webcam é implementado da seguinte forma. As linhas de alimentação para o sensor são todas geradas localmente por três pequenos LDOs. A série TLV740P LDO é uma solução muito compacta e econômica. O pacote usado é o 1mm X 1mm X2SON, o que resulta em um tamanho de solução geral muito pequeno.
O consumo de energia do sensor de imagem é baixo o suficiente para que cada trilho de energia possa ser gerado reduzindo o trilho global de 5V usando reguladores lineares.
Esquemático do sensor de imagem da webcam
O rascunho final do esquemático da PCB da webcam pode ser visto no visualizador do Altium 365:
Além de teclas sensíveis ao toque e sensores, a PCB da webcam também contém um LED RGB para cada saída do canal de detecção. LEDs RGB foram escolhidos para poder ajustar finamente a cor dos ícones retroiluminados alterando o valor do resistor usado para cada cor individual.
Um pequeno MOSFET de N-Channel de nível lógico em um pacote SOT-883 é usado para aplicar um escurecimento PWM global a todos os LEDs na placa da webcam. O mesmo sinal PWM que será usado para mudar o brilho da tela também pode ser usado para controlar os LEDs dos ícones retroiluminados na moldura da tela. Dessa forma, os ícones não serão distrações caso uma baixa luminosidade da tela seja escolhida.
Com o esquemático finalizado, podemos agora passar todas as informações para o editor de PCB e começar a rotear a placa.
Fique atento para a próxima atualização, onde forneceremos insights valiosos sobre o layout da PCB da placa da webcam — não perca os últimos detalhes que aprimorarão seu entendimento sobre o design e a funcionalidade!