Índice:
- Etapa 1: Componentes e ferramentas necessárias
- Etapa 2: Eletrônica
- Etapa 3: Montagem
- Etapa 4: Software
- Etapa 5: configuração
- Etapa 6: Operação
Vídeo: Botão rotativo do codificador: 6 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:34
Este é um controle remoto rotativo baseado em um codificador rotativo. Possui os seguintes recursos.
- Operado por bateria com consumo de corrente muito baixo quando ativado
- Ativação automática quando o controle é girado
- Sono automático após um período de inatividade
-
Ações configuráveis quando o controle é alterado
- Acesso simples à web com posição relatada
- Relatório MQTT
- Controle do dimmer da lâmpada Lighwaverf
- Tamanho muito pequeno
- Baixo custo
- Atualização de software via wi-fi
- Gestão de acesso à rede wi-fi
Etapa 1: Componentes e ferramentas necessárias
Os seguintes componentes são necessários
Caixa - invólucro impresso em 3D disponível em
www.thingiverse.com/thing:3173779
- Módulo ESP-12F ESP8266
- Controle do codificador giratório (EC11) + botão giratório
- Botão deslizante liga / desliga
- Soquete de 3 pinos
- Bateria LIPO 400mAh 802030
- Refulator de tensão de 3,3 V (xc6203)
- Capacitor 220uF
- Resistores 1M, 4K7 (2)
- Díodo Schottky 1N5819 (2)
- Canal P MOSFET (AO3401)
- Fio de esmalte (soldável)
- Fio de engate
As seguintes ferramentas são necessárias
Ferro de solda de ponta fina
Etapa 2: Eletrônica
A eletrônica é baseada em um módulo ESP-12F. Uma pequena quantidade de componentes eletrônicos de suporte é usada para regular a bateria e permitir a ligação e desligamento automático.
O controle de energia é feito por meio do sinal EN no ESP-12F, que deve ser alto para que o módulo seja ligado. Isso é mantido baixo pelo resistor de 1M, mas pode ser elevado pelo transistor MOSFET. O capacitor 4u7 dá um mínimo de vários segundos de ativação, mesmo depois que o MOSFET é desligado.
O transistor MOSFET é inicialmente ligado por um dos interruptores de codificação rotativos sendo aterrado conforme ele gira. Ele pode então ser mantido por um sinal GPIO quando o código ESP8266 é inicializado.
O MOSFET desliga quando o sinal GPIO é liberado após a inatividade por um período de tempo limite ser detectada.
Etapa 3: Montagem
Eu fiz as seguintes etapas de montagem.
- Imprimir caixa 3D
- Coloque o interruptor liga / desliga e o carregador de 3 pinos. Use resina para fixar no lugar e prenda as etiquetas internas ao comprimento mínimo
- Prenda as pernas no controle giratório para que fiquem alinhadas com a base para minimizar a altura
- Conecte 4 fios para controlar. Um lado do interruptor de botão é conectado ao conector central dos interruptores de codificação.
- Fixe o codificador na caixa e prenda com sua porca de montagem. Adicionar botão
- Monte o regulador no capacitor e conecte os fios dele aos pinos de alimentação no módulo ESP-12F
- Solde outros componentes eletrônicos na parte de trás do módulo ESP-12F. Usei fio de cobre esmaltado para ligá-los. Um curto toco de fio foi usado no pino EN, pois ele possui vários componentes conectados a ele.
- Solda no fio do gancho para ligar / desligar
- A solda na bateria leva ao ponto do carregador e alimenta a partir do interruptor liga / desliga
- Solda no fio da chave liga / desliga para a entrada do regulador.
- Conecte os 4 fios do codificador à placa.
Observe que usei componentes smd para manter o tamanho o menor possível. Se estiver usando componentes maiores, você provavelmente precisará aumentar a altura do gabinete 3d. Da mesma forma, se você usar uma bateria de tamanho diferente. As dimensões são facilmente ajustáveis no arquivo SCAD.
Etapa 4: Software
O software para este projeto está disponível em
É um projeto baseado em Arduino, então configure um ambiente de desenvolvimento esp8266 Arduino. Você pode querer definir as senhas para WifiManager e atualização de software no arquivo ino para algo mais sensato.
Ele deve ser compilado no IDE Arduino ESP8266 e carregado em série no módulo.
O primeiro uso iniciará um ponto de acesso que deve ser conectado a um telefone ou tablet. Veja o código para senha. O navegador no telefone ou tablet deve ser usado para acessar 192.168.4.1, o que permitirá a seleção do SSID e senha wi-fi local. Isso só precisa ser feito uma vez ou se a rede wi-fi mudar. A partir de então, o módulo se conectará à rede wi-fi local, se necessário.
Alguns arquivos de suporte também devem ser carregados. Eles estão na pasta de dados do git. Eles podem ser carregados acessando ip / upload. Uma vez que eles tenham sido carregados, ip / edit pode ser usado para fazer uploads adicionais de uma maneira mais fácil.
Etapa 5: configuração
A configuração está contida no arquivo rotaryEncoderConfig.txt
Isso tem dois parâmetros básicos (nome do host e tempo limite de inatividade em milissegundos mais a configuração de até 3 codificadores rotativos.
Embora esta versão use apenas um codificador, a biblioteca usada permite até três.
Cada codificador possui uma linha no arquivo de configuração com vários parâmetros.
- pino1, pino2, pinos GPIO do botão
- valor mínimo do codificador
- valor máximo do codificador
- valor da posição inicial (o último valor também é lembrado quando ativado.
- tipo de ação a ser executada 0 = Nenhum, 1 = Web GET, 2 = UDP / Lightwave, 3 = MQTT
- o intervalo é a duração mínima em ms entre as ações
- o modelo de ação é o modelo básico para a ação
- par1, par2, par3, par4, par5 são parâmetros adicionais
O modelo de ação tem variáveis que são substituídas antes de usar
- $ p posição rotativa
- $ d direção rotativa
- Número do codificador $ e (0 é o primeiro)
- $ l faz uma função lightwave
- $ x, $ y, $ z, $ u, $ v substituto par1 - par5
- $ t substitute change counter
- $ c substitute vírgula
Etapa 6: Operação
Depois que o wi-fi é configurado, o controle é ativado clicando em uma etapa de qualquer maneira. Isso não muda a posição nem desencadeia uma ação.
A partir de então, qualquer rotação acionará a ação configurada. O intervalo mínimo de ação limitará potencialmente as ações realizadas conforme o controle é girado. Por exemplo, se o intervalo mínimo for 2.000 ms, uma rotação rápida pode enviar apenas a primeira e a última alteração. A última posição sempre acionará uma ação, portanto, se um dimmer estiver sendo controlado, seu valor refletirá a posição final, mesmo se algumas etapas intermediárias forem perdidas.
Operação LightwaveRF
Um exemplo é mostrado no arquivo de configuração fornecido. A ação básica é UDP para o link Lightwaverf. O IP do host e o número da porta são colocados em par1 e par2. A string Room / Device é colocada no par3.
O link deve primeiro ser emparelhado com o link para permitir que ele aceite comandos do endereço mac do esp8266. Para fazer isso, coloque um arquivo chamado initLink, txt no sistema de arquivo e envie um comando girando o controle uma etapa (após a ativação). Isso enviará um comando de emparelhamento ao link, que deve ser confirmado pressionando um botão no link. O arquivo initLink é excluído automaticamente.
Manutenção
O dispositivo pode ser colocado em um modo de manutenção onde não desligará automaticamente, ligando com o controle giratório pressionado. Para retirá-lo deste modo, basta desligar e ligar novamente.
Recomendado:
Braço do robô controlado por codificador rotativo: 6 etapas
Braço do robô controlado por codificador rotativo: visitei howtomechatronics.com e vi o braço do robô controlado por bluetooth lá. Não gosto de usar bluetooth, além de que vi que podemos controlar servo com codificador rotativo, então redesenhei-o para poder controlar o robô braço usar codificador rotativo e registrá-lo
Substituição do codificador rotativo ISDT Q6: 4 etapas
Substituição do codificador rotativo ISDT Q6: Este tutorial é para ajudar as pessoas cujas codificadores Q6 falharam ao longo do tempo e agora estão inutilizáveis. O meu começou a rolar em direções aleatórias e erráticas, e mesmo depois de refazer as juntas de solda e limpar o codificador com álcool, ele ainda estava defeituoso
Power Timer com Arduino e codificador rotativo: 7 etapas (com imagens)
Temporizador de energia com Arduino e codificador rotativo: este temporizador de energia é baseado no temporizador apresentado em: https: //www.instructables.com/id/Timer-With-Arduin… um módulo de fonte de alimentação e um SSR (relé de estado sólido ) foram anexados a ele. Cargas de energia de até 1KW podem ser operadas e com alterações mínimas o
Como: um codificador rotativo sem contato: 3 etapas
Como fazer: um codificador rotativo sem contato: Esta nota de aplicação descreve como projetar uma chave rotativa ou codificador de alta confiabilidade usando um Dialog GreenPAK ™. Este projeto da chave é sem contato e, portanto, ignora a oxidação e o desgaste por contato. É ideal para uso ao ar livre onde há muito tempo
Codificador Rotativo - Entenda e use-o (Arduino / outro ΜControlador): 3 etapas
Codificador Rotativo - Entenda e use-o (Arduino / outro ΜControlador): Um codificador rotativo é um dispositivo eletromecânico que converte o movimento rotacional em informações digitais ou analógicas. Ele pode girar no sentido horário ou anti-horário. Existem dois tipos de codificadores rotativos: codificadores absolutos e relativos (incrementais)