<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-21739905</id><updated>2011-04-21T17:43:54.435-07:00</updated><title type='text'>zachsensor</title><subtitle type='html'>zach layton's itp blog</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>11</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-21739905.post-114411360712388183</id><published>2006-04-03T18:18:00.000-07:00</published><updated>2006-04-03T18:20:07.133-07:00</updated><title type='text'>ekgandpic</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/ekgandpic.0.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/ekgandpic.0.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114411360712388183?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114411360712388183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114411360712388183' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114411360712388183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114411360712388183'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/04/ekgandpic.html' title='ekgandpic'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114410636407839710</id><published>2006-04-03T16:11:00.000-07:00</published><updated>2006-04-03T16:19:24.106-07:00</updated><title type='text'>electrodes</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/ecgp10-w.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/ecgp10-w.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114410636407839710?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114410636407839710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114410636407839710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114410636407839710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114410636407839710'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/04/electrodes.html' title='electrodes'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114410369194701658</id><published>2006-04-03T15:34:00.000-07:00</published><updated>2006-04-03T15:34:51.956-07:00</updated><title type='text'>electrode placement</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/triangle.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/triangle.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114410369194701658?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114410369194701658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114410369194701658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114410369194701658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114410369194701658'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/04/electrode-placement.html' title='electrode placement'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114409975171383231</id><published>2006-04-03T14:28:00.000-07:00</published><updated>2006-04-03T14:29:11.730-07:00</updated><title type='text'>differential amplifier</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/diffopamp.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/diffopamp.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114409975171383231?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114409975171383231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114409975171383231' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114409975171383231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114409975171383231'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/04/differential-amplifier.html' title='differential amplifier'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114409907724931222</id><published>2006-04-03T14:17:00.000-07:00</published><updated>2006-04-03T14:17:57.263-07:00</updated><title type='text'>ekg</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/ECG1C.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/ECG1C.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114409907724931222?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114409907724931222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114409907724931222' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114409907724931222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114409907724931222'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/04/ekg.html' title='ekg'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114272291027762821</id><published>2006-03-18T15:01:00.000-08:00</published><updated>2006-03-18T15:01:50.286-08:00</updated><title type='text'>interpretation of EKGs</title><content type='html'>This is a good book on the subject of EKG:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/0912912065/103-1450681-5859824?n=283155"&gt;http://www.amazon.com/gp/product/0912912065/103-1450681-5859824?n=283155&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114272291027762821?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114272291027762821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114272291027762821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114272291027762821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114272291027762821'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/03/interpretation-of-ekgs.html' title='interpretation of EKGs'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114246498985806989</id><published>2006-03-15T15:20:00.000-08:00</published><updated>2006-03-15T15:24:18.683-08:00</updated><title type='text'>electrodes</title><content type='html'>I'm interested in heart sensors (EKG) as a musical device.  Right now I'm looking into a number of options, but believe I'll go with this OEM kit from ramsey electronics. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ramseyelectronics.com/cgi-bin/commerce.exe?preadd=action&amp;key=ECG1C"&gt;http://www.ramseyelectronics.com/cgi-bin/commerce.exe?preadd=action&amp;key=ECG1C&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;These are the electrodes I'll be using:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.medicalbuyer.com/category/Pain+Management+%3E+Electrodes"&gt;http://www.medicalbuyer.com/category/Pain+Management+%3E+Electrodes&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114246498985806989?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114246498985806989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114246498985806989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114246498985806989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114246498985806989'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/03/electrodes.html' title='electrodes'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114099045535781653</id><published>2006-02-26T13:26:00.000-08:00</published><updated>2006-02-26T13:47:35.360-08:00</updated><title type='text'>brainwave logging</title><content type='html'>I'd like to investigate datalogging with the EEG device.  I can forsee a couple of issues to tackle:&lt;br /&gt;&lt;br /&gt;1...the data is not very interesting if it is only at a resolution of 3 seconds but the server can't handle the resolution the sensor needs (the atmel chip is programmed at a resolution of 256hz...way too fast for a server).&lt;br /&gt;&lt;br /&gt;so how could this be logged?  Is there a way to log it locally on the computer and then send the information that's been logged once every 3 seconds?  This shouldn't be too difficult, though.  &lt;br /&gt;&lt;br /&gt;2...the eeg software we build is written around max/msp, but the work we've done so far is in processing, php and pic basic pro.  How can I send this information onto the server from max?  netsend/receive objects?  I'm not sure at this point...need to look into this...&lt;br /&gt;&lt;br /&gt;still, it would be great to do this and incorporate a data visualization that updates on the web...&lt;br /&gt;&lt;br /&gt;something like this:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://kdd.ics.uci.edu/databases/eeg/control.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px;" src="http://kdd.ics.uci.edu/databases/eeg/control.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114099045535781653?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114099045535781653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114099045535781653' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114099045535781653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114099045535781653'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/02/brainwave-logging_26.html' title='brainwave logging'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-114091202918812162</id><published>2006-02-25T15:53:00.000-08:00</published><updated>2006-02-28T09:05:45.893-08:00</updated><title type='text'>datalogging extravaganza</title><content type='html'>Today is saturday and we had a class discussing the issues surrounding datalogging.  I am happy to report that I have had some success with this assignment thus far...albeit, only with a potentiometer and not a sensor.  &lt;br /&gt;&lt;br /&gt;I used Tom's &lt;a href="http://www.tigoe.net/pcomp/code/archives/php/000713.shtml"&gt;datalogging code&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;to produce a textfile that dynamically updated a textfile on the ITP server...here are some results:&lt;br /&gt;&lt;br /&gt;2006-02-25 06:02:07 0&lt;br /&gt;2006-02-25 06:02:11 24824&lt;br /&gt;2006-02-25 06:02:15 28162&lt;br /&gt;2006-02-25 06:02:19 61186&lt;br /&gt;2006-02-25 06:02:23 61185&lt;br /&gt;2006-02-25 06:02:26 60673&lt;br /&gt;2006-02-25 06:02:30 61185&lt;br /&gt;2006-02-25 06:02:34 59905&lt;br /&gt;2006-02-25 06:02:38 60929&lt;br /&gt;2006-02-25 06:02:42 61697&lt;br /&gt;2006-02-25 06:02:45 61185&lt;br /&gt;2006-02-25 06:02:49 60929&lt;br /&gt;2006-02-25 06:02:53 41473&lt;br /&gt;&lt;br /&gt;also....see &lt;a href="http://itp.nyu.edu/~zl316/datalog.txt"&gt;here&lt;/a&gt; for the textfile:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;now...why was it saying that the data was being logged at 6:02 when it was around 6:45...and the data I'm sending looks like it's 16 bit, not 8 bit.  Odd.  Is this because the high byte and low byte in the pic aren't being concatenated correctly?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-114091202918812162?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/114091202918812162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=114091202918812162' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114091202918812162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/114091202918812162'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/02/datalogging-extravaganza.html' title='datalogging extravaganza'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-113961726629573539</id><published>2006-02-10T15:43:00.000-08:00</published><updated>2006-02-10T16:33:41.000-08:00</updated><title type='text'>Texas Advanced Optical Systems TSL 230 Light to Frequency Chip</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/2651/2202/1600/27924.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://photos1.blogger.com/blogger/2651/2202/320/27924.gif" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;I've decided to work with this programmable Light-To-Frequency Converter.  I was hesitant at first because I thought Spencer Keiser had already worked with this sensor, but realized he'd been working witht the TCS 230 &lt;i&gt; color &lt;/i&gt; sensor, not the TSL 230, which is sensing light.  It's like an "electronic iris".  &lt;br /&gt;&lt;br /&gt;Here's a description from the Parallax website:&lt;br /&gt;&lt;br /&gt;---------&lt;br /&gt;&lt;br /&gt;The Texas Advanced Optical Systems (TAOS) TSL230 sensor precisely measures light using an array of photodiodes, with an output of digital square waves. The TSL230 has an input dynamic range of 160dB; that is, it can measure light over a range of 100,000,000-to-1.&lt;br /&gt;&lt;br /&gt;The TSL230 programmable light-to-frequency converter combines a configurable silicon photodiode and a current-to-frequency converter on single monolithic CMOS integrated circuits. The output can be either a pulse train or a square wave (50% duty cycle) with frequency directly proportional to light intensity. The sensitivity of the device is selectable and the output frequency can be scaled by one of four preset values. An output enable (OE) is provided that places the output in the high-impedance state for multiple-unit sharing of a microcontroller input line.  &lt;br /&gt;&lt;br /&gt;Features:&lt;br /&gt;High-resolution conversion of light intensity to frequency with no external components&lt;br /&gt;Programmable sensitivity and full-scale output frequency&lt;br /&gt;Communicates directly to a BASIC Stamp or SX microcontroller&lt;br /&gt;Absolute output frequency tolerance of +/- 5%&lt;br /&gt;Nonlinearity error (typically 0.2% at 100kHz)&lt;br /&gt;Stable over wide variety of temperatures&lt;br /&gt;&lt;br /&gt;-------&lt;br /&gt;&lt;br /&gt;Very exciting stuff.  The chip has some accompanying literature besides just the datasheet, which is particularly useful.  The pdf entitled "look into the eye, from TI" says that the TSL230 has some very microcontroller-friendly featres: It's OE (output enable) pin lets you disconnect the output so that it can share a data bus with other devices.  I'll try working on this with the PIC chip.  The TSL230's output is essentially a train of square wave pulses, so it's easy to measure with a microcontroller...using the PulseIn command.  &lt;br /&gt;z&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-113961726629573539?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/113961726629573539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=113961726629573539' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/113961726629573539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/113961726629573539'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/02/texas-advanced-optical-systems-tsl-230.html' title='Texas Advanced Optical Systems TSL 230 Light to Frequency Chip'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21739905.post-113868562342388705</id><published>2006-01-30T21:19:00.000-08:00</published><updated>2006-01-30T21:54:54.403-08:00</updated><title type='text'>sensor workshop: sensors and time</title><content type='html'>Last semester I worked quite a bit with the issue of representing sensors and time with the eeg project I had with Toshi Ozawa and Heather Dewey-Hagburg.  I decided to go with max/msp in that case because I'm more familiar with that particular software environment than processing or java.  Here's a link to the project, there's a screenshot a little bit down on the page with a max/msp representation of the 'sensors and time' idea:  &lt;br /&gt;&lt;br /&gt;http://itp.nyu.edu/~zl316/PCOMP/thoughtpatterns/thoughtpatterns.htm&lt;br /&gt;&lt;br /&gt;I decided to work with a photocell for this semester's sensor and time assignment.  I had a difficult time getting my breadboard to function properly.  First I thought my board might have had a short in it or that some of my components weren't working properly or I don't know what.  I basically went through every possible problem I could have had and replaced it with a new part and STILL had problems.  It seemed to boil down to the issue of a power supply.  Tom and Todd both suggested that I just try and see if I could get my PIC chip to blink an LED just to make sure that my chip wasn't fried.  It did seem to blink, but only if I held the power jack in my hand.  So Tom suggested I just use a bench supply and feed it directly into the breadboard so I wouldn't have to worry about my bad soldering or whatever might have been the problem...which was a great suggestion because for the first time in about 6 hours of non-stop headache and disbelief, the PIC began to blink as planned.  &lt;br /&gt;&lt;br /&gt;So from there I took some code from Todd (his simple ADC in code) and matched it with some code from Tom (his processing 'datalogger' code) and was able to see some sensor/time action with a 1k ohm resistor and a photocell.  This is the first step...I'm just glad I debugged my setup...next I'll take it from here and try to finesse the data and get a much hipper display.  &lt;br /&gt;&lt;br /&gt;For now...here's the PIC code:&lt;br /&gt;&lt;br /&gt;--------------------------------------&lt;br /&gt;&lt;br /&gt;DEFINE OSC 4&lt;br /&gt;start:&lt;br /&gt;INCLUDE "modedefs.bas"&lt;br /&gt;' Define ADCIN parameters&lt;br /&gt;' Set number of bits in result&lt;br /&gt;DEFINE ADC_BITS 10&lt;br /&gt;' Set clock source (3=rc)&lt;br /&gt;DEFINE ADC_CLOCK 3&lt;br /&gt;' Set sampling time in microseconds&lt;br /&gt;DEFINE ADC_SAMPLEUS 10&lt;br /&gt;' Set PORTA to all input&lt;br /&gt;TRISA = %11111111&lt;br /&gt;' Set up ADCON1 analog and right justify the result&lt;br /&gt;adcon1 = %10000010&lt;br /&gt;'define adc vars&lt;br /&gt;adcVar1 VAR WORD ' ir Create variable to store result&lt;br /&gt; &lt;br /&gt;pause 500&lt;br /&gt;main:&lt;br /&gt;'Read channel 1&lt;br /&gt;ADCIN 1, adcVar1&lt;br /&gt;'print the variable - notice the variable name is preceded by DEC&lt;br /&gt;serout2 portc.6, 16468, [DEC adcVar1, 10, 13] &lt;br /&gt;GoTo main  &lt;br /&gt;&lt;br /&gt;----------------------------------&lt;br /&gt;&lt;br /&gt;and the processing code:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt;Datalogger&lt;br /&gt; by Tom Igoe&lt;br /&gt;(only very slightly modified by zach layton)&lt;br /&gt; &lt;br /&gt; This program takes raw bytes from the serial port at 9600 baud and graphs&lt;br /&gt;them.&lt;br /&gt; To start/stop the graph, click the mouse.&lt;br /&gt; &lt;br /&gt; No graphing is done when the incoming value is below a constant&lt;br /&gt;threshold.&lt;br /&gt; You can only change the threshold in code.  I haven't made a UI for that.&lt;br /&gt; &lt;br /&gt; Created 20 April 2005&lt;br /&gt; Updated 5 July 2005&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;import processing.serial.*;&lt;br /&gt;&lt;br /&gt;Serial myPort;  // The serial port&lt;br /&gt;&lt;br /&gt;// initial variables:&lt;br /&gt;int i = 1;                   // counter&lt;br /&gt;int inByte = -1;             // data from serial port&lt;br /&gt;&lt;br /&gt;void setup () {&lt;br /&gt;  size(400, 300);        // window size&lt;br /&gt;&lt;br /&gt;  // List all the available serial ports&lt;br /&gt;  println(Serial.list());&lt;br /&gt;  // I know that the third port in the serial list on my mac&lt;br /&gt;  // is always my  Keyspan adaptor, so I open Serial.list()[2].&lt;br /&gt;  // Open whatever port is the one you're using.&lt;br /&gt;  myPort = new Serial(this, Serial.list()[0], 9600);&lt;br /&gt;  &lt;br /&gt;  // set inital background:&lt;br /&gt;  background(0);&lt;br /&gt;}&lt;br /&gt;void draw () {&lt;br /&gt;  if (myPort.available() &gt; 0) {&lt;br /&gt;    inByte = myPort.read();&lt;br /&gt;    serialEvent();&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void serialEvent () {&lt;br /&gt;  // draw the line:&lt;br /&gt;  stroke(255,255,inByte);&lt;br /&gt;  point(i, inByte);&lt;br /&gt;  // at the edge of the screen, go back to the beginning:&lt;br /&gt;  if (i &gt;= width) {&lt;br /&gt;    i = 0;&lt;br /&gt;    background(0); &lt;br /&gt;  } &lt;br /&gt;  else {&lt;br /&gt;    i++;&lt;br /&gt;  }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21739905-113868562342388705?l=zachlaytonindustries.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://zachlaytonindustries.blogspot.com/feeds/113868562342388705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21739905&amp;postID=113868562342388705' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/113868562342388705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21739905/posts/default/113868562342388705'/><link rel='alternate' type='text/html' href='http://zachlaytonindustries.blogspot.com/2006/01/sensor-workshop-sensors-and-time.html' title='sensor workshop: sensors and time'/><author><name>zachlayton</name><uri>http://www.blogger.com/profile/00490420260497846284</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
