Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Parallelport mit io.dll - kleines problem (https://www.delphipraxis.net/45627-parallelport-mit-io-dll-kleines-problem.html)

BoondockDuckling 9. Mai 2005 16:04


Parallelport mit io.dll - kleines problem
 
hi
ich habe mich jetzt die letzten tage ziemlich ausführlich mit parallelport ansteuern beschäftigt (und viele threads und seiten durchgelesen). mit der io.dll von http://www.geekhideout.com/iodll.shtml ist es an und für sich auch sehr einfach, test mit leds funktionieren einwandfrei.

Gestern und heute habe ich mir eine schaltung für einen schrittmotor zusammengelötet (einfach 4 transistoren+enstprechende dioden und widerstände zum schutz des parallelportes). es will einfach partout nicht funktionieren. (schaltung funktioniert, habe zum "manuellen steuern" taster eingebaut die den lpt "simulieren". P.s. ziemlich holprige angelegenheit nen s.motor "von hand" zu steuern ;-))

Also habe ich mal nachgemessen.
Ergebniss: auch wenn die ports vom lpt off (low??) sind ist noch eine spannung (gemessen pi*daumen um die 0,008V ; das bei 2 verschiedenen pcs) --> die transistorschaltung legt trotzdem auf alle 4 leitungen des motos strom und so kann er sich ja nicht drehen.

Ich hab in den Threads zum Thema öfters high/low schalten gelesen. Heisst das an/aus schalten oder high/low im Sinne von hoher und niedriger Spannung? (also ca. 2,2V bei eingeschaltetem port und meine gemessene 0,008V bei ausgeschaltetem port)

konkrete frage wäre jetzt: Wie kann ich den Port 'OFF' schalten so dass keine Spannung fliesst?
(mit io.dll)
'PortOut($378, 0);' lässt die restspannung von 0,008V über.


P.s. Selbiges habe ich vor ein paar Jahren mal unter DOS mit TurboPascal gemacht, da hat es funktioniert. :gruebel:

merci

flomei 9. Mai 2005 16:10

Re: Parallelport mit io.dll - kleines problem
 
Ich würde empfehlen "unempfindlichere" Transistoren zu nehmen.
Der Port hat halt diese Minimalspannung und ich glaube nicht das man die komplett wegschalten kann...

MFG Florian :hi:

Borti 9. Mai 2005 16:35

Re: Parallelport mit io.dll - kleines problem
 
Hallo!
ich hab mich innerhalb des letzten jahres ausgiebig mitt dem Thema LPT beschäftigt.
Es gibt in der Digitalelektronik nur zwei erlaubte Zustände (TTL-Pegel):
Low wird durch eine logische 0 representiert und bedeutet, dass die Spannung am Pin zwischen 0 und 0,4V an Ausgängen und zwischen 0 und 0,8V an Eingängen anliegt.
High wird von einer logischen 1 Verkörpert und entspricht einer Spannung am Pin von 2,4V bis 5,0V an Ausgängen und von 2,0V bis 5,0V an Eingängen.
=> deine gemessenen Spannungen von 0,008V sind soweit erlaubt.
Für die Schaltung hätte ich zwei Empfehlungen:
Nimm als "Sicherungen" den IC 74HCT244. Der raucht schon bei Strömen auf, die noch innerhlab der Werte liegen, für die IBM garantiert (laut Datenblatt und http://www.timgoldstein.com/CNC/ParallelPortPrimer.htm) Der IC hat sogar einen Tri-State Ausgang und verhindert somit Beschädigungen des Ports oder der Schaltung, wenn an beiden zwei undefinierte Zustände anliegen (zum Beispiel beim Hochfahren)
Als Transitoren wären MOSFETS angebracht, da sie sich über Spannungen und nicht über Ströme steuern lassen und somit den Port nicht belasten. (Ich muss aber zugeben, dass ich selber noch nie mit ihnen gearbeitet hab :lol: )
Gruß,
Borti

Borti 9. Mai 2005 17:26

Re: Parallelport mit io.dll - kleines problem
 
Liste der Anhänge anzeigen (Anzahl: 1)
Mir fällt da grad noch ein, dass bei einem Transistor zwischen Basis und Emitter 0,7V abfallen. Somit dürfte bei 0,008V gar kein Strom fließen. Ich hab mal einen Schaltplan angehängt, wie ich mir die Schaltung spontan vorstellen könnte, damit wir alle über ein- und dasselbe sprechen.

Blutiger Anfänger 9. Mai 2005 20:56

Re: Parallelport mit io.dll - kleines problem
 
Hallo,

die gemessene Spannung von 8 mV, ist im TTL - Bereich praktisch als 0 definiert, undefinierte Bereiche sind,
wenn ich das noch richtig in Erinnerung habe, 1,4 - 1,8 V.
Du solltest bei Deiner Schaltung auf jeden Fall den Tipp von Borti beruecksichtigen, (IC 74HCT244),
oder Optokoppler zur galvanischen Trennung einsetzen!
Optokoppler bieten einen Spannungsschutz bis zu mehreren 1000 V (wenn auch fuer TTL nicht noetig)!
Da aber nicht nur im Fehlerfalle des Schrittmotors, auch Induktionsspannungen auftreten, sollte man das nicht vernachlaessigen!
Du kannst aber auch unter www.Reichelt.de (Stichwort:"Schrittmotor")suchen, da gibt es fuer das LPT - Port
schon fertige Steuerungen (ca. 25,-- Euro) !

Gruss OPA!

BoondockDuckling 10. Mai 2005 20:04

Re: Parallelport mit io.dll - kleines problem
 
hi
ich hab jetzt eigentlich nicht mehr viel hinzuzufügen. wie es scheint liegt es wohl an meiner schaltung irgendwie, ich weiss nicht warum
ich bin halt kein profi, alles was ich weiss habe ich mir selbst erarbeitet :freak:

wie ich jetzt weitermache weiss ich nicht, eventuell bau ich mir ne art "interface" in dem ich jeden für mich brauchbaren (wie blutiger anfänger auch gesagt hat) mit optokopplern schütze, ne transitorschaltun dahinter ein breites spektrum von strömen und geräten hängen kann.

nur.... ich hab kein geld, job sowieso net, zeit auch wenig und von daher wird die nächste reicheltbestellung frühestens bei meinem nächsten gehalt geschehen :gruebel:
die schrittmotorinterface module von reichel gefallen mir, aber ich habe noch keinen wirklichen verwendungszweck für den motor. War eigentlich nur ne Spassaktion nach dem Motto "ma schauen obs klappt" (wer in Geschichte gut aufgepasst hat "Ansteuern des Ansteuerns willen" ... ;-))

anyhow .... irgendwann mach ich da mal wieder weiter, ich such mir erst mal eine neue herauforderung vll aber mal ohne LPT und löten (umlöten dauert länger als neu compilieren) :D

aber danke für die hilfe


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:48 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz