Posted by Brian Hudson on March 31, 2009 at 10:24pm
My name is Brian Hudson. I've been wandering around DIY for a week or two now, and I've decided to start this blog to start interacting with the community, get feedback, and to track progress and thoughts on a project my neighbor and I are starting.My background is in Computer Engineering and Computer Science and I've worked in the software industry for several years now. My neighbor has a degree in Aeronautical Engineering, and we’ve been talking for awhile about a UAV project.In middle school and high school, I built a lot of models, eventually building my first R/C, the Sig Riser 100. This wasn’t an easy plane to start flying with around our large property, so I worked on a couple other models over time. My first flight at a true R/C field was a .40 trainer, although I wasn’t with a real instructor, and my first attempt at a landing ended with a nose dive of epic proportions :PBudget and time kept me from pursuing flight much further once I started college, but I always had a desire to get back to both model building and to get experience with R/C flying. I’ve always enjoyed watching aerobatic maneuvers, but never knew whether or not this would be something I could aspire to.As part of my Computer Engineering / CS degree, I had a design project requirement. A lot of other friends I had did things varying from simple lawn sprinkler controls to more complex client server software systems or mesh networked robots. I was fortunate enough to have a working relationship with a research lab where I was given a project to build a microcontroller based input / output multiplexing interface between an R/C car and an on-board 2 node Beowulf configuration of single board computers. The lab’s main area of research was computer vision and its applications toward studying human vision and neurology. Hence, the car had lots of sensors including web-cams, and the goal of my project was to make the use of this robot to test out algorithms and theories less painful – as you can imagine, grad students working on vision research were able to concoct plenty of algorithms and control schemes that flung this robot all over the place and crashed the onboard computers plenty of times. My project had several interesting features:- Ability to dynamically switch R/C control of the car between the on-board computing cluster and the received signal from the R/C transmitter. This also included the ability to pass “training” data to the computer, so that the computer could attempt navigation based on its video input, and could “learn” from corrections passed in by an observer.- GPS data input. This was another data point that could be read into the system and used for navigation and historical mapping etc.- On-board LCD menu and button interface. Basically, I had a small and simple library that allowed configuration of 5 on-board switches and which displayed a menu on a 4x20 LCD screen. This allowed for simple booting out in the field, with enough flexibility to run several different scenarios and simulations and store data to the onboard disks without having to drag along a keyboard and monitor. Now-days, the ubiquity of wireless networking probably makes this a little outdated, but it was handy back then - A serial protocol which allowed the controlling PC to configure the various peripherals like the buttons and LCD, read and write servo data, read GPS data and restart and recalibrate the various components in case the on board computer crashed in the field.I had a blast building this system, and it was really gratifying to start with a couple PIC microcontrollers in a tube, a few components, some flashing software and an idea and come out with a PCB design and some cool firmware to make this robot more fun to work with. I learned a ton through the whole process, and that’s part of the motivation for this project, to learn more about aviation, and get my hands dirty plugging some parts together.I think at this point autonomous flight is a pretty high goal, as I haven’t really (successfully) flown a plane myself and neither has my neighbor. But I’m certain we’ll have fun going through this process – probably have times of faster development and times of slower development, but overall we should have some fun.Ok – so let’s start with some operating parameters:1) Cost. We’re trying to stick within a fairly modest budget. I don’t think we have an explicit dollar amount limit, but at least from my end, I’m going to be working within my normal family monthly budget, which means I’ll probably be buying a few things each month to bring the project farther along (starting with the dev board and maybe the accelerometers or gyro, later adding GPS module, probably a couple of XBee’s for bi-di telemetry).2) Space. This one might sound a bit weird, but I live in a Condo, and my darling wife and baby don’t want me taking over a whole room with this hobby, so I won’t have space like when I was younger and building full kit R/C planes. We’ll need to start with some sort of ARF.3) Tools. Similar to space, I don’t really want to get in over my head as an electronics hobbyist here – I’m not afraid of soldering (although with a baby, I’m terrified of lead solder ), but I don’t want to have to set up a whole mini-electronics lab to get this project going. This is a big motivator for my microcontroller platform selection. Currently, I’m trying to decide between an Arduino Duemilanove or the ArduPilot. Duemilanove seems a little more flexible with the shield options and on board USB connector for programming, debugging etc. Yet, I like the fact that the ArduPilot has a dedicated on-board fail-safe microcontroller for R/C control muxing. I’ll have to look back at my college project to see how I handled input muxing there, because I’m pretty certain I had a channel on my radio that dealt with this – so I could probably re-use some of that design.4) No Glo. I’ve dealt with glo engines in the past with my models, and this was just simply too much hassle. I hope that the reduced selection of models and high initial cost of batteries, chargers etc doesn’t prove prohibitive to our budget, but I’m feeling pretty firm about this, and it seems like the rest of this community feels similarly.I’m not sure if there are any other major constraints here. I’m super excited about this, but also trying to keep from burning out by setting expectations initially too high or by getting frustrated by the fact that my time investment here will be subsequent to my day job and family life.So to conclude, I hope that hanging out on these boards will help me gain knowledge from the work of others, and to start with, I’ve got a couple of questions for others with experience here!1) Power supply – I’m looking to use an ESC with a BEC, but if I choose to use the Duemilanove, its power input requirements/recommendations have 6V as the minimum input supply. I believe the R/C standard is 5V. Now, I know that USB is 5V and the Duemilanove is designed to run from USB. Is there something I’m missing here? This is the first potential deal-breaker or the Duemilanove, and I’m really liking its potential here, so I’d love to find a “don’t worry about it” type of answer, even if it meant I might need to do some sort of power isolation for my servos (although that might generate more “help-me!” questions.2) Components – I’m looking for a simple starter set of components including wiring, a breadboard, some common LEDs, caps, resistors etc. Back in school, all of this came as part of the prototyping lab. Wow, I didn’t know how spoiled I was. I’m able to find many of these things piecemeal, and some of these things on sites like SparkFun, but especially regarding the components, it would be nice to find a simple kit, even if there’s some markup over ordering components from digi-key or something. Does anyone have a recommendation here?I’m looking forward to posting again with my next level of investigation, and I hope to hear from you all!
Brian , its nice to see a fellow drone head in the Seattle area .I am a professional uav integrator / designer and EE student . I have a collection of various components and i have the ics etc to embed Jordie's RXMUX on hand as well as the ability to make prototype boards . also i am working on an IMU based auto pilot using the netburner mod5213 . i just finished the centripetal acceleration compensation portion of the kalman filter and driving tests are looking great . now I am just waiting for the weather to clear a little so i can go flying .any way drop me a line and maybe we could meet up some time .
wayne
PS--on the Duemilanove power, it's got an onboard power regulator that drops the voltage by about a volt. So if you're going to use that with RC power, you'll want to bypass the power regulator.
If you want a Arduino starter kit, you might check out the Make Store one.
Welcome, Brian! Just to help you with your decision, we'll be releasing a shield for ArduPilot in a month or so, which will give it much easier expansion potential. You'll still need a FTDI cable, though...
Comments
wayne
If you want a Arduino starter kit, you might check out the Make Store one.