Forum: Mikrocontroller und Digitale Elektronik IC für RC5 Code


von Günter König (Gast)


Lesenswert?

Moinsens liebe Gemeinde,
ich suche ein Controller-IC (+Herstellerangabe, Lieferant)um mit
geringstmöglicher externer Beschaltung einen RC5 Code zu erzeugen. Die
zu realisierende Geberschaltung muss so klein wie möglich sein.

Eine spätere Auswertung soll dann standardmäßig mit einem AVR
erfolgen.

Gruß,
Günter

von leo9 (Gast)


Lesenswert?

Wenn drei Batterien und eine IR-Diode ausreichend wenig externe Bauteile
sind, nimm irgendeinen kleinen avr. Ein paar Zeilen code und schon hast
du deinen RC5 Sender.

grüsse leo

von Malte Bayer (Gast)


Lesenswert?

eben, einen von den tiny's und der rc5 generator ist kleiner als
"handelsübliche" fernbedienungs-ic's

von Günter König (Gast)


Lesenswert?

Hi Malte, Hi Leo9,

danke für die flinken Antworten.
Tiny AVR klingt nicht schlecht. Ich müsste über Lötbrücken 64 RC5
Befehle fest programmieren können. Denke mal, das ist machbar.
Aber es käme dann doch wohl auch noch eine Schaltstufe für die LED dazu
oder täusche ich mich da?

Gruß,
Günter

von leo9 (Gast)


Lesenswert?

wie meinst du über Lötbrücken 64 Befehle fest programmieren. Brenn doch
jedem uP "seinen" Befehl ins RAM, dann ersparst du dir die Pins für
64 Brücken.
Schaltstufe ist relativ, bis 20mA sollte der interne Transi reichen.
Drüber kommt halt noch ein Transi oder Fet dazu.
Ein Größenproblem sehe ich eher in den 64 Lötbrücken.

Was baust du eigentlich?

grüsse leo9

von Malte Bayer (Gast)


Lesenswert?

@günter
soll über die lötbrücken jeweils (pro gerät) nur ein befehl fest
gewählt werden?
wenn ja, dann kannst du das über 6bit DIP Schalter bzw 6 Lötbrücken
"binär" einstellen, dann reicht dir aber wahrscheinlich ein kleiner
tiny nicht aus (zu wenig ports).

20mA sollten für eine IR Diode reichen.
bedenke: der avr kann nur bei LOW Ausgang 20mA vertragen, also Diode
fest über Widerstand an der Anode auf VCC legen und die Kathode an den
Controller.
Wenn der Ausgang des AVR dann auf LOW steht, ist die diode an, bei HIGH
ist sie aus, also invertiert.

Andere Möglichkeit wäre, dem Controller die Befehle ins eeprom (oder
bei den kleineren direkt ins Programm im FLASH speicher) zu
programmieren.

@leo9
Befehle ins RAM brennen funzt nicht, da es ein flüchtiger Speicher ist
und ohne Betriebsspannung die Daten verliert ;-)

von Günter König (Gast)


Lesenswert?

Hallo Leo9, Hi Malte,
es soll eine Schaltung werden, die einen sich wiederholenden RC5 Code
konstant an eine IR LED ausgibt.
Die Sache soll in einen Modelleisenbahnwagen (Spur N) eingebaut werden.

Beim Passieren einer Abfragestelle kann nun anhand des Codes ein Zug
identifiziert werden.

Ein AVR mit 64 oder 128 Byte EEProm und mit einem Mäuseklavier ist wohl
eine gute Möglichkeit.
Platzmäßig dürften 6 Lötbrücken weniger Raumbedarf haben als ein 6fach
Dipschalter.


Danke euch,
Günter

von wolli (Gast)


Lesenswert?

Was stört denn an der Variante mit dem Code im EEPROM oder Flash?

von ulrich strobel (Gast)


Lesenswert?

schmarre, mach eine I2C ode SPI schnittstelle mit drauf, die dir dann
den zu sendenden code ins eeprom ablegt, aber vielleicht brauchst du
dann schon einen At90S2323, ist aber fast egal.

von Hagen (Gast)


Lesenswert?

Warum? Tinys haben 5 Pins, mit RESET sogar 6. 1 Pin für die IR LED
bleiben 4 Pins übrig. 2 davon als MINI SPI oder genauer als
Schieberegister, also 1 um zu takten, 1 als Data. Nur noch einen
größeren AVR der ein Keypad enthält. Der taktet wie ein Schieberegister
dann die 8/16 Bits an die Tinys durch.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

... und überprüft das gesendete IR Signal auch gleich noch !

Gruß Hagen

von mmerten (Gast)


Lesenswert?

also maximal nen AVR mit IR LED für TX und IR Diode/Transi für RX
(zwecks konfiguration oder Software-Download via Bootloader mit dem
zugehörigen Hühnerfutter, mehr dürfte sich bei bestem Willen nicht in
einem Spur N Teil (M 1:160 Spurweite 9mm) unterbringen lassen ;-)

von Hagen (Gast)


Lesenswert?

Ich dachte eher daran das am Tiny nur IR Tx ist und zwei Anschlüsse um
das Mini SPI zu machen. Ein zweites Gerät wird nur als Konfiguration
extern benötigt. Vor dem Einbau wird also der Tiny damit programmiert,
statt mit festverdrahteten DIP's. Dieser externe Programmer könnte
zusätzlich noch den IR Rx besitzen um den programmierten IR Code zu
checken. Ich gehe mal davon aus das es mehrere von diesen IR Sendern
geben soll.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Ähm, Bootloader ?! geht doch mit Tinys garnicht, oder ?

Gruß Hagen

von mmerten (Gast)


Lesenswert?

bei den lieferbaren tiny (noch) nicht, aber die gibt`s ja auch (noch)
nicht in MLF also sollte es schon mega8 sein und der ist in mlf
lieferbar und recht preiswert.

von Günter König (Gast)


Lesenswert?

Hallöchen Jungens,

die Sache scheint nun doch schon "bedenkliche" Formen anzunehmen.
Vorab, ein Tiny scheidet wohl aus.

@MMerten u, Hagen
Das Teil braucht nur zu senden. Eine "on board Programmierung" wird
auch nicht benötigt. Also so wie Hagen es beschrieben hat.
Der AVR selbst kann extern (Flash und EEprom) programmiert werden. Die
RC5 Code Programmierung erfolgt dann über 6 oder 7 Lötbrücken .

Ein 2323 scheint mir vorerst die beste Wahl zu sein.
Grob überschlagen benötige auf der PCB also folgende Bauteile:

Stabi 5V (µA78L05SMD),
Resetcontroller (MC3463SMD o.ä),
Controller als solches(AT90S2323 SO20,
P-Kanal Fet als Schalter,
IR Diode + Vorwiderstand Form 207/10,
Widerstandsarray als Pullup für Codeprogrammierung,
1 Elko RM2,5 für Siebung,
5 SMD Kondensatoren Bauform 805,
3 Widerstände Bauform 805,
1 Quarz.

Ich will mal versuchen, die Teile zu Positionieren. Aber ich denke
schon , das man die Sachen in einem 2achsigen Wagen unterbringen kann.
Wenn noch Platz ist, evt. doch noch SPI.

Ich denke, das könnte erstmal so klappen. Und Hagen, es wird auf jeden
Fall mehrere Sender geben. Ich werde ca. 25 St. benötigen.
Möglicherweise ist ein RFID System besser geeignet, aber ich habe mal
einen Grobentwurf mit hierfür handelsüblichen Komponenten aufgebaut (
www.helmo.de ). Es funktionierte zwar im ersten Versuch recht
ordentlich, doch die Kosten sind wesentlich höher als mit dieser
homebrewed RC5 Lösung.
Auch von der Barcode-Lösung bin ich wegen optischer Problematiken
abgekommen, es war zu unsicher.

So Jungens, ich danke euch schon mal,

Gruß,
Günter

von Günter König (Gast)


Lesenswert?

Ach ja, hab ich vergessen:
sollte jemand Hardwaremäßig bessere Vorschläge haben würde ich mich
freuen!!!

So denn,
Günter

von mmerten (Gast)


Lesenswert?

@günter
FET für IR sowie RESET-Controller braucht man bei den neuen TINY (z.B.
TINY26) und AVRmega nicht können also entfallen. Die können für die LED
bis zu 40 mA liefern (source/sink). Ebenso sind PullUp nicht nötig, da
intern schaltbar.

von Hagen (Gast)


Lesenswert?

Ich muß da wohl was falsch verstenden haben.

Es geht dir darum in den Wagen einen IR Sender einzubauen der
periodisch immer den gleichen Code ausstrahlt, richtig ?

Angenommen der IR Empfänger ist selbstsynchonisierend so wäre er
unempfindlich auf instabile IR Signale. Schonmal den Quarz auf
Senderseite eingespart. D.h. ein Tiny mit internem RC Glied reicht aus.
Nun vermute ich mal das die reichweite des IR Signals nicht groß sein
muß, ca. 5 - 10 cm. Wenn ja, dann brauchst du keine Verstärkung des
Signals auf Sender Seite mehr, also 1 Widerstand + 1 Transistor
gespart. Nun sollen die IR Sender auf einen bestimmten Code
programmierbar sein. Man könnt 8 Pins dafür benutzen und DIPS oder
Lötbrücken dranhängen, aber warum ?? Es reichen 2 Pins, einen für den
Takt und einen für Daten. Über diese zwei PINS werden dann einfach 8
Bits reingeschoben. Dieser Wert kann dann im IR Sender AVR im EEPROM
gespeichert werden. Nun, das diese beiden PINs über Pullups
abgeschlossen sind benötigt man keine externen Baulelemente. Also wenn
ich das richtig nachgerechnet habe benötigt man für den IR Sender
1x ATtiny15L, 2x Widerstände und 1x Spannungsstbilisierung + 1x IR
Sendediode mehr nicht. Den Vorwiderstand der IR Diode kann man
eventuell einsparen wenn die Spannungsstabilisierung mit
Strombegrenzung arbeitet und auf 2.7V eingestellt wird.
Eventuell, zur Entstörung noch ne'n Kondensator. Der RESET Pin des
Tinys kann über die Fuses deaktiviert werden.

Gruß Hagen

von Günter König (Gast)


Lesenswert?

Hagen,
macht nichts, vielleicht habe ich mich ja auch etwas dünne
ausgedrückt.
Aber richtig, immer den gleichen Code, kontinuierlich sobald die
Bordspannung (kommt über das Gleis) >= 4,5V liegt.
Die Reichweite darf maximal 1,5 - 2 cm betragen.

Wie kann ich den Quarz einsparen bei meiner geplanten Verwendung vom
2323?

Wie ist das zu verstehen mit den 2 Lötbrücken? Ich bin im Moment davon
ausgegangen, das ich mit 7 Brücken 128 Codes wählen kann. Hiermit
wollte ich einen Port belegen. Den Code (oder eben das Bitmuster des
Codes) wollte ich im EEProm ablegen sodas ich schon während der
Flashprogrammierung alle möglichen oder erforderlichen Codes im EEProm
habe. Die Auswahl, welcher Code letztlich gesendet wird, erfolgt dann
eben über die Brücken.
Mir ist als Analogiker im Moment nicht klar, wie ich das mit einem Tiny
Hardwaremäßig realisieren könnte.

@MMerten:
ich gehe vom 2323 aus, der kann keine 40mA senken. Wenn ich die LED mit
10mA betreibe würde ich es mir aus Gründen der besseren
Betriebssicherheit schon leisten, einen FET oder einen Bipolaren Vogel
als Treiber zu Nutzen.
Auch ein AVR freut sich um jede von ihm genommene Last....

Günter

von Hagen (Gast)


Lesenswert?

Ich würde auf die Lötbrücken einfach verzichten. Statt dessen werden
zwei PINs als Programmier-Interface benutzt. Auf die gleiche Art wie
ein abgespecktes I2C oder SPI wird der Chip eingestellt. Dazu wäre mit
minimalem Aufwand ein zusätzliches Gerät notwendig. Zb. ein normaler
ATMega mit 7 Schaltern. Dieser ATMega sendet auf Kommando auf zwei
Leitungen dann den Status dieser Schalter seriell an den IR Sender
Chip. Somit würde der IR Sender Chiüp mit 3 Pins auskommen, 1 Pin als
Ausgang für die IR Sendediode, 1 Eingangspin für den Takt und 1
Eingangspin für die daten. Der IR Sender Chip arbeitet also so wie ein
Schieberegster und bekommt sequentiell die Konfiguration übermittelt.

Ich würde dazu die Platine des IR Senders mit zwei Pads auf der
Leiterplatte versehen. Im externen Programmer wird dann die
versorungsspannung und die zwei nötigen Signale über diese Pads
übertragen.

Da der ATtiny aber mehr als nur 3 Pins hat könnte man diese Form der
Datenübertragung sogar noch sicherer machen. Wenn ich richtig
informaiert bin hat der ATtiny15 eh ein SPI Interface. Statt also extra
noch Software zu programmieren, könnte dein externer Programmer gleich
über das integrierte SPI den Chip programmieren, also so wie man ihn
auch sonst mit einer Software programmiert. Im Flash, an definierter
Stelle steht dann die 8Bit ID die angibt welcher IR Code gesendet
werden soll. Der Vorteil !? dein Programmer, den du nur einmal zu bauen
brauchst könnte auch einen IR Empfänger enthalten. Der Programmer
übertragät also gleich die komplette IR Sender Software, die
Konfiguration über das SPI und überprüft mit dem integriertem IR
Empfänger gleich noch ob dr IR Sender arbeitet.

1-2cm IR Reichweite müsste ohne Probleme mit einer IR Diode die direkt
durch einen Pin getrieben wird erreichbar sein.

Wie gesagt, meiner Meinung nach reichen minimalst 2 Widerstände, 1 IR
Diode, 1 ATTiny15L aus. Eventuell zur Entstörung noch ein Kondensator.
Wenn die Betriebsspannung sichergestellt niemals 6Volt überschreitet
und nicht 2.7 Volt unterschreitet kannste sogar noch auf die
Spanungsstabilisierung verzichten.

Gruß hagen

von Hagen (Gast)


Lesenswert?

Achso, wichtiger ist dann schon die Frage mit welchem Gerät du die
empfangen IR Signale auswerten willst. Sollte das ein Eigenbau sein,
besteht ohne Probleme die Möglichkeit das IR protokoll so zu entwicklen
das es fast Fequenzunabhänig ist. D.h. die IR Sender müssten dann nicht
mehr so exakt sein und der Verzicht auf einen externen Quarz in den IR
Sendern stellt keinerlei Probleme dar.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

solltest du über die Tinys nachdenken, dann kämen der ATTiny12,ATTiny13
und ATTiny15 in Frage. An Pin1 = RESET wird ein Pullup Widerstand
benötigt. Pin2 als Ausgang der die IR Sendediode antreibt. Dabei wird
diese von Vcc mit Vorwiderstand direkt mit dem Pin verbudnen. 20mA
können so ohne Probleme getrieben werden, was für 1-2cm bei weitem
ausreichen sollte. Pin3 bleibt unbelegt. Pin4 an Masse, Pin8 an Vcc,
von Vcc nach Masse ein Stützkondensator, die Pins 1,4,5,6,7,8 werden
als Pads auf dem Board nach ausssen geführt da darüber das SPI
arbeitet. Somit kann über diese 6 Pins das Board direkt programmiert
werden.

Das externe Gerät ist einfach ein Programmer, aber um eine IR
Empfangseinheit und 7 Schaltern erweitert, der Programmer selber könnte
auf weitere übliche Schnittstellen verzichten, enthält aber dafür die
komplette Software der IR Sender. Nun programmiert der Programmer nicht
nur den IR Code in den IR Sender sondern gleich die komplette
Software.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Die Software für den IR Sender selber besteht nur noch aus einer
Schleife die im Interval den festgelegten RC5 Code sendet.
fertig :)

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Allerdings, wenn du die IR Empfangsgeräte selber baust warum benötigst
du dann überhaupt IR Sender ??

Statt dessen würde ich mit einem Tintenstrahldrucker auf Ettiketten ein
einfachen Barcode drucken. Dieses Ettikett wird dann von unten auf die
Waggons geklebt. Der IR Empfänger bestünde aus einer IR Sendediode und
eine IR Empfangstransistor. Ich glaube das dies auch mit sicherer
Erkennungsrate hinzubekommen ist. Es gibt speziell
Doppel-IR-Transistoren die hauptsächlich für Computermäuse gedacht
sind. Mit diesen IR Empfängern wäre es sogar möglich die Fahrtrichtung
zu erkennen.

Gruß Hagen

von Günter König (Gast)


Lesenswert?

Ja Hagen,
das ist nun die Frage.
Ich habe die Sache mit dem Barcode probiert und ausgiebig ausgetestet.
Leider funktionierte dies nur, wenn ich ganz bestimmte Bedingungen
einhielt. Diese waren leider rein mechanischer Struktur und somit nicht
allgemein auswertbar.
Beispiel:
Reflexsensor, Abstand zum Objekt (dem Streifen) ca. 6mm. Auswertung war
O.K, optimal eingestellt 100%.
So, nun nächster Fall: Barcodstreifen direkt unter einer Lok, Abstand
nur noch 3mm, Auswertung sinkt auf unter 70%.
Alte Güterwagen, von der Bauart sehr hoch und somit auch der
Codestreifen. Ergebniss: Ebenso niederschmetternd....

Ich denke, die RFID Thematik ist absolut in Ordnung aber zu teuer! Über
die Infrarot-Geschichte lohnt es sich nachzudenken.

Gruß zur Nacht,
Günter

von Hagen (Gast)


Lesenswert?

Naja, ich dachte nur das bei der aktiven IR Erkennung es wohl wichtig
sein wird das das System sehr schnelle Erkennungsraten hat. Angenommen
RC5 Code wird benutzt dann benötigt dieser Code schon minimal 20ms. Um
die Erkennungsrate zu erhöhen sollte man mit 3 Wiederholungen auskommen
müssen, + 2 mal 20 ms Pause macht im gesammten also 100ms.  1/10
Sekunde müsste also ausreichend sein. Nun angenommen der Empfänger hat
1cm Empfangsbereich/Winkel bei 100ms Zeitdauer dürfte sich die
Eisenbahn mit maximal 10cm pro Sekunde bewegen, ist denn die Eisenbahn
mit 0.36km/h wirklich so langsam ? Vieleicht könnte man das sogar noch
besser synchronisieren. In den obigen Postings habe ich ja schon gesagt
das an den Tinys sogar noch 1 Pin frei ist. Ein empfindlicher
Reedkontakt oder Hallsensor und ein Magnet kurz vor dem Empfänger
könnte diese Synchonisation ja erledigen.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Wie wäre es denn mit einer Gabellichtschranke ?
Ich denke mir das so: eine Gabellichtschranke als Empfänger und
Dekoder. An den Waggons werden nun kleine Papierstreifen sendkrecht
unter den Wagen geklebt. Diese Papierstreifen sind mit Schlitzen und
unterschiedlichem Abstand durchbrochen und werden durch die
Gabellichtschranke durchgeführt. Diese mißt nun die Abstände zwischen
den Schlitzen die sozusagen die Codierung darstellen. Dies dürfte
ziemlich sicherer Erkennungsraten bieten.

Eine zweite Idee. Du möchstes einen Zug identifizieren und jeder Zug
hat eine E-Lok. Diese wird ja bekanntlich über die Schienen mit Strom
versorgt. Nun, der stationäre Empfänger wird an ein spezielles Gleis
gekoppelt bei dem eine Schiene unterbrochen wurde. D.h. ein solches
Gleis hat ein Stückchen Schiene das getrennt vom Rest der Gleise mit
Strom versorgt wird. Exakt an diesem Gleisstück sitz der Empfänger und
der versogt die Lok mit Strom. Zusätzlich sitzt in der Lok parallel zum
Motor unser kleiner AVR Tiny und sendet auf die Stromversorung ein
moduliertes Signal. Fährt die Lok nun über das präparierte Gleis so
wird sie ja nun durch den Empfänger-AVR mit Spannung versorgt. Nun kann
1. dieser Empfänger-AVR das durch den in der Lok sitzenden Chips
aufmodulierte Signal empfangen und gleichzeitig könnte sogar der Chip
in der Lok ein Signal vom AVR am Gleisstück empfangen.
Sobald die Lok das Gleis überfahren hat ist alles vorbei, d.h. alles
ist örtlich begrenzt und ziemlich störunempfindlich. Man könnte also
durch den Gleis-Empfänger-AVR ein NF Signal in die
Lok-Versorgungs-Spannung einspeisen. Dieses lösst ein Feadback im Chip
der Lok aus der daraufhin ein codiertes Signal zurückschickt. Der
Gleis-Empfänger-AVR der ja stationär ist, könnnte sogar automatisch
erkennen ob eine Lok über seinen Gleisabschnitt fährt, denn in diesem
Moment muß ja ein Strom fließen.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Angenommen der stationäre Empfänger-AVR pulst per PWM mit hoher Frequenz
seinen Gleisabschnitt mit Strom so dürfte das ja nicht den Motor der
Lok stören. Aber, der parallel zum Motor sitzende AVR könnte mit
gepufferter Spannungsversorgung sehr wohl diese Pulse auswerten. Nun
nach jedem High Pulse der durch den Epmfänger-AVR gesendet wurde müsste
der AVR in der Lok seinerseit ein Bit senden. Ist die PWM-Frequenz groß
genug gewählt reicht ein Puffer-Kondensator aus um in den Low-Phasen
den Chip in der Lok weiterhin zu versorgen. Dieser legt abhängig vom
jeweiligen Bit in seinem Code nun seinerseits entweder Low oder High
auf die Spannungsversorgung. Im Grunde versorgt also einmal der AVR am
Gleis und kurze Zeit später der AVR in der Lok mithilfe des
Pufferkondensators den Motor und somit den kompletten Stromkeis. Der
AVR am Gleis muß nun nur noch die Pulse geben und gleich danach die
Spannung auf den Gleisen messen.
Wie gesagt wird das alles mit 40KHz PWM durchgeführt stört das den
Motor nicht im geringsten und die Bandbreite der datenübertragung ist
enorm hoch.

Gruß hagen

von Günter König (Gast)


Lesenswert?

Holla Hagen,

1. nicht jeder Zug hat eine E-Lok
2. Ich wäre dir liebend gerne anfang der 70er begegnet.
3. Unsere Grundgedanken werden wir neu zusammenwürfeln.

Moinsens denn auch,
Günter

von Hagen (Gast)


Lesenswert?

> 1. nicht jeder Zug hat eine E-Lok

Ja aber wie wird dann der Zug auf der Modellbahn angetrieben ? Mit
Dampf oder was ??

> 2. Ich wäre dir liebend gerne anfang der 70er begegnet.

Ähm, sind meine Ideen echt so veraltet ??

Gruß Hagen

von schneidertobi (Gast)


Lesenswert?

Vorallem duerften AVR's schlecht mit Dampf auskommen ;)

Tobias

von Günter König (Gast)


Lesenswert?

Moin auch Hagen,

also das mit den 70ern war von mehr auf den Gedanken mit der
Einkopplung von Informationen auf ein Versorgungsnetz bezogen. In
dieser Zeit musste ich mich zwangsweise mit dieser Problematik befassen
und hätte Hilfe gebraucht.
Aber gut,
elektrisch gesehen wäre das eine saubere Lösung aber ist mechanisch
extrem schwer auszuführen denn
es ist bei der Spur N immer mit Platzproblemen zu kämpfen. So ist oft
der Antrieb bei einer Modelldampflok im Tender untergebracht während
die Stromabnahme über die Lok selbst erfolgt. Das Innere der Lok selbst
ist dann mit zusätzlichem Gewicht beschwert.

Es müsste also eine elektrische Verbindung zwischen der Lok und dem
Wagen mit der Controllerunit bestehen. Wenn nun aber dieser Wagen nur
eine 2achsige Stromabnahme besitzt (sehr oft anzutreffen) ist das
aufgrund der nie 100%igen Kontaktsicherheit zu wenig. Bei zweiachsigen
Wagen würde das Problem immer beim überfahren von Weichen auftreten und
bei den fließenden Strömen für den Motor sind somit elektrische, nicht
zu puffernde Aussetzer vorprogrammiert.
Bei größeren Spuren ist aber dein Denkansatz eine Überlegung wert wenn
es keine Platzprobleme gibt.

> Ja aber wie wird dann der Zug auf der Modellbahn angetrieben ? Mit
Dampf oder was ?? <

Berechtigte Frage, aber es gibt auch in der Spur N sogennante "Live
Steam" Fahrzeuge die tatsächlich mit Dampf betrieben werden.
Preislich liegen solche Teile natürlich jenseits von Gut und Böse.
Wenn ich aber von einer E-Lok spreche, ist hier eigentlich der Bezug
zum Vorbild zu sehen. Eine E-Lok ist eben eine Elektrolok die im
Vorbild über die Oberleitung mit Strom versorgt wird. Eine Diesellok
wird beim Vorbild logischerweise mit Diesel betrieben und eine Dampflok
......
Im Modell werden natürlich alle Fahrzeuge über einen Elektromotor
angetrieben.

Zu deiner vorgeschlagenen Barcodelösung: Mit einer Gabellichtschranke
ist das Problem mechanisch überhaupt nicht in den Griff zu bekommen
weil es keine genormte Höhe Wagenboden -> Schotterbett gibt. Gerade bei
der Überfahrt von Weichen ändert sich dieser Abstand durchaus bis auf
wenige Zehntelmillimeter.
Eine Möglichkeit sind Reflexkoppler und ein unter der Lok oder dem
Wagenboden geklebter Barcodestreifen. Aber hier gibt es leider zuviele
auch eben mechanische Probleme die nur sehr schwer in den Griff zu
bekommen sind.
Eine optimale Lösung ist die RFID Geschichte. Ein absolut sauber
funktionierendes System, ist aber derzeit einfach zu teuer.

Du siehst also, kein einfaches Problem.
Aber wie sagt man: Versuch macht kluch.....
Also, packen wir es an!

morgendlicher Gruß,
Günter

von Hagen (Gast)


Lesenswert?

Tja, dann bleibt nur die IR geschichte. Bei meinem letzten Vorschlag
konnte ich mir schon denken das es durch die Motoren zu erheblichen
Störungen kommen kann. Das die Stromabnahme so problematisch ist wusste
ich nicht, aber woher auch.

Auf jeden Fall sollte die IR Lösung mit sehr schnellen IR Telegrammen
arbeiten, ansonsten dürftest du Timingprobleme kriegen. In der Art das
die Bahn zu schnell über den IR Empfänger drüber fährt. Allerdings
meine obige Absätzung dürfte so schon hinkommen, denn beim RC5 Code
wird ja auch nur ein 14 Bit Telegram versendet. D.h. entweder musst du
die Pulsfrequenz erhöhen, also von 36KHz auf 40KHz oder so. Das macht
das Kraut aber nicht fett und viel mehr von den 36KHz würde ich nicht
abweichen, da du sonst keine preiswerten IR-Sender/IR-Empfänger mehr
bekommst. Oder du verkürzt die Pulsbreite. Beim RC5 bei 36KHz ist ein
Puls ca. 16 Takte lang, also 1.778ms pro Bit.
Am sichersten dürfte es sein wenn der IR Sender exakt zum IR Empfänger
synchronisiert wird und kurz vorher sendet. Zusätzlich noch die Pause
zwischen zwei Telegrammen verringert. Also 9Bits * 1.778ms = 16ms pro
telegram + 4ms Pause macht bei 2 Telegrammen 36ms. Die 2 zusätzlichen
Bits dienen als Startkondition. D.h. auf 1cm Empfangsbereich des
Empfängers braucht die Lösung 36ms das wäre dann eine maximale
Fahrgeschwindigkeit von 100km/h, das dürfte dann aber ausreichend sein,
oder ? Dazu müsste aber eben der IR Sender exakt vor dem IR Empfänger
anfangen zu senden, und somit würde innerhalb der 1 cm
Empfangsempfindlichkeit 2 vollständige Telegramme zu empfangen sein.
Nun 1cm Empfangsbereich auf 1-2cm Distance bedeutet ein IR Empfänger
mit einem Öffnungswinkel von >45 Grad, das ist schon ziemlich viel.
Laut Datenblatt des SFH5110 zb. kann der +-45 Grad noch so empfangen
mit einem Verlust bis runter auf 60% an den äusseren Winkeltangenten.
Ok, da die Entfernung kurz ist ist das kein Problem und du kommst bei 1
cm Distanz sogar auf exakt 2cm Empfangsbereich. Die IR Sendediode
sollte in deinem Falle eine mit möglichst breitem Abstrahlwinkel sein.
Die LD271 hat zB. einen von +-25 Grad ist also schon unterdimensioniert
und ergäbe ca. 1cm Abstrahlbereich. Nun 1cm || 2cm wären wir bei 2cm in
denen sich IR Sender und IR Empfänger auch sehen. Nach dieser Pi *
Daumen Rechnung haste also genügend Spielraum übrig, denn mit obigen
Telegrammen kommste auf 200Km/h was wohl deine Bahn nicht mehr hergeben
wird, oder doch mit viel Dampf ??
Wenn du eine IR Sende Diode nimmst mit 45 Grad Abstrahlbereich kommste
dann schon auf 3cm = 300km/h auf 1cm Distanz. Ist die Distanz größer
wird der Empfangsbereich logischerweise erweitert.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Achso, obige Pause mit 4ms ist eigentlich viel zu kurz. Beim RC5 muß so
eine Pause wesentlich länger sein als die Gesamtlänge eines
Telegrammes. Aber, da du mit deinem IR Code sowieso einen eigenen Weg
gehst kann man das durch die Software kompensieren, und somit die Pause
wesentlich kürzer machen. Eventuell wäre es besser NICHT RC5 ähnlichen
Code zu benutzen, sondern eher Pulslängen codiert, so wie das Sony
Protokoll.

Gruß Hagen

von mmerten (Gast)


Lesenswert?

@günter
wenn man`s richtig überlegt ist die RFID Lösung bzw. ein angelehnter
Verfahren (induktive Datenübertragung) wohl der einzig sinnvolle und
bei entsprechender Konzeption auch preiswerteste weg. Man hat ja
folgende Vorteile gegenüber den "normalen RFID Lösungen"
a) der Sender kann seine energie über das schienennetz beziehen
b) dadurch kann natürlich die "sendeleistung" etwas größer sein und
   vereinfacht die empfängerschaltung
c) die Reichweite muß ja nur wenige cm betragen, man will ja ggf.
   mehrere Empfangspunkte installieren
Ebenso kann der Empfänger für den Betrachter unsichtbar installiert
werden, da sich sender und empfänger ja nicht sehen müssen. Ich würde
mich daher auf jeden Fall mal mit induktiver Datenübertragung
beschäftigen, zumal ja die Länge des Datenpaketes sehr klein ist.

von Günter König (Gast)


Lesenswert?

Hallo MMerten,

eine sinnvolle RFID Lösung benötigt keine Speisung über das
Schienensystem. Die Transponder werden induktiv durch das
Empfangssystem versorgt. Das funkioniert auch sehr gut und wurde in
einem Einzelstück sehr ausgiebig getestet.
Nur, es ist zu teuer.

@Hagen:
Ich denke auch, das es beim RC5 Protokoll ein Zeitproblem geben könnte.
Zumal ich bisher a.) keine IR-Dioden gefunden habe die eine Abstrahlung
> 50° haben und b.) Phototransistoren mit ideelerweise 180°
Sichtbereich auch nicht existent sind.
Hier gilt es also einen Konsens zu suchen der eventuell im Sony -
Protokoll zu finden ist.
Leider habe ich hierüber derzeit nicht den rechten Durchblick, kannst
du mich da mal etwas schlauer machen?

Gruß,
Günter

von Khani (Gast)


Lesenswert?

Hallo mmerten,

ich wollte keinen eigenen Thread dafür aufmachen, aber wo meinst Du
wohl, man könnte Mega8 MLF lieferbar bekommen (in Stückzahlen im
Zehnerbereich, keine 25.000 Stück!)

MfG, Khani

von Malte Bayer (Gast)


Lesenswert?

@günter

also ich finde die geschichte mit dem barcode und dem lichreflextaster
sinnvoller. die frage ist nur, wo due die codes an den waggons
anbringen sollst.
hast du dir schonmal überlegt, die codestreifen (müssen ja nichtmal arg
hoch / lang sein...) an der seite anzubringen?
dort bist du ja variabel und kannst jeden waggon kennzeichnen, so dass
die codes an der "lesestation" immer die richtige position haben.
gefederte achsen werden die waggons ja wohl nicht haben und auf den
gleisen "rumhüpfen" ;-)

Die andere Lösung mit Gabellichtschranke und Loch/Schlitzstreifen wäre
auch ne Überlegung - wieso UNTER den Waggons anbringen? die streifen
würde ich aus dünnem kunststoff machen (stabilität) und auch irgendwie
seitlich anbringen mit meinetwegen 5mm abstand zur waggonseite...

von Hagen (Gast)


Lesenswert?

Wir hatten mal in der Firma uns die RFID Systeme angeschaut, und wenn
ich mich richtig errinnere musste man bei den "preiswerten" Systemen
Kontakt zum RFID Tag herstellen. Dies wurde durch den "billigen"
Leser bedingt die nur Reichweiten im unteren Millimeterbereich haben.
Desweiteren beträgt die Lesedauer meistens 500ms und wie oben schon
vorgerechnet ist das zu langsam. Erst die echt teueren Systeme, für
Lagerhaltungssysteme, konnten aus mehreren Metern Entfernung innerhalb
von Millisekunden die Tag's lesen. Zudem, die Lesegeräte sind
elekronisch ziemlich aufwendig, auf alle Fälle nicht so einfach wie ein
SFH5110 + AVR. Ich glaube also nicht das RFID ne Lösung wäre. Aber vor
der Zeit von RFID gab es die Induktiven Überwachungsschleifen in
Kaufhallen. Das Gegestück war nur eine Spule + Kondesator und stellt
mit dem Sender/Empfänger ein Schwingkreis dar. Über die Verwendung
verschiedener Kondesatoren wurde also die Empfängerschleife induktiv
gedämpft und so konnte man bestimmen welcher Kondesator im Tag
eingesetzt wurde. Eventuell wäre das ja was, eben eine analoge Lösung.

Im Bereich IR-Lösung finde ich es aber nich so sehr problematisch. Wie
gesagt der SFH5110 kommt auf 90° Empfangsbereich, und vereinfacht die
Empfängerschaltung auf einen AVR + einen SFH5110 den man direkt am Pin
ranhängt. Die komplette Demodulierung des 36KHz Signals + Verstärkung +
Filterung + Tageslichtfilterung übernimmt der SFH5110. Am Pin liegt
exakt das Signal an was der IR Sender mit 36KHz abgestrahlt hat. Die IR
Sender dioden muß es ebenfalls mit 90° minimal geben, die besonderen
Bauformen für die Computermäuse können weit mehr in Richtung einer Axis
konzentiert. Schau dir mal den SFH4111 an der kommt auf 180° was wohl
das praktische maximum ist was du überhaupt benötigst. Zusätzlich wird
durch die Axis-bezogene Ausstrahlung noch der Störeinfluß beim
Empfänger reduziert.

Ich meine also schon das die IR Lösung preislich und auch technisch die
einfachste Lösung ist, mit der man auch anfangen sollte zu testen.

Das Sony Protokoll ist vereinfacht schnell erklärt. In deinem Falle
sähe es so aus: 36KHz Trägerfrequenz. Nun wird Pause = 64 Takte
definiert. D.h. 64 Takte kein IR Signal. Danach kommt jeweils 3 Takte
ein IR Signal das eine Synchronization ermöglicht und die nachfolgende
Länge der Impulspause von entweder 7 Takten = 0 oder 13 Takten = 1 gibt
den Bitstatus an. Wir kämen bei Byte 0x7F so auf 7 * (3 + 13)  = 112
Takte * 2 + 64 = 288 Takte bei 36KHz = 8 ms um 2 Telegramme sammt Pause
dazwischen zu versenden. Dies ist der Worstcase, da ja 0 Bits
wesentlich kürzer sind. Ok, die Pulslängen sind sehr kurz kalkuliert,
dürften aber im machbaren liegen. 8ms auf 2cm = 900km/h müsste deine
Eisenbahn schnell fahren, ich glaube kaum das dies tatsächlich der Fall
wäre. Bei 100Km/h würde das aber auch bedeuten das statt 2 Telegrame
nun 18 mal hintereinander die 7 Bits empfangen werden könnten, in einem
Empfangsbereich der 2 cm Ausdehnung besitzt. Angenommen man nimmt die
obige SFH4111 dann hätte man lässig 3cm sensiblen Bereich bei 1cm
Distanz, das wären dann 27 Telegramme a 7 Bit die empfangbar sind, wenn
der Zug mit 100km/h verbeidrischt.

Also wenn ich in den Rechnungen keine Fehler gemacht habe, dann wäre
dieses Projekt absolut machbar, und am billigsten. Selbst der Empfänger
geht mit einen ATtiny aufzubauen.

Gruß Hagen

von Sebbl (Gast)


Lesenswert?

Also bei ebay gibt es immer mal 50x at90S1200 für 23€ oder so. Wenn man
2 Portpins parallel betreibt hat man auch genug strom für eine IR LED.
Leistung hat der auch genug um einen IR Code zu senden. Bei 20 Portpins
kann man auch problemlos lötbrücken anbringen. Wenn man sich mühe gibt
bekommt man ne schöne kleine platine hin und kann dann sogar die
codierung mit silberleitlack vornehmen. Die haben auch einen internen
oszi mit dem man sich einen externen quarz erspart. Einziges problem
man braucht einen parallelen programmer um die zu nutzen.

von Günter König (Gast)


Lesenswert?

Gut Hagen,
denke mal, wir sollten uns mal näher über 600 Ohm unterhalten.
O413151231

Günter

von Günter König (Gast)


Lesenswert?

Holla Malte,
die Wagen und die Lokomotiven sind zwar klein, denoch gut sichtbar. Es
macht daher wenig Sinn, diese mit viel Mühe gestalteten kleinen
Fahrzeuge durch Sparmarktähnliche seitlich angebrachte Barcodestreifen
zu entstellen.
Auch um mögliche verwechselungen mit handelsüblichen Tampons zu
vermeiden.

(:-))


Günter

von Tommi (Gast)


Lesenswert?

Hallo,
Speziell für die Modellbahn eignet sich auch die Transpondertechnik.
Transponder irgendwo an,in oder unter der Lok bzw. Wagen anbringen,
leseantenne unter die Gleisbettung und elektronik mit PC verbinden.
Gibt es z.B. bei www.helmo.de oder www.ldt-infocenter.com(Traindetect)
Tommi

von Peter D. (peda)


Lesenswert?

Ich kann garnicht verstehen, warum hier immer ein Reichweiten- oder
Winkelproblem genannt wird.

Der Standard IR-Empfänger TSOP1836 ist schließlich für 7m Reichweite
ausgelegt. Daher must Du ihn eher noch abblenden, damit nicht die Lock
auf dem Nachbargleis mit erfaßt wird.


Zum Protokoll:

Ich rate auch zum RC5, da es am einfachsten zu erzeugen und zu
dekodieren ist, sowie auch sehr störsicher und tolerant gegen
Taktschwankungen.
D.h. der interne RC-Oszillator eines Tiny12 ist mit Sicherheit genau
genug dafür.

Allerdings würde ich auch die Pause verkürzen, was aber kein Problem
ist, da Du ja keinen Strom sparen must.
Die Bitzeit ist 1,8ms, somit ist eine Pause von 5..10ms mit Sicherheit
ausreichend.

Der RC5 besteht aus 1 Startbit und 12 Datenbits, d.h. Du kannst den
Code (6bit) und dann dessen Komplement senden, um Lesefehler
auszuschließen.
Aber da Du ja Sender und Empfänger programmierst, kannst Du auch die
Bitzahl beliebig ändern.


Vom AT90S1200 rate ich ab, die wollen den nämlich aus gutem Grund
loswerden.
1. hat er kein Brown-Out-Reset, d.h. wenn die Lockspannung schwankt
kann er schnell verrecken.
2. ist dessen RC-Oszillator nicht kompensiert und kann daher weit
streuen. Du müßtest also bei jeder Lock erstmal die Bitzeit ausmessen,
was die Auswertung deutlich erschwert.

Die ATTiny12 oder ATTiny26 sind ja auch nicht teuer, aber eben viel
zuverlässiger.


Peter

von Günter König (Gast)


Lesenswert?

Hi Tommi,
sag mal, bist du grad erst aufgewacht? Oder hast du den Thread nicht
gelesen?
Das Thema RFID ist schon durch!!!!!!

Gruß zur Nacht,
Günter

von Günter König (Gast)


Lesenswert?

Hallo Peter,

das was du so lapidar als Reichweitenproblem abtust ist in der Tat das
grösste Problem.
Auf einer so kurzen Distanz von <= 1cm spielt die Winkelauflösung und
die Übertragungsgeschwindigkeit eine sehr große Rolle.
Hagen hat das in seinen Beiträgen absolut korrekt ausgeführt und
Versuche am heutigen Abend mittels einer Standardfernbedienung haben
das exakt bestätigt!

Peter, danke dir und viele Grüße,

Günter

von Hagen (Gast)


Lesenswert?

@Peter,

das "Reichweiten-Problem" besteht nicht darin möglichst große
Entfernungen zu überbrücken, sondern genau im Gegenteil die geforderte
Maximal-Distanz von durchschnittlich 1cm wird zum Problem im maximalen
Erfassungsbereich. Wie gesagt, der SFH5110 = TSOP haben eine
Winkelöffnung von 90°. Somit wären sie bei einer Distanz von 1cm exakt
2cm empfindlich. Innerhalb dieser 2cm bewegt sich also die IR Sende
Diode im Waggon über den IR-Sensor. So, den Rest mit einer
Geschwindigkeit bei 100km/h Maximum kannst du bestimmt selber am besten
abschätzen. RC5 mit 20ms pro Telegram und 160ms Pause dazwischen ist
auf alle Fälle zu langsam. Bei der Wahl des richtigen Protokolles ist
jede Idee willkommen. Ich tendiere auch zu einer Manchaster Codierung,
aber im Verhältnis zu RC5 mit verkürzten Bitlängen. Dies wirft aber
dann zusätzliche Probleme mit der Frequnzgenauigkeit des Taktgenerators
auf, denn jedes Bauteil am Sender das eingespart werden kann ist
hilfreich. D.h. es müsste Manchaster Codierung mit implizierter
Selbstsynchronisation sein. Dein Vorschlag mit dem invertierten 2.
Telegram würde ich zu gunsten einer Prüfsumme im Original Telegram
aufgeben. Allerdings, was ist besser ??
Würde man auf Pulslängen Bit Codierung, wie beim Sony Protokoll,
ausweichen so wäre die Selbstsynchronization unproblematisch.
Allerdings wäre die Telegramdauer abhängig vom Telegraminhalt. Dies
könnte man in gewissen Teilen wohl durch eine Gray-/Greencode Codierung
der Bits kompensieren können.


Bautechnisch gäbe es 3 Lösungen:
1.) die Empfänger müssten tiefer versenkt werden damit sich die Distanz
zum Wagenboden vergrößert und somit der Sensorbereich verbreitert.
Allerdings die Aufgabe sagt ganz klar 1cm.
2.) statt senkrechte Sensorik müsste man die Sensorik nach vorne
gerichtet in Fahrtrichtung bauen. D.h. die Empfänger-Empfangsachse wäre
parallel zu den Gleisen und in Fahrtrichtung. Nur, ich vermute mal das
die Fahtrichtung in zwei Richtungen sein könnte. Somit benötigte man
für eine Sensor-Stelle schon zwei Empfänger. Und, man würde diese
"Aufbauten" dann sehen.
3.) Optiken am Empfänger um dessen Blickwinkel zu ändern.

Alle drei Lösungen zielen darauf ab den zeitlichn Empfangsbereich bei
einer Distanz zum IR Sender von 1 cm zu verlängern, also bei
darüberfahrendem Wagen die Zeitspanne des Überschneidens von IR Sender
und IR Empfänger zu verlängern.


Gruß Hagen

von Günter König (Gast)


Lesenswert?

Hagen,
gib mir doch bitte mal deine Mailadresse. Ich kann sie leider im Thread
nicht sehen.

Gruß,
Günter

von Dieter B (Gast)


Lesenswert?

Hallo zusammen

Ich verfolge den Thread mit großem Interesse. Finde gut, daß sich die
Leute hier so rein hängen.

Nun. Ich habe nochmal gerechnet und komme auf andere Ergebnisse.

Bei eine aktiven Erfassungsbereich von ca 2 cm bei 8 ms komme ich
leider nur auf 9 km / h.

Nimmt man z.B. eine max. Geschwindigkeit von 27 km/h an, kommt man bei
einem Erfassungsbereich von ungefähr 1,5 cm auf 2 ms Zeitfenster. Nimmt
man jetzt eine Frequenz von 40 KHz, so brauchen die Empfänger
mindestens 10 Burst zum sauberen Empfang, ergibt bei 40 KHz minimale
LOW / High Zeiten von 250 us.

Mit einer Manchester Codierung beträgt also eine Bitzeit 500 us. Zu
übertragen wären minimal 1 Startbit  + 6 Datenbits = 3,5 ms

Dazu kommt aber aber noch eine "Sendepause" um den Start sauber zu
finden. Vorschlag 700 us. Damit wäre man dann auf 4,2 ms für ein
Datenpacket. 2 sollten meiner Meinung nach mindestens hintereinander
empfangen werden. Wären dann aber schon 7 ms.

Man muß aber ja mit dem schlimmsten Fall ausgehen, das der Sender
gerade dann ein neues Packet sendet, wenn er gerade noch nicht im
Empfangsbereich ist. Damit kann sich ja dann eine Verzögerung von max
3,4999999999 ms ergeben, bis das erste neue Packet gesendet wird.

Also braucht man doch mindestens 2 * 3,5 ms + 3,4999999 ms um sicher
immer 2 Packete empfangen zu können. Das ergibt dann 10.499 ms, bei 1,5
cm = 5,1 km/h.

Oder sehe ich das so falsch ?

MFG
Dieter

von Dieter B (Gast)


Lesenswert?

Hallo

Stimmt so nicht
"
Also braucht man doch mindestens 2 * 3,5 ms + 3,4999999 ms um sicher
immer 2 Packete empfangen zu können. Das ergibt dann 10.499 ms, bei
1,5
cm = 5,1 km/h."

Müsste so besser passen

zu früh               Start
3,49 ms    + 700 us + 3,5 ms + 700 us + 3,5 ms =  11,89 ms = 4,54 km/h

MFG
DIeter

von Dieter B (Gast)


Lesenswert?

Hallo

Man könnte ja z.B. 3 Empfänger parallel schalten und dann
hintereinander im Gleis versenken, um das Zeitfenster zu vergrössern.

Um wieviele Empfänger geht es eigentlich ?

MFG
Dieter

von Hagen (Gast)


Lesenswert?

Stop mal, lass uns mal Schritt für Schritt nachrechnen, ich hatte eh das
Gefühl das die Umrechnungen von cm/s nach km/h einiges
"um-die-ecke-denken" benötigt.

Also 2cm/8ms = 2cm/0.008s, nun 1cm/0.008s  entspräche 125cm/s richtig ?

2cm/8ms zu 125cm/1s wie 2 zu 1, also 250cm/s. * 60 Sekunden pro Minute
= 15000cm/Minute * 60 Minuten pro Stunde = 900000cm/h, / 100 cm pro
Meter = 9000m/h, / 1000m pro km = 9km/h.

Gut laut dieser Rechnung habe ich im obigen Posting vergessen durch
100cm pro Meter zu dividieren.

>> Oder sehe ich das so falsch ?

Nein, ich sehe es zumindestens ebenfalls so, ging aber davon aus das
eventuell der IR Sender durch Reedkontakte oder Hallsensor EXAKT zum
richtigen Zeitpunkt anfängt zu senden.

Allerdings es ist im generellen noch zu kritisch. Die Idee zwei
Empfänger in "Reihe" zu schalten ist gut. Man könnte jetzt je nach
Kosten mehrere Wege gehen:

1.) Statt 2 Empfänger in Reihe, einfach 2-3 IR Sende Dioden in Reihe
und parallel angesteuert. Vorteil !? wir sparen den Vorwiderstand der
IR Sendedioden. Nachteil !? eine IR Sendediode kaputt, und garnichts
geht mehr.

2.) Statt 2 Empfänger in Reihe, 2 Empfänger im Winkel von 45°
zueinander, Rücken an Rücken. Somit empfängt ein Empfänger immer nur in
einer Fahrtrichtung, was ja auch von Vorteil sein könnte zur
Detektierung der Fahrtrichtung. Zudem erhöht sich nun dramatisch die
Reichweite, wenn die IR Sender entweder ebenfalls zwei "gekippte"
Dioden benutzen oder eine wie die SFH4111 mit 180° Abstahlwinkel.

Die Fahrtrichtungserkennung ist doppelt von Vorteil, denn wenn der Zug
auf die Empfänger zufährt haben wie einmal einen stark verlängerten
Sensorbereich und wenn der Zug über den Sensorblock gefahren ist den
gleichen Sensorbereich nochmal durch den zweiten Empfänger. 10cm
Sensorbereich wäre so lässig drinnen. Der SFH5110 ist zB. 7mm hoch und
somit absolut in der geforderten 1cm Distanz.


Gruß Hagen

von leo9 (Gast)


Lesenswert?

Ich hätt mal eine prinzipielle Frage zu dem Thema. Wie schnell fährt so
eine Modelleisenbahn nun wirklich und mit welchen Gleisspannungen ist
zu rechnen?

grüsse leo9

von Peter D. (peda)


Lesenswert?

Ich kann mir immer noch nicht vorstellen, daß der Winkel ein Problem
ist.
Bei 7m Reichweite muß der Sensor bei nur 1cm und Weitwinkel immer noch
genügend Licht kriegen (Reflexionen).

Eine FB oder den Sensor kann ich jedenfalls um 360° drehen, wenn ich
direkt vor dem Sensor bin und der Empfang bleibt unbeeinflußt. Selbst
meine Hand reflektiert noch mehr als ausreichend.

Aber alle theoretischen Diskussionen bringen da nichts, da die
Sensorhersteller nur die Charakteristik in 1..7m Entfernung, aber eben
nicht im absoluten Nahfeld angeben.

Man kann es daher nur ausprobieren, indem man eine endlose Folge von
Pulsen sendet und dann mitzählt, wieviel Pulse am Empfänger
rauskommen.

Und wenn es da wirklich Probleme geben sollte, kann man z.B. mehrere
Dioden in Reihe schalten oder das Licht mit einem Lichtleiter über die
ganze Loklänge verteilen.

Oder man setzt den Sensor vertieft ein und setzt eine IR-durchsichtige
Abdeckung ins Gleis.


Peter

von Günter König (Gast)


Lesenswert?

Moin Leo,
Geschwindigkeit einer MoBa in Spur N:
optimal ist eine Anpassung an das Vorbild also bei einer Dampflok BR 01
wären das 140KM/h.
Übertragen auf das Modell 140/160 = 0,875KM/h.
dies entspricht ca. 24cm pro Sekunde.
Geben wir noch einen Idiotenfaktor 50% nach oben an, kommen wir auf
36cm/s
Ich möchte dies mal als das absolute Maximum ansehen wo eine
Erkennungsschaltung noch funktioneren sollte.

Zu den Gleisspannungen:
es handelt sich um eine PWM mit einer Amplitude von 18V.
Das P/P Verhältnis ist variabel von 0,5 - 99%. Die Frequenz ist
abhängig vom zu betreibendem Motor und variiert somit zwischen 80Hz und
20KHz.
An den Stellen, wo eine Auswertung stattfinden soll, wird das P/P
Verhältnis allerdings nie unter 50% sein.

Gruß,
Günter

von Hagen (Gast)


Lesenswert?

ok, dann passt das doch. 36cm/s = 1cm/28ms, da wir ja schon feststellten
das wir 2cm Sensorbereich haben, kommen wir auf 56ms in denen wir 2
Telegramme vollständig empfangen müssten. Na das dürfte aber ohne
zusätzliche Tricks drinnen sein.

Schade eigentlich, denn ich wusste garnicht das der Maßstab des Modells
sich nicht nur auf das Modell selber sondern auch auf dessen
Geschwindigkeit bezieht. Wäre schon cool gewesen: ein ICE auf Spur N
der mit 280km/h am Modellbauer vorbei fliegt :)

@Peter, ich gebe dir in gewisser Weise recht. Es werden Reflexionen
auftreten die die Reichweite erhöhen. Nur damit von vornhinein zu
kalkulieren ist glaube ich nicht so gut. Man könnte diese Reflexionen
sogar absichtlich herbeiführen und somit zur Erhöhung des
Sensorbereiches ausnutzen. Ich denke da an Alu Folie die unter den
Waggon geklebt wird. Die IR Sende Diode strahlt nun nicht in Richtung
Gleise ab, sondern in Richtung Alufolie.

Bei 12ms Telegram + 3ms Pausen kommen wir auf immer 3 Telegramme
innerhalb der 2cm.

Gruß Hagen

von leo9 (Gast)


Lesenswert?

Die bisherigen Vorschläge "kranken" doch alle am modulierten
IR-Signal. Was haltet ihr von IRDA?
... und wer entkräftet meine Argumente dafür?

IRDA ist zwar für einige Baudraten spezifiziert, da wir aber sowohl die
Sender-, als auch die Empfängerseite im Griff haben erlaube ich mir mal
eine krumme Baudrate, 66,6666 kBaud (die läßt sich nämlich mit einem
1MHz laufenden uP geradzahlig implementieren).

1 Bitlänge = 1/66.666 = 150 us
-> 1 Bytelänge (1 Start + 8 Daten + 1Stop) = 10 Bitlängen = 150us
dazu noch 1 Bytelänge Pause brauchen wir 300us zur Übertragung von 8
Bit

Empfangsproblematik:
als absolute Grenzwerte setz ich mal folgende an:
vmax = 1m/s (3,6km/h)
"Sichtbarkeitsbereich" zw. Sender und Empänger 5mm
daraus ergeben sich 5 ms Lesezeit und damit 16 Wiederholungen.
Mit dieser Redundanz würde ich auf alle Fehlerkorrekturen verzichten.

Als Empfänger schlage ich den TFDU4100 vor; die Senderhälfte von dem
Bauteil brauchen wir zwar nicht, aber die Empfangseigenschaften sind
sehr gut und der Aufpreis gegenüber einem "38kHz" Empfänger hält sich
mit etwa 2 Euro in Grenzen.

grüsse leo9

von Hagen (Gast)


Lesenswert?

> Die bisherigen Vorschläge "kranken" doch alle am modulierten
> IR-Signal. Was haltet ihr von IRDA?

Hm, wieso kranken ? Man moduliert ja um das Nutzsignal von Störsignalen
zu trennen, richtg. Nun, wenn ein IR Signal mit Manchastercodierung als
Modulation für 36KHz dient, und krankt, dann sollte IrDA das ohne
Manchaster arbeitet und ebenfalls auf 36KHz modulierten IR Pulsen
arbeitet, die gleichen Physikalischen Eigenschaften besitzen.

Der einzigste Unterschied wäre, wenn ich richtig informiert bin, das
sich die Empänger von IrDA und Fernbedienung's-IR unterscheiden. Der
IrDA Chip ist auf relativ kurze Entfernungen ausgelegt und hohe
Datenraten, die bei weitem höher sind als das was wir benötigen. Der
andere Empfänger ist auf Störsignal-Unterdrückung und große
Entfernungen ausgelegt. Also, ich würde meinen Tipp auf die obige IR
Lösung abgeben wollen.

Gruß Hagen

von Hagen (Gast)


Lesenswert?

Achso, bei meinen damaligen Entwicklungen für die Palm-Handheld's,
testeten wir die IrDA Übertragung vom Thungsten T und Palm IIIc zu
einem Siemens S55. Nur wenn beide, Sender und Empfänger, ganz genau
aufeinanderzu zielten (ca. 50cm), kam es überhaupt zur Verbindung.

Aber wie oben Peter schon sagte, wenn man eine gute fernbedienung nimmt
kann sogar die Haut als Reflektor dienen und denoch ein sauberes Signal
empfangen werden.

Gruß Hagen

von leo9 (Gast)


Lesenswert?

IRDA moduliert eben nicht, es gibt einfach nur einen IR-Puls für eine
logische Null.
Den Nachteil der Modulation sehe ich an der Einlaufzeit der
Empfangsfilter (siehe oben die genannten 500us für ein Bit, bzw. 7ms
für zwei Pakete)

IRDA ist übrigends für unterschiedlichste Baudraten ausgelegt (von 9600
Baud bis in den MBit-Bereich)

grüsse leo9

von Peter D. (peda)


Lesenswert?

Ich denke mal, um einen Testaufbau kommt man nicht umhin.

Einfach einen ATTiny12 so programmieren, daß er 36kHz mit 1ms Puls /
1ms Pause erzeugt.

Dann eine LED an den TSOP1836 hängen und man wird sehen, wie weit man
die Lok drüberschieben kann, bis die LED an und wieder ausgeht.
Bzw. ob man den Sensor tieferlegen oder abschirmen muß, um den
Empfangsbereich auf das gewünschte Maß zu vergrößern oder zu
verkleinern.

Ich tippe darauf, daß eine Verkleinerung notwendig sein wird.


Peter

von Hagen (Gast)


Lesenswert?

@Peter, mir fällt auf das du öfters Produkte von Siemens/Osram
vermeidest. Hat das einen Grund  den ich nicht kenne ?

Der TSOP1836 dürfte wirklich besser geeignet sein als der SFH5110, da
er laut Datenblättern einen größeren Empfindlichkeitwinkel bestitzt als
der SFH5110. Wenn ich das richtig interpretiere hat der TSOP bei 70°
wesentlich höhere Empfindlichkeit als der SFH.

Gruß Hagen

von Peter D. (peda)


Lesenswert?

@Hagen,

"mir fällt auf das du öfters Produkte von Siemens/Osram
vermeidest"

Das täuscht, ich habe in einem Projekt auch mal den C505 verwendet, da
gab es den 89C51CC01 leider noch nicht.


Ich habe irgendwann eine Sensor gesucht und in den Conrad geschaut. Da
gab es einen teuren großen Metallkasten und einen kleinen billigeren,
der aussieht wie ein Fototransistor.
Da habe ich eben den kleinen billigeren genommen.
Das scheinen viele zu machen, der TSOP kommt sehr oft in solchen
Anwendungen vor.

Daß der teure große Metallkasten von Siemes ist, wußte ich nicht.


Peter

von Hagen (Gast)


Lesenswert?

Naja, der SFH5110 ist das Vergleichsmodell zum TSOP18xx, mit dem
Unterschied das die Linse beim TSOP exakt rund ist und beim SFH eben
oval. Muß aber nicht's zu sagen haben.

Gruß Hagen

von Thomas Oly (Gast)


Lesenswert?

Hallo,

vorweg habe nicht alle Beitrage durchgelesen, habe aber nen anderen
Vorschlag, du baust Astabile Kippstufen auf und bei jeder stellst du
durch einen Poti unterschiedlich lange Impulse ein. Die ein IR-Diode
versorgen. Das wäre vom Platz her am besten. Und baust dir aus einem
AVR mit Timer/nterupt eine Stoppuhr die die länge der IR Impulse misst,
dadruch kannst du erkennen welcher zu gerade fährt.

Oder eine andere Möglichkeit. Du verbaust auf jedem wagen ne kleine
Knopfzelle , einen Poti und eine IR-LED und misst mit einem AVR mit A/D
Wandler mittels Fotodiode die stärke de IR-Signals und stelltst halt
jeden Wagen unterschiedlich ein.

von Peter D. (peda)


Lesenswert?

@Thomas,

"habe nicht alle Beitrage durchgelesen"

aber den ersten Beitrag sollte man sich wenigstens durchlesen und da
steht doch was von:

"geringstmöglicher externer Beschaltung"

Und ein Transistor, Kondensator, Widerstands, Poti-Grab ist mit
Sicherheit aufwendiger als ein Tiny12.


Peter

von Günter König (Gast)


Lesenswert?

Hallo Thomas, Hi Peter,

aufgrund des vorhandenen Platzmangels ist eine "Massengrab" Lösung
unrealistisch. Weiterhin ist jeder Einstellpunkt (Poti) eine
potentielle Fehlerquelle in Bezug auf thermisches Verhalten. Solch eine
Lösung ist somit nicht zu gebrauchen.

Favorisiert wird der Aufbau mittels Tiny. Gefeilt werden muss noch an
der Platinengröße, da geht es um zehntel Millimeter.
Hier geht es darum, die Platine nicht breiter als 9mm machen. Aber die
Schlacht ist in vollem Gange....

Gruß,
Günter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.