Python PID Color Robot Simulation
Budget: ₹600 – ₹1,500 INR
I’m putting together a pick-and-drop mobile robot inside CoppeliaSim and I need a clean, well-commented Python script that handles two core tasks:
• Closed-loop motion control: A PID controller should drive the differential wheels so the robot follows a straight or curved path accurately, with easy access to kp, ki and kd for later retuning.
• Vision-based sorting: Using a simulated camera feed, the code must identify basic red, green and blue objects, command the gripper to collect the detected item, then deposit it at a defined drop zone.
Everything happens in simulation, so feel free to make full use of CoppeliaSim’s remote-API calls, Python, OpenCV (or a similar vision library), and any helper utilities you find convenient. The scene already contains the robot model, a camera and a simple gripper; your job is to wire up the control logic, colour classification and pick-and-place sequencing.
Deliverables
1. Main .py file(s) with PID loop, colour detection routine and grasp / release commands
2. Any additional helper modules or configuration files required to run inside CoppeliaSim
3. Clear README or in-code comments showing where to adjust PID gains, camera parameters and RGB thresholds
4. A quick demonstration—screen recording or scene file—proving that the robot can:
• Recognise each of the three colours,
• Reach the object without oscillation or overshoot,
• Pick it up and drop it in the target location.
Acceptance criteria
The robot must complete at least three consecutive pick-and-drop cycles (one per colour) with no collisions and a steady-state positional error under 2 cm.
That’s it—if you’ve worked with CoppeliaSim’s Python API before, this should be a straightforward but fun challenge. Fire away with any clarifications you need.
• Closed-loop motion control: A PID controller should drive the differential wheels so the robot follows a straight or curved path accurately, with easy access to kp, ki and kd for later retuning.
• Vision-based sorting: Using a simulated camera feed, the code must identify basic red, green and blue objects, command the gripper to collect the detected item, then deposit it at a defined drop zone.
Everything happens in simulation, so feel free to make full use of CoppeliaSim’s remote-API calls, Python, OpenCV (or a similar vision library), and any helper utilities you find convenient. The scene already contains the robot model, a camera and a simple gripper; your job is to wire up the control logic, colour classification and pick-and-place sequencing.
Deliverables
1. Main .py file(s) with PID loop, colour detection routine and grasp / release commands
2. Any additional helper modules or configuration files required to run inside CoppeliaSim
3. Clear README or in-code comments showing where to adjust PID gains, camera parameters and RGB thresholds
4. A quick demonstration—screen recording or scene file—proving that the robot can:
• Recognise each of the three colours,
• Reach the object without oscillation or overshoot,
• Pick it up and drop it in the target location.
Acceptance criteria
The robot must complete at least three consecutive pick-and-drop cycles (one per colour) with no collisions and a steady-state positional error under 2 cm.
That’s it—if you’ve worked with CoppeliaSim’s Python API before, this should be a straightforward but fun challenge. Fire away with any clarifications you need.
Related categories:
Python
Software Architecture
C++ Programming
Robotics
Arduino
OpenCV
Computer Vision
Simulation