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

Arte do servo motor

Componentes e suprimentos

Arduino UNO
× 1
Controlador de motor servo PWM de 16 canais Adafruit
× 3
Micro servo motor SG90
× 36
Fonte de alimentação comutada de 5 volts e 30 watts
× 1
Extensões de cabo do servo motor
× 1
Placa de fixação de 24 pol. x 48 pol.
× 1
Palitos de picolé, corte para 3 1/4 polegadas
× 36
Sensor ultrassônico - HC-SR04 (genérico)
Esses componentes são opcionais - obrigatórios apenas se você estiver adicionando o recurso interativo.
× 5

Ferramentas e máquinas necessárias

Ferro de soldar (genérico)
Pistola de cola quente (genérica)

Aplicativos e serviços online

Arduino IDE

Sobre este projeto


O vídeo abaixo mostra a ação enquanto 36 servo motores criam uma obra de arte eletrônica. Um Arduino Uno e três servo controladores PWM de 16 canais estão trabalhando nos bastidores. A inspiração original para isso foi uma versão muito maior com 450 servos que vi em um museu de arte moderna. Mas mesmo esta pequena versão com apenas 36 servos oferece alguns efeitos interessantes.

Há um recurso opcional que não mostrei no vídeo, mas pode ser adicionado para tornar a exibição interativa. É puramente opcional e o software funcionará bem sem ele. Para esta opção, cinco sensores de distância ultrassônicos são montados ao longo da parte traseira da borda superior da tela. Quando você coloca sua mão acima do sensor central, o Uno entra no modo interativo e todos os servos tentam seguir sua mão conforme você a move acima dos sensores de distância. Quando você remove sua mão por alguns segundos, o programa retorna ao seu display. Novamente, você pode adicionar esta opção se desejar. Caso contrário, o software funcionará perfeitamente sem ele.





Hardware


Como você pode ver, este projeto foi construído em um pedaço de placa peg de 24 "por 48". A largura foi reduzida para 32 polegadas. Os servos são montados com 4 polegadas de distância e fixados na parte de trás da placa de pinos com cola quente. Palitos de picolé, cortados em 3 1/4 polegadas, são montados nas hastes dos servos, novamente usando cola quente.

Os servo motores SG90 são o único item caro neste projeto. Você pode obter um conjunto de 8 por US $ 20 na Amazon. Mesmo assim, você precisa investir $ 100 em servos. Supõe-se que todos os SG90s sejam servos de 180º, mas a maioria não chega bem. Alguns ficam aquém e devem ser descartados. Se você comprar 5 conjuntos de 8, deverá ser capaz de encontrar 36 itens que viajam pelo menos 160º.

Os servos precisam ser colocados em sua posição mínima (posição em PWM 150), e os palitos de picolé montados apontando para a horizontal e para a direita nesta posição mínima, visto de frente. Eu forneci um pequeno programa que você pode usar para garantir que os servos estejam nesta posição mínima:SetServosToMinimum.

A foto acima mostra o layout do verso. Os três controladores PWM são montados no lado esquerdo dos servos. A fonte de 30 watts e 5 volts está na extrema direita. O Arduino é alimentado separadamente por meio de um adaptador de alimentação USB. Faço isso apenas para poder desconectar o cabo USB e, por meio de um cabo de extensão USB, conectá-lo ao meu computador para fazer alterações no programa. Parece um pouco estranho, mas acho conveniente.

Você também pode ver os sensores de distância de ultrassom opcionais montados na parte superior da tela. Cola quente e palitos extras de picolé foram usados ​​para fixá-los. A pequena placa de prototipagem que você vê abaixo do Uno está lá simplesmente para facilitar a obtenção de energia e aterramento para todos os sensores de ultrassom.





Software


Estou usando a biblioteca PWM Servo Driver da Adafruit para lidar com os servo controladores de 16 canais, portanto, você precisará obter isso do Adafruit e instalar nas bibliotecas do Arduino. Meu software pode ser usado como está com ou sem os sensores ultrassônicos opcionais. Apresenta uma variedade de efeitos em um show que dura pouco mais de três minutos antes de se repetir. Se os sensores opcionais estiverem instalados, ele entrará no modo interativo sempre que uma mão for colocada no sensor central.

Há muitas coisas no software. Não tentarei explicar tudo aqui, mas darei algumas informações sobre como funciona. Eu tenho duas mesas. A tabela curPos armazena a posição atual de cada servo dividido por três. A tabela tarPos armazena a posição desejada de cada servo dividido por três. Eles são divididos por 3 por dois motivos. Primeiro, permite que eles sejam armazenados em um byte e, segundo, estou sempre movendo os servos em incrementos de 3 etapas.

O Uno não conhece inicialmente as posições de cada servo, então a rotina de configuração define todos os servos para uma posição vertical e define todas as variáveis ​​curPos e tarPos para corresponder a essa posição vertical. Podemos então mover os servos de lá para outras posições, alterando as posições desejadas em tarPos.

Uma sub-rotina chamada goToTargets () é a forma primária pela qual os servos são movidos. Nós controlamos para onde os servos vão definindo os alvos em tarPos, então podemos controlar a rapidez com que eles vão lá com a rotina goToTargets. Possui duas formas de controlar a velocidade. Ele move os servos em direção aos seus alvos em incrementos de 15 passos, onde a entrada de repetições para a sub-rotina fornece múltiplos de 15 passos. A outra entrada é mydelay, que apenas adiciona um atraso em milissegundos a cada chamada de goToTargets.

Há muitas outras coisas, mas basicamente todo o resto são apenas várias configurações e implementações dos vários efeitos apresentados.

A função interativa opcional é controlada por uma sub-rotina chamada trackRoutine. É chamado quando a rotina goToTarget vê um objeto (sua mão) em algum lugar sobre o sensor ultrassônico central. Ele tenta fazer todos os servos seguirem o movimento de sua mão conforme ela se move sobre os sensores. Quando não sente uma mão por alguns segundos, ele retorna e o programa normal é reiniciado.

Código

  • Software ServosArt para Arduino Uno
Software ServosArt para Arduino Uno Arduino
 Sem visualização (somente download). 

Esquemas

Mostra como Uno e servos são conectados por meio de três controladores de 16 canais Conecta 5 sensores de distância ultrassônicos ao Uno para permitir que os servos rastreiem o movimento da mão.

Processo de manufatura

  1. Protótipo da Raspoulette
  2. Robô Pi Simples
  3. Especialistas em Reparo de Motor Servo Fanuc
  4. Reparação de servomotor especialista Siemens
  5. Dicas para reparos e solução de problemas do servo motor
  6. MOSMusic
  7. O que é um Motor Linear?
  8. A beleza da caixa de engrenagens planetária para servo motor
  9. Uma introdução à Servo Press
  10. O que é um servo motor?