LEGO Orbita-like music color sequencer

Para os mais especializados em mecânica e electrónica em LEGO.
Responder
Avatar do Utilizador
CyberX
Sócio
Sócio
Mensagens: 4341
Registado: 10 mar 2014, 20:09
Localização: Mira Sintra
Contacto:

LEGO Orbita-like music color sequencer

Mensagem por CyberX »

Este é um projecto inspirado (copiado?) no Orbita, um projecto Kickstarter da Playtronica que depois não deu em nada

Imagem

O original tinha 4 sensores de cor, cada um associado a uma pista de som. Sendo MIDI, penso que seria associada a um instrumento (por exemplo o circulo interior era associado à percurssão e os restantes círculos a um baixo electrónico, a um orgão e a uma guitarra). A velocidade de rotação podia ser controlada manualmente e com isso acelerar/abrandar o ritmo da música.

Utilizei um MINDSTORMS EV3 com 4 sensores de cor para imitar esta parte:


infelizmente o código ainda está muito imaturo, limita-se a tocar notas em python conforme as cores detectadas, parecendo o som de um jogo de 8-bits (género ZX Spectrum) rasca.

Para conseguir que as 4 pistas de som funcionem convenientemente (em polifonia) e associadas a instrumentos decentes (sound bank) precisava implementar MIDI como fiz com outros projectos que já apresentei anteriormente neste fórum. Mas dá algum trabalho, ainda para mais agora que o EV3 saiu de suporte (não apenas pela LEGO mas também pelo próprio Linux - desde algures em 2022 que já não existem actualizações para a versão de Debian Linux em que o sistema operativo 'ev3dev' é baseado pelo que cada vez é mais dificil instalar componentes não-standar como sintetizadores MIDI e protocolos de transporte MIDI).

Para Viana do Castelo vou só investir um pouco mais na diversidade de peças coloridas (tentar acertar com as cores que o sensor de cor realmente reconhece - amarelo pelos visto tá quieto).

No video uso um "booster" de som sem fios - encosta-se ao altifalante do EV3 e por indução amplifica o som, sem fios (ultrapassando a limitação do EV3 não ter uma ficha de saída de som). Também podia usar uma placa de som USB suportada pelo ev3dev e ligar-lhe um amplificador decente... mas por agora fica assim, ainda tenho quase toda a electrónica de som encaixotada com a banda robotizada que levei a Oeiras o ano passado.

Dimensões (sem o "booster"): 40 cm ou 50 studs por 34 studs
Jorge Pereira
«De génio, criança e louco... porquê só 1 pouco?»
Avatar do Utilizador
CyberX
Sócio
Sócio
Mensagens: 4341
Registado: 10 mar 2014, 20:09
Localização: Mira Sintra
Contacto:

Re: LEGO Orbita-like music color sequencer

Mensagem por CyberX »

Fisicamente o mesmo MOC que levei a Viana do Castelo em 2023 mas com uma programação completamente diferente, tirando partido do que há uns anos aprendi com a Harpa Laser e depois no confinamento com a banda robótica



o MINDSTORMS EV3 está a correr ev3dev (linux), instalei um módulo de python (o MIDO) que permite integração com MIDI;
liguei um adaptador USB MIDI ao EV3 pelo que o meu script de python envia mensagens (neste caso notas) a cada cor que identifica; 4 anéis de cores, 4 sensores de cor, 4 canais ou pistas MIDI

Depois tenho um sintetizador MiniDexed (um projecto open source que implementa num único Raspberry Pi oito sintetizadores simultâneos, compatíveis com o Yamaha DX7 dos anos 80) e um MIDI Merger que funciona como um router encaminhado as mensagens MIDI vindas do EV3 para o MiniDexed. "apenas" estou a usar 4 sintetizadores, um para cada canal MIDI, cada um emulando um instrumento diferente.

Ainda tenho de explorar os milhentos instrumentos disponíveis na net para carregar no MiniDexed de modo a ter algo mais interessante para mostrar no próximo evento e melhorar um pouco o programa para ter mensagens mais complexas (acordes decentes em vez de meras notas escolhidas ao acaso). E regulação da velocidade da plataforma, do volume de som, talvez alguns efeitos...

Como ainda posso tirar partido de mais 4 instrumentos neste sintetizador MiniDexed outros "instrumentos" MIDI se poderão juntar. Tenho uma Harpa Laser, um trompete e um kit de percursão algures e muitas ideias no bloco de notas :D
Jorge Pereira
«De génio, criança e louco... porquê só 1 pouco?»
Avatar do Utilizador
CyberX
Sócio
Sócio
Mensagens: 4341
Registado: 10 mar 2014, 20:09
Localização: Mira Sintra
Contacto:

Re: LEGO Orbita-like music color sequencer

Mensagem por CyberX »

Ligeiras refinações no código e melhor entendimento de como funciona o MiniDexed, descarreguei alguns bancos de instrumentos, escolhi algumas vozes (instrumentos) de entre as centenas que vêm nestes bancos e finalmente descobri como se grava isso no cartão microSD para não ter de voltar a fazer tudo novamente cada vez que ligo o sintetizador

Também arranjei mais uns quantos tiles com as cores básicas da LEGO... mesmo assim os sensores de cor do EV3 por vezes perdem-se. Vou ter de estudar uma forma de ler os valores RGB dos tiles em vez de confiar na classificação feita pelo sensor. Salvo erro foi isso que o autor do MindCub3r fez também para conseguir ler as cores do cubo de Rubik.

Jorge Pereira
«De génio, criança e louco... porquê só 1 pouco?»
Responder