Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Animações LED controladas pela web com Raspberry Pi e Arduino

Componentes e suprimentos

Raspberry Pi 3 Modelo B
× 1
Arduino UNO
Arduino Nano também pode ser usado. Arduino Mega pode ser necessário para conduzir mais pixels de LED.
× 1
NeoPixel strip
Qualquer faixa de LED WS8212 pode ser usada.
× 1

Aplicativos e serviços online

Arduino IDE

Sobre este projeto





Visão geral do projeto


Arduino Light Animation (ALA) é uma biblioteca Arduino para controlar LEDs e executar animações coloridas com o mínimo de esforço. A biblioteca oferece mais de 30 animações predefinidas e várias paletas de cores. Para obter mais informações sobre a biblioteca ALA, você pode visitar meu blog.

Este projeto apresenta uma placa Raspberry Pi 3 que fornecerá uma página web que permite controlar as animações, cores e velocidade de um smartphone ou PC usando o navegador web. Aqui está um pequeno vídeo do AlaWeb em ação.

Existem alguns componentes necessários para este projeto.
  • WS8212 Fita LED RGB :Esta faixa contém vários LEDs RGB que podem ser endereçados individualmente usando uma interface de um fio, permitindo controle total sobre a cor de cada LED RGB.
  • Arduino :A famosa placa de microcontrolador executará minha biblioteca ALA para acionar a faixa de LED que recebe os comandos do Raspberry PI pela porta serial USB. Você pode usar a placa Arduino Uno, Nano e Mega.
  • Framboesa PI :Este pequeno PC fornecerá a página da web para controlar os parâmetros de iluminação e animação.

O projeto é bastante simples se você estiver familiarizado com as placas Arduino e Rapberry PI. Dividi o projeto em duas etapas para guiá-lo durante o processo de configuração.





Fiação


As fitas de LED WS8213 são muito fáceis de conectar. Você só precisa de energia suficiente para acionar todos esses LEDs. Para tiras muito curtas (não mais que 10 LEDs), você pode até alimentá-los diretamente de sua porta USB, mas para tiras mais longas você deve fornecer uma boa fonte de alimentação. Para começar, sugiro usar o pino do Arduino 5V para alimentar a faixa de led como você pode ver no vídeo acima.
  • PIN do Arduino GND para WS2812 GND
  • pino do Arduino 5V para WS2812 5V
  • Arduino pino 6 para WS2812 Ctrl / Din pin

Se você deseja conduzir mais pixels, você deve fornecer mais potência. O cálculo é fácil. Cada LED RGB consome 60mA em branco brilhante total. Por exemplo, para acionar uma faixa de 2 m de comprimento com 60 LED / metro, você precisará de uma fonte de alimentação de 5 V fornecendo 2m * 60pixel / m * 60mA =7,2 A.

Conecte sua fonte de alimentação, a placa Arduino e a tira WS8212 assim.
  • Power GND para Arduino GND e WS2812 GND
  • Ligue 5V para o pino Arduino 5V e WS2812 5V
  • pino 6 do Arduino para o pino CTRL WS2812

Observe que ao alimentar o pino de 5 V do Arduino, você está fornecendo energia ao Arduino, portanto não precisa conectá-lo a uma segunda fonte de alimentação no conector cilíndrico. Tenha muito cuidado ao usar este esquema de conexão porque o pino de 5 V ignora o regulador de tensão e as proteções. Para mais detalhes, você pode ler este guia.

Para obter mais detalhes sobre o esquema de fiação das tiras de LED WS8212, leia este guia.





Configuração do Arduino


Conecte sua placa Arduino à porta USB do seu PC. Abra o Arduino IDE e inicie o Gerenciador de Biblioteca (Sketch> Incluir Biblioteca> Gerenciar Bibliotecas) para instalar a biblioteca ALA mais recente .

Abra o RgbStripSerial exemplo (Arquivos> Exemplos> ALA> RgbStripSerial) e verifique se os NUM_PIXELS a definição constante corresponde ao número de leds em sua faixa RGB. Lembre-se de que se você deseja dirigir mais de 10 pixels, deve usar o esquema de conexão aprimorado.

Agora você pode enviar o esboço para o seu quadro pressionando Ctrl + U do Arduino IDE ou selecionando Upload ação no menu Sketch. Se você tiver problemas para enviar o esboço, verifique o tipo de placa e a porta no menu Ferramentas.

Abra o Arduino Serial Monitor (Tools> Serial Monitor) e você verá uma mensagem de boas-vindas como esta.

Defina a linha ‘Newline’ terminando no canto inferior direito e certifique-se de que a taxa de transmissão esteja definida para 9600.

Agora tente os seguintes comandos (em negrito) sem espaços:
  • A =101 - ligue os leds
  • A =251 - execute uma animação de ‘scanner larson’
  • P =2 - define uma paleta de arco-íris
  • A =242 - outra animação

Isso é legal né?

Você pode experimentar os diferentes comandos e combinações seguindo esta breve referência:
  • A =[código de animação] - Defina a animação. Os códigos de animação disponíveis estão listados no arquivo de cabeçalho AlaLed.h.
  • B =[brilho] - Defina o brilho. Deve estar no intervalo [0-100].
  • D =[duração] - Defina a duração em milissegundos do ciclo de animação. Os valores padrão estão entre 500 e 5000.
  • C =[cor] - Defina a cor. Deve ser uma representação RGB hexadecimal como E8A240.
  • P =[paleta] - Defina a paleta. Deve estar no intervalo [0-5].

Agora vamos controlar as animações do seu smartphone.





Configuração do Raspberry PI


Nesta parte do projeto, configuraremos a placa Rapberry Pi para executar um pequeno servidor da web para controlar a faixa de LED de um navegador da web. Observe que o mesmo aplicativo pode ser executado em qualquer PC com Python 3 instalado.

O pré-requisito é que o Raspberry PI já esteja configurado e executando o Raspbian OS mais recente (eu testei com o Stretch) e conectado à internet.

Primeiro, precisamos instalar algumas bibliotecas para Python 3 com o seguinte comando:
  sudo pip3 install pyserial flask  

Crie um diretório inicial para o seu projeto:
  mkdir / home / pi / AlaWebcd / home / pi / AlaWeb  

Baixe o repositório git AlaWeb no diretório LightStrip e extraia-o.
  wget https://github.com/bportaluri/AlaWeb/archive/master.zipunzip master.zip  

Todo o software está pronto e configurado. Conecte a porta USB do Arduino ao Raspberry PI. O aplicativo AlaWeb que você acabou de baixar se comunicará com a placa Arduino por meio da conexão serial USB.
  cd AlaWeb-mastersudo python3 AlaWeb.py  

O aplicativo AlaWeb listará todas as portas seriais USB e tentará detectar o Arduino automaticamente. Se continuar em loop, interrompa a execução e tente passar o nome da porta da seguinte maneira (substituindo o ID da porta conforme necessário):
  sudo python3 AlaWeb.py / dev / ttyACM0  

Se tudo estiver bem, você deverá ver algo assim.

Abra um navegador da web e conecte-se ao URL exibido. Você obterá uma página da web cheia de botões que permitem controlar a faixa de LED de um navegador da web.

Aproveitar!


Código

AlaWeb
AlaWeb é o servidor da web tini escrito em Python e Flask para controlar as animações de um navegador da web.https://github.com/bportaluri/AlaWeb
ALA
Arduino Light Animation (ALA) é uma biblioteca para placas Arduino para simplificar o desenvolvimento de animações de luz usando LEDs e tiras de LED. Visite esta página para obter mais detalhes:http://yaab-arduino.blogspot.it/p/ala.htmlhttps://github.com/bportaluri/ALA

Esquemas


Processo de manufatura

  1. Faça um detector de incêndio em minutos com Samsung SAMIIO, Arduino UNO e Raspberry Pi
  2. Aeroponia com Raspberry Pi e sensor de umidade
  3. Construindo robôs com Raspberry Pi e Python
  4. Construa seu robô de streaming de vídeo controlado pela Internet com Arduino e Raspberry Pi
  5. Robô controlado pela Web Raspberry Pi com vídeo
  6. Painel LCD com Arduino para o simulador de vôo
  7. Switch / Painel de LED com Arduino para FS2020
  8. Arduino com Bluetooth para controlar um LED!
  9. Arduino Quadruped
  10. Controle do Servo Motor com Arduino e MPU6050