Índice:
- Etapa 1: Visão geral do projeto
- Etapa 2: esquemas
- Etapa 3: Diagrama do controlador PS2
- Etapa 4: Configuração da conexão dos módulos Zio
- Etapa 5: conectar o servo do braço robótico ao servo controlador Zio 16
- Etapa 6: Conecte seu 16 Servo ao Booster DC / DC e configure-o para 6,0V
- Etapa 7: Conecte o Zuino M Uno ao Zio 16 Servo Controlador
- Etapa 8: Conectando o Uno ao receptor PS2
- Etapa 9: Código para braço robótico
- Etapa 10: execute seu código
- Etapa 11: Explicação do código
Vídeo: Braço robótico com módulos Zio Parte 2: 11 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
No tutorial de hoje, iremos utilizar todos os 4 servos e um controlador sem fio PS2 para controlar o braço robótico.
Esta postagem do blog faz parte da Série Zio Robotics.
Introdução
Em nosso blog anterior, postamos o tutorial da Parte 1 sobre como controlar um braço robótico usando módulos Zio. A Parte 1 concentrou-se principalmente em controlar automaticamente a garra do braço robótico para abrir e fechar.
No tutorial de hoje, vamos melhorar um pouco, incluindo um controlador PS2 Wireless para controlar o braço robótico. Para este projeto, estaremos utilizando 4 servos.
Etapa 1: Visão geral do projeto
Nível de dificuldade:
Zio Padawan
Recursos úteis:
Você deve ter um conhecimento básico de como instalar placas de desenvolvimento Zio. Neste tutorial, presumimos que sua placa de desenvolvimento já esteja configurada e pronta para ser configurada. Se você ainda não configurou sua placa, confira nosso tutorial do Guia de início Zio Qwiic abaixo para começar:
Zio Zuino M UNO Guia de início Qwiic
Etapa 2: esquemas
Aqui está o esquema de fiação do projeto da parte 2 do braço robótico, bem como o diagrama do controlador PS2 necessário para entender sua parte de codificação.
Etapa 3: Diagrama do controlador PS2
Etapa 4: Configuração da conexão dos módulos Zio
Abaixo está a conexão de nossos módulos Zio para serem configurados com o Braço Robótico. Conectar todos os módulos é muito fácil e não leva mais de 10 minutos para configurar.
Etapa 5: conectar o servo do braço robótico ao servo controlador Zio 16
Etapa 6: Conecte seu 16 Servo ao Booster DC / DC e configure-o para 6,0V
Usamos um Booster DC / DC para aumentar e ajustar a tensão de alimentação da bateria para 6,0.
Use o potenciômetro no DC Booster para ajustar a tensão até chegar a 6,0. Pressione o botão In / Out até que o display mostre 6.0. Você precisa fornecer energia (bateria de 3,7 V) primeiro ao seu Booster DC / DC para ajustar a tensão.
Etapa 7: Conecte o Zuino M Uno ao Zio 16 Servo Controlador
Qwiic conecte Zuino M Uno ao controlador Zio Servo com cabo qwiic.
Etapa 8: Conectando o Uno ao receptor PS2
Aqui está um diagrama de pinos das conexões. Você precisa de 5 fios de jumper macho para fêmea para esta parte.
Etapa 9: Código para braço robótico
Estaremos usando a PS2 Arduino Library para codificar nosso PS2 Wireless Controller para funcionar com nosso braço robótico. Você pode encontrar e baixar o código-fonte deste projeto Robotic Arm Parte 2 em nossa página do Github.
Baixe e instale as seguintes bibliotecas e salve-as na pasta de bibliotecas do Arduino IDE local:
- Biblioteca de drivers servo Adafruit PWM
- Biblioteca PS2 Arduino
Para instalar as bibliotecas, abra seu Arduino IDE, vá para a guia Sketch, selecione Incluir Biblioteca -> Add. Zip Library. Selecione as bibliotecas acima para serem incluídas em seu IDE.
Arduino tem um guia prático sobre como instalar bibliotecas em seu IDE Arduino. Confira aqui!
Etapa 10: execute seu código
Abra o IDE do Arduino. Em Arquivos> Exemplos> PS2_Arduino_Library, selecione PS2X_Servo
Nota: Antes de poder controlar o seu braço robótico com o Controlador PS2, verifique os seguintes passos: Ligue o seu Controlador PS2. Verifique se o LED de modo acende. Caso contrário, pressione o botão Mode em seu controlador. Depois de fazer o acima, você precisa pressionar o botão reset em seu Zuino M Uno para que ele leia as configurações do controlador. Você precisa pressionar L1 e o Joystick para mover seu braço robótico.
- Joystick esquerdo controla a flexão do braço para cima ou para baixo
- O joystick direito controla a garra para abrir ou fechar e girar a garra para a esquerda ou direita.
Etapa 11: Explicação do código
O uso da biblioteca PS2X Arduino é simples, exigindo apenas uma inicialização, uma configuração e, em seguida, um comando de leitura.
Para definir a conexão de seu controlador PS2 com seu Uno, abaixo estão os pinos que você precisa definir em seu código:
/ *************************************************** *************** * conjunto de pinos conectado ao controlador PS2: * - coluna 1e: original * - coluna 2e: Stef? * substitua os números dos pinos pelos que você usa ****************************************** *********************** / # define PS2_DAT 13 // 14 # define PS2_CMD 11 // 15 # define PS2_SEL 10 // 16 # define PS2_CLK 12 // 17
Substituímos os pinos pelos que usamos para conectar ao nosso Uno, conforme descrito no diagrama de pinos acima.
/ ************************************************** ***************** selecione os modos do controlador PS2: * - pressões = leitura analógica de botões * - ruído = ruído do motor * descomente 1 das linhas para cada seleção de modo ** ************************************************** ************ / // # define pressões true # define pressures false // # define rumble true # define rumble false
Aqui, definimos o modo PS2 para pressões e ruído como falso. Comentamos os que não usamos.
Usaremos apenas o comando Joystick do controlador e L1 para controlar o movimento de nosso braço robótico.
void loop () {/ * Você deve Ler Gamepad para obter novos valores e definir valores de vibração ps2x.read_gamepad (motor pequeno ligado / desligado, força maior do motor de 0-255) se você não habilitar o ruído, use ps2x.read_gamepad (); sem valores Você deve chamar isso pelo menos uma vez por segundo * / if (erro == 1) // pula o loop se nenhum controlador for encontrado return; else {// Controlador DualShock ps2x.read_gamepad (falso, vibrar); // lê o controlador e define o motor grande para girar na velocidade de 'vibração' if (ps2x. Button (PSB_START)) // será TRUE enquanto o botão for pressionado Serial.println ("A partida está sendo mantida"); if (ps2x. Button (PSB_SELECT)) Serial.println ("A seleção está sendo mantida"); vibrar = ps2x. Analog (PSAB_CROSS); // isso definirá a grande velocidade de vibração do motor com base em quão forte você pressiona o botão azul (X) if (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// imprimir os valores do stick se algum for TRUE RY_Value = ps2x. Analog (PSS_RY); RX_Value = ps2x. Analog (PSS_RX); LY_Value = ps2x. Analog (PSS_LY); LX_Value = ps2x. Analog (PSS_LX); Serial.print ("Stick Values:"); Serial.print (RX_Value); Serial.print (""); Serial.print (RY_Value); Serial.print (""); Serial.print (LY_Value); Serial.print (""); Serial.println (LX_Value);
O código abaixo é onde codificamos nossos servos que controlam nosso braço robótico que incluímos na chamada de função em ps2x.button (PSB_L1) || ps2x.button (PSB_R1).
Você precisa pressionar o botão L1 ou R1 junto com o Joystick para controlar seu braço robótico.
O joystick esquerdo controla os servos 2 e 3 para a parte do braço - controla a flexão para cima e para baixo do braço, respectivamente, enquanto o joystick direito controla os servos 0 e 1 da garra do braço robótico para abrir ou fechar e girar para a esquerda ou direita.
SERVO 0, 1 - Garra SERVO 2, 3 - Braço
Você pode fazer alterações nos valores nesta seção para controlar o grau do ângulo do braço robótico:
pulselen0 = mapa (RY_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen1 = mapa (RX_Value, 0, 127, SERVOMIN0, SERVOMAX0); pulselen2 = mapa (LY_Value, 0, 127, SERVOMIN2, SERVOMAX2); pulselen3 = mapa (LX_Value, 0, 255, SERVOMIN3, SERVOMAX3);
Recomendado:
Controle o braço robótico com Zio usando o controlador PS2: 4 etapas
Controle o braço robótico com Zio usando o controlador PS2: esta postagem do blog faz parte da série Zio Robotics.Introdução Esta é a parte final da postagem "Controle um braço robótico com Zio". Neste tutorial, iremos adicionar outra parte ao nosso braço robótico. Tutoriais anteriores não incluem uma base para o
Braço robótico com módulos Zio Parte 3: 4 etapas
Braço robótico com módulos Zio Parte 3: Esta postagem do blog é parte da série Zio Robotics. Introdução Em nosso blog anterior, postamos o tutorial das Partes 1 e 2 sobre como controlar um braço robótico usando módulos Zio. A Parte 1 concentrou-se principalmente no controle automático da garra do braço robótico para
Controle um braço robótico com módulos Zio Parte 1: 8 etapas
Controle um braço robótico com módulos Zio Parte 1: Esta postagem do blog é parte da série Zio Robotics. Introdução Neste tutorial, construiremos um projeto onde usaremos módulos Zio para controlar o braço robótico. Este projeto irá ensiná-lo a fazer com que sua garra de braço robótico abra e feche. Este n
COMO MONTAR UM BRAÇO DE ROBÔ DE MADEIRA IMPRESSIONANTE (PARTE 3: BRAÇO DE ROBÔ) - COM BASE NO MICRO: BITN: 8 Passos
COMO MONTAR UM BRAÇO DE ROBÔ DE MADEIRA IMPRESSIONANTE (PARTE 3: BRAÇO DE ROBÔ) - COM BASE NO MICRO: BITN: O próximo processo de instalação é baseado na conclusão do modo de evitar obstáculos. O processo de instalação na seção anterior é igual ao processo de instalação no modo de rastreamento de linha. Então, vamos dar uma olhada na forma final de A
Como montar um braço robótico impressionante de madeira (Parte 1: Robô para rastreamento de linha) - Baseado no Micro: Bit: 9 etapas
Como montar um braço robótico impressionante de madeira (Parte 1: Robô para rastreamento de linha) - Baseado no Micro: Bit: Este cara de madeira tem três formas, é muito diferente e impressionante. Então vamos entrar nisso um por um