About Me!

This blog is about my musings and thoughts. I hope you find it useful, at most, and entertaining, at least.

Résumé [PDF]

Other Pages



Presence Elsewhere




FPGAs, 3D Printing, and spaceflight

Date: 2013-01-28
Tags: fpga 3d-printing space mars

I was reading Inside the ALU of the 8085 microprocessor (found via HackerNews) and have recently been reading Failure Is Not an Option: Mission Control From Mercury to Apollo 13 and Beyond by Gene Kranz and Sojourner: An Insider’s View of the Mars Pathfinder Mission by Andrew Mishkin, as well as being a Mars enthusiast (::cough:: RedColony ::cough::), I started thinking about the processors and other electronics used in a trip to Mars, or even LEO. I remembered a site called OpenCores from the CS 477 @ Pitt course I took as an undergraduate.

OpenCores’ projects lists many parts, including full SOC designs, in an HDL. The page shows hardware designs for crypto, ECC, communication, and more, all of which are open source under a GPL or BSD license. Being an open license, these designs can be improved and combined without fear of legal problems. We could, therefor, have almost all (analog in the next paragraph) of a ship’s or colony’s electronics able to be made from the same stock of raw materials (RAD-hardened FPGA). Since weight and space is important for any mission because of launch costs or we can trade it for extra provisions, only the number of FPGAs needed for expected mean failure across the entire system would need to be brought, not a couple spares for every single system. Also, this means that improvements to the ships electronics can be made one-the-fly if needed.

Analog devices, such as those needed for intra-ship and ship-ground communications, are a bit more of an issue. There is a project for building an SDR, openHPSDR. There also are some programmable analog devices, ispPAC or FPAA but they don’t seem to be wide-spread. I’m not an EE(Electrical Engineer) or have experience in the field, so I’m not very familiar with the tech to comment on it.

There seems to be some developments on the front of using FPGAs to build SDRs. A team at the University of Otago has a thesis by Ian Russell Scott on building an FPGA based radio. There also seems to be some YouTube videos showing people’s FPGA-based SDRs (Raf Ramakers and jossi166). There is also a paper from Wireless Solutions Research Center describing what they call an FPGA based all-digital transmitter. This could be promising in that it would require even fewer analog components to build the ship/colony to Earth communication system.

Additionally, the tractability of FPGA circuits could also allow for RAID for circuits. If one IC dies, another, hot one (online and already plugged in), can be reprogrammed quickly, and automatically, to take over the failed IC’s job. Another alternative could be the remaining processors in the circuit could be reconfigured to take over parts of the tasks the failed on had; this may not always be possible for all circuits, but for some it could be.

Thinking about how the ship and colony’s computer can have, for lack of a better term, plasticity, I though how it would be useful for astronauts to be able to replace any, if not all, the components on a spacecraft. My friend, and Chogger co-founder, Jeremy is getting into 3D scanning, printing, and advanced manufacturing (and is working on Plethora to make these concepts more integrated and easier to use). This got me thinking that no only could electronics be able to be made on-ship, but also parts for equipment. Wikipedia has a good rundown on 3D Printing, so I won’t go into that here. There are many hobbiest 3D printers out there, including the popular MakerBot and (almost fully) self-printable RepRap which both print in plastic. NASA has been working on printing rocket parts out of metal. The F-18 has 90 parts made on 3D printers showing that these technologies are continuing to innovate and become more useful in critical applications.

While I’m discussing spacecraft, I find it odd that the Apollo 13 crew had so much trouble appropriating parts from the CSM to use in the LM(Lunar Module). I don’t know if the shuttle (::cries a little::) or SpaceX (::smiles a little::) use hermaphroditic or unisex, standard sized couplings for parts and cables (for both fluids and electronics), but that would seem to be a huge leap forward in terms of interoperability and salvageability. This isn’t to say we shouldn’t stop carrying duct tape (TVTropes warning!) on space missions.

Although, there will always be parts that can’t be printed, such as lead-based radiation shielding. Despite this, I feel that designing a ship with standard components, and ones that can be made on-the-fly would aid in the repairability of a ship and later a colony. Subtractive methods (e.g.: milling) can require multiple tool to perform a job (though CNC can get you pretty far), they also waste the material that is “subtracted” from the starting block. An additive processes doesn’t waste any material while building a part, giving it an obvious advantage in terms of material efficiency.

The obvious downside is the time and power it takes to print an item. This means a few critical parts need to be brought along as well, for instance, reactor parts, as it would be hard to build them if the reactor’s not working. Also, adapters for and spare tubing may also be useful to carry as the repairs those would be used for would be time-critical. FPGAs also have the problem of assuming there is a working computer and power. Critical components, such as the burning computer, power-control, life-support, &c should come pre-burned in the stock. The advantage is that for pre-burned FPGAs and pre-made hardware, once used, replacements can be made.

With a stock of metal powder, plastic spools, and FPGAs a crew of a space craft or colony should be able to produce the vast majority of the parts needed to repair their spaceship. In theory, this should reduce the weight and space requirements spare parts would require. It would also make upgrades feasible, and testable, without having to cannibalize working, stable hardware.