Forum Strippenstrolch

Forums-Ausgangsseite

log in | registrieren

zurück zum Board
Thread-Ansicht  Mix-Ansicht  Reihenfolge
Volker

E-Mail

Bonn,
14.02.2006, 17:43
 

Schaltung zur Eisenbahnsteuerung..

Hallo,also diesmal möchte ich mich etwas genauer ausdrücken, da ich mich in einem anderen Thread in eine Sackgasse manövriert habe. Das Querlesen und selber kombinieren war auch nicht so der Hit, leider. ;-)Ich würde gerne meine Modelleisenbahn vollständig mit dem PC Steuern. Programmiertechnisch ist das für mich kein Problem, die Schnittstelle PC<>Eisenbahn dagegen leider schon. Kommerzielle Systeme die die Hersteller anbieten scheiden auf Grund der viel zu hohen Kosten aus. Daher möchte ich was eigenes basteln, natürlich spielt auch der Spaßfaktor dabei eine Rolle. Finde das Basteln mit der Elektronik hoch interessant. Und wie gesagt, es sollte den Geldbeutel schonen.Also meine Vorstellung ist eine Schaltung mit der ich möglichst viele Schalter bekomme um Verbraucher zu schalten (Ein/Aus und Taster). Dabei sollen Weichen genauso geschaltet werden wie Beleuchtungen etc. Das Tüpfelchen auf dem i wäre dann noch, wenn es möglich wäre Signale von der Bahn zurück zu bekommen um eine Besetztmeldung der Gleise zu ermöglichen.Nun ist guter Rat gefragt, in welche Richtung ich gehen soll. Kann man die Parallelschaltung aus dem anderen Thread aufbohren (Vielleicht mit zwei PAR Ports um an 16 Bit zu kommen), oder muss hier ein ganz anderes System her um zum Erfolg zu kommen. Ein Bussystem dürfte vermutlich den Rahmen sprengen, oder?Danke schon mal vorab für die spannenden Antworten.Volker

kalledom(R)

14.02.2006, 18:26

@ Volker

Schaltung zur Eisenbahnsteuerung..

Hallo Volker,ein Drucker- / Parallelport hat neben den 8 Datenleitungen Steuerleitungen wie Strobe, etc. Wenn es 2 weitere Bits gibt, hast Du gute Karten. Wenn Du zusätzlich Daten einlesen möchtest, brauchst Du noch ein weiteres Bit:1. Bit = Strobe-Signal zum Latchen von 8 Adress-Bits2. Bit = Strobe-Signal zum Latchen von 8 Daten-Bits3. Bit = Adresse bzw. Daten speichern / Daten einlesenNeben dieser Frage mußt Du auch noch Folgendes überdenken: Eine Beleuchtung oder das Mühlrad werden auf Dauer eingeschaltet. Mit einer Weiche oder Signal darfst Du das nicht; die Spule wird irgenwann schwarz.Es gibt die Möglichkeit der Software-Steuerung, was 2 Zugriffe bedeutet: Weiche Nr. x einschalten, ca. 100 ms warten, Weiche Nr. x wieder ausschalten.Eine Hardware-Lösung wäre, vor den Ausgängen für Weichen und Signale monostabile Kippstufen einzusetzen, die nach 100 ms den Ausgang wieder abschalten.Eine nächste Frage wäre, möchtest Du das Ganze modular und erweiterbar aufbauen, also immer ein \'Platinchen\' für 16...32 Ausgänge und / oder Eingänge, anreihbar und mit einem DIP-Schalter kodierbar.Mit I2C geht das auch; dazu brauchst Du einen µC und die 8 Bit I/O-Bausteine (max. 2 x 8 Bausteine sind möglich). Die sind \'etwas\' teurer wie 74LS- oder 74HC-IC\'s.Also, es gibt noch viel zu überlegen.Was für eine Modellbahn hast Du ?

Volker

E-Mail

Bonn,
14.02.2006, 19:35

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Hallo Karl-Heinz,danke für die schnelle Antwort:» Hallo Volker,» ein Drucker- / Parallelport hat neben den 8 Datenleitungen Steuerleitungen» wie Strobe, etc. Wenn es 2 weitere Bits gibt, hast Du gute Karten. Wenn Du» zusätzlich Daten einlesen möchtest, brauchst Du noch ein weiteres Bit:» 1. Bit = Strobe-Signal zum Latchen von 8 Adress-Bits» 2. Bit = Strobe-Signal zum Latchen von 8 Daten-Bits» 3. Bit = Adresse bzw. Daten speichern / Daten einlesenOK, ich denke das sollte kein Problem sein diese 3 weiteren Bits aufzutreiben. Wie gesagt, im zweifelsfalle würde ich es über zwei Ports machen, denke aber das ich die Steuerleitungen ansprechen kann. Also die gewünschten 11 Bit sollten da sein.» Neben dieser Frage mußt Du auch noch Folgendes überdenken: Eine» Beleuchtung oder das Mühlrad werden auf Dauer eingeschaltet. Mit einer» Weiche oder Signal darfst Du das nicht; die Spule wird irgenwann schwarz.Naja, zumindest meine Weichen haben Endschalter, die braten also so schnell nicht durch. Davon mal abgesehen würde ich einen Taster programmieren, so wie Du es oben beschrieben hast. Also Ein/Aus ist völlig ausreichend, eine Hardwarelösung um Taster zu bekommen ist nicht notwendig.» Eine nächste Frage wäre, möchtest Du das Ganze modular und erweiterbar» aufbauen, also immer ein \'Platinchen\' für 16...32 Ausgänge und / oder» Eingänge, anreihbar und mit einem DIP-Schalter kodierbar.Das wäre meine Traumlösung. Da ich meine Anlage komplett modular gebaut habe, wünsche ich mir die Steuerungshardware genauso. Mir wären auch noch Module mit nur 4 oder 8 Ausgängen recht, also 4-16 Ausgänge wäre Ideal und sowohl Output als auch Input.» Mit I2C geht das auch; dazu brauchst Du einen µC und die 8 Bit» I/O-Bausteine (max. 2 x 8 Bausteine sind möglich). Die sind \'etwas\' teurer» wie 74LS- oder 74HC-IC\'s.Zu dem Thema habe ich an andere Stelle was gefunden, da wurde davon gesprochen das man maximal 496 \"Weichen\" mit dieser Lösung schalten kann. Was natürlich sicherlich ausreichend sein sollte. » Also, es gibt noch viel zu überlegen.» Was für eine Modellbahn hast Du ?Ich selber habe eine Mixtur aus verschiedenen Gleichstrom Systemen (Fleischmann, Trix, Roco etc.) Die Peripherie könnte aber auch problemlos mit Wechselspannung betrieben werden, bin ich also variabel.

kalledom(R)

14.02.2006, 23:07

@ Volker

Schaltung zur Eisenbahnsteuerung..

Hallo Volker,hier ein kleiner Vorgeschmack, was da auf Dich zu kommt. Der Schaltplan ist für 16 Ein- und Ausgänge. Das Ganze kannst Du bis zu 255 mal aufbauen.AS = AdressStrobe (high-aktiv)DS = DataStrobe (high-aktiv)RD# = Read Input (low-aktiv)RES# = Reset (low-aktiv)[image]Noch kannst Du das Ganze abblasen oder anders aufbauen :-)

Volker

E-Mail

Bonn,
15.02.2006, 10:23

@ kalledom

Schaltung zur Eisenbahnsteuerung..

» Noch kannst Du das Ganze abblasen oder anders aufbauen :-)Hallo Karl-Heinz,das sieht gut aus, warum sollte ich das abblasen? ;-)So ganz verstehe ich es zwar noch nicht wie ich das Programmtechnisch anspreche, ich denke aber das lässt sich lösen. Sehe ich das richtig, das ich die Daten/Steuerleitungen, sowie die Spannungsversorgung von Modul zu Modul durchschleifen kann? Den D10 vom ULN versorge ich dann mit der Schaltspannung separat, denke ich. Der Verkabelungsaufwand sieht ziemlich gross aus, denke da sollte ich mal jemanden suchen der mir Platinen ätzen kann. Die meisten Bauteile habe ich ja hier liegen, wenn ich mir den 688 und den 00 noch zulege, kann ich dann die Versuchsschaltung aufbauen, oder kommt noch weitere Hardware dazu?mfg Volker

Skilltronic(R)

15.02.2006, 12:59

@ Volker

Schaltung zur Eisenbahnsteuerung..

HalloIch benutze zur Erweiterung der Ein- und Ausgänge der PC-Schnittstelle Schieberegister vom Typ 4021 bzw. 4094. Diese bieten meiner Meinung nach einige Vorteile.- Man braucht weniger Bauteile. Eine Erweiterung auf acht Ein- oder Ausgänge besteht jeweils nur aus einem IC, bei den Ausgängen muss bei Bedarf auch z.B. ein ULN 2803 nachgeschaltet werden. Von diesen Erweiterungen können beliebig viele hintereinander geschaltet werden.- Es ist billiger. Es sind nicht nur weniger ICs, 4021 und 4094 kosten auch nur 0,27 bzw. 0,28 Euro. Und die benötigte Platine wird kleiner.- Es sind für beliebig viele Erweiterungen beider Typen insgesamt nur 4 Steuerleitungen nötig. Zwei für das Takt- und Übernahmesignal, und ein Aus- und ein Eingang für die Daten.Weil man so wenig Steuerleitungen braucht, läuft das bei mir an der seriellen Schnittstelle, nicht am Druckerport. Die ist kurzschlussfest und unempfindlicher als der LPT. Über die entsprechenden Register lassen sich auch am COM alle Leitungen bis auf RxD einzeln steuern bzw. lesen. Die Programme dazu schreibe ich allerdings noch in steinzeitlichem QuickBasic. Aber du meintest ja, dass dieser Teil kein Problem für dich wäre. Ist im Prinzip ja das selbe wie am Parallelport nur mit anderen Registeradressen.GrussSkilltronic

kalledom(R)

15.02.2006, 15:13

@ Volker

Schaltung zur Eisenbahnsteuerung..

Hallo Volker,was Du noch dazu machen könntest, wäre an den Eingängen einen ULN 2803, damit bist Du vom TTL-Pegel weg.Ich wollte Dir zeigen, wie hoch der Verbindungs-Aufwand bei 8 Bit Parallel ist. Da wären Platinen schon angebracht. Die Software muß die 255 x 8 Bits verwalten. Beim Einschalten sind alle Bits 0, wenn Nummer 74 geschaltet wird, dann ist es 74 / 8 = 9 Rest 2 = Speicher 9, Bit 2, also recht einfach zu verwalten. Dieses geänderte Byte muß dann noch ausgegeben werden: AdressByte ausgeben, AdressStrobe kurz setzen, DatenByte anlegen, DatenStrobe kurz setzen, fertig.Die Eingänge sollten zyklisch abgefragt werden: AdressZähler intern hochlaufen lassen, jeweils AdressByte ausgeben, AdressStrobe kurz setzen, ReadSignal nach Low, Daten einlesen, ReadSignal wieder High, fertig. Statt ReadSignal High kann auch die nächste Adresse gesetzt werden.Kommen wir zum Vorschlag von Skilltronik. Mit Schieberegistern kennst Du Dich ja bereits sehr gut aus :-)Der Verbindungs-Aufwand ist deutlich geringer. Nachteil: Wenn sich auch nur 1 Bit ändert, sind so viele Takte erforderlich, wie es Ausgänge gibt, z.B. bei 256 Aus- oder Eingängen sind 256 Takte erforderlich; die kosten Zeit. Die ULN 2803 (oder vergleichbare Treiber) sind auch hier erforderlich. Schieberegister gibt es als CMOS-Bausteine und die Schaltung kann mit 5...15 V betrieben werden.Ich stelle nachher noch eine Schaltung mit Schieberegistern ein.@SkilltronikTxD und RxD haben ja Start- und Stop-Bits; werden die Handshake-Leitungen dafür benutzt ?

Volker

E-Mail

Bonn,
15.02.2006, 15:59

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Hallo Karl-Heinz,Danke, das hört sich an als wenn ich das hinbekommen kann. Wenn nicht, dann frage ich weiter. ;-)Die Ausführung von Skilltronic hört sich auch sehr interessant an, allerdings kann ich mir ohne Schaltplan nicht sehr viel darunter vorstellen. Bin halt kein Elektroniker. Deine Einwände dazu sind allerdings auch nicht zu unterschätzen, klingt relativ aufwendig zu Steuern.An anderer Stelle im Netz habe ich einen Decoder gefunden der mit wenig Bauteilen aufgebaut war. Der Vorteil der Lösung war, das sie mit nur 2 Drähten funktioniert die Spannungsversorgung für Schaltung und Verbraucher zugleich sind und die auch noch die Daten übertragen. Das wäre sicherlich auch eine feine Lösung. Allerdings habe ich dort keinen Hinweis gefunden, wie ich diese Elektronik ansteuern kann. Denke das für den Decoder sicher noch eine Ansteuerungshardware notwendig ist. Der Decoder wurde mit einem MC145027 und einem L293 + ein paar Bauteilen zum Spannungsumwandeln aufgebaut.So das wären 3 Ansätze, wobei der von Dir zuerst genannt sich für mich schon mal soweit erklärt, das ich mich in der Lage sehe das umzusetzen.» was Du noch dazu machen könntest, wäre an den Eingängen einen ULN 2803,» damit bist Du vom TTL-Pegel weg.Das heisst ich kann den Darlington auch in umgekehrter Richtung benutzen? Das klingt gut.» Ich wollte Dir zeigen, wie hoch der Verbindungs-Aufwand bei 8 Bit Parallel» ist. Da wären Platinen schon angebracht. Die Software muß die 255 x 8 BitsDas ist Dir gelungen, denke eine Verdrahtung hat viel Potential für Fehler. :-)» Ich stelle nachher noch eine Schaltung mit Schieberegistern ein.Bin mal gespannt darauf. :-)mfg Volker

kalledom(R)

15.02.2006, 16:48
(editiert von kalledom, 15.02.2006, 16:54)

@ Volker

Schaltung zur Eisenbahnsteuerung..

Hallo Volker,MC 145027 ist das Motorola-Format, was Märklin verwendet. Da kann ich dir alles Mögliche zu anbieten, sogar eine komplette digitale Modellbahnsteuerung :-)Schau Dir mal folgenden Thread an: http://www.strippenstrolch.de/forum/board_entry.php?id=2191 und dann kannst Du noch jede Menge Infos zu \'meiner\' MOBS (MOdellBahnSteuerung) laden von:http://www.domnick-elektronik.de/download.htm. Preise findest Du hier Und noch der Schaltplan der seriellen \'Geschichte\'.PS: Der 145027 ist nur für Ausgänge zu steuern, nicht für Zustände einzulesen ![image]Viel Spaß beim Nachdenken :-)

Skilltronic(R)

15.02.2006, 22:36

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Hallo» @Skilltronik» TxD und RxD haben ja Start- und Stop-Bits; werden die Handshake-Leitungen» dafür benutzt ?Ich benutze kein Protokoll mit Start-, Stop-, oder Paritätsbits oder fester Baudrate, sondern setze und lese einfach direkt die einzelnen Pins des COM-Port. Die Schaltung für die Ausgangserweiterung sieht dann so aus:[image]Die Zenerdioden fangen einerseits die negative Spannung ab, die die serielle Schnittstelle im Low-Zustand ausgibt und begrenzt die positive auf 4,7 Volt um sie auf TTL-Pegel zu bringen. Da der COM nur begrenzten Strom ausgibt, sind nichtmal Vorwiderstände nötig. Über Pin 9 wird der Übertrag zum Dateneingang des nächsten IC weitergegeben. Die Eingangserweiterung wird genauso angeschlossen und mit einem Eingang verbunden. Die Clock- und Strobeleitung teilen sich dann alle ICs.Das Schieben verlangsamt die Ausgabe zwar, dafür können alle Ausgänge gleichzeitig geschaltet werden und eine Modelleisenbahn stellt ja auch nicht allzuhohe Ansprüche an die Geschwindigkeit. Mit einer Taktrate von 10kHz könnte man 256 Ausgänge ca. alle 1/40 Sekunde \"auffrischen\". Das sollte reichen. Ausserdem muss man bei beiden Versionen ja sowieso ständig die Eingänge überwachen. Das man für ein Bit alle Ausgänge komplett durchschieben muss ist also auch halb so wild finde ich.» klingt relativ aufwendig zu Steuern.Ist es aber nicht. Du legst zwei Arrays an, die so gross sind wie du Ein- bzw. Ausgänge hast. Die gewünschten Werte (1 oder 0) werden in das Ausgabearray geschrieben und nacheinander auf den Datenausgang gelegt. Dann wird der Eingang gelesen und dessen Wert an die entsprechende Stelle des Eingangsarrays geschrieben. Die Taktleitung wird anschliessend kurz auf high gesetzt (der Takt schiebt ja auch die Eingangserweiterungen weiter). Sind alle Bits eingelesen und ausgegeben, wird ein Strobesignal gesendet, das einerseits die Ausgänge setzt, andererseits den aktuellen Zustand der Eingänge für den nächsten Schreib-/Lesezyklus in die Schieberegister übernimmt. Das ist schon das ganze Programm.GrussSkilltronic

kalledom(R)

15.02.2006, 23:02

@ Skilltronic

Schaltung zur Eisenbahnsteuerung..

Hallo Skilltronic,so hatte ich es auch gedacht, wußte jedoch nicht, daß man am PC die Pins der SIO direkt setzen und abfragen kann.TxD = SDO = Seriell Data OutStrobe = PS = Parallel SetDTR = SCL = Seriell ClockZusätzlich:RxD = SDI = Seriell Data InRTS = PL = Parallel LoadMit welcher Software oder DLL kommt man direkt an die Pins der SIO ?

Skilltronic(R)

15.02.2006, 23:46

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Hallo» Mit welcher Software oder DLL kommt man direkt an die Pins der SIO ?Die einzige Programmiersprache, mit der ich mich einigermassen auskenne ist Q- bzw. QuickBasic. Das ist wie gesagt etwas altertümlich und läuft in der DOS-Box, aber leistet mir immer noch gute Dienste. Das Ansprechen der Pins läuft über die Steuerregister der Schnittstelle. Die werden in QB mit INP() und OUT gelesen und geschrieben und es funktioniert bei mir (im Gegensatz zum Parallelport) sogar problemlos unter XP-Pro. Der TxD-Pin von COM1 wird. z.B. über das 7. Bit des Registers mit der Adresse 1019 (dezimal) gesteuert. Der BefehlOUT 1019, 64setzt dieses Bit und schaltet den Pin ein. Diese Methode sollte prinzipiell mit vielen Programmiersprachen umzusetzen sein. In Pascal sieht der gleiche Befehl z.B. so aus:Port [1019] := 64;Einzige Ausnahme ist die RxD-Leitung. Bei der ist meines Wissens so ein Zugriff nicht möglich. Bei VisualBasic braucht man dazu noch die port.dll. Damit bin ich aber noch nicht über das Experimentierstadium hinausgekommen. GrussSkilltronic

Volker

E-Mail

Bonn,
16.02.2006, 17:38

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Tja, nun ist guter Rat teuer. :-)Ich tendiere ja eigentlich zu der parallelen Schaltung, aber das serielle hat auch seinen Reiz. Die Bauteile für die erste Schaltung habe ich hier liegen, das werde ich erst einmal versuchen. An dem seriellen versuche ich mich aber auch mal. Das was sich besser programmieren lässt, werde ich dann nehmen. ;-)mfg Volker

kalledom(R)

16.02.2006, 22:16

@ Volker

Schaltung zur Eisenbahnsteuerung..

Die Reihenfolge der 8 Parallel-Bits kannst Du beliebig wählen, besonders bei den 273-ern. Eingang und Ausgang müssen dabei natürlich zusammen gehören.Bei den 273-ern z.B.: 3/2 - 18/19 - 17/16 - 4/5 - 7/6 - 14/15 - 13/12 - 8/9

Volker

E-Mail

Bonn,
16.02.2006, 22:48

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Ist das eigentlich Zufall, das ich mit den 273er die richtigen Steinchen gekauft hatte? Oder hast Du die eingesetzt,weil Du eben wusstest das ich die habe? :-)Die Programmierung ist mir wie gesagt noch nicht ganz klar, aber wenn ich morgen die Schaltung zusammen habe, werde ich es ausprobieren. Mir war übrigens garnicht bewusst, das ich die 8 Datenleitungen der PAR auch zum einlesen nehmen kann. Ist mir neu...

kalledom(R)

17.02.2006, 00:39

@ Volker

Schaltung zur Eisenbahnsteuerung..

Nein, nicht weil Du 273-er schon hast, sondern weil der 273 einen Clear hat und somit ein definierter Einschalt-Zustand möglich ist, nämlich alles Null / Aus.Ob Du die PAR als Eingang nehmen kannst, ist mir nicht bekannt. Bei der seriellen \'Geschichte\' war von der SIO die Rede.

Volker

E-Mail

Bonn,
17.02.2006, 14:25

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Achso, dann habe ich den Schaltplan falsch interpretiert. Das sah für mich so aus, als wenn Du die 8 Eingänge auf die gleichen Leitungen gelegt hast, wie die Ausgänge. So hätte ich das jetzt eigentlich auch gemacht, dann muss ich mal sehen wie ich die in den PC bringen kann.

kalledom(R)

17.02.2006, 17:42

@ Volker

Schaltung zur Eisenbahnsteuerung..

Der Schaltplan ist schon richtig; ein bidirektionaler 8 Bit Adress-/Daten-Bus, wie er z.B. an einen µC angeschlossen würde und am Parallel-Port angeschlossen werden soll.Ich kann Dir nur nicht sagen, wie das Parallel-Port auf Eingang geschaltet wird.

Volker

E-Mail

Bonn,
18.02.2006, 14:43

@ kalledom

Schaltung zur Eisenbahnsteuerung..

Es geht, der Parallel-Port hat allerdings nur 5 Eingangsleitungen und 11 Ausgangsleitungen. Mal sehen wo ich die 12te Leitung herbekomme, 5 Eingänge wären ja auch ausreichend. Werde mich mal an die Schaltung ransetzen, mal sehen was draus wird.mfg Volker

m.h.

18.02.2006, 22:15

@ kalledom

Meine Fragen

Hallo!Ich mische mich hier mal ein, da ich ja das andere Thema ins Rollen brachte und ich dieses hier interessant finde.Aber ich komme hier nicht ganz mit. Also meine Fragen zum Schaltplan:-Was bedeutet das \"SW\" und was passiert mit diesen Ausgängen?-was machen die IC\'s bei den Adresslatch, Datenlatch, Dekoder und Ausgängen?-wofür ist der pin 19 am adrDekoder-wofür ist der clk/was passiert da?Bin dankbar für Antworten.

kalledom(R)

18.02.2006, 23:07

@ m.h.

Meine Fragen

Hallo,» -Was bedeutet das \"SW\" und was passiert mit diesen Ausgängen?Das ist ein 8-pol. DipSwitch (Mäuseklavier). Da sind keine Ausgänge (Q ist doof gewählt), sondern Eingänge. Adresse (P) und DipSwitch (Q) werden verglichen; bei Gleichheit kommt am Pin 19 P=Q ein High raus.» -was machen die IC\'s bei den Adresslatch, Datenlatch, Dekoder und Ausgängen?Auf den 8 Bit-Bus ist folgender Ablauf:AdressBits anlegen und latchen, DatenBits anlegen und latchen und Eingangsdaten lesen.Beim AdressLatch werden die kurz anliegenden 8 AdressBits \'festgehalten\' / gelatcht; sind die AdressBits gleich der Einstellung des DipSwitch, dann werden im weiteren Verlauf alle die Bausteine angesprochen, die irgendwie über Gatter oder direkt am Pin 19 P=Q angeschlossen sind.Nach einer AdressDekodierung werden im Datenlatch die kurz anliegenden 8 DatenBits \'festgehalten\' und ausgegeben. Die DatenLatchs geben die gelatchten 8 Bits weiter an 8 Treiber (ULN 2803). Daran können Gleichstrom-Lasten bis 500 mA angeschlossen werden.» -wofür ist der pin 19 am adrDekoderSiehe oben» -wofür ist der clk/was passiert da?Die 8 Bits an den Eingängen der D-Register / Speicher / Latch (273, 373, 374, und viele mehr) werden bei einer steigenden Flanke (bei manchen Bausteinen bei High-Pegel) am Clk-Eingang in den Registern gespeichert / festgehalten und an den Ausgängen ausgegeben, bis ein neues Clk-Signal eine evtl. andere BitKonstelation übernimmt.Ich hoffe, es hilft Dir weiter.

m.h.

19.02.2006, 01:15

@ kalledom

Meine Fragen

Hallo!Danke für die Antwort!» Ich hoffe, es hilft Dir weiter.Allerdings, das tut es! (Wie so oft :-) )Das bedeutet ja, dass man mehrere Ausgänge gleichzeitig schalten kann, oder?

kalledom(R)

19.02.2006, 13:32

@ m.h.

Meine Fragen

Richtig ! Immer 8 Bits = 1 Byte gleichzeitig / parallel. Da 8 (Adress-) Bits 256 Möglichkeiten ergeben, kann die Schaltung 255 mal aufgebaut werden; Adresse 0 ist für Reset reserviert. Es können also bis zu 255 * 8 = 2040 Ausgänge geschaltet und Eingänge abgefragt werden.

Rainer Kalz

Münster,
03.03.2006, 14:07

@ Skilltronic

Schaltung zur Eisenbahnsteuerung..

Guten Tag,ich habe diesen Thread hier gefunden und aufmerksam gelesen. Ich interessiere mich für die serielle Schaltung. Wo kann man den Baustein 4021 bekommen? Weder Reichelt, Conrad und andere Onlineversender haben diesen im Angebot. Überall findet man nur einen 4020, ist das vielleicht auch zu gebrauchen?Danke für die Infos!

T.f.G.(R)

03.03.2006, 14:36
(editiert von T.f.G., 03.03.2006, 15:11)

@ Rainer Kalz

Schaltung zur Eisenbahnsteuerung..

hi Rainer Kalz4021bei \'C\' = bestnr. 172766bei \'R\' = bestnr. MOS4021m.f.g. T.f.G.Ps.: ahnung hab ich davon keine aber die zahl \"4021\" passt schon mal :-D

kalledom(R)

03.03.2006, 15:24

@ Rainer Kalz

Schaltung zur Eisenbahnsteuerung..

Hallo Rainer,T.f.G. hat Recht.Bei den 40xxx-Bausteinen stehen bei jedem Herstellern noch unterschiedliche Buchstaben davor und dahinter, bei den Lieferanten ist da wieder was anderes. Deshalb schreiben die Meisten auch nur die 40-er Nummer in die Zeichnungen.

Rainer Kalz

Münster,
04.03.2006, 23:07

@ kalledom

Schaltung zur Eisenbahnsteuerung..

» Deshalb schreiben die Meisten auch nur die 40-er» Nummer in die Zeichnungen.Danke, habe es jetzt gefunden. Ich habe diese Schaltung jetzt mit dem 4094 aufgebaut, komme aber nicht weiter. Zuerst dachte ich es lag an meinem Verpol Experiment. Daher habe ich die Dioden wieder entfernt, aber es geht trotzdem nichts. Ich habe hinter dem 4094 einen ULN2803A eingebaut und an diesem eine Schaltspannung von 20V (pin10) angelegt. Wenn auf den Eingängen nun 5V angelegt werden, dann kann ich auf dem Ausgang nur 0,6V messen. Das reicht natürlich bei weitem nicht zum schalten. Wo könnte ich da den Fehler gemacht haben?Danke im vorraus!

kalledom(R)

05.03.2006, 00:35

@ Rainer Kalz

Schaltung zur Eisenbahnsteuerung..

Du hattest bei der Verpol-Geschichte von 74 HC gesprochen, das hier sind 40xx CMOS-Bausteine, die funktionieren zwischen 3 und 15 Volt.Hast Du denn an den Ausgängen überhaupt was angeschlossen ?Die Ausgänge des ULN2803 sind Open-Collektor-Ausgänge. Da alle Emitter an GND liegen, wird auch nur der GND durchgeschaltet, wenn am Eingang 5V anliegt. Ist am Ausgang eine Last oder ein PullUp-Widerstand angeschlossen, dann, und nur dann kann eine Spannung am Ausgang gemessen werden, die vom Plus über die Last / PullUp kommt, wenn am Eingang weniger als 1,4V anliegen.Der Pin 10 des ULN2803 ist nicht für eine \'Schaltspannung\'; dort wird der Plus angeschlossen, der auch an induktiven Verbrauchern wie z.B. Relais anliegt. Dieser Pin 10 geht intern über 8 (Freilauf-) Dioden an die Collektoren der 8 Darlington-Transistoren und wird nur benutzt, wenn induktive Verbraucher angeschlossen werden.Du solltest Dir zu jedem Baustein, den du \'bearbeitest\' das Datenblatt aus dem Internet laden. Auf meiner Elektronik-Seite findest Du Links zu Datasheets...

Rainer Kalz

Münster,
05.03.2006, 01:10

@ kalledom

Schaltung zur Eisenbahnsteuerung..

» Du hattest bei der Verpol-Geschichte von 74 HC gesprochen, das hier sind» 40xx CMOS-Bausteine, die funktionieren zwischen 3 und 15 Volt.Ja, einn 74HC4094 habe ich hier verbaut, dahinter ein ULN2803A» Hast Du denn an den Ausgängen überhaupt was angeschlossen ?Nein, naiv wie ich \"noch\" bin, dachte ich das ich erstmal mit dem Multimeter messe. Das war der Fehler, der ULN schaltet die Last, wenn ich an dem Eingang 5V anlege» Die Ausgänge des ULN2803 sind Open-Collektor-Ausgänge. Da alle Emitter an» GND liegen, wird auch nur der GND durchgeschaltet, wenn am Eingang 5V» anliegt. Ist am Ausgang eine Last oder ein PullUp-Widerstand» angeschlossen, dann, und nur dann kann eine Spannung am Ausgang gemessen» werden, die vom Plus über die Last / PullUp kommt, wenn am Eingang weniger» als 1,4V anliegen.Hmm, das ist jetz ein wenig spanisch für mich. :-(» Der Pin 10 des ULN2803 ist nicht für eine \'Schaltspannung\'; dort wird der» Plus angeschlossen, der auch an induktiven Verbrauchern wie z.B. Relais» anliegt. Dieser Pin 10 geht intern über 8 (Freilauf-) Dioden an die» Collektoren der 8 Darlington-Transistoren und wird nur benutzt, wenn» induktive Verbraucher angeschlossen werden.OK, auch spanisch. :-(» Du solltest Dir zu jedem Baustein, den du \'bearbeitest\' das Datenblatt aus» dem Internet laden. Auf meiner Elektronik-Seite findest Du Links zu» Datasheets...Ja, dazu müsste ich das aber auch verstehen. Bin leider kein Elektroniker und habe das ganze hier erst vor wenigen Tagen endeckt. Da es mich interessiert hat, dachte ich das probierst Du aus. Ich denke ohne ein fundiertes Grundwissen klappt das wohl nicht so ganz.Nungut, der ULN schaltet also jetzt. Aber der 74HC4094 tut dafür nichts, er reagiert in keinster Weise auf das Programm. Nun vermutet ich mal das ich die Kabel am 9Pol Stecker falsch angelötet habe. Mal sehen ob ich das in dieser Nacht noch rausfinde. Wäre echt klasse, wenn ich morgen was funktionierendes hätte.Danke für die Antwort!

Rainer Kalz

Münster,
05.03.2006, 02:26

@ Rainer Kalz

Schaltung zur Eisenbahnsteuerung..

» er reagiert in keinster Weise auf das Programm. Nun vermutet ich mal das» ich die Kabel am 9Pol Stecker falsch angelötet habe. Mal sehen ob ich das» in dieser Nacht noch rausfinde. Wäre echt klasse, wenn ich morgen was» funktionierendes hätte.» Leider habe ich nichts gefunden. Alles richtig verdrahtet und dennoch geht nichts. :-(Jetzt gebe ich auf.Gute Nacht!

Skilltronic(R)

05.03.2006, 12:05

@ Rainer Kalz

Schaltung zur Eisenbahnsteuerung..

HalloIch hoffe, du hast nur für den gestrigen Tag aufgegeben und nicht endgültig. Also die Schaltung mit dem 4094 habe ich selbst schon mehrfach aufgebaut und auch verschiedene andere Leute haben sie schon erfolgreich nachgebaut. Das weglassen der Zenerdioden war vielleicht keine so gute Idee, denn die erfüllen gleich zwei Aufgaben. SIe begrenzen die Spannung des COM-Ports bei Highpegel und leiten die negative bei Lowpegel ab.Ich würde bei der Fehlersuche so vorgehen. Als erstes testen, ob sich am COM überhaupt etwas tut. Unter Windows 98/NT/XP kann es da zu Problemen kommen. Wenn das Ansteuern der Pins prinzipiell geht, dann das Programm unter die Lupe nehmen. Hast du das selbst geschrieben? Wenn ja, in welcher Sprache? Im Zweifelsfall kann ich dir eine kleine .exe schicken, mit der es eigentlich funktionieren müsste. Wenn das alles ok ist, sollte es eigentlich gehen und sich auch etwas an den Ausgängen des 4094 tun. Spanisch kann ich leider auch nicht, aber vielleicht könnte man sagen, dass der ULN2803 die Verbindung zur Masse schaltet und die Verbraucher alle gemeinsam auf Plus liegen, also genau umgekehrt wie beim 4094. Da der ULN invertiert, schaltet ein High am Eingang trotzdem die Last an dessen Ausgang ein. GrussSkilltronic

l_netwalker

E-Mail

05.03.2006, 23:34

@ Volker

Schaltung zur Eisenbahnsteuerung..

» Hallo,» » also diesmal möchte ich mich etwas genauer ausdrücken, da ich mich in» einem anderen Thread in eine Sackgasse manövriert habe. Das Querlesen und» selber kombinieren war auch nicht so der Hit, leider. ;-)» » Ich würde gerne meine Modelleisenbahn vollständig mit dem PC Steuern.» Programmiertechnisch ist das für mich kein Problem, die Schnittstelle» PC<>Eisenbahn dagegen leider schon. Kommerzielle Systeme die die» Hersteller anbieten scheiden auf Grund der viel zu hohen Kosten aus. Daher» möchte ich was eigenes basteln, natürlich spielt auch der Spaßfaktor dabei» eine Rolle. Finde das Basteln mit der Elektronik hoch interessant. Und wie» gesagt, es sollte den Geldbeutel schonen.» » Also meine Vorstellung ist eine Schaltung mit der ich möglichst viele» Schalter bekomme um Verbraucher zu schalten (Ein/Aus und Taster). Dabei» sollen Weichen genauso geschaltet werden wie Beleuchtungen etc. Das» Tüpfelchen auf dem i wäre dann noch, wenn es möglich wäre Signale von der» Bahn zurück zu bekommen um eine Besetztmeldung der Gleise zu ermöglichen.» » Nun ist guter Rat gefragt, in welche Richtung ich gehen soll. Kann man die» Parallelschaltung aus dem anderen Thread aufbohren (Vielleicht mit zwei» PAR Ports um an 16 Bit zu kommen), oder muss hier ein ganz anderes System» her um zum Erfolg zu kommen. Ein Bussystem dürfte vermutlich den Rahmen» sprengen, oder?» » Danke schon mal vorab für die spannenden Antworten.» » VolkerWenn Du über eine USB Schnittstelle verfügst, kannst Du den I/O Warrior benutzen. Das ist ein Baustein, der 40 Ein/Ausgabeleitungen hat. Bis zu8 Warrior können an einen PC angeschlossen werden. Das dürfte reichen :-) Die Programmierung ist super einfach in Visual Basic oder Deplhi möglich.Ein Testboard kann man für ca 50 € bekommen.Im Forum bei Code Mercanaries bekommst Du auch schnelle Hilfe.Daran über Treiberstufen Relais und dann Weichen , Signale etc.Die Rückmeldung würde ich über einfache Reed Kontakte und Optokoppleranschliessen. Wenn Du mit einem Magnet über den Kontakt fährst schaltet der er. Im Zweifelsfall klebst Du einen Magneten unter einen Wagen.Diese Lösung bietet glaube ich mehr I/O und ist vom Aufbau glaube ich einfacher.Du brauchst allerdings USB.GrussHartmut

Volker

Bonn,
07.03.2006, 21:43

@ l_netwalker

Schaltung zur Eisenbahnsteuerung..

» Wenn Du über eine USB Schnittstelle verfügst, kannst Du den I/O Warrior» benutzen. Das ist ein Baustein, der 40 Ein/Ausgabeleitungen hat. Bis zu» 8 Warrior können an einen PC angeschlossen werden. Das dürfte reichen :-)Danke, das war es was ich jetzt noch brauchte. USB, den gab es hier noch nicht. ;-) Nein, ehrlich, ich habe mir die beiden hier vorgeschlagenen Lösungen angesehen und auch zusammengelötet, oder besser gesagt ich bin dabei. USB wäre schön gewesen, kommt aber jetzt zu spät. » Die Programmierung ist super einfach in Visual Basic oder Deplhi möglich.» Ein Testboard kann man für ca 50 € bekommen.» Im Forum bei Code Mercanaries bekommst Du auch schnelle Hilfe.Werde mir das aber dennoch mal anschauen.» Daran über Treiberstufen Relais und dann Weichen , Signale etc.» Die Rückmeldung würde ich über einfache Reed Kontakte und Optokoppler» anschliessen. Wenn Du mit einem Magnet über den Kontakt fährst schaltet» der er. Im Zweifelsfall klebst Du einen Magneten unter einen Wagen.OK, anders läuft es ja jetzt auch nicht, nur halt über eine andere Schnittstelle.» Diese Lösung bietet glaube ich mehr I/O und ist vom Aufbau glaube ich» einfacher.Glaubst Du? Naja, die PAR Lösung hier ist schon eine ziemliche Löterei, das ist mal sicher. ;-)» Du brauchst allerdings USB.Na, wer hat das heute nicht?» Gruss» HartmutGrüße Volker

Volker

Bonn,
07.03.2006, 21:50

@ Skilltronic

Schaltung zur Eisenbahnsteuerung..

Hallo Skilltronic,Ich habe mir Deine Seite auch mal angesehen und mal die beiden IC\'s besorgt. Werde das am WE auch mal ausprobieren, interessiert mich schon. :-) Aber vorab habe ich mal Deinen Münzentest gemacht und hatte Null Reaktion unter Qbasic. Und der Treiber der auf Deiner Seite zu finden war, sorgte leider für einen Absturz meines Qbasics. Also denke ich mal, werde ich vermutlich genauso viel Erfolg haben mit der Schaltung, wie H. Kalz, oder?Grüße Volker

Skilltronic(R)

08.03.2006, 20:08

@ Volker

Schaltung zur Eisenbahnsteuerung..

HalloSchnittstellen unter Windows anzusteuern scheint eine Wissenschaft für sich zu sein. Ich selbst hatte unter XP-Pro noch nie Probleme mit dem COM, habe aber schon oft von anderen gehört, die dabei Schwierigkeiten hatten. Viel kann ich dazu nicht sagen, eine allgemeingültige Lösung für dieses Problem habe ich noch nicht gefunden. Im Zweifelsfall bleibt die Möglichkeit, den Rechner mit einer Startdiskette unter echtem DOS zu booten, dann sollte es auf jeden Fall funktionieren. Eine Downloadmöglichkeit für eine DOS 6.22-Diskette gibt es hier:http://people.jyu.fi/~eejuviik/utils/boot622.exe Oder man benutzt eine modernere Programmiersprache als QB, mit der man dlls einbinden kann, wie z.B. VisualBasic.GrussSkilltronic

T.f.G.(R)

09.03.2006, 11:47

@ Volker

Schaltung zur Eisenbahnsteuerung..

» Hallo Skilltronic,» » Ich habe mir Deine Seite auch mal angesehen und mal die beiden IC\'s» besorgt.kann mir mal bitte einer den link zur USB lösung posten,ich glaub ich steh heute aufm schlauch.dankem.f.g. T.f.G.

Skilltronic(R)

09.03.2006, 19:40

@ T.f.G.

Schaltung zur Eisenbahnsteuerung..

HalloDer \"I/O Warrior\" wird hier vertrieben: http://www.codemercs.comIch persönlich finde das Preis/Leistungsverhältnis bei diesem Teil allerdings recht bescheiden. Für fast 60€ sollte man etwas mehr erwarten können als eine Schaltung mit einem µC mit 32 Ein- und Ausgänge ein paar LEDs, die man auch noch selbst zusammenlöten muss.GrussSkilltronic

Volker

Bonn,
11.03.2006, 08:01

@ Skilltronic

Schaltung zur Eisenbahnsteuerung..

Hallo Skilltronic,» Eine» Downloadmöglichkeit für eine DOS 6.22-Diskette gibt es hier:» » http://people.jyu.fi/~eejuviik/utils/boot622.exe Danke, ich habe neulich festgestellt, das ich in keinem Rechner mehr über ein Diskettenlaufwerk verfüge. ;-)» Oder man benutzt eine modernere Programmiersprache als QB, mit der man» dlls einbinden kann, wie z.B. VisualBasic.Ja, das wird die Lösung sein. Ich werde mal mein VB wieder auspacken und schauen was damit geht. Zuvor muss ich aber das Layoutproblem lösen. ;-)

zurück zum Board
Thread-Ansicht  Mix-Ansicht  Reihenfolge
5404 Postings in 699 Threads, 5 registrierte User, 36 User online (0 reg., 36 Gäste)
Forum Strippenstrolch | Kontakt
RSS Feed
powered by my little forum