240 lines
14 KiB
HTML
240 lines
14 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<!-- saved from url=(0049)http://danjuliodesigns.com/hw_tools/hw_tools.html -->
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||
<title>Hardware Tools</title>
|
||
|
||
<meta name="robots" content="all">
|
||
<meta name="generator" content="RapidWeaver">
|
||
<link rel="stylesheet" type="text/css" media="all" href="./Hardware Tools_files/styles.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/gb_styles.css">
|
||
<link rel="stylesheet" type="text/css" media="print" href="./Hardware Tools_files/print.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/colourtag.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/hide.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/topleft.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/norepeat.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/green.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/grey_light.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/normal.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/top_left.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/century.css">
|
||
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/medium.css">
|
||
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/none.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/left.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/fluid.css">
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/auto.css">
|
||
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/noresize.css">
|
||
|
||
<link rel="stylesheet" type="text/css" media="screen" href="./Hardware Tools_files/none(1).css">
|
||
<script type="text/javascript" src="./Hardware Tools_files/javascript.js">
|
||
</script>
|
||
<script type="text/javascript">
|
||
//<![CDATA[
|
||
var tmp_image_path="../rw_common/themes/ca_ohm_djd/greybox/next.gif";
|
||
var tmp_path_array=tmp_image_path.split("/");
|
||
tmp_path_array.pop();
|
||
var gb_path=tmp_path_array.join("/");
|
||
var gb_path = gb_path+"/";
|
||
var GB_ROOT_DIR=gb_path;
|
||
//]]>
|
||
</script>
|
||
<script type="text/javascript" src="./Hardware Tools_files/AJS.js">
|
||
</script>
|
||
<script type="text/javascript" src="./Hardware Tools_files/AJS_fx.js">
|
||
</script>
|
||
<script type="text/javascript" src="./Hardware Tools_files/gb_scripts.js">
|
||
</script><!--[if IE 7]>
|
||
|
||
<link rel="stylesheet" type="text/css" media="all" href="../rw_common/themes/ca_ohm_djd/css/ie7fix.css" />
|
||
<![endif]-->
|
||
<!--[if lt IE 7]>
|
||
<link rel="stylesheet" type="text/css" media="all" href="../rw_common/themes/ca_ohm_djd/css/ie6fix.css" />
|
||
<script type="text/javascript" src="../rw_common/themes/ca_ohm_djd/pngfix.js"></script>
|
||
<script src="../rw_common/themes/ca_ohm_djd/IE7/ie7-core.js" type="text/javascript"></script>
|
||
<script src="../rw_common/themes/ca_ohm_djd/IE7/ie7-css2-selectors.js" type="text/javascript"></script>
|
||
<![endif]-->
|
||
</head>
|
||
<!-- This page was created with the OHM theme by Rapid Ideas - http://www.rapid-ideas.com -->
|
||
<!-- Theme Name: OHM, Version: 1.1.2 -->
|
||
|
||
<body>
|
||
<div id="container">
|
||
<div id="breadcrumbcontainer">
|
||
<!-- Start the breadcrumb wrapper -->
|
||
</div><!-- End breadcrumb -->
|
||
|
||
<div id="pageHeader">
|
||
<div id="logo"><img src="./Hardware Tools_files/header_leds.jpg" width="720" height="176" alt="Site logo"></div>
|
||
|
||
<h1>danjuliodesigns llc</h1>
|
||
|
||
<h2>engineering for life</h2>
|
||
</div>
|
||
|
||
<div id="navcontainer">
|
||
<ul>
|
||
<li><a href="http://danjuliodesigns.com/index.html" rel="self">Main</a></li>
|
||
|
||
<li>
|
||
<a href="http://danjuliodesigns.com/sparkfun/sparkfun.html" rel="self">Sparkfun HRMI</a>
|
||
|
||
<ul>
|
||
<li><a href="http://danjuliodesigns.com/sparkfun/sparkfun/hrmi.html" rel="self">HRMI Downloads</a></li>
|
||
</ul>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="http://danjuliodesigns.com/projects/projects_main.html" rel="self">Projects</a>
|
||
|
||
<ul>
|
||
<li><a href="http://danjuliodesigns.com/projects/projects/dmx_fixture.html" rel="self">RGB DMX Fixture</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/projects/projects/hb_dimmer.html" rel="self">HB Dimmer</a></li>
|
||
</ul>
|
||
</li>
|
||
|
||
<li><a href="./Hardware Tools_files/Hardware Tools.html" rel="self" class="current">Hardware Tools</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/sculptures/sculptures.html" rel="self">LED Sculptures</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/personal_projects/pers_proj.html" rel="self">Personal Projects</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/hacks/hacks.html" rel="self">Hacks</a></li>
|
||
|
||
<li>
|
||
<a href="http://danjuliodesigns.com/resume/resume.html" rel="self">Resume</a>
|
||
|
||
<ul>
|
||
<li><a href="http://danjuliodesigns.com/resume/resume/solbourne.html" rel="self">Solbourne</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/resume/resume/hp.html" rel="self">Hewlett-Packard</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/resume/resume/imi.html" rel="self">Impact Monitors</a></li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/resume/resume/hrtu.html" rel="self">Heart Rate Telemetry System</a></li>
|
||
</ul>
|
||
</li>
|
||
|
||
<li><a href="http://danjuliodesigns.com/personal/personal.html" rel="self">Personal Info</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div id="contentContainer">
|
||
<div id="sidebarContainer">
|
||
<div id="sidebar">
|
||
<div id="sideHeader"></div>
|
||
<br>
|
||
</div>
|
||
</div>
|
||
|
||
<div id="content">
|
||
<h2>DMX Readout</h2>
|
||
<br>
|
||
|
||
<p style="text-align:center;"><img class="imageStyle" alt="dmx_readout_front" src="./Hardware Tools_files/dmx_readout_front.jpg" width="396" height="297">
|
||
<br>
|
||
<img class="imageStyle" alt="dmx_readout_top" src="./Hardware Tools_files/dmx_readout_top.jpg" width="394" height="295">
|
||
<br></p>
|
||
|
||
<p style="text-align:left;"><span style="font-size:13px;">One component of my lighting system
|
||
design utilizes DMX as a communication protocol between my
|
||
controllers and commercial LED fixtures. The system has the
|
||
ability to map various data fields to any DMX channel. This
|
||
is fairly easy to test with RGB fixtures but becomes
|
||
difficult with more complex fixtures. I found</span>
|
||
<span style="font-size:13px;"><a href="http://blog.wingedvictorydesign.com/about/" rel="external" target="_blank">Max Pierson’s</a></span> <span style="font-size:13px;">excellent Arduino DMX</span>
|
||
<span style="font-size:13px;"><a href="http://blog.wingedvictorydesign.com/2009/03/20/receive-dmx-512-with-an-arduino/" rel="external" target="_blank">receiver</a></span> <span style="font-size:13px;">code. I hacked on it a bit to add a
|
||
standard parallel LCD display that can display any eight
|
||
sequential DMX channels in real time. The display also
|
||
shows the number of frames being transmitted per second.
|
||
The whole thing was wired on a perf-board and thrown
|
||
into a cheap plastic case that originally held a
|
||
Christmas ornament (a mistake, these cases are too
|
||
fragile).
|
||
<br>
|
||
<br>
|
||
Circuit Diagrams (</span><span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dmx_readout_schem1.jpg" rel="external" target="_blank">Arduino-based</a></span> <span style="font-size:13px;">and</span> <span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dmx_readout_schem2.jpg" rel="external" target="_blank">Stand-alone
|
||
ATMega168</a></span><span style="font-size:13px;">)
|
||
and</span> <span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dmx_readout_2_0.zip" rel="external" target="_blank">Arduino Code</a></span><span style="font-size:13px;">. Note that this updated version
|
||
compiles under Arduino 0021 (here is the original</span>
|
||
<span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dmx_readout_1_0.zip" rel="external" target="_blank">version</a></span> <span style="font-size:13px;">for Arduino 0016). I had only three
|
||
signals left over for control after connecting the
|
||
serial interface and LCD. I implemented a three button
|
||
solution for setting the starting address. Up and Down
|
||
buttons increment or decrement the starting address by 1
|
||
for each press. Holding the Fast button causes the
|
||
channels to change rapidly while Up or Down are held.
|
||
Holding Up and Down together resets the starting channel
|
||
to 1.</span>
|
||
<br>
|
||
<br>
|
||
<br></p>
|
||
|
||
<h2>Power Supply Voltage Display</h2>
|
||
<br>
|
||
|
||
<p style="text-align:center;"><img class="imageStyle" alt="dvm_on" src="./Hardware Tools_files/page21_3.jpg" width="320" height="237"><img class="imageStyle" alt="dvm_board" src="./Hardware Tools_files/page21_4.jpg" width="320" height="240">
|
||
<br></p>
|
||
|
||
<p style="text-align:left;"><span style="font-size:13px;">I
|
||
bought an inexpensive adjustable power supply based on the
|
||
732 regulator IC from</span> <span style="font-size:13px;"><a href="http://www.canakit.com/" rel="external" target="_blank">canakit</a></span> <span style="font-size:13px;">and then designed a simple digital
|
||
voltage readout for it using a PIC 16F373A and 2.5 volt
|
||
reference. I scrounged around and found some 0.1%
|
||
resistors that summed to 28.005 k-ohms to go with a
|
||
4.000 k-ohm 0.02% resistor I had to create the input
|
||
voltage divider (0-20 volts scaled down to 0-2.5 volts).
|
||
The displays were bright enough that I didn't need
|
||
common cathode drive transistors and could sink the
|
||
current for an entire digit with on PIC IO pin. Probably
|
||
took 3 hours in total. Obviously it would have been a
|
||
better use of my time to have just purchased a cheap DPM
|
||
on ebay but we don't always choose the most efficient
|
||
route and I didn't want to wait. If you're in a bind but
|
||
have a few parts laying around perhaps this</span>
|
||
<span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dvm_schem.jpg" rel="external" title="DVM Schematic" target="_blank">circuit</a></span> <span style="font-size:13px;">and</span> <span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/dvm_asm.txt" rel="external" title="DVM Code" target="_blank">program</a></span> <span style="font-size:13px;">can help you out. You can easily
|
||
adjust the input voltage divider or code to deal with
|
||
whatever resistors you have at your disposal. Write it
|
||
in C for your favorite microcontroller or an Arduino and
|
||
the coding will only take a few minutes.</span>
|
||
<br>
|
||
<br>
|
||
<br></p>
|
||
|
||
<h2>Event Counter</h2>
|
||
<br>
|
||
|
||
<p style="text-align:center;"><img class="imageStyle" alt="counter" src="./Hardware Tools_files/page21_5.jpg" width="320" height="261">
|
||
<br></p>
|
||
|
||
<p style="text-align:left;"><span style="font-size:13px;">Along the same lines as the power supply
|
||
voltage display I also built an event counter using a PIC
|
||
16F84A and Siemens DL2416T display. I have primarily used
|
||
this event counter to count the number of packet failures I
|
||
see in the digital radio that is part of the lighting
|
||
control system. However it has proved helpful occasionally
|
||
for other projects as well. It can count to 19999 and then
|
||
indicate an overflow. The "1" is indicated by the LED
|
||
turning green. An overflow is indicated by the LED turning
|
||
from green to red. Another very quick and dirty project
|
||
based on an immediate need. I had the display and PIC. I
|
||
only used this alphanumeric display to display numbers 0 -
|
||
9 so I could tie off unused data inputs and have the PIC
|
||
only output BCD information.</span> <span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/counter_schem.jpg" rel="external" title="Simple Counter Schematic" target="_blank">Schematic</a></span>
|
||
<span style="font-size:13px;">and</span> <span style="font-size:13px;"><a href="http://danjuliodesigns.com/hw_tools/assets/counter_asm.txt" rel="external" title="Simple Counter Code" target="_blank">code</a></span> <span style="font-size:13px;">if you're interested.</span></p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div id="footer">
|
||
<p>© 2008-2011 Dan Julio <a href="mailto:dan@danjuliodesigns.com" id="rw_email_contact" name="rw_email_contact">Contact</a><script type="text/javascript">
|
||
//<![CDATA[
|
||
var _rwObsfuscatedHref0 = "mai";var _rwObsfuscatedHref1 = "lto";var _rwObsfuscatedHref2 = ":da";var _rwObsfuscatedHref3 = "n@d";var _rwObsfuscatedHref4 = "anj";var _rwObsfuscatedHref5 = "uli";var _rwObsfuscatedHref6 = "ode";var _rwObsfuscatedHref7 = "sig";var _rwObsfuscatedHref8 = "ns.";var _rwObsfuscatedHref9 = "com";var _rwObsfuscatedHref = _rwObsfuscatedHref0+_rwObsfuscatedHref1+_rwObsfuscatedHref2+_rwObsfuscatedHref3+_rwObsfuscatedHref4+_rwObsfuscatedHref5+_rwObsfuscatedHref6+_rwObsfuscatedHref7+_rwObsfuscatedHref8+_rwObsfuscatedHref9; document.getElementById('rw_email_contact').href = _rwObsfuscatedHref;
|
||
//]]>
|
||
</script></p>
|
||
</div>
|
||
|
||
|
||
</body></html> |