<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Max Justicz</title>
	<atom:link href="http://www.maxjusticz.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.maxjusticz.com</link>
	<description></description>
	<lastBuildDate>Mon, 29 Apr 2013 02:58:11 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Light Painting with Temperature</title>
		<link>http://www.maxjusticz.com/light-painting-with-temperature/</link>
		<comments>http://www.maxjusticz.com/light-painting-with-temperature/#comments</comments>
		<pubDate>Tue, 01 Jan 2013 03:12:10 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=679</guid>
		<description><![CDATA[Inspired by the Public Laboratory and having just finished a round of college applications, I decided to experiment with thermal imaging on the cheap. Thermal cameras are expensive. Even at low resolutions, it is not uncommon for a decent thermal camera to cost over $10,000. However, for only $20, you can buy an infrared thermometer that reads [...]]]></description>
				<content:encoded><![CDATA[<p>Inspired by the <a href="http://publiclaboratory.org/tool/thermal-camera">Public Laboratory</a> and having just finished a round of college applications, I decided to experiment with thermal imaging on the cheap.</p>
<p>Thermal cameras are expensive. Even at low resolutions, it is not uncommon for a decent thermal camera to cost over $10,000. However, for only $20, you can buy an <a href="https://www.sparkfun.com/products/9570">infrared thermometer</a> that reads the average temperature over a small area. If we could turn that single area into a color and use a long exposure photography to &#8220;paint&#8221; the scene with that color, we could create something very similar to a proper thermal image.</p>
<p>This is not a new idea. The <a href="http://publiclaboratory.org/tool/thermal-camera">Public Laboratory</a> has come out with a design for something that does this, but I have yet to see one make its way off of a breadboard. I decided to take the project to the next level and make a real, bona fide thermal flashlight. Here&#8217;s how I did it.</p>
<p>Materials:</p>
<ul>
<li><a href="https://www.sparkfun.com/products/9570">Infrared Thermometer &#8211; MLX90614</a></li>
<li><a href="https://www.sparkfun.com/products/8375">0.1uF Ceramic Capacitor</a></li>
<li>2 4.7k Resistors</li>
<li>3 1k Resistors</li>
<li><a href="https://www.sparkfun.com/products/10821">8 RGB LEDs</a> Note: Previously, and in the images below, you will see me using common cathode (negative) LEDs. To make your life easier with the transistors, use these common anode LEDs.</li>
<li><a href="http://www.amazon.com/gp/product/B003DQ0F0I/ref=oh_details_o01_s00_i00">Dorcy LED Flashlight</a></li>
<li><a href="https://www.sparkfun.com/products/521">3 NPN Transistors</a></li>
<li>Arduino, any will do</li>
<li>9V Battery Clip and Battery</li>
<li>Perfboard</li>
</ul>
<p>If you need any of the Sparkfun parts in larger quantities, I highly recommend buying from a bigger distributor like Digikey. You&#8217;ll save a bunch of money.</p>
<p>First I cracked open the flashlight and had a look inside.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8178.jpg"><img class="aligncenter size-large wp-image-688" alt="DSC_8178" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8178-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8182.jpg"><img class="aligncenter size-large wp-image-689" alt="DSC_8182" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8182-1024x685.jpg" width="700" height="468" /></a></p>
<p>Then I removed the LED assembly, which required removing three screws.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8185.jpg"><img class="aligncenter size-large wp-image-690" alt="DSC_8185" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8185-1024x685.jpg" width="700" height="468" /></a></p>
<p>Below is the old LED assembly. We don&#8217;t need it, but it&#8217;s a useful source of ultra-bright LEDs.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8186.jpg"><img class="aligncenter size-large wp-image-691" alt="DSC_8186" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8186-1024x685.jpg" width="700" height="468" /></a></p>
<p>&nbsp;</p>
<p>Now we have to start making our own RGB LED assembly. Remove the reflector from the flashlight&#8217;s housing so we can work on it. One interesting thing to keep in mind &#8211; even though the reflector is made of plastic, it has a very conductive coating. Make sure you don&#8217;t short anything against it by accident.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8190.jpg"><img class="aligncenter size-large wp-image-693" alt="DSC_8190" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8190-1024x685.jpg" width="700" height="468" /></a></p>
<p>Place all of the 5mm LEDs in the outer ring of the reflector. We are leaving the center empty for the infrared thermometer. Also, remove the plastic lens from the flashlight cap.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8193.jpg"><img class="aligncenter size-large wp-image-694" alt="DSC_8193" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8193-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8194.jpg"><img class="aligncenter size-large wp-image-695" alt="DSC_8194" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8194-1024x685.jpg" width="700" height="468" /></a></p>
<p>Using the placed LEDs as a guide, insert the leads through your piece of perfboard.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8197.jpg"><img class="aligncenter size-large wp-image-696" alt="DSC_8197" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8197-1024x685.jpg" width="700" height="468" /></a></p>
<p>Solder the LEDs in place, making sure they are all in the same orientation relative to one another. In this case, the blue pin of the RGB LED is always on the right (the long pins are the common anodes of the RGB LEDs).</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8198.jpg"><img class="aligncenter size-large wp-image-697" alt="DSC_8198" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8198-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8202.jpg"><img class="aligncenter size-large wp-image-698" alt="DSC_8202" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8202-1024x685.jpg" width="700" height="468" /></a></p>
<p>We are wiring all of the LEDs in parallel. Bend down the same pin on each LED and solder each to the core of a piece of solid core wire to connect everything together.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8204.jpg"><img class="aligncenter size-large wp-image-699" alt="DSC_8204" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8204-1024x685.jpg" width="700" height="468" /></a></p>
<p>Add a couple of pieces of electrical tape to insulate these connections from the next layer.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8207.jpg"><img class="aligncenter size-large wp-image-700" alt="DSC_8207" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8207-1024x685.jpg" width="700" height="468" /></a></p>
<p>Bend down the next pin. Lather, rinse, repeat. Note that I didn&#8217;t add 100 ohm current limiting resistors to each of the LEDs. This would have been advisable, but I got away with it by adding a 15 ohm resistor in series with the red, green, and blue channels. That was not ideal, since I&#8217;m trusting that each of the LEDs will draw its correct share of current (unfortunately, that almost certainly is not the case). Be smarter than me and add your current limiting resistors to each LED during this stage.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8208.jpg"><img class="aligncenter size-large wp-image-701" alt="DSC_8208" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8208-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8209.jpg"><img class="aligncenter size-large wp-image-702" alt="DSC_8209" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8209-1024x685.jpg" width="700" height="468" /></a></p>
<p>Inside the plastic flashlight housing, break off the two plastic flaps on either side of the power switch. We need the room.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8214.jpg"><img class="aligncenter size-large wp-image-703" alt="DSC_8214" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8214-1024x685.jpg" width="700" height="468" /></a></p>
<p>Solder wires to each of the pins on the thermometer. I used heat-shrink tubing to make sure nothing shorted out. Make sure to remember which wire goes to which pin (relative to the little bump on the thermometer).</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8216.jpg"><img class="aligncenter size-large wp-image-704" alt="DSC_8216" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8216-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8217.jpg"><img class="aligncenter size-large wp-image-705" alt="DSC_8217" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8217-1024x685.jpg" width="700" height="468" /></a>Wire up the thermometer as described <a href="http://bildr.org/2011/02/mlx90614-arduino/">here</a> - the link provides a very easy to understand diagram.<a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8220.jpg"><br />
</a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_82201.jpg"><img class="aligncenter size-large wp-image-707" alt="DSC_8220" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_82201-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8225.jpg"><img class="aligncenter size-large wp-image-708" alt="DSC_8225" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8225-1024x685.jpg" width="700" height="468" /></a></p>
<p>Connect everything to the Arduino: the pins you connect the RGB LEDs to have to be PWM pins since we need gradations of brightness with each color. Where you connect everything depends on your code (see next step). Two pins from the sensor went to analogs 4 and 5, and each channel (color) of the LEDs should go to pins 3, 5, and 6 through the NPN transistors to ground (I made a mistake by not doing this &#8212; someone correctly pointed out that I was drawing too much current from the Arduino otherwise.). If you don&#8217;t know what that means, <a href="http://jonsfmp.files.wordpress.com/2011/01/multiple_leds2.jpg">check out this diagram</a>. Power went to the common anodes of the LEDs.</p>
<p>I used the <a href="http://publiclaboratory.org/notes/warren/12-12-2011/circuit-diagram-simple-thermal-flashlight">code generously provided by the Public Laboratory</a>. It does exactly what we need it to.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8226.jpg"><img class="aligncenter size-large wp-image-709" alt="DSC_8226" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8226-1024x685.jpg" width="700" height="468" /></a></p>
<p>Connect the power switch of the flashlight between the 9V and the Arduino.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8231.jpg"><img class="aligncenter size-large wp-image-710" alt="DSC_8231" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8231-1024x685.jpg" width="700" height="468" /></a></p>
<p>Carefully place everything into the flashlight housing making sure no boards can short out against each other. You&#8217;re done!</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8232.jpg"><img class="aligncenter size-large wp-image-711" alt="DSC_8232" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8232-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8233.jpg"><img class="aligncenter size-large wp-image-712" alt="DSC_8233" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8233-1024x685.jpg" width="700" height="468" /></a> <a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8243.jpg"><img class="aligncenter size-large wp-image-714" alt="DSC_8243" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8243-1024x685.jpg" width="700" height="468" /></a>This was a really, really fun project to build. The parts aren&#8217;t that expensive, and with some electronics experience you should be able to complete this in an afternoon or two. Set up your camera for a long exposure shot (I used 25-30 seconds for the photo above), and paint the room! The results are surprisingly good.</p>
<p>As always, please feel free to ask me any questions. Let me know if you build your own thermal flashlight &#8211; I&#8217;d love to see it!</p>
<p><strong>UPDATE: </strong><a href="http://news.ycombinator.com/item?id=4991765">Discussion on HN</a>, <a href="http://www.instructables.com/id/Build-a-Thermal-Flashlight-Light-Painting-with-T/">Instructables</a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8250.jpg"><img class="aligncenter size-large wp-image-720" alt="DSC_8250" src="http://www.maxjusticz.com/wp-content/uploads/2012/12/DSC_8250-1024x685.jpg" width="700" height="468" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/light-painting-with-temperature/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Three-Wheeled Go Kart</title>
		<link>http://www.maxjusticz.com/an-awesome-trike/</link>
		<comments>http://www.maxjusticz.com/an-awesome-trike/#comments</comments>
		<pubDate>Fri, 02 Nov 2012 23:29:14 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=540</guid>
		<description><![CDATA[I recently had the pleasure of working in the shop of a good friend of my grandparents named Mark. Mark&#8217;s shop is just awesome &#8211; milling machines, giant metal lathes, a TIG welder &#8211; he&#8217;s spent years collecting some of the coolest equipment I&#8217;ve ever seen. Mark was kind enough to let me use his shop [...]]]></description>
				<content:encoded><![CDATA[<p>I recently had the pleasure of working in the shop of a good friend of my grandparents named Mark<a href="http://www.linkedin.com/pub/mark-heflin/8/98/34">.</a> Mark&#8217;s shop is just awesome &#8211; milling machines, giant metal lathes, a TIG welder &#8211; he&#8217;s spent years collecting some of the coolest equipment I&#8217;ve ever seen. Mark was kind enough to let me use his shop (and expertise) for a couple of days. It&#8217;s amazing what we got accomplished in the few hours I was there. We&#8217;re not done, but with one more day of hard work I&#8217;m confident this trike will be up and running.</p>
<p>The first thing we did was cut the 1.5&#8243; square stock into the following lengths:</p>
<ul>
<li>2 64&#8243; sections</li>
<li>2 48&#8243; sections</li>
<li>2 19.5&#8243; sections</li>
<li>1 10&#8243; section</li>
</ul>

<a href='http://www.maxjusticz.com/an-awesome-trike/img_1296/#main' title='IMG_1296'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1296-150x150.jpg" class="attachment-thumbnail" alt="IMG_1296" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1297/#main' title='IMG_1297'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1297-150x150.jpg" class="attachment-thumbnail" alt="IMG_1297" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1306/#main' title='IMG_1306'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1306-150x150.jpg" class="attachment-thumbnail" alt="IMG_1306" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1307/#main' title='IMG_1307'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1307-150x150.jpg" class="attachment-thumbnail" alt="IMG_1307" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1309/#main' title='IMG_1309'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1309-150x150.jpg" class="attachment-thumbnail" alt="IMG_1309" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1314/#main' title='IMG_1314'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1314-150x150.jpg" class="attachment-thumbnail" alt="IMG_1314" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1323/#main' title='IMG_1323'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/IMG_1323-150x150.jpg" class="attachment-thumbnail" alt="IMG_1323" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/trike/#main' title='trike'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/trike-150x150.jpg" class="attachment-thumbnail" alt="trike" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1327/#main' title='IMG_1327'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1327-150x150.jpg" class="attachment-thumbnail" alt="IMG_1327" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1334/#main' title='IMG_1334'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1334-150x150.jpg" class="attachment-thumbnail" alt="IMG_1334" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1327-2/#main' title='IMG_1327'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_13271-150x150.jpg" class="attachment-thumbnail" alt="IMG_1327" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1334-2/#main' title='IMG_1334'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_13341-150x150.jpg" class="attachment-thumbnail" alt="IMG_1334" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1336/#main' title='IMG_1336'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1336-150x150.jpg" class="attachment-thumbnail" alt="IMG_1336" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1383/#main' title='IMG_1383'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1383-150x150.jpg" class="attachment-thumbnail" alt="IMG_1383" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1387/#main' title='IMG_1387'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1387-150x150.jpg" class="attachment-thumbnail" alt="IMG_1387" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1402/#main' title='IMG_1402'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1402-150x150.jpg" class="attachment-thumbnail" alt="IMG_1402" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1412/#main' title='IMG_1412'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1412-150x150.jpg" class="attachment-thumbnail" alt="IMG_1412" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1415/#main' title='IMG_1415'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1415-150x150.jpg" class="attachment-thumbnail" alt="IMG_1415" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1427/#main' title='IMG_1427'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1427-150x150.jpg" class="attachment-thumbnail" alt="IMG_1427" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1445/#main' title='IMG_1445'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1445-150x150.jpg" class="attachment-thumbnail" alt="IMG_1445" /></a>
<a href='http://www.maxjusticz.com/an-awesome-trike/img_1447/#main' title='IMG_1447'><img width="150" height="150" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1447-150x150.jpg" class="attachment-thumbnail" alt="IMG_1447" /></a>

<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1327.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1327" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1327-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>This plate will mount the steering bracket for the tires.<a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1334.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1334" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1334-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1336.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1336" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1336-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>Here I&#8217;m drilling out the steering bracket mounting holes.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1383.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1383" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1383-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1387.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1387" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1387-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1402.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1402" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1402-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>This is the rear tire bearing bracket. The bearing mounts through those holes. This should be as strong a weld as you can make it &#8212; it will support the majority of your weight!<a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1412.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1412" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1412-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1415.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1415" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1415-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>Here the tire mounts to the steering bracket.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1427.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1427" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1427-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>Here I tacked the seat supports in place. Once I was sure the motor would fit, I filled in these welds.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1445.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1445" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1445-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1447.jpg"><img class="aligncenter size-large wp-image-633" title="IMG_1447" src="http://www.maxjusticz.com/wp-content/uploads/2012/11/IMG_1447-1024x764.jpg" alt="" width="700" height="522" /></a></p>
<p>After bolting the motor to its plasma-cut mounting plate, I ran the chain to its rear sprocket.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/08/trike.jpg"><img class="aligncenter size-full wp-image-554" title="trike" src="http://www.maxjusticz.com/wp-content/uploads/2012/08/trike.jpg" alt="" width="600" height="400" /></a></p>
<p>That&#8217;s the state of the trike right now. It&#8217;s definitely not completed (the steering, clutch, throttle, and seat mount need to be finished), but it&#8217;s certainly not far from being ridden! I will try to finish the project when I am back up at my grandparents&#8217; house for holiday break. Stay tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/an-awesome-trike/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Honey Bee Tracking Box</title>
		<link>http://www.maxjusticz.com/honey-bee-tracking-box/</link>
		<comments>http://www.maxjusticz.com/honey-bee-tracking-box/#comments</comments>
		<pubDate>Sat, 29 Sep 2012 17:58:41 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=582</guid>
		<description><![CDATA[My school is kind of strange. We don&#8217;t have a cafeteria, but we do have a four week course on &#8220;The Simpsons.&#8221; We don&#8217;t have a jungle-gym on the elementary playground, but we do have a half-buried firetruck. We don&#8217;t have a football team, but we do have a bee-keeping club. It&#8217;s pretty awesome. This [...]]]></description>
				<content:encoded><![CDATA[<p>My school is kind of strange. We don&#8217;t have a cafeteria, but we do have a four week course on &#8220;The Simpsons.&#8221; We don&#8217;t have a jungle-gym on the elementary playground, but we do have a half-buried firetruck.</p>
<p>We don&#8217;t have a football team, but we do have a bee-keeping club. It&#8217;s pretty awesome.</p>
<p>This year I decided to do some cool experiments with honey bees. This project uses 12 temperature probes placed throughout a beehive to track the movement of honey bees over the course of several weeks. The project is completely solar powered, weatherproof, and can log months of data onto a 1GB memory card. I wouldn&#8217;t have been able to build this without the parts supplied by the bee keeping club. Thanks, Magnus!</p>
<p>Parts you&#8217;ll need (in no particular order):</p>
<ul>
<li><a href="https://www.sparkfun.com/products/11050">Waterproof temperature probes</a>  x 12 = $107.52</li>
<li><a href="https://www.adafruit.com/products/762">Cable glands</a> x 13 = $22.88
<ul>
<li>I&#8217;m linking to the smaller size of gland, when I actually bought the larger size. While the larger size did work, you won&#8217;t have to tighten the smaller ones as much and they should work much more easily.</li>
</ul>
</li>
<li><a href="https://www.sparkfun.com/products/11021">Arduino</a> = $29.95
<ul>
<li>I used an Arduino Mega, but this was way overkill. Any Arduino will do just fine. Because I used a Mega, the code is a bit affected.</li>
</ul>
</li>
<li><a href="https://www.adafruit.com/products/243">SD card shield</a> = $19.50</li>
<li>SD Card = $9.95</li>
<li><a href="https://www.adafruit.com/products/905">Large weatherproof enclosure box</a> = $19.95</li>
<li><a href="https://www.adafruit.com/products/353">6600mAh Lithium ion battery pack</a> = $39.50
<ul>
<li>Yes, it&#8217;s a giant battery, but we want this thing to keep working if it rains for a few days!</li>
</ul>
</li>
<li><a href="https://www.adafruit.com/products/390">Lithium ion battery charger</a> = $24.95</li>
<li><a href="https://www.adafruit.com/products/500">Large, 6V solar panel</a> = $34.95</li>
<li><a href="http://www.adafruit.com/products/14">3.7v to 5v boost converter</a> = $19.50</li>
</ul>
<p>TOTAL: $328.65 + Shipping (if you&#8217;re getting everything new)</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/Honeybee.zip">Here&#8217;s the code.</a> The parts for the SD card may have to change a little depending on what shield and Arduino you use. Because I used a Mega here, I had to do a bit of a work around to get the SD shield to work without modifying it, so it could probably be simplified a bit further.</p>
<p>First, I measured and drilled holes for the 13 cable glands. 5 on each side with two on the front for the temperature probes, and one on the back for power.</p>
<p>The outermost cable glands had a nut on the inside that ran into a support post. I just cut off part of the outside of the nut to make it fit &#8211; it shouldn&#8217;t compromise the seal too badly, and should survive splashes just fine. Hopefully this thing won&#8217;t end up entirely underwater.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0449.jpg"><img class="aligncenter size-large wp-image-585" title="IMG_0449" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0449-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0448.jpg"><img class="aligncenter size-large wp-image-586" title="IMG_0448" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0448-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0435.jpg"><img class="aligncenter size-large wp-image-596" title="IMG_0435" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0435-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0455.jpg"><br />
</a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0457.jpg"><img class="aligncenter size-large wp-image-588" title="IMG_0457" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0457-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>After that I brought the end of each temperature probe through its gland.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0458.jpg"><img class="aligncenter size-large wp-image-589" title="IMG_0458" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0458-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0461.jpg"><img class="aligncenter size-large wp-image-590" title="IMG_0461" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0461-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Then I began wiring up the buses that will power all the temperature probes. I had some extra screw-terminal blocks around, so I put them all in a row and soldered the leads together to make two buses: one for 5v, one for ground.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0463.jpg"><img class="aligncenter size-large wp-image-591" title="IMG_0463" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0463-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0464.jpg"><img class="aligncenter size-large wp-image-592" title="IMG_0464" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0464-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0465.jpg"><img class="aligncenter size-large wp-image-593" title="IMG_0465" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0465-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>There should only be white (signal) wires left from the temperature probes. I insulated the bottom of the terminal blocks with electrical tape so they don&#8217;t short out with each other.</p>
<p>Next I wired each signal wire to the SD card shield. Pictured is a Sparkfun SD card shield. In the parts list I linked to an Adafruit shield, as that&#8217;s what I recommend buying (and what I ended up actually using). The Sparkfun shield was a huge pain. Don&#8217;t use it. The Adafruit shield also has a RTC (real time clock) module built in, so we can timestamp our data points more accurately, even after power gets cut out. I highly recommend it.</p>
<p>Because these temperature probes work on the digital, one-wire bus system (where each probe has a unique address), all of the signal wires get tied together and brought to a single digital pin on the Arduino. I chose to use pin 3.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0470.jpg"><img class="aligncenter size-large wp-image-594" title="IMG_0470" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0470-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0476.jpg"><img class="aligncenter size-large wp-image-595" title="IMG_0476" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0476-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Then I used a 4.7K pull up resistor on the signal wires, tying them to the 5v supply on the Arduino. I also connected the power busses to 5v and ground at this time. Now you can slap your Arduino on there!</p>
<p>As I mentioned before, you&#8217;ll see an Arduino Mega pictured, but this was unnecessarily powerful for this application. In fact, a lower power chip would probably be superior. If you end up connecting more sensors, however, a Mega might be useful.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0483.jpg"><img class="aligncenter size-large wp-image-597" title="IMG_0483" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0483-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Next I began the wiring for the power supply. This was really simple. After soldering the large capacitor onto the charging circuit (leaving lots of extra lead so that it could save space by bending the capacitor over), I connected the charger&#8217;s load output to the boost converter, and the 6V charger input to the solar panel. I also extended the solar panel&#8217;s wires; this ensures that when we bring the box out to the hive we can place the solar panel somewhere with as much sunlight as possible.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0485.jpg"><img class="aligncenter size-large wp-image-598" title="IMG_0485" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0485-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0486.jpg"><img class="aligncenter size-large wp-image-599" title="IMG_0486" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0486-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Next, I connected the power out from the USB connection on the boost converter to the DC in jack on the Arduino. Make sure to add a power switch so you don&#8217;t have to disconnect the solar panel whenever you want to program the Arduino.</p>
<p>I placed all of the power circuitry in an anti-static bag to avoid any short circuits.</p>
<p>It&#8217;s done!</p>
<p>This was a pretty fun, straightforward project. I will make a post soon with some analysis of the data we collect from the hive. It should be pretty interesting!</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0492.jpg"><img class="aligncenter size-large wp-image-600" title="IMG_0492" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0492-1024x768.jpg" alt="" width="700" height="525" /></a><a href="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0494.jpg"><img class="aligncenter size-large wp-image-601" title="IMG_0494" src="http://www.maxjusticz.com/wp-content/uploads/2012/09/IMG_0494-1024x768.jpg" alt="" width="700" height="525" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/honey-bee-tracking-box/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Query Factual with Perl</title>
		<link>http://www.maxjusticz.com/query-factual-with-perl/</link>
		<comments>http://www.maxjusticz.com/query-factual-with-perl/#comments</comments>
		<pubDate>Sun, 05 Aug 2012 00:01:08 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=508</guid>
		<description><![CDATA[For a class I&#8217;m taking in technology entrepreneurship, I&#8217;m building a product that requires a large database of restaurants. Factual.com has one of the best restaurant databases I&#8217;ve found. The best part? 10,000 API calls per day for free. That&#8217;s pretty cool. You can also request downloads of their data for a reasonable fee. Unfortunately, there&#8217;s [...]]]></description>
				<content:encoded><![CDATA[<p>For a class I&#8217;m taking in technology entrepreneurship, I&#8217;m building a product that requires a large database of restaurants. <a href="http://www.factual.com/">Factual.com</a> has one of the best <a href="http://www.factual.com/data-apis/places/restaurants">restaurant databases</a> I&#8217;ve found. The best part? 10,000 API calls per day for free. That&#8217;s pretty cool. You can also request downloads of their data for a reasonable fee.</p>
<p>Unfortunately, <a href="http://developer.factual.com/display/docs/Drivers+and+Examples">there&#8217;s no official Perl driver yet.</a> And the <a href="http://developer.yahoo.com/search/boss/boss_api_guide/codeexamples.html#oauth_perl">code example</a> they link to doesn&#8217;t seem to work.</p>
<p>The program below queries the Factual database given your public OAuth key, your secret OAuth key, a URL to query, and an output directory. I *think* this is the first complete program online that actually works for Factual &#8211; the rest seem to be focused on three-legged OAuth systems (which Factual is not). Factual also wants OAuth information sent through the authorization header, <strong>not</strong> encoded into the URL like many other services require.</p>
<div class="codecolorer-container perl default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="perl codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#!/usr/bin/perl</span><br />
<br />
<span style="color: #000000; font-weight: bold;">use</span> strict<span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">use</span> Net<span style="color: #339933;">::</span><span style="color: #006600;">OAuth</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">use</span> HTTP<span style="color: #339933;">::</span><span style="color: #006600;">Request</span><span style="color: #339933;">::</span><span style="color: #006600;">Common</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">use</span> LWP<span style="color: #339933;">::</span><span style="color: #006600;">UserAgent</span><span style="color: #339933;">;</span><br />
<span style="color: #0000ff;">$Net</span><span style="color: #339933;">::</span><span style="color: #006600;">OAuth</span><span style="color: #339933;">::</span><span style="color: #006600;">PROTOCOL_VERSION</span> <span style="color: #339933;">=</span> Net<span style="color: #339933;">::</span><span style="color: #006600;">OAuth</span><span style="color: #339933;">::</span><span style="color: #006600;">PROTOCOL_VERSION_1_0A</span><span style="color: #339933;">;</span><br />
<br />
<a href="http://perldoc.perl.org/functions/die.html"><span style="color: #000066;">die</span></a> <span style="color: #ff0000;">&quot;Couldn't open or create output file<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #b1b100;">unless</span> <a href="http://perldoc.perl.org/functions/open.html"><span style="color: #000066;">open</span></a> <span style="color: #009900;">&#40;</span>OUTPUTF<span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;+&gt;&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;/PATH/TO/OUTPUT/FILE.txt&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> OUTPUTF factual_query<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<a href="http://perldoc.perl.org/functions/print.html"><span style="color: #000066;">print</span></a> <span style="color: #ff0000;">&quot;Successfully printed query<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">;</span><br />
<a href="http://perldoc.perl.org/functions/close.html"><span style="color: #000066;">close</span></a> OUTPUTF<span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">sub</span> factual_query <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$url</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;http://api.v3.factual.com/t/restaurants-us/&quot;</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">#Or whatever you're querying</span><br />
<br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$request</span> <span style="color: #339933;">=</span> Net<span style="color: #339933;">::</span><span style="color: #006600;">OAuth</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">request</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'consumer'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-&gt;</span><span style="color: #000000; font-weight: bold;">new</span><span style="color: #009900;">&#40;</span><br />
&nbsp; &nbsp;consumer_key <span style="color: #339933;">=&gt;</span> <span style="color: #ff0000;">'YOUR_FACTUAL_OAUTH_KEY'</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;consumer_secret <span style="color: #339933;">=&gt;</span> <span style="color: #ff0000;">'YOUR_FACTUAL_OAUTH_SECRET'</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;request_url <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">$url</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;request_method <span style="color: #339933;">=&gt;</span> <span style="color: #ff0000;">&quot;GET&quot;</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;signature_method <span style="color: #339933;">=&gt;</span> <span style="color: #ff0000;">'HMAC-SHA1'</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;timestamp <span style="color: #339933;">=&gt;</span> <a href="http://perldoc.perl.org/functions/time.html"><span style="color: #000066;">time</span></a><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span><br />
&nbsp; &nbsp;nonce <span style="color: #339933;">=&gt;</span> nonce<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span><br />
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp;<span style="color: #0000ff;">$request</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">sign</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$req</span> <span style="color: #339933;">=</span> HTTP<span style="color: #339933;">::</span><span style="color: #006600;">Request</span><span style="color: #339933;">-&gt;</span><span style="color: #000000; font-weight: bold;">new</span><span style="color: #009900;">&#40;</span>GET <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #0000ff;">$req</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">header</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'Authorization'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">$request</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">to_authorization_header</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$ua</span> <span style="color: #339933;">=</span> LWP<span style="color: #339933;">::</span><span style="color: #006600;">UserAgent</span><span style="color: #339933;">-&gt;</span><span style="color: #000000; font-weight: bold;">new</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$response</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">$ua</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">simple_request</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">$req</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp;<a href="http://perldoc.perl.org/functions/return.html"><span style="color: #000066;">return</span></a> <span style="color: #0000ff;">$response</span><span style="color: #339933;">-&gt;</span><span style="color: #006600;">as_string</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #009900;">&#125;</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Generates random numerical sequence</span><br />
<span style="color: #000000; font-weight: bold;">sub</span> nonce <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">@a</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">..</span><span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">my</span> <span style="color: #0000ff;">$nonce</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">''</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">..</span><span style="color: #cc66cc;">9</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #0000ff;">$nonce</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">$a</span><span style="color: #009900;">&#91;</span><a href="http://perldoc.perl.org/functions/rand.html"><span style="color: #000066;">rand</span></a><span style="color: #009900;">&#40;</span><a href="http://perldoc.perl.org/functions/scalar.html"><span style="color: #000066;">scalar</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">@a</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp;<span style="color: #009900;">&#125;</span><br />
&nbsp; &nbsp;<a href="http://perldoc.perl.org/functions/return.html"><span style="color: #000066;">return</span></a> <span style="color: #0000ff;">$nonce</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/query-factual-with-perl/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Restore &amp; Modify an Original DMG Gameboy</title>
		<link>http://www.maxjusticz.com/restore-modify-an-original-dmg-gameboy/</link>
		<comments>http://www.maxjusticz.com/restore-modify-an-original-dmg-gameboy/#comments</comments>
		<pubDate>Sun, 10 Jun 2012 01:59:00 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=479</guid>
		<description><![CDATA[Released in 1989, the DMG (Dot Matrix Gameboy) was the first Gameboy Nintendo ever released.  It&#8217;s a lot of fun to mess with, so here&#8217;s a quick guide of my experiences taking apart, restoring, and modifying the DMG with an awesome new backlight. The Gameboy I had was in fairly good condition, with the exception [...]]]></description>
				<content:encoded><![CDATA[<p>Released in 1989, the DMG (<strong>D</strong>ot <strong>M</strong>atrix <strong>G</strong>ameboy) was the first Gameboy Nintendo ever released.  It&#8217;s a lot of fun to mess with, so here&#8217;s a quick guide of my experiences taking apart, restoring, and modifying the DMG with an awesome new backlight.</p>
<p>The Gameboy I had was in fairly good condition, with the exception of several vertical lines through the display.  After some research, I learned this is usually due to a faulty display connector, where the solder connections have weakened and eventually separated from the top layer of the display circuitry.  Using a soldering iron, I learned that we can reflow (that is, remelt and reconnect) this broken solder below the connector.  It&#8217;s not that hard, and fixes what is perhaps the most common issue with these Gameboys.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0348.png"><img class="aligncenter size-full wp-image-482" title="IMG_0348" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0348.png" alt="" width="600" height="400" /></a></p>
<p>The first step is to remove the back cover of the DMG.  There are six screws, and depending on when your Gameboy was made, they are either going to be triwing or phillips.  Triwing screws, for those of you unfamiliar, are Nintendo&#8217;s favorite way to make opening their products just <em>ever so slightly</em> more irritating.  If you don&#8217;t want to spend a couple dollars on a triwing driver, you can do what I did and use a small flathead in one of the three slots in the screws.  It&#8217;s not super difficult, but you definitely want to be careful to avoid stripping the screws.  There&#8217;s four obvious ones on the back of the Gameboy, and two inside the battery compartment.  You&#8217;ll need to remove all of these.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/screws.png"><img class="aligncenter size-full wp-image-483" title="screws" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/screws.png" alt="" width="600" height="400" /></a></p>
<p>Once you take those screws out, don&#8217;t pull the Gameboy apart quickly.  There&#8217;s a fairly short ribbon connector connecting the screen half of the Gameboy to the circuitry half.  Carefully hinge unit so the screen half is face down on your desk with the circuitry portion sticking vertically upward.  You could disconnect the ribbon cable at this point (it&#8217;s a ZIF socket, so the connector just slides out), but I didn&#8217;t want to bother having to reconnect it when I was done.  You can do this repair quite easily without having to put this connector back in.</p>
<p><img class="aligncenter size-full wp-image-484" title="IMG_0353" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0353.png" alt="" width="600" height="400" /></p>
<p>Next, you have to remove ten screws holding the display board onto the front case.  From this point forward, all the screws we&#8217;ll be dealing with are just phillips.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0356.png"><img class="aligncenter size-full wp-image-485" title="IMG_0356" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0356.png" alt="" width="600" height="400" /></a></p>
<p>Remove those ten screws, and gently wiggle the front board away from the case.  Don&#8217;t be too violent here, the board is thin enough you could put some stress fractures in it if you&#8217;re not a little careful.  Eventually the board will come free.  If you&#8217;re having some real difficulty, double check that you have removed all ten screws.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0358.png"><img class="aligncenter size-full wp-image-486" title="IMG_0358" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0358.png" alt="" width="600" height="400" /></a></p>
<p>It&#8217;s a good idea at this point to place a slip of paper between the top board and bottom board so that you don&#8217;t short anything out you don&#8217;t want to. Once you&#8217;ve done this, put the batteries in the Gameboy, turn it on, and change the contrast with the knob on the left side of the display until the whole thing turns black (with the exception of the lines we&#8217;re fixing).  You can see here that the act of removing the display from its housing was enough to cause even more black vertical lines to appear.  We&#8217;ll fix those in just a second.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0361.png"><img class="aligncenter size-full wp-image-487" title="IMG_0361" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0361.png" alt="" width="600" height="400" /></a></p>
<p>Just below the display there&#8217;s usually a thin black rubber strip attached to that brown film.  For me, that strip stuck to the plastic Gameboy case when I took the board out, but from looking around online it seems like most boards will still have that slip attached.  Using a razor blade or sharp knife, remove that rubber strip and the adhesive below it.  It should peel off kind of like a sticker.</p>
<p>Now we fix the display!  Heat up your soldering iron and gently rub it black and forth on the brown part of the connector just below.  If the lines are towards the left side of the display, heat the left side of that connector.  Don&#8217;t venture onto the white plastic, or else you&#8217;ll get a sticky mess.  I believe the brown ribbon connector is kapton film, which is incredibly heat resistant (it&#8217;s used in heating elements), so don&#8217;t worry about heating it too much.  That being said, you shouldn&#8217;t need a whole lot of heat.  Don&#8217;t spend more than 3 or 4 seconds on any given spot.</p>
<p>While you&#8217;re doing this you may notice that <em>more </em>lines appear while you&#8217;re heating the connector.  This is just some product of the solder reflow process.  Once you stop the heat and the solder solidifies, more lines should begin appearing.  I was able to get my display 100% working again, and it looks like this repair has about a 100% success rate if you do it correctly.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/soldering.png"><img class="aligncenter size-full wp-image-488" title="soldering" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/soldering.png" alt="" width="600" height="400" /></a></p>
<p>If fixing the lines is all you wanted to do, you&#8217;re done! Go ahead and reassemble your Gameboy, and don&#8217;t forget to reattach that rubber strip.  It helps keep the connector from experiencing the stresses that caused it to fracture in the first place.</p>
<p>Next I thought I would add a backlight to the Gameboy&#8217;s screen.  This was a lot of fun, and I&#8217;m sure any 90s kid would have killed for this when the Gameboy was still super popular.  I got my backlight module from a great company called <a href="http://store.kitsch-bent.com/product/ledx3">Kitsch-Bent</a>.  You can get your backlight in wide variety of colors, and even buy an inverted screen!  Truly an awesome source.  They also sell different colored front lenses and buttons.</p>
<p>First, remove the two screws on the brown connector just below the display.  This will free up the display, and allow you to take it out of the white plastic frame.  After gently prying the display out of its frame, use a sharp pair of snips to cut off around a centimeter of the thin plastic frame below the display.  This will give us room to pass wires beneath the connector.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0376.png"><img class="aligncenter size-full wp-image-489" title="IMG_0376" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/IMG_0376.png" alt="" width="600" height="400" /></a></p>
<p>Next is the only tricky part of the process.  Using a sharp knife or razor blade, you have to remove both the reflective back layer and polarizing film from the LCD.  If the display still looks a green color after you&#8217;ve done this, you have only removed the reflective film and not the polarizing layer.  Try again to catch the edge of the film, and slowly peel it off until you are left with a transparent LCD.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/peeling.png"><img class="aligncenter size-full wp-image-490" title="peeling" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/peeling.png" alt="" width="600" height="400" /></a></p>
<p>In the photo above I&#8217;ve only begun removing the reflective film.  You can tell because the display still looks green behind it.  Go back and make sure you&#8217;ve removed that green tinted layer.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/transparent.png"><img class="aligncenter size-full wp-image-491" title="transparent" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/transparent.png" alt="" width="600" height="400" /></a></p>
<p>After doing this, remove the protective cover from the backlight module and slide it underneath the display in the plastic frame.  Route the wires through the slot you cut earlier.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/protective.png"><img class="aligncenter size-full wp-image-492" title="protective" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/protective.png" alt="" width="600" height="400" /></a></p>
<p>The final step is to wire this panel into the Gameboy&#8217;s circuitry.  Luckily there&#8217;s a great voltage source just below the LCD that&#8217;s easy to tap into.  Solder the two wires (in my case blue [voltage] and black [ground]) as shown.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/solder.png"><img class="aligncenter size-full wp-image-493" title="solder" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/solder.png" alt="" width="600" height="400" /></a></p>
<p>Screw the brown connector back to the main board (be careful, the mounts strip easily), and you&#8217;re done!  Go ahead and reassemble your gameboy, making sure that your new wires don&#8217;t get in the way of the d-pad or buttons.</p>
<p>When you turn on your gameboy, you should be treated with a new backlit display!  I also used this opportunity to replace the front cover lens with a new, less scratched one.  Finally, I replaced the buttons, just to be fancy.  After removing the front cover from before, you can just replace the buttons with the new ones you&#8217;ve bought.  They pop right out.  The front lens was originally tacked on with a bit of glue, and can be pried off with a sharp knife inserted underneath one of the edges.  My new lens came with an adhesive back that just stuck right on.</p>
<p>I hope you found this helpful &#8212; thanks for reading!</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/leadin.png"><img class="aligncenter size-full wp-image-480" title="leadin" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/leadin.png" alt="" width="600" height="400" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/06/display.png"><img class="aligncenter size-full wp-image-494" title="display" src="http://www.maxjusticz.com/wp-content/uploads/2012/06/display.png" alt="" width="600" height="400" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/restore-modify-an-original-dmg-gameboy/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Vex Sack Attack Scoring App</title>
		<link>http://www.maxjusticz.com/vex-sack-attack-scoring-app/</link>
		<comments>http://www.maxjusticz.com/vex-sack-attack-scoring-app/#comments</comments>
		<pubDate>Thu, 07 Jun 2012 20:03:21 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=470</guid>
		<description><![CDATA[After releasing my last Vex Robotics scoring app the day before last year&#8217;s world tournament, this year I decided it might be a good idea to start just a tad earlier. This year&#8217;s competition, called Sack Attack (I know, I know&#8230;) operates on the premise that each alliance&#8217;s robots score as many &#8216;sacks&#8217; as possible [...]]]></description>
				<content:encoded><![CDATA[<p>After releasing <a title="Vex Robotics Scoring App" href="http://www.maxjusticz.com/76/">my last Vex Robotics scoring app</a> the day before last year&#8217;s world tournament, this year I decided it might be a good idea to start just a tad earlier.</p>
<p>This year&#8217;s competition, called Sack Attack (I know, I know&#8230;) operates on the premise that each alliance&#8217;s robots score as many &#8216;sacks&#8217; as possible in goals of three heights: ground, trough, and high.  As the goals get higher, so do the point values.</p>
<p>There are also two different point bonuses available: 10 points for scoring the most points in autonomous mode, and another 10 for having the most robots on the starting tiles at the end of each match.  If both sides have the same number of robots on the starting tiles when the buzzer rings, no extra points are awarded.</p>
<p>I wrote this entire app in one day (today!), so it&#8217;s very possible I messed something up.  If I did, though, I haven&#8217;t found it yet!  I just submitted the app for approval, and will update this post when that happens.</p>
<p><strong>UPDATE 6/15/12</strong></p>
<p><a href="http://itunes.apple.com/us/app/vex-sack-attack-hd/id534321807?ls=1&amp;mt=8">We&#8217;re approved!  Check out Vex Sack Attack HD in the App Store here.</a></p>
<p>Also, please don&#8217;t forget to check out our team&#8217;s website at <a href="http://robotics.paideiaschool.org">robotics.paideiaschool.org</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/vex-sack-attack-scoring-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>An Air Ionizer</title>
		<link>http://www.maxjusticz.com/a-negative-air-ionizer/</link>
		<comments>http://www.maxjusticz.com/a-negative-air-ionizer/#comments</comments>
		<pubDate>Sun, 13 May 2012 21:48:15 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=436</guid>
		<description><![CDATA[I&#8217;ve been really fascinated lately by magnetic and electric fields and how they interact (mostly influenced by my interest in magnetohydrodynamics). One relatively simple but fun project is an air ionizer. The one I&#8217;ve built converts mains voltages (~120VAC @ 60Hz in the US) to something on the order of a few kilovolts at a [...]]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been really fascinated lately by magnetic and electric fields and how they interact (mostly influenced by my <a title="Work in Progress: Magnetohydrodynamic Drive (MHD)" href="http://www.maxjusticz.com/work-in-progress-magnetohydrodynamic-drive-mhd/">interest in magnetohydrodynamics</a>).</p>
<p>One relatively simple but fun project is an air ionizer. The one I&#8217;ve built converts mains voltages (~120VAC @ 60Hz in the US) to something on the order of a few kilovolts at a very low current. At the end of the discharge needles connected to this high voltage, we generate an <a href="http://en.wikipedia.org/wiki/Ion_wind">ion wind.</a></p>
<p><strong>You should be experienced in dealing with mains voltages if you are attempting this project.</strong> There are going to be live wires, and there&#8217;s a big potential for shocking yourself if you&#8217;re not extremely careful. Be smart!</p>
<p>To build my ionizer I used some .1uF capacitors each rated at 275 Volts (pictured below). This rating is far lower than the thousands of volts generated, but a <a href="http://www.bigclive.com/ioniser.htm">couple</a> of <a href="http://www.instructables.com/id/How-to-Make-a-Negative-Ion-air-ionizer/">sources</a> online indicate that, because these are &#8220;mains suppression capacitors,&#8221; this is okay. <a href="http://search.digikey.com/scripts/DkSearch/dksus.dll?WT.z_header=search_go&amp;lang=en&amp;site=us&amp;keywords=P10730-ND&amp;x=0&amp;y=0">I picked them up from Digikey</a> for $0.35 a piece.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0269.jpg"><img class="aligncenter size-medium wp-image-446" title="IMG_0269" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0269-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>The diodes I used are just jellybean 1N4007s.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0285.jpg"><img class="aligncenter size-medium wp-image-440" title="IMG_0285" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0285-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>First I wired three lines of ten capacitors in series. We are full-wave rectifying the mains voltages, so we need three different columns of capacitors.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0272.jpg"><img class="aligncenter size-large wp-image-450" title="IMG_0272" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0272-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0279.jpg"><img class="aligncenter size-large wp-image-451" title="IMG_0279" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0279-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Next, I began wiring the three columns together, as shown below. If you want to make a negative air ionizer, the stripes on the diode should be pointing towards where you are going to plug in the mains voltages. For positive ionization, the stripes should point towards the emitter.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0293.jpg"><img class="aligncenter size-large wp-image-442" title="IMG_0293" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0293-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0301.jpg"><img class="aligncenter size-large wp-image-443" title="IMG_0301" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0301-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0307.jpg"><img class="aligncenter size-large wp-image-452" title="IMG_0307" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0307-1024x768.jpg" alt="" width="700" height="525" /></a></p>
<p>Next, you must attach your mains voltages. Connect ground to the center, then live to one side, and neutral to the other. It does not matter which way you do this, as long as ground is centered.</p>
<p>To finish the project, add a large valued resistor (I used 1 Megaohm, you may want to use somewhere on the order of 10 Megaohms) to the emitter in order to limit the current. It&#8217;s important for something fairly large to be there, but in my experience even 1 Megaohm significantly reduced the current to a safe value.</p>
<p><img class="aligncenter" title="IMG_0317" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_0317-1024x321.jpg" alt="" width="700" height="219" /></p>
<p>For obvious reasons, the invisible ion wind is a tricky thing to catch on video, but you can certainly feel it by placing your hand a few inches in front of the emitter. Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/a-negative-air-ionizer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Work in Progress: Magnetohydrodynamic Drive (MHD)</title>
		<link>http://www.maxjusticz.com/work-in-progress-magnetohydrodynamic-drive-mhd/</link>
		<comments>http://www.maxjusticz.com/work-in-progress-magnetohydrodynamic-drive-mhd/#comments</comments>
		<pubDate>Sun, 13 May 2012 14:39:24 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[MHD]]></category>
		<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=421</guid>
		<description><![CDATA[Magnetohydrodynamics: possibly the most intimidating name for a relatively simple concept ever! If you&#8217;ve ever seen The Hunt for Red October and the quest for the &#8220;silent submarine&#8221;, you may have heard of MHD.  Basically, MHD involves taking the cross product of a magnetic field with an electric field to produce the resultant vector, the [...]]]></description>
				<content:encoded><![CDATA[<p>Magnetohydrodynamics: possibly the most intimidating name for a relatively simple concept ever!</p>
<p>If you&#8217;ve ever seen The Hunt for Red October and the quest for the &#8220;silent submarine&#8221;, you may have heard of MHD.  Basically, MHD involves taking the cross product of a magnetic field with an electric field to produce the resultant vector, the so called &#8220;Lorentz force.&#8221;  This force can then be used to propel an ionized solution with no turbines or any moving parts.</p>
<p>The Lorentz force is sometimes used to define the strength of magnetic and electric fields.  That&#8217;s because F, the Lorentz force, equals q(<strong>E</strong> + (v X <strong>B</strong>)) , where <strong>E</strong> is the electric field and <strong>B</strong> is the magnetic field (both vector quantities).</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/363px-Regla_mano_derecha_Laplace.svg_.png"><img class="aligncenter size-full wp-image-423" title="363px-Regla_mano_derecha_Laplace.svg" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/363px-Regla_mano_derecha_Laplace.svg_.png" alt="" width="363" height="202" /></a></p>
<p>So where does the cool project come in?  Well, I was researching <a href="http://en.wikipedia.org/wiki/Magnetohydrodynamics">MHD on Wikipedia</a> and saw that someone has built a <strong>full sized boat</strong> powered by a magnetohydrodynamic drive.  I saw an image of one of the thrusters, and minus the multi-million dollar electrodes, I decided building one at home shouldn&#8217;t be too complicated.</p>
<p>The first thing I decided to do was create a tube with a relatively uniform magnetic field inside.  To accomplish this and create a reasonably powerful field, I bought two 4&#8243; x 1&#8243; x .25&#8243; neodymium magnets from <a href="http://kjmagnetics.com/">kjmagnetics.com</a> .  These things are scary powerful.  To hold them in place without having to secure them with adhesive, I decided to use a framework of laser cut acrylic spacers to keep the magnets in place.  I&#8217;m not home at the moment, so I&#8217;ll try to remember to post the files.</p>
<p>That left me with something like what you see below (though I haven&#8217;t installed the second magnet in this picture).</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_1241.jpg"><img class="aligncenter size-medium wp-image-425" title="IMG_1241" src="http://www.maxjusticz.com/wp-content/uploads/2012/05/IMG_1241-300x224.jpg" alt="" width="300" height="224" /></a></p>
<p>The magnets are oriented such that the magnetic field inside, at least on a small scale, looks just about linear.  This means that when I add my electrodes in a perpendicular direction, we should get interaction that models the Lorentz force quite nicely.</p>
<p>So now that this part is completed, I have to begin work on the electrodes.  This is surprisingly tricky, as driving electrodes not made from precious metals in salt water (the ionized solution I&#8217;ll be using) with DC tends to cause electrolysis and the corrosion of the leads.</p>
<p>To be continued very shortly&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/work-in-progress-magnetohydrodynamic-drive-mhd/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Robotic Arm (Controlled by Smaller Robotic Arm)</title>
		<link>http://www.maxjusticz.com/robotic-arm-controlled-by-smaller-robotic-arm/</link>
		<comments>http://www.maxjusticz.com/robotic-arm-controlled-by-smaller-robotic-arm/#comments</comments>
		<pubDate>Sat, 24 Mar 2012 02:52:49 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[project]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=387</guid>
		<description><![CDATA[For this year&#8217;s science olympiad competition I built a really cool robotic arm with my friend Ben Katz. I&#8217;ve already posted about the controller for this arm, but the whole thing is pretty awesome. The arm has 6 points of dexterity- base rotation, the lower arm, the mid arm, the upper arm, wrist rotation, and the [...]]]></description>
				<content:encoded><![CDATA[<p>For this year&#8217;s science olympiad competition I built a really cool robotic arm with my friend Ben Katz. <a title="A Miniature Robotic Arm Controller" href="http://www.maxjusticz.com/a-miniature-robotic-arm-controller/">I&#8217;ve already posted about the controller for this arm</a>, but the whole thing is pretty awesome. The arm has 6 points of dexterity- base rotation, the lower arm, the mid arm, the upper arm, wrist rotation, and the claw. Ben designed the 3D model of the arm in Google SketchUp, which we then exploded into bits to be cut out by the laser.</p>
<p>I think the coolest part about this project is that the large arm is controlled by what is essentially a smaller version of itself. For an application like this, it makes a whole lot more sense than an RC controller you might use to control, say, a model plane. <a href="http://www.maxjusticz.com/wp-content/uploads/2012/03/RobotArm.zip">Here are</a> the files for the arm if you&#8217;d like to make it yourself!</p>
<p><iframe src="http://www.youtube.com/embed/hq1r15GvhbI" frameborder="0" width="420" height="315"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/robotic-arm-controlled-by-smaller-robotic-arm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emorgan</title>
		<link>http://www.maxjusticz.com/83/</link>
		<comments>http://www.maxjusticz.com/83/#comments</comments>
		<pubDate>Fri, 23 Mar 2012 02:57:28 +0000</pubDate>
		<dc:creator>Max</dc:creator>
				<category><![CDATA[Emorgan]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[organ]]></category>
		<category><![CDATA[project]]></category>

		<guid isPermaLink="false">http://www.maxjusticz.com/?p=83</guid>
		<description><![CDATA[Lots of crazy-cool updates below! I&#8217;ve been working with a friend of mine, Nat Emerson, on a midi organ project.  Nat wanted to keep some of the retro-style of organs from the 60s and 70s, but instead of controlling actual analog components, it would output a midi signal to control software running on a laptop. [...]]]></description>
				<content:encoded><![CDATA[<p><strong>Lots of crazy-cool updates below!</strong></p>
<p>I&#8217;ve been working with a friend of mine, Nat Emerson, on a midi organ project.  Nat wanted to keep some of the retro-style of organs from the 60s and 70s, but instead of controlling actual analog components, it would output a midi signal to control software running on a laptop.</p>
<p>We&#8217;ve been using the laser cutter to etch panels for the front of the organ, and I&#8217;ve had a few good ideas regarding how they&#8217;ll attach.  Basically, the front panels will be modular.  They&#8217;ll use some high power neodymium magnets coated in nickel as the contact surfaces/electrodes, so you can hot swap panels during a show.  This would also allow us to sell individual panels.<a href="http://www.maxjusticz.com/wp-content/uploads/2011/12/pots.png"><img class="aligncenter size-full wp-image-103" title="pots" src="http://www.maxjusticz.com/wp-content/uploads/2011/12/pots.png" alt="" width="600" height="400" /></a></p>
<p style="text-align: center;">Here&#8217;s the midi unit I&#8217;m basing the circuit on, and a few potentiometers we&#8217;re considering.</p>
<p>I&#8217;m currently in the process of reverse engineering a midi-panel we bought online so I could print a modified and more economical version.  I&#8217;ll have some photos in thecoming days once school is let out for break.</p>
<p>Nat just did some work on the frame, and I&#8217;m about to begin laser cutting the holes for the modular panels (the illustrator documents are ready to go!).  Just trying to afford a better version of EAGLE at the moment so I can make a board with more layers.</p>
<p style="text-align: center;"><a href="http://www.maxjusticz.com/wp-content/uploads/2011/12/emorgan.jpg"><img class="aligncenter  wp-image-177" title="emorgan" src="http://www.maxjusticz.com/wp-content/uploads/2011/12/emorgan.jpg" alt="" width="576" height="432" /></a></p>
<p style="text-align: left;"><strong>UPDATE 12/28/11</strong></p>
<p><del>I&#8217;m currently working on the circuit board at the moment.  You can view progress on the circuit design <a title="Adventures in Circuit Design" href="http://www.maxjusticz.com/adventures-in-circuit-design/">here</a></del>.</p>
<p><strong>UPDATE 1/9/12</strong></p>
<p>I just finished the board that will be powering the digital side of the organ.  It&#8217;s called the Chomp &#8212; more details <a title="Introducing the Chomp" href="http://www.maxjusticz.com/introducing-the-chomp/">here</a>. (Update: I ended up using <a href="http://www.thomann.de/be/doepfer_usb64.htm">this</a> instead)</p>
<p><strong>UPDATE 3/22/12</strong></p>
<p>Nat and I have made TONS of progress in recent weeks.  Check it out!</p>
<div class="wp-caption aligncenter" style="width: 970px"><img title="Putting the panels on" src="http://www.maxjusticz.com/wp-content/uploads/2012/03/483848_10150747393516477_1100157295_n.jpeg" alt="" width="960" height="720" /><p class="wp-caption-text">Putting the panels on</p></div>
<div class="wp-caption aligncenter" style="width: 970px"><img title="With Legs" src="http://www.maxjusticz.com/wp-content/uploads/2012/03/293807_10150756544041477_1563316511_n.jpeg" alt="" width="960" height="720" /><p class="wp-caption-text">Here&#39;s the organ with the new legs on.</p></div>
<p>We&#8217;re getting there!  Nat and I aim to have the organ done for bash, our school&#8217;s prom-equivilent, where he&#8217;ll be playing it with the band.  All that&#8217;s really left to do is wiring!</p>
<p><strong>UPDATE 4/16/12</strong></p>
<p><strong>It&#8217;s done!</strong> That wiring took a long time.  Each panel goes to its own multiplexer, which is then converted into a MIDI control change signal that can be interpreted by music software.</p>
<p><a href="http://www.maxjusticz.com/wp-content/uploads/2012/03/528942_10150812311846477_578891476_11634917_1507072448_n1.jpg"><img class="aligncenter size-full wp-image-410" title="528942_10150812311846477_578891476_11634917_1507072448_n" src="http://www.maxjusticz.com/wp-content/uploads/2012/03/528942_10150812311846477_578891476_11634917_1507072448_n1.jpg" alt="" width="960" height="720" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maxjusticz.com/83/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
