125khz RFID

Hallo,

Ich habe eine Frage.

Ich habe genau diesen RFID Empfänger mit den passenden Chipkarten von seedstudio.

Habe es wie im Beispiel verkabelt aber ich bekomme auf meiner Konsole einfach nichts ausgegeben?

Wenn ich an den zwei Leitern der Spule Messe müsste ich doch einen Strom messen können oder nicht?

Ich finde den Fehler einfach nicht…

Grüße

Bevor das große Rätselraten losgeht, könntest du auch gleich einen Link zum RFID-Leser reinstellen und sagen, welchen Arduino du verwendest. Den nicht funktionierenden Testsketch solltest du entweder verlinken oder in Code-Tags hier posten. Ein Foto deines Aufbaus wäre ebenso hilfreich. Oftmals sind RX und TX vertauscht, eine Masseverbindung fehlt oder sogar die gesamte Stromversorgung. An der Spule zu messen bringt nichts, da du dafür vermutlich kein Messgerät hast - da liegen nicht einfach 5V an. ;)

Tonno: Wenn ich an den zwei Leitern der Spule Messe müsste ich doch einen Strom messen können oder nicht?

Nein, an der "Antenne" wirst Du wohl keinen Strom messen können. Jedenfalls nicht mit einem einfachen Multimeter.

Tonno: Ich finde den Fehler einfach nicht...

Die Angabe "wie im Beispiel verkabelt" bezieht sich nochmal auf welches der tausenden Arduino-Beispiele im Internet?

Und welches Arduino Board mit welchem Sketch (Quellcode) Du zum Testen verwendest, steht weder in Deinem Beitrag noch kann ich es in meiner Glaskugel erkennen.

Um das ganze zu vervollständigen

Arduino Mega 2560

RFID Transponder: http://www.watterott.com/de/125Khz-RFID-Empfaenger-Modul

Tag Set: http://www.watterott.com/de/5-teiliges-125khz-RFID-Tag-Set

Pin Belegung: http://macherzin.net/article66-Arduino-und-RFID-Leser

Beispielcode von : http://tronixstuff.com/2013/11/19/arduino-tutorials-chapter-15-rfid/

#include <SoftwareSerial.h>
SoftwareSerial RFID(2, 3); // RX and TX
 
int i;
 
void setup()
{
  RFID.begin(9600);    // start serial to RFID reader
  Serial.begin(9600);  // start serial to PC
}
 
void loop()
{
  if (RFID.available() > 0)
  {
     i = RFID.read();
     Serial.print(i, DEC);
     Serial.print(" ");
  }
}

Aufbau:

Anmerkung: am RFID Modul, Schwarz ist Masse, Rot ist +5V. Am Arduino ist Schwarz Masse und Orange +5V. Das Gelbe Kabel steckt in PIN 2 und ist für TX.

Also verstehe nicht wieso es nicht funktioniert … das Konsolenfenster gibt einfach nichts aus

Tonno: Also verstehe nicht wieso es nicht funktioniert .. das Konsolenfenster gibt einfach nichts aus

Da müßtest Du nach dem Ausschlußverfahren vorgehen.

Der blödestmögliche Fehler wäre, dass Du im Seriellen Monitor eine andere Baudrate als 9600 eingestellt hast.

Ich vermeide das, indem ich zu Anfang des Programms immer irgendwas testweise ausgeben, z.B.:

Tonno: Serial.begin(9600); // start serial to PC Serial.println("Good night and good luck!");

Wenn nicht mal die Begrüßungsnachricht erscheint, dann ist ziemlich sicher im Seriellen Monitor die falsche Baudrate eingestellt.

Check?

Also die Ausgabe erscheint - weiterhin keine RFID Tag Nummern ...

Allerdings habe ich die Testzeile in die Loop gepackt nicht in das Setup()

Tonno: Also die Ausgabe erscheint - weiterhin keine RFID Tag Nummern ...

Und mit welchem Farbcode verkabelst Du +5V und GND?

Laut Datenblatt http://www.seeedstudio.com/depot/datasheet/RDM630-Spec..pdf müßte am fünfpoligen Anschluß der zur Mitte der Platine weisende Pin5 mit +5V verbunden sein. Da hängt bei Dir ein schwarzes Kabel dran. Ist bei Dir schwarz = 5V?

habe es eben mit dem UNO ausprobiert nun geht es ...

Tonno: habe es eben mit dem UNO ausprobiert nun geht es ...

Sieht so aus, als wenn Du bei der Verwendung von SoftwareSerial am MEGA auch irgendwas überlesen hast:

Note: Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69

Der MEGA hat 4 serielle Schnittstellen in Hardware, daher solltest Du statt SoftwareSerial am MEGA sowieso lieber Serial1, Serial2 oder Serial3 als zweite serielle Schnittstelle verwenden und nicht SoftwareSerial. Und wenn es unbedingt trotzdem SoftwareSerial sein soll, dann einen Pin dafür verwenden, der am MEGA auch funktioniert. Nur am UNO kann man jeden Pin auch für SoftwareSerial verwenden.

Ahh vielen vielen DANK !!

Wo hast du die Information her wenn ich fragen darf ?

Grüße

Tonno: Ahh vielen vielen DANK !!

Wo hast du die Information her wenn ich fragen darf ?

Datei - Beispiele - SoftwareSerial - SoftwareSerialExample

Steht aber identisch in jedem anderen Beispielprogramm zur SoftwareSerial Library genau so drin.

Super, danke.

An sowas hatte ich einfach nicht gedacht ..

Wie kann ich denn den Beispielcode ohne SoftwareSerial umschreiben ?

Grüße

Auf dem Mega ist Serial die USB Schnittstelle

Daneben hast du Serial1, Serial2 und Serial3 oben rechts auf Pins 14-19: http://arduino.cc/en/uploads/Main/ArduinoMega2560_R3_Front.jpg

Siehe auch hier: http://arduino.cc/de/Reference/Serial http://arduino.cc/en/Serial/begin

Tonno:
Wie kann ich denn den Beispielcode ohne SoftwareSerial umschreiben ?

Du solltest mal dringend etwas programmieren üben.
Programmieren lernt man nur durch Programmieren.

Ich habe Dir aus dem Beispielcode die Aufrufe von SoftwareSerial auskommentiert und Aufrufe für Serial1 hinzugefügt. Der RFID-Reader müßte dann am MEGA an Serial1 angeschlossen werden.

// #include <SoftwareSerial.h>
// SoftwareSerial RFID(2, 3); // RX and TX
 
int i;
 
void setup()
{
//  RFID.begin(9600);    // start serial to RFID reader
  Serial1.begin(9600);   // start serial to RFID reader
  Serial.begin(9600);  // start serial to PC
}
 
void loop()
{
//  if (RFID.available() > 0)
  if (Serial1.available()>0)
  {
//     i = RFID.read();
     i=Serial1.read();
     Serial.print(i, DEC);
     Serial.print(" ");
  }
}