Skip to content
CaioMatheus-cpuPublic

About

Software de controle de robô competitivo FTC (FIRST Tech Challenge) — equipe Rev Atom. Java + NextFTC + PedroPathing.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

REVCA — Robô Competitivo FTC | Equipe Rev Atom

Software de controle do robô competitivo da equipe Rev Atom para a FIRST Tech Challenge (FTC). O projeto cobre todo o ciclo de operação do robô em competição: subsistemas com controle PIDF, modos autônomos baseados em trajetórias e modos teleoperados (TeleOp).

Equipe Rev Atom — 2º lugar na fase Regional, 2º lugar na fase Nacional (Brasil) e participação em torneio internacional no Canadá (FIRST 2025).

Java Gradle FTC Android


Visão geral

O código é construído sobre o FTC SDK e integra duas bibliotecas da comunidade:

  • NextFTC — framework de comandos e subsistemas, com controladores PIDF e feedforward.
  • PedroPathing — seguimento de trajetórias (path following) para a fase autônoma, com tuners de localização e velocidade.

Arquitetura

TeamCode/src/main/java/
  OpModes/
    Autos/          # Rotinas autônomas (AutoRev, Autorev1)
    TeleOp/         # Controle manual (TeleOpRev, TeleOpPremier, OdometryPositionFinder)
  Subsystems/
    Lift.java       # Elevador com controle PIDF (RunToPosition / HoldPosition)
    Intake.java     # Sistema de coleta
    Extend.java     # Extensão do braço
    Values/         # Constantes e ganhos PID (LiftPID, ExtendPID, RConstants, Caminhos)
  pedroPathing/     # Constantes, exemplos e tuners de trajetória

Subsistemas

Cada subsistema é modelado como um Subsystem do NextFTC com comandos compostos. Por exemplo, o Lift usa um PIDFController com feedforward estático para posicionamento preciso do elevador, expondo comandos como toTarget(), ToHigh(), ToLow() e HoldPosition como comportamento padrão.

Autônomo

As rotinas autônomas usam o PedroPathing para seguir trajetórias pré-definidas, com os ganhos calibrados pelos tuners em pedroPathing/tuners_tests/ (velocidade, localização e PID).

Como compilar e enviar ao robô

Pré-requisitos: Android Studio e a Control Hub / Robot Controller da FTC.

  1. Clone o repositório e abra a pasta no Android Studio.
  2. Conecte o Robot Controller (Control Hub) via USB ou Wi-Fi.
  3. Selecione o módulo TeamCode e faça o build/deploy:
./gradlew :TeamCode:assembleDebug
  1. Na Driver Station, selecione o OpMode desejado (Autônomo ou TeleOp) e execute.

Tecnologias

  • Java sobre o FTC Robot Controller SDK
  • Gradle para build
  • NextFTC (comandos, subsistemas, controle PIDF)
  • PedroPathing (path following e tuning de autônomo)

Licença

Este projeto inclui código do FTC SDK, licenciado sob os termos descritos em LICENSE.

Desenvolvido por Caio Matheus Bezerra da Silva — Capitão Técnico e Desenvolvedor, Equipe Rev Atom.

About

Software de controle de robô competitivo FTC (FIRST Tech Challenge) — equipe Rev Atom. Java + NextFTC + PedroPathing.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages