<?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>crtl-i &#187; Physical Computing</title>
	<atom:link href="http://crtl-i.com/blog/category/physical-computing/feed/" rel="self" type="application/rss+xml" />
	<link>http://crtl-i.com/blog</link>
	<description></description>
	<lastBuildDate>Tue, 01 Mar 2011 08:16:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>in sync</title>
		<link>http://crtl-i.com/blog/2011/01/in-sync/</link>
		<comments>http://crtl-i.com/blog/2011/01/in-sync/#comments</comments>
		<pubDate>Wed, 12 Jan 2011 05:16:12 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Grasshopper (Explicit History)]]></category>
		<category><![CDATA[Korea]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Teaching]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=610</guid>
		<description><![CDATA[http://dcreative.tistory.com/entry/in-sync-2011]]></description>
			<content:encoded><![CDATA[<p><a href="http://crtl-i.com/blog/wp-content/uploads/2011/01/in-sync.jpg"><img class="alignnone size-full wp-image-611" title="in-sync" src="http://crtl-i.com/blog/wp-content/uploads/2011/01/in-sync.jpg" alt="" width="600" height="848" /></a></p>
<p><a href="http://dcreative.tistory.com/entry/in-sync-2011">http://dcreative.tistory.com/entry/in-sync-2011</a></p>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2011/01/in-sync/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photocell + 8&#215;8 LED Matrix</title>
		<link>http://crtl-i.com/blog/2010/03/photocell-8x8-led-matrix/</link>
		<comments>http://crtl-i.com/blog/2010/03/photocell-8x8-led-matrix/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 14:43:07 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[led]]></category>
		<category><![CDATA[matrix]]></category>
		<category><![CDATA[Photocell]]></category>
		<category><![CDATA[pic18f452]]></category>
		<category><![CDATA[UDN2981]]></category>
		<category><![CDATA[ULN2803]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=529</guid>
		<description><![CDATA[This is an example of using 2 photocells and a variable resistor as analog inputs to control 8&#215;8 LED Matrix with PIC18F452, UDN2981, and ULN2803. The input values of the two photocells are compared. When the values are the same, LED lights up randomly within the entire board. Depending on how much darker a photocell [...]]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="600" height="450" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=9912736&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="600" height="450" src="http://vimeo.com/moogaloop.swf?clip_id=9912736&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This is an example of using 2 photocells and a variable resistor as analog inputs to control 8&#215;8 LED Matrix with PIC18F452, UDN2981, and ULN2803. The input values of the two photocells are compared. When the values are the same, LED lights up randomly within the entire board. Depending on how much darker a photocell is compared to the other, LED lights up within the range that is more focused towards a corner. The variable resistor controls how fast the LEDs blink. This is how the board was set up:</p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/03/DSC04247.jpg"><img class="alignnone size-full wp-image-530" title="DSC04247" src="http://crtl-i.com/blog/wp-content/uploads/2010/03/DSC04247.jpg" alt="" width="640" height="733" /></a></p>
<p>The following is the code:</p>
<div id="_mcePaste">DEFINE LOADER_USED 1</div>
<div id="_mcePaste">DEFINE OSC 20</div>
<div>INCLUDE &#8220;modedefs.bas&#8221;</div>
<p></p>
<div id="_mcePaste">DEFINE ADC_BITS 10</div>
<div id="_mcePaste">DEFINE ADC_CLOCK 3</div>
<div id="_mcePaste">DEFINE ADC_SAMPLEUS 20</div>
<p></p>
<div id="_mcePaste">ADCON1 = %10000010</div>
<p></p>
<div id="_mcePaste">trisb =%00000000</div>
<div id="_mcePaste">trisd =%00000000</div>
<div id="_mcePaste">trisa =%11111111</div>
<div id="_mcePaste">trisc =%10000000</div>
<p></p>
<div id="_mcePaste">an0 var word</div>
<div id="_mcePaste">an1 var word</div>
<div id="_mcePaste">an2 var word</div>
<div id="_mcePaste">an0b var byte</div>
<div id="_mcePaste">an1b var byte</div>
<div id="_mcePaste">an2b var byte</div>
<p></p>
<div id="_mcePaste">portb = 0</div>
<div id="_mcePaste">portd = 0</div>
<p></p>
<div id="_mcePaste">rand_max var byte</div>
<div id="_mcePaste">rand_min var byte</div>
<div id="_mcePaste">random_word var word</div>
<div id="_mcePaste">randomdig var byte</div>
<p></p>
<div id="_mcePaste">main:</div>
<p></p>
<div id="_mcePaste">GOSUB getadc</div>
<div id="_mcePaste">IF an1b &lt; an2b THEN</div>
<div id="_mcePaste">rand_max=an1b</div>
<div id="_mcePaste">rand_min=0</div>
<div id="_mcePaste">ENDIF</div>
<p></p>
<div id="_mcePaste">IF an1b &gt; an2b THEN</div>
<div id="_mcePaste">rand_max=7</div>
<div id="_mcePaste">rand_min=7-an2b</div>
<div id="_mcePaste">ENDIF</div>
<p></p>
<div id="_mcePaste">IF an2b = an1b THEN</div>
<div id="_mcePaste">rand_max=7</div>
<div id="_mcePaste">rand_min=0</div>
<div id="_mcePaste">ENDIF</div>
<p></p>
<div id="_mcePaste">GOSUB generate_Random</div>
<div id="_mcePaste">portb = 1&lt;&lt;randomdig</div>
<div id="_mcePaste">GOSUB generate_Random</div>
<div id="_mcePaste">portd = 1&lt;&lt;randomdig</div>
<div>PAUSE 10*an0b</div>
<div id="_mcePaste">gosub bd_off</div>
<div id="_mcePaste">PAUSE 1*an0b</div>
<p></p>
<div id="_mcePaste">GOTO main</div>
<p></p>
<div id="_mcePaste">bd_off:</div>
<div id="_mcePaste">portb=0 : portd=0</div>
<div id="_mcePaste">RETURN</div>
<p></p>
<div id="_mcePaste">getadc:</div>
<div id="_mcePaste">ADCIN 0,an0</div>
<div id="_mcePaste">ADCIN 1,an1</div>
<div id="_mcePaste">ADCIN 2,an2</div>
<div id="_mcePaste">an0b = (an0*8)&gt;&gt;10</div>
<div id="_mcePaste">an1b = (an1*8)&gt;&gt;10</div>
<div id="_mcePaste">an2b = (an2*8)&gt;&gt;10</div>
<div id="_mcePaste">RETURN</div>
<p></p>
<div id="_mcePaste">generate_random:</div>
<div id="_mcePaste">RANDOM random_word</div>
<div id="_mcePaste">randomdig = random_word DIG 1</div>
<div id="_mcePaste">IF randomdig &gt; rand_max THEN GOTO generate_random</div>
<div id="_mcePaste">IF randomdig &lt; rand_min THEN GOTO generate_random</div>
<div id="_mcePaste">RETURN</div>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2010/03/photocell-8x8-led-matrix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Analog / Digital Input,  Output</title>
		<link>http://crtl-i.com/blog/2010/02/analog-digital-input-output/</link>
		<comments>http://crtl-i.com/blog/2010/02/analog-digital-input-output/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 06:14:42 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[computing]]></category>
		<category><![CDATA[physical]]></category>
		<category><![CDATA[pic18f452]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=509</guid>
		<description><![CDATA[This is an example of using 2 variable resistors as analog inputs and a switch as a digital input to control 8 LEDs with a PIC18F452 chip. Variable resistor 1 is used to control which LEDs light up. The second variable resistor controls how fast the LEDs blink. The switch decides whether the LEDs blink [...]]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="600" height="450" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=9635788&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="600" height="450" src="http://vimeo.com/moogaloop.swf?clip_id=9635788&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This is an example of using 2 variable resistors as analog inputs and a switch as a digital input to control 8 LEDs with a PIC18F452 chip. Variable resistor 1 is used to control which LEDs light up. The second variable resistor controls how fast the LEDs blink. The switch decides whether the LEDs blink or not. MAX232CPE is used to allow serial communication with a computer. PICBASIC was used to program the chip. This is how the board was set up:</p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/02/DSC04197.jpg"><img class="alignnone size-full wp-image-510" title="DSC04197" src="http://crtl-i.com/blog/wp-content/uploads/2010/02/DSC04197.jpg" alt="" width="640" height="692" /></a></p>
<p>The following is the code:</p>
<p>DEFINE LOADER_USED 1<br />
DEFINE OSC 20<br />
INCLUDE &#8220;modedefs.bas&#8221;</p>
<p>DEFINE ADC_BITS 10<br />
DEFINE ADC_CLOCK 3<br />
DEFINE ADC_SAMPLEUS 20</p>
<p>ADCON1 = %10000010</p>
<p>TRISA = %11111111<br />
TRISB = %00000000<br />
TRISC = %10001000</p>
<p>adc VAR WORD<br />
adcbyte VAR BYTE</p>
<p>SPEED VAR WORD<br />
SPEEDbyte VAR BYTE</p>
<p>SWITCH VAR PORTC.4</p>
<p>main:</p>
<p>IF SWITCH = 1 THEN</p>
<p>ADCIN 0, adc<br />
adcbyte = adc/140</p>
<p>ADCIN 1, SPEED<br />
SPEEDbyte = SPEED/140</p>
<p>PORTB = %00000001 &lt;&lt; adcbyte<br />
PAUSE 100*SPEEDbyte<br />
PORTB = 0<br />
PAUSE 100*SPEEDbyte</p>
<p>ELSE<br />
ADCIN 0, adc<br />
adcbyte = adc/140</p>
<p>PORTB = %00000001 &lt;&lt; adcbyte</p>
<p>ENDIF</p>
<p>GOTO main</p>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2010/02/analog-digital-input-output/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>8&#215;8 LED Matrix</title>
		<link>http://crtl-i.com/blog/2010/01/8x8-led-matrix/</link>
		<comments>http://crtl-i.com/blog/2010/01/8x8-led-matrix/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 07:38:10 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[computing]]></category>
		<category><![CDATA[led]]></category>
		<category><![CDATA[matrix]]></category>
		<category><![CDATA[physical]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=480</guid>
		<description><![CDATA[Front side Cathode rows soldered Anode rows soldered]]></description>
			<content:encoded><![CDATA[<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7645.jpg"><img class="alignnone size-full wp-image-483" title="IMG_7645" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7645.jpg" alt="" width="640" height="446" /></a></p>
<p>Front side</p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7644.jpg"><img class="alignnone size-full wp-image-482" title="IMG_7644" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7644.jpg" alt="" width="640" height="450" /></a></p>
<p>Cathode rows soldered</p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7646.jpg"><img class="alignnone size-full wp-image-484" title="IMG_7646" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7646.jpg" alt="" width="640" height="435" /></a></p>
<p>Anode rows soldered</p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/3-001.jpg"><img class="alignnone size-full wp-image-481" title="3-001" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/3-001.jpg" alt="" width="640" height="383" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2010/01/8x8-led-matrix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Physical Computing &#8211; Current Amplification</title>
		<link>http://crtl-i.com/blog/2010/01/physical-computing-i/</link>
		<comments>http://crtl-i.com/blog/2010/01/physical-computing-i/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 15:00:24 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[amplification]]></category>
		<category><![CDATA[computing]]></category>
		<category><![CDATA[current]]></category>
		<category><![CDATA[physical]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=466</guid>
		<description><![CDATA[Today was my first day at a physical computing workshop run by Jin-Yo Mok (http://www.geneo.net). I&#8217;m starting from the very basics to understand how every single piece operates at the most fundamental level. The breadboard in the image shows the simplest setup of current amplification using an NPN transistor (2N2222).  Hopefully, I&#8217;ll be able to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7637.jpg"><img class="alignnone size-full wp-image-467" title="IMG_7637" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7637.jpg" alt="" width="640" height="427" /></a></p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7641.jpg"><img class="alignnone size-full wp-image-468" title="IMG_7641" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7641.jpg" alt="" width="640" height="427" /></a></p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7642.jpg"><img class="alignnone size-full wp-image-469" title="IMG_7642" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/IMG_7642.jpg" alt="" width="640" height="499" /></a></p>
<p><a href="http://crtl-i.com/blog/wp-content/uploads/2010/01/001.jpg"><img title="001" src="http://crtl-i.com/blog/wp-content/uploads/2010/01/001.jpg" alt="" width="640" height="309" /></a></p>
<p>Today was my first day at a physical computing workshop run by Jin-Yo Mok (<a href="http://www.geneo.net/" target=_blank>http://www.geneo.net</a>). I&#8217;m starting from the very basics to understand how every single piece operates at the most fundamental level. The breadboard in the image shows the simplest setup of current amplification using an NPN transistor (2N2222).  Hopefully, I&#8217;ll be able to design custom circuit boards in the future as I become more comfortable with all these volts and currents :)</p>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2010/01/physical-computing-i/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>the experiment begins</title>
		<link>http://crtl-i.com/blog/2007/11/the-experiment-begins/</link>
		<comments>http://crtl-i.com/blog/2007/11/the-experiment-begins/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 18:04:57 +0000</pubDate>
		<dc:creator>crtl-i</dc:creator>
				<category><![CDATA[Experiments]]></category>
		<category><![CDATA[Physical Computing]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Research]]></category>

		<guid isPermaLink="false">http://crtl-i.com/blog/?p=59</guid>
		<description><![CDATA[I&#8217;ve been craving to learn how to utilize sensors, actuators, controller boards, and osc to build some interactive environments (post-robotic-ecologies-trauma). Suspecting that most of these products would be made in China anyways and that they&#8217;d be quite cheap, my friend and I have started to explore the world of Zhong Guan Cun. We ran into [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been craving to learn how to utilize sensors, actuators, controller boards, and osc to build some interactive environments (post-robotic-ecologies-trauma). Suspecting that most of these products would be made in China anyways and that they&#8217;d be quite cheap, my friend and I have started to explore the world of Zhong Guan Cun. We ran into a few stores that specialize in making sensors and circuit boards. We spent about $10. We now have about a hundred LEDs, an infrared sensor, a photosensor, and etc -_-b</p>
<p>It wasn&#8217;t easy getting a controller board that we could burn customized program on to. Luckily, we got in touch with an IBM engineer that builds Arduino boards for hobby. So, now the experiment begins :)</p>
<p><img src="http://crtl-i.com/blog/wp-content/uploads/2007/11/img_8292.jpg" alt="Experiment" /></p>
<p><img src="http://crtl-i.com/blog/wp-content/uploads/2007/11/img_8289.jpg" alt="Experiment" /></p>
]]></content:encoded>
			<wfw:commentRss>http://crtl-i.com/blog/2007/11/the-experiment-begins/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

