
Prefácio
Viajando pela Internet, me deparei com uma categoria desinteressante de brinquedos - “clickers”. Fiquei especialmente "satisfeito" com o Office Clicker . A estupidez é certamente absoluta, mas há algo nela. Você pode escrever um script que será exibido em meu lugar, mas isso é muito comum. Decidi criar um clicker de hardware, mas não apenas um clicker de hardware, mas um clicker de lâmpada quente! Interessante? Eu peço um corte!
Circuito "tubo" quente
O esquema me veio à mente de forma não trivial, baseava-se em uma luz de farol alto (que orgulhosamente chamo de “lâmpada” abaixo):
Denominações de detalhes:- R1 = 10 KOhm (multivoltas);
- R2 = 5 ohms (5 watts);
- R3 = 470 OM (0,25 W);
- R4 = 100 Ohms (0,25 W);
- C1 = 47 μF (25 V).
O princípio de operação do circuito é o seguinte:- A “lâmpada” esfriou (esfria);
- Tensão U1 <U2;
- O comparador fornece um sinal de disparo ao transistor T1;
- O transistor T1 está aberto;
- Os contatos do relé estão fechados;
- Uma corrente começa a fluir através da "lâmpada" => ela aquece;
- A resistência da "lâmpada" aumenta;
- A tensão U1 aumenta e se aproxima de U2;
- Quando U1> U2, o comparador para de sinalizar para T1;
- O transistor T1 está fechado;
- Os contatos do relé estão abertos;
- U1> U2, mas gradualmente U1 diminui;
- GOTO 1.
A frequência do sinal gerado depende de:- constante de tempo t = R5 * C1;
- tempo de aquecimento (e resfriamento) da "lâmpada".
Alterando a tensão U2, alteramos o tempo de aquecimento da "lâmpada", respectivamente - quanto mais U2, menor a frequência.O resistor R4 e o diodo zener D1 (para tensão 3,3V) são usados para gerar um sinal de controle para o próximo nó - a placa Arduino Duo.


Interface
Como você já entendeu, escolhi a placa Arduino Duo como a placa de interface entre o relé "tube" e o computador.O princípio de operação é muito simples:- quando o transistor V1 é fechado no circuito “clicker”, o Arduino recebe um sinal de controle de 3,3V, quando o transistor está aberto - 0V;
- Arduino interpreta 3.3V como um guia para pressionar LMB;
- O Arduino interpreta 0V como um guia para liberar o LMB.
Aqui está o programa para o Arduino que escrevi sobre isso:#define VACUUM_LINE 13
void setup()
{
pinMode(VACUUM_LINE, INPUT_PULLUP);
Mouse.begin();
}
void loop()
{
if (digitalRead(VACUUM_LINE) == HIGH)
{
Mouse.press();
delay(10);
}
if (digitalRead(VACUUM_LINE) == LOW)
{
Mouse.release();
delay(10);
}
}
Teste
Em vez de mil palavras, sugiro assistir a um vídeo:Obrigado pela atenção! Espero que meu artigo tenha ajudado a melhorar seu humor!