Farol de LED - Arduino

7442 단어 arduino
Uma das coisas mais legais de mexer com Arduino é ver seu código "ganhando vida". Primeira LED que acende é uma vitória.



Um bom example pra começar a brincar com luzes no Arduino é justamente fazer um semáforo. A ideia é simples, três cores: vermelho, amarelo e verde sendo acesas em sequência. Ainda é possível adicionar um modo de atenção com um amarelo piscante.

O projeto abaixo é um pouco maior, em termos de componentes e linhas de código, mas o princípio é o mesmo. Eu fiz um cruzamento onde o farol de uma das ruas só acende se o farol da outra estiver fechado

구성 요소 목록:
1 – Arduino Uno R3(유사)
4 - LED의 na cor vermelha
4 - LED의 na cor amarela
4 - LED의 na cor Verde
12 – 220Ω 저항기

Pra ficar mais fácil, eu defini um nome para cada LED e sua honoriva porta:

#define red1    13
#define yel1    12
#define green1  11
#define red2    10
#define yel2    9
#define green2  8
#define red3    7
#define yel3    6
#define green3  5
#define red4    4
#define yel4    3
#define green4  2


Assim, na hora de fazer a instalação, ou seja, informar ao Arduino qual porta será usada e com qual finalidade, ficará mais fácil:

void instalaLed()
{   
  pinMode(red1, OUTPUT);
  pinMode(yel1, OUTPUT);
  pinMode(green1, OUTPUT);

  pinMode(red2, OUTPUT);
  pinMode(yel2, OUTPUT);
  pinMode(green2, OUTPUT);

  pinMode(red3, OUTPUT);
  pinMode(yel3, OUTPUT);
  pinMode(green3, OUTPUT);

  pinMode(red4, OUTPUT);
  pinMode(yel4, OUTPUT);
  pinMode(green4, OUTPUT);

}


설치()를 무효화하는 방법보다 설치 및 정보 제공 방법을 선호합니다. Acredito que fica mais organizado.

O esquema do projeto ficou assim:


Eu 크리에이 6 방법:

void rua1e3Aberta()


Neste método o tráfego entre as ruas 1 e 3 está livres, com suas 각각의 LED's verdes ligadas. Nas ruas 2 e 4, o farol está fechado.

void rua1e3Fechando()


Neste método, começa a transição de sinalização. O vermelho das ruas 2 e 4 permanece ligado, entretanto, neste momento os faróis verdes são desligados e os faróis amarelos das ruas 1 e 3 são acesos, indicando que o ciclo está próximo de fechar.

void tudoFechado()


Eu poderia simplesmente migrar do vermelho para o verde, e liberar o tráfego na outra rua, mas achei que ficaria abrupto. Fiz esse método para manter os quatro faróis vermelhos ligados por alguns segundos, antes de chamar a próxima sequência.

rua2e4Aberta e rua2e4Fechando


São basicamente os mesmos métodos das ruas 1 e 3, com o mesmo comportamento, só que agora reference 또는 outro lado do cruzamento.

void tudoDesligado()


Achei que seria interessante um método que eu poderia desligar todas as luzes, antes de chamar o Amarelo Piscante. Este método serve pra isso.

void amareloPiscante()


Este é o sinal de alerta para tirar o pé do acelerador e passar com calma e atenção no cruzamento. Neste método, as luzes amarelas se alternam entre ligado e ligado em um looping que será executado 10 vezes.

Para ver o projeto funcionando, acesse o link no meu Tinkercad

O código fonte completeto está no meu GitHub:

좋은 웹페이지 즐겨찾기