Seriell gesteuerter 8 Kanal Schalter CMOS Logik unter Kontrolle von Visual Basic

background image

Alle möglichen Geräte vom PC aus zu
steuern ist ein beliebtes Feld. Elektor
brachte deshalb in den letzten Jahren
schon verschiedene Lösungen zum
Thema. Falls Sie angesichts der Kom-
plexität dieser Projekte (die üblicher-
weise im Bau einer PC-Steckkarte
bestehen) gezögert haben, weil Sie
z.B. kein professioneller Hard- und
Software-Entwickler sind, dann haben
wir nun etwas für Sie: Eine extrem ein-
fache Schaltung, die als externes
Gerät lediglich an die serielle Schnitt-
stelle eines PCs angeschlossen wird.
Man braucht sich weder um Interrupts
noch um Adressen zu kümmern, und
die Programmierung von Treibern
bereitet ebenfalls kein Kopfzerbre-
chen. Es genügt, einfach eine kleine
Platine zu bestücken und ein Pro-

gramm in Visual BASIC zu verwenden,
das man bei Bedarf auch noch den
eigenen Wünschen gemäß verändern
kann. Die Schaltung ist außerdem
superbillig, offen für Erweiterungen,
seriell gesteuert (für lange Kabel gut)
und benötigt noch nicht einmal eine
eigene Stromversorgung! Das mit
Visual BASIC erstellte Steuerprogramm
ist inklusive einfacher Benutzerober-
fläche fix und fertig im Elektor-Soft-
wareservice erhältlich.

Die Hardware

Wie schon erwähnt und in Bild 1 zu
sehen, besteht die Schaltung ledig-
lich aus zwei ICs und ein paar Stan-
dardbauteilen. Die ICs 4029 und
4051 sind so gebräuchlich, daß es

mit Sicherheit keine Beschaffungspro-
bleme geben wird.
Wegen der äußerst geringen Stromauf-
nahme genügt es, die DTR-Leitung der
seriellen Schnittstelle des PCs anzuzap-
fen. Typischerweise wird sich so eine
Versorgungsspannung von ca. +10 V
ergeben (die Schaltung arbeitet im
Bereich von 5 V...15 V). Damit die nega-
tiven Spannungen der DTR-Leitung von
der Schaltung fernbleiben, erfolgt die
Anzapfung über eine Diode (D1).
Der Zähler 4029 erhält über C3 und R5
automatisch ein sogenanntes
‘power-on-reset’. Der Zähler arbeitet im
BCD-Modus und reagiert auf die
ansteigenden Flanken des Steuersig-
nals an seinem Takteingang Pin 15.
Die steuernden Takte liefert der PC,
indem er ein Byte mit dem Wert 0H
(0000 0000 binär) über die TxD-Leitung
(transmitted data) der seriellen Schnitt-
stelle schickt. R1 und R4 limitieren
zusammen mit den internen Begren-
zungsdioden die Steuerspannung an
den IC-Eingängen auf für das IC
bekömmliche Werte.
Die drei BCD-kodierten Ausgänge von
IC1 (Q1...Q3) werden auf die korre-
spondierenden Eingänge von IC2
geschaltet. Beim 4051 handelt es sich
um einen 1-zu-8-Multiplexer/Demul-
tiplexer, was sich auch wieder kompli-
zierter anhört, als es ist. Das IC enthält
acht analoge CMOS-Schalter, deren
eine Seite (Pin 3) miteinander verbun-
den ist. Im Prinzip also nichts anderes
als ein BCD-gesteuerter achtfacher
Umschalter. Ein High-Pegel der RTS-Lei-
tung deaktiviert den Schalter über Pin
6. Bei einem Low-Pegel ist je nach
BCD-Kode einer der acht ‘Ausgänge’
mit ‘COM’ verbunden. R2 und R3
haben die gleiche Aufgabe wie R1

X-6 - 6/98 Elektor

EXTRA

———————————————————— PC-P

LUS

Computergesteuerter Schalter - das klingt nach Komplexität,
Spezialbauteilen und Treiberprogrammierung in Assembler.
Die hier vorgestellte Schaltung hingegen ist an Einfachheit
wohl kaum zu unterbieten: Zwei gewöhnliche CMOS-ICs und
ein kleines Programm in Visual BASIC sind schon alles.

Hardware-Design und Software
von B. Oehlerking

Seriell gesteuerter
8-Kanal-Schalter

CMOS-Logik unter Kontrolle von Visual BASIC

background image

und R4. Legt man ‘COM’ auf ‘V+’, so
erscheint am ausgewählten Ausgang
die Versorgungsspannung.
Da das 4051 nicht unbedingt zur Klasse
der Leistungs-ICs gehört, sollte man
seine Ausgänge nicht mit mehr als 1
mA belasten. Braucht man mehr Strom,
so kommt man um ein eigenes Netzteil
und eine Verstärkerstufe nicht herum.
Ein MOSFET vom Typ BUZ10 oder ähnlich
eignet sich sehr gut als Stromverstärker.
Bild 2 zeigt, wie einfach so etwas aus-
fallen kann.
Die Verbindung von Pin 7 des 4029 zu
CTS wird später noch erläutert. Die
Verbindung von Schaltung und PC
erfolgt über ein gewöhnliches 9-poli-
ges serielles Kabel. Hierzu ist eine ein-
lötbare Sub-D-Buchse auf der Platine
vorgesehen.

Aufbau

Besonders leicht läßt sich die Schaltung
mit Hilfe des in Bild 3 angegebenen
Platinenlayouts realisieren.
Zum Aufbau der Schaltung gibt es nicht
besonders viel zu sagen. Wenn man
löten kann und IC-Fassungen verwen-
det, in die man die ICs richtig einsetzt,
kann nicht viel schiefgehen. Es sei
denn, man malträtiert die IC-Anschlüsse
mit elektrostatischen Ladungen, denen
die CMOS-Eingänge nur begrenzt
standhalten können.

Steuersoftware

Das Steuerprogramm wurde in Visual
BASIC 3.0 geschrieben. Der Quelltext
und das ausführbare Programm sind
auf Diskette (ESS-Nr. 986015-1) erhält-
lich. Wer es selber und/oder besser
machen möchte, der kann die nötigen
Infos aus dem Flußdiagramm in Bild 4

und der folgenden Programmbeschrei-
bung entnehmen.
Als allererste Maßnahme werden alle
Ausgänge deaktiviert, indem man RTS
auf High legt. Als nächstes wird so oft
eine ‘0’ (via TxD) geschrieben, bis CTS
von IC1 auf Low gezogen wird. Jetzt
kann man den ‘Switch’-Knopf im ent-
sprechenden Fenster des Programms
klicken. Jeder Mausklick auf ‘Switch’
gibt eine weitere ‘0’ aus und als Resultat
schaltet IC1 jedesmal einen Kanal wei-
ter. Nach Kanal 7 beginnt es wieder
von vorne mit Kanal 0. Betätigt man
nun den ‘On/Off Ch’s’-Knopf, wird der
entsprechende Ausgang aktiv.
Das Programm informiert den Benutzer
über den gewählten Ausgang, über

PC-P

LUS

————————————————————

Elektor

EXTRA

X-7 - 6/98

K1

1

2

3

4

5

6

7

8

9

IC2

4051

MDX

11

10

12

15

14

13

G8

8x

9

6

3

4

2

5

1

0

1

2

3

4

5

6

7

0

1

2

0

7

R3

100k

R4

100k

R5

100k

R1

10k

R2

10k

C3

100n

D1

1N4148

1.2+/1.2-

1.2CT=15

1.2CT=0

IC1

4029

B/D

U/D

12

13

15

10

14

11

3D

C3

G1

4

5

1

7

2

6

3

9

C1

100n

C2

100n

RTS

TxD

CTS

982042 - 11

COM

0

1

2

3

4

5

6

7

DTR

V +

+

13

14

15
12

4051

MUX

äquivalent

LOAD

BUZ10

47k

+10V

(DTR)

982042 - 12

Bild 2. Für höhere Belastungen als 1 mA
müssen Stromverstärker (bis zu acht)
nachgeschaltet werden.

(C) Segment

982042-1

C1

C2

C

3

D1

IC1

IC2

K1

R1

R2

R3

R4

R5

1

2

3

4

5

6

7

8

COM

982042-1

(C) Segment

982042-1

Bild 3. Platinen-Layout und Bestückungsplan der Schaltung.

Stückliste:

Widerstände:
R1,R2 = 10 k
R3,R4,R5 = 100 k

Kondensatoren:
C1,C2,C3 = 100 n

Halbleiter:
D1 = 1N4148

IC1 = 4029
IC2 = 4051

Außerdem:
K1 = 9polige Sub-D-Buchse, gewinkelt,
für Platinenmontage

Steuersoftware 986015 auf Diskette
(siehe Serviceseiten in der Heftmitte)

Bild 1. Die Schaltung des seriell gesteuerten Schalters mit acht Kanälen.

background image

dessen Zustand (an oder aus) und über
die Versorgungsspannung. Betätigt man
den ‘Auto’-Knopf, so wird automatisch
immer um einen Kanal weitergeschaltet.
Das Zeitintervall kann hierbei im Bereich
von 0,1 s bis 1 s gewählt werden.

Anwendungen

Neben der Anwendung, die wählbar
an einem von acht Kanälen eine Span-
nung ausgibt, läßt sich die Schaltung
auch umgekehrt betreiben. Die acht
Ausgänge sind dann Eingänge, die
jeweils daran angelegte Spannung auf
den ‘COM’-Anschluß durchschalten.

Die Spannungen dürfen in diesem Fall
natürlich nicht größer als die Versor-
gungsspannung sein. Sie sollten also in
einem Bereich von 0 V bis 10 V liegen.
Mac-User sollten wegen der geringeren
Spannung der seriellen Schnittstellen
am Mac für D1 eine Schottky-Diode
und für R3 und R4 besser 100-k

-Wider-

stände einsetzen.

(982042)

X-8 - 6/98 Elektor

EXTRA

———————————————————— PC-P

LUS

START

INIT

RTS = H

SEND 0

SEND 0

until

Q1 = Q2 = Q3= 0

CONTROL

LOAD

CTS

= LOW

?

982042 - 13

N

Y

all channels OFF

binary 0 on TXD

carry arrived?

channel 0 selected

Bild 4. Flußdiagramm des VB3-Programms, das
für die Schaltung entworfen wurde.

Bild 5. Das sogenannte ‘user interface’ besteht aus einem Fenster mit Knöpfen, die volle
Kontrolle über die Schaltung geben und außerdem noch nützliche Status-Informationen
anzeigen.

Wie schon in den beiden letzten Jahren
gibt es im Doppelheft Juli/August - dem
Halbleiterheft von Elektor - wieder einen
großen internationalen Wettbewerb mit
vielen wertvollen Preisen!
Da immer mehr Elektor-Leser Elektronik
und Computer miteinander verbinden,
wird es in diesem Jahr einen Wettbewerb
geben, der beiden Interessengebieten
Rechnung trägt. Was damit gemeint ist,
sieht man schon in der Überschrift:
PC-Software zu den Themenbereichen
Meßtechnik, Elektronik-Entwicklung und
Kommunikation. Damit ist eigentlich (fast)
alles erfaßt, was Elektroniker interessiert -
Spielprogramme ausgenommen...
Ob Sie mit Ihrem PC den Luftdruck mes-

sen, Wetterbilder dekodieren,
Schaltungen simulieren oder Mikro-
controller programmieren - wenn Sie es
selbst entwickelt haben, ist jedes derar-
tige Programm wettbewerbsfähig. Ein
Wettbewerb für aktive Elektroniker, die
ihren PC aktiv verwenden!
Alles weitere über die Teilnahme und die
vielen attraktiven Preise im nächsten Heft,
das am 18. Juni erscheint.

980060

N

Ä C H S T E N

M

O N A T

I M

D

O P P E L H E F T

J

U L I

/ A

U G U S T

:

PC-Software-
Wettbewerb

8 Messen

8 Entwickeln

8 Kommunizieren


Wyszukiwarka

Podobne podstrony:
Visual Basic Kontrolki , Studia i nauka, Visual Basic
PC gesteuerter 32 Kanal Dimmer Luxus Regler fuer ohmsche und induktive Lasten
kontrola 5
Kontrola badań laboratoryjnych
Czynności kontrolno rozpoznawcze w zakresie nadzoru nad przestrzeganiem przepisów
uwaga i kontrola poznawcza
KONTROLA PAŃSTWOWA
Rozwiązania instytucjonalne w zakresie realizacji i kontroli praw pacjenta
Wykł BADANIA KLINICZNO KONTROLNE I PRZEKROJOWE
Znaki kontrolne
Stres kontrolowany i niekontrolowany
Kontrola GMO
3)kontrola dokumentˇw

więcej podobnych podstron