Monday, December 3, 2007

UCLA AIAA AUAV

So what the heck does that mean? The University of California, Los Angeles (UCLA) American Institute of Aeronautics and Astronautics (AIAA) Autonomous Unmanned Aerial Vehicle (AUAV). My name is Viet Nguyen (most people call me Jonathan or Jon). I'm a senior (4th year) as an aerospace engineering major at UCLA. Currently I'm a member of the UCLA branch of AIAA. Recently we decided to embark on attempting the AUVSI AUAV competition. I've been voted as project manager so it's my responsibility to research the feasibility of joining the competition on a bit of a short notice and, if feasible, assemble the team and ensure the project is successful.

Anyway, as a student branch we've competed in plane building competitions before. Making a plane isn't what worries us. Instead we're worried about the electronics and software side of things. I'm a programmer myself so I'm not incredibly worried about the programming part. Instead how we'll pull off the electronics side is where it gets fun. I recently bought myself an Arduino Diecimila board from SparkFun to learn some basic electronics and hardware-to-software interfacing. This is all brand new to me (seriously, you'll see what I mean when I talk about the mistakes I've made) so I'm going to go through a lot of learning pains in the process. I created this blog to sort of keep track of my progress and to act as a reference/learning source for anyone else trying to achieve the same results. I'm hoping that this will work as a learning source as well as a history that I can reference for future reports.

Just tonight I managed to pulse-width modulate the speed on a simple DC motor using a NPN transistor. At first I tried it with a 1.5-3V DC motor on the 5V power source on the Arduino board ("seemed like a good idea at the time"). I ran into some problems where my HIGH digital signal wasn't lasting the one second I programmed it to. Instead it would pulse and simply stop. The off delay was lasting the one second it was programmed for. After switching to the bigger motor and a 9V battery source this seemed to work. I'll post more details and pictures about it later. I'm still trying to figure out what's going on with it.

Also, a big thing I plan on accomplishing soon is getting away from the included Arduino IDE for programming and getting this stuff to work with Microsoft Visual Studio. The included IDE simply appends some stuff to your source code to turn it into proper C code anyway. I'm a big C++ fan (it's what I use, it's what I'm fluent in) but it seems like I'll have to program in C (I miss my encapsulated classes already) to conserve program size because the ATmega168 micro controller used on the Arduino board only has 16kB of space for the program. It looks like I'll have to set up the compiler to use a makefile. There's a makefile on the Arduino website so it should be pretty straight forward, I just haven't gotten around to doing it yet.

Anyway, that's enough for tonight. Hopefully I'll have more to post about this stuff later.

No comments: