Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Este instrutível irá ensiná-lo a criar um sistema de luzes para avisar os passageiros em espera quando um trem se aproxima e também como fazer uma mensagem aparecer em um laptop quando o trem estiver na estação. Um som de quando o trem passa pela estação será gerado junto com uma série de luzes LED piscando. Tudo isso pode ser feito com um Raspberry Pi.
Etapa 1: suprimentos
Um computador
MatLab 2016 ou mais recente
Baixe o pacote Raspberry Pi
impressora 3d
Estação de trem impressa em 3D para abrigar o framboesa pi
Raspberry Pi com os seguintes componentes:
2 sensores infravermelhos
5 luzes LED à sua escolha de cor
11 fios
2 resistores
Resistores de 200-300 Ohm
USB Chord para conectar o computador ao raspberry pi
Etapa 2: Projetar o circuito para entradas e saídas desejadas
Usando circuitos básicos, as luzes e o emissor e receptor de infravermelho devem ser conectados ao Raspberry Pi. As luzes LED vermelhas são conectadas ao aterramento e, em seguida, conectadas aos pinos 4, 5, 6 e 7 do GPIO. O receptor infravermelho é conectado ao pino 21 do GPIO e o emissor infravermelho é conectado ao pino 5V.
Etapa 3: Desenvolva a codificação para satisfazer o resultado desejável
As linhas mais importantes do código são as linhas 12 e 16, que iniciam as caixas de diálogo. A linha 18, a instrução if, está lendo se os sensores infravermelhos têm uma obstrução entre eles e se eles estão obstruídos, isso significa que o trem está passando, a buzina soará e as luzes se acenderão. Se a afirmação for falsa, nada acontecerá porque o trem não está se aproximando.
Código: %% Header
% Projeto Microcontrolador - Trem Noturno
% John Brown, Trent Payne, Karsten Parker; Seção 9
% 3 de outubro de 2017
% Descrição do projeto: Projete um microcontrolador que receba duas entradas e
% produz duas saídas para ajudar a melhorar os aspectos da configuração de um trem modelo
% Método de Solução: Use vários recursos e Matlab para melhorar aspectos do
% configuração do trem do modelo.
%% Setup-First Input / Output
enquanto verdadeiro
a = 0;% inicializa a
enquanto readDigitalPin (rpi, 21) == 1
a = 1;% impede que o código leve seja executado antes do código da caixa de diálogo da pergunta
question = ('O trem está parando na estação. Deseja tocar a buzina?');
question_title = ('Train Horn');
resp = questdlg (question, question_title, 'yes', 'no', 'no');% abre uma caixa de diálogo de perguntas com duas opções e uma resposta padrão
tf = strcmp (resp, 'sim');% compara o comprimento da matriz de caracteres da resposta à matriz de caracteres sim.
se tf == 1% se resp = 'sim'
[Y, FS] = audioread ('train_horn.m4a');% pega o arquivo de áudio e o converte em dados de amostra, y, e taxa de amostragem, FS.
som (Y, FS)% comando de som obtém dados amostrados e taxa de amostragem e gera som
msgbox ('A buzina do trem está soando!')
pausa (2)
pausa
else% if resp = 'no', tf será lógico 0 já que não e sim matrizes de caracteres têm comprimentos diferentes
msgbox ('A buzina do trem não tocou!')
pausa (2)
pausa
fim
fim
enquanto readDigitalPin (rpi, 21) == 1 && a == 1% começa enquanto o loop é ligado e a caixa de diálogo da pergunta é executada
% Este primeiro segmento de código acende as luzes em ordem.
writeDigitalPin (rpi, 4, 0)
pausa (0,25)
writeDigitalPin (rpi, 5, 0)
pausa (0,25)
writeDigitalPin (rpi, 6, 0)
pausa (0,25)
writeDigitalPin (rpi, 7, 0)
pausa (0,25)
% Este segundo segmento de código apaga as luzes em ordem.
writeDigitalPin (rpi, 4, 1)
pausa (0,25)
writeDigitalPin (rpi, 5, 1)
pausa (0,25)
writeDigitalPin (rpi, 6, 1)
pausa (0,25)
writeDigitalPin (rpi, 7, 1)
pausa (0,25)
end% end while loop
fim
Etapa 4: escute o trem virando a esquina e observe as luzes avisando para dar um passo para trás
Conforme o trem se aproxima e atravessa os sensores infravermelhos, as luzes se apagam, disparando a buzina do trem para que os passageiros cheguem e se afastem da borda; no entanto, também haverá uma caixa de diálogo que aparecerá perguntando ao condutor do trem: "O trem está se aproximando da estação, o trem está parando?", então um segundo diz "A buzina do trem está soando" e, se a buzina não estiver puxada, uma terceira caixa de diálogo dirá: "a buzina não tocou."
Etapa 5: configuração final
Para completar o projeto, todo o sistema deve ser combinado na estação de trem azul que foi impressa em 3D para a estética. A estação de trem simboliza onde os passageiros estarão quando o trem chegar. Agora eles estarão seguros graças ao sistema de alerta do Trem Noturno.