Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Arm: Custom PCB that interfaces with encoders, servos, motor controllers, current sensors, and other sensors within the robotic arm subsystem.
  • Science: Custom PCB that interfaces with encoders, servos, motor controllers, moisture sensor, and other sensors within the science mechanism subsystem.
  • Gimbal: Custom PCB that interfaces with an encoder and servos within the gimbal subsystem.
  • Power Distribution Board (PDB): Custom PCB that monitors the power rails of the rover and also interfaces with the LED matrix and ultrasonic sensors.
  • Roboteq Motor Controller: COTS brushed DC motor controller module that controls each of the drivetrain motors.
  • Jetson: Nvidia Jetson AGX Xavier compute board that runs all of the rover's software.

Dual

...

CAN

For redundancy, the rover uses a dual-CAN system where each node is connected on two separate CAN buses: CAN1 and CAN2. Only one bus is used at a time, with the option of manually switching to the other bus in the case of unreliable message reception on the current bus.

...

Streamed messages are transmitted periodically. These include streaming sensor readings, actuator commands, and any kind of signal that would get continuously updated. For our rover, all streamed messages are sent at 100Hz. One-shot messages are event-based - they are transmitted only when needed. These include commands to change control modes and PID gains, and ACK messages (acknowledgement messages that are transmitted to the Jetson whenever a one-shot message is received by a node).

FW/SW CAN Rearchitecture