The “White Knight” Bixler
Our very first project using our APM 2.5 was the “White Knight” Bixler. The name was given simply due to its resemblance to the Scaled Composites “White Knight”. The purpose of this project was to send an aircraft with a Go Pro attached to record overhead video of one of our favorite outdoor playgrounds in Canada. A year prior, we had we travelled 2 miles off of a treacherous road, 2 miles by canoe, and another ½ mile hike only to be greatly disappointed when we got to the planned destination and wasted an entire day. If we could only have sent an RC aircraft overhead with a Go Pro attached, we could have saved days of our precious vacation and made better exploring decisions!
After the shocking discovery that there was an Arduino based flight control board that could actually do what we joked about, we had to give it a try. As aerospace engineers with experience in fly-by-wire aircraft, we could not resist the temptation for $175.00. Neither of us had any significant RC aircraft experience, but we were eager to learn. At this point in time 3D Robotics (3DR) was a small company selling just Arduino flight controllers and DIY parts. No copters or aircraft like they do today. The plane software was also relatively immature by todays standards, but very capable.
There were quite a few unknowns in the conceptual phase. We knew we wanted an affordable fixed wing aircraft that could be fixed or easily replaced in the event of a crash. We knew it had to be hand-launched (there were nothing near us that could even be remotely considered a runway). We knew it had to be flown overhead for more than 15 minutes. We didn’t have a very good idea of the range of a traditional fixed wing foam aircraft, but we knew if it could not go longer than 10 min it was not very useful. The plane would have to carry a Go Pro with waterproof case. We knew it would have to be a “controlled” crash to some remote landing site. We had 10 months to complete our goal.
We acquired all the necessary equipment to build our first Autonomous Bixler. Neither of us were experienced RC pilots, so we decided to practice flying the Bixler without the autopilot, and just simply fly manual RC input. The results were disastrous, destroying our first Bixler in a matter of minutes. Flying RC aircraft was more difficult than it appeared. While we waited for another Bixler to be shipped from china, we studied and planned for our next attempt. We mostly used this time to improve other skills like building and manufacturing parts for RC aircraft since it appeared we would be fixing and replacing lots of components. We created an Arduino hotwire cutter with the capability to cut any NACA or EP airfoil coordinates. We learned to fiberglass and vacuum bag our foam shapes to give them incredible strength and light weight. We build a vacuum forming machine to mold thin sheets of plastic. We also began creating 3D shapes and having them 3D printed via an online supplier.
We received our 2nd Bixler and made some improvements to the stock setup. We learned the fundamentals of flying APM 2.5 in all the flight modes and using the Mission Planner Software to change parameters and mission plans. Once we felt comfortable with normal operation, we decided to create an aircraft that could maximize our mission requirements. We wanted more time aloft and payload than a Bixler, but needed to take off from a hand launch. The idea of combining two Bixler’s in a twin fuselage twin tail boom design solved several problems that purchasing a conventional aircraft could not. We now had a more convenient and protected location to mount the Go Pro on the mid-wing, each boom could contain is own battery, and the large about of wing area allowed for the “running” hand launch. The compromise would be controlling a twin engine aircraft with a 24” distance between the two propellers.
The Maiden Flight
On our maiden flight, poor roll and pitch stability, some high wind, and bad luck resulted in a crash into a nearby parking lot light pole. Investigation of the crash led to several discoveries. We found a broken rudder servo that appeared to be cracked before takeoff, insufficient elevator area to control pitch, and very poor roll and yaw control. The crash destroyed a pitot tube and battery as well. The aircraft was reassembled and the horizontal stabilizer and elevator were enlarged. On the second flight, shortly after takeoff we had insufficient roll control to maintain wings-level flight. We were able to safely land. Shortly after landing servo “twitching” of the ailerons was also observed. It was discovered that we were over-drawing current from the BEC by running such a large number of servos from a single BEC. It was also discovered that we had not properly calibrated each ESC so that the same command signal would generate the same RPM of each motor. This discovery also meant that each ESC must be supplied by the exact same battery voltage. We had powered each motor by individual batteries (one battery per fuselage). Small voltage differences created small RPM differences, therefore an asymmetric thrust condition existed for a symmetric command. This discovery lead to a significant wiring change with a large weight penalty and added complexity to the design. It was required to install 10 gauge wire through the mid wing to place the two batteries in parallel to equalize voltage throughout the propulsion system. We increased the capacity of the LH fuselage battery to better balance the electronics on the RH fuselage and equalize lateral CG.
Major Design Change
The next major change from our original design was implemented in software. For a given roll attitude to aileron command, a certain amount of differential thrust was applied. We also applied a symmetric differential gain to the motor output so that we could trim the aircraft if thrust asymmetry existed in level flight. This allowed us to experiment with some different gains to get the aircraft flying well at a certain cruise speed.
Aileron Command to Differential Thrust
Symmetric Thrust Bias
The following flights showed great improvement in lateral directional control. We were getting close, but we were still unable to get trimmed level flight without helping the aircraft with additional inputs. As we continued to tune the PID’s a disastrous mistake set us back greatly. As we approached to land we misjudged the aircrafts distance and crashed it about 80 ft high in a white oak tree. We were able to recover the aircraft, but this was devastating to moral. We really were feeling the time crunch, and this set back required yet another midwing rebuild. For the first time we felt like we may be unable to meet our goals in time. We only had several weeks left and every time we went to our standard fields to fly, kid’s soccer kept us from being able to test. We decided we would give the aircraft 2 more flights of testing before we aborted the White Knight Bixler and moved our flight controller over to a stock Bixler aircraft. We made several software improvements that allowed us to converge on a differential thrust setting by changing the knob on the RC transmitter. This greatly enhanced our ability to make rapid changes. This minor change to software enabled us to get trimmed level flight hands off for the first time. We were back on schedule just in time and extremely excited about the performance of the aircraft. After one more flight of roll PID tuning the aircraft flew auto missions well with some minor heading drift between waypoints. We flew long missions measuring battery consumption to predict range. Were incredibly excited and ready to pack up all our stuff for the trip to Canada. After reviewing the data from the last tuning flight we noticed a subtle loss of altitude during the entire auto mission. We had completely lost track of the vertical axis, spending all our time on 2d navigation. It looked like we had simply not given the elevator enough authority at our cruise speed and were unable to meet both speed and climb demand. In each turn we were losing small amounts of altitude that we could not recover in wings level flight. We did not have any more opportunities to fly, and we were not willing to adjust the pitch PID’s without some test flights. We decided there were 2 ways to solve the problem with relatively low risk changes. We increased throttle max from 75% to 100% to allow more climb power, and decreased our cruise speed from 14 m/s to 12 m/s to allow more excess power for altitude and less for speed maintenance. The last thing we did in our Canada mission was set 2 waypoints with the most severe climb condition on our flight plan early on so we could confirm our climb capability early on. For those readers familiar with APM:Plane software, we used code that had less sophisticated navigation, and did not have today’s more robust L1 and TECS navigation controllers.
We did very detailed mission planning prior to leaving for Canada. We investigated multiple sources of topographical data to confirm that we would not fly into the ground at some point. We were aware that mission planner does have the ability to plan a mission this way, but this was untested (by us), and were not sure if the data for such a remote location would be accurate.
The tools in mission planner were awesome, and we used them to our full advantage. We did make some compromises by making the waypoint radius large in some cases, and also were unsure if tree height was included in the topo data, so we added safety margin.
Although the plane would be insight during our mission, we were unsure of the range of our transmitter. Rather than “hope” we could resolve problems by going into a non-GPS aided mode like “STABILIZE” We decided that it would be prudent to include several new fail-safes to our design. We incorporated a “GPS FAIL” logic. If GPS signal was lost for 60 continuous seconds, we would terminate the flight by going into stabilize mode, shutting down both motors, and glide. If GPS was regained at any time, the aircraft would resume AUTO flight mode. This would at least keep the aircraft in a reasonable search radius for us to find someday. We also incorporated a “Crash” failsafe. If the GPS speed remained zero for more than 30 seconds, the motors were shutdown to prevent the batteries from depleting and also from the risk of overheating and starting a fire. Both of these fail safes were tested thoroughly off the aircraft simply driving around with the APM 2.5 on battery power rather than crashing our aircraft.
After a years’ worth of work and a single opportunity to achieve our goal, we were very concerned about forgetting something or being unable to accomplish the mission because of something simple failing. We made very detailed check lists, and ensured that everything we brought had a spare, or back up. We did not have internet access or cell access in the area we were. So having all our files backed up, internet references, all archived was very important. All our maps on mission planner were pre-cached and waypoints with lat / longs were saved. By the time we had all of our backup stuff we probably could have made 2 aircraft.
After a near 24 continuous drive splitting the drive between the two of us, we arrived at our destination. In two hours we had assembled the aircraft, powered it on and done our normal functional pre-flight checks ensuring that the aircraft was assembled and wired correctly. It was raining that day so once we had everything assembled we got a good night’s rest and went out the next day to survey the takeoff and landing area that we had planned on using. The spot we had planned on using was from the memory of a distant kayak trip the year before, and searching images on google earth. By the time we got to the location and actually put our feet on the ground it was not what we had envisioned. The water was much higher than our recollection, and the tree line was right at the beach. There was barely enough room to take off, let alone land the aircraft. We got pretty concerned that this location would not work and that we would have to go elsewhere. After surveying the area we chose a strip on the beach to launch from, and a nearby open swamp to land on.
Successful Flight and Perfect Landing
For three days we waited for constant rain to clear. When the rain finally ceased we motored all our gear out to the takeoff location and set up for launch. The first launch was very nerve racking as we launched the aircraft over the water and climbed into the air manually before setting AUTO. The initial climb waypoint check was positive per our checklist, so we let the aircraft fly its mission. We erupted in happiness as our plane had done what we asked. It beautifully flew around the lake collecting video from above as we stood watching in amazement and pride. As the aircraft came toward us signaling the end of the mission, we quickly scrambled and took our stations for landing and communicated with hand held radios. We had done this 100s of times now, but never in such a remote landing location. As the aircraft descended, Mike had lost visual with it behind a line of trees. He called over the radio commanding for AUTO mode so that it would climb to its next way point and regain visual. It worked perfectly. He regained control of the aircraft and went to a better location and landed it manually with a perfect landing in the swamp. We were both extremely excited about this accomplishment. After the excitement had passed we discussed sending the aircraft back up on the more ambitious 20 km overhead mission. We quickly changed the go pro camera, and loaded the mission. We launched the aircraft and set AUTO Mode. The second landing approach was much smoother now that we had learned from the first. Another perfect landing and eruption in celebration. All our years’ work had been repaid with 100% success.
Upon reviewing our post flight data we noticed that some very poor waypoint tracking. For those who are familiar with APM plane, this software was prior to improvements such as L1 navigation and TECS. Early in development we had made some incorrect parameter settings that negatively affected navigation using the compass exclusively and not considering GPS course. We have learned a lot since then and laugh about it now.
This project was an incredibly valuable experience. It formed the foundation for a passion in DIY and autonomous flight control. We have built upon this experience ever since. Despite the failures, setbacks and lessons learned along the way we would not have done anything differently.