Flying Lesson 1: Straight and Level Flight

This was my first “official” flying lesson, where the previous lesson had simply been an experience gathering exercise. My lesson began at 1030 in a classroom at Gloucestershire Airport where my flight instructor discussed, in detail, what I would be doing in the lesson and how I would do it. Today’s lesson would focus entirely on straight and level flight — the practice of keeping the aircraft on a given heading, without losing altitude or airspeed. Each of the PA28′s instruments were explained to me, as was their interrelationship  with each other and finally how this knowledge would help me during the flight.

Still in the classroom, I was introduced to two new acronyms PAT and FREDA (Power Attitude Trim & Fuel Radio Engine DI Altitude). Throughout the flight I would be required remember and to perform these checks. Related to these checks were some key points surrounding the engine, especially how to manage the air and fuel mix and the carburettor heat. Under certain atmospheric conditions ice crystals can start to form in the carburettor causing restricted airflow or even blockage, so introducing hot air to the carburettor melts any ice that may have formed. I was also introduced to the fuel pump switch and when the fuel pump should be used (such as take off and landing). We ended the lesson in the classroom with a quick question and answer session before heading out to the PA28 which needed to be wheeled out of its hangar, taxied over to the fuelling station and refuelled before take off.

PA28-161 G-EKIR

The preflight checks went well, as did the take off, and conditions at altitude (between 2200ft and 3000ft) were very calm with a slight breeze. My instructor demonstrated some of our classroom principals to me, and then I’d repeat them. This included setting the aircraft on a heading and adjusting the aircraft’s Power, Attitude, and Trim to maintain the given heading. Throughout the lesson I was able to practice my PAT and FREDA checks, as well as remembering to occasionally flick the “carb heat” switch. The lesson also allowed me to investigate the aircraft’s responsiveness at varying speeds. This included slowing the aircraft down to approximately 70 knots and moving the yoke around to feel how the aircraft responded. As I expected, its response was delayed and docile. I was then instructed to increase the aircraft’s speed and perform the same movement of the yoke. This time the aircraft really did respond; the slightest movement of the yoke would see the aircraft pitch or roll with much more intent than before. After nearly an hour in the sky and monitoring the fuel usage I was instructed to switch fuel tanks to help keep the aircraft in balance. This involved reaching down into my footwell and turning the fuel selector switch to the opposite tank. By this time my hour in the sky was almost up and I was flying the aircraft back towards Gloucester over the Hereford countryside (an absolutely beautiful flight). What made the flight extra special was our passenger: Rhiannon (my girlfriend) who’d never been on a plane before in her life and was actually afraid of flying until now. She had a fantastic time in the sky and I expect she’ll be joining us on my future lessons (she enjoyed it that much).

The route back to Gloucestershire Airport involved picking up and following the river Severn back through Gloucestershire towards Cheltenham. Out of the right window I spotted out Quedgeley, and I had the rare privilege of flying right over my own house at approximately 2300ft before aiming for the airfield and practising all of my straight and level flight techniques to bring us into the airspace over Gloucestershire Airport, where my instructor made the requests to ATC before he brought us in for a fantastic landing. I had a brief discussion with my flight instructor where I was able to raise any concerns I had regarding my flight, as well as to take some advice from him regarding things that I needed to work on. This primarily involved keeping the aircraft in trim. He’d noticed that I’d spent a fair amount of time fighting against the aircraft, pushing away from, or pulling up on the yoketoo much. By keeping the aircraft in trim I’d have less of an arm workout next time. Finally, I noted in my new pilot’s log book my time in the sky before heading home, with my first hour towards my PPL logged.

Pilot Under Training

A week after my first trial lesson I had made the final decision that I wanted to go all out and get my Private Pilot’s License. This decision didn’t come lightly. Learning to fly isn’t cheap and I wasn’t prepared to jump into something without knowing what was ahead. I read blogs, I text my flying instructor, I pestered friends and family for input, and everyone said practically the same thing: just do it — you’ll only regret it if you don’t.

There are seven exams to pass before you can apply for your PPL, plus a medical. Each exam costs a considerable amount of money and obviously will require a lot of background reading in order to (hopefully) pass these exams, at the same time spending time in the sky flying and gathering experience. This is a lot of work, especially when combined with my current activities and hobbies so I’ve been disciplined and realistic in my expectations, budgeting far in advance and looking at my PPL progress in years, rather than months.

Despite the obvious mental and financial challenge associated with getting a PPL, I’m still not put off. Not even slightly. As a result, I’ve decided to block book my first five flying hours with landings included. I did my research into local flying schools and have selected to learn to fly with Aeros. While some other companies may offer a slightly cheaper airtime rate, I found it paramount to find a school with a large fleet of aircraft and instructors with a view to spending less time stuck on the ground due to aircraft out for maintenance or instructors off sick. Another thing to note when booking flying lessons is to analyse the small print and see if your lesson cost includes a landing fee. I discovered that parts of the PPL course require lessons of “touch and go” flights where you’ll simply take off, fly a circuit of the airfield, land and repeat. You’ll be expected to shell out nearly £10 a go. Simplified: each time your aircraft’s wheels touch the tarmac, be prepared to pay for it. I’ve been told that this’ll be the most expensive phase of a pilot’s training, as the landing is so very important. I’ve already began saving up for this lesson, months ahead to ensure that I’ve sufficient funds to practice as many landings as I need to.

The bundle that I’ve paid for included five hours of instructed flight (landings included), as well as a pilot’s log book, life time membership to the flying club, a bound PA28 checklist, and a copy of Flying Training by Jeremy M Pratt. This book is a fantastic and interesting read, full of pictures and illustrations to clearly demonstrate exactly what the author’s try to convey. I’d highly recommend this book for anyone even mildly interested in flying. I’ve began reading it and it covers everything and more any student pilot could ever want to know. Such information includes:

  • Aircraft familiarisation
  • emergencies
  • taxying
  • climbing, descending, slow, fast, and level flight
  • stalling
  • spin avoidance
  • radio navigation
  • instrument flying

I’ve already began reading my book and I intend on making it mine, which includes covering it in Post-It notes and scribbles as I’m sure it’ll never be too far from me during my training. My first lesson is in two days and I can’t wait!

Flying Lesson 0: The Introductory Lesson

A week ago I booked myself an hour’s “trial lesson” in a PA28-161 Warrior. Having been fascinated with flight and all things airborne, I figured it was finally time to get myself off the ground and into the left hand seat of a light aircraft, and I’m so glad I did!

I arrived at the airfield and was introduced to my instructor who discussed with me my intentions and what I’d like to get out of this trial lesson. I hinted at my thoughts of a PPL, but made it clear that today I was only interested in one thing: flying an aircraft, suggesting that, if possible, I’d like to do as much as I could to get a really good feel for it. Some further discussion and questioning led to my instructor producing a small model aircraft with a nicely oversized control column used to demonstrate how the control surfaces of the aircraft moved and what affect their movement had on the aircraft’s position in 3d space.

After approximately 30 minutes of discussion and a little time spent waiting while my instructor analysed the surrounding airspace (the sky was busy due to the Fairford Air Tattoo), I was handed a headset and led to the aircraft I’d be flying — a PA28-161 Warrior.

PA28-161 G-GFCA

PA28-161 Warrior G-GFCA Flown from Gloucester to Gloucester 2010-07-17

I climbed into the aircraft while my instructor performed the necessary pre-flight checks around the aircraft. Before long he was in the aircraft, buckled up, plugged in and tuning the aircraft’s radio the the ATIS frequency at Gloucestershire Airport before entering the torrent of information that was delivered in quick succession over the radio. With the preflight checks completed, and the ATIS information committed to a printed paper template, the engine was running and it was time to fly!

Using my feet to steer the aircraft I taxied to the runway where we were instructed by ATC to hold position while another single engine aircraft came in to land. With the light landed and off of the runway, we were cleared for take off. Take off would be my job. Painfully aware at how few minutes I’d actually spent in the left hand seat of the PA28 I taxied out onto the runway facing into the wind with the engine ticking over. As instructed, the brake was released and the engine power increased to full throttle (taking approximately 3 seconds to go from fully back to fully forward). I was astonished at how quickly the PA28 accelerated, but I hadn’t the time to take in how quickly we were moving because I was busy using my feet to try and keep the aircraft moving in a straight line (a strange yet exhilarating sensation). Under verbal instruction from my flight instructor I pulled back gently on the yoke as we passed the half way mark of the runway, and before long the PA28 was in the air and I’d done it! Me!

As the aircraft climbed steadily with me still in control, I took a brief moment to look down and appreciate just how quickly the world was disappearing away below us. I was flying an aircraft, and It was absolutely brilliant. My instructor took over and climbed to over 2000ft, making sure to keep below cloudbase at approximately 2500ft. At this altitude I was flown through each of the manoeuvres discussed on the ground before attempting to do the same. This included straight and level flying, banked turns, rudder control, airspeed adjustments (flaps/throttle), general use and force required to use yoke at varying speeds, climbing, descending, the throttle/carb controls, as well as keeping the aircraft in trim whilst being sure to constantly observe the surrounding airspace for other aircraft. I took a few minutes from flying to take some photos of the Herefordshire countryside below before aiming for Cheltenham on the approach back into Gloucestershire Airport.

I had very little to do in the 5 minutes before landing, which seemed a great deal more complex than the take off I’d done nearly 50 minutes before. As we exited our holding pattern and my instructor brought the PA28 into a steady descent attitude before we touched down on the tarmac. At the end of the runway I was given control again and I steered the aircraft back to its hangar at the Aeros facility on Gloucestershire Airport. We disembarked from the PA28, and a debriefing session took place where the specifics of the flight were discussed before a hypothetical conversation broke out regarding the training involved for the PPL and  the associated requirements (financial, medical, and intellectual) that come with it.

Android Scripting: SMS Search

PLEASE NOTE: This script does not currently work under ASE due to irksome utf8 issues with JSON.pm – this is a platform issue. You can follow the progress of this issue here.

One feature I’ve been missing from the default messaging application on my Android device is the ability to search through all of my text messages. As a result I’ve decided to write my own.

While reading through the Android Scripting Environment‘s API Reference Manual, I found the necessary API components required to build a search tool, and a few lines of Perl later and I had one.

It’s far from perfect, however it does JustWork™. Simply invoke the script from ASE, enter a search token, hit search and the script will return a comprehensive list of all your messages that match your search term (where “search term” is defined as any Perl regular expression). Assuming your search result was successful, simply scroll through the list of matched text messages and select one to open its message thread.

Sadly, there’s currently a limitation with regards to the lack of documentation supporting the content://sms… URI schema. I was unable to find out how to open the exact message that was selected, so I had to settle for the next-best-thing, which I’m afraid is the message thread. This isn’t too much of an issue, but I’m aware it’s also not ideal. Any suggestions on how I can combat this will be warmly welcomed.

As usual, the script’s available from my Github repository here. All suggestions, patches, and comments are welcome.

Android Scripting: Location-based Text Message Delivery

I’ve hacked together a small Perl script that sends a text message when your location matches a pre-selected position on the globe. Using the API provided by the Android Scripting Environment, the script will automatically send a custom text message to one of your contacts as soon as you reach a specific destination. The script has been developed with hands free in mind, and will speak to you using TTS when it’s sent a message to your chosen contact, rather than displaying a dialog. It’s also designed to be ran as a background process. The script will sleep between checking your GPS position, so it shouldn’t be too battery-hungry.

The flow of the application is quite straight forward:

  1. Pick a contact
  2. Write them a text message
  3. Select a destination
  4. Reach your destination; the script will automatically send an SMS and tell you it’s done so using TTS

I’ve added a few niceties to the text message system, allowing for tags to be inserted into the message that are substituted for actual GPS information just before the message is sent. These tags include:

  • admin_area
  • country_code
  • country_name
  • feature_name
  • locality
  • postal_code
  • thoroughfare
  • sub_admin_area
  • map_link

Tags must be encapsulated between ‘%‘ (percentage) signs. For example, to send your current position as a Google Maps link, the following text message could be entered:

Hi! Just thought I’d let you know that I’m just entering %admin_area% now, and should be with you shortly. Here’s my Google Maps position: %map_link%

When you reach your chosen destination (let’s assume central Cheshire on your way to Manchester), the above message will be interpreted, and the tags %admin_area% and %map_link% will be substituted, and the following message sent to your contact:

Hi! Just thought I’d let you know that I’m just entering Cheshire now, and should be with you shortly. Here’s my Google Maps position: http://maps.google.com/maps?q=53.3212348,-2.2966268

You can get yourself a copy from github here. Comments, suggestions, and patches are all welcome. Happy hacking!

Salvaging Components: Brother MFC-425CH

I was able to get my hands on an old Brother MFC-425CH, which is a print, scan, copy, and fax machine all rolled into one. Considering that the machine was destine for the scrap heap, I figured I’d salvage some of its components. As it happens, I’m quite happy with my haul. I was able to get two stepper motors, and two rather torquey DC motors along with some gears — perfect for a mechanical gearbox.

Here’s a shot of the four motors I was able to remove from the machine:

Overall I’m happy with the components I was able to get out of the Brother. Having shopped around online for stepper motors I must say that I’m most relieved to own two without having to spend a penny. Most decent stepper motors retail at over £10 each!

Now I can finally get cracking on my first Arduino project: an animated analogue photo frame. ;)

Skating on a Frozen Street

The compacted snow outside my house had turned to solid ice, so I decided to attempt skating on it and making a video of my progress:

Skating on a frozen street from Alex Elder on Vimeo.

Visualising Pi

In my lunch hour at work I found a website listing the first few hundred thousand exponents of Pi, so I knocked up a simple Python script which takes each exponent and assigns a colour to it and plots it to an image. Ten minutes and twenty something lines of Python later, and here’s the result:

A Picture is Worth 1000 Words

It was 3AM and I had this unrelenting urge to create something. I’d recently been a little hacking on a simple script that could convert an image into a HTML document, using colour characters instead of pixels. Not a new idea, but still quite a fun one. Taking the existing code I had already written, I modified my script so now, instead of exporting to HTML, it exported the same data to an image format.

I used my script to produce this. It’s a super big image (13320×20000 weighing in at 70MB) of Johnny Cash stood outside of Folsom Prison. All of the characters that comprise the image are lyrics from his songs.

Thoughts on Compressing Image to HTML’s Output

In a previous blog post I mentioned an image to HTML script I had written. I also alluded to how woefully inefficient the current implementation was. I’ve been thinking recently about how I can reduce the size of the image substantially – moving away from a simplistic 1:1 mapping between pixels and coloured characters, and towards something a little more intelligent.

The idea I began exploring was a comparison of each pixel’s rightmost neighbour. This comparison would be done using the ordinary distance between pixels in terms of their colour values using the EuclideanDistance technique. The result of this can be seen below; the contiguous chain of green pixels represent a chain of pixels whose colour value isn’t significantly different from its neighbours. As a result, for this section of the image, the renderer could group this run of pixels into a single HTML element, rather than putting each pixel into its own span element: