Anzeige:
Ergebnis 1 bis 15 von 15

Thema: Mehere Parallelport Relais

  1. #1
    F1 Taste
    Registriert seit
    Oct 2002
    Beiträge
    93

    Question Mehere Parallelport Relais

    Ich habe mir nach den Beschreibungen ein paar Threads weiter unten eine Relaiskarte für den Parallelport gebaut. Funktioniert auch super, ich schalte meine Deckenbeleuchtung nur noch mit lirc an und aus
    Doch nun werden meine Parallelports am Rechner langsam knapp (Hab nur einen),
    deshalb die Frage:
    Was ist praktischer:
    a) Eine Art Relais Controller am Parallelport der mehere Relais ansteuert (Schaltpläne? Treiber?)
    b) Oder einfach noch ne ISA/PCI Karte mit noch ein paar Parallelports drauf (Wie siehts da aus mit Treibern?)

  2. #2
    Moderat0r Avatar von geronet
    Registriert seit
    May 2001
    Ort
    Grainau
    Beiträge
    6.099
    Ich würd sagen eine weitere PP-Karte ist einfacher.
    Wenn du mehrere Relais steuern willst brauchst du meistens einen Controller (µC), da kann man dann auch seriell rangehen. Programmieren muss man den nämlich auch noch

    Grüsse, Stefan
    Nur Puffin verleiht dir die Kraft und Ausdauer die du brauchst!

  3. #3
    - Linux Noob -
    Registriert seit
    Jun 2003
    Ort
    /dev/Mietwohnung
    Beiträge
    315
    schon mal überlegt das ganze mittels Binär->Dezimal (oder wie das Dingens heißt) Baustein zu machen ?

    Wir haben im Normalfall 8(Bit) Ausgänge. Macht 8 Relais. Wenn man jetzt son Wandler(Demultiplexer???) dranhängt, hätte man theoretisch die Möglichkeit auf bis zu 255 Relais.........

    .....genauere IC Typen kann ich nachreichen.

    Ihr müßtet dann "nur" die Ansteuerung umprogrammieren.....dürfte in C aber nicht das Problem sein, könnte ich helfen.....

    Greetz

    Marc

  4. #4
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Ort
    Reutlingen
    Beiträge
    161
    Das müßte hinhauen.. Ist halt en bischen en Schaltungsaufwand aber wenn das nicht stört.. wenn es sich nur um ein oder zwei weiter Kanäle handelt würde ich mir mal die Steuerleitungen ansehen, davon kanste ggf. auch nochmal welche verwenden..

    Ich persönlich würde en µC nehmen.. ist halt auch mehr Arbeit, aber ist ne schöne & praktische Lösung..
    Kommt aber auch daher das es mich sehr stören würde wenn ich wüste, daß ich im Dunkel sitze wenn mein Rechner mal abstürzt..

  5. #5
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Ort
    Reutlingen
    Beiträge
    161
    Hatte en Denkfehler.. mit de 255 Kanälen kann’s nicht klappen, da man immer nur eine von 255 einschalten kann!

    In diese Richtung gibt es aber trotzdem Möglichkeiten..
    7 Leitungen für die Ansteuerung sowie eine Leitung zum zustand setzen..

    mit Leitung 0-6 Steuert man eine Adresse ( zwischen 0 und 128 ) an und mit Leitung 8 setzt (oder Löscht) man ein FlipFlop welches vor das Relay geschalten ist..

    Wenn es zeitlich schnell genug geschieht mßte es auch möglich sein die trägheit der Relays auszunützen..
    Eine Leitung (z.B.: Steuerleitung) regelt über eine Tor ( UND ) Schaltung ob Ausgang 1 (erste 8) oder Ausgang 2 (Leitung 8- 16 ) Aktiv ist..

    Ist im Endeffekt aber beidemal das selbe Prinzip
    Geändert von Stefan_1 (15.09.03 um 13:44 Uhr)

  6. #6
    F1 Taste
    Registriert seit
    Oct 2002
    Beiträge
    93
    Das Problem ist nur, dass ich noch nie mit nem µC zu tun hatte. Ich bin aber durchaus interessiert, hätte vielleicht mal jemand so ne "Mein erster Hello Wolrd µC" Seite?
    Programmiert man die Dinger eigentlich in Assembler oder gibt es da mittlerweile klicki-bunti IDEs?
    Denn nur Assembler dafür lernen wäre mit den doch zu viel, da greif ich lieber auf geronets Vorschlag zurück, auch wenns eigentlich langweilig ist


    ##Edit
    Argh, 30 Sekunden später finde ich ein paar Threads weiter unten natürlich auch noch nen Link zu ner Mikrocontroller Page ( http://www.mikrocontroller.net ), damit sollten sich die Fragen hoffentlich erübrigen.
    Geändert von Gho (15.09.03 um 14:16 Uhr)

  7. #7
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Ort
    Reutlingen
    Beiträge
    161
    Ansi C geht auch..
    Falls du das kannst..

    MfG Stefan

  8. #8
    F1 Taste
    Registriert seit
    Oct 2002
    Beiträge
    93
    Na, ich hab mir mal so ausgerechnet das dieses Mirkocontroller-Projekt so an die 30 Euro kosten würde, abgesehen davon das ich kein Assembler kann.
    Deshalb schnorr ich mir lieber ein bis drei Parallelport Karten von Freunden und aus alten 386er.

    Wenn ich mal wieder genug Geld hab dann steht das ganz oben auf der To-Do Liste, aber momentan bleibt wohl nur das schnorren und das warten auch Weihnachten

  9. #9
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Ort
    Reutlingen
    Beiträge
    161
    Na unter 30€ wirste wirklich net soo viel bekommen.. da werden die Relais ja schon fast mehr kosten..

    Mit net 2ten Parallelportkarte hast du aber unter umständen auch en Probleme, hab auch mal zwei drin gehabt und es gab dauernd Konflikte.. ( war aber unter NT4 )

    Ich fänd’s gut wenn du uns informieren würdest ob & wie es geklappt hat..

    ( Will sowas mit µC auch mal machen.. aber muß erst nachem nächsten Umzug.. werde jetzt keine Kabel verlegen.. )

    MfG
    Stefan

  10. #10
    Hardwarefreak Avatar von E S
    Registriert seit
    Jun 2003
    Ort
    Raum Bonn
    Beiträge
    1.252
    Hi,

    Was für eine Programiersprache wäre denn genehm?
    Assembler und Basic kannst Du einsetzen, wenn Du das Progstudio von www.batronix.com verwendest. Spezielle Fragen kannst Du dann auch in dem Forum loswerden. Der AT89c2051 z.B. ist billig, kann viel und ist zimlich leicht zu bedienen.


    Aber es geht natürlich auch ohne µC!

    Latch heißt das Zauberwort.
    Ein Latch übernimmt auf einen Befehl (Impuls) die Zustände seiner Eingänge und häl sie bis zum nächsten Impuls.

    So könntest Du die Bidirektionalen Leitungen des Druckerports as Adresszähler verwenden (bis 4 "Ebenen" oder gar bis 16 mit Adressdecoder BCD->Dez). Dann kannst Du alle 8 Datenleitungen für eine "Ebene" verwenden. Je Ebene ein Latch, daran die Relais und die werden von den Bidirektionalen Leitungen gesteuert. So kannst Du 32 Relais bzw. 128 Relais mit Adressdecoder steuern.

    Nimmst Du statt Relais einfach nur LEDs, so kannst Du damit einen ganzen Sternenhimmel bauen, eine riesige Anzeigetafel aufbauen, Deine Modelleisenbahn steuern (Die 5 Eingänge kann man ja auch multiplexen), sogar dein Ganzes Haus steuern.
    Und das mit wenig Hardwareaufwand - fast alles macht die Software.

    Gruß
    Elmar
    Was in C nicht geht muß gelötet werden!

  11. #11
    F1 Taste
    Registriert seit
    Oct 2002
    Beiträge
    93
    @Stefan_1:
    Ich wollte nun (wenn überhaupt) mit dem Tutorial auf http://www.mikrocontroller.net/tutorial/
    anfangen. Dieser beinhaltet sowol das Löten der µC Programmierschaltung, als auch die Programmierung in Assembler (LED und Tastschalter, also schalten und geschaltet werden, mehr brauchen wir ja nicht)
    Die Teile würden jedoch halt so 30 Euro kosten und ich werde nächstes Einkommen mal schauen ob ich ein paar Euros abzweigen könnte.
    Und so schwer sah der nicht aus (Weder beim Löten noch beim Assembler)

    @ES:
    Dieses Progstudio ist leieder nur für Windows (wenn schon denn schon )
    Aber ich wäre auch bereit Grundsätze in Assembler zu lernen, ein paar mal Umschalten wird ja wohl hoffentlich nicht so schwer werden

    Könntest du mir bitte ein paar weitere Erleuterungen zu Latch geben? Ich bin momentan noch nicht viel weiter als das Umsetzten von Schaltplänen, mit selber planen und erstellen klappt es doch noch nicht so ganz.
    Wäre nett wenn du mir ein paar Beispiele oder Tutorials geben könntest, ich nehm das ja gerne wenns einfacher als ein µC ist.

  12. #12
    näbert
    Registriert seit
    Sep 2002
    Ort
    Ostschweiz, Kt. St. Gallen
    Beiträge
    268
    das ganze geht doch problem los ohne müpe:

    8 datenleitungen -> multiplexer -> d-flipflops für jede lampe
    und danach noch ein fet, sodasss du keine relais brauchst, die mit der zeit verkleben. fet's lassen sich prima als analogschalter betreiben, ausserdem hört man kein klicken und man braucht keine verstärker.
    auch bei strömen über 1 A kein problem. ich habe selber schon prints gebaut, welche fets mit bis zu 16 A durchschalten, der kleine kühlkörper wird kaum handwarm

    das ganze ist einfach, jedoch aufwendig, wenn du wirklich viele lampen oder was auch immer ansteuern willst...

    maximal 256 schalter sind möglich.

    edit: so musst du nur einen kurzen impuls "durchschicken".
    Geändert von downtown (16.09.03 um 22:07 Uhr)

  13. #13
    Hardwarefreak Avatar von E S
    Registriert seit
    Jun 2003
    Ort
    Raum Bonn
    Beiträge
    1.252
    Hi,

    FET's sind nicht für Wechselspannungen geeignet. Dann lieber Triacs. Die schalten auch brav im Nulldurchgang ab.

    Problematisch ist allerdings, dass das Ganze nicht Potentialfrei ist. Da sind relais doch weit überlegen. Für Wechselspannungen gibt es Optokoppler, die können 230V / 66W "schalten". Potentialfrei, aber das funktioniert nur bei Wechselspannung.


    Zum Latch:

    Das 74LS259 scheint Ideal zu sein. Datenblatt hier:
    http://www.fe.up.pt/~victorm/DataShe...74259%20LS.pdf

    Wenn man E auf Low setzt und C auf High, dann erhält man ein Adressierbares Latch.

    Über die drei Adresseingänge bestimmt man, welches Bit man setzen will und dieses nimmt den Zustand von D an. Mit E kann man das Latch empfänglich machen. Den Eingang hängst Du auf eine Bidirektionale Leitung. Mit den anderen drei bestimmst Du die Adresse. Also Daten (an D) anlegen, Adresse anlegen und dann E auf 0 setzen (Low aktiv!). Dann nimmt das adressierte Bit den Zustand von D an. Danach E auf High setzen um das Latch unempfänglich zu machen. Die Daten im Latch bleiben erhalten. Bis zur nächsten Datenübergabe.

    D hängt natürlich an einer Datenportleitung.
    Wenn Du 8 latches parallel hängst (Nur D an jeweils eine Leitung), kannst Du mit Deinen 8 Datenleitungen in alle Latche gleichzeitig ein Bit übernehmen. Also Adressierst Du zuerst die 0, Legst die Daten für alle 8 Latches gleichzeitig an und gibst E frei (LOW). Jetzt hat jedes Latch sein niederwertigstes Bit so gesetzt, wie die Datenleitung es vorschreibt. Dann 1 adressieren, dann 2, ...

    Auf diese Weise kannst Du 8x8=64 Relais oder was auch immer individuell schalten. Denk aber drann, dass alle Latche jetzt gleichzeitig übernehmen. Also immer schön mit den Daten füttern, auch wenn die sich nicht ändern.

    Bei diesem Latch brauchst Du absolut keine Zusatzbeschaltung wie Adressdecoder usw. Dafür kannst Du nur halb so viele Ausgänge schalten. Alternative sind übrigens Schieberegister mit eingebautem Latch. Da taktest Du Deine Daten seriell rein und kannst So beliebig viele Ausgänge mit 2 Leitungen ansteuern. Der Vorteil ist, dass man beliebig Kaskadieren kann, der Nachteil, dass das Datenreinfüttern langsam und umständlich ist, muss man ja immer alle Ausgänge nacheinander abklappern, Zustandsänderung hin oder her.

    Trotzdem könntest Du dich etwas mit MCs beschäftigen - da kann man feine Sachen mit machen.

    Gruß
    Elmar
    Was in C nicht geht muß gelötet werden!

  14. #14
    F1 Taste
    Registriert seit
    Oct 2002
    Beiträge
    93
    @E S
    Juhu es geht vorran!
    Aber ich glaub wir brauchen langsam eine Art Lexikon usw, denn ich muss leider zugeben das ich mit
    "Auf high/low setzen" wenig anfangen kann.

    Einen festen Thread der solche Begriffe wie:
    "Auf high setzen", aber auch vielleicht "Latch" oder "d-flipflop" erklärt.
    Aber soweit hab ich wohl verstanden, auch wenn ich noch Probleme habe aus dem Datenblatt zu erkennen wann was wo geschaltet wird. (A0, A1, A2)

    Es ist halt nicht jeder ein Hardwarefreak

  15. #15
    Hardwarefreak Avatar von E S
    Registriert seit
    Jun 2003
    Ort
    Raum Bonn
    Beiträge
    1.252
    Hi,

    also High setzen bedeutet auf Betriebsspannung (normalerweise +5V), LOW bedeutet auf Masse setzen (0V). Beim Computer (Druckerport) bedeutet High einfach auf '1' setzen, Low auf '0' setzen.

    Beim Druckerport muss man aber aufpassen, dass einige Leitungen (Datenleitungen alle ausgenommen) LOW-Aktiv sind. Das bedeutet einfach nur, dass sie sich anders rum verhalten. Setzt man de auf '1', so liegt diese Leitung auf Masse (also LOW bzw.'0'). Erkennen kann man das daran, dass die Bezeichnungen überstrichen sind.

    _____
    Reset

    bedeutet schlicht und ergreifend, dass die Funktion Reset (Name der Leitung) ausgelöst wird, wenn man sie auf LOW ('0') legt.

    Wozu macht man das? Ganz einfach: Bei den meisten TTL- Eingängen wird bei offenen Eingang eine '1' erkannt. Da das nicht so stabil ist, legt man unbenutzte Eingänge in der Regel fest auf Masse oder +. In diesem Beispiel bedeutet das, das bei offenem Eingang einfach kein Reset ausgeführt wird.
    Ein weiterer Grund ist, dass man Taster und Schalter normalerweise nach Masse schaltet. Ein Widerstand (oft 330 Ohm; mindestens, nie weniger) zwischen + und Eingang sorgt für einen permanenten High-Pegel. Der Taster schließt diesen Pegel dann nach Masse kurz. Der Widerstand verhindert aber einen "echten" Kurzschluß, da er den Strom begrenzt. Die Leitung ist genau nur dann LOW, wenn der Taster gedrückt wird.

    Die Adresseingänge des Latch funktionieren genau so wie die Adressen und Bytes in einem Computer. Nur sind sie in Deinem Fall 3-Bit breit. Schneidest Du von einem Integer oder char die 3 niederwertigsten Bits raus, so entspricht der Wert der Variabe dann den Adressen.

    000 = 0 = Bit 0
    001 = 1 = Bit 1
    010 = 2 = Bit 2
    011 = 3 = Bit 3
    100 = 4 = Bit 4
    101= 5 = Bit 5
    110 = 6 = Bit 6
    111 = 7 = Bit 7

    So kann jedes der 8 Bits (0-7) individuell adressiert werden.

    Wenn Du die Latche parallel hängst, musst Du aber beachten, dass jedes Datenbit der Druckerdatenleitungen auf einem anderen Latch rauskommen. Da die Adressen parallel sind, liegen sie immer gemainsam an den gleichen Ausgängen (Gleiche Bitnummer) der Latche.

    Gruß
    Elmar
    Was in C nicht geht muß gelötet werden!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •