PWM über LPT ansteuern

Fragen zu Elektronik und Elektro allgemein.Fragen zu Bauteilen wie z.B. Tansistoren, Dioden, Kondensatoren usw.

Fragen zu Elektronik und Elektro allgemein.Fragen zu Bauteilen wie z.B. Tansistoren, Dioden, Kondensatoren usw.

Moderator: Moderatorengruppe

PWM über LPT ansteuern

Neuer Beitragvon slutz am Donnerstag 17. März 2005, 18:57

Hallo Experten,

ich weis zwar nicht, ob ich hier im richtigen Thread bin aber ich versuchs einfach mal hier.

Ich möchte gerne anhand einer PWM eine Modellbahn steuern (die Geschwindigkeit der Züge)

Nun habe ich das Problem, dass alle PWM schaltungen die ich bisher gefunden habe nur über einen Poti zu regeln sind. Ich möchte aber gerne die Einstellung anhand einer Software über den LPT Port regeln und an diesem habe ich ja nur ein paar Pins, die ich ansteuern kann.

Die Modellbahn wird mit Gleichstrom betrieben.

Wäre nett, wenn mir jemand helfen könnte.

Viele Grüße

Stefan
slutz
Threadstarter
10613
 
Beiträge: 3
Registriert: Donnerstag 17. März 2005, 18:52

PWM

Neuer Beitragvon BernhardS am Freitag 18. März 2005, 19:53

zum Beispiel kann man mit den Signalen elektronische Potis rauf und runterzählen, je nach Anzahl müssten dann Schieberegister dazwischen.
Ich hab vor einiger Zeit mit PIC´s angefangen, und zwar mit dem Picaxe-System, da wäre es natürlich ziemlich einfach.
BernhardS
10641
Moderator
 
Beiträge: 4597
Registriert: Donnerstag 17. Februar 2005, 17:50
Postleitzahl: 84028
Land: Germany / Deutschland

Neuer Beitragvon Richi am Sonntag 20. März 2005, 09:51

Hoi ich hab zwar keine Ahnung was n PWM is aber der Gameport is von 0-15V regelbar.
Du könntest also mal versuchen dir eine Schaltung zu bauen die dir diese 0-15V so umsetz das du die Züge damit steuern kannst.
Richi
10671
Gold Mitglied
 
Beiträge: 380
Registriert: Montag 13. September 2004, 16:10

Neuer Beitragvon Skilltronic am Sonntag 20. März 2005, 11:50

Hallo.

Du brauchst ja im Prinzip pro Lok nur einen Pin am PC, den du entsprechend ein- und ausschaltest und der so z.B. über einen Leistungstransistor die Pulsweite der Versorgungsspannung regelt.

Für Basteleien - vor allem in Verbindung mit Fremdspannungen - würde ich aber eher zum COM-Port raten. Der ist Kurzschlussfest während der LPT doch relativ leicht kaputt gehen kann.

Wenn du eine Leuchtdiode zur Hand hast, kannst du das gleich mal testen. Schliesse sie direkt, ohne Vorwiderstand (kann nichts passieren) an den Masse- und DTR-Pin von COM1 an.

Bild
Bild

Ich habe ein Programm dazu in QBasic geschrieben, das im Original incl. des Anzeigetextes ganze 24 Zeilen lang ist.

http://www.skilltronics.de/runterlader/PWM.EXE

Damit lässt sich die angeschlossene LED mit den + und - Tasten in 100 Schritten hoch- und runterdimmen. Wenn die Leuchtdiode verkehrt herum angeschlossen ist macht das auch nicht viel. Sie ist dann nur bei 100% aus und umgekehrt. Schliesst du anstelle der LED einen Transistor oder Motortreiber-IC an, soltest du so auch schon die Fahrgeschwindigkeit regeln können.

Ich weiss nicht, ob sich Antriebsleistung und und Pulsweite linear proportional zueinander verhalten, aber das liesse sich in der Software sicher anpassen. Ein weiterer Vorteil gegenüber analog geregelten PWM-Generatoren. Die Sprache QBasic ist leicht zu erlernen - viele Befehle sind für solche Steuerungssachen ja nicht nötig - und man kann es im Gegensatz zu VisualBasic überall frei herunterladen und verwenden. Wenn es dich interessiert, schicke ich dir auch gerne den Quellcode.

Unter manchen neuen Windows-Versionen ist der Zugriff auf den COM mit den DOS-exes, die mit QBasic erstellt wurden nicht so einfach möglich. Unter Win2000 soll es z.B. nicht gehen, bei mir (XP-Pro) funktioniert es einwandfrei. Wieviele Züge willst du denn Steuern?

Gruss
Skilltronic
Benutzeravatar
Skilltronic
10675
Bronze Mitglied
 
Beiträge: 62
Registriert: Donnerstag 24. Februar 2005, 11:50

Neuer Beitragvon slutz am Montag 21. März 2005, 06:33

@skilltronic: Auf DOS Ebene wäre die Schaltung gar kein Problem. Aber ich habe im ersten Beitrag vergessen dazu zuschreiben, dass das ganze unter WinXP laufen soll. Und unter WinXP ist das mit einer echzeit ausgabe ein kleines Problem da nicht bei jeder Mausbewegung sich die Geschwindigkeit der Züge ändern soll.

@Richi: weißt du denn wie man den Gameport ansprechen kann?

@BernhardS: hast du mir vielleicht einen Schaltplan für so einen elektronischen Poti? Ich habe bisher weder bei Google noch in irgendwelchen Foren etwas brauchbares gefunden.
PIC's sind ein kleines Problem da ich keine Möglichkeit habe PIC zu programmieren und auch nicht weiß wie das geht.
Viele Grüße

S.Lutz
slutz
Threadstarter
10698
 
Beiträge: 3
Registriert: Donnerstag 17. März 2005, 18:52

Neuer Beitragvon Skilltronic am Montag 21. März 2005, 08:42

Dann gib einfach nen 8-Bit Wert aus über den LPT oder mittels seriell-parallel-Wandler am COM, bau dir einen Taktgeber und einen Zähler, der bei Erreichen des eingestellten Wertes von 0-255 den Strom ein- und beim roll-over wieder ausschaltet oder umgekehrt.

Hast du denn überhaupt schonmal ausprobiert, ob sich XP so stark auswirkt? Es gäbe übrigens auch die Möglichkeit im Programm mit der unabhängig laufenden Echtzeituhr zu arbeiten, da lassen sich auftretende Verzögerungen ausgleichen.

Skilltronic
Benutzeravatar
Skilltronic
10700
Bronze Mitglied
 
Beiträge: 62
Registriert: Donnerstag 24. Februar 2005, 11:50

Neuer Beitragvon Richi am Montag 21. März 2005, 15:54

Wie es genau geht hängt immer von der verwendeten Sprache ab (asm,C,C++,C#,Pascal/Delphi, VB, PB,QB ect ec)
Such dir ne Sprache aus die dir gefällt (ich würd dir delphi oder eine Basicart vorschlagen) und dann noch ein nettes Forum und schon kannst den Gamport ak MIDI-Port ak Joystickport schon beschreiben :P
Richi
10714
Gold Mitglied
 
Beiträge: 380
Registriert: Montag 13. September 2004, 16:10

Neuer Beitragvon slutz am Dienstag 22. März 2005, 07:05

@Skilltronic: und wie bau ich mir sowas? Hast du mir bitte einen schaltplan?

@Richi: Es soll über VB programmiert werden.
Viele Grüße

S.Lutz
slutz
Threadstarter
10718
 
Beiträge: 3
Registriert: Donnerstag 17. März 2005, 18:52


Zurück zu Fragen zur Elektronik

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 40 Gäste