Daeho Hong's Lab Notebook

Week 01

January 12, 2009 (1 hour):
Met as a team to discuss more detail of our project that Jeremy and William researched over the break. We discussed the entire picture of the project and espicially talked about parts needed for our mission.

January 15, 2009 (2 hours):
Met as a team after class to finish writing preliminary project proposal.

WEEK 01 SUMMARY
Accomplishments: Submitted preliminary project proposal.
Weekly Work Total: 3 hours
Project Work Total: 3 hours

Week 02

January 21, 2009 (1 hours):
Met as a team to formulate PSSC for presentation in class today. Karl actually suggested to change our project to a boat or car and without Jeremy, we decided to do presentation on unmanned car.

January 22, 2009 (3 hours):
Talk to Jeremy about project break-ups and He told me to work on the SD-card interface. I started to research on SD card interface using SPI module of microcontrollers. I also looked for mouser.com to purchase sd card connector - probablly ST6S008V4AR1500- which will cost less than $3. SD card consumes high voltage around 3.3V and I will have to think about the voltage source for the prototype circuit although for the final circuit William is going to work on this.

WEEK 02 SUMMARY
Accomplishments: PSSC and project proposal finalized.
Weekly Work Total: 4 hours
Project Work Total: 7 hours

Week 03

January 26, 2009 (2 hour):
Worked on interfacing SD card with micro controller's SPI module. First, I look for the pin layout of the SD card.

SD card is very sensitive to the voltage so we should be careful to set it stable to 3.3V and it only requires 4 pins to utilize SPI module. I also found out that there is state machine like commands to control the SD card and I would have to control in the C code.

January 30, 2009 (2 hours):
Worked on more detailed research to find examples. We have not determined on our microcontroller We have some candidates - 9S12 or PICs. It seemed like using SD card with SPI module has a good standard and their code and library were about the same. I also found a very good website for making prototype circuit board and their schematic diagram was very explanatory as below.

I think this website would be very helpful for later's prototype circuit design and I saved it as my favorite.
SD Card Interface Example

WEEK 03 SUMMARY
Accomplishments: Figured out SD card interface.
Weekly Work Total: 4 hours
Project Work Total: 11 hours

Week 04

February 2, 2009 (1 hour):
Met as a team to soldering power lines of the plane and also discussed more on the microcontroller choices I told William that I have no preference because I have not programmed microcontroller using C and the code is about the same for all microcontrollers. Since I like 9s12 and PIC, any chip will do.

February 6, 2009 (4 hours):
Worked on understanding FAT file system of SD card. I breifly talked about saving flying logs and retreiving the destination GPS coordinates I told him that I was gonna try utilizing the file I/O but he recommended me to do just first mega bytes for destinations and from seconde mega byts for logging. I looked for the FAT file system on microcontroller and could not find sufficient examples but I could have source code and note from MICROCHIP. I decided to try after our chip arrives and if It is too complicated for our system, I would just go with William's advice.
These website were also useful
-FAT File System Module
-How to Use MMC/SDC

WEEK 04 SUMMARY
Accomplishments: Figured out sd card File I/O system.
Weekly Work Total: 5 hours
Project Work Total: 16 hours

Week 05

February 10, 2009 (5 hour):
Prepared PowerPoint Presentation on Packaging Considerations. Looked for the information on the similar products. One is Micro Pilot MP2028 and Another is Kestrel Autopilot. I was very surprised at the size and weight of the circuit. Their packaging could almost fit to all RC aircrafts.

February 12, 2009 (7 hours): Worked on writing Packaging Assignment due tomorrow. Although I had component table, diagrams, and similar product information, I spent longer time than I expected. My major consideration was to prevent the aerodynamics structure's disorder. We had enough available space for the PCB board and the PCB board could hold all sensors required. Foloowing shows the available space, outside packaging and pcb layout.

WEEK 05 SUMMARY
Accomplishments: Submitted packaging consideration assignment.
Weekly Work Total: 12 hours
Project Work Total: 28 hours

Week 06

February 16, 2009 (3 hour):
Researched on the easier way to write on sd card through SPI by using pre-defined library and I found out that Microchip.com offers File I/O functions that manages all the FAT file system and allows us to open and close file just like we program C. I guess it will be very powerful after loading string.h functions.
File I/O Functions Using Microchip's Memory Disk Drive File System Library
Manual & Code

February 18, 2009 (1.5 hours):
Placed an order of the parts such as mini-SD breakout board, ultrasonic range-finder, and pressure sensor at sparkfun.com.
ORDER SUMMARY:
------------------------------------------------------------------------------------
Ultrasonic Range Finder - Maxbotix LV-EZ1 $24.95
SEN-08161 Breakout Board for MEMs Barometric Pressure Sensor - SCP1000 $54.95
BOB-00544 Breakout Board for microSD Transflash $14.95
------------------------------------------------------------------------------------

WEEK 06 SUMMARY
Accomplishments: Completed the parts order.
Weekly Work Total: 4.5 hours
Project Work Total: 32.5hours

Week 07

February 24, 2009 (3 hour):
Input File to the micro will contain following information:
n      
Longitude Latitude Altitude Picture
...*n ...*n ...*n ...*n

In the first line, a single integer will let the system know how many input coordinate we have and the rest lines will contain the coordinate's longitude, latitude, altitude, and photo. One function for parsing the number of coordinates and the other fuction for parsing each line of coordinates are enough for the input handling. In this case, file pointer has to be opened until everything is parsed. If there is any interruption by this matter, we would have to parse all lines in the beginning and store all coordinates in memory block.

February 27, 2009 (1.5 hours):
Worked on getting familiar with File I/O demo code given by microchip.com. Most curious thing that I wanted to make sure was how to set what pins to do what. Unlike my expectation, there was no nice pin header map in development software and it tooke me a long time to understand how set this
TRIS register sets whether the port will be used as an input or output and we have to manually configure this for all pins.

WEEK 07 SUMMARY
Accomplishments: Built the programming guide line for file input.
Weekly Work Total: 4.5 hours
Project Work Total: 37 hours

Week 08

March 3, 2009 (3 hour):
Installed MPLAB 8.20 and C30 compiler that are needed for software development. Also worked on the demo program of PIC24F provided by microcip.com. Jeremy showed me how to compile and burn in the code. It seemed fairly straight forward. Our breakboard for the micro is arrived today and we sodered femail pin header so that we can use it like a bread board. we sodered it and checked it with voltage meter.

March 6, 2009 (1.5 hours):
Jeremy suggested xml format of flight log. I researched on how xml works and found out it would be better way to present the flight information. *.xml file stores data and *.xsl is the design script of the data table.

xml practice file: xml_xsl3.xml (readonly), xml_xsl3.xsl

WEEK 08 SUMMARY
Accomplishments: Figured out how to use development kit.
Weekly Work Total: 4.5 hours
Project Work Total: 41.5 hours

Week 09

March 10, 2009 (4 hours):
Talked to jeremy about the flight log information and created the template of flight log output. It contains following data:
Position Orientation Control Surfaces by Auto Control Surfaces by Auto
Longitude Pitch Throttle Amount Throttle Amount
Latitude Roll Elevator Amount Elevator Amount
Altitude   Rudder Amount Rudder Amount
    Left Aileron Amount Left Aileron Amount
    Right Aileron Amount Right Aileron Amount

xml practice file: xsl3.xml (readonly), xsl3.xsl

March 11, 2009 (1 hour):
Our micro is supposed to write a file just like xsl3.xml. Especially we have to insert the part between <Coordinate>...</Coordinate> everytime we want to add a log for the current position. Therefore, we would need 3 functions for writing the flight log.
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="xsl3.xsl"?>
<FLYSPY>
logStart(); do not need any parameter, generate the file
<Coordinate>
<POSITION>
<Longitude>Long</Longitude>
<Latitude>Lat</Latitude>
<Altitude>Alt</Altitude>
</POSITION>
<Orientation>
<Pitch>Pitch</Pitch>
<Roll>Roll</Roll>
</Orientation>
<SurfaceByAuto>
<Throttle>ThrotByAuto</Throttle>
<Elevator>EleByAuto</Elevator>
<Rudder>RudderByAuto</Rudder>
<LeftAileron>LA By Auto</LeftAileron>
<RightAileron>RA By Auto</RightAileron>
</SurfaceByAuto>
<SurfaceByManual>
<Throttle>ThrotByManual</Throttle>
<Elevator>EleByManual</Elevator>
<Rudder>RudderByManual</Rudder>
<LeftAileron>LA By Manual</LeftAileron>
<RightAileron>RA By Manual</RightAileron>
</SurfaceByManual>
</Coordinate>
logCoord(int,,,int); all parameters are passed here and written for a single position
</FLYSPY>
logFinish(); do not need any parameter, close the file pointer

WEEK 09 SUMMARY
Accomplishments: Built guideline for file output.
Weekly Work Total: 5 hours
Project Work Total: 46.5 hours

Week 10

March 16-20, 2009
Spring Breaks

WEEK 10 SUMMARY
Accomplishments:
Weekly Work Total: 0 hours
Project Work Total: 46.5hours

Week 11

March 24, 2009 (2 hour):
Prepared for the presentation of Software Narratives.

March 27, 2009 (5 hours):
As I am in charge of patent assignment due next week, I started looking up patents related to our project through online patent search engine. Mostly they are concerned with algorithms to control plane's projectile, orientation, and control. Searching for patents reminded me for safety algorithm to prevent our plane to get away from our remote controller coverage. This was also mentioned by Prof. Meyer in the software narrative presentation. I would have to talk to Jeremy after he comes back in town.
Precision Approach Control - 20080071431
Navigating A UAV Having An On-Board Digital Camera To Capture Desired Geographic Area - 20080262724
Wirelessly controlling unmanned aircraft and accessing associated surveillance data - 20070284474
System and method for controlling and communicating with a vehicle - 20060271248
Programmable autopilot system for autonomous flight of unmanned aerial vehicles - 7302316

WEEK 11 SUMMARY
Accomplishments: Presented the software narratives.
Weekly Work Total: 7 hours
Project Work Total: 53.5hours

Week 12

March 31, 2009 (5 hour):
Three patents that possibly have infringements from our project were researched and analyzed for the presentation tomorrow.
[1] Randal W. Beard, Walter H. Johnson, Reed Christiansen, Joshua M. Hintze, Timothy W. MeLain, "Programmable autopilot system for autonomous flight of unmanned aerial vehicles," U.S. Patent No. 7302316, November 27, 2007
[2] Gregory E. Dockter, Donald G. Caldwell, Jason Graham, "Precision Approach Control," U.S. Patent Application No. 2008/0071431, March 20, 2008
[3] Douglas G. Nelson, "Anti-hijacking system operable in emergencies to deactivate on-board flight controls and remotely pilot aircraft utilizing autopilot," U.S. Patent Application No. 2004/0079837, April 29, 2004
I thought these were suitable patents that can be compared to our project. While preparing this, Prof. Meyer's question came up in my mind and what he asked me was how we control the throttle of the flight orientation and I remember that we set it as global constant variable in the code.

April 2, 2009 (5 hours):
Worked on Patent Liability Analysis homework due tomorrow.

WEEK 12 SUMMARY
Accomplishments: Submitted Patent Liability Analysis.
Weekly Work Total: 10 hours
Project Work Total: 63.5 hours

Week 13

April 5, 2009 (5 hour):
Wrote the flight logging functions and submitted to SVN. Enabled the fsprintf in FSconfig.h file by uncommenting #define ALLOW_FSFPRINTF which will take more code space in the microcontroller. If our microcontroller cannot handle this in the end, other function(FSwrite) should be used to log.

April 8, 2009 (2 hours):
Revised the code to correct the errors. File Labrary

WEEK 13 SUMMARY
Accomplishments: Submitted flight logging functions
Weekly Work Total: 7 hours
Project Work Total: 70.5hours

Week 14


Could not work a lot due to preparing OPT VISA APPLICATION

WEEK 14 SUMMARY
Accomplishments:
Weekly Work Total: 0 hours
Project Work Total: 70.5 hours

Week 15

April 23, 2009 (5 hour):
Worked on the user manual. The installation process, user guide, and trouble-shooting were written. It was very straight forward and I felt that the manual control mode and flight logging functions were the most important part that can help the user to solve the problem when they encounter any unfavorable circumstance.

WEEK 15 SUMMARY
Accomplishments: Submitted User Manual.
Weekly Work Total: 5 hours
Project Work Total: 75.5 hours

Week 16

April 28, 2009 (2 hours):
Started working on the poster. Took several images of our plane and separated the background from it by Photoshop
->

May 1, 2009 (5 hour):
Worked on the poster. I took the image of our plane and edited it with Photoshop so that it can get along with the aerial photograph of Purdue Memorial Mall. I paid more attention on the graphic to make it interesting for the audience and revised it to make sure that it contains necessary information. The size of the poster was limited and it was difficult to put everything in the poster. PDF

May 3, 2009 (2 hours):
Worked on the homework sumitted for Packaging and Patent Liability Analysis. Based on the grader's comments, revised them to be placed in the final report.

WEEK 16 SUMMARY
Accomplishments: Submitted Poster.
Weekly Work Total: 9 hours
Project Work Total: 84.5 hours