Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Elatec RFID-Kartenlesegerät (USB) an WinCC RT Advanced betreiben

  1. #1
    Registriert seit
    25.11.2016
    Beiträge
    19
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Zusammen.

    Gleich vorweg: Ich bin (noch) kein Profi. Ich habe bisher Roboter programmiert und arbeite mich nun mit Beispielprojekten in der TIA-Welt durch.
    Bisher hat das auch ganz gut geklappt. Nun aber finde ich keine Anleitung oder dergleichen ... :/

    Folgende Problematik:

    Unser Kunde wünscht sich eine Benutzeranmeldung mittels einer RFID-Karte. Sprich, wenn er die Karte an das Lesegerät hält, dann soll automatisch
    der jeweilige Benutzer in WinCC angemeldet werden.
    Jetzt ist der RFID-Kartenleser allerdings nicht per Profinet eingebunden, sondern ein normaler USB-Kartenleser (angeschlossen per USB am IPC227D), der eine Tastatureingabe emuliert aber auch einen COM-Port emulieren kann. Ich scheitere bereits daran, diesen Kartenleser in das SPS-Projekt einzubinden, so dass ich dort dann die gelesenen Daten z.B. in einen DB schreiben könnte.

    Weiß da jemand eine Möglichkeit, wie ich den einbinden kann?
    Von mir aus auch per VBSkript aus WinCC heraus (Zugriff auf eine Datei z.B.)

    Das wird verwendet:

    IPC277D mit Software PLC (RTX V4.6.1) und WinCC Runtime Advanced V13.0 SP1 UPD9
    RFID-Lesegerät ElaTec TWN3 Legic USB
    TIA-Portal: alles V13.0 SP1 UPD9

    Gruß Stephan
    Zitieren Zitieren Gelöst: Elatec RFID-Kartenlesegerät (USB) an WinCC RT Advanced betreiben  

  2. "In dem Siemens-Beispiel wird WinCC Professionell verwendet, Du hast aber ein ganz anderes WinCC Advanced.

    Meines Wissens kann man mit der WinCC Advanced RT nicht auf Kommunikationsports zugreifen - das ActiveX-Control "MSComm_2" funktioniert vermutlich nicht mit WinCC Advanced.
    Der RFID-Leser muß vermutlich als Tastatur eingebunden werden und muß in ein E/A-Feld schreiben.

    Harald"


  3. #2
    Smiththeonlyone ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.11.2016
    Beiträge
    19
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    hmm ... ziemlich wenig Resonanz auf meinen Beitrag. :/
    Ich hoffe aber, ihr könnt mir jetzt weiterhelfen ...

    Ich habe mittlerweile den Kartenleser an den IPC eingebunden bekommen (mit mehr schlechtem als rechten Support von Elatec, aber immerhin), sprich mit Putty kann ich den Port öffnen und auch die Kartendaten auslesen.
    Jetzt möchte ich mit Microsoft Communications Control das ganze in WinCC einbinden. Dafür habe ich ein Objekt "MSComm_2" auf meine Seite "leser-test" hingezogen, die Port-Einstellungen vorgenommen und ein Skript mit folgendem einfachen Inhalt geschrieben:

    Sub OpenPort()

    HmiRuntime.Screens("leser_test").ScreenItems("MSComm_2").PortOpen = True

    End Sub

    Dieses Skript wird beim Drücken einer Taste auf der Seite "leser_test" ausgeführt.
    Sobald ich dies tue, erscheint im Meldepuffer allerdings der Fehler: "Fehler '' in Skript <OpenPort> in Zeile 18." (18 ist die mit dem oberen Befehl ... das auskommentierte habe ich hier nicht mit hingeschrieben)

    Kann mir jemand sagen, was an diesem Befehl falsch ist? In diesem Beispiel von Siemens ist es genau der gleiche Befehl:
    https://support.industry.siemens.com...dti=0&lc=de-WW

    Gruß Stephan

  4. #3
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    10.298
    Danke
    856
    Erhielt 3.023 Danke für 2.444 Beiträge

    Standard

    In dem Siemens-Beispiel wird WinCC Professionell verwendet, Du hast aber ein ganz anderes WinCC Advanced.

    Meines Wissens kann man mit der WinCC Advanced RT nicht auf Kommunikationsports zugreifen - das ActiveX-Control "MSComm_2" funktioniert vermutlich nicht mit WinCC Advanced.
    Der RFID-Leser muß vermutlich als Tastatur eingebunden werden und muß in ein E/A-Feld schreiben.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Smiththeonlyone (01.02.2017)

  6. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.492
    Danke
    395
    Erhielt 2.355 Danke für 1.962 Beiträge

    Standard

    Du könntest doch folgendes machen :
    Zur Anmeldung gehst du auf eine dafür vorgesehene Bildseite, auf der ein Eingabefeld defaultmäßig den Fokus hat (schon durch den Aufruf des Bildes so festgelegt).
    Hältst du nun den Chip vor den Leser so wird die Tastatur-Eingabe emuliert und die Nummer des Chips in das Eingabefeld geschrieben. Du mußt jetzt deinem Emulator nur noch beibringen (das geht normalerweise), das er am Ende einer Sequenz ein CR oder ggf. ein CR-LF dranhängen soll.
    Nun kannst du durch das Eingabefeld (Eingabe abgeschlossen) oder durch die Wertänderung der daran hängenden Variablen ein Script ausführen, mit dem du dann die Nummer des Chips auswertest und weitere Aktionen ausführst.
    Eine Kopplung mit der Siemens Benutzerverwaltung wird dir so allerdings nicht gelingen. Es ist aber auch nicht allzu schwer (wenn man denn einmal am scripten ist) die eben selbst zu erstellen.

    Einen anderen Weg wird es im Siemens-Umfeld (mit dem Einsatz von Nicht-Siemens-Komponenten) nicht geben ...

    Gruß
    Larry

  7. #5
    Smiththeonlyone ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.11.2016
    Beiträge
    19
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Vielen Dank für eure (niederschmetternden ) Antworten ...

    Ich habe noch den offiziellen Kommentar von Siemens abgewartet. Es ist wirklich so, dass WinCC RT Advanced (warum dann bitte Advanced und nicht Trial oder so ... ) keinen Zugriff auf irgendwas unterstützt. Hervorragend! ...

    Nun gut, den Vorschlag von Larry Lafer behalte ich mal im Hinterkopf als Notlösung.
    Wenn es mit WinCC nicht geht, geht es ja vielleicht mit dem normalen SPS-Programm??
    Sprich: Gibt es Bausteine (ähnlich wie T_CON für TCP/IP und so was) mit denen man einen COM-Port öffnen, lesen und schließen kann?
    Das wäre genausogut wie das Auslesen mit einem Skript, wenn nicht noch besser, da ich ja die UID direkt in einen DB schreiben könnte.

    Gruß Stephan

  8. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.492
    Danke
    395
    Erhielt 2.355 Danke für 1.962 Beiträge

    Standard

    Hallo Stephan,
    das in einem SPS-Programm zu machen halte ich für problematisch.
    Ich hatte mir mal ein eigenes (PC-)Programm erstellt, um den COM-Port eines KABA-Readers abfragen zu können.
    Hier war es so (das muss bei deinem Reader allerdings nicht so sein), dass der Reader einen Handshake in einer bestimmten Zeit erwartet hat - es wurde also ein Zeichen gesendet, dann mußte man darauf antworten und hat dann den Datenstring (in dem Fall die Chip-Nummer) zurück erhalten. Einen Handshake auf einen seriellen Port an der SPS halte ich für sehr problematisch. Etwas anderes wäre es, wenn der Reader einfach nur einen Datenstring sendet, wenn der Chip davor ist.
    Aber das musst du selber sehen.
    Das von mir im Beitrag #4 geschriebene läßt sich auf alle Fälle so umsetzen ...

    Gruß
    Larry

  9. #7
    Smiththeonlyone ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.11.2016
    Beiträge
    19
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo in die Runde,

    Soweit ich das mitbekommen habe, habe ich den erwarteten Handshake in der Konfiguration von dem Reader ausgeschalten.
    Laut Aussage Siemens-Support gibt es aber auch keine Möglichkeit, das ganze auf der Steuerung zu realisieren.

    Nun dachte ich ok, wenns nicht einfach geht, dann eben einfacher:
    Mein Gedanke war nun den COM-Port mit einer VBS-Datei (erstellt im Texteditor) zu öffnen, auszulesen und wieder zu schließen und das Ergebnis in eine Textdatei zu schreiben, auf die dann die HMI per VB-Skript zugreift,
    allerdings finde ich nichts wirklich sinnvolles, wie man so eine VBS-Datei erstellt. Also der Code zum Öffnen des Ports z.B.
    Ich habe beispielsweise "type COM4> test.txt" gefunden, aber das hat nicht funktioniert. Oder auch wieder von MScomm.lib gelesen, aber auch das hat nicht funktioniert.
    Bin in VBS totaler Anfänger und wäre über jede Hilfe froh

    Gruß
    Stephan

  10. #8
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.492
    Danke
    395
    Erhielt 2.355 Danke für 1.962 Beiträge

    Standard

    Hallo Stephan,

    ich denke, zu deiner COM-Port-Geschichte hatte ich doch in meinem letzten Beitrag etwas geschrieben - auch wenn dir das nicht gefällt.
    Manche RFID-Leser haben einen Treiber, den man so einstellen kann, dass er sein Ergebnis entweder in den Tastaturpuffer schreibt (den Weg würde ich hier weiter verfolgen und dazu könnte ich dir auch weiterhelfen) oder in eine Datei als Text. Eventuell kann dein Treiber das schon - dann nutze das. Ansonsten kannst du dir nur ein sperates Programm (ein EXE-File) erstellen, dass außerhalb von der Visu dies für dich übernimmt. Dazu bist du aber m.E. nicht in der Lage (das soll jetzt keine Kritik sein und auch nicht böse gemeint).
    Jedoch ... in dem Fall, dass das so funktionieren würde, müßtest du dir in der Visu ein Hintergrundscript erstellen, das zyklisch aufgerufen wird um zu schauen, ob sich an dieser Datei etwas geändert hat. Das wäre nicht so das Problem und würde auch funktionieren - als Zyklus hierfür ist aber mit Standard-Bordmitteln nur "jede Minute" zu erreichen - das wäre mir "etwas schlapp".

    Gruß
    Larry

  11. #9
    Smiththeonlyone ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.11.2016
    Beiträge
    19
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo

    Ja, den Plan X habe ich ja auch nicht vergessen Ich würde nur gern eine benutzerfreundlichere Variante zur Verfügung stellen.
    Ob mein Kartenlesegerät direkt in eine Datei schreiben kann, bin ich gerade am abklären. Das Ding kann irgendein C-ähnliches Skript ausführen, aber von Befehlen die auf eine Datei zugreifen, kann ich da im Handbuch nichts finden ... nun gut.
    Genau das wäre mein Plan, also eine EXE oder zumindest eine VBS-Datei die einfach "nur" den Port COM4 öffnet, ausliest, das Ergebnis in eine Textdatei schreibt und den Port wieder schließt. Ich trau mir das schon zu, das zu programmieren, nur finde ich halt nirgendswo Befehle, wie man einen COM-Port in einem VBS-Skript öffnet, liest und schließt. Ich mein, wenn ich mit Putty beispielsweise von COM4 "F8384DSF" bekomme, dann muss das doch auch mit einem Skript möglich sein.

    Wenn ich dann mal (irgendwann ) eine Datei habe, wo die UID drinnen steht, würde ich dann ein VB-Skript in WinCC schreiben, welches diese Datei ausliest und das Skript starte ich jedesmal wenn sich eine HMI-Variable ändert, die ich wiederum von der Steuerung mit einem Takt (1s oder so) belege. Das müsste doch gehen, oder?

    Zum Thema VBS: Könnt ihr mir dazu zufällig ein Forum empfehlen?

    Gruß
    Stephan

  12. #10
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.492
    Danke
    395
    Erhielt 2.355 Danke für 1.962 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das mit der Trigger-Variablen, die du dann beständig einliesst / aktualisierst, würde so funktionieren. Du mußt bei deiner Takt-Vorstellung nur bitte auch berücksichtigen, dass du das Bediengerät nicht überlastest (das kann mit Scripten, die ständig ausgeführt werden, sehr schnell passieren).

    Zum Thema VBS weiß ich auch kein spezielles Forum. Zu der Siemens-spezifischen Variante kannst du hier sehr viel finden und auch erfragen. Bei eher allgemeineren Fragen halte ich persönlich dann gerne an Google - man findet immer irgendwo etwas.

    Aber noch einmal nur zum Verständnis : was stört dich an dem Vorschlag und der Umsetzung, wie ich ihn dir im Beitrag #4 gemacht habe ...?

    Gruß
    Larry

Ähnliche Themen

  1. TIA RFID Chip Reader an TP1500 USB
    Von Fox2011 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 21.09.2016, 14:33
  2. RFID USB Leser
    Von Deep Blue im Forum Sensorik
    Antworten: 3
    Letzter Beitrag: 13.05.2016, 14:54
  3. CP 5512 über USB PCMCIA Adapter betreiben ?
    Von miasma im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 25.07.2012, 10:18
  4. Antworten: 3
    Letzter Beitrag: 24.05.2011, 17:08
  5. S7-200 über USB-RS232 mit MPI betreiben
    Von Nosverato im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 26.01.2010, 20:01

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •