You are browsing as a guest. Sign up (or log in) to start making projects!

7h 56m 46s logged

Devlog 8: Aerial Manipulator Redone, BOM Revised, and ¼ of Programming Done!

Across the last three days, I’ve had a realization.

My project was a little too expensive for me to want to self-fund, even with the grant. I felt that I was paying too much of a premium for certain items. In addition, after a comment I got on my previous devlog (thanks @Abracadabra3!), I realized the servo motors I was using probably wouldn’t hold enough weight to create good research data.

So, to solve both of these problems (or at least reduce them), I switched from the Dynamixel XL430/XL330 ecosystem to the Waveshare ST3215 serial bus servos.

Reasons to Switch

Advantages

  • Much cheaper per servo ($20.63 vs. $27.50)
  • Much cheaper power/control distribution board ($4.99 vs. ~$40)
  • Documentation is still acceptable, and CAD files are still provided (even if they’re a little janky)
  • Significantly higher rated torque (1 N·m vs. 0.28 N·m)
  • Standardized servo motors across the entire arm (making assembly much easier)

Accepted Losses

  • Slight loss of precision (no adjustable PID/feedforward gains)
    • I deemed this overkill for Astralis.
  • Increased weight per servo
    • 12 g heavier than the XL430 and 50 g heavier than the XL330
  • Increased current draw (slightly reducing battery life)

Robotic Arm

I adapted the robotic arm to be compatible with the Waveshare ST3215 servos, with an emphasis on reducing the weight of each joint.

The biggest change was redesigning the base joint so that it only encloses the servo instead of mounting it off to the side. I also used more generous material pocketing throughout the design to reduce weight.

I further increased the arm’s maximum reach so that it can reach the landing gear if needed.

I also started doing the math on how much the arm can actually hold (currently using both a whiteboard and Excel), but I haven’t finished it yet. This isn’t a huge priority right now, as I’d like to improve the linkage system and continue working on the code first.


Coding

I started by creating the architecture of my codebase. I also established the basic MAVLink initialization code and built a listener that filters messages such as battery data (voltage and battery remaining) and GPS data.

Files Worked On

  • vehicle_states.py
  • mavlink_interface.py

Next Steps

  • Finalize the tilting pod CAD and select ball end and threaded rod options
  • Finish basic drone connectivity
  • Write the README and submit for initial review
  • Add all fasteners to the CAD model and clean it up for Onshape publication
  • Calculate the maximum payload the robotic arm can carry
0
105

Comments 0

No comments yet. Be the first!