We left nothing to chance in our approach: First, we analyzed all tasks based on difficulty, points, and time required. We built the solution in a modular fashion—from small subtasks to the finished framework, including an optimized sequence and color scheme.
Things got exciting during testing: After checking the software with a plot command, we fine-tuned it directly on the game board. We kept optimizing until we reached our goal: a consistent success rate of 9 out of 10.
Modular drive motors: These motors serve as the power source for all external mechanisms. Thanks to their strategic positioning, various attachments can be directly coupled to the drive shaft to transmit rotational movements for task execution.
Color sensor for attachment recognition: This sensor functions as a rapid identification system. When an attachment is coupled, it scans a specific color mark on the attachment, allowing the software to automatically determine which program or motion sequences need to be loaded for the current module.
Safety color sensor (floor contact): A downward-facing sensor that serves as a “dead man's switch.” It detects the contrast with the floor; if the robot is lifted during operation, the sensor registers the change in light and triggers an immediate program termination or reset to prevent malfunctions.
To ensure maximum flexibility in a competitive environment, our hardware is based on a standardized coupling system:
(1) Standardized interface: The mechanical connection between the base frame and the attachment modules is designed to be universal. This enables quick, precise switching between different tools without having to modify the robot.
(2) Optimized release mechanism: A special locking mechanism ensures maximum stability during operation but can be released with minimal effort. This balance guarantees both operational safety and significant time savings during changeover operations.
Development Environment & Structure
VS Code: Use of a professional IDE for advanced functionality.
Structure: Use of a clear folder structure to improve clarity.
Memory & Data Management
Persistent Calibration: Use of internal memory (read/write) for calibrated color values.
Immediate Availability: Sensor values are ready for use without recalibration.
Object-Oriented Programming (OOP)
Robot Class: Centralization of all hardware specifications (ports, dimensions) and basic movements.
Tool Classes: Abstraction of tool control for an intuitive process.
Functional Control: Programming based on actual movement rather than motor revolutions.
Hardware Protection: Implementation of software limits (end stops) to prevent mechanical damage.
Seamless integration: Easy integration of external libraries (e.g., Matplotlib).
Early visualization: Calculated paths are displayed graphically even before field testing.
Effective error detection: Bottlenecks and collision risks are identified in the simulation.
Time savings: Optimizations are made directly in the code, without time-consuming physical test runs.
Accelerated development: Faster iteration cycles through pre-validation.
Plotting the Future:
Dimensional leap: Transition from 2D visualization to 3D simulation using PyVista.
Realistic modeling: Representation of complex physical factors (e.g., wall collisions).
Precise validation: Testing of motion sequences in a digital environment that corresponds to the real playing field.
Error prevention: Identification of spatial obstacles and bottlenecks prior to physical deployment.