Sehr geehrte Elektronikfreunde
Ich habe ein Problem mit der IR-Fernbedienung.
Ich erhalte keine Codes im seriellen Monitor, wenn ich irgendeine Taste
auf der Fernbedienung drücke. Ich habe schon jegliches versucht, aber
ich komme einfach auf keinen rechten Pfad.
Meine Hardware: Makeblock MegaPi AT2560 microcontroller,
Fernbedienungs-Set mit VS1838B und Breakout.
Mein Programm:
#include <IRremote.h>
#include <IRremoteInt.h>
// Define sensor pin
const int RECV_PIN = 1;
// Define IR Receiver and Results Objects
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup(){
// Serial Monitor @ 9600 baud
Serial.begin(9600);
// Enable the IR Receiver
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode(&results)){
Serial.println(results.value, HEX);
switch (results.decode_type){
case NEC:
Serial.println("NEC");
break;
case SONY:
Serial.println("SONY");
break;
case RC5:
Serial.println("RC5");
break;
case RC6:
Serial.println("RC6");
break;
case DISH:
Serial.println("DISH");
break;
case SHARP:
Serial.println("SHARP");
break;
case JVC:
Serial.println("JVC");
break;
case SANYO:
Serial.println("SANYO");
break;
case MITSUBISHI:
Serial.println("MITSUBISHI");
break;
case SAMSUNG:
Serial.println("SAMSUNG");
break;
case LG:
Serial.println("LG");
break;
case WHYNTER:
Serial.println("WHYNTER");
break;
case AIWA_RC_T501:
Serial.println("AIWA_RC_T501");
break;
case PANASONIC:
Serial.println("PANASONIC");
break;
case DENON:
Serial.println("DENON");
break;
default:
case UNKNOWN:
Serial.println("UNKNOWN");
break;
}
irrecv.resume();
}
}
Wäre sehr froh, wenn mir jemand helfen könnte :)
Gruesse
Nachdem ich selbst schon diverse Probleme mit dem seriellen Monitor
erleben durfte, würde ich als erstes eine Testausgabe einfügen, um zu
sehen ob auf dem Monitor überhaupt etwas ankommt.
>void loop(){
Serial.println("Test"); //<<<<<<<
> if (irrecv.decode(&results)){
Es tut sich immer noch nichts. Langsam verzweifle ich.
Ich habe GND an GND, VCC an 5V und I/O an Pin 11 angeschlossen.
Übersehe ich irgendetwas oder muss ich beim Void setup noch etwas
definieren oder sonst noch wo?
Grüsse
Laurent B. schrieb:> Es tut sich immer noch nichts. Langsam verzweifle ich.
Wenn ein simples Serial.println("Test") nicht funktioniert, hast du ein
ganz anderes Problem.
Kannst du eine LED blinken lassen?
> Es tut sich immer noch nichts.
In so einem Fall fängt man mit ganz kleinen Brötchen an. Ich beginne
jede µC Entwicklung auf diese Weise:
1) eine LED blinken lassen
2) "Hello World!" auf dem seriellen Monitor ausgeben*
3) Ein Lauflicht programmieren, das sämtliche I/O Pins verwendet, die
man benötigt.
*) Bei ganz kleinen Sachen verzichte ich manchmal auf den seriellen
Monitor
Diese Vorgehensweise empfehle ich unabhängig von der
Entwicklungsumgebung.
Damit stellst du sicher, dass die Entwicklungsumgebung und Hardware
zumindest im Groben und Ganzen funktioniert. Erst nachdem das sicher
ist, würde ich damit anfangen, komplexe Programme (oder in deinem Fall
komplexe Libraries) zu benutzen.
Hallo
Habe jetzt das Arduino Uno geholt und auch da drauf funktioniert es
nicht.
Irgendetwas übersehe ich?!
Hier das Prog, jetzt einfach mit Pin11:
#include <IRremote.h>
// Define sensor pin
const int RECV_PIN = 11;
// Define IR Receiver and Results Objects
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup(){
// Serial Monitor @ 9600 baud
Serial.begin(9600);
// Enable the IR Receiver
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode(&results)){
Serial.println(results.value, HEX);
switch (results.decode_type){
case NEC:
Serial.println("NEC");
break;
case SONY:
Serial.println("SONY");
break;
case RC5:
Serial.println("RC5");
break;
case RC6:
Serial.println("RC6");
break;
case DISH:
Serial.println("DISH");
break;
case SHARP:
Serial.println("SHARP");
break;
case JVC:
Serial.println("JVC");
break;
case SANYO:
Serial.println("SANYO");
break;
case MITSUBISHI:
Serial.println("MITSUBISHI");
break;
case SAMSUNG:
Serial.println("SAMSUNG");
break;
case LG:
Serial.println("LG");
break;
case WHYNTER:
Serial.println("WHYNTER");
break;
case AIWA_RC_T501:
Serial.println("AIWA_RC_T501");
break;
case PANASONIC:
Serial.println("PANASONIC");
break;
case DENON:
Serial.println("DENON");
break;
default:
case UNKNOWN:
Serial.println("UNKNOWN");
break;
}
irrecv.resume();
}
}
Meine Schaltung als PNG beiliegend.
Freundliche Gruesse
Hallo
Ja das alles, auch das oben Erwähnte funktioniert.
Ich habe alles so angeschlossen wie in den Tutorials/Videos und die
Sketchs von der IR-Remote Library genommen.
Am Programm sollte alles i.O. sein oder muss man im Arduino IDE noch
etwas einstellen?
Die Baudrate 9600 ist ja der Standard und die Frequenz der
IR-Fernbedienung 38kHz ist ja auch gegeben. Habe es mit 4 verschiedenen
Fernbedienungen (Sony, Schwaiger, Sharp und einer CAR-Mp3 mit NEC-Code)
probiert, aber erhalte keine Codes im seriellen Monitor.
Habt Ihr sonst noch Vorschläge?
Waere sehr froh darüber. :)
Freundliche Grüsse
Laurent
vielleicht hilft das weiter. Ansonsten würde ich weitere Fernbedienungen
probieren.
Und in den Arduino IDE Einstellungen die Ausgaben beim Kompilieren
einschalten und Warnungen auf 'alle' stellen, Arduino möchte den
Anwender nicht mit vielen Meldungen verwirren und unterdrückt damit
gerne wichtige Meldungen.
Ich habe das schnell ausprobiert, einen TSOP1736 an GND/+5V, Data an
D11. Beispiel IRrecvDemo geladen, funzt auf Anhieb.
Bei 3 verschiedenen FB werden Codes an der seriellen ausgegeben:
Hallo
Leider tut sich immer noch nichts. Langsam verzweifle ich.
Der IR-Empfänger sieht intakt aus, aber testen kann ich es nicht.
Den IRremote Ordner habe ich normal im Desktop/Arduino
1.8.5/Libraries/IRremote drin.
Hat jemand Zeit, auf meinen PC zuzugreifen und das kurz anzuschauen?
Beiliegend der Sketch und das Debugfenster.
Freundliche Gruesse
das ist nicht das Debugfenster sondern die Kommandozeilenausgabe von
Übersetzung und Programmierung.
Was meldet der serielle Monitor, zumindest die Zeilen "Enabling IRin"
und "Enabled IRin" müssen ausgegeben werden.
Hallo geschätzte Elektronikfreunde
Die Zeilen 'Enabling IRin' und 'Enabled IRin' werden im seriellen
Monitor ausgegeben. Aber die Codes immer noch nicht.
Wie steht die Baudrate eigentlich in Abhängigkeit zur Frequenz oder
umgekehrt, oder stehen die beiden Einheiten überhaupt in Abhängigkeit
zueinander?
IR-Fernbedienungen haben ja eine Frequenz von 38kHz. Muss man die noch
irgendwo definieren?
Und im Commandfenster steht bei Oscillator 28.800khz, sind das
28'800'800Hz oder 28'800Hz? Weil der Punkt verwirrt mich. 1MHz = 1000kHz
= 1'000'000Hz.
Wie gesagt, ich bin nicht versiert mit der Informatik und Elektronik.
Bin Polymechaniker und habe lediglich die Grundlagen in der Schule
erworben in den Bereichen: Informatik, Steuerungs- und Regelungstechnik,
Elektronik, Robotik und Elektrotechnik. Tut mir leid, dass ich nicht
alles auf Anhieb verstehe. Ich muss mich langsam da reinarbeiten. :D
Freundliche Gruesse
Laurent B. schrieb:> IR-Fernbedienungen haben ja eine Frequenz von 38kHz. Muss man die noch> irgendwo definieren?
Nein, die siehst Du nicht!
Gib mal in der Schlaufe einen Text aus, damit Du siehst, ob Du überhaupt
ein Result bekommst, und ob es leer ist...
Gruss Chregu
Wenn 'Enabling IRin' ausgegeben wird steht die Baudrate richtig.
Dann die Debugausgaben aktivieren, in
C:\Users\xxx\Documents\Arduino\libraries\IRremote\IRremote.h
#define DEBUG 1
von 0 auf 1 ändern
Wenn jetzt ein Code empfangen wird werden eine Menge Ausgaben
rausgehauen. Wenn die nicht kommen ist was mit deiner HW faul. Ein Oszi
ist natürlich das Hilfsmittel was man jetzt bräuchte, alternativ einen
alten Ohrhöhrer an GND und Signal anschliessen, das müsste fürchterlich
krächzen wenn IR empfangen wird.
Wenn debug aktiv ist kannst du die Signalleitung vom IR Modul abklemmen
und mit dem Finger anfassen, das erzeugt Störungen die die SW als IR
interpretieren will und es laufen jede Menge debug messages rein. Wenn
also mit angeschlossenem IR Modul nix kommt ist das noch ein Indiz dafür
das was mit dem Modul faul ist.
Laurent B. schrieb:> IR-Fernbedienungen haben ja eine Frequenz von 38kHz. Muss man die noch> irgendwo definieren?
Mit den 38kHz hat die Software auf dem µC überhaupt nichts zu tun. Das
ist die Trägerfrequenz, für die der VS1838B ausgelegt ist.
Hast du den VS1838B richtig angeschlossen?
TSOP1736 und VS1838B besitzen völlig unterschiedliche
Anschlussbelegungen.
Laurent B. schrieb:> Das ist nicht wirklich hilfreich. Oder was willst du mit dem bezwecken?
Warum fragst du dann?
Laurent B. schrieb:> Wie steht die Baudrate eigentlich in Abhängigkeit zur Frequenz oder> umgekehrt, oder stehen die beiden Einheiten überhaupt in Abhängigkeit> zueinander?Laurent B. schrieb:> Und im Commandfenster steht bei Oscillator 28.800khz, sind das> 28'800'800Hz oder 28'800Hz? Weil der Punkt verwirrt mich. 1MHz = 1000kHz> = 1'000'000Hz.
Laurent B. schrieb:> Ja hab den richtig angeschlossen. Siehe das Bild weiter oben.
So ein Bild ist ganz schön, nützt zur Klärung der Anschlussbelegung aber
nur etwas, wenn man darauf nicht nur erkennen kann, wo die Leitungen hin
führen, sondern auch, wo sie her kommen. :-(
Laurent B. schrieb:> Habe jetzt das gemacht und diese Codes im seriellen Monitor erhalten.
Da sind die Debugausgaben aber nicht aktiv. Da aber werden irgendwelche
Codes empfangen, das ist doch schon mal gut.
Die Änderung im Code im Library Verzeichnis muss man mit einem
Texteditor machen und speichern, dann noch mal kompilieren und laden.
Wolfgang schrieb:> So ein Bild ist ganz schön, nützt zur Klärung der Anschlussbelegung aber> nur etwas, wenn man darauf nicht nur erkennen kann, wo die Leitungen hin> führen, sondern auch, wo sie her kommen. :-(
Lieber Wolfgang, habe das schwarze Kabel an I/0 -> PIN11, das graue an
GND -> GND und das weisse an VCC -> 5V angeschlossen. Die LED am
IR-Breakout leuchtet, somit fliesst ja Strom. :)
Johannes S. schrieb:> Da sind die Debugausgaben aber nicht aktiv. Da aber werden irgendwelche> Codes empfangen, das ist doch schon mal gut.> Die Änderung im Code im Library Verzeichnis muss man mit einem> Texteditor machen und speichern, dann noch mal kompilieren und laden.
Wie meinst du 'nicht aktiv' ? Hab ja '#define DEBUG 1' rein
geschrieben?!
Die Änderung im Code im Libraryverzeichnis machen? Kann Dir nicht ganz
folgen. :D
Ich habe eben mit den Fingern an GND und 5V rumgefummelt oder mit den
Kabeln über GND und 5V kurz Kontakt gegeben, dann sind diese Codes im
Monitor erschienen.
Habe jetzt plötzlich im anderen Sketch noch diese Codes erhalten. Habe
auch mit den Fingern an GND und 5V Anschlüsse rumgefummelt.
Hab da plötzlich etwas von Sanyo, wie kann das sein? :D
3021E98
UNKNOWN
1210D00F
UNKNOWN
FFFFFFFF
SANYO <---------------
EA0E5281
UNKNOWN
6BA470EF
UNKNOWN
89FCB205
UNKNOWN
Hast du bei #define DEBUG 0 die null durch eine 1 ersetzt oder nur
#define DEBUG 1 dazugeschrieben? Und hast du das Programm neu kompiliert
und hochgeladen?
Ist das eigentlich dein Ernst?
Johannes S. schrieb:> Wenn 'Enabling IRin' ausgegeben wird steht die Baudrate richtig.> Dann die Debugausgaben aktivieren, in> C:\Users\xxx\Documents\Arduino\libraries\IRremote\IRremote.h> #define DEBUG 1> von 0 auf 1 ändern
Natürlich sollst du es in der Library ändern, nur in deinem Code bringt
#define DEBUG 1 natürlich nichts. Änder es in der Library und probier’s
nochmal
Laurent B. schrieb:> Die Änderung im Code im Libraryverzeichnis machen? Kann Dir nicht ganz> folgen. :D
Hallo
Wo muss ich in der Library debug ändern oder wie auch immer?
Wie soll ich das machen?
Leute ich bin ein Grünschnabel in der Informatik. :D
Und danach sollten die Codes der Tasten im Monitor angezeigt werden oder
wie?
Habe es jetzt geschafft das Debug von 0 auf 1 in der Library zu ändern,
nach gefühlten 5h. :D
Erhalte jetzt die gleichen Codes wie oben erwähnt:
Attempting NEC decode
Testing mark (actual vs desired): 100us vs 9000us: 6800 <= 100 <=
11400?; FAILED
Attempting Sony decode
Attempting Sanyo decode
Attempting Mitsubishi decode
Attempting RC5 decode
Attempting RC6 decode
Testing mark (actual vs desired): 100us vs 2666us: 2050 <= 100 <= 3500?;
FAILED
Attempting Panasonic decode
Testing mark (actual vs desired): 100us vs 3502us: 2700 <= 100 <= 4550?;
FAILED
Attempting LG decode
Attempting JVC decode
Testing mark (actual vs desired): 100us vs 8000us: 6050 <= 100 <=
10150?; FAILED
Attempting SAMSUNG decode
Testing mark (actual vs desired): 100us vs 5000us: 3800 <= 100 <= 6400?;
FAILED
Attempting Whynter decode
Attempting Aiwa RC-T501 decode
Attempting Denon decode
Was heisst das jetzt? Ist der IR-Empfänger kaputt oder warum werden nach
Drücken der Fernbedienungstasten immer noch keine Codes angezeigt?
Laurent B. schrieb:> Wo muss ich in der Library debug ändern oder wie auch immer?
Nicht in der Library, sondern in dem Header-File der Library.
Suche einfach mal nach "#define DEBUG".
Je nach Version, die du benutzt, dürfte das etwa die Zeile 128 sein.
D.h. das kein gülter Code erkannt wurde. Auffällig ist aber das nur ein
100 µs Puls ankommt, mit 50 µs wird abgetastet und mit 100 µs hast du
eher nur eine Störung eingefangen, gültige Bitlängen liegen im ms
Bereich. Also mit einer anderen Empfängerdiode testen. Irgendein Gerät
schlachten oder sag den PLZ Bereich wo du wohnst, wenn in meiner Nähe
werfe ich dir eine rüber :)
Stefanus F. schrieb:> Was zeigt die LED an Pin 11 an?> Du solltest dringend Rückfragen beantworten, nur dann kann man Dir> zielführend helfen.
Also es sind vier LEDs am Arduino Uno. ON, L, TX,RX
ON und L leuchten ja logischerweise immer.
Wenn ich aber mit den Fingern an PIN 11 oder an 5V rumfummle, erscheinen
diese Codes und die LED 'TX' leuchtet dann auf.
Wolfgang schrieb:> Laurent B. schrieb:>> Wo muss ich in der Library debug ändern oder wie auch immer?>> Nicht in der Library, sondern in dem Header-File der Library.> Suche einfach mal nach "#define DEBUG".>> Je nach Version, die du benutzt, dürfte das etwa die Zeile 128 sein.
Ja danke, habs bereits gefunden. :)
Johannes S. schrieb:> D.h. das kein gülter Code erkannt wurde. Auffällig ist aber das nur ein> 100 µs Puls ankommt, mit 50 µs wird abgetastet und mit 100 µs hast du> eher nur eine Störung eingefangen, gültige Bitlängen liegen im ms> Bereich. Also mit einer anderen Empfängerdiode testen. Irgendein Gerät> schlachten oder sag den PLZ Bereich wo du wohnst, wenn in meiner Nähe> werfe ich dir eine rüber :)
5728 :D
Besten Dank für Euren Support.
Ich werde mir ein Breadboard zulegen und es mit einem neuen IR-Empfänger
versuchen. Ich melde mich dann, wenn ich die Sachen getestet habe. :)
Freundliche Gruesse
Laurent B. schrieb:> Ich werde mir ein Breadboard zulegen ...
Dann bestelle dir gleich einen Logikanalysator für <6€ dazu, damit du
die Signale mal angucken kannst.
>> Was zeigt die LED an Pin 11 an?>> Du solltest dringend Rückfragen beantworten, nur dann kann man Dir>> zielführend helfen.> Also es sind vier LEDs am Arduino Uno. ON, L, TX,RX> ON und L leuchten ja logischerweise immer.
Jetzt musste ich mal tief durchatmen, bevor ich antworte.
Du sollst eine LED mit Vorwiderstand an Pin11 anschließen, um das Signal
zu visualisieren, welches vom Infrarot Empfänger-Modul an den AVR geht.
Denn wenn dort nicht sinnvolles passiert, kannst du bis zur ewigen
Verdammnis an der Software herum fummeln, dann wird es nie
funktionieren.
Ich denke, Dir fehlen noch eine Menge Grundlagen über Elektronik,
Mikrocontroller, und Methodiken zur Fehlersuche. Du hast Dir da ein
Thema ausgesucht, das für den Einstieg völlig ungeeignet ist. Denn den
Code der Library durchblickst du nicht einmal ansatzweise.
Ich gebe zu, dass auch ich beruflich täglich Libraries einsetze, die ich
nicht durchblicke. Ich habe allerdings einige Jahre Erfahrung dabei,
Probleme zielführend zu untersuchen. Nur deswegen komme ich damit klar.
Ich empfehle Dir, den IR Kram erst einmal zur Seite zu legen und die
Grundlagen mit einfacheren Experimenten zu erlernen, die ohne
Vorkenntnisse nachvollziehbar sind.
Arbeite mein Buch durch:
http://stefanfrings.de/mikrocontroller_buch/index.html
Danach wirst du das Thema IR-Fernbedienung wieder aufnehmen können, ganz
sicher mit mehr Erfolg. Bis dahin würde ich Dir empfehlen, ein
Oszilloskop oder einen Logic Analyzer zu kaufen. Für deinen Zweck
genügen diese billigen Produkte:
https://www.aliexpress.com/store/product/Open-Source-STM32-2-4-TFT-1Msps-DSO138-LCD-Digital-Oscilloscope-Kit-Acrylic-Case-DIY-Part/3172017_32890956282.htmlhttps://www.aliexpress.com/store/product/USB-Logic-SCM-24MHz-8-Channel-24M-seconds-Logic-Analyzer-Debugger-for-ARM-FPGA-Logic-Analyzer/2623019_32870694523.html
Ich hoffe, du hast ein Multimeter und Lötwerkzeug, sonst bestelle das
auch gleich mit. Achte beim Lötkolben darauf, dass er geerdet ist oder
einen Anschluss dafür hat. Die Chinesen bieten derzeit (ansonsten) tolle
Lötkolben ohne Erdung an, damit riskiert man, MOS Bauteile zu killen.
Stefanus F. schrieb:> Die Chinesen bieten derzeit (ansonsten) tolle Lötkolben ohne Erdung> an, damit riskiert man, MOS Bauteile zu killen.
So ein Ding aufzuschrauben und einen 1MΩ-Widerstand nachzurüsten, sollte
doch kein Problem sein. Eine harte Erdung ist als ESD-Schutz nicht zu
empfehlen.
Doch ist ein Problem, zumindest bei meinem. Er ist verklebt, nicht
geschraubt. Ich helfe mir mit einer Kroko Klemme aus, ist aber
unhandlich - auch wegen dem zusätzlichen Kabel.
Gottseidank ist das eh nur als Ersatzgerät gedacht, falls mal die
Lötstation kaputt geht.
Stefanus F. schrieb:> Jetzt musste ich mal tief durchatmen, bevor ich antworte.>> Du sollst eine LED mit Vorwiderstand an Pin11 anschließen..........
Hallo
Besten Dank für Deine Hilfe und den Links. Ich werde mich da einbisschen
einlesen, falls es die Zeit soweit erlaubt.
Natürlich fehlen mir ein paar Grundlagen, da dies nicht mein Gebiet ist.
Und da dies ein Projekt für die Schule ist, habe ich nicht ewig Zeit.
Natürlich ist es sinnvoll zuerst die zu machen und das zu kaufen. Aber
die Zeit und das Budget sind leider begrenzt bzw. sehr knapp.
Und es wäre schön, wenn man ein bisschen Verständnis zeigen würde, wenn
Grünschnabel hier etwas fragen. :)
Ich melde mich, wenn ich das neue Zeugs getestet habe.
Vielen Dank nochmal und freundliche Gruesse
Hallo geschätzte Elektronikfreunde
Die neuen Sachen sind gekommen Breadboard, neue Empfängerdioden , LEDs,
Widerstände etc.
Hab diese so angeschlossen wie hier beschrieben:
https://arduinolab.lima-city.de/2016/07/13/anleitung-ir-fernbedienung/#comment-1013
Und ich erhalte immer noch keine Codes im seriellen Monitor :(.
Ich erhalte durch Wackelkontakt bzw. wenn ich den IR-Empfänger rausnehme
diese Meldungen im seriellen Monitor:
Attempting NEC decode
Testing mark (actual vs desired): 11200us vs 9000us: 6800 <= 11200 <=
11400?; passed
Attempting Sony decode
Attempting Sanyo decode
Attempting Mitsubishi decode
Attempting RC5 decode
Attempting RC6 decode
Testing mark (actual vs desired): 11200us vs 2666us: 2050 <= 11200 <=
3500?; FAILED
Attempting Panasonic decode
Testing mark (actual vs desired): 11200us vs 3502us: 2700 <= 11200 <=
4550?; FAILED
Attempting LG decode
Attempting JVC decode
Testing mark (actual vs desired): 11200us vs 8000us: 6050 <= 11200 <=
10150?; FAILED
Attempting SAMSUNG decode
Testing mark (actual vs desired): 11200us vs 5000us: 3800 <= 11200 <=
6400?; FAILED
Attempting Whynter decode
Attempting Aiwa RC-T501 decode
Attempting Denon decode
An was kann das jetzt liegen? Langsam verzweifle ich.
Stefanus F. schrieb:> Die Chinesen bieten derzeit (ansonsten) tolle> Lötkolben ohne Erdung an,
meine Weller sind auch nicht geerdet!
Stefanus F. schrieb:> damit riskiert man, MOS Bauteile zu killen.
wie groß ist die Gefahr wirklich, mir ist seit 40 Jahren kein MOS
Bauteil mehr in JEDEM Umfeld gestorben.
Die letzten Schäden an MOSFET von denen ich erfuhr waren @work vor 30
Jahren in der Fertigung durch falsche Behandlung an einer
Schneidemaschine.
Sehr merkwürdig. Welche Spannung kommt am 5V Anschluss raus? Der TSOP
möchte min. 4,5 V haben.
Welche Arduino IDE Version? Ich hatte das mit der 1.8.5 getestet.
Hallo
Ja die LED leuchtet und ich verwende das Arduino 1.8.5.
Ich habe jetzt 4 IR-Empfänger probiert mit verschiedenen
Fernbedienungen, aber es tut sich nichts im seriellen Monitor.
Er hat aber einen alten TSOP1736 weil ich ihm den geschickt habe. Bei
mir hat das ad hoch mit einem Nano funktioniert. Er hat jetzt schon
einen Uno und ein Mega irgendwas Board probiert. Und einen anderen IR
Sensor. Da bleibt doch nicht mehr viel übrig.
Johannes S. schrieb:> Er hat aber einen alten TSOP1736 weil ich ihm den geschickt habe.
Deinen TSOP1736 habe ich noch nicht bekommen. :D
Ich teste es mit einem VS1838B. 3-5V Spannung.
> meine Weller sind auch nicht geerdet!
Mag sein, aber "deine Weller" enthält sicher einen trenntrafo oder
andere Schutzmaßnahmen. Mein China Lötkolben liefert an der Lötspitze
kapazitiv eingestreute 80V~ bei 10M Ohm Belastung. Das könnte genügen,
um empfindliche MOSFET zu zerstören.
Stefanus F. schrieb:> Das könnte
eben, wie gesagt mit Weller getrennt arbeite ich erst seit 30 Jahren
dienstlich.
40 Jahre auch auf dem Küchentisch ohne Weller ohne Netztrennung (aber
Ersa geerdet) ist mir kein MOS mehr gestorben, Zufall? mag sein aber so
sensibel sind die Teile nicht mehr wie in den '70 wo man schon Angst
hatte sie aus dem Alu auszuwickeln.
>> Ja die LED leuchtet> Du meinst aber nicht die Power-LED auf dem Board...?
Weiter oben hat er genau das geschrieben. Die Power LED und die "L" Led
leuchtet.
Stefanus F. schrieb:>>> Ja die LED leuchtet>> Du meinst aber nicht die Power-LED auf dem Board...?>> Weiter oben hat er genau das geschrieben. Die Power LED und die "L" Led> leuchtet.
Nein, jetzt meine ich die LED auf dem Breakout mit dem Vorwiderstand.
Ich vermute es liegt an den Empfänger. Ich hoffe, es funktioniert dann
mit dem TSOP-Empfänger.
Gruesse
Wie Wolfgang weiter oben angemerkt hat, ist die Pinbelegung vom VS1838B
anders als beim TSOP1736. Falls Du es noch probieren willst:
VS1838B: Pin 1 - Ausgang - - - D11 - - - Pullup 10-50KOhm nach 3,3V
oder 5V
Pin 2 - GND - - - - - GND
Pin 3 - VCC - - - - - 3,3V oder 5V
Beim VS1838B musst Du einen Pullup anschliessen, beim TSOP1736 ist er
integriert.
Laurent B. schrieb:>>>> Ja die LED leuchtet>>> Du meinst aber nicht die Power-LED auf dem Board...?>> Weiter oben hat er genau das geschrieben. Die Power LED und die "L" Led>> leuchtet.>> Nein, jetzt meine ich die LED auf dem Breakout mit dem Vorwiderstand.
Das ist auch eine Power-LED. Nehm ich an.
Christian M. schrieb:>>> Du sollst eine LED mit Vorwiderstand an Pin11 anschließen.........>> Hörst Du überhaupt zu?
Gruss Chregu
Hallo
Der TSOP von Johannes.S ist angekommen. Funktioniert auf den ersten
Anhieb. Bei 4 verschiedenen Fernbedienungen sofort Codes erhalten im
seriellen Monitor.
Vielen lieben Dank an alle für Euren Support und Johannes für den
IR-Empfänger. Ich werde euch bzw. microcontroller.net bei der
Dokumentation unseres Produkts erwähnen. :)
Gut dies funktioniert jetzt. Aber das andere Problem würde ich trotzdem
gerne lösen.
Grüsse
Heinz R. schrieb:> Wie Wolfgang weiter oben angemerkt hat, ist die Pinbelegung vom VS1838B> anders als beim TSOP1736. Falls Du es noch probieren willst:>> VS1838B: Pin 1 - Ausgang - - - D11 - - - Pullup 10-50KOhm nach 3,3V> oder 5V> Pin 2 - GND - - - - - GND> Pin 3 - VCC - - - - - 3,3V oder 5V>> Beim VS1838B musst Du einen Pullup anschliessen, beim TSOP1736 ist er> integriert.
Ja dies weiss ich, dass die Pinbelegung unterschiedlich ist.
Habe eben einen Pullup angeschlossen beim VS1838B. Funktioniert trotzdem
nicht.
Christian M. schrieb:> Laurent B. schrieb:>>>>> Ja die LED leuchtet>>>> Du meinst aber nicht die Power-LED auf dem Board...?>>> Weiter oben hat er genau das geschrieben. Die Power LED und die "L" Led>>> leuchtet.>>>> Nein, jetzt meine ich die LED auf dem Breakout mit dem Vorwiderstand.>> Das ist auch eine Power-LED. Nehm ich an.>> Christian M. schrieb:>>>> Du sollst eine LED mit Vorwiderstand an Pin11 anschließen........G
Gemacht. Und dann?
>> Du sollst eine LED mit Vorwiderstand an Pin11 anschließen.> Gemacht. Und dann?
Berichten, ob sie flackert oder leuchtet (mit und ohne IR Signal).
Versuche beide Varianten nacheinander, nicht gleichzeitig!:
1
LED 1kΩ
2
Signal o-----|>|-----[===]-----| GND
1
LED 1kΩ
2
Signal o-----|<|-----[===]-----o +5V
So erfährst du (und wir), ob dein IR Modul ein Signal liefert und
welche Polarität es hat.
Stefanus F. schrieb:>>> Du sollst eine LED mit Vorwiderstand an Pin11 anschließen.>> Gemacht. Und dann?>> Berichten, ob sie flackert oder leuchtet (mit und ohne IR Signal).>> Versuche beide Varianten nacheinander, nicht gleichzeitig!:>>
1
> LED 1kΩ
2
> Signal o-----|>|-----[===]-----| GND
3
>
>>>
1
> LED 1kΩ
2
> Signal o-----|<|-----[===]-----o +5V
3
>
>> So erfährst du (und wir), ob dein IR Modul ein Signal liefert und> welche Polarität es hat.
Hallo. Besten Dank für Deine Antwort.
Könntest du mir sagen, wie ich das auf dem Breadboard anschliessen soll
und beim Programm die LEDs integrieren oder wie? Entschuldige, aber ich
weiss nicht wie das gemeint ist. :)
Gruesse
Stefanus F. schrieb:> Vergiss es, es hat keinen Zweck. Du solltest erst einmal die Grundlagen> der Elektrizität lernen, damit du dein Problem und uns verstehen kannst.
Na gut. Trotzdem Danke :)
Ist nicht so schlimm. Der TSOP-Empfänger funktioniert ja jetzt und Codes
im seriellen Monitor werden angezeigt. Somit ist das Problem
einigermassen gelöst.
Würde gerne das andere Problem auch noch lösen und noch mehr Grundlagen
erlernen in diesem Bereich, aber leider habe ich die Zeit nicht dafür.
Die Schule fängt bald wiederan und und und.... Danke für Euer
Verständnis.:)
Danke Euch allen vielmals für Euren Support und es hat Spass gemacht. :)
Freundliche Grüsse
Laurent B. schrieb:> Funktioniert auf den ersten> Anhieb.
Glückwunsch!
Stefanus F. schrieb:> Berichten, ob sie flackert oder leuchtet (mit und ohne IR Signal).
Leute, überlegt doch mal. Das Testprogramm gibt Debugausgaben aus wenn
ein Pegelwechsel am IR Eingang erkannt wird. Das ist aber nur passiert
wenn der Empfänger gezogen oder am Kabel gewackelt wurde, nicht mit
der Fernbedienung. Also kann der IR Empfänger keinen gültigen
Pegelwechsel erzeugt haben. Vielleicht hat auch dieses VS1838 Board eine
komische Beschaltung, per Google konnte ich das nicht finden. Man könnte
noch versuchen die IR Diode auszulöten und mal nackig wie den TSOP
anzuschliessen.
Mit dem Modul käme man nur mit einem Oszi richtig weiter, aber gleich
für ein Schulprojekt eine komplette Elektronikausrüstung anzuschaffen
ist doch wohl etwas too much.
Wenn jemand hartnäckig so eine Idee verfolgt finde ich das gut, das
Gelaber über 'Arduino halt' ist wieder mal nur affig und typisch für
dieses Forum.
@Laurent:
Wenn du weiter solche Elektronikprojekte hast dann war Tip mit dem low
cost Logic Analysator von Wolfang und Stefan schon gut. Das setzt
allerdings voraus das auch ein gültiges Logiksignal vorliegt was hier ja
wohl nicht der Fall war. Für kleine Frequenzen und kleine Ansprüche gibt
es da auch billig Oszis:
https://www.ebay.de/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=stm32+oszilloskop&_sacat=0
Aber nur als Notlösung für arme Schüler...
> Also kann der IR Empfänger keinen gültigen> Pegelwechsel erzeugt haben.
Mit der LED hätte man das eindeutig überprüfen können. Der Test hätte
auch gezeigt, ob ein Pull-Up oder eine Invertierung des Signals nötig
gewesen wäre.
> Man könnte noch versuchen die IR Diode auszulöten
Du schon. Aber wer nicht einmal eine LED mit Vorwiderstand auf ein
Steckbrett stecken kann, der dürfte sich auch damit schwer tun. Ebenso
mit:
> Mit dem Modul käme man nur mit einem Oszi richtig weiter
Das muss man erstmal benutzen können, was wiederum vorraussetzt, dass
man wenigstens eine grobe Idee davon hat, wie man es anschließt und
welches Signal man erwartet.
> 'Arduino halt' ist wieder mal nur affig und typisch für dieses Forum.
Arduino ist aber typisch für Leute, die alles machen wollen, ohne es zu
können. Sie schauen sich möglicherweise ein Youtube Video an, und halten
sich danach für die größten Experten. Denn genau darauf zielt das
Arduino System ab. Es verleitet regelrecht dazu und fördert dieses
unwürdige Verhalten.
Es hat schon seinen Sinn, dass eine gewöhnliche Grundausbildung 3 Jahre
dauert. Die Grundlagen als Hobby zu lernen wird ebenso seine Zeit
brauchen. Im Falle des TO heisst dies, zunächst mal Batterie, LED und
Widerstand zu erforschen, dann die Grundregeln (Kirchhoffsche Regeln,
Ohmsches Gesetz, usw).
Stefanus F. schrieb:> Es hat schon seinen Sinn, dass eine gewöhnliche Grundausbildung 3 Jahre> dauert.
Wenn Du Leute dazu bringen willst, sich ein anderes Hobby zu suchen,
dann ist das die richtige Einstellung dazu.
Wie bist Du zur Elektronik gekommen? Hast Du vor Deiner
Grundausbildung dich mit komplett anderen Dingen beschäftigt, oder
hast Du vor Kirchoff, Ohm & Co. nicht doch auch schon irgendwelche (dann
eher unverstandenen) Basteleien angestellt?
Sicher, man kann auch selbst etwas lernen. In diesem Fall bin ich
allerdings ratlos, dem TO zu helfen, denn er versteht nur Bahnhof. Er
scheint weder die Grundsätzlichen Bauteile noch die Begriffe zu kennen.
Sonst wäre er schon lange imstande gewesen, eine LED an sein Signal
anzuschließen. Eigentlich wollte ich dabei helfen, die Leuchtanzeigen zu
interpretieren, aber soweit kommen wir ja nicht.
Stefanus F. schrieb:> Arduino ist aber typisch für Leute, die alles machen wollen, ohne es zu
...
> Es hat schon seinen Sinn, dass eine gewöhnliche Grundausbildung 3 Jahre...
Also irgendwann reichts ja auch.
Hör doch mal auf rumzuheulen und zu zicken. Hörst du dir überhaupt noch
zu? Dein Rumgezicke und deine emotionalen Ausdrücke nerven nur noch und
helfen kaum. Es hat dich niemand gezwungen hier etwas zu schreiben, also
lass es zukünftig auch. Auf deine Hilfe, dein Aufbau und deine
Motivation in der Elektronik kann ich sowas von verzichten!
Mag sein, dass deine Ratschläge hilfreich gewesen wären. Aber so wie du
dich verhälst und es rüberbringst, ist das einfach nur frustrierend. So
macht es einfach kein Spass.
Gewisse Aussagen sind teilweise sowas von irrelevant, und einfach nur
emotional und unsachlich. Komme mir hier vor, wie in einem Kinder/Zicken
Forum.
Also lass es einfach. Und auf deine Hilfe, Art und Weise kann ich sowas
von verzichten. Danke für Dein Verständnis.
Und das Problem 'keine Codes im seriellen Monitor' ist hier somit
gelöst.
Vielen lieben Dank an alle und ein spezieller Dank geht an Johannes.S
für die IR-Empfängerspende. :)
Freundliche Gruesse :)