控制系统电子设备

This page contains a breakdown of known electronics in the REV Robotics control system, as well as notes regarding them.

Expansion Hub 内部

警告

除非你真的知道你在做什么,否则不要拆开 Control Hub 或 Expansion Hub 。它们可能会在这个过程中损坏,尤其是如果你不知道如何正确地重新组装它。

Lynx 板

“Lynx” is the codename of the board within the Expansion Hub and Control Hub that interacts with hardware. References to “Lynx” made in the FTC® SDK refer to this board. It appears to have been developed by both REV Robotics and DEKA (Dean Kamen’s company). A reverse-engineered schematic can be found here.

警告

除非你真的知道你在做什么,否则不要拆开 Control Hub 或 Expansion Hub 。它们可能会在这个过程中损坏,尤其是如果你不知道如何正确地重新组装它。

一块取出的 Lynx 电路板

一块取出的 Lynx 电路板

处理器

The microcontroller used by the Lynx board is a Texas Instruments TM4C123GH6PGE, with an Arm Cortex-M4F processor running at 80 MHZ.

端口

The Lynx board has the following ports:

  • 两个通用异步收发设备调试端口

    • 顶部端口从集线器中的各个子系统输出连续的高速 CSV 数据流。

    • 底部端口以用户指定的详细程度以 115200 的波特率输出数据。

  • 四个 I2C 端口

    • These ports are 100/400 kHz compliant.

    • The ports are connected to separate busses, so there is generally no need to be concerned about address collisions. However, be aware that the internal IMU shares the I2C bus with I2C port 0.

    • There appear to be integrated pull up resistors on this port (potentially using the built-in configurable pull-up/pull-down resistors integrated into the MCU).

  • 八个 DIO 端口

    • 仅 3.3V,电流有限,可短暂提供超过额定电流规格的电流。内部拉起。

  • 四个模拟端口

    • These ports are 5V compliant; you can use a level shifter to supply 5v to the sensor, but take care the analog line bypasses the level shifter. The VIN and GND lines, however, must pass through the level shifter for it to work.

  • 六个舵机端口

    • 舵机端口上的 5V 电源默认关闭,仅在使用舵机时启用。所有六个 5V 引脚一起打开和关闭,禁用一个端口上的 PWM 将关闭所有端口,直到再次使用其他舵机。

    • Each pair of 2 side-by-side ports is rated for a maximum current draw of 2 amps, and the combined set of servo + 5V ports is rated for a maximum total current draw of 5 amps.

  • 两个 5V 电源端口

    • The pair of 5V supply ports in rated for a maximum current draw of 2 amps, and shares the total 5 amp limit with the servo ports.

  • 四个电机端口

    • The motor driver is a ST Microelectronics VNH5050 motor driver IC, which is capabile of handling well over the maximum amount of current an FTC motor can draw. It has integrated current sensing, and built-in thermal and current safety limits.

    • The output does not brake the H-bridge during the PWM off cycle. What this means is that there might be linearity issues while deaccelerating, because of momentum in the motor.

  • 四个编码器端口

    • IMPORTANT: Only two of the encoder ports (Ports 0 and 3) can accurately track position/velocity at high speeds. There are two methods of connecting an encoder internally to the Texas Instruments microprocessor, through the Quadrature Encoder Interface (QEI) and through General-Purpose Timers (GPTs). Ports 0 and 3 use the integrated QEI and are extremely accurate at high speeds, whereas encoders using the GPTs often start to loose counts at high speeds. As a result, high Count per Revolution (CPR) encoders (those with more than around 4000 counts per revolution) expected to spin somewhat quickly (such as encoders being used in odometry pods) should NOT be used on ports 1 and 2.

  • 两个 XT30 连接器

    • 在电缆周围移动时应小心,因为已知这些连接器会出现故障并从电路板上脱落。

    • 此外,XT30 会随着时间的推移而磨损和松动。请参阅 XT30 引脚被压缩 - 扩展集线器故障排除,了解有关该问题的详细信息和修复方法。

  • USB Mini-B 连接器

    • Uses the FTDI FT230XQ chip to bridge the internal UART to USB, allowing an Expansion Hub to connect over USB to a Control Hub, Android device, computer, or other such device. The FT230XQ is capable of USB Full Speed (12 Mbps) on the USB side and 3 MBaud on the UART side, and 5V output to charge a phone. According to REV, the 5V output is not compatible with any of the remaining Android phones still legal in FTC. This USB chip is disabled by the compute board of the Control Hub, meaning this port is not functional out-of-the-box on a Control Hub.

  • 内部连接器

    • This connector is what is used to connect to the compute daughterboard. It has a UART connection, as well as power and ground. All Lynx modules that came is part of an Control Hub will have this connector, but Lynx modules sold as Expansion Hubs may or may not have this connector. A Lynx board from an Expansion Hub that contains the connector, when connected with a Control Hub’s daughterboard, will work as a Control Hub. To go the other way, the Hub address has to be changed to something other than the Control Hub address of 173. You can change the address once the daughterboard is removed by plugging it into an Android device running the Robot Controller app and using the function in the settings to change the address. (Note that connecting it to another Control Hub is unlikely to work, due to the address interference betwen the two Lynx modules. The Driver Hub works fine for this purpose, but make sure to uninstall the Robot Controller app from it afterwards, so it doesn’t potentially interfere with the Driver Station app!)

Control Hub

Control Hub 是一个带有嵌入式 Android 单板计算机子板的 Expansion Hub 。由于内置了 Android 子板,所以它不再需要单独的手机作为 RC 。在其内部,通过内置的 UART 连接从 Android 子板发送 LynxCommand 到 Lynx 板。

The compute board is based on the 96Boards CE Specification, Version 1.0, though it is unknown how many of the features of the two expansion connectors are wired up/functional beyond the UART and handful of GPIO lines used to connect to the Lynx board.

备注

The original version of the Control Hub (REV-31-1152) actually used a Dragonboard 410c as the compute board. This version of the Control Hub was never used in, nor legal for, FTC; it appears to have only been used in early FIRST® Global seasons.

The Control Hub compute board runs a customized version of Android 7.1. It does not have a proper heatsink on the SOC, only an RF shield that does not touch the SOC, which can cause thermal throttling when heavy processes such as vision pipelines are used. A large amount of heat seems to be sunk by the daughterboard PCB, which acts like a heat spreader.

  • SOC: Rockchip RK3328

    • CPU: Quad-core ARM® Cortex-A53

      • The device tree in the official kernel seems to indicate that the CPU can clock up to 1.5 GHz

    • GPU - ARM® Mali 450MP4

      • HDMI 2.0 支持 4k @ 60Hz 频率

  • RAM:1GB DDR3

  • 存储:8 至 16GB eMMC 闪存

    • REV 官方列出的规格是 “8GB eMMC 4.51”,但检查的多台实际设备的电路板上都有 16GB eMMC 芯片。

    • REV 在一封支持电子邮件中称**“最初生产的 Control Hub 使用的是 8GB eMMC 芯片。但是,由于供应链的限制,生产了一些 16GB 版本。最近的 Control Hub(2022 年后购买)更有可能采用 16GB eMMC 芯片。”**

  • USB:1 个 USB 3.0、1 个 USB 2.0、1 个内部 USB 2.0,用于连接 Wi-Fi 芯片

  • Wi-Fi: Realtek RTL8821CU

    • IEEE 802.11a/b/g/n/ac Wi-Fi(双频 2.4 和 5 GHz)

    • 蓝牙 4.2(蓝牙 4.1 由 REV 列出)

  • 调试 UART:3 针接头(左侧 TX、中间 RX、右侧接地),1500000baud

警告

除非你真的知道你在做什么,否则不要拆开 Control Hub 或 Expansion Hub 。它们可能会在这个过程中损坏,尤其是如果你不知道如何正确地重新组装它。

小技巧

可以从https://forum.armbian.com/topic/26978-csc-armbian-for-rk3318rk3328-tv-box-boards/ 安装 Armbian Linux 版本,并使其在 Control Hub上运行。使用 rk3318-config 命令启用 rk3318-box-led-conf3 板类型,以允许 Wi-FI 和所有 USB 端口工作。使用 armbian-config 启用 rk3328-uart1 覆盖,允许使用 /dev/ttyS1 通过内部 UART 连接与 Lynx 板通信。

在 FTC 赛事里你不应该这样做!

Control Hub 的单板计算机和 Lynx 板

Control Hub 的单板计算机和 Lynx 板

从 Control Hub 移除的计算板

从 Control Hub 移除的计算板