Go Down

Topic: [Ajuda] Braço robotico (Read 2851 times) previous topic - next topic

lucaslimaduarte

Boa noite, estou fazendo um projeto que consiste em um robô com um braço robótico onde terá uma câmera, esta câmera deve sempre esta em paralelo com o chão, e o braço serviria para regular a altura da câmera.

Este robô servira para a inspeção de um tubo, onde a câmera deve esta sempre no centro do tubo, pretendo fazer um braço bem simples de inicio, um servo na base para regular a altura do braço e outro na "mão" para regular a inclinação da câmera onde vou controlar a sua altura com dois botões, um para subir e outro para abaixar, vou posicionar o robô no inicio do tubo regular a altura do braço  através dos botões e iniciar a inspeção( o braço vai se manter na mesma posição durante a inspeção).

Estou em duvida de como fazer para que a câmera sempre se mantenha em paralelo com o solo durante a regulagem da altura, poderia controlar a posição da câmera através de botões também, mas preferia que ela se mante-se em paralelo com o solo de forma automática.

aqui uma imagem básica so para ter uma ideia melhor do robô e do braço

e este é o código do botões
Code: [Select]
/*
Sketch: Este programa ira girar o eixo de um servomotor para direita ou esquerda lendo o estado de dois botoes assim identificados.
*/

#include <Servo.h>

const int botaoDireita = 2;    // identifica o pino do botao a direita
const int botaoEsquerda = 3;   // identifica o pino do botao a esquerda
const int servo = 4;           // identifica o pino do servomotor

Servo servoMotor;              // declara um objeto tipo Servo

int angulo = 90;               // controla a posicao do eixo

void setup() {
pinMode(botaoDireita, INPUT);
digitalWrite(botaoDireita, HIGH);

pinMode(botaoEsquerda, INPUT);
digitalWrite(botaoEsquerda, HIGH);

servoMotor.attach(servo);      // conecta o motor ao pino de controle
servoMotor.write(angulo);      // gira o servo ate o ponto do meio
}

void loop() {
if(digitalRead(botaoDireita) == LOW) {     // botao direita pressionado
  if(angulo < 180) {
   angulo = angulo + 1;
  }
} else {
   if(digitalRead(botaoEsquerda) == LOW) {  // botao esquerda pressionado
    if(angulo > 0) {
     angulo = angulo - 1;
    }
   }
}

servoMotor.write(angulo);
delay(5);
}

bubulindo

Gravidade é uma hipótese?

Se colocares a mesma massa do outro lado do fulcro, teoricamente o braco estará sempre nivelado. O problema é que precisas de, uma vez estando feita a calibracão da altura, bloquear o movimento da câmara por causa de vibracões... por outro lado, assim talvez as vibracões não sejam passadas à câmara.

Repara também que aqui não existem muitos engenheiros mecânicos e o que me parece o teu problema é mecânico e não propriamente eléctrico.

Onde ias colocar o motor?

Já pensaste na possibilidade de usar um sem-fim para elevar a câmara? Isto, obviamente depende dos diâmetros de tubo que estás a pensar usar.
This... is a hobby.

joneco

Você realmente precisa que seja um braço? não poderia ser apenas uma haste? um servomotor apenas controlaria a camera na vertical.. pensei que você pudesse achar ruim o fato de ter "um poste" no seu robo para acessar alguns lugares, mas com o braço também teria isso, então você poderia ter hastes de tamanhos diversos para cada ocasião...

marcsam72

Bom dia!

Você pode usar um esquema igual de macaco sanfona de carro, a camera sempre ficara paralela ao assoalho do carro!

Uma pergunta, você quer que a camera fique paralela ao veiculo ou a tubulação?

Mortis

e presumo que a câmera deva ficar a frente do veículo para que possas ter visão de todo o tubo (por isso pretende que a camêra fique no cento, certo?).

Eu imagino que a teoria do macaco sanfona seja boa, mas com a câmera fixada a frente
Code: [Select]

                   _____________
                 /                       \
               /                           \
             /                               \
câmera | --<-rosca infinita ->--| motor que gira a rosca
             \                               /
               \                           /
             __\______________/____
      roda frontal   - Peso -   roda traseira



desta forma reduzes a limitação em termos de altura (podes ter uma única plataforma), mas passas a ter um proclema com o comprimento, dependendo da altura ^^

Eu usaria um contrapeso entre as rodas (frontais e trazei-as) para contrabalancear o peso da câmera que ficaria na frente.

lucaslimaduarte

Obrigado pelas respostas pessoas  :D
Optei pelo braço porque não sei exatamente o diâmetro do tubo, com um elevador poderia ocorrer dois casos extremos a altura máxima do elevador ser pouca e a câmera não chegar no centro do tubo ou a altura do elevador ser muito alta de forma que o robô nem entre no tubo, por isso a escolha por braço, se eu baixa-lo no máximo ele ficara praticamente na altura do robô e posso eleva-lo bastante.

Como disse esse braço inicial vai ser bem simples so para ter uma ideia melhor de como vai funcionar e apresentar para meu professor orientador, no braço final pretendo que mova a câmera para os lados de forma a poder ver melhor uma imperfeição no tubo.

Estou baseando meu projeto neste robô



Ja a parte de nivelação da câmera estou querendo fazer algo desta forma (a partis dos 0:18min) https://www.youtube.com/watch?v=I--AcLlFjbk

A vibração de momento não vai ser velada em conta, ja que esse é so o projeto para apresentação de ideia e também o robô vai trabalhar em um tubo liso onde creio que a vibração vai ser pouca

marcsam72

Neste desenho mesmo que postou a forma, que estão colocadas as duas barras inclinadas já promovem que a camera fique sempre na horizontal.

Mortis

Como o marcsam72 comentou, o mecanismo de elevação da câmera sugere que ela sempre estará alinhada.

Eu comentava algo desse tipo:

mmoscz

Acho que o problema ai é trigonometria.
Se em repouso o braço tem 0º a câmara estará em 180º em relação ao braço
Quando o braço estiver em 30º a câmera deve estar em 150º
4x Duemilanove (clone)
Uno torrado (clone)
Amiga 1200 40MB
Windows XP

Anthony Collucci

Rapaz, se deseja que o seu braço sempre fique paralelo a base, conforme seu video no seg 00:18, tenta montar um sistema igual o meu observe no video:

https://www.youtube.com/watch?v=6TE8mzwbcAM

e bem simples, eu tenho uma haste paralela ao braço, essa haste assim como o braço se comunica com o punho como o punho tem de manter sua posição em dois pontos paralelos distintos ele não se inclina.

A ideia original e do Arne http://www.arnerobotics.com.br/eletronica/robotica/rm1.htm

--
        Anthony M. Collucci
        (0xx31)9243-1690
      http://amcollucci.com.br
      http://astrobrasil.blogspot.com
      http://c

Go Up