demo_third_person.mp4
- Pick_&_Drop.py: The main Python script that implements the pick and place logic, including marker detection, navigation, and object manipulation.
- setup.jpg: An image of the simulated environment and the Robomaster robot.
- demo robot_pov.mp4: A video demonstration of the project in action from the robot's point of view.
- demo third_person: A video demonstration of the project in action from a third person point of view.
- ROS (Robotic Operating System)
- OpenCV
- Robomaster SDK
- Numpy
- Matplotlib (optional, for visualization)
- Clone the repository to your local machine.
- Place the Pick_&_Drop.py script in your ROS workspace's src directory.
- Build the ROS workspace using catkin_make or catkin build.
- Run the Pick_&_Drop.py script using the following command:
- Copy 'rosrun <your_package_name> Pick_&_Drop.py'
- Initializes the Robomaster robot and its various components (vision, chassis, sensor, gripper, and robotic arm).
- Starts the video stream and subscribes to the marker detection service.
- Implements a PID controller to precisely align the robot with the first marker.
- Navigates the robot towards the first marker, aligns it, and then grabs the object.
- Detects the second marker, aligns the robot with it, and then drops the object at the second marker location.
- Closes the video stream and disconnects the robot.
- The script utilizes the Robomaster SDK to control the robot's movements, sensor data, and end-effector (gripper and robotic arm) operations. It also incorporates PID control to ensure accurate navigation and alignment with the markers.