Automação de arejar uma sala através de uma janela e o que veio dela
Tudo começou com o fato de a sala esquentar se o computador estivesse funcionando; a sala não era frequentemente ventilada devido à minha ausência ou preguiça (embora pareça que você só precisa abrir a janela). Em suma, eu decidi fazer esse "dispositivo". Em essência, era necessário um sensor de temperatura, um mecanismo para abrir e fechar uma janela e automação que controla tudo isso.Eu já estava mimando um pouco com os controladores na época, então decidi que precisava de um controlador e do sensor de temperatura mais simples (é um termistor) - maravilhoso, disse que foi feito, comprei em uma loja local em uma placa de ensaio, tentei a automação mais simples como aquecer o sensor respiração - o LED acende, o sensor esfria - o LED apaga. Aconteceu algo como isto:
Ótimo, funciona! surgiu a próxima pergunta - a respiração está clara, mas eu gostaria de valores específicos de temperatura, depois de um longo cálculo dos valores de tensão e convertê-los em temperatura, obtive valores de temperatura mais ou menos precisos que observei em um monitor de computador usando valores da porta COM. Também se alegrou com essa conquista (parece que uma pessoa precisa de alegria). Então surgiu uma idéia, mas eu teria que olhar para os valores de temperatura sem um computador e, de fato, um dispositivo separado que funcione por conta própria e se você precisar se comunicar com um computador - parece que será interessante. A variante com indicadores de sete segmentos varreu de alguma forma muito rapidamente - não é do tipo interessante. decidiu concluir no LCD.
Eu usei esse indicador, comecei a entender o que estava lá e como era, o que eles precisavam lá, testei em uma placa de ensaio e cheguei a essa conclusão - eles precisam de inicialização inicial e isso depende do indicador específico usado e, ao observar atrasos, pensei que se eu um sensor de temperatura analógico com conversão de tempo, o indicador também possui todos os tipos de atrasos e você também precisa abrir o mecanismo da janela, provavelmente no motor, que também precisará calcular lá.Em geral, decidi criar um módulo separado que lida com a saída de informações (mais tarde foi chamado de módulo de saída de informações de texto MVTI), e o controlador principal pensará no fato de que não haverá nenhum atraso, além disso, economiza memória. Decidi usar a interface da porta COM padrão (RS-232). A tarefa era a seguinte: eu recebo os caracteres no módulo RS-232, os envio para o LCD, antes de iniciar toda a inicialização necessária, todos os atrasos necessários são observados, todos os tipos de verificação são feitos, como o número de caracteres para imprimir 40 caracteres, transições para uma nova linha e a tabela de correspondência de caracteres que codificam dados provenientes do COM porta e LCD, eu realmente queria que a conclusão fosse em russo.Eu lidei com esse problema - criei um circuito, parti o painel e tive que começar a fabricá-lo, algo que a tecnologia LUT deu errado para mim, e decidi experimentá-lo na China, ler um artigo inteiro sobre ele no hub e decidir solicitá-lo no mesmo local em que eles escreveram no artigo, o site do fabricante do quadro. Eles têm um pedido mínimo de 5 peças e adicionam 1 ao apêndice de graça (em geral, por qualquer preço, é mais lucrativo do que o pedido de nós). Encomendei essas 5 peças, pensei que seria útil se eu ainda fizesse esses módulos, eles se tornam universais, você pode simplesmente colocar um cabo de modem no computador para zerar e produzir alguma coisa (aplique energia da unidade). Um mês depois, eles me enviaram placas, soldaram os elementos de lá, escreveram um programa para o controlador que estava no módulo, testaram e eu gostei da primeira aproximação, depois o ajustaram silenciosamente quando encontrei algo. A versão final saiu assim.
Agora eu tenho a temperatura no LCD na forma: Temperatura 23 graus, surgiu um novo problema, ela pulou com o menor sopro da brisa, como abrir a porta da janela, ele andou sozinho - calculou a média, acabou sendo normal. A temperatura é certamente boa, mas eu também queria chegar lá a tempo. Tentei fazer isso, adicionei o código e descobri que há falhas quando a energia é desligada - ela se perde e precisa ser configurada sempre. Não havia experiência suficiente trabalhando com controladores e, com o tempo, não funcionou muito bem, os segundos foram diferentes e os erros rapidamente se esgotaram. Depois de tentar isso, comecei a pensar no que fazer, o Arduino desenvolveu e apareceram módulos baratos em tempo real, e decidi sobre isso.Peguei o Arduino Leonardo com 2 portas UART (uma para um módulo de saída de texto, a segunda para uma conexão padrão com um computador), um módulo em tempo real. Não havia problemas com bibliotecas, havia código suficiente na Internet, escrevi o código rapidamente, testei e aproveitei a vida - o tempo passou e a data estava lá também, e quando desliguei, o tempo não deu errado, era uma vida maravilhosa. Mas aqui eu não sentei e não gostei na tela pequena do LCD, o tempo é muito pequeno, seria necessário criar alguma coisa e decidi criar um módulo de saída de tempo com indicadores de sete segmentos. Não encontrei um indicador de sete segmentos com dois pontos de bom tamanho. Usei 2 LEDs duplos e 2 LEDs para pontos, decidi fazer o mesmo que o anterior, mas não para torná-lo com frequência, mas com chips de memória que armazenam o estado de horas e minutos, ou seja,o tempo é gravado uma vez por minuto e os pinos são livres para outras tarefas. acabou aqui é um módulo:
Então ele encontrou um gabinete adequado, comprou uma fonte de alimentação para Ali, montou tudo - o olho agrada:

O próximo passo é o mecanismo que abre a janela. Minha janela de madeira se abre ao lado de uma janela estreita e comprida até o topo. Aqui, não demorou muito tempo até eu escolher uma opção mais ou menos adequada para um sistema que lida com abrir e fechar uma janela. No último momento, o mecanismo fica assim:
Tudo foi coletado por meios improvisados, a tração foi tirada do mecanismo da porta do armário de barras (ainda de design soviético), o motor de passo da impressora (driver no chip L293), a parte plástica branca foi impressa em uma impressora 3D. Várias vezes o design, iluminado e refeito, atualmente desempenha sua função, não muito satisfeito com ele - então pretendo modernizá-lo. Por exemplo, um programa foi gravado para que, a uma temperatura superior a 27, abra uma janela, feche a janela a menos de 24 graus, mas planeje-se ventilar no tempo com foco na temperatura: se a temperatura diminuir durante a ventilação, o arejamento será pequeno no tempo, mais frequentemente, o próprio arejamento e vice-versa .Link para o vídeo de abertura e fechamento da janelaPor fim: ele se tornou um dispositivo bastante peculiar, com a possibilidade de introduzir nele algum tipo de funcionalidade, como ligar sensores de luz do tempo - uma espécie de casa nano-inteligente.PS: Vou ouvir opiniões, idéias, comentários, etc. Source: https://habr.com/ru/post/pt389665/
All Articles