Overview
As a member of Tech United's research team, I contributed to the development and integration of real-time control systems for wheeled soccer robots competing in the RoboCup Middle Size League (MSL). This is a multidisciplinary university team working on autonomous mobile robotics, computer vision, and multi-agent coordination.
My Contribution
Building on my BSc thesis work, I continued the implementation and integration of the shared human-robot control framework onto the physical TURTLE robots. This involved:
- Adapting the control algorithms from simulation to real hardware with actual sensor noise, communication delays, and mechanical constraints
- Working within the team's real-time software architecture (RTDB-based) to ensure reliable performance at the control loop rate
- Collaborating with team members across perception, planning, and hardware subsystems
Technical Challenges
Real-Time Communication
The shared control commands needed to arrive within the 30 ms control cycle. We used RTDB channels with priority-based scheduling to ensure deterministic delivery:
# RTDB channel write with timestamp
def publish_command(rtdb, robot_id: int, velocity: tuple[float, float, float]):
"""Publish velocity command to a specific robot via RTDB."""
channel = f"ROBOT_{robot_id}_VEL_CMD"
rtdb.put(channel, {
"vx": velocity[0],
"vy": velocity[1],
"vtheta": velocity[2],
})Sensor Fusion on Hardware
On the physical robots, we dealt with noisy wheel encoders and vision-based positioning. The control system needed to be robust to measurement outliers:
where is a confidence weight based on signal quality metrics.
Competition Experience
Contributing to a competitive robotics team provided invaluable experience in:
- Working under tight deadlines with hardware-in-the-loop constraints
- Debugging real-time systems where failures happen on the field
- Interdisciplinary collaboration across software, electrical, and mechanical engineering
Technologies Used
Python, C++, RTDB, real-time control systems, multi-agent robotics