Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Muitas estações de trem hoje não são seguras devido à falta de segurança, barreiras e aviso da chegada do trem. Vimos a necessidade de consertar isso. Para resolver este problema, criamos o Safer Better. Usamos sensores de vibração, sensores de movimento e um sistema de alarme de emergência em um Arduino Uno para adicionar segurança a uma estação ferroviária.
Suprimentos necessários:
- Arduino Uno
- Jumper Wires
- Sensor de movimento PIR
- Sensor de vibração piezoelétrico
- Ecrã LCD
- Alto-falante Piezo
- Interruptor Físico
- Potenciômetro Suave
- Resistor de 330 ohm
Por: Jacob Wimmer, Olivia Crawley, Jin Kim
Etapa 1: conecte a placa
Instalamos nosso Arduino como no diagrama acima.
Etapa 2: Suporte LCD para impressão 3D
Imprimimos em 3D um suporte para nossa tela LCD para melhor visibilidade.
Etapa 3: conectar ao Arduino no Matlab
A primeira etapa para escrever nosso código foi conectar nossa placa Arduino ao Matlab. Isso é feito criando um objeto Arduino. Usamos o seguinte código:
a = arduino ('/ dev / tty.usbmodem14201', 'Uno', 'bibliotecas', 'ExampleLCD / LCDAddon');
Etapa 4: Escreva o código no Matlab
Criamos um programa em Matlab para rodar nosso Arduino. Depois de inicializar nossa tela LCD, escrevemos um código para controlar nossa estação de trem. Usamos entradas como um sensor de vibração, sensor de movimento e interruptor físico para produzir uma variedade de saídas. Essas entradas, saídas e o código correspondente serão explicados nas etapas abaixo.
Etapa 5: sensor de vibração
O sensor de vibração é um sensor analógico e, portanto, usa a função ReadVoltage do Matlab.
val_vibro = readVoltage (a, 'A0'); T
A função readVoltage retornou uma faixa de valores, mas determinamos que um valor acima de 0,5 era uma vibração decente e então usamos isso como nosso valor base. Se a tensão estiver acima de 0,5, significa que o trem está entrando na estação. Quando este valor é detectado, uma mensagem é enviada para a tela LCD. A mensagem na tela LCD é uma forma de comunicar às pessoas na estação que um trem está chegando.
Escrevemos em nossa tela LCD usando o seguinte código:
se val_vibro <= 0,5;
elseif val_vibro> 0,5;
printLCD (lcd, 'Train In 3 Min');
fim
Etapa 6: sensor de movimento PIR
O sensor de movimento PIR é usado para garantir que o operador conheça os obstáculos ao longo dos trilhos do trem. O sensor tira fotos e compara a imagem mais recente com a última tirada e se alguma coisa se mover, o Matlab retornará um valor de 1. Quando algo é detectado nos trilhos, uma interface gráfica do usuário (GUI) aparece para notificar o operador do trem de que algo está nos trilhos. O operador tem então a opção de parar o trem ou continuar. Após selecionar a opção desejada, uma mensagem de confirmação é exibida.
O seguinte código foi usado para o sensor de movimento:
if val_opt == 1;
d1 = 'Foi detectado um objeto nas pistas da estação';
op_input = questdlg (d1, 'Mensagem do operador', 'Pare o trem', 'Continue andando', 'Continue andando');
b1 = strcmp (op_input, 'Parar o trem');
b2 = strcmp (op_input, 'Continue movendo');
se b1 == 1
msgbox ('Trem Parando')
pausa (3)
elseif b2 == 1
msgbox ('Train Continuing')
pausa (3)
fim
elseif val_opt == 0;
fim
Etapa 7: Troca Física
Também achamos que as estações de trem precisam ter mais recursos de segurança. Decidimos ter um interruptor que soaria um alarme na estação. Fizemos isso usando um interruptor físico. Quando esta chave está ligada, um alarme soa por meio de um alto-falante.
Fizemos isso com o seguinte código:
if s_val == 1 for i = 1:10
playTone (a, 'D10', 1800, 1)
pausar (.1)
playTone (a, 'D10', 2000, 1)
pausar (.1)
fim
fim