Electrónica del sistema de control

Esta página contiene un desglose de los componentes electrónicos conocidos del sistema de control de REV Robotics, así como notas sobre ellos.

Componentes internos del Expansion Hub

Advertencia

No desmonte un Centro de Control o Expansión a menos que realmente sepa lo que está haciendo. Pueden resultar dañados en el proceso, especialmente si no se sabe cómo volver a montarlos correctamente.

Tablero Lynx

«Lynx» es el nombre en clave de la placa dentro del Expansion Hub y Control Hub que interactúa con el hardware. Las referencias a «Lynx» en el SDK de FTC se refieren a esta placa. Parece haber sido desarrollada tanto por REV Robotics como por DEKA (la empresa de Dean Kamen). Un esquema de ingeniería inversa se puede encontrar aquí.

Advertencia

No desmonte un Centro de Control o Expansión a menos que realmente sepa lo que está haciendo. Pueden resultar dañados en el proceso, especialmente si no se sabe cómo volver a montarlos correctamente.

Una placa Lynx sacada de su caja

Una placa Lynx sacada de su caja

Procesador

El microcontrolador utilizado por la placa Lynx es un Texas Instruments TM4C123GH6PGE, con un procesador Arm Cortex-M4F funcionando a 80 MHZ.

Puertos

La placa Lynx tiene los siguientes puertos:

  • Dos puertos de depuración UART

    • El puerto superior emite un flujo continuo de datos CSV de alta velocidad procedentes de los distintos subsistemas del hub.

    • El puerto inferior emite datos a una velocidad en baudios de 115200 con una verbosidad especificada por el usuario.

  • Cuatro puertos I2C

    • Estos puertos son compatibles con 100/400 kHz.

    • Los puertos están conectados a buses separados, por lo que generalmente no hay necesidad de preocuparse por colisiones de direcciones. Sin embargo, ten en cuenta que la IMU interna comparte el bus I2C con el puerto I2C 0.

    • Parece que hay resistencias pull up integradas en este puerto (potencialmente utilizando las resistencias pull-up/pull-down configurables integradas en la MCU).

  • Ocho puertos DIO

    • Sólo 3,3 V, corriente limitada, puede suministrar brevemente más corriente que la especificada. Tirado hacia arriba internamente.

  • Cuatro puertos analógicos

    • Estos puertos son compatibles con 5V; puedes utilizar un variador de nivel para suministrar 5v al sensor, pero ten cuidado de que la línea analógica no pase por el variador de nivel. Las líneas VIN y GND, sin embargo, deben pasar a través del variador de nivel para que funcione.

  • Seis servopuertos

    • El suministro de 5V en los puertos de servo está apagado por defecto, y sólo se activará una vez que se utilice un servo. Los seis pines de 5V se activan y desactivan juntos, y desactivar PWM en un puerto desactivará todos los puertos a menos que se utilice otro servo.

    • Cada par de 2 puertos uno al lado del otro está clasificado para un consumo máximo de corriente de 2 amperios, y el conjunto combinado de puertos servo + 5V está clasificado para un consumo máximo total de corriente de 5 amperios.

  • Dos puertos de alimentación de 5 V

    • El par de puertos de alimentación de 5 V tiene un consumo máximo de corriente de 2 amperios y comparte el límite total de 5 amperios con los puertos de servo.

  • Cuatro puertos de motor

    • El controlador del motor es un circuito integrado ST Microelectronics VNH5050, capaz de manejar una corriente muy superior a la máxima que puede consumir un motor FTC. Dispone de detección de corriente integrada y límites de seguridad térmicos y de corriente incorporados.

    • La salida no frena el puente H durante el ciclo de apagado del PWM. Esto significa que puede haber problemas de linealidad al desacelerar, debido al impulso del motor.

  • Cuatro puertos de codificador

    • IMPORTANTE: Sólo dos de los puertos de encoder (Puertos 0 y 3) pueden seguir con precisión la posición/velocidad a altas velocidades. Existen dos métodos para conectar internamente un encoder al microprocesador de Texas Instruments, a través de la interfaz de encoder en cuadratura (QEI) y a través de temporizadores de propósito general (GPT). Los puertos 0 y 3 utilizan el QEI integrado y son extremadamente precisos a altas velocidades, mientras que los encoders que utilizan los GPTs a menudo empiezan a perder recuentos a altas velocidades. Como resultado, los codificadores de alto número de cuentas por revolución (CPR) (aquellos con más de 4000 cuentas por revolución) que se espera que giren con cierta rapidez (como los codificadores que se utilizan en los pods de odometría) NO deberían utilizarse en los puertos 1 y 2.

  • Dos conectores XT30

    • Hay que tener cuidado al mover los cables, ya que se sabe que estos conectores fallan y se desprenden de la placa.

    • Además, los XT30 se desgastan y se aflojan con el tiempo. Consulte XT30 Pins are Compressed - Expansion Hub Troubleshooting para obtener más detalles sobre el problema y cómo solucionarlo.

  • Conector USB Mini-B

    • Utiliza el chip FTDI FT230XQ para puentear la UART interna a USB, permitiendo que el Expansion Hub se conecte a través de USB al Control Hub, dispositivo Android, ordenador u otro dispositivo similar. El FT230XQ es capaz de USB Full Speed (12 Mbps) en el lado USB y 3 MBaud en el lado UART, y 5V de salida para cargar un teléfono. Según REV, la salida de 5V no es compatible con ninguno de los teléfonos Android que aún son legales en la FTC. Este chip USB está deshabilitado por la placa de computación del Control Hub, lo que significa que este puerto no es funcional fuera de la caja en un Control Hub.

  • Conector interno

    • Este conector es el que se utiliza para conectarse a la placa hija de computación. Tiene una conexión UART, así como alimentación y tierra. Todos los módulos Lynx que vienen como parte de un Control Hub tendrán este conector, pero los módulos Lynx vendidos como Expansion Hubs pueden o no tener este conector. Una placa Lynx de un Expansion que contenga el conector, cuando se conecte con una placa hija de un Control Hub, funcionará como un Control Hub. Para ir en la otra dirección, la dirección del Hub tiene que ser cambiada a otra que no sea la dirección del Control Hub de 173. Puedes cambiar la dirección una vez que hayas retirado la tarjeta secundaria conectándola a un dispositivo Android que ejecute la aplicación Robot Controller y utilizando la función en la configuración para cambiar la dirección. (Tenga en cuenta que la conexión a otro concentrador de control es poco probable que funcione, debido a la interferencia de dirección betwen los dos módulos Lynx. El Driver Hub funciona bien para este propósito, pero asegúrese de desinstalar la aplicación Robot Controller de él después, para que no interfiera potencialmente con la aplicación Driver Station).

Control Hub

El Control Hub es un Expansion Hub con una tarjeta hija de computación integrada conectada a él. Esto le permite no necesitar un teléfono Controlador de Robot separado, ya que la placa de cómputo funciona como el Controlador de Robot. Internamente, los comandos Lynx se envían desde la placa hija a la placa Lynx a través de una conexión UART interna.

La placa de computación se basa en la 96Boards CE Specification, Version 1.0, aunque se desconoce cuántas de las características de los dos conectores de expansión están cableadas/funcionales más allá de la UART y un puñado de líneas GPIO utilizadas para conectar con la placa Lynx.

Nota

La versión original del Control Hub (REV-31-1152) utilizaba en realidad una Dragonboard 410c como placa de cálculo. Esta versión del Control Hub nunca se utilizó, ni fue legal para FTC; parece que sólo se utilizó en las primeras temporadas de FIRST ® Global.

La placa de cálculo Control Hub ejecuta una versión personalizada de Android 7.1. No tiene un disipador térmico adecuado en el SOC, solo un escudo de RF que no toca el SOC, lo que puede causar ahogo térmico cuando se usan procesos pesados como los pipelines de visión. Una gran cantidad de calor parece ser absorbida por la placa hija de PCB, que actúa como un disipador de calor.

  • SOC: Rockchip RK3328

    • CPU: Quad-core ARM® Cortex-A53

      • El árbol de dispositivos en el kernel oficial parece indicar que la CPU puede alcanzar hasta 1,5 GHz.

    • GPU - ARM ® Mali 450MP4

      • Compatible con HDMI 2.0 para 4k a 60 Hz

  • RAM: 1 GB DDR3

  • Almacenamiento: de 8 a 16 GB de memoria flash eMMC

    • «8GB eMMC 4.51» es la especificación oficial de REV, pero varias unidades reales que se comprobaron tenían chips eMMC de 16GB en sus placas.

    • Según REV, en un correo electrónico de soporte: «Las versiones originales del Control Hub se fabricaron con chips eMMC de 8 GB. Sin embargo, algunas versiones de 16 GB se hicieron debido a las limitaciones de la cadena de suministro. Es más probable que los Control Hubs recientes (comprados después de 2022) tengan el chip eMMC de 16 GB «.

  • USB: 1x USB 3.0, 1x USB 2.0, 1x USB 2.0 interno utilizado para conectar el chip Wi-Fi

  • Wi-Fi: Realtek RTL8821CU

    • Wi-Fi IEEE 802.11a/b/g/n/ac (doble banda 2,4 y 5 GHz)

    • Bluetooth 4.2 (Bluetooth 4.1 listado por REV)

  • UART de depuración: cabezal de 3 pines (TX izquierda, RX centro, tierra derecha), 1500000 baudios

Advertencia

No desmonte un Centro de Control o Expansión a menos que realmente sepa lo que está haciendo. Pueden resultar dañados en el proceso, especialmente si no se sabe cómo volver a montarlos correctamente.

Truco

Es posible instalar una versión de Armbian Linux desde https://forum.armbian.com/topic/26978-csc-armbian-for-rk3318rk3328-tv-box-boards/ y hacer que funcione en el Control Hub. Habilita el tipo de placa rk3318-box-led-conf3 usando el comando rk3318-config para que funcionen Wi-FI y todos los puertos USB. Habilita el overlay rk3328-uart1 usando armbian-config para permitir la comunicación con la placa Lynx a través de la conexión UART interna usando /dev/ttyS1.

¡NO DEBERÍAS ESTAR HACIENDO ESTO PARA FTC!

El ordenador monoplaca y la placa Lynx de un Control Hub

El ordenador monoplaca y la placa Lynx de un Control Hub

La placa de cálculo, desmontada de un Control Hub

La placa de cálculo, desmontada de un Control Hub