Home > Circuits > Major Projects > Computerize Your Room/Home |
Author | Views | Views Today | Rank | Comments |
363,549 | 1 | 122 |
So you've read about my Computerized Room or have seen those nifty home automation products advertised in the back of electronics magazines? Or perhaps someone you know has done something similar. At any rate, you have decided to try it yourself. The first thing I will say, however is that it is not cheap. |
You will first need a computer, but since your reading this, I assume that you already have that taken care of. Second, you will have to buy about 20 IC's and a very expensive ISA experimenters prototyping board. These boards cost anywhere from $16 to $45, and can be purchased from your local electronics store or from Jameco Electronics (See Where To Get Parts). They have a fairly wide selection. Buy the 8 bit version, the 16 bit varsion is not needed for this project.
Since this is a major project, it will be presented in sections, starting with the Simple Parallel Port Interface. The 8 Bit Output Card will come next, followed by the 8 Bit Input Card. All three interfaces came from the book "The Robot Builders Bonanza", by Gordan McComb.
I must also stress that this is a major project and should not be attempted unlesss you have a good understanding of electronics. If done wrong, you run the risk of not only destroying the circuit, by also destroying an expensive computer as well. Double, no, triple check your work to make absolutely sure that is free from errors before installing it in any computer.
DISCLAIMER: I am not responsible for any damages caused due to a lack of knowledge or mistakes in the circuit when building and using these projects.
Now then, with that out of the way, on to the Parallel Port Interface.
Parallel Port Interface |
This is about the most basic interface you will see. It uses only 3 74376's (74LS367). This interface provides 8 outputs (plus 3 address lines) and 5 inputs. This is usually enough for one room, providing you make use of some demultiplexers and the address lines. You could have up to 128 output lines using the address lines, a 74LS138 and 8 74LS154's.
Begin construction by mounting the IC sockets on the board. I used a experimenters universal solder board due to the large number of wires that must cross. If a PC board were used, you would need either a multi-layer board or many, many jumpers.
Now, solder wires along the top and bottom of the board, making all the connections between the IC sockets. Do not install the IC's yet. Assemble the cable using 26 conductor ribbon cable and a 25 pin crimp connector. You will have one conductor left over so just "peel" it off. Connect the cable to the board and wire it into the circuit. I used an 18 pin socket to make connections to the outputs and inputs on the interface easy. You could do the same if you like, or use a terminal strip.
U1,U2,U3 | 3 | 74LS367. Buffer | 7437, 74HC37 |
MISC | 1 | Sockets, 18 Pin Socket (For Output), Board, Ribbon Cable, 25 Pin Connector |
You operate the interface by sending bit patterns to the printer port. BASIC, GWBASIC or QBasic are the languages of choice since most computers already have them installed (in your DOS
directory). If you wish, you can download control software from my files section.
The command you use is the OUT
command. The decimal address of most printer ports (assuming LPT1) is 888. Use this with the OUT
like this:
OUT 888,X
X
is a number from 0 to 255 that represents the binary bit pattern.
Although designed primarily to get data out of the computer, the printer port has 5 input lines (on some computers it could be less). You access these lines with the INP
function. This time, however, the decimal address is 889. The syntax of the INP
command is:
Y=INP(X)
Y
is the variable used to store the decimal value that is returned. X
is the port number, which in this case is 889.
You may also use the OUT
command to send data to the address lines. Just use address 890 instead of 888. Remember that there are only 4 address lines.
8 Bit Output Card |
OK. With the basic parallel port interface done, you can build the more advanced 8 Bit Output Card.
This is much more complicated then the parallel port interface, mostly because of the address lines used by the computer to send data to different devices plugged into it's bus.
This interface is constructed on an IBM 8 bit prototyping board. These are available from Jameco Electronics (see Where To Get Parts).Connections are made with point to point soldering or wire wrap. Note that if you use the wire wrap method the board will require about 1/2 inch clearence on the connection side.
Use sockets for all IC's. Begin construction by first mounting the sockets. Depending on which board you buy, you might have lots or very little space. Connect the IC's together using either point to point or wire wrap. I used a 36 pin connector to facilitate connection to the back of the computer, but you can use any other method. Whatever the method, install that connector and wire it into the circuit now. You may now wire the connections to the bus (the gold contacts on the bottom of the card). If you need a reference as to what the bus connections are, check out The IBM Bus Pinout (I apologize for the poor image quality). It is a good idea to bypass power supply pins with .1uf capacitors to avoid problems with interference, power supply spikes, etc. Triple check your work before installing the circuit in any computer. The simple circuit to connect the interface to relay's is showen after the schematic.
U1 | 1 | 74LS04 Inverter | 7404, 74HC04 |
U2 | 1 | 74LS00 NAND Gate | 7400, 74HC00 |
U3 | 1 | 74LS32 OR Gate | 7432, 74HC32 |
U4 | 1 | 74LS374 Buffer | 74374, 74HC374 |
U5 | 1 | 74LS30 8 Input NAND Gate | 7430, 74HC30 |
MISC | 1 | 8 Bit IBM Prototyping Board, Connector (For Output/Input), Sockets, Capacitors For IC Bypass, Wire. |
The power connections were left off the schematic for clarity. Here they are:
7400 | 14 | 7 |
7404 | 14 | 7 |
7430 | 14 | 7 |
7432 | 14 | 7 |
74374 | 20 | 10 |
8 Bit Input Card |
This input circuit can be built on the same board as the output circuit, and share the same bus connections. This circuit is necessary if you wish to use almost any type of remote control circuit, which will most likely require more then 5 inputs as provided by the printer port.
Since this is quite similar to the output circuit, I won't go into the details again. Only the parts list and schematic will be showen, as well as the "power pins" chart.
CAUTION: Be sure that the signals being sent to the input card do not exceed 5 volts or fall below ground!
U1 | 1 | 74LS04 Inverter | 7404, 74HC04 |
U2 | 1 | 74LS00 NAND Gate | 7400, 74HC00 |
U3 | 1 | 74LS32 OR Gate | 7432, 74HC32 |
U4 | 1 | 74LS244 Buffer | 74224, 74HC224 |
U5 | 1 | 74LS30 8 Input NAND Gate | 7430, 74HC30 |
MISC | 1 | 8 Bit IBM Prototyping Board, Connector (For Output/Input), Sockets, Capacitors For IC Bypass, Wire. |
The power connections were left of the schematic for clarity. Here they are:
74LS00 | 14 | 7 |
74LS04 | 14 | 7 |
74LS30 | 14 | 7 |
74LS32 | 14 | 7 |
74LS224 | 20 | 10 |
Controlling The Input And Output Cards |
Controlling the cards is straight forward, using the basic INP
and OUT
statements as explained in the Simple Parallel Port Interface. The only difference is the address. The address for the input card is decimal 701 while the output card is decimal 703.
Choosing The Right Computer |
This is the last section of this document. Choosing the right computer is getting harder these days. Since new computers no longer come with ISA slots, that basically means you are stuck using older machines. In a way this is good since it's no great issue if you fry one. Pentium class machines are essentially junk these days and basically free. Pentium II and III machines are quickly dropping into that catagory. Just make sure that you triple check your work before installing it into any computer.
Well, thats it. For more information on programming the parallel port, see Programming The Parallel Port In QBasic or Programming The Parallel Port In Visual Basic.
Related Circuits |
Comments |
Add A Comment |
remind me one upon the time ago in 2000, i did this project. wow this project need more knowledge about how to programming LPT1 usualy use for Printer Port (for some old PC) I'm my new PC only have USB port :( | ||
I sort of did the same thing but everything is external to the PC. I just used the parallel port for the interface - http://www.carstereoforum.net/showthread.php?t=1229 | ||
nice work sir............ it really works.......... thanq for dis circuit... plz make some new circuts like dis.......... | ||
Sir ny project i interfacing through parallel port.. but i faced trouble to run the project . The signal which i am sending through the software in parallel port i not detected out there. My software.. aim is just to make the signal high or low at desired inputs but it is not detecting can u plz help me out in these regards.....or can u suggest me what can i do for that...i just need the data to be high or low at desired inputs from parallel port... | ||
Could you provide me with more details on the project? i do not completely understand you setup. Maybe the full project from start to finish. Thanks! | ||
Man, this project did make me return to digital electronics. It's really a Fun Project. I can remember building it the first time in 2001! Eight years ago !! Now I returned here to check how it did work... PS: on the input module there is a typo regarding the substitution types, LS244 and 74224 are mixed up somehow. Think it should be 244 for all. | ||
On the 8 Bit Output/Input Cards, U2 is an unnecessary IC. You can use the fourth OR gate on U3 and move the inverter on A8 to A9. | ||
wow i never knew you could do that. what are the prices and places to buy the parts in england! | ||
great project thank's | ||
Its Working Guys! I am so happy that now my computer room is fully Computerized!!!!!!!!!!!!!!!!!!! |
The last 10 comments are currently shown. Show All Comments. | Add A Comment |