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
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
eben, einen von den tiny's und der rc5 generator ist kleiner als "handelsübliche" fernbedienungs-ic's
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
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
@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 ;-)
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
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.
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
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 ;-)
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
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.
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
Ach ja, hab ich vergessen: sollte jemand Hardwaremäßig bessere Vorschläge haben würde ich mich freuen!!! So denn, Günter
@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.
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
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
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
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
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
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
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
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
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
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
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
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
> 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
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
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
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
@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.
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
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
@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...
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
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.
Gut Hagen, denke mal, wir sollten uns mal näher über 600 Ohm unterhalten. O413151231 Günter
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
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
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
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
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
@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
Hagen, gib mir doch bitte mal deine Mailadresse. Ich kann sie leider im Thread nicht sehen. Gruß, Günter
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
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
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
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
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
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
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
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
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
> 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
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
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
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
@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
@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
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
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.
@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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.