










Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Como construir um braço robótico: análise de um projeto
Tipologia: Notas de estudo
1 / 18
Esta página não é visível na pré-visualização
Não perca as partes importantes!











Projeto de Robótica :: TKS Software
TKS Software
1ª Etapa – Movimentação de braço mecânico com 02 graus de liberdade.
Equipe: Gilmar Fernandes ([email protected]) Victory Fernandes ([email protected]) Rafael Gonçalves ([email protected]) Airton Miranda ([email protected]) Antonio Neto ([email protected]) Murilo Plínio ([email protected] Augusto Frederico ([email protected]) Fellipe Capolupo ([email protected])
Convidamos a todos que queiram contribuir, partic ipar ou saber mais sobre o projeto a entrar em contato com a equipe. Nos encontramos a disposição para visitas e apresentações do projeto.
Grupo de Robótica http://roboticatks.zip.net
TKS Software Rua Padre Casemiro Quiroga, 236 - Loja D - Centro Comercial do Imbui. Em frente ao Banco do Brasil do Imbui. Salvador – Bahia – Brasil Cep: 41720- www.igara.com.br
Consideramos por concluída 1ª etapa do projeto, que envolveu o controle e a movimentação através da porta paralela do computador, de um braço mecânico com 02 graus de liberdade, utilizando motores de passo e software desenvolvido em Delphi. Conforme Figura 01. Figura 01 – 1ª Etapa do projeto
Projeto de Robótica :: TKS Software
Figura 04 – Fonte ATX de alimentação, pino amarelo 5V
1.2 Acionando a fonte ATX
Ao ligar a fonte na tomada, a mesma não aciona, ou seja, o ventilador interno não liga e nem há tensão nos pinos de saída. Para fazer a fonte funcionar, é necessário curto- circuitar os pinos verde e preto do cabo que sai da fonte para a placa mãe. Conforme Figura 05.
Figura 05 – Curto-cirtuito dos pinos preto e verde para acionamento da fonte.
Projeto de Robótica :: TKS Software
2. Motores de Passo
Utilizamos para mover o braço mecânico, 02 motores de passo de 12V, 330 mA, 36 ohm, XX graus e XX passos. A fonte utilizada no projeto deve ser capaz de fornecer a corrente total necessária aos motores, neste caso 2x330mA = 660mA.
Figura 06 – Motores de passo.
2.1 Descobrindo o pino comum
O primeiro passo para se utilizar um motor de passo é descobrir o pino ou os pinos comuns do motor. Os motores de passo utilizados tem 06 fios, nesse caso há 02 fios comuns que devem ser curto-ciruitados. Nos motores de 06 fios, há na verdade 02 grupos separados de 03 fios, para cada um dos grupos de 03 fios há 01 fio comum. Para descobrir os fios comuns do motor, utilizamos um multímetro na escala ohm, e conectamos um fio qualquer ao pólo negativo do multímetro e depois conectamos cada um dos 02 outros fios do grupo ao pólo positivo do multímetro. A resistência entre o comum e os outros dois fios do motor é sempre a menor resistência (Ver Figura 08 e 09 ). Caso a resistência lida seja 1 indica que você está lendo fios de grupos diferentes, neste caso desconsiderar a medição (Ver Figura 07 ).
Projeto de Robótica :: TKS Software
Figura 09 – Medição de resistência de fios de do motor. Valor lido de 36,7 ohm, menor do que o valor indicado na Figura 08. Ou seja é o comum.
2.2 Descobrindo a seqüência das bobinas
Depois de descobrir o pino comum do motor, é preciso descobrir a seqüência das bobinas para o correto acionamento do motor. Para descobrir a seqüência das bobinas, prendemos um pedaço de fita isolante ao eixo do motor de forma a facilitar a
negativo da fonte de alimentação e com o pólo positivo da fonte de alimentação alimentamos os terminais do motor. Ao alimentar os terminais o eixo do motor se movimenta. Caso os fios de dados do motor não estejam conectados corretamente a movimentação do motor será desordenada, hora indo para frente e hora indo para trás. É necessário alterar a posição dos fios até que ao alimentar cada um dos terminais seqüencialmente, o motor gire de forma ordenada, avançando sempre que uma nova bobina é alimentada. Conforme Figura 10.
Projeto de Robótica :: TKS Software
Figura 10 – Fita isolante no eixo do motor e identificação das bobinas através do movimento do motor.
2.3 Passos do Motor
A forma de operação do motor irá depender da necessidade do sistema, há casos em que o torque é importante e em outros em que necessita-se de uma velocidade maior. Por isso a forma de atuação do motor é regida por passos segundo a tabela a seguir
Passo Características Passo Completo 1(Full-Step) -Somente uma bobina é energizada a cada passo -Menor torque -Pouco Consumo De energia
A seguir, a seqüência correta para se controlar um motor de passo.
Passo completo 1 Nº do passo B3 B2 B1 B0 Decimal 1 1 0 0 0 8 2 0 1 0 0 4 3 0 0 1 0 2 4 0 0 0 1 1
Projeto de Robótica :: TKS Software
4. Circuito para controle dos motores pela porta paralela
O controle dos motores de passo é feito através da porta paralela, que dispõe de 08 pinos de saída de dados que são utilizados para controle direto das entradas dos motores. Os pinos 2 a 5 da porta serial são conectados nas entradas do CI (Circuito Integrado) ULN2003, que ao receber a sinalização da porta serial aciona as entradas respectivas do motor de passo.
Figura 12 – Cirtuito de controle do motor através da porta paralela.
Para fazer a movimentação de 02 motores de passo basta replicar o circuito conectando as entradas de 6 a 9 na entrada do segundo módulo.
4.1. Montagem em ProtoBoard
Para testes de bancada do circuito apresentado utilizamos a montagem em protoboard, que possibilita a fácil montagem e teste de qualquer circuito.
O protoboard possui duas linhas latera is (linhas 1 e 4) curto-circuitadas horizontalmente, e 2 linhas (linhas 2 e 3) de colunas curto-circuitadas verticamente.
Figura 13 – Esquema de ligação do protoboard.
Projeto de Robótica :: TKS Software
Figura 14 – Montagem em protoboard do circuito da Figura 12.
Para facilitar o uso da fonte ATX com o protoboard utilizamos conectores tipo balão nas saídas da fonte.
Figura 15 – Adaptação de conectores nos terminais de saída da fonte para facilitar o uso com protoboard.
Para a montagem do circuito também foi necessário soldar os pinos a serem utilizados a fios de extensão, curto-circuitando os pinos 18 a 25 de terra.
Projeto de Robótica :: TKS Software
Para maiores informações ver Datasheet: ULN2003.pdf
Figura 18 – ULN2003, driver de potência para acionamento dos motores de passo.
Figura 19 – ULN2003, esquema de pinagem
4.3. Diodo Zener
Também conhecido como diodo de ruptura, por intencionalmente ter sido construído para operar na região de ruptura. O diodo zener é utilizado como regulador de tensão, mantendo a tensão constante independente da corrente requisitada pela carga do circuito, porém quando o zener é polarizado diretamente, opera como um diodo retificador normal. Utilizamos o 2 diodos zener BZX79C 3V3, regulando a tensão da fonte para os 2 CIs.
Para maiores informações ver Datasheet: BZX79C12 - Diodo Zenner.pdf.
Figura 20 – Diodo zenner BZX79C
5. Listagem de peças utilizadas
Peça Quantidade Preço (R$) Sub- Total Motor de Passo 2 Un 10,00 20, Proto-board 1 Un 30,00 30, ULN 2003 2 Un 1,80 3, Socket de 16 vias 2 Un 0,50 1, Conector DB25 fêmea 1 Un 1,00 1, Caixa do conector DB25 fêmea 1 Un 1,50 1, Diodo Zenner 2 Un 0,20 0, Peças de Alumínio Solda 1 m 0,50 0, Conector balão 2 Un 0,50 1, Cabo paralelo 1 Un Sugador de Solda 1 Un 8,00 8,
Projeto de Robótica :: TKS Software
Multímetro 1 Un Computador 1 Un Base em acrílico 1 Un Ferro de Solda 1 Un Total: 67,
6. Montagem mecânica
O braço foi montado sobre um abandeja acrílica medindo 24 cm x 33 cm.
Motor do tronco do braço, instalado na parte debaixo da bandeja e fixado por 02 parafusos sem ajuste. Conforme Figura 21.
Tronco do braço, em barra retangular de alumínio medindo 3,8 cm x 7,0 x 21,5 cm, a sua base inferior foi preenchida com taco de madeira para possibilitar a fixação diretamente na polia do motor e utilizado um parafuso lateral para evitar o deslizamento. Na parte superior pelo a lado interno foi instalado o motor do ante- braço também fixado por 02 parafusos sem ajuste. Conforme Figura 22 e 23.
Ante-braço, em barra de alumínio medindo 2,7 cm x 1,5 cm x 17,0 cm. No ponto de 2/3 da barra foi feito um furo, seu interior foi também preenchido com madeira e fixado diretamente na polia do motor com parafuso lateral para evitar o deslize.
Figura 21 – Montagem do motor na base da bandeja.
Projeto de Robótica :: TKS Software
Figura 24 – Interface do software de controle dos motores.
Os motores, inicialmente ficam desligados e zerados. Após a contagem, pelo menos uma das bobinas de cada motor fica energizada. O acionamento dos motores, o programa possibilita comandá-los para irem para frente, para trás e controlar a velocidade de cada motor a partir do aumento ou diminuição do tempo com que cada bobina é energizada. O software criado foi baseado num exemplo encontrado no site http://www.rogercom.com/ - funções escritas em delphi para enviar e rec eber dados através da porta paralela – que explica como enviar e receber dados no através da porta paralela num programa desenvolvido em Delphi.
{Constantes utilizadas para envio e recebimento de dados} Const Base = $378; //Endereço base da porta LPT; Dados = Base+0; //Endereço para escrita dos dados; Status = Base+1; //Endereço para leitura dos dados; Controle = Base+2; //Endereço para escrita; DadosEPP = Base+4; //ou Base+0, lê e escreve no modo EPP. BIT9 = $00; // 0000- BIT8 = $88; // 1000- BIT0 = $01; // 0000- BIT1 = $02; // 0000- BIT2 = $04; // 0000- BIT3 = $08; // 0000- BIT4 = $10; // 0001- BIT5 = $20; // 0010- BIT6 = $40; // 0100- BIT7 = $80; // 1000-
7.1. Enviando comandos para a porta paralela
O sistema operacional Windows NT/2000 e XP não permitem o acesso direto aos motores ( hardware ) por motivos de segurança, devendo haver um driver que possa se comunicar com o núcleo ( Kernel ) para ter acesso às portas físicas do sistema. A partir desse problema, a solução encontrada foi a utilização da DLL Inpout32.dll. Dentro dessa dll já estão inclusas as rotinas out e in para acesso às portas e também o driver que faz a comunicação com o núcleo do sistema operacional. Para que a dll seja
Projeto de Robótica :: TKS Software
utilizada, a dll teve de estar na mesma pasta do programa desenvolvido. A dll
Fazendo a chamada da dll no programa:
{Definição das funções da DLL.} function inportb(EndPorta: Integer): BYTE stdcall; external 'inpout32.dll' name 'Inp32';
procedure outportb(EndPorta: Integer; Valor:BYTE); stdcall; external 'inpout32.dll' name 'Out32';
5.2. Acionando o motor para frente
Falar sobre como mover o motor para frente
5.3. Acionando o motor para trás
Falar sobre como mover o motor para trás
5.4. Ajustando a velocidade do motor
A velocidade do motor é ajustada com o uso dos componentes TRxSlider e TTimer do Delphi. Fazendo uma relação entre o Valor (Value) do RxSlider com o intervalo (Interval) do Timer é possível controlar a velocidade de envio de Bits para o motor. Acompanhe no código:
procedure TForm1.VelocidadeM1Change(Sender: TObject); begin Motor1Time.Interval := VelocidadeM1.Value; end;
8. Conclusões e atividades futuras do projeto
Falar sobre
8.1. Controlar mais de 02 motores
Conforme foi implementado, o processo de comunicação direta com 04 bits para cada motor, possibilita o controle de apenas 02 motores de passo simultaneamente, uma vez que a porta seria só dispõe 08 bits de saída de dados.
No entanto o projeto final requer o controle de 03 motores, uma vez que serão 03 graus de liberdade, tronco, braço e ante-braço. Sendo assim, faz-se necessário para a próxima etapa do projeto pesquisar possibilidades para controle de mais de 02 motores de passo.
8.2. Controlar motores via Joystick
Foi proposta como melhoria da interface de controle do braço a implementação do programa de controle dos motores com acionamento via joystick.
8.3. Melhoria na montagem mecânica
Em virtude do tronco e do ante-braço ter sido instalado diretamente nas polias dos motores, quando estes eram acionados as partes se moviam em pulsos o que não possibilitava movimentos precisos. Sendo assim, foram propostas melhorias na mecânica através do uso de engrenagens para reduzir o grau de movimentação de cada passo e aumentar o torque resultante do motor.