|
 |
|

11.10.2010, 14:46
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 24.08.2009
Beiträge: 1.741
|
|
Transponderleser
Hi,
dank Makkis hilfe habe ich meinen RFID-Transponderleser von RSS an das Wiregate angebunden bekommen. Die Leser gibt es in verschiedenen Versionen (RS232 oder RS485 oder TTL) - mit oder ohne Gehäuse und mit verschiedenen Antennen (kleine bis große Reichweite) für kleines Geld (auch auf eBay von RSS direkt).
Der Transponderleser liest H4102 Transponder und gibt die Seriennummer per ASCII direkt auf der Schnittstelle aus.
Ich habe diesen im Einsatz im dieser Antenne im Siedle Vario-Blindrahmen.
Der Transponderleser ist per RS485 an das Wiregate angeschlossen (über einen RS485-zu-USB wandler).
Auf dem Wiregate ist ein Socat-Socket eingerichtet:
Name: Transponder, Aktiviert: Ja, Bidirektional: Nein,
Socket 1: "-", Socket: "/dev/usbserial-1-3.1", Optionen: "raw,b4800,cs8,crtscts=0,ixon=1,ixoff=1,ixany=1,ic anon=1,eol=32"
Socket 2: "udp-datagram", Socket: "192.168.0.255:50011", Optionen "bind=:50012,reuseaddr,broadcast"
Code:
# Plugin R.S-Systems RFID-Reader to KNX
# Version: 0.2 2010-10-02
# Benötigt
# - RSS RFID-Reader an einem USB-Seriell-Wandler
# - Eintrag unter Socketverbindungen (socat)
##################
### DEFINITION ###
##################
my $socknum = 5; # Eindeutige Nummer des Sockets +1
# Eigenen Aufruf-Zyklus setzen (Initialisierung/zyklisches prüfen)
$plugin_info{$plugname.'_cycle'} = 300;
my $recv_ip = "192.168.xxx.xxx"; # Empfangsport (UDP, wie in Socket-Einstellungen)
my $recv_port = "50011"; # Empfangsport (UDP, wie in Socket-Einstellungen)
my %rfid_ga;
$rfid_ga{'30343136323c3634373a20'} = '11/2/1'; # Gruppenadresse auf die bei dieser RFID gesendet wird
#.. usw.
my $interval = 30; # Sendeintervall für RFIDs in Reichweite in Sekunden
#######################
### ENDE DEFINITION ###
#######################
# Hauptverarbeitung
# or ($fh and eof($socket[$socknum]))
if (!$socket[$socknum]) { # socket erstellen
if (defined $socket[$socknum]) { #debug
if ($socket[$socknum]->opened) { $socket[$socknum]->close(); }
undef $socket[$socknum];
} #debug
$socksel->remove($socket[$socknum]);
$socket[$socknum] = IO::Socket::INET->new(LocalPort => $recv_port,
Proto => "udp",
LocalAddr => $recv_ip
)
or return ("open of $recv_ip : $recv_port failed: $!");
$socksel->add($socket[$socknum]); # add socket to select
$plugin_socket_subscribe{$socket[$socknum]} = $plugname; # subscribe plugin
return "opened UDP-Socket $socknum";
}
elsif ($fh) { # Read from UDP-Socket
my $buf;
recv($fh,$buf,255,0);
next if(!$buf || length($buf) < 2); # Bogus messages
my $bufhex = $buf;
$bufhex =~ s/(.)/sprintf("%x",ord($1))/eg;
if (time() - $plugin_info{$plugname.'_rfidlast_'.$bufhex} < $interval) {
# repeated
return;
}
$plugin_info{$plugname.'_rfidlast_'.$bufhex} = time();
if ($rfid_ga{$bufhex}) {
knx_write($rfid_ga{$bufhex},1,1);
return "RFID $bufhex - sent 1 to $rfid_ga{$bufhex}";
}
return "Unknown RFID $bufhex";
}
return;
RFID kurz hinhalten -> Blick ins Log sagt einem die einzutragende RFID
RFID & KNX- GA eintragen, siehe Beispiel
Nicht vergessen, RFID ist "by Design" völlig sicherheitsfrei...
Ich verwende die Transponder-ID daher nicht direkt zum öffnen der Tür - im HS habe ich weitere Logiken die nur unter speziellen Randbedingungen dann die Tür freigeben. Die Reaktionszeit ist sehr gut (gefühlt 500 ms von Davorhalten bis zum öffnen)
Ich habe noch ein paar Bilder von dem Transpondereinbau angehängt
(Anschlußkabel noch aus Testphase, kleines schwarzes Kabel zur Antennenblende ist für die LED-Leseanzeige)
Vielen Dank am Makki für den Support bei der Erstellung dieses Plugins. Das Wiregate ist wirklich ein Multifunktionsgateway! Bei mir jetzt im Einsatz für
* elektronisches Schlüsselbrett
* FS20-Gateway
* und natürlich für zig Temperatur & Luftfeuchtesensoren im ganzen Haus, Heizungs- und Lüftungsanlage
Mfg
Thorsten
__________________
Meine Inst.: 73 KNX-Geräte, 18 Rolläden, 36 Schaltkanäle, 22 Dimm-Kanäle, 12 Heizungskanäle, 16 PM, 18 Gruppentaster
Wiregate: >50 x Temperaturfühler, 2 x Luftfeuchte, Transponderleser || Gira Homeserver: Visu: 98%, Logiken 98% || Heizung: Dimplex WP mit KNX || Sonstiges: 3xSqueezebox, Mobotix T24, Asterisk
|

15.09.2011, 13:59
|
|
Benutzer
|
|
Registriert seit: 11.05.2011
Ort: Walldorf
Beiträge: 323
|
|
Hi Thorsten,
vielen Dank für Deine Anleitung, ich konnte hier auch testweise einen RSS-Transponderleser am WireGate in Betrieb nehmen. Bei mir ist es ein LR Transponderleser, der über RS232->USB angeschlossen ist.
So weit so gut. Allerdings habe ich massive Stabilitätsprobleme! Nach spätestens 24h ist kein Tag mehr lesbar und ich muss socat neu starten - dann geht es wieder einige Zeit. Im WebMin ist socat immer grün, aber trotzdem hilft nur ein Neustart... Ich habe bisher socat noch nie genutzt und bin mir deswegen nicht sicher, ob der Fehler nicht vor dem Bildschirm sitzt
Hattest Du auch solche Probleme? Und wenn ja, wie hast Du sie gelöst?
Wenn nein, vielleicht weiss ja noch jemand, was man machen kann.
Ich hatte schon überlegt, ob ich nicht per BWM + WireGate-Plugin socat automatisch restarte - aber lieber wäre es mir, die eigentliche Ursache des Problems zu finden.
Danke und Gruß,
Waldemar
|

15.09.2011, 19:55
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 24.08.2009
Beiträge: 1.741
|
|
Hi
versuche doch mal dir per SOCAT die ausgabe auf die console oder eine Textdatei umzuleiten - und schaue was da direkt bzw. nach einem tag noch ankommt. (wie das geht? SuFu benutzen ... ich hab gerade keine Zeit, Telco fängt gleich an...sorry)
vielleicht ist deine serielle Leitung zu lange?
Gruß
Thorsten
__________________
Meine Inst.: 73 KNX-Geräte, 18 Rolläden, 36 Schaltkanäle, 22 Dimm-Kanäle, 12 Heizungskanäle, 16 PM, 18 Gruppentaster
Wiregate: >50 x Temperaturfühler, 2 x Luftfeuchte, Transponderleser || Gira Homeserver: Visu: 98%, Logiken 98% || Heizung: Dimplex WP mit KNX || Sonstiges: 3xSqueezebox, Mobotix T24, Asterisk
|

18.09.2011, 13:49
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 14.12.2008
Beiträge: 4.819
|
|
Mal eine allgemeine Frage:
Liest der RFID-Treansponder nur seine eigenen Karten, oder gehen damit beliebige, wie die typischen Ausweis-Karten in den Firmen, Kantinen-Karten, ePass, ... auch?
__________________
TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!
|

19.09.2011, 00:52
|
|
Benutzer
|
|
Registriert seit: 11.05.2011
Ort: Walldorf
Beiträge: 323
|
|
Hi,
ich bin zwar noch recht neu in dem Bereich, aber soviel ich weiss, kann man zu beidem nicht ja sagen...
Der Leser kann nur bestimmte Tags (125kHz) lesen, somit nicht beliebige... Es gibt eben noch andere Systeme. Allerdings kann man auch Tags andrer Hersteller kaufen, sofern sie die gleiche Sendefrequenz unterstützen.
Ich hoffe, das beantwortet Deine Frage...
Gruß, Waldemar
|

19.09.2011, 23:09
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 24.08.2009
Beiträge: 1.741
|
|
Hi,
genau gesagt sind es wohl EM4102 Transponder / Read-Only manchmal auch UNIQUE genannt.
Ist eine Art "Industriestandart" und mein alter Leser hatte auch mal meinen Firmenausweiß gelesen - ist aber schon 7 Jahre her. Seitdem ist mir persönlich kein Firmenausweiß untergekommen der funktioniert hat.
Die Transponder kaufe ich gerne bei eBay - einfach nach EM4102 suchen... (da sieht man auch gleich die vielen verfügbaren Bauformen)
Gruß
Thorsten
__________________
Meine Inst.: 73 KNX-Geräte, 18 Rolläden, 36 Schaltkanäle, 22 Dimm-Kanäle, 12 Heizungskanäle, 16 PM, 18 Gruppentaster
Wiregate: >50 x Temperaturfühler, 2 x Luftfeuchte, Transponderleser || Gira Homeserver: Visu: 98%, Logiken 98% || Heizung: Dimplex WP mit KNX || Sonstiges: 3xSqueezebox, Mobotix T24, Asterisk
|

29.10.2012, 17:14
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 15.09.2008
Ort: Ludwigshafen
Beiträge: 729
|
|
Hallo Thorsten,
ich will mir das auch mal bauen.
Ist das dieser Reader RSS online shop
?
__________________
Gruß Hartwig
|

29.10.2012, 17:38
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 24.08.2009
Beiträge: 1.741
|
|
Hi,
Nein - ich habe diesen:
OEM-SR28e-485,Reader,TTL/RS485
http://www.rss-systems.de/assets/s2d...9df0c24201.htm
Allerdings ist der ohne Gehäuse. Jeder andere mit 125khz und rs485 müsste auch passen. Passende Antenne - und Abstand zur Antenne (möglichst kurz) sind auch zu beachten.
Ideal wäre sicherlich Technik innen - Antenne außen.
Gruß
Thorsten
__________________
Meine Inst.: 73 KNX-Geräte, 18 Rolläden, 36 Schaltkanäle, 22 Dimm-Kanäle, 12 Heizungskanäle, 16 PM, 18 Gruppentaster
Wiregate: >50 x Temperaturfühler, 2 x Luftfeuchte, Transponderleser || Gira Homeserver: Visu: 98%, Logiken 98% || Heizung: Dimplex WP mit KNX || Sonstiges: 3xSqueezebox, Mobotix T24, Asterisk
|

17.12.2012, 09:41
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 15.09.2008
Ort: Ludwigshafen
Beiträge: 729
|
|
Hallo Thosten,
ich habe mir die Komponenten mal besorgt.
Den Socat bekomme ich nicht zum laufen, was aber am Socket liegen dürfte.
im Sysmon kommt bei mir der Usb an
Code:
Dec 17 09:28:45 wiregate833 kernel: [57062.904073] usb 1-4: new full speed USB device using ohci_hcd and address 5
Dec 17 09:28:45 wiregate833 kernel: [57063.122115] usb 1-4: New USB device found, idVendor=0403, idProduct=f60b
Dec 17 09:28:45 wiregate833 kernel: [57063.122445] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Dec 17 09:28:45 wiregate833 kernel: [57063.122781] usb 1-4: Product: USB-Nano-485
Dec 17 09:28:45 wiregate833 kernel: [57063.129568] usb 1-4: Manufacturer: CTI GmbH
Dec 17 09:28:45 wiregate833 kernel: [57063.136341] usb 1-4: SerialNumber: CTVEK3NS
Dec 17 09:28:45 wiregate833 kernel: [57063.143437] usb 1-4: configuration #1 chosen from 1 choice
Dec 17 09:29:44 wiregate833 monit[2663]: 'socat1' failed to start
Deinen Eintrag habe ich daraufhin mit /dev/usbserial-1-4.5 geändert
Die Socketverbindung kommt aber nicht zu stande!
Was mache ich da falsch?
__________________
Gruß Hartwig
|

09.01.2013, 18:31
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 15.09.2008
Ort: Ludwigshafen
Beiträge: 729
|
|
Hallo Thorsten,
das RSS Modul hat ein rote und eine grüne LED.
Bei mir hatte ursprünglich nur die rote LED geleuchtet, die Grüne blieb ohne Funktion
Das Modul wurde zwischenzeitlich eingeschickt und repariert nun werden am rss Modul auch die Keys erkannt.
Der USB-NANO von Zeiterfassung, Zutrittskontrolle, Kommunikation - CTI GmbH Leipzig wird auch vom Wiregate erkannt, die Socketverbindung steht.
Jetzt habe ich eigentlich nur noch Kabel zu verbinden.
Pin6&7 des rss SR-28e-5V/12V mit A/B auf der Seite des Nanos.
Aber das scheint es noch ein Problem zu geben.
der usb-Nano hat 3 LEDS,
Die ON leuchtet permanent grün
Die RX und TX sollten, so würde ich es erwarten, leuchten, wenn ein Key erkannt wird, bzw. wenn das rss Modul irgendwas raus gibt.
Da tut sich aber rein gar nichts.
rss erkennt den key die grüne LED flackert.
Am Nano keinerlei Reaktion
Noch irgend eine Idee?
__________________
Gruß Hartwig
|
| Themen-Optionen |
|
|
| Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 07:54 Uhr.
|