The Borikengineers (FTC Team #20380) https://borikengineers.com/ FTC Team #20380: The Borikengineers Sat, 21 Feb 2026 02:28:58 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.1 207332593 Programador de Servos Wi-Fi: De la Necesidad a la Solución de Campo https://borikengineers.com/programador-de-servos-wi-fi-de-la-necesidad-a-la-solucion-de-campo/ https://borikengineers.com/programador-de-servos-wi-fi-de-la-necesidad-a-la-solucion-de-campo/#respond Sat, 21 Feb 2026 02:20:13 +0000 https://borikengineers.com/?p=4121 En el taller de Borikengineers, este proyecto nació de una necesidad absoluta. Durante el desarrollo y las pruebas en robótica competitiva, cambiar la configuración de un servo de modo continuo a modo posicional (o viceversa) suele ser un proceso tedioso. Necesitábamos una herramienta de campo que fuera rápida, confiable y que no dependiera de estar […]

The post Programador de Servos Wi-Fi: De la Necesidad a la Solución de Campo appeared first on The Borikengineers (FTC Team #20380).

]]>
En el taller de Borikengineers, este proyecto nació de una necesidad absoluta. Durante el desarrollo y las pruebas en robótica competitiva, cambiar la configuración de un servo de modo continuo a modo posicional (o viceversa) suele ser un proceso tedioso. Necesitábamos una herramienta de campo que fuera rápida, confiable y que no dependiera de estar conectados a una computadora portátil en medio de los pits.

Así nació nuestro Programador de Servos Wi-Fi, impulsado por un ESP8266 (NodeMCU V3) y controlable completamente desde un teléfono móvil sin necesidad de internet.

Dando Honor a Quien Honor Merece: La Comunidad de Chief Delphi

Antes de hablar de la interfaz y la conectividad, es vital reconocer de dónde provino la “magia” de este proyecto. La ingeniería inversa y el trabajo pesado para descubrir las secuencias de bytes hexadecimales exactas necesarias para flashear la memoria EEPROM de estos servos no fue obra nuestra.

Ese mérito pertenece a la increíble comunidad de Chief Delphi. Encontramos un código base funcional en este hilo del foro: Reprogramming Dual Mode Servo Using Arduino. El usuario Asaf Meizner, alumni del equipo Makers Assemble 5951, creó el script original para enviar los comandos a través de Arduino. Nosotros tomamos esa excelente base y la llevamos al siguiente nivel para crear una herramienta de grado de campo.

Nuestra aportació: Una Interfaz Inalámbrica y Elegante

El script original requería enviar comandos a través del Monitor Serie de una computadora. Nosotros decidimos empaquetar esa lógica dentro de un servidor web autónomo alojado en un NodeMCU.

Las características de nuestra versión incluyen:

  • Punto de Acceso Independiente: El NodeMCU crea su propia red Wi-Fi (Borik-Servo-Tool). Te conectas desde tu teléfono, abres el navegador y la herramienta está lista.
  • Interfaz Móvil Nativa: Utilizando HTML, CSS y JavaScript alojados directamente en la memoria del microcontrolador, diseñamos una interfaz que se siente como una aplicación móvil profesional. Cuenta con botones táctiles con animaciones, notificaciones emergentes (Toasts) y bloqueos de seguridad para evitar dobles clics accidentales durante el flasheo.
  • Banco de Pruebas Integrado: No solo flasheamos el servo, sino que añadimos una sección de “Test Bench” para enviar señales PWM de 1000µs, 1500µs y 2000µs inmediatamente después de la programación para validar el movimiento.
  • Lógica a Prueba de Fallos: Implementamos un sistema de control de pines dinámico, alternando entre OUTPUT e INPUT_PULLUP para la comunicación UART (RX/TX), junto con comandos de “Signal Wash” para asegurar que el motor no se mueva erráticamente al terminar de programarse.

El Hardware

El circuito es engañosamente simple, utilizando una configuración UART Half-Duplex:

  1. Un NodeMCU V3 (ESP8266).
  2. El pin D1 (RX) escucha las respuestas del servo.
  3. El pin D2 (TX) envía los comandos de programación y la señal PWM.
  4. Una resistencia de 470Ω conectada entre D2 y el cable de señal del servo para proteger el microcontrolador de colisiones de datos.

Componentes Eléctricos

  1. Microcontroller: ESP8266 NodeMCU V3.
  2. Resistencia (Importante): 470Ω a 1kΩ (1/4 Watt).
    • Localización: Entre el pin D2 y el cable de señal del servo.
    • Propósito: Sirve para proteger el NodeMCU cuando el servo responde a la señal que se le envia. Ya que la señal del servo es de 5V, mientras que el NodeMCU espera un voltaje de 3.3V. La resistencia ayuda a mantener la corriente en un nivel tolerable.
  • Fuente de poder
    • Para servos pequeños puedes usar el pin VIN si estas conectado a USB.
    • Para servos grandes de alto torque necesitas una fuente de poder externa o un paquete de baterias de 5V a 6V y asegurarte de conectar el negativo de la bateria al GND del NodeMCU.

Instrucciones de Alambrado

  1. Union de señales
    • Toma el cable blanco o naranja del servo.
    • Conectalo directamente al pin D1 del NodeMCU.
    • Conecta el mismo cable a una resistencia de 470Ω.
    • Conecta el otro lado del resitor al pin D2 del NodeMCU.
  2. Poder
    • Conecta el cable rojo del servo al positivo de una fuente externa de poder de 5V o a pin VIN del NodeMCU.
    • Conecta el cable negro del servo al pin GND del NodeMCU
    • Si usas una fuente de poder externa, conecta el negativo al GND del NodeMCU.

Aqui te dejo un diagrama de la conexión:

     NODE MCU V3 (ESP8266)                          SERVO MOTOR
   +-----------------------+                    +-----------------+
   |                       |                    |                 |
   |                   GND |--------------------| Negro / Marrón  |
   |                       |                    |                 |
   |              VIN (5V) |--------------------| Rojo (VCC)      |
   |                       |                    |                 |
   |             D1 (GPIO5)|--------------+     |                 |
   |             (RX Input)|              |     |                 |
   |                       |              +-----| Blanco / Naranja|
   |             D2 (GPIO4)|----[470Ω]----^     | (Señal)         |
   |             (TX/PWM)  |   Resistencia      |                 |
   +-----------------------+                    +-----------------+

El Código Completo: Construye tu Propio Programador

Para aquellos que quieran replicar esta herramienta en sus propios talleres, aquí compartimos el código fuente completo para el NodeMCU V3. Hemos empaquetado toda la interfaz web, el manejo de Wi-Fi y la lógica de programación en un solo archivo .ino para facilitar su implementación.

Necesitas instalar el compilador de Arduino. Una vez instalado, ve a File>Preferences, y en Additional Board Manager URLs pon esta direccion:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

Luego abres Tool>Board>Boards Manager, buscas “ESP8266” e instalas el que se ve abajo. Eso te permitira compilar y subir el codigo al NodeMCU.

Este es el código. Tambien puedes conseguirlo en nuestro repositorio en Github.

/* ============================================================================
 * Project: Borikengineers Servo Programmer & Test Bench
 * Author:  Borikengineers FTC Team 20380
 * Origin:  Aguadilla, Puerto Rico
 *
 * Description: 
 * This code configures an ESP8266 to host a local web server network 
 * ("Borik-Servo-Tool") to program and test servos via a mobile-friendly UI. 
 *
 * License:
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * ============================================================================ */

#include <ESP8266WiFi.h>      // Core Wi-Fi library for ESP8266
#include <ESP8266WebServer.h> // Library to host the local web server
#include <SoftwareSerial.h>   // Allows serial communication on custom pins
#include <Servo.h>            // Standard library to generate PWM signals for servos

// Define hardware pins used for communicating with the servo
#define RX_PIN D1
#define TX_PIN D2 

// Initialize objects
SoftwareSerial mySerial(RX_PIN, TX_PIN); // Serial connection for programming the servo
Servo myServo;                           // PWM connection for testing the servo
ESP8266WebServer server(80);             // Web server running on standard HTTP port 80

// State flag to prevent concurrent requests from crashing the serial sequence
bool isBusy = false;

// Helper function to clear the incoming serial buffer
// This ensures old responses don't interfere with new commands
void flushMySerial() {
  while (mySerial.available()) { mySerial.read(); }
}

// Configures the servo to operate in Positional Mode (Standard 0-180 degree operation)
void sendServoModeSequence() {
  if(isBusy) return; // Block execution if another operation is running
  isBusy = true;
  
  // Stop sending PWM signals before attempting serial communication on the same line
  myServo.detach();
  delay(500);

  // Command 1: Initialization / Wake-up sequence
  pinMode(TX_PIN, OUTPUT);
  byte s1[] = {0xFF,0xFF,0xFE,0x02,0x01,0xFE};
  mySerial.write(s1, sizeof(s1));
  pinMode(TX_PIN, INPUT_PULLUP); // Switch to input to allow the servo to pull the line (half-duplex simulation)
  delay(10); flushMySerial();

  // Command 2: Main configuration payload for Positional Mode
  pinMode(TX_PIN, OUTPUT);
  byte s4s[] = {0xFF,0xFF,0x01,0x2F,0x03,0x06,0x02,0x1E,0x00,0x05,0x00,0x0F,0x00,0x2D,0x00,0x00,0x00,0x00,0x0F,0x03,0xFC,0x00,0x00,0x00,0x00,0x41,0x03,0xC5,0x00,0x00,0x01,0xFF,0x01,0x00,0x02,0x09,0xC4,0x01,0xF4,0x03,0xE8,0x00,0x01,0x00,0x00,0x00,0x00,0x03,0xE8,0x00,0xB2};
  mySerial.write(s4s, sizeof(s4s));
  pinMode(TX_PIN, INPUT_PULLUP);
  delay(10); flushMySerial();

  // Command 3: Finalize / Save to EEPROM
  pinMode(TX_PIN, OUTPUT);
  byte s5[] = {0xFF,0xFF,0x01,0x04,0x03,0x34,0x01,0xC2};
  mySerial.write(s5, sizeof(s5));
  pinMode(TX_PIN, INPUT_PULLUP);
  delay(10); flushMySerial();
  
  isBusy = false; // Release the lock
}

// Configures the servo to operate in Continuous Rotation Mode (360 degree wheel mode)
void sendContinuousModeSequence() {
  if(isBusy) return;
  isBusy = true;
  
  myServo.detach();
  delay(500);

  // Command 1: Initialization / Wake-up sequence
  pinMode(TX_PIN, OUTPUT);
  byte s1[] = {0xFF,0xFF,0xFE,0x02,0x01,0xFE};
  mySerial.write(s1, sizeof(s1));
  pinMode(TX_PIN, INPUT_PULLUP);
  delay(10); flushMySerial();

  // Command 2: Main configuration payload for Continuous Mode
  pinMode(TX_PIN, OUTPUT);
  byte s4c[] = {0xFF,0xFF,0x01,0x2F,0x03,0x06,0x32,0x14,0x00,0x05,0x00,0x0A,0x00,0x0A,0x00,0x1E,0x00,0x00,0x00,0x03,0xFF,0x01,0x00,0x00,0x00,0x41,0x03,0xC5,0x01,0xF4,0x01,0xFF,0x00,0x00,0x02,0x06,0x0E,0x05,0xAA,0x03,0xE8,0x00,0x14,0x00,0x00,0x00,0x00,0x03,0xE8,0x00,0x99};
  mySerial.write(s4c, sizeof(s4c));
  pinMode(TX_PIN, INPUT_PULLUP);
  delay(10); flushMySerial();

  // Command 3: Finalize / Save to EEPROM
  pinMode(TX_PIN, OUTPUT);
  byte s5[] = {0xFF,0xFF,0x01,0x04,0x03,0x34,0x01,0xC2};
  mySerial.write(s5, sizeof(s5));
  pinMode(TX_PIN, INPUT_PULLUP);
  delay(10); flushMySerial();
  
  isBusy = false;
}

// Generates the HTML, CSS, and JS for the web interface
String getHTML() {
  // Capture URL arguments to display toast notifications (e.g., /?msg=Success)
  String msg = server.arg("msg");
  msg.replace("+", " ");
  String displayMode = (msg == "") ? "none" : "block";

  // Build the HTML page structure
  String html = "<!DOCTYPE html><html><head>";
  html += "<meta name='viewport' content='width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0'>";
  html += "<title>Borikengineers Tool</title>";
  
  // Inject CSS styling
  html += "<style>";
  html += ":root { --bg: #f2f2f7; --card: #ffffff; --primary: #003366; --accent: #ff8c00; --text: #1c1c1e; } ";
  html += "* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; } ";
  html += "body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, sans-serif; background: var(--bg); color: var(--text); margin: 0; padding: 0; } ";
  html += ".header { background: linear-gradient(135deg, var(--primary), #001f3f); padding: 35px 20px 25px; text-align: center; border-bottom: 4px solid var(--accent); border-radius: 0 0 24px 24px; box-shadow: 0 10px 25px rgba(0,51,102,0.15); } ";
  html += ".header h1 { margin: 0; color: white; font-size: 24px; font-weight: 800; letter-spacing: 0.5px; text-transform: uppercase; } ";
  html += ".header p { margin: 6px 0 0; color: rgba(255,255,255,0.8); font-size: 13px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; } ";
  html += ".toast { display: " + displayMode + "; background: #34c759; color: white; font-weight: 600; text-align: center; padding: 14px; margin: -10px 20px 20px; border-radius: 14px; box-shadow: 0 8px 20px rgba(52,199,89,0.3); animation: slideDown 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); font-size: 15px; position: relative; z-index: 10; } ";
  html += "@keyframes slideDown { from { opacity: 0; transform: translateY(-30px); } to { opacity: 1; transform: translateY(0); } } ";
  html += ".container { padding: 20px; max-width: 500px; margin: 0 auto; } ";
  html += ".card { background: var(--card); border-radius: 20px; padding: 24px; margin-bottom: 20px; box-shadow: 0 4px 24px rgba(0,0,0,0.06); } ";
  html += ".card-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 18px; border-bottom: 2px solid #f0f0f5; padding-bottom: 12px; } ";
  html += "h3 { margin: 0; color: #8e8e93; font-size: 13px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; } ";
  html += "#working { display: none; color: var(--accent); font-size: 13px; font-weight: 700; } ";
  html += ".spinner { display: inline-block; width: 14px; height: 14px; border: 2px solid rgba(255,140,0,0.3); border-radius: 50%; border-top-color: var(--accent); animation: spin 0.8s linear infinite; margin-right: 6px; vertical-align: middle; } ";
  html += "@keyframes spin { to { transform: rotate(360deg); } } ";
  html += ".btn { display: block; width: 100%; padding: 18px; border: none; border-radius: 16px; font-size: 16px; font-weight: 700; color: white; text-align: center; text-decoration: none; cursor: pointer; transition: transform 0.1s ease, box-shadow 0.1s ease; margin-bottom: 14px; } ";
  html += ".btn:active { transform: scale(0.96); box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important; } ";
  html += ".btn-orange { background: linear-gradient(135deg, #ff9500, #ff8c00); box-shadow: 0 8px 20px rgba(255,140,0,0.3); } ";
  html += ".btn-blue { background: linear-gradient(135deg, #007aff, #0056b3); box-shadow: 0 8px 20px rgba(0,122,255,0.3); } ";
  html += ".btn-green { background: linear-gradient(135deg, #34c759, #28a745); box-shadow: 0 8px 20px rgba(40,167,69,0.3); } ";
  html += ".btn-red { background: linear-gradient(135deg, #ff3b30, #dc3545); box-shadow: 0 8px 20px rgba(220,53,69,0.3); } ";
  html += ".btn-gray { background: linear-gradient(135deg, #8e8e93, #6c757d); box-shadow: 0 8px 20px rgba(108,117,125,0.3); margin-bottom: 0; } ";
  html += ".grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; } ";
  html += ".grid .btn { margin-bottom: 0; } ";
  html += ".disabled { opacity: 0.6; pointer-events: none; transform: none !important; box-shadow: none !important; } ";
  html += ".footer { text-align: center; font-size: 12px; color: #aeaeb2; font-weight: 500; padding: 10px 0 30px; } ";
  html += "</style>";

  // Inject JavaScript for UI interactions
  html += "<script>";
  html += "function disable(m){";
  html += "  document.querySelectorAll('.btn').forEach(b => b.classList.add('disabled'));"; // Disable buttons to prevent duplicate requests
  html += "  let w = document.getElementById('working');";
  html += "  w.style.display = 'block';";
  html += "  w.innerHTML = '<span class=\"spinner\"></span> ' + m;"; // Show loading spinner
  html += "}";
  html += "</script>";

  // Build the HTML body elements and route links
  html += "</head><body>";
  html += "<div class='header'><h1>Borikengineers</h1><p>Servo Programmer</p></div>";
  html += "<div class='container'>";
  html += "<div class='toast'>" + msg + "</div>"; // Display success messages here
  html += "<div class='card'>";
  html += "<div class='card-header'><h3>Program Mode</h3><div id='working'></div></div>";
  html += "<a href='/set?m=1' onclick=\"disable('Flashing Continuous...')\" class='btn btn-orange'>FLASH CONTINUOUS</a>";
  html += "<a href='/set?m=2' onclick=\"disable('Flashing Positional...')\" class='btn btn-blue'>FLASH POSITIONAL</a>";
  html += "</div>";
  html += "<div class='card'>";
  html += "<div class='card-header' style='margin-bottom:18px; border:none; padding:0;'><h3>Test Bench</h3></div>";
  html += "<div class='grid'>";
  html += "<a href='/move?v=2000' class='btn btn-green'>FWD / 180&deg;</a>"; // 2000 microseconds = max forward
  html += "<a href='/move?v=1000' class='btn btn-red'>REV / 0&deg;</a>";    // 1000 microseconds = max reverse
  html += "</div>";
  html += "<a href='/move?v=1500' class='btn btn-gray'>STOP / 90&deg;</a>";  // 1500 microseconds = center/stop
  html += "</div>";
  html += "<div class='footer'>Borik Engineers | Field Tool v3.0</div>";
  html += "</div></body></html>";
  return html;
}

void setup() {
  // Serial setup for debugging
  Serial.begin(115200);
  
  // Software Serial setup for servo communication (Servos often use specific baud rates)
  mySerial.begin(76800);
  
  // Default TX pin to input with pullup to idle high
  pinMode(TX_PIN, INPUT_PULLUP);

  // Set up the ESP8266 as an Access Point
  WiFi.softAP("Borik-Servo-Tool", "12345678");

  // Route: Main Page
  server.on("/", [](){ server.send(200, "text/html", getHTML()); });
  
  // Route: Handle programming requests
  server.on("/set", [](){
    if(isBusy) return;
    String mode = server.arg("m");
    String responseMsg = "";
    
    // Check which mode the user selected
    if(mode == "1") {
      sendContinuousModeSequence();
      responseMsg = "Continuous+Mode+Activated";
    } else {
      sendServoModeSequence();
      responseMsg = "Positional+Mode+Activated";
    }
    
    // Redirect back to the main page with a success message
    server.sendHeader("Location", "/?msg=" + responseMsg);
    server.send(303);
  });

  // Route: Handle PWM test movements
  server.on("/move", [](){
    if(isBusy) return;
    
    // Read the requested pulse width (in microseconds)
    int pulse = server.arg("v").toInt();
    
    // Re-attach the servo to the TX pin for standard PWM generation
    myServo.attach(TX_PIN);
    myServo.writeMicroseconds(pulse);
    
    // Redirect back to the main page
    server.sendHeader("Location", "/");
    server.send(303);
  });

  // Start the web server listener
  server.begin();
}

void loop() { 
  // Continuously listen for incoming HTTP requests
  server.handleClient(); 
}

Como usar la herramienta

Una vez compilas el codigo y lo subes al NodeMCU el programa se inicia y se crea el punto de acceso WiFi llamado Borik-Servo-Tool. El password es: 12345678. El nombre y password se puede cambiar en el código cambiando esta linea:

WiFi.softAP("Borik-Servo-Tool", "12345678");

Una vez conectado al punto de acceso, abres un navegador de internet y entras la siguiente direccion: 192.168.4.1

Al entrar veras esta pantalla

Servo Programmer
Servo Programmer

El programa es bien simple. La parte de arriba (Program Mode) te permite programar el servo en modo de rotación continua o modo posicional. La parte de abajo (Test Bench) te permite mover el servo para probarlo.

Conclusión

Este es un ejemplo perfecto de cómo el código abierto y la colaboración en línea impulsan la ingeniería hacia adelante. Tomamos una solución brillante de la comunidad de Chief Delphi y le aplicamos nuestra experiencia en interfaces web y sistemas integrados para crear una herramienta indispensable para nuestro equipo.

Esperamos que esta herramienta le sirva a otros equipos para ser más eficientes durante las competencias. Un enorme agradecimiento nuevamente a la comunidad de Chief Delphi por hacer el trabajo pesado de ingeniería inversa. Si integras este código en tu taller, ¡déjanos un comentario o etiquétanos en redes sociales!

The post Programador de Servos Wi-Fi: De la Necesidad a la Solución de Campo appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/programador-de-servos-wi-fi-de-la-necesidad-a-la-solucion-de-campo/feed/ 0 4121
¡Los Borikengineers 2 ganan campeonato de FIRST Tech Challenge Puerto Rico! https://borikengineers.com/los-borikengineers-2-ganan-campeonato-de-first-tech-challenge-puerto-rico/ https://borikengineers.com/los-borikengineers-2-ganan-campeonato-de-first-tech-challenge-puerto-rico/#respond Tue, 19 Mar 2024 03:38:31 +0000 https://borikengineers.com/?p=2493 ¡Se hizo historia! Borikengineers Triunfan en el Primer Campeonato de FIRST Tech Challenge en Puerto Rico El entusiasmo estaba en el aire el pasado domingo, 18 de marzo de 2024, cuando Puerto Rico acogió su primer campeonato de FIRST Tech Challenge. Organizado por Eureka PR y auspiciado por Raytheon Technologies, este evento marcó un hito […]

The post ¡Los Borikengineers 2 ganan campeonato de FIRST Tech Challenge Puerto Rico! appeared first on The Borikengineers (FTC Team #20380).

]]>
¡Se hizo historia! Borikengineers Triunfan en el Primer Campeonato de FIRST Tech Challenge en Puerto Rico

Borikengineers 2 (FTC 24956), campeones de FTC Puerto Rico
Borikengineers 2 (FTC 24956), campeones de FTC Puerto Rico

El entusiasmo estaba en el aire el pasado domingo, 18 de marzo de 2024, cuando Puerto Rico acogió su primer campeonato de FIRST Tech Challenge. Organizado por Eureka PR y auspiciado por Raytheon Technologies, este evento marcó un hito para la comunidad de robótica en la isla. Los Borikengineers, un equipo puertorriqueño con experiencia en juegos clasificatorios en Washington, DC, se enfrentaron al desafío con determinación y habilidad, dejando su huella en cada etapa del torneo.

La jornada comenzó temprano en la Escuela Robbinson en El Condado, San Juan. Después de la instalación de las mesas de juego, los equipos se sometieron a la evaluación del portafolio de trabajo, donde los Borikengineers impresionaron a los jueces con su presentaciones sólidas y recibieron valiosos feedbacks. La inspección física y de funcionamiento de los robots se completó sin contratiempos, gracias a la meticulosa preparación de los equipos. Con las formalidades cumplidas, el almuerzo marcó el comienzo de un día lleno de emociones en las excelentes instalaciones de la Escuela Robbinson.

Los Borikengineers 1 posando ante su mesa y robot

Los juegos clasificatorios iniciaron con el equipo novato, Borikengineers 2 (#24956), mostrando su potencial desde el primer encuentro. En alianza con el equipo Finger Puppet Mafia de Iowa (#8588), dominaron la competencia, demostrando habilidades estratégicas y ejecución impecable. Mientras tanto, Borikengineers 1 (#20380), el equipo veterano, también brilló en su primer enfrentamiento, asegurando una victoria ajustada pero significativa.

Borikengineers 2 con su mentor Anthony Munera acordando su estrategia con el equipo de Iowa, The Finger Puppet Mafia
Primer juego de Borikengineers 2
Primer juego de Borikengineers 1

A lo largo del día, los Borikengineers enfrentaron desafíos y momentos de emoción, como el enfrentamiento cara a cara de nuestros dos equipos, Borikengineers 1 vs Borikengineers 2, donde Borikengineers 2 se alzó con una victoria estrecha de a penas 1 punto! Finalmente, ambos equipos lograron asegurar los primeros puestos en el ranking, con Borikengineers 2 liderando las clasificatorias. Con la selección de alianzas, ambos equipos demostraron su visión estratégica, formando equipos sólidos para las semifinales.

¡Borikengineers 1 y Borikengineers 2 enfrentándose cara a cara!

A pesar de una actuación sobresaliente, Borikengineers 1 no pudo avanzar en las semifinales. Sin embargo, los novatos de Borikengineers 2 alcanzaron la final, mostrando su capacidad para enfrentar la presión y competir al más alto nivel. En una serie de emocionantes enfrentamientos, Borikengineers 2 y EMC Team Tech se coronaron como campeones, demostrando una vez más el talento y la dedicación del equipo puertorriqueño.

Las ceremonias de premiación fueron un momento de orgullo y reconocimiento para los Borikengineers. Mientras Borikengineers 1 recibió el Connect Award por su destacada conexión con la comunidad STEM, Borikengineers 2 fue galardonado con el Motivate Award y el Winning Alliance – Captain Award, celebrando su compromiso con los valores de FIRST y su papel como líderes de la alianza ganadora.

Borikengineers 2 recibiendo el premio de Motivate Award
Borikengineers 1 Recibiendo el premio de Connect Award

Aunque la victoria en el Inspire Award y el pase a la mundial eludieron a los Borikengineers, el reconocimiento al equipo del Colegio San Pedro Martir de Verona (24954) refleja la calidad y la competencia en el evento. Sin embargo, los Borikengineers miran hacia el futuro con determinación y gratitud por la oportunidad de representar a Puerto Rico en la escena mundial de robótica.

El campeonato no solo fue una prueba de habilidades técnicas, sino también una oportunidad para forjar nuevas conexiones y amistades. El trabajo en equipo con EMC Team Tech (#20369) y la colaboración con equipos visitantes como Finger Puppet Mafia(#8588) destacaron la importancia del espíritu de cooperación en la comunidad de FIRST.

También queremos destacar la labor de todos los mentores de los equipos de FTC en el mundo, pero en especial a los de Puerto Rico. Todos nuestros mentores tuvieron que prepararse para este evento en menos de dos meses, y lo hicieron de manera espectacular. Su dedicación y entrega a sus estudiantes repercutirán en la creación de profesionales en el mañana y el mejoramiento de nuestra sociedad. Están sembrando la semilla del conocimiento en mentes frescas que serán los profesionales del futuro. Su orientación y apoyo no solo son fundamentales para el éxito en competiciones como estas, sino también para el desarrollo integral de los jóvenes, inspirándolos a perseguir sus sueños y contribuir positivamente a la sociedad.

Además, extendemos nuestro más sincero agradecimiento a nuestros auspiciadores cuyo apoyo incondicional hizo posible este emocionante evento. Su compromiso con el desarrollo de la educación STEM en Puerto Rico es verdaderamente invaluable. Gracias a su generosidad, los jóvenes puertorriqueños tienen la oportunidad de participar en experiencias transformadoras como esta competencia de FIRST Tech Challenge, donde pueden desarrollar habilidades técnicas, fomentar la innovación y formar parte de una comunidad global de aprendizaje. Sin su respaldo, no habría sido posible llevar a cabo este evento histórico, y estamos profundamente agradecidos por su continua dedicación a la educación y la excelencia en la tecnología.

Sra Silvia Montero

Aguadilla Bowling Center

En última instancia, los Borikengineers expresan su agradecimiento a Eureka PR por hacer posible este evento histórico. Al proporcionar una plataforma para el talento local y fomentar la pasión por la robótica, han sentado las bases para un futuro emocionante para la innovación en Puerto Rico. ¡Con su éxito en el primer campeonato de FIRST Tech Challenge, los Borikengineers han dejado claro que están listos para conquistar nuevos desafíos y seguir elevando el nombre de Puerto Rico en la escena mundial de la robótica!

The post ¡Los Borikengineers 2 ganan campeonato de FIRST Tech Challenge Puerto Rico! appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/los-borikengineers-2-ganan-campeonato-de-first-tech-challenge-puerto-rico/feed/ 0 2493
Primer juego de exhibición de FTC en Puerto Rico! https://borikengineers.com/primer-juego-de-exhibicion-de-ftc-en-puerto-rico/ https://borikengineers.com/primer-juego-de-exhibicion-de-ftc-en-puerto-rico/#respond Mon, 04 Mar 2024 04:14:35 +0000 https://borikengineers.com/?p=2423 ¡Histórico! El pasado fin de semana, Puerto Rico celebró su primer juego de exhibición de FIRST Tech Challenge (FTC) gracias a la colaboración entre FIRST Robotics Puerto Rico y Eureka. El evento tuvo lugar como parte del campeonato de FIRST Lego League en el Centro de Convenciones de Puerto Rico. Esta emocionante ocasión marca un hito para la isla y sirve como preámbulo […]

The post Primer juego de exhibición de FTC en Puerto Rico! appeared first on The Borikengineers (FTC Team #20380).

]]>
¡Histórico! El pasado fin de semana, Puerto Rico celebró su primer juego de exhibición de FIRST Tech Challenge (FTC) gracias a la colaboración entre FIRST Robotics Puerto Rico y Eureka. El evento tuvo lugar como parte del campeonato de FIRST Lego League en el Centro de Convenciones de Puerto Rico. Esta emocionante ocasión marca un hito para la isla y sirve como preámbulo para el campeonato oficial de FTC que se llevará a cabo a mediados de mes.

En este evento, tuvimos la oportunidad de competir contra siete equipos recién formados en la isla. Nuestro equipo, los Borikengineers, estuvo presente con dos robotsCoquitron 1 y Coquitron 2. Aunque ambos robots enfrentaron pequeños percances antes de comenzar, nuestro equipo los resolvió con destreza. Durante los juegos, los robots demostraron su habilidad al completar las tareas sin problemas.

¡Y no solo eso! Además de competir, también brindamos apoyo a otros equipos. Siguiendo el espíritu de Gracious Professionalism®, compartimos conocimientos y ayudamos a resolver problemas técnicos. Esta colaboración entre equipos es fundamental para el crecimiento y el éxito de la comunidad de robótica en Puerto Rico.

Además de la emoción de la competencia, recopilamos datos valiosos que utilizaremos para mejorar la estructura, los mecanismos y la programación de nuestros robots. Estamos ansiosos por aplicar estos aprendizajes en el próximo campeonato oficial de FTC.

En resumen, este evento fue un gran paso adelante para la robótica en Puerto Rico. ¡Estamos orgullosos de ser parte de esta historia y esperamos con entusiasmo el próximo desafío en el campeonato oficial de FTC! 🤖🇵🇷

Aquí algunas fotos del evento.

¡Histórico! El pasado fin de semana, Puerto Rico celebró su primer juego de exhibición de FIRST Tech Challenge (FTC) gracias a la colaboración entre FIRST Robotics Puerto Rico y Eureka. El evento tuvo lugar como parte del campeonato de FIRST Lego League en el Centro de Convenciones de Puerto Rico. Esta emocionante ocasión marca un hito para la isla y sirve como preámbulo para el campeonato oficial de FTC que se llevará a cabo a mediados de mes.

En este evento, tuvimos la oportunidad de competir contra siete equipos recién formados en la isla. Nuestro equipo, los Borikengineers, estuvo presente con dos robotsCoquitron 1 y Coquitron 2. Aunque ambos robots enfrentaron pequeños percances antes de comenzar, nuestro equipo los resolvió con destreza. Durante los juegos, los robots demostraron su habilidad al completar las tareas sin problemas.

¡Y no solo eso! Además de competir, también brindamos apoyo a otros equipos. Siguiendo el espíritu de Gracious Professionalism®, compartimos conocimientos y ayudamos a resolver problemas técnicos. Esta colaboración entre equipos es fundamental para el crecimiento y el éxito de la comunidad de robótica en Puerto Rico.

Además de la emoción de la competencia, recopilamos datos valiosos que utilizaremos para mejorar la estructura, los mecanismos y la programación de nuestros robots. Estamos ansiosos por aplicar estos aprendizajes en el próximo campeonato oficial de FTC.

En resumen, este evento fue un gran paso adelante para la robótica en Puerto Rico. ¡Estamos orgullosos de ser parte de esta historia y esperamos con entusiasmo el próximo desafío en el campeonato oficial de FTC! 🤖🇵🇷

Aquí algunas fotos del evento.

The post Primer juego de exhibición de FTC en Puerto Rico! appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/primer-juego-de-exhibicion-de-ftc-en-puerto-rico/feed/ 0 2423
¡First Tech Challenge llega a Puerto Rico! Un hito para la robótica en la isla https://borikengineers.com/first-tech-challenge-llega-a-puerto-rico-un-hito-para-la-robotica-en-la-isla/ https://borikengineers.com/first-tech-challenge-llega-a-puerto-rico-un-hito-para-la-robotica-en-la-isla/#respond Sun, 11 Feb 2024 21:02:05 +0000 https://borikengineers.com/?p=2401 ¡Grandes noticias para los entusiastas de la robótica en Puerto Rico! Este año marca un hito emocionante con el lanzamiento de la competencia First Tech Challenge (FTC) en la isla. First Robotics PR será la sede oficial de FTC en Puerto Rico, marcando el comienzo de una nueva era para la comunidad de robótica local. […]

The post ¡First Tech Challenge llega a Puerto Rico! Un hito para la robótica en la isla appeared first on The Borikengineers (FTC Team #20380).

]]>
¡Grandes noticias para los entusiastas de la robótica en Puerto Rico! Este año marca un hito emocionante con el lanzamiento de la competencia First Tech Challenge (FTC) en la isla. First Robotics PR será la sede oficial de FTC en Puerto Rico, marcando el comienzo de una nueva era para la comunidad de robótica local.

La llegada de FTC a Puerto Rico es un paso significativo para el desarrollo y la promoción de la tecnología y la innovación entre los jóvenes de la isla. Con competencias locales programadas para comenzar este mismo año, se espera la participación de al menos 12 equipos de robótica procedentes de diferentes regiones de Puerto Rico.

¿Nuevo Equipo en Aguadilla!

The Borikengineers 1 y 2 Mostrando sus respectivos robots para la temporada de FIRST Tech Challenge 2024

Uno de los equipos pioneros en este emocionante capítulo de la robótica en Puerto Rico son “The Borikengineers” de la Escuela Benito Cerezo Vázquez de Aguadilla. Este equipo, conocido por su dedicación y pasión por la robótica, ha sido fundamental en el impulso inicial para que FTC llegue a la isla. Ahora, The Borikengineers celebran un logro aún mayor: el crecimiento de su equipo hasta el punto de poder establecer un segundo equipo, Borikengineers 2.

El equipo original, Borikengineers 1, asumirá el papel de mentor para el recién formado Borikengineers 2. Esta dinámica de “equipo hermano” no solo demuestra el crecimiento y la fortaleza de la comunidad de robótica en Puerto Rico, sino también el compromiso de los equipos más experimentados de apoyar y guiar a los nuevos talentos.

Este desarrollo no solo es un logro para los equipos individuales involucrados, sino también para la comunidad en general. La llegada de FTC a Puerto Rico no solo fomentará la competencia y la innovación en el campo de la robótica, sino que también abrirá nuevas oportunidades educativas y profesionales para los jóvenes interesados en la ciencia, la tecnología, la ingeniería y las matemáticas (STEM).

Con este nuevo capítulo en la historia de la robótica en Puerto Rico, se espera que más jóvenes se inspiren y se involucren en disciplinas relacionadas con la tecnología. ¡El futuro de la robótica en la isla es prometedor, y estamos emocionados de ver cómo se desarrolla este emocionante viaje en los próximos años!

The post ¡First Tech Challenge llega a Puerto Rico! Un hito para la robótica en la isla appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/first-tech-challenge-llega-a-puerto-rico-un-hito-para-la-robotica-en-la-isla/feed/ 0 2401
Protected: Information for new team members https://borikengineers.com/information-for-new-team-members/ https://borikengineers.com/information-for-new-team-members/#respond Fri, 25 Aug 2023 01:01:35 +0000 https://borikengineers.com/?p=2260 There is no excerpt because this is a protected post.

The post Protected: Information for new team members appeared first on The Borikengineers (FTC Team #20380).

]]>

This content is password-protected. To view it, please enter the password below.

The post Protected: Information for new team members appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/information-for-new-team-members/feed/ 0 2260
Radio Interview with WABA “La Grande” https://borikengineers.com/radio-interview-with-waba-la-grande/ https://borikengineers.com/radio-interview-with-waba-la-grande/#respond Thu, 26 Jan 2023 14:44:01 +0000 https://borikengineers.com/?p=1832 Part of The Borikengineers was interviewed a second time by the WABA “La Grande” radio station. The interview was streamed in Facebook. Yadiel Ruiz, Josephine Vargas, Diego Cumpiano, and Gianni Rodriguez had the opportunity to talk about the experience traveling to the FIRST Chesapeake DC1 and DC2 competitions. The things they learned during the year […]

The post Radio Interview with WABA “La Grande” appeared first on The Borikengineers (FTC Team #20380).

]]>
Part of The Borikengineers was interviewed a second time by the WABA “La Grande” radio station. The interview was streamed in Facebook. Yadiel Ruiz, Josephine Vargas, Diego Cumpiano, and Gianni Rodriguez had the opportunity to talk about the experience traveling to the FIRST Chesapeake DC1 and DC2 competitions. The things they learned during the year and during the competition, situations they had to work through, new skills they gained, among other topics.

Edwin Delgado (teacher, Benito Cerezo High School), and Anthony Munera (mentor, Collins Aerospace) were also interviewed about their involvement, experiences while mentoring the team, and their opinion about the student’s future.

Thanks to WABA “La Grande” for the opportunity to show our work and promote the FIRST mission.

Among the topics discussed in the interview, it’s important to note the opportunity the team had to see in first person what Gracious Professionalism is all about when, with the help of their mentors, they were able to assist a fellow team in need during the competition. That team didn’t bring a working robot to the competition. With the help of our team, and two mentors from two other teams, missing parts were sourced, and a robot was built and programmed right on the playing field! This was the perfect situation for our team to really understand what Gracious Professionalism means. There are going to be plenty of opportunities like this in life. It’s important to recognize that situations like this may be seen like a problem to some, but to the right person they are opportunities to grow as a professional and as a person. Our thanks to FTC Team 9073 Bravo Knightrix, who’s mentor also helped the team in need. We congratulate you for having an excellent mentor that exemplifies what Gracious Professionalism is.

Watch the full interview here (January 26, 2022):

This is the first interview (December 22, 2022):

The post Radio Interview with WABA “La Grande” appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/radio-interview-with-waba-la-grande/feed/ 0 1832
The Borikengineers travel to Washington DC! https://borikengineers.com/the-borikengineers-travel-to-washington-dc/ https://borikengineers.com/the-borikengineers-travel-to-washington-dc/#respond Wed, 18 Jan 2023 02:47:41 +0000 https://borikengineers.com/?p=1491 Last weekend we participated in the Chesapeake DC 1 and DC 2 Qualifier events. You might ask, why Chesapeake if you are from Puerto Rico? Well, Puerto Rico only have two First Tech Challenge teams, EMC Team Tech (Team 20369), and our team, The Borikengineers (FTC team 20380). With only two teams, we do not […]

The post The Borikengineers travel to Washington DC! appeared first on The Borikengineers (FTC Team #20380).

]]>
Last weekend we participated in the Chesapeake DC 1 and DC 2 Qualifier events. You might ask, why Chesapeake if you are from Puerto Rico? Well, Puerto Rico only have two First Tech Challenge teams, EMC Team Tech (Team 20369), and our team, The Borikengineers (FTC team 20380). With only two teams, we do not have an FTC regional competition, and that is a big inconvenience since in order to participate of the competition we have to travel to any USA region. Finding a region with space for us is not easy. For the previous season we had luck with the FTC Chesapeake, Virginia region, which had a space for us in the virtual qualifiers. So, this season we contacted them again since we already had that contact established, and they had an opening for us in the Washington DC qualifiers.

Boarding the plane to DC in the Aguadilla regional airport

We tried our best to get the whole team to the qualifier, but unfortunately, we had to settle for sending our drivers/builders, lead programmer to fix any last-minute issues, and the lead presenter. Leaving the rest of the team back in Puerto Rico was not an easy choice, but it was one that had to be done. Our participation in the games is dedicated to all the students of the Benito Cerezo School that could not travel with us. They all worked really hard and enabled us to participate.

Traveling from Puerto Rico to DC comes with its difficulties, starting with the cost. Washington DC is not a popular destination from Puerto Rico, so there are no direct flights. Our trip had a connecting flight, and considerable layover time. That itself makes everything more complex, since now we have to spend money for food in the airport, there could be canceled flights, delays, etc. Also, having a connecting flight increases the possibilities of the robot not getting to the final destination on time, and that would be a disaster! But we didn’t have options. We went to DC against all odds!

We discovered that traveling with a robot is not easy. First thing is that the robot is quite large. Almost 18 inches on each side. We needed a big box. A big toolbox was the obvious option. There are toolboxes that can fit the robot easily. However, the exterior size of those boxes was too large and not accepted by the airline. Another option was to make a wooden box just the right size, about 20″x20″x20″. That would fall within the airline requirements of a regularly sized baggage. We found a really good article made by FTC team 3491 (Fix It) that includes a PDF of how to build the box, but making a wooden box takes time that we could use to make the final adjustments to the robot… The last option was to split the robot in two and put it in a smaller box. Our mentor found a reasonably sized tool box in The Home Depot that was big enough to fit the robot in pieces, and small enough to pass as oversized baggage. We purchased some 2″ foam to use as padding, put the robot parts inside with some extra padding in between them and wished it luck! 🤣 The downside of doing this is that then you need to put the robot back together, but fortunately our robot is quite modular, as the slider can be separated from the chassis by removing only five bolts, and then the gripper can also be separated from the slider by removing only four bolts. Motor and servo connections were made to facilitate their removal, so that was not a problem either.

And there goes all of our work, in the hands of JetBlue! Thankfully, everything went well, and we got there!

Robot box in the hands of Jetblue
Robot box in the hands of JetBlue, not in the best position but it was OK!

DC 1 Qualifier

The qualifier was held in the District of Columbia International School. There was a table waiting for us, which we quickly decorated with the beautiful flag of Puerto Rico, some Puerto Rican candies, the team’s name and, off course, our robot.

Our team’s table. In the photo from left to right: Gianni Rodríguez (Team captain, build team, driver), Yadiel Ruiz (Lead programmer), Diego Cumpiano (Build team, driver), Josephine Vargas (Marketing, logistics, and lead presenter)

We started practicing right away. We noticed that our autonomous code was a little bit off, probably because of dimensional differences between the official field and our DIY field. Our programming team leader quickly modified it to improve it’s accuracy.

Yadiel Ruiz making the final changes to the robot’s autonomous code

While this was done, the robot was taken to inspection, which it passed without problems.

Getting the robot to inspection

After this, the robot was taken to the judges for the interview. Unfortunately, pictures are not allowed in the interview rooms. The judges were very interested to know more about our outreach and fund-raising efforts, which included several school visits, show-and-tell presentations, radio interviews, reaching people through our social media accounts, having several sales to raise funds, and visiting several possible sponsors.

Then the games started!

DC1 game broadcast (starts at our first game)

These are official scores. As you can see, we did really well. After all the games were done, we ranked 6th place. Then it was time for the Playoffs. Something we didn’t know, being new to the presential games, is that top ranked teams select other teams to be in their alliances. We were surprised that the team in the second position (Team Vector) selected us as their first choice! We played really well with really good partner and opposing teams. Ultimately, the opposing alliance won.

Official scores for all our DC 1 qualifier games

Then came the awards, and we received the Judges Choice Award for our exceptional outreach efforts.

Borikengineers team holding their Judges Choice Award, Finalist Alliance Award, and wearing their finalist medals
DC 1 Finalist Alliance: Team Vector (FTC 5233), The Borikengineers (FTC 20380), and Team Robot Uprising (FTC 14607)

DC 2 Qualifier

We also participated in the DC2 qualifier the next day. Our luck this time was not the same. Unfortunately, some of our assigned alliance partners confronted problems during their game, like getting stuck, accuracy issues, etc. We did our best to get afloat on our own, but the other teams were really good. We won two of our games and were ranked 9 in the qualifier. However, this day we made changes to our presentation speech and were able to really impress the judges. Our presentation meeting lasted about 40 minutes since the judges wanted to know more and more about our outreach efforts, all of our learning, code improvements, etc. We also were third place for the Inspire Award. The official results were not available at the time of this writing.

In summary, our team made a great performance, especially taking into account this was our first in-person participation. We had a good autonomous code that helped us achieve good points in the first 30 seconds, had excellent drivers that consistently played impeccable games against amazing adversaries, did a great job in our presentations, and finally took two awards home and got medals for the whole team back in the island. All of this surpassed our own expectations and left us willing for the next season to come already.

The Borikengineers will be back!

The post The Borikengineers travel to Washington DC! appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/the-borikengineers-travel-to-washington-dc/feed/ 0 1491
Judges Choice Award! https://borikengineers.com/judges-choice-award/ https://borikengineers.com/judges-choice-award/#respond Sun, 15 Jan 2023 13:13:55 +0000 https://borikengineers.com/judges-choice-award/ We participated in the Chesapeake DC 1 Qualification Tournament yesterday and we had a blast! We won 4 out of the 5 games we played, and ended up 6th in the ranking! We didn’t qualify, but things turned out even more interesting when we were the first pick of one of the winning teams for […]

The post Judges Choice Award! appeared first on The Borikengineers (FTC Team #20380).

]]>

We participated in the Chesapeake DC 1 Qualification Tournament yesterday and we had a blast! We won 4 out of the 5 games we played, and ended up 6th in the ranking! We didn’t qualify, but things turned out even more interesting when we were the first pick of one of the winning teams for the elimination rounds! That means a lot to us as it demonstrates that even thought we didn’t qualify, our team and the robot was noticed by other teams!

This were our first in-person games and we surpassed our own expectations! Our team got a lot of experience from this trip. We learned new things, and got a lot of ideas! Next season we will come better prepared and with more energy!

The Borikengineers team, holding the Judges Choice and Finalist Alliance awards, and wearing the the FIRST Finalist medals

We played in two of the elimination rounds. Ultimately our alliance didn’t win and we didn’t qualify. However, we were surprised with the Judges Choice Award for the excepcional outreach work made by the team in social media, radio, and visits to other schools to show our robot and promote the FIRST program.

The post Judges Choice Award! appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/judges-choice-award/feed/ 0 1476
Coiled servo motor cable https://borikengineers.com/coiled-servo-motor-cable/ https://borikengineers.com/coiled-servo-motor-cable/#respond Tue, 03 Jan 2023 22:31:18 +0000 https://borikengineers.com/?p=1362 This is the first time we use a slider in our robot, and we quickly noticed an issue with the design. We are using a servo motor to move a gripper mounted on the slider. Since it has to reach a height of almost 3 feet, we used several servo extensions. There are several problems […]

The post Coiled servo motor cable appeared first on The Borikengineers (FTC Team #20380).

]]>
This is the first time we use a slider in our robot, and we quickly noticed an issue with the design. We are using a servo motor to move a gripper mounted on the slider. Since it has to reach a height of almost 3 feet, we used several servo extensions. There are several problems with this. With the continuous up and down movement of the gripper, the extensions tend to disconnect from each other. Also, when it extends up and then down the cable can get tangled on the robot’s parts, or even worse, it can be cut!

Our mentor mentioned the coiled cables that were used on telephones in the past. That would be a good solution, but after checking the FTC rules, the servo cable must be either the same wire gauge that the servo comes with, or gauge 22. We could not source a coiled telephone cable with documented wire gauge. But we found a method online for creating coiled cables out of regular cable that involves heating the cable while it is wrapped around a wooden dowel. However, since our cable is going to be repeatedly extended, we modified the process a little bit. This post serves as documentation of the process, and we are sharing it so that it is useful to other First Tech Challenge (FTC) teams. Here is the process we followed:

Materials:

  • Gauge 22 stranded cable (FTC required gauge for servos). 8 Feet will result in about 2 ft of coiled cable, depending on the rod diameter. We used 4 copper wire shielded and grounded cable. We sourced it locally, but it would be better to use a 3 wire cable instead. This is probably a good choice from Amazon.com: Striveday 22 AWG 4 conductor wire Power Cable Audio Cable Signal Line (Red & Black & yellow & white) 33ft UL certification : Electronics
  • Heat shrinking tubes a little bit bigger than the cable diameter.
  • Heat shrinking tube a little bit bigger than the individual wires.
  • Any kind of rod or wooden dowel, as long as the end length of the coiled cable.
  • Hair dryer, or heat gun (better).
  • 1 Servo extension cable (short).
  • Soldering iron
  • Solder
  • Multimeter

Process:

  1. Insert the cable in two 4 feet long heat shrinking tubes.
    • We used two 4 ft tubes, so we had to add an overlap at the middle by heating one tube a little bit so that it shrinks and can be inserted into the other.
    • Inserting the tubes is not an easy task. The longer the heat shrinking tube, the better the results. Also, using a heat shrinking tube that is just bigger than the cable results in a tighter coil.
    • Leave the ends of the cable free (no heat shrink tube).
  2. Wrap the cable around the rod. We used an aluminum rod about 1/2 in.
  3. Tape the ends so that it does not uncoil.
    • We noticed that even though the initial wrapping was very tight, as the tubes start to shrink it loses some tightness. It may be better to hold only one end and try to keep the coil tight on the other end while heat is applied.
  4. Apply heat to the cable evenly to shrink the tubes. Take your time in this step and make sure the whole length of the cable shrinks. Rotate the rod to ensure both sides are heated evenly.
  5. Remove the tape and remove the cable from the rod.
  6. Apply more heat to ensure all the tube has shrunk.
  7. Strip the ends of the cable.
  8. Check all the wires for continuity and shorts
    • For continuity, check every wire color against the same color on the other end. It should beep on each wire.
    • For shorts, check every wire color against the other two colors on the other end. It should not beep.
  9. Take the servo extension and cut it in the middle.
  10. Solder each halve of the servo extension cable to the ends of your coiled cable. The colors you use do not matter, as long as you are consistent on both sides. We soldered red to red, black to black, and white to yellow. The green wire, ground, and shield were not needed so we just cut them.
    • Before soldering the wires, insert a piece of the large shrinking tube and slide it out of the way. This will be used to cover all the wires after soldered. Also, insert about 1 inch of the smaller shrinking tube on each wire.
  11. Slide the small diameter tubes to cover the solder and heat them. This will ensure there are not shorts between the cables.
  12. It is a good idea to check the cable for continuity and shorts again, but this time at the plugs.
  13. Slide the large diameter tubes to cover the soldered wires while keeping a little bit of overlap with the already shrunk tube, then apply heat.

It took us about 1 hour to complete this process with the help of our mentors. The most difficult part is inserting the cable in the heat shrinking tube since each piece is 4 feet long and the friction makes it hard to insert. The end result is really good! We have been using that cable for some time now with zero issues. Below are some pictures and videos of key steps of the process. Please do not look at the mess in the background! 😁

Heating up the coil while rotating the rod
Extending the cable and applying more heat

The post Coiled servo motor cable appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/coiled-servo-motor-cable/feed/ 0 1362
2023 Season Information https://borikengineers.com/2023-season-information/ https://borikengineers.com/2023-season-information/#respond Mon, 07 Nov 2022 23:12:18 +0000 https://borikengineers.com/2023-season-information/ Hi all! This is is just some useful information for this season, directly from First Inspires. Game and Season Info: Programming Resources: Robot Building:

The post 2023 Season Information appeared first on The Borikengineers (FTC Team #20380).

]]>
Hi all! This is is just some useful information for this season, directly from First Inspires.

Game and Season Info:

  • Main Page: This is the main page for this season. Everything is in there, but the following documents are very important. The manuals may reference documents in the link above. I recommend you make some free time to read though these, as they are very long.

Programming Resources:

  • Main Page
  • There are several programing options, but the team is using Blocks right now. Blocks is based in Google’s Blockly. So you may have seen it before. This document explains how it is used with the competition hardware.

Robot Building:

The post 2023 Season Information appeared first on The Borikengineers (FTC Team #20380).

]]>
https://borikengineers.com/2023-season-information/feed/ 0 1088