Índice:
- Etapa 1: Equipamento
- Etapa 2: configuração do microcontrolador
- Etapa 3: configuração do MATLAB
- Etapa 4: Funções
- Etapa 5: Teste
- Etapa 6: Conclusão
Vídeo: Modelo de ar condicionado Arduino: 6 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Como parte de uma demonstração da capacidade de nossa equipe de criar um modelo de dispositivo de trem inteligente para fins de marketing, o objetivo era criar um sistema no qual um sensor de temperatura lê os dados do circuito e converte as informações em um valor de temperatura que seja ao mesmo tempo exibido em uma tela iluminada e focado se um ventilador liga ou desliga. O objetivo é ajudar a acomodar as condições de pilotagem dos passageiros por meio de um sistema automatizado que também atua para exibir a temperatura nas proximidades.
Usando um kit de microcontrolador Arduino e as versões 2016b e 2017b do MATLAB, pudemos demonstrar esses resultados com relativo sucesso.
Etapa 1: Equipamento
Kit de microcontrolador com o seguinte:
-Sparkfun Red Board
-Sparkfun Breadboard
-LCD Board
-Potenciômetro
-Sensor de temperatura
-Servo
- Adaptador USB / Arduino
-Jumper Fios (25, mínimo)
Laptop (Windows 10) com entrada USB
Objeto impresso em 3D (opcional)
Etapa 2: configuração do microcontrolador
Considere o seguinte: todo o sistema é composto de unidades únicas em que cada uma aplica um fator significativo para o resultado final. Por esse motivo, é altamente recomendável criar uma imagem do circuito antes de prender os fios em uma bagunça complicada.
Imagens de cada modelo individual podem ser encontradas no manual do kit de ferramentas do microcontrolador ou em seu site em
Comece fixando o sensor de temperatura, potenciômetro, servo-conectores e LCD na placa. Recomenda-se que, devido ao tamanho do LCD e à necessidade do número de fios para ele, ele seja colocado em sua própria metade da placa de ensaio com as outras peças na outra metade e que o potenciômetro fique em uma área para alguém facilmente gire seu botão.
Para referência:
LCD: c1-16
Servo: i1-3 (GND + -)
Sensor de temperatura: i13-15 (- GND +)
Potenciômetro: g24-26 (- GND +)
Em seguida, comece a conectar os fios do jumper a cada pino das unidades do microcontrolador; embora arbitrário no grande esquema geral, o design foi criado com estas conexões importantes:
Conectando o potenciômetro ao LCD: f25 - e3
Fio GND do servo: j1 - Entrada digital 9
Sensor de temperatura GND: j14 - Entrada analógica 0
Entradas LCD: e11-e15 - Entrada digital 2-5
e4 - Entrada Digital 7
e6 - Entrada Digital 6
(Observação: se for bem-sucedido, as duas luzes na borda do LCD devem piscar e o potenciômetro pode ajudar a ajustar o brilho depois de receber energia do adaptador.)
Opcional: um objeto impresso em 3D foi usado como parte de um requisito. Para evitar danos potenciais às partes mais frágeis, uma caixa estendida foi colocada como uma capa ao redor do LCD. As medidas da tela LCD provaram ser de aproximadamente 2-13 / 16 "x 1-1 / 16" x 1/4 "e, portanto, apenas a altura foi alterada significativamente. Se uma impressora 3D estiver disponível, considere adicionar um objeto pessoal, embora desnecessário. Além disso, esteja ciente de que as medições podem ser diferentes.
Etapa 3: configuração do MATLAB
Instale uma versão mais atualizada do MATLAB (2016a em diante), disponível no site da MathWorks https://www.mathworks.com/products/matlab.html?s_tid=srchtitle. Depois de aberto, vá para Add-Ons na guia Home e baixe "Pacote de suporte MATLAB para hardware Arduino" para que os comandos do microcontrolador fiquem acessíveis.
Depois de concluído, um teste pode ser feito para encontrar a conectividade do microcontrolador ao computador / laptop de alguém. Após conectá-los com o adaptador USB do kit de ferramentas, insira o comando "fopen (serial ('nada'))."
Uma mensagem de erro aparecerá informando o conector como "COM #", que será necessário para criar um objeto arduino, desde que seja a mesma entrada o tempo todo.
Como o LCD não tem uma conexão direta com a biblioteca do Arduino, uma nova biblioteca deve ser criada para exibir as mensagens. Uma recomendação é criar um arquivo LCDAddon.m a partir do exemplo de LCD encontrado na janela de ajuda do MATLAB após pesquisar "Arduino LCD" e colocá-lo na pasta + arduinoioaddons, ou usar a pasta compactada anexada e copiar todo o seu conteúdo para o mencionado pasta.
Se for bem-sucedido, o código para criar um objeto Arduino no MATLAB é mostrado abaixo.
a = arduino ('com #', 'uno', 'Bibliotecas', 'ExemploLCD / LCDAddon');
Etapa 4: Funções
Crie uma função MATLAB. Para as entradas, usamos as variáveis "eff" e "T_min"; para saídas, embora desnecessárias no design geral, usamos a variável "B" como uma forma de conter os dados dos resultados. A entrada "eff" permite o gerenciamento da velocidade máxima do servo, e a entrada "T_min" controla a temperatura mínima desejada. O valor "B" deve, portanto, produzir uma matriz que contém três colunas para o tempo, a temperatura e a eficiência do ventilador. Além disso, como um bônus aos detalhes, o código listado abaixo também tem uma declaração if, de modo que a velocidade do ventilador será reduzida em cinquenta por cento quando se aproximar da temperatura mínima desejada.
Se todas as entradas e cabos de ligação forem colocados exatamente e assumindo que a porta da conexão do Arduino seja COM4 e o nome da função seja "fanread", o código a seguir deve ser suficiente:
função [B] = fanread (Tmin, eff)
limpar a; limpar lcd; a = arduino ('com4', 'uno', 'Bibliotecas', 'ExemploLCD / LCDAddon');
t = 0; t_max = 15; % tempo em segundos
lcd = addon (a, 'ExampleLCD / LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
inicializarLCD (lcd, 'Linhas', 2, 'Colunas', 2);
se ef> = 1 || e <0
erro ('O ventilador não será ativado a menos que o ef seja definido entre 0 e 1.')
fim
para t = 1: 10% número de loops / intervalos
claro c; % evita repetir o erro
v = readVoltage (a, 'A0');
TempC = (v-0,5) * 100; estimativa de% para faixas de tensão 2,7-5,5 V
se TempC> Tmin se TempC
c = ['Temp', num2str (TempC, 3), 'C Ligado'];
writePWMDutyCycle (a, 'D9', eff / 2); % liga o servo na metade da velocidade
spd = 50;
outro
c = ['Temp', num2str (TempC, 3), 'C Ligado'];
writePWMDutyCycle (a, 'D9', eff); % liga o servo na velocidade dada
spd = 100;
fim
outro
c = ['Temp', num2str (TempC, 3), 'C Desligado'];
writePWMDutyCycle (a, 'D9', 0); % desligado se já estiver ligado
spd = 0;
fim
printLCD (lcd, c);
pausa (3); % três segundos decorridos por loop
tempo (t) = t. * 3;
tempplot (t) = TempC;
act (t) = spd;
subtrama (2, 1, 1)
plot (tempo, tempplot, 'b-o')% gráfico de linha
eixo ([0 33 0 40])
xlabel ('Tempo (segundos)')
ylabel ('Temperatura (C)')
aguentar
plot ([0 33], [Tmin Tmin], 'r-')
aguentar
plot ([0 33], [Tmin + 2 Tmin + 2], 'g-')
subtrama (2, 1, 2)
bar (tempo, ação)% gráfico de barras
xlabel ('Tempo (segundos)')
ylabel ('Eficiência (%)')
fim
B = transpor ([tempo; gráfico temporário; ato]);
fim
Agora que a função está concluída, é hora de testar.
Etapa 5: Teste
Agora teste a função na janela de comando inserindo "function_name (input_value_1, input_value_2)" e observe. Certifique-se de que nenhum objeto Arduino já exista; em caso afirmativo, use o comando "clear a" para removê-lo. Se ocorrerem erros, verifique se algum conector está no lugar errado ou se as entradas digitais ou analógicas erradas são usadas. Espera-se que os resultados variem, embora isso possa ser causado pela colocação de certos cabos de ligação e do sensor de temperatura.
As expectativas dos resultados devem produzir mudanças no desempenho do servo e nos dados no LCD. A cada intervalo de três segundos, uma linha de texto deve exibir a temperatura em graus Celsius e se o ventilador está ou não ativo enquanto funciona em velocidade total, meia velocidade ou nenhuma velocidade. Os dados provavelmente não devem ser consistentes, embora, se desejar resultados mais diversos, coloque o valor "Tmin" próximo à temperatura média produzida pelo circuito.
Etapa 6: Conclusão
Embora seja uma tarefa árdua de realizar por tentativa e erro, os resultados finais provaram ser bastante interessantes e satisfatórios. Um sistema como tal ajuda a ilustrar quantas máquinas complicadas, ou mesmo algumas de suas peças, podem ser vistas como uma coleção de peças independentes colocadas juntas para atingir um objetivo específico.
Devido ao design bastante simplista do projeto final, aqueles que têm interesse em melhorar seu desempenho podem fazer ajustes e alterações no produto final que podem tornar o projeto melhor e mais elaborado. No entanto, ele revela fraquezas no circuito, como a ativação do servo resultando em flutuações esporádicas na leitura da tensão do circuito, o que pode fazer com que o sistema nunca produza resultados idênticos. Além disso, houve problemas em ver uma mudança na velocidade do servo quando "eff" é definido como 0,4 e superior. Caso fosse utilizado um sensor de temperatura e umidade, o modelo final seria mais complicado, porém apresentaria valores mais consistentes. No entanto, esta é uma experiência que mostra que uma máquina complexa pode funcionar como uma combinação de suas peças simples.
Recomendado:
Ar condicionado de balde faça você mesmo: 13 etapas (com fotos)
Ar condicionado de balde DIY: Eu moro em um lugar bastante quente no sul da Índia e meu espaço de trabalho fica abafado. Encontrei uma solução bacana para esse problema transformando um balde velho em um ar-condicionado DIY. O modelo do AC é muito simples, de baixo custo mas eficaz. O ba
Chave automática do ar condicionado: 5 etapas
Chave Automática do Ar Condicionado: Como existem várias coisas diferentes que as pessoas precisam fazer no dia a dia, muitas vezes esquecemos alguns pequenos detalhes, às vezes causando graves consequências, esquecer de desligar o ar condicionado é uma delas. Enquanto as pessoas acidentalmente
Dispositivo de ar condicionado de ligação automática: 5 etapas
Dispositivo de ar condicionado de ativação automática: este dispositivo é denominado Dispositivo de ar condicionado de ativação automática. Quando estiver na sua sala quente e tiver acabado de terminar a escola, estiver cansado demais para ligar o ar condicionado, este dispositivo é perfeito para você. O mecanismo deste dispositivo é muito simples. C
Capacete de ciclismo com ar condicionado (feito de computadores reciclados): 5 etapas (com fotos)
Capacete de ciclismo com ar condicionado (feito de computadores reciclados): Este capacete com os ventiladores nos orifícios suga o ar da sua cabeça e você pode senti-lo subir pelo rosto e descer pelos lados da cabeça! Muito bom para andar de bicicleta em dias de sol e muito calor. Os LEDs também ajudam nas pedaladas noturnas! Todas as partes
Ar condicionado portátil (USB ou bateria): 4 etapas
Ar condicionado portátil (USB ou bateria): Este simples instrutível é projetado para remover o INFERNO de sua mesa, ou cama, ou o que quer que seja. Se você tem um PC ou uma ventoinha de fonte de alimentação de shopping por aí e é usado para tomar um sorvete barato em 11/07, então isto é para você! fácil, simples de fazer e você c