Pau de LED

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
Primeira versão do Pau de LED, ainda com arduino mega e fita de LED baseada no ws2811

WAT

1O Pau de LED é uma máquina insana feita com uma barra de alumínio, com 1.5m de comprimento, cravada de leds RGB e presa a um motor de 3cv. Essa barra pode rodar a perturbantes (e altamente não recomendadas) 1750RPM, atingindo velocidades lineares de até 500km/h. Tudo isso para ter um Monster POV RGB e fazer desenhos bem cuti-cuti e barulho assustador.

Se você ainda não está convencido de que este é um eXtreme Project do gueto, continue lendo.

Atualmente na versão 2, utiliza SPI com DMA para se comunicar com a fita de led com APA102 a 28MHz (uhuu!) e cada atualização da fita leva cerca de 50us. Isso nos dá cerca de 50us de sobra para implementar animações e outras features ou, ainda, aumentar a precisão do desenho, mantendo exagerados 28fps.

Quem

Este é um projeto desenvolvido pelo Oda que foi financiado pelo Mike com verba do Hackerspace na Praça. O DQ deu uma super ajuda diminuindo em 50us o tempo de atualização da fita com uma alteração marota no SPI com DMA. E não podemos deixar de falar do Hugo Alabi, que às vezes visita o Garoa e nos deu preciosas informações sobre motores elétricos (uma das quais eu esqueci e quase morri junto com o Vitor).

Comparações

Aqui vão alguns comentários sobre o que mais tem sido feito por aí, se encontrar erros ou souber de outras infos, be bold e edite!

POV vs Light Painting

Ver boas fotos de POVs não quer dizer que eles sejam bons ao vivo, isso pq são desafios em níveis diferentes: a persistência da nossa visão é em torno de 0.1s, já uma uma máquina fotográfica você pode deixar com o obturador aberto por vários segundos.

POVs de bikes

Esses POVs estão na boca do povo, mas, ao que as contas indicam, rodam muito lentamente para poder formar direito uma imagem. Um bicicleta aro 26, por exemplo, tem rodas com perímetro de mais ou menos 2m, então se ela estiver a 30Km/h estamos falando de 250RPM ou ~4 voltas por segundo, não atingindo os as 10 voltas por segundo necessárias para a gente chamar de POV. Pedalando a 72Km/h (20 metros em 1 segunto!) a gente chega na rotação necessária, so vai ser difícil ver a bike. A saída adotada é colocar mais de uma fila de leds, talvez 4 delas. Isso traz várias vantagens: de cara, quadruplica a capacidade de processamento. Não sei como se dá o sincronismo, possivelmente com um acelerômetro que, dada a baixa frequencia, nao sofre do problema abaixo

Soluções com acelerômetro

Parece realmente uma má ideia por conta do tempo consumido pelo conversor AD. Talvez alguma configuração específica dele ajude. No caso de bicicletas, tem muito mais tempo para atualizar os leds, dando uma folga para essa leitura.

Propellerclock

Esses caras parecem muito bons! O lado ruim é que tem um hardware mais chato que uma simples fita de LED. Ainda vou estudar o cógido de um deles (assim que encontrar um) para tentar entender a mágica.

Um globo com ideia bem parecida

Esses caras fizeram um projeto que usa a mesma fita (que é toda a alma do negócio aqui), mas usaram RPi o_O e até FPGA para controlar o motor, coisa chique.

https://hackaday.io/post/29329

As fotos estão ótimas, mas são fotos. Gostaria de ver vídeos pois eles falam que estão a 500RPM, o que dá o famoso problema de não atingir 10fps, falta pouco, mas 10 já é meio limite inferior, como será que fica? Não entendi bem pq não aceleraram um pouquinho mais.

Eles falam de um capacitor de 1000uF na alimentação da fita, talvez isso ajude nos ghost pixels. No mais, usam um pedaço com 60 leds da fita com densidade de 144 leds por metro. Estou louco por uma dessas, mas estamos falando de 35 dólares :/

Lições aprendidas

  • Vc pode converter CV em Watts multiplicando por 860, então no nosso caso estamos falando de 3CV ou 2580W, isso em regime, imagino. Na partida ou com carga a corrente sobre bastante
  • Usar um dimmer para controlar a velocidade aumenta a corrente em 6 ou 8 vezes. A gente não lembrava disso e, quando o dimmer queimou o motor foi para a velocidade máxima (1750RPM), foi um susto divertido.
  • O arrasto é meio crucial no balanceamento. Tentamos uma versão com barra para apenas um lado, mas foi quase impossível compensar essas coisas que variam com a velocidade. Simetria ajuda, por hora vamos manter seguir este caminho.
  • A carga a qual o motor será submetido não é pequena, pois tem que entrar na conta essa variação de massa.

Versões do Pau de LED

Versao 1

  • Arduino Mega
  • Fita com 50 leds RGB endereçáveis baseados em WS2811
  • Biblioteda fastLED
  • Motor de 1cv
  • Dimmer 40A
  • Barra de alumínio de 1.5m
  • Sensor hall
  • Gambiarra com imãs
  • Powerbank china

Versao 2

  • Arduino DUE
  • Fita com 45 leds RGB endereçáveis baseados em APA102
  • DMA+SPI
  • Motor de 3cv
  • Dimmer 40A
  • Barra de alumínio de 1.5m
  • Sensor hall
  • Gambiarra com imãs
  • Powerbank china

Próximos passos

  • Tirar os pixels fantasmas
  • Escrever string com a fonte do Garoa
  • Mostrar RPM
  • Ciclar entre imagens
  • Animação
  • Controle remoto ou bluetooth