close-circle
Close
0%
0%

Synthetic Aperture Multispectral Imager

Using a cluster of five raspberry pis, a Flir Lepton and three Raspberry pi NOIR cameras with appropriate filters, an imager was born.

Similar projects worth following
My professor really wanted a multispectral imager and I really needed a summer project. This turned out to be a really interesting challenge of system engineering, programming, and electrical engineering! I 3D printed the first prototype out of an obnoxious yellow plastic. Right now we're working on upgrading the system to fit a battery system and better enclose the electronics.

The applications for this are numerous! Because it's a modular system we can hot swap a lot of components. For example. We're utilizing the camera as a multispectral imager. But since the unit functions as a synthetic aperture, we can also remove the filters and conduct three-dimensional imaging. The thermal camera gives us the opportunity to track hot objects and determine the distance of the hot object. Alternatively, we could apply the same filters to all of the cameras and only look at one spectra.

Thanks to SDSM&T, UB, the NSF and Hoffert fund for support.

The imager utilizes five raspberry pi computers, a TP-Link switch, a FLIR Lepton, raspberry pi noir cameras, a zippy 8000mAh battery, and some custom circuitry to provide power to the unit. We had only two iterations of the mechanical design. All of this can be 3D printed and assembled using 6-32 bolts and a screwdriver. Some other hardware also includes nylon spacers and all-thread to secure the stack of pi's together.

  • 25 × #6-32 5/8" Machine Screw Mechanical Component
  • 3 × Raspberry PI NOIR Camera Camera
  • 1 × FLIR Lepton Camera Thermal Camera
  • 5 × Raspberry PI 2B Computer
  • 1 × TP-LINK Switch Internet Switch

View all 18 components

  • WHERE TO GO FROM HERE?

    Conrad Farnsworth11/19/2015 at 06:23 0 comments

    For those of you waiting with baited breath, I'm sorry to infer that you've probably keeled over from waiting so long. The bad news is that my junior year as an EE has been hectic. I've also been working on some pretty crazy projects in other portions of my life. I'll be holding those out until the next hackaday prize.

    Now, let's get to the point of this post. I really like the ghetto multispectral imager. So much so that myself and a team of people are submitting a NASA Undergraduate Research Grant to get the money to produce a more professional version of this device.

    What does that mean for everyone following this project? Come March 2015, and provided we get the grant, we will be turning out a very high quality unit capable of doing long-distance multispectral imaging.

    The development of a stabilized chassis, improved optics, higher camera resolution, and the use of more imagers will be the obvious improvements. The hope is to turn out a high quality unit that can be taken seriously by DIY researchers.

    In order to get a foot up on development, I'll be starting the design process as soon as the grant is submitted! This means more updates and cool new things to be learnt!

    Regards,

    -Conrad

  • Making of the Code: A Journey with TCP

    Conrad Farnsworth08/03/2015 at 21:04 0 comments

    Welp, better start documenting some of the progress that happened with this camera. To be honest, I didn't think of entering this into the hackaday prize until after we had finished much of the development.

    The entirety of the (non-gui) code was written in Python. I chose python for two reasons: 1) There's an addon for everything 2) I'll spend less time debugging syntax errors.

    On top of the many advantages of an easy language, what I wanted to do was a perfect fit for a scripting language. Eventually I hope to have the code ported into C or C++, however if that doesn't happen, the machine still works, and has contingencies when it doesn't work. Not optimal, but it produces the stills that are necessary for research.

    Now, let's chat about TCP.

    Why: Guaranteed, corruption-free delivery

    Implementation: Python has a nifty way to create sockets and establish 2 way communication over a network.

    Wired Ethernet communication was also going to be the method which files were transferred, so this helped things.

    Program flow on slave:

    Keep socket open for connection

    Read packet (this allows us to reboot, shut down, or take photo)

    Take photo (this was achieved using the os.system feature of python)

    Send photo over SCP

    Wait for another packet

    Development of this was of course, fairly straightforward. In order to allow for SCP to occur, I shared the fingerprints of all of the slaves with the master. This allowed for password-less interactions between the devices.

    One of the more serious issues we've been having was actually taking the pictures. Ideally, the cameras take several seconds to be activated, take a picture, and have a .jpg file produced. This had to be accounted for in the code in the form of a delay. This is not perfect, but it works.

  • Typing Typing Typing

    Conrad Farnsworth07/28/2015 at 00:42 0 comments

    Design is fun until you have to describe what you've built...apparently nobody is a mind reader so I actually have to convey these things in physical form! Anyway, here's some eye candy! Get it? HA!

  • Video Overview of the System

    Conrad Farnsworth07/22/2015 at 23:44 0 comments

  • The Finished Version!

    Conrad Farnsworth07/21/2015 at 21:27 0 comments

  • Transferring Everything Over To the New Design

    Conrad Farnsworth07/21/2015 at 21:26 0 comments

  • Rev 1 Coming Together

    Conrad Farnsworth07/21/2015 at 21:23 0 comments

  • Testing the Camera Mount

    Conrad Farnsworth07/21/2015 at 21:10 0 comments

    Slid the cameras into the mount!

View all 8 project logs

Enjoy this project?

Share

Discussions

Adam Vadala-Roth wrote 07/23/2015 at 05:08 point

excellent design and execution this is a master piece of hacking and engineering, well done !

I love the 3D printed case and the way the wires come out, great work!

  Are you sure? yes | no

Conrad Farnsworth wrote 07/23/2015 at 16:24 point

Thanks!!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates