Design de um cubo que se equilibra sozinho sobre uma quina
(willempennings.nl)- Um cubo apoiado sobre uma quina mantém o equilíbrio com três rodas de reação e um controlador, em um projeto de hardware open source que também controla a rotação em torno dos eixos
- O modelo original é o Cubli, da ETH Zürich, e Bobrow e colegas, da University of São Paulo, acrescentaram um conceito de controle que reduz o número de IMUs de 6 para 1
- Como os trabalhos anteriores eram em sua maioria fechados, o criador fez engenharia reversa do projeto mecânico, dos circuitos, da configuração e do código, e publicou tudo como totalmente open source
- O hardware é composto por uma estrutura de aço inoxidável e alumínio, três motores Maxon de 60 W, controladores de motor de 4 quadrantes, bateria LiPo 6S1P, ESP32-S3 e uma placa customizada com IMU
- Atualmente, o cubo já mantém o equilíbrio depois de ser colocado de pé por uma pessoa; o próximo objetivo é usar freios mecânicos para fazê-lo saltar sozinho até a posição de equilíbrio
Cubo da família Cubli recriado como open source
- Este cubo consegue se equilibrar sobre uma quina e, ao mesmo tempo, executar rotações controladas em torno de seus eixos
- O núcleo do funcionamento está em um método de controle inteligente e em três rodas de reação
- A ideia original parte do Cubli, de pesquisadores da ETH Zürich
- Depois, Bobrow e colegas, na University of São Paulo, introduziram um conceito de controle aprimorado que reduziu as IMUs necessárias de 6 para 1
- Como os trabalhos anteriores eram em sua maioria fechados, o criador fez engenharia reversa de tudo e redesenhou o projeto do zero para publicá-lo
- Os arquivos de projeto, configuração e código estão disponíveis no repositório no GitHub
- Segundo o criador, a BOM fica perto de €2500
Um dispositivo mais voltado a aprendizado e pesquisa do que à utilidade prática
- O cubo em si é principalmente uma experiência de aprendizado e um projeto de pesquisa, com pouco valor prático direto
- Ainda assim, rodas de reação baseadas no mesmo princípio são usadas para controle de atitude em satélites, como o James Webb telescope
- Assim como a classificadora de M&Ms anterior, dispositivos que parecem inúteis à primeira vista podem ter valor real em aplicações semelhantes
Estrutura mecânica e fabricação
- A estrutura mecânica geral é bastante parecida com a do Cubli original, mas há algumas diferenças nos detalhes
- A estrutura básica é composta por 8 cornerstones e 6 face plates
- 3 das 6 face plates têm geometrias adicionais para sustentar os conjuntos de motor e roda de reação
- Todas as peças foram projetadas no Fusion 360
- O criador considera que usar o Fusion 360, em vez do Siemens NX que usava antes, facilita compartilhar o projeto com a comunidade DIY
- A maior parte das peças estruturais é feita de aço inoxidável para garantir resistência
- As face plates são feitas de alumínio para reduzir peso
- Depois da montagem, a rigidez estrutural foi suficiente, então não foi necessário fazer as face plates em aço
- As peças metálicas foram usinadas por CNC pela PCBWay
- Parte do custo foi patrocinada pela PCBWay
- O processo de pedido usado calcula automaticamente o orçamento depois do upload das peças e da especificação dos materiais
- Pequenos problemas de produção foram resolvidos rapidamente, e as peças se encaixaram sem problemas
Montagem dos motores e das rodas de reação
- As rodas de reação podem chegar a até 6000 rpm, então era necessário um projeto ao mesmo tempo robusto e leve
- O motor é preso a uma ponte de aço inoxidável por três parafusos escareados, e a ponte é fixada à face plate de alumínio
- Um pequeno hub é montado no eixo do motor e fixado por três set screws
- Se o furo central do hub não estiver perpendicular à face triangular plana, a roda não ficará alinhada ao eixo do motor, o que pode causar vibração e desgaste
- A roda de reação é montada no hub com três parafusos escareados
- Pequenas imperfeições no hub e na roda são compensadas inserindo pedacinhos de papel entre as superfícies de contato
- A face plate recebe um pequeno radial ball bearing, fixado com adesivo de cyanoacrylate
- Esse rolamento sustenta uma extremidade do eixo do motor
- A outra extremidade do eixo é sustentada pelo rolamento interno do motor
- Esse processo de montagem é repetido três vezes para formar metade do cubo, e as face plates restantes são acopladas diretamente, sem montagem especial
- Para simplificar o cabeamento, um dos motores é posicionado com uma orientação diferente em relação à ponte
Configuração elétrica e mecânica
- Assim como outros balancing cubes usam motores da linha EC flat da Maxon, este projeto também escolheu componentes da Maxon
- Os motores e controladores são peças essenciais para o cubo se equilibrar usando torque
- Muitos motores DC não têm datasheets que especifiquem a constante de torque
- Muitos controladores BLDC ou ESCs oferecem apenas controle de velocidade, não controle de corrente
- Para este projeto, a relação torque-corrente e o controle de corrente são indispensáveis
- O motor escolhido é o motor de 60 W da Maxon, e o controlador de motor de 4 quadrantes compatível pode fornecer corrente de até 6 A
- Em 24 V, 6 A correspondem a quase 150 W
- Isso excede a potência nominal do motor, mas sobrecargas curtas não são problema
- O controlador incorpora um algoritmo I2t que limita a corrente caso estime que a temperatura dos enrolamentos ficará alta demais
- Durante a manutenção do equilíbrio, a corrente costuma ser muito baixa, então é improvável que esse limite seja atingido em operação normal
- O software do controlador de motor Escon oferece comissionamento do motor, ferramentas de ajuste e um dashboard que mostra o estado e as entradas/saídas durante a operação
Bateria e placa customizada
- A bateria usada é uma bateria de polímero de lítio 6S1P
- Como os motores são especificados para 24 V, uma LiPo de 6 células com tensão nominal de 22,2 V se encaixa bem
- A capacidade é de 1300 mAh e 29 Wh, normalmente suficiente para operar o cubo por pelo menos 1 hora
- A placa principal é um projeto customizado
- Três controladores de motor
- IMU
- Placa de desenvolvimento ESP32-S3
- Circuitos de proteção
- Reguladores de tensão
- Saída para RC servo motor dos freios mecânicos
- A saída dos freios mecânicos é um preparo de projeto para permitir que o cubo faça jump-up sozinho até a posição de equilíbrio
- O projeto dos freios ainda não foi concluído
- A placa de circuito foi montada com aplicação de solder paste, posicionamento de componentes de montagem em superfície, reflow em um pequeno forno elétrico e soldagem manual dos componentes through-hole
- Durante a integração e os testes, alguns erros de roteamento foram encontrados e corrigidos com bodge wires
- Apenas uma das entradas digitais do controlador de motor tinha suporte a PWM, mas o sinal PWM havia sido roteado para uma entrada sem suporte
- Também foi projetada uma placa separada para fixação da bateria
- Dois conectores XT60
- Dois interruptores ligados em paralelo, considerando corrente de até 18 A
Port do controlador e controle de equilíbrio
- O controlador não foi redesenhado; o cubli-firmware de Fabio Bobrow foi portado de Arm Mbed para Arduino
- O microcontrolador usado é um ESP32, em vez de um STM32 Nucleo
- Como a IMU usada é a ICM20948, da TDK Invensense, o respectivo driver também foi reescrito
- O controlador principal de atitude precisa atender simultaneamente a dois objetivos conflitantes
- Manter o cubo na atitude desejada, isto é, na posição de equilíbrio instável
- Manter a velocidade das rodas de reação próxima do mínimo
- Se o segundo objetivo não for considerado, a velocidade das rodas pode sair de controle, saturando os motores e impedindo que apliquem torque ao cubo
- Se a força para manter a velocidade das rodas perto de 0 for grande demais, o cubo tomba
- Por outro lado, se essa força for fraca demais, a velocidade das rodas pode literalmente crescer sem controle
- Para obter bom desempenho de equilíbrio, rejeição de perturbações e baixa velocidade das rodas ao mesmo tempo, é preciso encontrar o gain adequado
Erro constante e integração da posição das rodas
- O controlador também tem um mecanismo para lidar com erro constante
- Erro constante é quando a posição de equilíbrio configurada e a posição de equilíbrio real diferem um pouco por causa de imperfeições na distribuição de peso do cubo
- Em um controlador PID típico, o termo integral lida com esse tipo de erro
- Neste controlador, a posição das rodas é usada como se fosse o valor integral
- Quando um tomate é colocado sobre o cubo, alterando sua distribuição de peso, as rodas de reação aceleram e depois desaceleram, deslocando-se para uma nova posição para compensar o aumento do erro
Onde o ajuste travou
- O comissionamento e o ajuste do controlador foram a maior parte do trabalho relacionado ao código
- Primeiro, foram necessários vários dias para alinhar os sinais de diferentes variáveis
- Depois, foi preciso encontrar os gains do controlador
- O método de ajuste descrito no artigo de Bobrow não funcionou neste cubo
- Como este cubo usa rodas diferentes das do cubo de Bobrow, os gains não puderam ser reutilizados diretamente
- Após ajustes manuais repetitivos, foi obtido o desempenho de estabilização mostrado no vídeo
Cubos semelhantes e próximos passos
- O criador considera este cubo um cubo totalmente open source que alcança desempenho de equilíbrio semelhante ao do Cubli
- Projetos similares relativamente documentados incluem:
- O próximo objetivo é adicionar freios mecânicos às rodas de reação
- Os freios podem parar rapidamente as rodas, gerando um torque muito maior do que o motor conseguiria produzir diretamente
- Com esse torque, torna-se possível o jump-up manoeuver, em que o cubo sobe sozinho até a posição de equilíbrio
- Segundo o criador, esse recurso atualmente existe apenas no Cubli original
- O mecanismo de freio do Cubli não é o preferido por diversos motivos, então o plano é usar outra abordagem
1 comentários
Comentários do Hacker News
Como alguém com mestrado em controle e processamento de sinais e que acabou fazendo coisas mais chatas, eu achava que passar dias invertendo sinais era falta de experiência
Aparentemente, eu também tinha errado o sinal nessa avaliação
x *= -1.0; //DO NOT TOUCHno codebaseTodo mundo faz isso, mas normalmente testam antes de prender com fita adesiva em cima de alguns milhares de kg de explosivos e apertar o botão vermelho :)
Todo controlador que projetei e implementei acabou me fazendo aceitar a realidade de que são necessários testes unitários suficientes para garantir comportamentos como sinal e direção
Esse vídeo é realmente impressionante
Foi uma das experiências mais próximas de pensar: “isso não é simplesmente magia?”
A forma como reage quando é empurrado lembra a primeira vez que vi ímãs, só que agora parece uma força completamente nova
Como se estivesse vivo, mantém o próprio equilíbrio, resiste a mudanças no ambiente e, mesmo colocando um tomate em cima, se adapta na hora como nosso corpo se ajusta a mudanças de carga
Se algum dia uma versão pequena produzida em massa por 50 dólares aparecer na Amazon, com certeza vou querer brincar com ela
https://youtu.be/n_6p-1J551Y?si=zvwORnuPZmgXw0S8
Quando aprendi a programar, tive aquela sensação de “se eu dedicar tempo suficiente, posso fazer o computador fazer qualquer coisa que eu quiser”
A teoria de controle passa uma sensação parecida, só que desta vez parece que você está “programando” as leis da física para mudar como a realidade funciona
Se procurar no YouTube, há exemplos com mais de 10 anos
Eu gosto muito da minha carreira como engenheiro de software, mas ao mesmo tempo dá vontade de ter estudado uma área em que eu pudesse começar a construir coisas assim
Muito legal
Como a maioria de nós aprendeu programação ;-)
Só não é uma boa começar logo com um cubo autoequilibrante como primeiro projeto; melhor comprar uma placa Arduino ou ESP e começar fazendo um LED piscar
Meu meio-termo acabou sendo automação residencial e projetos de eletrônica como hobby usando microcontroladores como esp32 e rpi pico
Vale a pena para quem quer construir algo tangível
Só para referência, o custo total de peças desse projeto do cubo foi de cerca de 2500 euros
Pelo menos até eu descobrir que os empregos disponíveis no mercado eram basicamente para construir máquinas de matar gente
Para mim foi assim, mas cada um é cada um
Os tutoriais são bons e as apresentações dos produtos e vídeos também são muito bem feitas
Praticamente todo produto tem vídeo, então é um lugar muito fácil para gastar dinheiro
Isso ajuda até na carreira de engenheiro de software, melhorando velocidade, precisão e eficiência na digitação
https://www.reddit.com/r/ErgoMechKeyboards/comments/hj0q8x/f...
Estou animado com a parte de adicionar um freio mecânico à roda de reação para permitir manobras de salto e fazer o cubo alcançar sozinho sua posição de equilíbrio
Sempre achei essa a parte mais legal do projeto Cubli
Vídeo: https://youtu.be/n_6p-1J551Y?t=92
Para conseguir subir, não pode ser circular, mas para descer rolando, bordas arredondadas parecem melhores
Isso me faz imaginar algo como duas argolas formando uma esfera: giraria 90 graus para alternar entre modo de rolagem e modo de caminhada
Esse cubo salta para uma aresta, depois sobe para um vértice e começa a girar, e consegue fazer isso em qualquer superfície
Acho que até a maioria das pessoas que se considera familiarizada com física ficaria bem confusa, e se o cubo de repente voltasse de um vértice para uma face e saltasse, mostrando que não é um mecanismo oculto de projeção, talvez começassem a considerar seriamente a possibilidade de magia
Agora só falta uma base de carregamento por indução combinando com um belo acabamento de madeira
Se fosse um Kickstarter, poderia pegar meu dinheiro
Lembra o trem monotrilho de Brennan
Vídeo muito interessante https://www.youtube.com/watch?v=kUYzuAJeg3M
Arte excelente
Outra obra dessa mesma pessoa é completamente diferente, mas igualmente divertida de assistir: https://www.youtube.com/watch?v=P9jyNIWsRvI
Gosto muito de engenheiros que fazem arte
É uma obra com um sofá de 170 anos equipado com uma roda de reação, fazendo-o ficar em pé de um jeito inacreditável sobre uma única perna
No fim, quando a roda de reação atinge seu limite, o sofá cai e explode; se você perguntar ao artista, ele dirá que parece um relacionamento humano
Hoje em dia também é difícil não pensar em política
A obra também foi reconhecida no Prix Ars Electronica, uma honraria de altíssimo prestígio nesse gênero
Vídeo: https://www.youtube.com/watch?v=uQRP-b68fnE
Texto: https://ars.electronica.art/aeblog/en/2014/07/02/auf-der-suc...
Na verdade, parece que daria para combinar os dois facilmente
Todo domingo eu normalmente fico empolgado por alcançar um novo patamar com código e sinto a satisfação de ter levado minha persistência e criatividade mais longe, mas quando vejo algo assim eu me sinto completamente impotente
Tenho pouca paciência e medo demais até de tentar algo assim
Nas últimas semanas comecei a aprender React como projeto paralelo e fiquei bem orgulhoso de criar algo que meus amigos realmente poderiam usar
Claro, não tem aquele fator “uau”, mas também não custou 2500 dólares para fazer, nem exigiu anos, talvez décadas, de investimento em aprendizado
Em qualquer área, são pouquíssimos os que se tornam os melhores do mundo, mas isso não importa
Esse fato não muda o que eu sou capaz de fazer
Muitos deles nem exigem solda
Começar totalmente do zero é difícil demais, porque aí você precisa descobrir por conta própria quais peças combinam entre si, quanta energia é necessária etc.
Aí fica muito mais fácil, e dá para usar peças prontas ou feitas à mão
Na verdade, mais do que o fato de se equilibrar, o que me atrai é a aparência incrível do objeto em si
Fui procurar na hora se já estava à venda, e parece que fazer um por conta própria sai por cerca de 2500 dólares
Pode chamar de imprudente, mas se existisse uma versão maior com apoios ao longo das arestas, eu pagaria para subir nela
Queria sentir diretamente como ela reage aos meus movimentos
É um experimento mental divertido
Fico me perguntando como seria a ideia de fazê-lo se deitar sozinho de novo sobre um carregador Qi ou pinos pogo quando a bateria estivesse fraca ou a roda de controle de reação ficasse saturada
Provavelmente isso viria depois de adicionar um freio para que ele consiga se levantar sozinho
A distância talvez fosse um problema, sim