Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03
Propósito:
Temperatura: Este instrutível irá ensiná-lo a configurar e programar um Arduino RedBoard (usando o MATLAB) para detectar a temperatura de uma ferrovia. Quando uma temperatura insegura para os passageiros é atingida, uma mensagem de aviso soa, as campainhas disparam e um sinal de aviso acende.
Contador de passageiros: Esta parte irá ensiná-lo a usar um botão para contar os passageiros e soar um aviso quando a capacidade máxima for atingida.
Recursos:
- Usa o botão para contar os passageiros que entram no trem
- Usa TMP36 (sensor de temperatura) para detectar a temperatura da ferrovia
- Usa uma luz LED vermelha para avisar a estação ferroviária
- Usa campainhas para soar o alarme
- Envia um e-mail de alerta com um gráfico de temperatura x tempo
- Mensagens de aviso pop-up no MATLAB
Etapa 1: Materiais e suprimentos
- 1 laptop
- MATLAB 2017
- Baixe o Arduino Toolbox
- Sparkfun RedBoard
- 1 cabo de alimentação
- Breadbord
- 14 fios
- 1 Piezo Buzzer
- 1 botão de pressão
- 2 resistores de 10k ohm
- 1 sensor TMP36
- Luz LED vermelha
- Sinal impresso em 3D (opcional)
Etapa 2: Configuração da placa
Siga a configuração acima
Etapa 3: escrever o código
Loop While: para garantir que o código continue testando a temperatura e sentindo o status do botão (pressionado ou não), colocamos o código no loop while por um período de tempo especificado.
Usando o TMP36: Determinamos a temperatura lendo a tensão e convertendo-a em graus Fahrenheit, usando fatores de conversão. Em seguida, usamos uma instrução if para reproduzir um tom e soar / enviar alertas se a temperatura for maior ou igual à temperatura máxima definida
Usando o botão: com uma instrução if, podemos testar se o botão foi pressionado usando readDigitalPin. Este comando retornará um Booleano (1 ou 0). Se a resposta for 0, o botão foi pressionado e o contador de passageiros aumenta e exibe uma mensagem de boas-vindas. Então, quando a capacidade máxima é atingida, uma mensagem de aviso soa.
Etapa 4: copie o código
% De entradas: pressionando o botão, sensor de temperatura
% De saídas: luzes, campainhas, alerta de áudio, e-mails, gráficos
% Objetivo: Este produto foi projetado para ajudar a garantir a segurança e o conforto dos passageiros viajando de trem pelo deserto.
% De uso: Detectando o número de passageiros usando um botão, e% detectando o calor usando um sensor de temperatura e fazendo um gráfico e enviando os números de passageiros e o gráfico de temperatura para a estação de trem
configurePin (a, 'D2', 'pullup'); % em versões futuras usam configurePin
tempo = 200;
e = 0;
x = 0
enquanto tempo> 0
button_status = readDigitalPin (a, 'D2'); % é igual a zero quando o botão é pressionado, caso contrário, é igual a 1
tensão = readVoltage (a, 'A0');% pino depende de onde o colocamos
tempCelcius = (voltagem * 100) -50; % fornecido no manual do sensor
tempF (tempo) = (tempCelcius * 1.8) +32% da fórmula de conversão conhecida
máx = 120; % graus F
writeDigitalPin (a, 'D11', 1);
rem = mod (e, 2);
se tempF (tempo)> = max
writeDigitalPin (a, 'D11', 0);
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
pausa (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5)
pausa (.5)
writeDigitalPin (a, 'D9', 1);
playTone (a, 'D9', 2400,.5)
pausa (.5)
writeDigitalPin (a, 'D6', 1)
playTone (a, 'D6', 1000,.5)% toca "sirene"
z = 'Superaquecimento.m4a'; % Isto coloca o arquivo de som em uma variável
[dados, freq] = leitura de áudio (z); % Carrega dados do arquivo de som
o = audioplayer (dados, freq); % Cria um objeto para controlar a reprodução do arquivo de áudio
o.play ()% Toca arquivo de áudio
o.playblocking ()% Toca o arquivo e espera que ele termine
fim
if button_status == 0 && rem == 0
e = e + 1
msgbox ('Bem-vindo a bordo!');
elseif button_status == 0 && rem == 1
e = e + 1
msgbox ('Bienvenido a bordo!');
fim
se e == 5
writeDigitalPin (a, 'D11', 0);
se x == 0
playTone (a, 'D6', 600, 1);
s = 'Warning_EF.m4a'; % Isto coloca o arquivo de som em uma variável
[dados, freq] = audioread (s); % Carrega dados do arquivo de som
o = audioplayer (dados, freq); % Cria um objeto para controlar a reprodução do arquivo de áudio
% o.play ()% Toca arquivo de áudio
o.playblocking ()% Toca o arquivo e espera que ele termine
msgbox ('Capacidade máxima')
x = x + 1
fim
elseif e> = 6
playTone (a, 'D6', 2400, 0);
fim
tempo = tempo - 1;
% pausa (0,1);
% se e == 5 && max (tempF)> = 120
% tempo = 0
% fim
fim
ee = num2str (e)
t = [1: 200];
tempF2 = fliplr (tempF);
plot (t, tempF2);
título ('Tempo vs. Temperatura')
ylabel ('Temperatura (F)')
xlabel ('Tempo (s)')
saveas (gcf, 'tempplot.jpg')
mail = '[email protected]'
senha = 'Srsora123 #'
host = 'smtp.gmail.com'
setpref ('Internet', 'SMTP_Server', host);
setpref ('Internet', 'E_mail', mail);
setpref ('Internet', 'SMTP_Username', mail);
setpref ('Internet', 'SMTP_Password', senha);
props = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty ('mail.smtp.socketFactory.port', '465');
sendmail (mail, 'Hello Train Station! Existem tantos passageiros no trem', ee, 'tempplot.jpg')
Etapa 5: Resultados
Recomendado:
Bicicleta de estrada luz diurna e lateral visível 350mA (célula única): 11 etapas (com fotos)
Luz diurna e lateral para bicicleta de estrada de 350mA (célula única): esta luz para bicicleta tem LEDs âmbar frontais e de 45 ° direcionados a 350mA. A visibilidade lateral pode melhorar a segurança perto de cruzamentos. Âmbar foi selecionado para visibilidade diurna. A luz foi instalada na queda esquerda do guiador. Seus padrões podem ser disti
Detector e contador de relâmpagos: 8 etapas (com imagens)
Detector e contador de relâmpagos: Sempre quis fazer um detector de relâmpagos, mas achei o esquema do circuito um pouco além de minhas capacidades. Recentemente, enquanto navegava na internet, me deparei com um circuito muito legal que conta os relâmpagos conforme eles acontecem! Depois de olhar
Maleta de estrada barata: 8 etapas
Maleta barata: eu precisava de uma maneira de transportar meu amplificador sem que ficasse todo danificado. Eu ia fazer um rack de amplificador de madeira, colocar um tapete e rodas … mas não era isso que eu queria. Eu queria um rotomoldado legal que custava mais de US $ 100. Então
Controlador de ferro de solda de temperatura variável DIY de US $ 10: 3 etapas (com fotos)
Controlador de ferro de solda de temperatura variável DIY de US $ 10: Este instrutível mostrará como transformar seu ferro de solda "firestarter" Radioshack em uma versão de temperatura variável usando cerca de US $ 10 em peças. Tive essa ideia depois que comecei a levantar rastros em uma placa de circuito porque eu estava usando uma 30w
Reciclando seu interruptor de dimmer antigo como um controle de temperatura variável para seu ferro de soldar: 7 etapas
Reciclando seu interruptor de dimmer antigo como um controle de temperatura variável para seu ferro de soldar: Eu vi muitos controles de temperatura variável profissional para ferro de solda, mas muito caros. Então eu faço um com um interruptor dimmer antigo, tomada, placa de conexão e plugue que já era lixo e alguma caixa de interruptor de PVC velha que veio com ele e então