Proxygen is a robotic system developed using the MoveIt package in ROS Noetic. It is designed to handle package sorting and delivery tasks efficiently. Proxygen integrates with hardware components to perform tasks such as detecting delivery boxes using a depth camera, picking them up using a suction gripper, and placing them in designated areas.
- Robot: 5 degrees of freedom (DOF) robotic arm
- Gripper: Suction gripper (Link to Product)
- Depth Camera: Intel RealSense D445
- Microcontroller: Arduino Mega
- Stepper Motors:
- 2 x NEMA 17
- 2 x NEMA 23 with additional gearboxes for joint actuation
Proxygen performs the following tasks:
- Visual Input Processing: Utilizes the depth camera to capture visual data of the environment.
- Object Detection: Detects delivery boxes or packages within the camera's field of view.
- Coordinate Transformations: Manipulates the acquired depth data through coordinate transformations to calculate the 3D positions of the packages relative to the base frame of the robot.
- Motion Planning: Utilizes MoveIt for motion planning to pick up and place the packages.
- Inverse Kinematics: Calculates joint configurations using inverse kinematics to reach desired end-effector positions.
- Gripper Control: Activates the suction gripper to pick up and release packages as required.
- Package Delivery: Places the packages in designated areas according to predefined instructions.
To execute the package handling task, the following launch files and scripts are used:
- proxygen_controller.launch: Launches the controller node for Proxygen, initializing the hardware interfaces and communication.
- proxygen_simulation.launch: Launches the simulation environment for testing and debugging purposes.
- pick_and_place.py: Python script responsible for coordinating the entire package handling task, including object detection, motion planning, and gripper control.
To utilize Proxygen for package handling tasks, follow these steps:
- Ensure all hardware components are properly connected and powered.
- Launch the
proxygen_controller.launch
file to initialize the robot controller node. - If testing in a simulation environment, launch the
proxygen_simulation.launch
file. - Execute the
pick_and_place.py
script to begin the package handling task. - Monitor the robot's actions through ROS messages and visualization tools.
- Once the task is completed, verify the successful delivery of packages to the designated areas.
With its integrated hardware and software components, Proxygen provides an efficient solution for automating package handling processes, optimizing efficiency and accuracy in logistics operations.