Skip to content
@AMR-Frederico

Robot Frederico

Frederico é um robô móvel autônomo (AMR) para categoria de competição Trekking Indoor/Robomagellan

🎩 Frederico

🏎️ Descrição da categoria

O Frederico é um robô da categoria Trekking (ou Robomagellan, em inglês), que deve ser capaz de se localizar e locomover em um espaço determinado.

Principais regras

Características do robô:

  • Dimensões máximas: 500x500x500 (cm)
  • Peso: sem restrição
  • Controle: Autônomo

Características do campo:

  • Dimensões campo: 18x20 (m)
  • A competição será realizada em gramado aberto, portanto estará sujeito as condições do campo e do clima ou em ambiente fechado.
  • O robô deve ser capaz de identificar e alcançar 3 marcos definidos por uma chapa de metal branca de dimensões 1000x1000x2 (mm).
  • Poderá, ou não, ser solicitado um cone para facilitar a identificação dos objetivos.

Características de prova:

  • Duração: 10 min
  • O robô deve alcançar os objetivos e ordem crescente (início para marco 1, marco 1 para marco 2 e marco 2 para marco 3);
  • Ao redor do objetivo 3 terá obstáculos, localizados a uma distância máxima de 5m do marco 3, sem tamanho pré definido e que deverão ser contornados, e não transpostos.
  • Ao atingor cada marco, com pelo uma parte do robô tocando o marco, o robô deverá sinalizar por meio de um dispositivo luminoso, vísivel e aparente, antes de prosseguir para o próximo objetivo. Ao chegar e sinalizar a chegada no último objetivo, o tempo será parado.
  • Ganha o robô que terminar o circuito mais rápido, ou o que avance mais no trajeto.

O código:

Para a versão atual do projeto, temos um ESP32 dedicado à leitura e processamento de sensores e também responsável pela sinalização do robô, outro para a leitura dos encoders e controle do driver de motor, e por fim, outro dedicado à conexão bluetooth com o controle de PS4 A mágica em si acontece no Raspberry Pi, em que rodamos o ROS 1 - atualmente utilizamos a versão noetic - que concentra todas as camadas mais alto nível do projeto, é onde fazemos a odometria, controle de posição, segurança e controle de objetivos.

Nesta organização você encontrará todos os pacores/códigos escritos para o Fred.

Hardware

Em questão de hardware, o Fred tem:

Potência

  • 4x Motores 12V 1600 rpm
  • 2x driver monster motor VNH2SP30 dual channel

Digital

  • 2x ESP32
  • 1x Raspberry Pi 4b+
  • 3x Sensor ultrassom HCSR05
  • 1x Sensor inercial MPU6050
  • 1x Fita Led endereçavel WS2812B
  • 1x RPLidar A1
  • 1x Regulador de tensão XL4015

Baterias

  • 1x Bateria LiPo 5000mAh 20c
  • 1x Bateria LiFe 1100mAh 10c

🌐 Links úteis

🔗 Regras Robocore

Convenções ROS

🔗 REP 103 - Standard Units of Measure and Coordinate Conventions

🔗 REP 105 - Coordinate Frames for Mobile Platforms

🔗 REP 145 - Conventions for IMU Sensor Drivers

Pinned

  1. fred2_description fred2_description Public

    The fred2_description package in ROS 2 is dedicated to creating and launching the robot description for simulation and real-world applications. It utilizes URDF files, Xacro, and launch files to re…

    Python

  2. fred2_controllers fred2_controllers Public

    The Controllers package provides various controllers for the robot, including a position controller that utilizes a PID algorithm for controlling the robot's position. The primary node in this pack…

    Python 1 1

  3. fred2_navigation fred2_navigation Public

    The fred2_navigation package in ROS 2 is designed to provide essential tools for robot navigation

    Python

  4. fred2_move_base fred2_move_base Public

    The move_base_package is a comprehensive package designed to control various aspects of the robot's behavior like sinalization, odometry, joysticks commands and velocity control

    Python

  5. fred2_goal_manager fred2_goal_manager Public

    The ROS 2 Goal Manager package provides nodes for managing goals in a robotic system. This package includes two nodes, each serving a distinct purpose in goal management.

    Python

  6. fred2_machine_states fred2_machine_states Public

    The fred2_machine_states package in ROS 2 is designed to manage various states of a robot, focusing on the modes like MANUAL, AUTONOMOUS, IN GOAL, MISSION_COMPLETED and EMERGENCY

    Python 1

Repositories

Showing 10 of 32 repositories
  • C++ 0 0 1 0 Updated May 18, 2024
  • fred2_machine_states Public

    The fred2_machine_states package in ROS 2 is designed to manage various states of a robot, focusing on the modes like MANUAL, AUTONOMOUS, IN GOAL, MISSION_COMPLETED and EMERGENCY

    Python 1 0 0 0 Updated May 17, 2024
  • fred2_move_base Public

    The move_base_package is a comprehensive package designed to control various aspects of the robot's behavior like sinalization, odometry, joysticks commands and velocity control

    Python 0 0 1 0 Updated May 13, 2024
  • fred2_controllers Public

    The Controllers package provides various controllers for the robot, including a position controller that utilizes a PID algorithm for controlling the robot's position. The primary node in this package is positionController, which is responsible for managing the robot's movement towards a goal position.

    Python 1 1 0 0 Updated May 13, 2024
  • fred2_goal_manager Public

    The ROS 2 Goal Manager package provides nodes for managing goals in a robotic system. This package includes two nodes, each serving a distinct purpose in goal management.

    Python 0 Apache-2.0 0 0 0 Updated May 13, 2024
  • Makefile 0 0 0 0 Updated Apr 13, 2024
  • C++ 0 2 0 0 Updated Apr 13, 2024
  • fred2_navigation Public

    The fred2_navigation package in ROS 2 is designed to provide essential tools for robot navigation

    Python 0 0 0 0 Updated Mar 12, 2024
  • fred2_description Public

    The fred2_description package in ROS 2 is dedicated to creating and launching the robot description for simulation and real-world applications. It utilizes URDF files, Xacro, and launch files to represent the robot's structure and visualize it in tools like RViz.

    Python 0 0 0 0 Updated Feb 21, 2024
  • C 0 0 1 0 Updated Feb 6, 2024

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…