Week 2: Graphs, Cameras, and Design!
March 7, 2024
Has it already been another week? Time flies! Now, if only my drone could… I’m working on it.
Anyways, welcome, reader, to your weekly installment of delivery drone development! Last week, I code-named the project “Hüver” and began construction of a variable-pitch test stand. Initially, I prototyped with a rack and pinion mechanism (see previous blog for further detail), but at the tail-end of last week, I decided to switch to pure servo control. This decision stemmed from the rotational nature of the servo, which doesn’t deviate the path of the shaft enough to create significant flex or damage.
I know that sounds pretty abstract. Here is an image to help you visualize what I mean:
After engineering this system, I finally powered it on. I connected the servo to a Raspberry Pi and added a joystick to the circuit so that I could control the pitch on the fly (get it?!). How satisfied I was when it all came to life after a few short lines of code in the Arduino IDE!
Oh, if only it were so simple. The pitch is directly controlled by the shaft, which pushes up and down, and in turn, is controlled by the rotational position of the servo. The issue with connecting these systems directly is that in the case of a violent jerk or large movement by the servo, the whole system will bend or break. With a small bug in my code, I did just that, and the shaft along with the hook that attaches to the servo arm split in half. Thank goodness for spare parts.
I assembled the mechanism again, and this time gave special attention to my code, strictly limiting the range of motion of the servo using software. I’ve always been more of a hardware guy, but it’s moments like this that help me appreciate the synergy of software and hardware to create a functional product.
Next, I 3D printed a mount for the variable-pitch apparatus so that it can sit atop an HX711 load cell, which is screwed into a wood block. This load cell measures the thrust produced by the motor at various pitch angles and throttle settings. Operating an HX711 load cell involves wiring it to your Arduino and then calibrating it. By default, it produces arbitrary numerical values that correspond to the weight of the object on the cell. You must use objects with known mass to find the appropriate scale so that the device yields measurements in units that we are familiar with, like grams, pounds, or megagrams.
Fun fact: I calibrated the load cell using an iPod Nano, a 100 Yen coin, and a 1/4-inch bolt.
Now, it was time to gather data! Using a digital tachometer, the load cell, and Arduino input, I graphed RPM, thrust, and servo position, which corresponds to a yet-to-be-measured pitch angle. I plan on fine-tuning this data-collection process in the upcoming days, but here are some initial graphs to ogle at: Click this link for my graphs.
There are various improvements to implement. For one, the motor/servo column is not vibrationally isolated at all. The whole system shakes. The servo is not well mounted, so it jostles a bit upon arm movement. Throttle calibration is not optimal as I am using a manual dial. I will switch to Arduino control for this as well, so I can get consistent and repeatable measurements.
Aside from working on variable-pitch, I’ve been doing a LOT of learning. I enrolled in a course called the Drone Dojo where I am taking courses on drone design, precision landing, and Raspberry Pi integration for autonomous flight. It seems that there is a lot I don’t know. I am also learning how to use OpenCV and 3D simulation tools to see how the delivery system will function in the real world. Malcolm X once said that “education is the passport to the future.” That appears to be the case here.
I’m currently 3D modeling the chassis for my drone and 3D printing an enclosure for the Raspberry Pi camera that I’ll be using for precision landing vision. I’ll take many pictures as the drone slowly comes together in the coming weeks.
Finally, I want to give a special shout-out to the zip-ties that hold my every creation together! I truly could not do this without you.
So… see you next week?
Leave a Reply
You must be logged in to post a comment.