Hallo zusammen, Folgende aufgabenstellung habe ich mir selbst auferlegt: Bei einer infrarolichtschranke mit einer mit ca 7khz getakteten IR-LED stehe ich auf empfängerseite vor der Herausforderung möglichst schnell zu erkenne wann die Schranke unterbrochen wurde. Aktuelle habe ich das mit einem Kondensator gelöst den ich auf empfängerseite auflade und langsam entlade wenn kein hoher Pegel von der IR Photodiode kommt, dahinter sitzt ein Schmitt-Trigger der ab dem unterschreiten eines gewissen Ladezustands auslöst und somit meinem pic mitteilt, dass die Schranke (lange genig) unterbrochen wurde. Laut Oszilloskop ist das halbwegs fix aber es Vergehen eben schon eine paar Takte bis der kondensator genug entladen ist. Natürlich kann ich den Kondensator und den entladewiderstand noch etwas umdimensionieren um so noch schneller auslösen zu können, aber ich frage mich ob ich überhaupt den richtigen Ansatz verfolgen. Hab auch schon überlegt ggf mit einem zweiten Timer ic bei jedem high Pegel auf empfängerseite eine One Shot Timer zu starten der in der Länge genau der Amplitude (ich meine die länge einer high und einer low phase) oder ewas länger entspricht und somit die low-Phase überbrückt. Kommt nun der nächste High Pulse an überbrücke ich wieder usw. Bleibt jedoch auch nur ein einziger High Pulse aus, geht der Timer auf low und ich habe eine Flanke für den pic. Ich möchte übrigens bewusst diese Logik außerhalb des pics haben und nicht mit dessen internen komparatoren oder Timern arbeiten, da der pic schon genug Rechenaufgaben hat und durch diverse Interrupts schon oft genug "gestört" wird :) Bin für denkanregungen oder links dankbar, hab selbst nix gefunden, wobei mir auch nicht ganz klar ist wonach ich suchen sollte (Begrifflichkeit für diesen anwendungsfall) Danke & Gruß Paul
Nimm doch einfach ein "nachtriggerbares Monoflop", gib den Takt auf dessen flankengesteuerten Eingang. On-Zeit des Monos etwas größer als die Periodendauer deines Signals wählen und gut ist. Fällt der Takt aus, hängt, zu langsam fällt das Mono ab. Zu schnellen Takt kannst Du dadurch abblocken, daß Du mit einem 2. Mono das nicht nachtriggerbar ist, den Takteingang für eine Zeit kürzer als die Periodendauer des Signals sperrst. Könnte sein daß beide Funktionen in einem 6-Haxer PIC relisierbar sind.
Ich würde mit der Taktfrequenz auf etwa 40kHz hochgehen und einen fertigen TSOP-Empfänger verwenden. Der hat schon alle möglichen Massnahmen gegen Störungen und Fremdlicht drin.
Wow, danke euch allen für die schnellen Antworten. Hort sich alles besser an als das was ich machen wollte (bzw der link ist ja genau das was ich vorhatte mit dem ne555. Zu dem letzten Vorschlag mit dem TSOP: grundsätzlich hab ich von denen auch schon zwei geordert und werde bei gelegenheit auch damit spielen, aber bekomme ich da nicht auch noch ein gefaltetes Signal raus (in dem fall dann eben 40 kHz)? Oder war der Beitrag nur als Ergänzung gedacht um störunanfälliger zu arbeiten? Vielen Dank für eure Hilfe Gruß Paul
Sorry, waren ein paar Tippfehler in meiner Antwort, sollte "getaktetes" und nicht "gefaltetes" heißen, hat das eiphon einfach verschlimmbessert.
Die TSOP liefern ein LOW-Signal am Ausgang, sobald ein IR-Signal mit passender Frequenz detektiert wird.
nee, der TSOP liefert dir eine "Gleichspannung". Allerdings kann man ihn nicht dauerbefeuern, sondern muss das Signal takten. Er filtert dir das 40kHz-Trägersignal heraus und liefert dir den Takt, mit dem dieses Signal moduliert wird. Du musst also deine IR-Sende-LED mit 40kHz takten und diesen Takt noch mal (langsamer) takten...
Paul schrieb: > aber bekomme ich da nicht auch noch ein gefaltetes Signal raus (in dem > fall dann eben 40 kHz)? Nein. Die gängigen Typen sind für 36 oder 38 KHz. Die LED wird dann entsprechend getaktet und der Empfänger filtert jeden Dreck, der da noch so rumblinkt raus. Am Ausgang bekommst du High, wenn er die Frequenz empfängt und Low wenn nicht. mfg.
Danke euch, besonders das mit dem "nicht dauerbefeuern" habe ich schonmal irgendwo gelesen, weshalb ich davon ausgegangen bin das der TSOP für mich nicht die Lösung sei. Wenn ich euch richtig verstehe Takte ich also die LED mit 40khz (oder für welchen bereich auch immer der TSOP nun spezifisch gedacht ist, ich glaube ich habe hier welche für 38khz rumfliegen) und Takte diese Frequenz dann nochmal mit z.b. Meinen 7 kHz (hier ist aber dauerfeuer ok, oder?). Dann Sollte ich hinter dem TSOP wieder ein sauberes 7khz Signal empfangen welches ich dann schön an den ge-retriggerten Monoflop durchreiche um jeden Aussetzer durch Unterbrechung des IR-Lichtstrahls zu detektieren und der Drops ist gelutscht. Korrekt wiedergegeben? Danke & Gruß Paul
Paul schrieb: > und Takte diese > Frequenz dann nochmal mit z.b. Meinen 7 kHz (hier ist aber dauerfeuer > ok, oder?). Ahh.. wozu noch mal die 7kHz? Du hast auf der Senderseite die LED mit 40kHz und auf der Empfängerseite direkt ein 1 - 0 Signal wenn die Lichtschranke unterbrochen wurde. Den Ausgang kannste direkt an den PIC anschließen
Paul schrieb: > Ich möchte übrigens bewusst diese Logik außerhalb des pics haben und > nicht mit dessen internen komparatoren oder Timern arbeiten, da der pic > schon genug Rechenaufgaben hat und durch diverse Interrupts schon oft > genug "gestört" wird :) Ooch Nöö. Der MC langweilt sich bei solchen kleinen Aufgaben tierisch. Timer gehen auch nicht verloren. Ein Timerinterrupt kann viele Aufgaben zugleich erledigen (Tasten entprellen, LED-Matrix multiplexen, Uhrzeit zählen und und und). Den TSOP würde ich auch empfehlen, damit kann man Fremdlicht optimal unterdrücken. Die LED (38kHz, Tastverhältnis 25%) steuert dann praktischer Weise ein PWM-Ausgang des MC an. Je nach Typ des TSOP sind die minimalen und maximalen Impulslängen einzuhalten, 7kHz Modulation geht auf keinen Fall. Die Modulation kann (sollte sogar) völlig zufällig erfolgen (Jitter erwünscht). Der MC weiß ja immer, wann er die LED an- oder ausgeschaltet hat. Damit es es unmöglich, daß jemand die Frequenz mißt und Deine Lichtschranke durch einen anderen Sender lahmlegt. Peter
Düsendieb schrieb: > Paul schrieb: >> und Takte diese >> Frequenz dann nochmal mit z.b. Meinen 7 kHz (hier ist aber dauerfeuer >> ok, oder?). > Ahh.. wozu noch mal die 7kHz? > Du hast auf der Senderseite die LED mit 40kHz und auf der Empfängerseite > direkt ein 1 - 0 Signal wenn die Lichtschranke unterbrochen wurde. Den > Ausgang kannste direkt an den PIC anschließen Die 7 khz waren, weil der TSOP kein Dauersignal mag (so lese ich das auch aus dem Datenblatt: "Some examples of disturbance signals which are suppressed are: ... • Continuous signals at 38 kHz or at any frequency" einer der Vorredner hat das ja auch bestätigt: STK500-Besitzer schrieb: > nee, der TSOP liefert dir eine "Gleichspannung". > Allerdings kann man ihn nicht dauerbefeuern, sondern muss das Signal > takten. > Er filtert dir das 40kHz-Trägersignal heraus und liefert dir den Takt, > mit dem dieses Signal moduliert wird. > Du musst also deine IR-Sende-LED mit 40kHz takten und diesen Takt noch > mal (langsamer) takten... Scheint aber das hier nicht alle dieser Auffassung sind. Zu dem Thema Manipulation und zufälliger Modulation: Peter Dannegger schrieb: > Die Modulation kann (sollte sogar) völlig zufällig erfolgen (Jitter > erwünscht). Der MC weiß ja immer, wann er die LED an- oder ausgeschaltet > hat. > Damit es es unmöglich, daß jemand die Frequenz mißt und Deine > Lichtschranke durch einen anderen Sender lahmlegt. Danke für deinen input Peter. Sicherlich sehr sinnvoll im Sicherheitsbereich, jedoch baue ich die Lichtschranke nur für eine Geschwindigkeitsmessung mit zwei Lichtstrahlen. Zudem wird die Frequenz (die 38 Khz) von einem externen Timerbaustein (LMC555) generiert und der PIC ist demnach auch hiervon nicht betroffen. Ich habe im Datenblatt des TSOP jedoch folgendes gefunden: After each burst of length 10 to 70 cycles a minimum gap time is required of >= 10 cycles worauf sich, wie ich vermute, deine Aussage bezieht Peter Dannegger schrieb: > Je nach Typ des TSOP sind die minimalen und maximalen Impulslängen > > einzuhalten, 7kHz Modulation geht auf keinen Fall. Wenn ich das alles nun also richtig interpretiere muss in der aufmodulierten Frequenz nach max 70 Takten/Amplituden der Trägerfrequenz (38Khz)für mindestens 10 Takte eine Pause erfolgen. Ein weiterer Verweis im Datenblatt besagt "Minimum burst length 10 cycles/burst". Demnach könnte ich doch kontinuierlich im modulierten Signal zehn Takte senden, dann 10 Takte ruhe, dann zehn Takte senden usw. Bei den 38khz wäre also die aufmodulierte Frequenz genau mit 1/10tel zu wählen, also 3,8 khz mit einem Tastverhältnis von 50% oder wird das so nix? Besser wäre natürlich ca 60 Takte senden, dann ca 15 Takte Ruhe um genauer in der Spezifikation (10 to 70 cycles burst lenght, >= 10 cyles pause) zu bleiben. Könnte also das Tastverhältnis vom modulierten Signal einfach auf 80/20 oder ähnliches zu stellen. erhellt mich, ich bin bestimmt kurz davor es zu verstehen :-) Danke Euch [falls es jemanden interessiert ich nutze einen TSOP312xx von Vishay, aber mir geht es ja darum die Materie zu verstehen und nicht das ihr das Datenblatt für mich wälzt]
ach, wundert euch nicht wenn ich mal von 38khz mal von 40 khz Trägerfrequenz gesprochen habe, war mich nicht ganz sicher welchen TSOP ich habe, eigentlich ist es sogar ein 30 Khz Teil, aber das ist ja für das Verständnis erstmal Wurst
Paul schrieb: > eigentlich ist es sogar ein 30 Khz Teil, Ich würde sogar bewusst eine von 38kHz abweichende Frequenz wählen, um die Störmöglichkeiten zu verringern. Gruss Harald
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.