Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
BLOCOS D1M adicionam caixas táteis, etiquetas, guias de polaridade e breakouts para os populares Wemos D1 Mini SOC / Shields / Clones. Os transmissores / receptores RF permitem que o ESP8266 acesse a automação residencial / industrial existente. Este invólucro fornece interrupções para receptor e / ou transmissor 433/315 MHz.
A motivação inicial para criar este BLOCO D1M foi a necessidade de um RF Sniffer para outro projeto semelhante a este. Em vez de comer pão, pensei em comer minha própria comida de cachorro. Isso apresentou um problema interessante: o D1M BLOCK precisava ser usado para os módulos de 433 MHz e os de 315 MHz, portanto, os pinos digitais usados para os breakouts não podiam ser conectados fisicamente. É por isso que os pinos do transmissor e do receptor podem ser selecionados usando os conectores e jumpers machos. Alguns dos escudos posteriores (como este escudo de botão) também permitem pinos selecionáveis.
Um quarto pino (antena) foi quebrado para o transmissor; é flutuante e fornecido apenas para acomodar 4 pinos.
Este instrutivo percorre a montagem do bloco e, em seguida, testa os módulos RF usando os BLOCOS WIFI D1M.
Etapa 1: Materiais e Ferramentas
Agora existe uma lista completa de Bill of Materials and Sources.
- O escudo Wemos D1 Mini Protoboard e cabeçotes femininos de pino longo
- Peças impressas em 3D.
- Um conjunto de D1M BLOCK - Instale Jigs
- 2 fora da cabeçada 4P feminino
- 1 cabeçada 40P masculino
- 2 capas de jumpers
- Fio de conexão.
- Adesivo de cianoacrilato forte (de preferência com pincel)
- Pistola de cola quente e bastões de cola quente
- Solda e ferro
- Fio de cobre estanhado.
Etapa 2: soldar os pinos da plataforma (usando o SOCKET JIG)
Como os pinos machos D1 Mini não ficarão expostos neste BLOCO D1M, o gabarito de soquete pode ser usado. Como os pinos machos excedentes serão cortados, todos os pinos podem ser soldados na posição inicial.
- Alimente os pinos de cabeçalho pela parte inferior da placa (TX superior esquerdo no lado superior).
- Alimente o gabarito sobre o coletor de plástico e nivele ambas as superfícies.
- Vire o gabarito e o conjunto e pressione firmemente a plataforma em uma superfície plana e dura.
- Pressione a placa firmemente no gabarito.
- Solde os 4 pinos de canto usando o mínimo de solda (apenas alinhamento temporário dos pinos).
- Reaqueça e reposicione a placa / pinos se necessário (placa ou pinos não alinhados ou prumo).
- Solde o resto dos pinos.
Etapa 3: montagem do escudo
- O excesso de pinos machos dos conectores pode ser cortado próximo à solda.
- Do coletor 40P macho, corte 2 5P e 2 4P.
- Usando uma placa de ensaio como modelo, posicione e solde os pinos machos no protoboard.
- Usando uma placa de ensaio como modelo, posicione os pinos machos 4P temporários e os pinos fêmeas 4P e solde os pinos fêmeas no protoboard.
- Rastreie e solde as linhas digitais com fio de cobre estanhado (amarelo).
- Coloque dois fios pretos no GND da parte inferior e solde na parte superior.
-
Rastreie e solde as linhas GND no lado inferior (preto).
- Coloque dois fios vermelhos em 5V e 3V3 da parte inferior e solde na parte superior.
- Rastreie e solde as linhas de força na parte inferior (vermelho).
Etapa 4: colar o componente à base
Não abordado no vídeo, mas recomendado: coloque uma grande quantidade de cola quente na base vazia antes de inserir e alinhar rapidamente a placa - isso criará chaves de compressão em ambos os lados da placa. Faça um teste de colocação das proteções na base. Se a colagem não for muito precisa, pode ser necessário fazer um pequeno polimento da borda do PCB.
- Com a superfície inferior do invólucro da base apontando para baixo, coloque o coletor de plástico do conjunto soldado através dos orifícios na base; o (o pino TX ficará do lado da ranhura central).
- Coloque o gabarito de cola quente sob a base com os cabeçotes de plástico colocados em suas ranhuras.
- Coloque o gabarito de cola quente em uma superfície plana e firme e empurre cuidadosamente o PCB para baixo até que os cabeçotes de plástico atinjam a superfície; isso deve ter os pinos posicionados corretamente.
- Ao usar a cola quente, mantenha-a afastada dos pinos do coletor e a pelo menos 2 mm de onde a tampa será posicionada.
- Aplique cola em todos os 4 cantos do PCB garantindo o contato com as paredes da base; permitir a infiltração para ambos os lados do PCB, se possível.
Etapa 5: colar a tampa na base
- Certifique-se de que os pinos não tenham cola e que os 2 mm superiores da base não tenham cola quente.
- Pré-ajuste a tampa (teste), certificando-se de que nenhum artefato de impressão esteja no caminho.
- Tome as precauções adequadas ao usar o adesivo de cianoacrilato.
- Aplique cianoacrilato nos cantos inferiores da tampa garantindo a cobertura da crista adjacente.
- Encaixe rapidamente a tampa na base; apertando feche os cantos, se possível (evitando a lente).
- Depois que a tampa estiver seca, dobre manualmente cada pino para que fique no centro do vazio, se necessário (veja o vídeo).
Etapa 6: Adicionar as etiquetas adesivas
- Aplique a etiqueta de pinagem na parte inferior da base, com o pino RST no lado com ranhura.
- Aplique a etiqueta identificadora no lado plano sem ranhuras, com os pinos vazios sendo a parte superior da etiqueta.
- Pressione as etiquetas com firmeza, com uma ferramenta plana, se necessário.
Etapa 7: Teste com o (s) BLOCO (s) WIFI D1M
Para este teste, você precisará de:
- 2 blocos D1M RFTXRX
- 2 BLOCOS WIFI D1M off
- 1 transmissor desligado de 433 MHz com pinagem de sinal, VCC, GND (tolerante a 3,3 V)
- 1 receptor desligado de 433 MHz com pinagem de VCC, Singal, Signal, GND (tolerante a 5V).
Eu sugiro obter vários transmissores e receptores, pois há falhas ocasionais.
Preparação do transmissor:
- No Arduino IDE, instale a biblioteca rf-switch (zip anexado)
- Carregue o esboço de envio em um D1M WIFI BLOCK.
- Desconecte o cabo USB
- Anexe um D1M RFTXRX BLOCK
- Adicione um transmissor ao cabeçalho fêmea 4P central, conforme mostrado.
- Certifique-se de que um jumper seja colocado no pino identificado na função enableTransmit no esboço (D0 ou D5 ou D6 ou D7 ou D8)
Preparação do receptor:
- Carregue o esboço de recepção em um D1M WIFI BLOCK.
- Desconecte o cabo USB
- Anexe um D1M RFTXRX BLOCK
- Adicione um receptor ao cabeçalho 4P fêmea externo, conforme mostrado.
- Certifique-se de que um jumper seja colocado no pino identificado na função enableReceive no sketch (D1 ou D2 ou D3 ou D4)
Executando o teste:
- Conecte o conjunto do receptor a um cabo USB e conecte o seu PC DEV.
- Abra a janela do console com a porta COM correta e a taxa de transmissão serial do esboço (era 9600).
- Conecte o conjunto do transmissor a um cabo USB e conecte seu DEV PC (outra porta USB).
- Você deve começar a obter as transmissões registradas na janela do console
Uma das https://github.com/sui77/rc-switch/ demos com pinos incluídos para D1M RFTXRX BLOCK
/* |
Exemplo para diferentes métodos de envio |
https://github.com/sui77/rc-switch/ |
modificado para pinos D1M RFTXRX BLOCK |
*/ |
#incluir |
RCSwitch mySwitch = RCSwitch (); |
voidsetup () { |
Serial.begin (9600); |
// O transmissor está conectado ao Arduino Pin # 10 |
mySwitch.enableTransmit (D0); // D0 ou D5 ou D6 ou D7 ou D8 |
} |
voidloop () { |
/ * Veja o exemplo: TypeA_WithDIPSwitches * / |
mySwitch.switchOn ("11111", "00010"); |
atraso (1000); |
mySwitch.switchOff ("11111", "00010"); |
atraso (1000); |
/ * Mesma opção acima, mas usando código decimal * / |
mySwitch.send (5393, 24); |
atraso (1000); |
mySwitch.send (5396, 24); |
atraso (1000); |
/ * Mesma opção acima, mas usando código binário * / |
mySwitch.send ("000000000001010100010001"); |
atraso (1000); |
mySwitch.send ("000000000001010100010100"); |
atraso (1000); |
/ * Mesmo switch acima, mas código de três estados * / |
mySwitch.sendTriState ("00000FFF0F0F"); |
atraso (1000); |
mySwitch.sendTriState ("00000FFF0FF0"); |
atraso (1000); |
atraso (20000); |
} |
ver rawd1m_rftxrx_send_demo.ino hospedado com ❤ por GitHub
Uma das https://github.com/sui77/rc-switch/ demos com pinos incluídos para D1M RFTXRX BLOCK
/* |
Exemplo para receber |
https://github.com/sui77/rc-switch/ |
Se você quiser visualizar um telegrama, copie os dados brutos e |
cole-o em |
modificado para pinos D1M RFTXRX BLOCK |
*/ |
#incluir |
RCSwitch mySwitch = RCSwitch (); |
voidsetup () { |
Serial.begin (9600); |
mySwitch.enableReceive (D4); // D1 ou D2 ou D3 ou D4 |
} |
voidloop () { |
if (mySwitch.available ()) { |
output (mySwitch.getReceivedValue (), mySwitch.getReceivedBitlength (), mySwitch.getReceivedDelay (), mySwitch.getReceivedRawdata (), mySwitch.getReceivedProtocol ()); |
mySwitch.resetAvailable (); |
} |
} |
ver rawd1m_rftxrx_receive_demo.ino hospedado com ❤ por GitHub
Etapa 8: Próximas etapas
- Programe seu D1M BLOCK com D1M BLOCKLY
- Confira Thingiverse
- Faça uma pergunta no Fórum da comunidade ESP8266