Autonomous Trash Drone
Hardware- 4 Devlogs
- 25 Total hours
It automatically picks up trash in an area and throws it away.
It automatically picks up trash in an area and throws it away.
Devlog 4:
P.S. I also need to fix the drift correct system.
Devlog 3: We started working on our own custom SLAM from scratch for a roomba styled tracking system where the autonomous drone already knows where it has already searched
The actual coding wasn’t completed very much but we fully understand how the whole system logic will work and what we have to code.
To summarize it uses the flight controllers outputs like its yaw, position, and velocity to calculate an initial pose, then creates creates a grid of boxes that contain data to hold status like free, unknown, and blocked based off of the coordinates from our lidar data we converted.
It then compares the map of lidar scans that moves based off the pose to the current scan, slowly making slight adjustments to find how much the drone actually moved in real life.
This data is then used and converted into another grid that stores only where the drone has been and is used for the whole logic of not checking the same place over and over again.
Devlog #2: Today focused on advancing both the software and mechanical portions of the autonomous trash collection drone. On the software side, the LiDAR subsystem was completed. The Python script for the RPLIDAR C1 was finalized, including initialization, communication with the sensor, and collection of scan data. The script now reads distance measurements and angles from the LiDAR, providing the foundation for future obstacle detection and avoidance logic. Time was also spent organizing the software architecture and researching the required Python libraries for each subsystem of the drone. The project dependencies were separated into categories for computer vision, sensor processing, flight control, and networking, and virtual development environments were configured and tested to prepare for future development. On the mechanical side, significant progress was made on the robotic gripper assembly. Most of the CAD modeling for the gripper arm was completed, including the overall geometry, servo mounting, gear layout, and finger mechanism. Existing component dimensions were reviewed to ensure compatibility with the DS3218 servo, bearings, and planned fasteners. The gripper design is now largely complete and serves as the primary end effector for the drone’s trash collection system. Overall, today’s work established a solid foundation for both the software and hardware systems. The LiDAR subsystem is now operational at the software level, the project’s development environments are organized for continued programming, and the gripper assembly has reached an advanced stage of mechanical design. These milestones prepare the project for integration of obstacle avoidance, object detection, and physical manipulation in future development sessions.
Dev Log #1 – Today I continued working on the mechanical design of the autonomous trash-collecting drone, focusing on the robotic arm and gripper assembly. The main objective was to determine the overall dimensions of the arm, select appropriate hardware, and make design decisions before continuing the CAD model. During today’s work, I finalized the decision to use three DS3218 high-torque servos throughout the robotic arm, including the gripper. Although a smaller servo was considered for the claw, I decided to use the same servo for all three joints to simplify the design, reduce the number of different components, and make future maintenance easier. I also continued determining the dimensions of the upper arm, forearm, and gripper based on the expected payload and overall size of the drone. The arm will be constructed from CF PETG using a lightweight truss-style structure to maximize rigidity while minimizing weight. I researched the DS3218 servo output shaft and confirmed that it uses a 25T spline, which will be used for the servo-driven joints. I also standardized the hardware by selecting M3 machine screws for servo mounting and the majority of the structural connections throughout the arm. A large portion of today’s work focused on the gripper mechanism. After evaluating several concepts, I decided to use a three-gear synchronized design consisting of one servo-driven center gear and two mirrored gears connected to each finger so that both fingers open and close together. I also selected a 1:1 gear ratio and began determining appropriate gear sizes and the overall dimensions of the gripper housing to fit the DS3218 servo. In addition to the mechanical design, I estimated the overall weight of the drone using the currently selected components to ensure the chosen propulsion system should be capable of lifting both the aircraft and its expected payload. This estimate will continue to be refined as the CAD model progresses and additional components are finalized. The next stage of development will focus on continuing the CAD model of the gripper, finalizing the gear layout, finger dimensions, and mounting points, and completing the remaining mechanical details of the robotic arm before beginning assembly of the full system.