Simulação de uma braço mecânico, sugestões?


#1

Olá, pessoal.

Estou fazendo um trabalho onde é necessário fazer uma simulação de um braço mecânico. Estou tendo certa dificuldade em como fazer essa simulação.
Pensei em fazer em fazer uma animação no blender do braço em funcionamento e dos circuitos no 123D Circuits,
Porem, meus conhecimentos em blender e 123D Circuits é muito raso e obtive uma certa dificuldade para realizar essa tarefa.
Você não teria uma alternativa mais eficiente ou devo continuar com Blender e o 123D Circuits?


#2

@anndreyy Essa simulação precisa ser visual? Para simular algo creio que não precisa ser necessariamente visual, mas se isso é um requisito do problema, talvez Blender seja uma boa opção sim, já que é um software livre e o script pode ser programado com a API de Python para Blender.

Devo concordar que visualmente ficaria muito top, mas um cliente em modo texto que, quando você pressionar um switch possa enviar a mensagem “O braço foi movido para a esquerda.” e teoricamente realizar o código da ação, seria tão bom e eficiente quanto.


#3

Obrigado, pela dica.
Fazer pelo Blender é bem difícil mas acho que é a melhor opção.
Que software/plataforma você usuária para fazer o cliente que você comentou?


#4

Me veio uma duvida, usando o API o Python no blender, posteriormente poderei aplicar de alguma ao Arduino?


#5

Eu sempre uso C (ou Arduino) no “sketch” e Python para enviar comandos, se a interação com o MCU for apenas via software.

Nunca usei Blender, por que eu sou péssimo nessa história de 3D, design e etc, mas sei que o Blender tem sim uma API voltada para jogos e ela é exposta em Python, acho que se chama “Blender for Games” ou algo perto disso.

Você não poderá aplicar a API do Blender ao Arduino diretamente, pois ela deve ser específicamente para controle de objetos 3D, renderização, controle de framerate, essas coisas.

A integração de qualquer linguagem de programação com um “sketch” compilado e gravado em qualquer MCU dar-se-á por uma conexão serial (ou outro tipo de conexão disponível no MCU: usb, bt e etc.).


#6

Entendo. Obrigado pela resposta.

Deixa eu esclarecer melhor o que eu preciso fazer: Esse trabalho é para o tcc, a primeira parte é uma simulação mais um artigo. Na simulação preciso mostrar como ele funcionará na prática e provar que é possível. Ele precisa levantar, inclinar em certos graus e se mover com um velocidade especifica. Bem ná pratica eu tenho uma ideia de como fazer mas a simulação estou batendo a cabeça. Como eu simulo isso? Bem, pensei no blender, mas acho que com ele não provo que funcionaria na prática. O que você acha?


#7

Olá anndreyy,

É você sozinho no TCC ou em equipe? A simulação é algo obrigatório ou apenas para compor o trabalho? Algum conhecimento de engenharia mecânica?

Você deve ter cuidado apenas com o tempo que dispõe para o seu TCC. Normalmente deixamos para o segundo semestre ai começa o corre corre, já passei por isso :wink: E pelo que você retratou necessitará de tempo, pois tem a curva de aprendizagem das ferramentas para fazer o que está pretendendo.

Se for apenas um estudo “visual”, ter uma animação só para ver os movimentos do braço as ferramentas 3D existentes no mercado serve, como foi sugerido o Blender… podemos citar também o 3DMax, Maya etc…
Mas se for um estudo técnico ligado a engenharia sugiro ferramentas mais apropriadas como o Solidworks ou o Inventor.

Independente da escolha, essas ferramentas tem características distintas de trabalho e que exige tempo e dedicação para extrair delas o que queremos. Foi por essa razão que fiz as perguntas a você no início.

Avalie seu tempo para desenvolver tudo e se realmente a simulação é algo obrigatório no seu TCC.

Abraços.


#8

Sim, você está certo, reduzir o escopo ao Blender não prova que a simulação funcionará na prática, simplesmente vai demonstrar que você consegue trabalhar com um objeto 3D programaticamente, o que provavelmente não é o objetivo do seu trabalho.

A minha visão do seu trabalho é:

  1. Um pequeno painel de controle físico conectado a um MCU ou placa de desenvolvimento (como Arduino), com uma interface simples e necessária para operar um braço mecânica, por exemplo: 1 botão para esquerda, 1 botão para direita, um botão para abrir e fechar a garra e um potenciômetro para levantar/abaixar o braço ou 2 potenciomêntros: 1 para movimento horizontal e outro para movimento vertical e um botão para abrir e fechar a garra.

  2. Um software feito com o Blender e sua API (Python) para manipulação do objeto, além disso, a adição da biblioteca PySerial para poder interfacear o hardware. O painel irá repassar os comandos via serial para o software de manipulação do braço mecânico 3D e deverá ter o efeito desejado: levantar, baixar, abrir garra, fechar garra, virar para esquerda, virar para direita. Em suma, seria a mesma coisa de um braço mecânico comum, a diferença é que seria um braço “virtual”, simulado.

  3. Lembre-se de que algumas coisas você nem precisa saber ou conhecer, por exemplo: Neste endereço eu achei um braço mecânico já pronto para download e existem outros em vários repositórios de objetos 3D. Talvez você consiga até achar um script para movimentar aberto, precisando se preocupar só com programar a interface hardware e software, por exemplo: Aqui eu vejo que o cara fez o script para o braço anteriormente citado.


#9

Na verdade estamos em 4. Porém, não tenho tanta certeza do comprometimento deles nesse trabalho.
Simulação é obrigatória.
Conhecimento engenharia mecânica: tenho noções básicas. Espero com esse projeto aprimorar mais os meus conhecimentos.
O estudo precisa ser técnico e ter um visual legal para apresentação, a ideia é apresentar em um congresso. O Solidworks e Inventor é sensacional, vi uns videos e alguns documentos em relação aos dois e fiquei impressionado. Porém, ambos são ferramentes pagas e caras, cai melhor um software open-source.

Vou fazer seguir a sua recomendação sobre tempo e reavaliar melhor o uso dele. Obrigado pela resposta e desculpa a demora para responder.


#10

Estou decidido a usar o Blender e o seu comentário vai ser de grande ajuda.

A ideia do repositória é demais já que o objetivo do trabalho não é demonstrar as habilidades com objetos 3D. Vou procurar uma boa base e trabalhar e cima.

Não consigo mensurar o quanto você conseguiu me ajudar com seu comentário.


#11

Olá

Estou envolvido em um projeto acadêmico cujo propósito é desenvolvimento de um simulador visual 3D para a prototipagem de robôs. O Blender foi uma das ferramentas consideradas para o desenvolvimento, porém a opção escolhida foi o Unity3D, uma engine para criação de jogos. Temos uma versão preliminar e um trabalho publicado. Em breve vamos disponibilizar o projeto com toda a documentação e código. Esperamos com esse projeto atender estudantes e pesquisadores que precisam criar protótipos e testar robôs com rapidez e facilidade.
Estou a disposição para ajudar

Se interessar o link para publicação:
https://goo.gl/dv7YQf