I may be using this title a little prematurely… I just finished watching Caprica last night.
The last few months of my life (holidays included…) have been spent designing the hardware components for the avionics board I plan to use for my unmanned aircraft. A few days before Christmas the PCB designs were sent off to the manufacturer signifying the design was complete and ready to be built. I’ve since spent my time rereading datasheets and conferring with colleagues, praying that there are no significant flaws in the design.
So what is it? Asity is basically a processor, a radio and a collection of sensors that cover everything I need to fly an aircraft autonomously and perform some experiments relevant to my research. The PCB is 40mm x 60mm with the odd protrusion and will easily with into the fuselage of a glider. More specifically:
- Actel ProASIC3 FPGA
- Atmel ATtiny88
- 16MB SRAM
- 32 Mb Flash
- MicroSD Card Slot
- GPS
- 900MHz Transceiver
- 3 Axis Accelerometer
- 3 Axis Gyroscope
- 3 Axis Compass
- Barometric Pressure Sensor for altitude
- Differential Pressure Sensor for airspeed
- Temperature Sensor(s)
- 8 Servo Channels
- Current Sensing and power enable on each Servo
- Flight Pack Voltage Sensing
- Motor Current Sensing
- Slave Receiver Headers
- 12 General IOs
I’m also building an USB daughter board to allow a ground variant to attach to a laptop in the field.Why does the world need another autopilot? There are a number of similar boards available covering a range of applications. The main difference with Asity is that the processor is a Field Programmable Gate Array (FPGA) rather than a traditional CPU. I also intend to write the firmware completely in HDL rather than using any ‘soft core’ processor that seem to be so popular with FPGA developers. This allows for verifiable firmware that can run mostly in parallel. Each sub-system effectively has its own hardware within the processor greatly increasing reliability and timing capabilities.
The challenge is now to gather the rest of the parts and the tools required to assemble the boards, as well as the months of VHDL coding I have to do. Only time will tell if this project will actually work :P.