PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brauche Hilfe bei Parallelport-Schaltung



steinachim
05.05.2005, 21:17
Ich bin gerade dabei mein erstes roboter-ähnliches Projekt zu basteln:
ein altes ferngesteuertes Auto, dass via LPT von einem PC aus gesteuert werden soll (anfangs noch manuell, später dann automatisch).
Zur Steuerung des Autos habe ich die Platine aus der Fernsteuerung genommen und festgestellt, dass ich durch Kurzschließen je zweier Kontakte vorwärts, rückwärts, rechts und links "Befehle" an das Auto schicken kann.

Nun mein Problem:
Ich hab das ganze erst mal nur für vorwärts / rückwärts aufgebaut, links / rechts funktioniert equivalent.
So ungefähr hatte ich mir die Schaltung vorgestellt:

http://mitglied.lycos.de/steinachim/Schaltung2.jpg

1 und 2 sind Pins vom Parallelport, die ich mit Hilfe eines C-Programms ansteuere (auf 0V bzw. 5V setze). Über Masse wird der Basisstrom wieder zum PC zurückgeleitet.
Durch das Ansteuern eines der beiden Pins soll jeweils entweder rot-gelb oder rot-schwarz kurzgeschlossen werden.
Leider wird dadurch, dass der Emitter von T1 sowohl an der Masse als auch an schwarz hängen muss immer gelb und schwarz mit rot kurzgeschlossen, sodass das Auto blockiert (es kann ja schlecht gleichzeitig vorwärts und rückwärts fahren) und ich weiß nicht wie ich dieses Problem umgehen kann, da der Parallelport ja leider nur eine Masseleitung hat.

Hat einer von euch vielleicht eine Idee?

Gruß
Achim

P.S. Ich hoffe meine Beschreibung war nicht zu chaotisch... Wenn was unklar ist: einfach nachfragen

RCO
05.05.2005, 21:25
Bist du sicher, dass das mit den Kontakten so stimmt? Und das die stromflussrichtung so richtig ist/sind?
Bist du sicher, dass das mit nem Transistor in dieser richtung klappt? Hast du es mal anchgemessen, mit nem Multimeter oder so?

uwegw
05.05.2005, 21:35
wie wärs so? lpt2 zum an/ausschalten, lpt1 zum richtung wählen

RCO
05.05.2005, 21:39
Die enscheidende Frage ist meiner Meinung nach, wierum der Strom bei der Verbindung von Gelb und Rot fließt. Schwarz ist nach Aussage von Achim Masse. Ist Rot vielleicht Vcc, was sinn ergeben würde. Ich verstehe aber noch nciht so ganz, wie die 2 Verbindungsmöglichkeiten zu 4 Richtungen führen sollen?

@ uwegw:

was erwartest du, wass an T1 und T3 passiert, wenn T3 Leitet sperrt er T1.
Und T2 und 3 Leiten auch immer beide oder eben nicht. Wie soll man mit Lpt1 die Richtung wählen können?

uwegw
05.05.2005, 21:54
steckt wohl nen denkfehler meinerseits drin, hab das ganze ohne lange genug zu überlgen zusammengeklickt...

gedacht hab ich mit das ganze so dass vom emiottter von T4 ein signal ankommt, dass dann einmal auf T2 und durch T3 invertiert auf T1 gelangt. somit wollte ich erreichen dass nei T1 und T2 gleichzeitig leiten. über T4 sollte dann eine arte enable-eingang laufen...

RCO
05.05.2005, 21:58
Ja, hab ich mir gedacht, hat mich nur erst zeiemlich verdutzt. ICh hab mich auch verplappert, natürlich wird rot nciht Vcc sein, wenn man schwarz mit rot kurzschließt. Entscheidend ist aber immernoch, wierum zwischen rot und schwarz und rot und gelb der strom fließt, damit man die Transistoren richtig ausrichten kann.

steinachim
05.05.2005, 22:06
Schwarz ist nach Aussage von Achim Masse.
Stop! Schwarz ist NICHT die Masse. rot und schwarz sind zwei Kontakte der Fernsteuerung die kurzgeschlossen bewirken, dass das Auto vorwärts fährt. rot und gelb kurzgeschlossen lassen das Auto rückwärts fahren.

http://mitglied.lycos.de/steinachim/Schaltung3.jpg

Hier nochmal eine vereinfachte (und funktionierende) Version, die nur Vorwärtsfahren unterstützt. Folgende Schritte laufen ab:
1.) PC steuert 1 an (+5V) -> T2 (NPN-Transistor) schaltet durch
2.) rot und schwarz werden kurzgeschlossen (Kollektor-Emitter) -> Auto fährt vorwärts; Basisstrom fließt auch über Emitter, aber dann zurück zur Masse vom Parallelport.

Die Schaltung aus meinem ersten Posting stellt dar, wie ich mir vorgestellt hatte, dass es funktionieren könnte - leider tut es das nicht und mir sind im Moment die Ideen ausgegangen, wie es anders klappen könnte.

Die einzelnen Bestandteile der Schaltung funktionieren allein wunderbar, blockieren sich aber bei gemeinsamer Funktion gegenseitig (es werden gleichzeitig rot-gelb und rot-schwarz kurzgeschlossen -> das Auto müsste also gleichzeitig vorwärts und rückwärts fahren).

Gruß
Achim

P.S. Ich mach Schluss für heute - morgen ist ja nochmal Schule *seufz*

steinachim
05.05.2005, 22:09
@ RCO: hab eben erst dein letztes Posting gesehen:
der Strom fließt immer von rot nach schwarz bzw. rot nach gelb (technische Stromrichtung)

RCO
05.05.2005, 22:35
Aha, das hilft mir weiter, hast du schonmal ausprobiert rot an Vcc oder + des Lpt zu hängen und 2 PNP-Trasistoren zu benutzen?

steinachim
06.05.2005, 14:27
Frage: was ist Vcc (ich hab im Internet bisher keine gescheite Definition gefunden)?

An rot ist ja selbst positiv geladen, was bringt es mit dann, es mit dem + Pol zu koppeln? Ich hab schon einen Versuch mit zwei Transistoren gemacht - wieder gleiches Ergebnis (soll ich ihn auch hochladen?)...

Gruß
Achim

RCO
06.05.2005, 15:04
Vcc ist der PLuspol, also die 4 bis 5 V. Mir sit im Moment nicht ganz klar, wie die Anschlüsse im Sender verschaltet sind. Also z.B. könnte es ja sien, dass schwarz zum Minuspol (Batterie) und gelb zum Pluspol führt. KÖnntest du das mal nachmessen?
Meiner Meinung nach solltes es so laufen (Bild unten).

steinachim
06.05.2005, 15:49
Also, so funktioniert es auf jeden Fall nicht. Die Polungen:
LPT 1: +
LPT 2: +
Masse (bei dir Vcc): -
(ich messe von LPT 1 -> Masse bzw LPT 2 -> Masse jeweils +5V, daher müssen LPT 1 und 2 positiv sein (zumindest, wenn ich nicht all mein Elektronik-Wissen durcheinander bringe)).

Daher funktionieren auch die NPN Transistoren (deren Basen ja mit LPT1 bzw LPT2 verbunden sind)

rot: +
gelb: -
schwarz: -
(bei rot->gelb und rot->schwarz ergeben Messungen ca. +6,3 V)

Gruß
Achim

RCO
06.05.2005, 16:29
Also, so funktioniert es auf jeden Fall nicht. Die Polungen:
LPT 1: +
LPT 2: +
Masse (bei dir Vcc): -

Also ich glaube schon, dass es so funktioniert. Ich verwende halt PNP-Transistoren und umgehe so das Problem. Lp1 und 2 wirst du ja noch schalten, von daher sollte es ja egal sein, ob sie nun im Ruhezustand + oder - (0V) haben. Bei mir würdest du halt den entsprechenden Transsitor schalten, wenn du per Software - anlegst. Der Strom fließt jetzt von Rot nach gelb und/oder schwarz, je nachdem, was du an Lp1 und lpt2 anlegst.

steinachim
06.05.2005, 19:30
Ich hab das eben noch mal überprüft / ausprobiert:
1.) Also mit dem Spannungsteiler, das hab ich in meinen Schaltungen geändert (ich hatte nicht dran gedacht, dass Transistoren ja keinen / nur seeehr geringen Basisstrom, sondern nur die Basisspannung brauchen)
2.) Ich kann den LPT-Ports die Spannungen +5 V und 0 V zuweisen, negativ geht nicht -> PNP-Transistoren funktionieren also (wie ich das verstehe nicht)
3.) entsprechend ist die Masse (bei dir Vcc) negativ -> das Zusammenschalten von Vcc und rot ist also auf deine Weise unmöglich.

Gruß
Achim

P.S. entweder das oder ich stehe gewaltig auf dem Schlauch ;-)

Skilltronic
06.05.2005, 22:40
Hallo!

Nimm doch statt Transistoren den CMOS-IC 4066. Der enthält vier Schalter, die die du direkt über den LPT steuern kannst.

Gruss
Skilltronic

RCO
07.05.2005, 11:58
Ich kann den LPT-Ports die Spannungen +5 V und 0 V zuweisen, negativ geht nicht
entsprechend ist die Masse (bei dir Vcc) negativ

Oh, jetzt verstehe ichdein problem, da liegt natürlich ein schweres Missverständliniss vor. Vcc ist nicht 0V Masse oder GND, sondern eben 5V, also das Gegenstück zu GND ;-)
Dann brauch ich auch keine negativen Spannungen. Ich habe im Grunde deine Schaltng oben nur umgedreht, da sich die Transistoren ihre +5V dann von Rot holen können und rot ist ja eh immer verbunden. Ich hoffe, ich habs verständlich ausgedrückt. Verstehst du was ich meine?

Marco78
07.05.2005, 14:02
Die Idee mit einem 4066 hatte ich auch schon. Da aber jemand anders den Beitrag schneller gelesen hat erwähne ich das nur nochmal um den ganzen etwas Nachdruck zu verleihen.

steinachim
07.05.2005, 21:12
Also RCO, entweder verstehe ich deine Erklärungen nicht (d.h. ich sollte wohl meine Elektronikkenntnisse auffrischen ;-) ) oder wir reden immer noch aneinander vorbei. Ich versuche nochmal mein Problem anschaulich darzustellen:

An der Fernsteuerung habe ich drei Kontakte (rot, gelb und schwarz).
Zwischen rot und gelb bzw. rot und schwarz herrscht eine Spannung von 6V. Werden rot u. einer der anderen Kontakte kurzgeschlossen fließt ein Strom von rot zu dem entsprechenden Anschluss -> das Auto fährt vorwärts bzw. rückwärts.

Dies möchte ich (falls möglich) mit Transistoren, die mit dem Druckeranschluss eines Linux-Rechners gekoppelt sind realisieren:
An diesem Anschluss verwende ich ebenfalls drei Pins: 1, 2 und die Masse;
Ich kann Pin 1 und 2 so ansteuern, dass sich entweder eine Spannung von +5V oder eine Spannung von 0V zur Masse ergibt.

http://mitglied.lycos.de/steinachim/Schaltung4.jpg

Schalte ich nun Pin 1 ein (also +5V zur Masse), dann erhält T1 eine Basisspannung von 2,5V (Spannungsteiler) -> er schaltet durch und schließt rot und gelb kurz. Der Basisstrom über die Masse zurückgeleitet. Dasselbe soll für Pin 2 gelten.

So viel zur Theorie, leider klappt es so nicht, denn:
Über die Masse sind gelb und schwarz verbunden, wenn also einer der Transistoren durchschaltet, dann wird rot gleichzeitig mit gelb und schwarz kurzgeschlossen -> das Auto soll gleichzeitig vorwärts und rückwärts fahren und blockiert.

Wie kann ich also dieses doppelte kurzschließen verhindern?


@ Marco78 und SkillTronic:
Danke für den Tipp, allerdings wäre mir halt eine selbstgebastelte Alternative lieber - vor allem will ich jetzt dieses Problem lösen ;-)
Falls es nicht klappt werde ich wohl drauf zurückgreifen.

Gruß
Achim

uwegw
07.05.2005, 21:23
das einfachste und am besten funktionierendste wären wohl optokoppler... denn bei deinem problem kommt es halt auf galvanische trennung an...

Marco78
07.05.2005, 21:33
Ohne drüber nachzudenke rot mit einer Diode von schwarz trennen.
Rot und schwarz sind ja auch die Masse, die die Transistoren haben. Klappt das ganze so überhaupt? Die Masse hat dann ja ein anderes Potential wenn der jeweilige Transistor durchschaltet.

Das sind meine ersten Gedanken ohne genau über eine Lösung nachzudenken.

Ich denke auch ein(vier) Optokoppler wären das einfachste. Dann ist es im Prinzip egal wann wo welchen Potential anliegt.
Und vorwärts und rückwärts werden nicht mehr 'automatisch' gleichzeitig betätigt. Maximal nur noch durch die Software.

Oder soll es explizit mit Transistoren aufgebaut werden?

Skilltronic
07.05.2005, 21:50
Hallo

Dann ein anderer Vorschlag. Vielleicht ginge es, das ganze an den COM statt den LPT anzuschliessen. Der kann auch negative Spannungen im Bezug zur Masse ausgeben. Also Masse vom COM mit ROT verbinden und die anderen SCHWARZ und GELB dann über Transistoren draufschalten.

Gruss
Skilltronic

RCO
07.05.2005, 22:06
Ohne drüber nachzudenke rot mit einer Diode von schwarz trennen.

Hab ich auch erste gedacht, aber ich glaube nicht, dass es klappt, aus den selben Gründen die du genannt hast.


Also RCO, entweder verstehe ich deine Erklärungen nicht (d.h. ich sollte wohl meine Elektronikkenntnisse auffrischen ) oder wir reden immer noch aneinander vorbei.

Hm, ich weiß ehrlich nicht so ganz, wo dein Problem bei meiner Schaltung liegt. Meiner Meinung nach müsste sie Funktionieren (zumindest theoreitsch, ob in Realität irgendein Störfaktor mitspielt kann ich nicht sagen). Ich erläutere Meine Schaltung einfach mla kurz.

https://www.roboternetz.de/phpBB2/files/rc.gif

Also statt mit GND wie bei dir lege ich die Schaltung auf Vcc also 5 V (bzw. 4,8 oder was auch immer) aus. Die 2 PNP-Transistoren sind mit dem Emitter an Vcc geschaltet. damit sie Durchschalten brauchen sie 0V, die kommen aus dem LPT. Die Transistoren schalten also bei logisch 0 und nicht wie bei dir bei 1. Schaltet einer der Transistoren, dann fließt über Rot (technisch) der Strom durch den Transistor nach gelb bzw. schwarz. Hm, ich glaube mehr gibts dazu nciht zu sagen. Sonst sag doch einfach mal, was dir nciht klar ist. Ich will es nämlich auch lösen :mrgreen: O:) bzw klären.

FirstCoder
07.05.2005, 22:23
Ich stimme uwegw zu... mit Optokopplern ist es am 'leichtesten' zu realisieren. Ausserdem wäre dann die Schaltung universell einsetzbar.

RCO
07.05.2005, 22:47
Klar, optokoppler sind sowiso sinnvoll, um die beiden Schaltungen voneinadner zu trennen, aber es geht hier ja auch noch umsPrinzip.

steinachim
08.05.2005, 16:24
@ RCO:
Ich denke, ich hab deine Schaltung jetzt verstanden - nur nochmal um sicher zu gehen:

Vcc zu LPT1 bzw. LPT2 (normal): 5V
Wird LPT1 / LPT2 auf +5V gesetzt -> Vcc zu LPT1 / LPT2: 0V -> Transistor schalten durch

Mal schauen, ich hab zur Zeit weder PNP Transistoren noch Optokoppler da, was mir zuerst in die Finger kommt, probier ich aus ;-)
Vielleicht hol ich mir auch noch den CMOS IC 4066, dann hab ich wieder einiger zum spielen...

Gruß
Achim

RCO
08.05.2005, 16:35
Vcc zu LPT1 bzw. LPT2 (normal): 5V

Hm... leider kappier ich deine Rechnung nicht so ganz. Also normal haben wir ja 0V und 5V. Vcc ist 5V. Die Transisoren schalten bei null V oder zumindest bei unter 5 soweit ich weiß. Also wenn LPT imRuhezustand high ist (5V) dann solltest du zwischen Vcc und LPT 0V messen können oder 0,5 oder so. Der PNP ist halt genau umgekehrt wie der NPN.


Wird LPT1 / LPT2 auf +5V gesetzt -> Vcc zu LPT1 / LPT2: 0V -> Transistor schalten durch

Nein, die Transistoren schalten durch, wenn LPT 0V hat also low ist. Dann ist zwischen Vcc und LPT 5V.

steinachim
08.05.2005, 20:09
Hm... leider kappier ich deine Rechnung nicht so ganz.

Kannst du auch nicht - die hab ich wohl in einem Moment geistiger Umnachtung geschrieben, ich versteh sie selber nicht mehr ;-)

RCO
08.05.2005, 22:54
Kein Problem ;-) Hast du meine Schaltung verstanden? Sonst sag einfach wo es harpert.