Thursday, March 26, 2020
With this post, our SwapStop adventure draws to a close - and as with most adventures, the close is bittersweet. Against long odds, we accomplished our goal and built something incredible. It was a real challenge, requiring real effort, and countless engineering problems to solve along the way. The long hours and sleepless nights validated by the end result: SwapStop, in all its working glory. Here's a video chronicling what it was and how it worked:
Video of the final SwapStop prototype.
Unfortunately, the prototype never got its day in the limelight. Our Fourth Year Design Project Symposium was regrettably cancelled in light of COVID-19 and increased isolation measures that prevented all but the most essential large gatherings in Canada. We were able to transport the prototype to campus to make use of the lighting and space to record a proper video, but there was no audience or fanfare.
The SwapStop team, plus prototype and display materials.
Still, it would be a mistake to allow this admittedly disappointing ending to overshadow what was accomplished here, and how well the prototype worked. We would like to recognize our sponsors for their generous discounts and in-kind donations which put this project within the capabilities of four undergraduate university students - thank you. We would also like to thank our academic advisors and the Department of Mechatronics Engineering for their advice and counsel. As adventures go, this one was pretty great.
So long, then, and thanks for all the fish.
– The SwapStop Team
Wednesday, March 11, 2020
We are pleased to announce that SwapStop is functionally complete! The system now performs autonomous end-to-end battery swaps. This procedure includes communication with the drone, which can request a swap when it detects low batteries, detects its own landing using computer vision and static April Tags, and responds to directives to take off again.
Full battery swap with a live drone.
As well as swapping depleted batteries on drones, the system can optimize the charging and storage of all the battery cells it has on hand. This includes shuffling cells out of charging slots when they hit 100% (using colour sensors to detect the status LEDs on the chargers) and shifting more fully-charged batteries closer to the top, where they can reach the landing pad a few seconds faster.
A number of safety measures are in place as well - limit switches, heartbeats, current sensors, and a physical switch, all of which can trigger the emergency stop mode, shutting down all the actuators instantly. Flicking the switch again causes a re-initialization cycle to a safe starting position.
There is some remaining work, but it's mostly cosmetic. We have some machined plexiglass panels to enclose the system, and the remaining 6 charging bays are still being 3D printed. There will also be larger cones for the drone legs to sit in, mostly to aid autonomous drone landing (we got awfully close with that, but unfortunately not with enough consistency, especially in indoor environments).
Our public demonstration day is this Friday, March 13th. If you want to view the system live, we will be set up on the ground floor of the University of Waterloo's E7 building between about 11 AM and 4 PM. Group 42. Be there.
There will be a final progress post afterwards to share any additional changes and reflect back on this marathon of a project. Until then, take care and happy building!
Monday, February 24, 2020
There has been an awful lot of software written since the last update, but its been worthwhile: The full system, including the linear actuators, the elevator, and the electromagnets can now be centrally controlled by our Jetson TX-2 computer via the CAN bus. This means we can run the system through the whole swap procedure from beginning to end. The software emergency stop switch is also installed and functional, including a safe "resume from E-stop" procedure that resets all the actuators to their base state.
Testing the swap procedure and E-stop fallback switch.
Now that most of the core mechanical work has been completed, the focus has shifted to scaling up on battery charging stations and cartridges. This means we're running our poor old Creality CR-10 3D printer ragged, virtually nonstop for 24 hours a day. After some failed prints earlier in the week which were eventually diagnosed down to a spoiled batch of filament, the machine has been performing admirably. We recorded a short video of three cartridges being printed at once, a 12+ hour process:
Printing new cartridges on our CR-10.
We've also been working on pieces from our small SLA printer (an Elegoo Mars), too. This process is a bit more cumbersome, and the maximum print dimensions are significantly less, but the payoff is in much stronger and more precise parts. We made a short video to demonstrate our construction process for those.
Printing small SLA parts on our Elegoo Mars 3D printer.
Lots of videos this week, I know, but we're getting ready for the big one: A full end-to-end battery swap with a real life drone. Stay tuned!
Monday, February 3, 2020
Lots of system integration progress this week! The project is starting to all come together. Flyn (our elevating battery handler) is mounted on its vertical v-slot extrude rails now, likely for good. With the electronics driving the stepper motors coming together on the platform below, we were able to clamp Flyn to the tensioned timing belts and run the whole subsystem for the first time. Check it out:
Precise and high-speed elevator control.
The great news here is that this validates all of our theoretical calculations. Elevator torque, belt strength, and elevation speed are well within our targeted values, even after plugging in a large factor of safety. The elevator is designed to accelerate and decelerate over an interval to reduce peak torque and avoid placing undue stress that could wear out the mechanism. This also has the effect of mitigating current spikes on the 24V supply rail, which is a nice added safety bonus.
Flyn's cable track is also now attached. Linking Flyn with a point halfway up the frame, this device snakes and bends to keep wires attached to the moving carriage. Eventually, it will hold a total of four wires: two for power (+12V and ground) and two for data (specifically, a CAN bus).
Flyn mounted on its rails.
The electronics assembly at the base of the tower deserves some attention, too. All the PCBs are mounted to a custom-designed, 3D-printed mount that keeps everything organized and insulates the electronics from the metal baseplate. The accuracy here is very good, and this really helps to keep the assembly modular, which makes it easy to work with.
Electronics setup for the controls for the elevator and stepper motors.
That's all for now! We have some really exciting end-to-end tests in the pipeline, but those videos will have to wait until next week.
Thursday, January 23, 2020
There have been great strides this past week towards controlled usage of the system's actuators. Both the linear actuators (which handle and transfer the LiPo batteries) and the stepper motors (which drive the timing belts that translate the elevator vertically) have been mounted to their mechanical subsystems and precisely controlled for the first time.
Linear actuator, mounted to Flyn with end effector visible.
First up, the linear actuators. These two cylinders are mounted to the elevating battery handler mechanism ("Flyn") which is a sandwich between two aluminum sheets. These high speed linear actuators (which can move against 22 lbf of force at an astonishingly fast 5.51" per second) are each bolted to a custom machined cradle, which has been designed to interface with and manipulate our 3D printed battery cartridge mechanism. The active end of each actuator is supported by two heavy-duty drawer slides, which guarantee precise and repeatable actuation.
The actuators are driven by a standard DC motor controller, and are powered by a 96W, 12V power supply. The actuators have built-in limit switches for safety, but an additional pair have been added around each actuator to ensure the system moves to the correct position every time, and the movement profile uses controlled acceleration to minimize current spikes on the 12V line. The movement is controlled by an OpenMV H7 microcontroller running micropython, which receives high-level command from the master controller (an Nvidia Jetson board) via the system's CAN bus.
Linear actuators, moving on Flyn.
The two stepper motors each drive a vertical timing belt, one of which will be attached to either side of Flyn. These stepper motors are responsible for the vertical translation of Flyn, allowing the battery handler to position itself at the level of each of the charging bays and of the drone, allowing for the transfer of LiPo cells back and forth between them.
The impressive mass of Flyn (which clocks in at approximately 9 kg) requires beefy motors to move the mechanism at a high enough speed, and these NEMA 23 motors with a 4:1 planetary gearbox fit the bill perfectly. Driven by powerful stepper drivers and powered by a 24V supply, these motors stay cool even at high speeds and against strong opposing torque.
Stepper motor attached to its timing belt on the frame of SwapStop.
A few more progress updates:
PLA 3D printed parts for mounting on Flyn.
Machined aluminium mounting points for belt pulleys, plus engineering drawings.
There are some pretty significant progress milestones coming up over the next week, so we'll be back soon with some awesome new updates. Stay tuned!
Saturday, January 18, 2020
It has been a busy few weeks here, as the team has seized the opportunity of the winter break to make some solid progress. First and foremost, the arrival of the t-slot extrude has allowed for assembly of the project's frame. Everything's built perfectly to spec, but we still can't help but be impressed by the sheer scale of this thing.
Assembly of the frame, in its early stages.
In addition, the arrival of drawer slides and v-slot rollers allowed for the construction of the elevating carriage, which we have affectionately named Flyn. Sandwiched between two parallel sheets of aluminium, with drawer slides and limit switches already in place, this hefty piece of equipment will hold the two linear actuators which move the LiPo batteries around. All together, Flyn is predicted to be quite heavy at completion — about 8 kilograms — but this is well within spec, and more importantly, allows the machine to operate seriously fast.
Flyn, assembled and waiting for the intelligent moving bits.
There's been progress on the software/electrical front, too! Precise control of the large stepper motors (responsible for actuating Flyn up and down along its vertical rail) now works end-to-end. This includes software control and a hardware setup comprising of the motor, gearbox, motor controller, and power supply. This system moves with an almost unbelievable amount of torque- and there will be two of them, working together, in the final build.
Computer control of the stepper motors.
Lastly (as far as this update is concerned...) computer vision localization is now working! Using a webcam (which will be mounted to the landing platform, facing upwards) we can now precisely track the position and orientation of an AprilTag in 3D space. An AprilTag is similar to a QR code, except it encodes much less data and can therefore be accurately detected from much futher away. One of these tags will be mounted to the underside of each drone, and the resolved position data will be fused with the readings of onboard sensors to achieve a precise position lock, far more accurate and reliable than GPS. This is all the data we will need to attempt a successful landing.
That's it for today! There has been much more progress on many other fronts, of course — machining, wiring, soldering, and coding — but these are the highlights for now. Stay tuned for some exciting updates in Flyn actuation, coming to you very soon.
Thursday, January 16, 2020
SwapStop is a fourth-year design project, which is an eight-month long cumulative project by Mechatronics Engineering students at the University of Waterloo. The SwapStop team comprises of four such students: Will Clark, Tom Meredith, Geoff Spielman, and Will Thibault. The idea for this project came from the team members' love of all things robotic and autonomous, and seeks to help make co-ordinated swarms of multirotor drones practical for extended use for the first time.
Left to Right: Will Clark, Will Thibault, Geoff Spielman, Tom Meredith.
Modern drone swarms have seemingly limitless potential for agricultural surveying, infrastructure inspection, search and rescue, and countless other applications, however short flight times make sustained operations impractical. SwapStop solves this problem using an autonomous drone battery swapping station that brings continuous drone operations to the skies for the first time. SwapStop features a platform allowing a drone to autonomously land, receive a fresh battery, and take off within a blazing 30 second window. Intelligent power management ensures a fresh battery is always ready to go.
Early design CAD render of the SwapStop system.
In this render, the landing platform for the drone is located in the upper-left, featuring mechanical guides to help position the drone's legs. Underneath the platform there is a stacked array of battery chargers, which prepare the LiPo batteries in preparation for use on a drone. The vertical elevator includes a pair of actuating arms, one waiting ready to remove the old battery from the drone, and the other one standing prepared with a fully-charged replacement.
Animation of the battery swapping process, based on an early CAD design of the SwapStop system.
The design of SwapStop has been an iterative process beginning in September of 2019, and as of January 2020, construction of a working prototype is well underway. This website and its associated blog will document the major development milestones from here on out, including cool solutions to problems involving electrical, software, mechanical and controls systems. This project will be showcased at the Mechatronics Engineering Fourth Year Design Symposium, on campus at the University of Waterloo in March of 2020.
Watch this space.