DE O3DC02 Betriebsanleitung - IFM

Die Seite wird erstellt Yves Weiß
 
WEITER LESEN
Betriebsanleitung
                                              DE
                                  O3DC02
80299431 / 00 01 / 2021
O3DC02

Inhalt
1    Vorbemerkung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .         4
     1.1 Verwendete Symbole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   4
     1.2 Weitere Dokumente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                  4
     1.3 Rechtliche Hinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                4
     1.4 Open source information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    5
2    Sicherheitshinweise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .          6
3    Bestimmungsgemäße Verwendung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                         7
4    Lieferumfang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       8
5    Zubehör . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    9
6    Montage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   10
     6.1 Montageort wählen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                10
     6.2 Gerät montieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             11
     6.3 Oberflächentemperatur des Gerätes reduzieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                  11
     6.4 Montagezubehör . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                11
7    Elektrischer Anschluss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .          12
     7.1 Anschlussbelegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 13
        7.1.1 Pin 1 / 3 (24 V / GND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 13
     7.2 Verdrahtungsbeispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 13
        7.2.1 Einfache Bildaufnahme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    13
        7.2.2 Mehrere Geräte parallel verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                            14
8    Bedien- und Anzeigeelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
9    Inbetriebnahme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .        16
     9.1 Gerät parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               16
        9.1.1 Objektwarnzonen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                  17
        9.1.2 Belegungskarte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               19
     9.2 Objekte detektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               20
10 Wartung, Instandsetzung, Entsorgung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                       22
   10.1 Wartung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .          22
   10.2 Reinigung der Gehäuseoberfläche. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           22
   10.3 Instandsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             22
   10.4 Entsorgung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .           22
   10.5 Firmware aktualisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 22
   10.6 Gerät austauschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                22
11 Zulassungen / Normen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
12 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      24
   12.1 Required ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             24
   12.2 XML-RPC interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                  24
     12.2.1 Sample XML-RPC command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                               24
     12.2.2 XML-RPC objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    25
   12.3 XML-RPC command reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                            26
     12.3.1 Parameter API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                26
     12.3.2 Main object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              27
     12.3.3 Session object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               29
     12.3.4 Device config object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   30
     12.3.5 Device / Network config object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                         33
     12.3.6 Device / Time config object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      33
   12.4 Process interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              34
     12.4.1 Sending commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      35
     12.4.2 Receiving images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   36
     12.4.3 Image data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .               37
     12.4.4 Additional information for CONFIDENCE IMAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                        40
     12.4.5 Configuration of PCIC output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        41
   12.5 Process interface command reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             45
     12.5.1 a command (activate application) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           45

2
O3DC02

  12.5.2 A? command (occupancy of application list) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                            45
  12.5.3 c command (upload PCIC output configuration) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                46
  12.5.4 C? command (retrieve current PCIC configuration). . . . . . . . . . . . . . . . . . . . . . . . . . .                                 46
  12.5.5 E? command (request current error state)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           46
  12.5.6 G? command (request device information) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             47
  12.5.7 H? command (return a list of available commands) . . . . . . . . . . . . . . . . . . . . . . . . . .                                  47
  12.5.8 I? command (request last image taken) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           48
  12.5.9 o command (set logic state of a ID). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      48     DE
  12.5.10 O? command (request state of a ID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                       49
  12.5.11 p command (turn PCIC output on or off) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                         49
  12.5.12 S? command (request current decoding statistics) . . . . . . . . . . . . . . . . . . . . . . . . . . .                               50
  12.5.13 t command (execute asynchronous trigger) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             50
  12.5.14 T? command (execute synchronous trigger) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             51
  12.5.15 v command (set current protocol version) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                         51
  12.5.16 V? command (request current protocol version) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                              51
12.6 Process interface commands ODS specific . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           52
  12.6.1 Sending ego data to the device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                    52
  12.6.2 Sending and retrieving zone configuration to the device . . . . . . . . . . . . . . . . . . . . . . .                                 54
  12.6.3 Switching the sensing state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                 55
12.7 Error codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      57
Glossar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

                                                                                                                                                 3
O3DC02

1           Vorbemerkung
Anleitung, technische Daten, Zulassungen und weitere Informationen über den QR-Code auf dem
Gerät / auf der Verpackung oder über www.ifm.com.

1.1 Verwendete Symbole
              Voraussetzung
              Handlungsanweisung
              Reaktion, Ergebnis
    [...]     Bezeichnung von Tasten, Schaltflächen oder Anzeigen
              Querverweis
              Wichtiger Hinweis
              Fehlfunktionen oder Störungen sind bei Nichtbeachtung möglich
              Information
              Ergänzender Hinweis

1.2 Weitere Dokumente
•   Kurzanleitung
•   Betriebsanleitung
•   Zertifikate

            Die Dokumente sind abrufbar unter:
            w www.ifm.com

1.3          Rechtliche Hinweise
© Alle Rechte bei ifm electronic gmbh. Vervielfältigung und Verwertung dieser Anleitung, auch
auszugsweise, nur mit Zustimmung der ifm electronic gmbh.
Alle auf unseren Seiten verwendeten Produktnamen, -Bilder, Unternehmen oder sonstige Marken sind
Eigentum der jeweiligen Rechteinhaber:
•   AS-i ist Eigentum der AS-International Association, (→ www.as-interface.net)
•   CAN ist Eigentum der Robert Bosch GmbH, Deutschland (→ www.bosch.de)
•   CANopen ist Eigentum der CiA (CAN in Automation e.V.), Deutschland (→ www.can-cia.org)
•   CODESYS™ ist Eigentum der CODESYS GmbH, Deutschland (→ www.codesys.com)
•   DeviceNet™ ist Eigentum der ODVA™ (Open DeviceNet Vendor Association), USA
    (→ www.odva.org)
•   EtherNet/IP® ist Eigentum der → ODVA™
•   EtherCAT® ist eine eingetragene Marke und patentierte Technologie, lizenziert durch die Beckhoff
    Automation GmbH, Deutschland
•   IO-Link® ist Eigentum der → PROFIBUS Nutzerorganisation e.V., Deutschland (→ www.io-
    link.com)
•   ISOBUS ist Eigentum der AEF – Agricultural Industry Electronics Foundation e.V., Deutschland
    (→ www.aef-online.org)
•   Microsoft® ist Eigentum der Microsoft Corporation, USA (→ www.microsoft.com)

4
O3DC02

•   Modbus® ist Eigentum der Schneider Electric SE, Frankreich (→ www.schneider-electric.com)
•   PROFIBUS® ist Eigentum der PROFIBUS Nutzerorganisation e.V., Deutschland
    (→ www.profibus.com)
•   PROFINET® ist Eigentum der → PROFIBUS Nutzerorganisation e.V., Deutschland
•   Windows® ist Eigentum der → Microsoft Corporation, USA

                                                                                                                  DE
1.4     Open source information
This product can contain Free Software or Open Source Software from various software developers
which is subject to the following licenses: General Public License version 1, version 2 and version 3
(General Public License version 3 in conjunction with the GNU Compiler Collection Runtime Library
Exception version 3.1), Lesser General Public License version 2.1, Lesser General Public License
version 3, Berkeley Software Distribution („This product includes software developed by the University
of California, Berkeley and its contributors“), The Academic Free License version 2.1. For the
components subject to the General Public License in their respective versions the following applies:
This program is free software: you can redistribute it and/or modify it under the terms of the GNU
General Public License as published by the Free Software Foundation. If version 1 applies to the
software: either version 1 of the License or (at your option) any later version; if version 2 (or 2.1)
applies to the software: either version 2 (or 2.1) of the License or (at your option) any later version; if
version 3 applies to the software: either version 3 of the License or (at your option) any later version.
The following disclaimer of the software developers applies to the software components that are
subject to the General Public License or the Lesser General Public License in their respective
versions: The Free Software is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License and the GNU Lesser General Public
License for more details.
The responsibility of ifm electronic gmbh for ifm products, in the case of product-specific software,
remains unaffected by the above disclaimer. Please note that the firmware for the ifm products is in
some cases provided free of charge. The price of the ifm products has then to be paid for the
respective device itself (hardware) and not for the firmware. For the latest information on the license
agreement for your product please visit www.ifm.com
For binaries that are licensed under any version of the GNU General Public License (GPL) or the GNU
LGPL you may obtain the complete corresponding source code of the GPL software from us by
sending a written request to: opensource@ifm.com or to ifm electronic gmbh, Friedrichstraße 1, 45128
Essen, Germany.
We charge €30 for each request. Please write “source for product Y” in the memo line of your
payment. Your request should include (i) the name of the covered binary, (ii) the name and the version
number of the ifm product, (iii) your name and (iv) your return address.
This offer is valid to anyone in receipt of this information. This offer is valid for at least three years
(from the date you received the GPL/LGPL covered code).

                                                                                                              5
O3DC02

2     Sicherheitshinweise
•   Das beschriebene Gerät wird als Teilkomponente in einem System verbaut.
    – Die Sicherheit dieses Systems liegt in der Verantwortung des Erstellers.
    – Der Systemersteller ist verpflichtet, eine Risikobeurteilung durchzuführen und daraus eine
      Dokumentation nach den gesetzlichen und normativen Anforderungen für den Betreiber und
      den Benutzer des Systems zu erstellen und beizulegen. Diese muss alle erforderlichen
      Informationen und Sicherheitshinweise für den Betreiber, Benutzer und ggf. vom
      Systemersteller autorisiertes Servicepersonal beinhalten.
•   Dieses Dokument vor Inbetriebnahme des Produktes lesen und während der Einsatzdauer
    aufbewahren.
•   Das Produkt muss sich uneingeschränkt für die betreffenden Applikationen und
    Umgebungsbedingungen eignen.
•   Das Produkt nur bestimmungsgemäß verwenden (Ò Bestimmungsgemäße Verwendung).
•   Die Missachtung von Anwendungshinweisen oder technischen Angaben kann zu Sach- und / oder
    Personenschäden führen.
•   Für Folgen durch Eingriffe in das Produkt oder Fehlgebrauch durch den Betreiber übernimmt der
    Hersteller keine Haftung und keine Gewährleistung.
•   Montage, elektrischer Anschluss, Inbetriebnahme, Bedienung und Wartung des Produktes darf nur
    ausgebildetes, vom Anlagenbetreiber autorisiertes Fachpersonal durchführen.
•   Geräte und Kabel wirksam vor Beschädigung schützen.

6
O3DC02

3    Bestimmungsgemäße Verwendung
Der O3DCxx 3D-Sensor ist ein optischer Sensor, der punktweise den Abstand zwischen Sensor und
der nächsten Oberfläche per Lichtlaufzeitverfahren misst. Der O3DCxx 3D-Sensor wird nachfolgend
als Gerät bezeichnet. Das Gerät beleuchtet die Szene mit einer internen Infrarot-Lichtquelle und
berechnet die Entfernung anhand des von der Oberfläche reflektierten Lichts.
Aus den Bilddaten werden mit der internen Bildverarbeitung Prozesswerte generiert und mit
Schwellenwerten verglichen. Das Gerät meldet zyklisch ob sich ein Objekt in einer vom Benutzer         DE
definierten geometrischen Zone befindet.
Aufgrund der Anforderungen für elektromagnetische Störaussendungen ist das Gerät für den Einsatz
in Industrieumgebungen bestimmt. Für den Einsatz in Wohnbereichen ist das Gerät nicht geeignet.

      Umgebungsbedingungen
      w Das Gerät darf nur unter den im Datenblatt angegebenen Umgebungsbedingungen
        verwendet werden.

                                                                                                   7
O3DC02

4     Lieferumfang
•   Gerät
•   Federringe (nur bei den Geräten O3DC0x)
•   Kurzanleitung

       w Datenblatt und Dokumentation: www.ifm.com

8
O3DC02

5     Zubehör
Für den Betrieb wird das folgende Zubehör benötigt:

Artikel                                               Beschreibung
E11950                                                Stromversorgungskabel für Kamera/Sensor
E11898                                                M12-Industrial-Ethernet-Verbindungskabel
                                                                                                          DE
          w Die Software ifm Vision Assistant ist im Internet verfügbar: www.ifm.com

                                                                                                      9
O3DC02

6     Montage

                                          1

                                              2          4

                                          3

Abb. 1: Montiertes Gerät mit einem detektierten Objekt
      1 Umgebung (nicht detektierbarer Bereich)              2 Detektierbarer Bereich
      3 Gerät                                                4 Objekt

           ⑤

Abb. 2: Gerät mit Federringen montieren
      5 Federring

6.1 Montageort wählen
Die folgenden Anweisungen bei der Wahl des Montageortes beachten:
u Das Objekt (4) wird nur detektiert, wenn es sich im detektierbaren Bereich (2) befindet.
w Die Größe des detektierbaren Bereiches ist im Datenblatt des Gerätes angegeben. Die Größe
  hängt zusätzlich vom Abstand zwischen dem Gerät (3) und dem Objekt (4) ab. Bei steigendem
  Abstand wird der detektierbare Bereich größer.
u Einen Abstand von > 20 cm zwischen dem Gerät und Boden einhalten.
w Verschiedene Blickwinkel können zu einer Erhöhung oder Reduktion des Abstandes zum Boden
  führen.
u Toleranzen beim Platzieren des Objektes berücksichtigen.
u Die Umgebung (1) frei von Objekten halten.
u Das Gerät nicht in stark verschmutzten Bereichen montieren.
w Das Objektiv des Gerätes verschmutzt.
u Eine transparente Scheibe zwischen dem Gerät (3) und dem Objekt (4) vermeiden.
w Selbst beim Verwenden einer sehr sauberen Glasplatte wird ein Teil des Lichtes reflektiert.

       Anweisungen einhalten
       w Das Nichteinhalten der Anweisungen führt zu Messfehlern.

10
O3DC02

6.2 Gerät montieren
Die folgenden Anweisungen bei der Montage des Gerätes beachten:
u Das Gerät mit 2x M5-Schrauben oder Montageset montieren.
w Die Bohrmaße für die M5-Schrauben sind im Datenblatt angegeben.
w Das Montageset ist als Zubehör erhältlich.
u Das Gerät (3) mit den Federringen (5) mit maximal 3 Nm montieren.
                                                                                                         DE
u Zugentlastungen verwenden für alle mit dem Gerät verbundenen Leitungen.

          Korrosion im Nassbereich
          w Bei permanentem Einsatz des Gerätes im Nassbereich, kann die Überwurfmutter des M12-
            Industrial-Ethernet-Verbindungskabel (z.B. E11898) korrodieren. Verwenden Sie für den
            permanenten Einsatz im Nassbereich ein Verbindungskabel mit einer Überwurfmutter aus
            V4A.

6.3        Oberflächentemperatur des Gerätes reduzieren
Das Gerät kann im Betrieb heiß werden. Mit den folgenden Maßnahmen wird die
Oberflächentemperatur des Gerätes reduziert:
u Das Gerät an wärmeleitenden Metallteilen montieren.
w Ein großflächiger Kontakt des Gerätes mit Metallteilen erhöht die Wärmeabfuhr (z.B. Metallteile
  aus Aluminium).
u Die Wärmeleitplatte bei der Montage auf Metallteilen verwenden.
w Der wärmeleitende Effekt wird durch die Wärmeleitplatte erhöht. Die Wärmeleitplatte ist als
  Zubehör erhältlich.
u Aufbauten im Umfeld des Gerätes und die Packungsdichte von Objekten reduzieren.
w Aufbauten und eine hohe Packungsdichte können sich negativ auf die Luftbewegung auswirken.
u Ein oder zwei Kühlkörper an das Gerät montieren.
w Die Kühlkörper erhöhen die Oberfläche des Gerätes, wodurch die Oberflächentemperatur reduziert
  wird. Die Kühlkörper sind als Zubehör erhältlich.

6.4        Montagezubehör
Je nach Montage wird das folgende Zubehör benötigt:

Artikel                                             Beschreibung
E3D301                                              Montageset Smart Camera
E3D302                                              Kühlkörper Smart Camera
E3D303                                              Wärmeleitplatte Smart Camera
E3D304                                              2x Kühlkörper Smart Camera

          w Informationen zum Zubehör: www.ifm.com

                                                                                                    11
O3DC02

7    Elektrischer Anschluss
         ACHTUNG
         Hohe Oberflächentemperatur
         w Das Gerät kann abhängig vom Betriebsmodus heiß werden. Die Differenz zwischen
           Oberflächentemperatur des Gerätes und Umgebungstemperatur darf max. 25 Grad
           betragen. Eine oder mehrere der folgenden Maßnahmen ergreifen:
         u Den Betriebsmodus anpassen.
         u Das Gerät ausreichend kühlen (z.B. mit Kühlkörper und Wärmeleitplatte).
         u Einen Berührschutz verwenden.

         ACHTUNG
         Elektrische Spannung
         w Das Gerät darf nur von einer Elektrofachkraft installiert werden.
         w Gerät der Schutzklasse III (SK III)
         w Die elektrische Versorgung darf nur über PELV-Stromkreise erfolgen.
         w Die elektrische Versorgung muss der UL61010-1, Kap. 9.4 – Limited Energy
           entsprechen.
         w Die Isolierung externer Stromkreise muss der UL61010-2-201, Abb. 102 entsprechen.
         u Die Stromversorgung vor elektrischen Anschluss spannungsfrei schalten.
         u Bei Kabellängen > 30 m einen zusätzlichen Schutz gegen Stoßspannungen nach
           IEC6100-4-5 verwenden.

         ACHTUNG
         Eindringende Feuchtigkeit
         w Die im Datenblatt angegebene IP-Schutzart wird nur bei fest verschraubten M12-
           Steckverbindern gewährleistet.
         w Das Gerät kann durch locker verschraubte M12-Steckverbinder beschädigt werden.
         u Die M12-Steckverbinder fest mit dem Gerät verschrauben.

     Gültigkeitsbereich cULus
     w Die Mindesttemperaturfestigkeit von 70 °C des Kabels zum Anschluss an
       Feldanschlussklemmen beachten.

12
O3DC02

7.1 Anschlussbelegung
                                                 (1) Ethernet
                                                 M12-Buchse, D-kodiert, 4-polig
                                                                                   1 TD +
                                                                                   2 RD +
                                                                                   3 TD –              DE
                                                                                   4 RD –
                                                                                   S Shield
                                                 (2) Stromversorgung
                                                 M12-Stecker, A-kodiert, 8-polig
                                                                                   1 U+
                                                                                   3 GND

         ACHTUNG
         Eindringende Feuchtigkeit
         w Wird der Ethernet-Anschluss nicht verwendet, kann Feuchtigkeit durch den
           ungeschützten Ethernet-Anschluss ins Gerät eindringen.
         u Den unbenutzten Ethernet-Anschluss mit der Verschlusskappe E73004 verschließen.
         u Die Verschlusskappe mit 0,6..0,8 Nm anziehen.

7.1.1   Pin 1 / 3 (24 V / GND)
Der zulässige Spannungsbereich ist im Datenblatt des Gerätes angegeben.

7.2 Verdrahtungsbeispiele

7.2.1   Einfache Bildaufnahme
Die Abbildung stellt das Verdrahten des Gerätes mit dem Steuerungscomputer eines Fahrzeugs dar.

                                                                                                  13
O3DC02

       1             2

       4             3

      2          1 8                                   ①
     3             7
     4            6
           5
                          3    1   2   4   5   6   7   8

     + DC 24 V   -

Abb. 3: Verdrahtungsbeispiel
         1 Steuerungscomputer des Fahrzeugs

7.2.2                Mehrere Geräte parallel verwenden
Die Abbildung stellt das Verdrahten von 4 Geräten (C1 bis C4) mit dem Steuerungscomputer eines
Fahrzeugs dar.

                               C1                 U+

                              Relais

        C4                                        C2
                                   

                              Switch

         Service             Data logger

                                           C3

Abb. 4: Verdrahtungsbeispiel für mehrere Geräte
         1     Gerät 1                                      2   Gerät 2
         3     Gerät 3                                      4   Gerät 4
         5     Steuerungscomputer des Fahrzeugs             6   Relais
         7     Spannungsversorgung                          8   Switch
         9     Servicezugang                               10   Datenlogger

Jedes Gerät blickt in eine andere Richtung. Durch die spezifische Anordnung der Geräte wird eine
partielle Rundumsicht des Fahrzeugs realisiert. Die Komponenten müssen die nötige Performance
gewährleisten (beispielsweise die Eigenbewegungsdaten).

           Störungsfreier Betrieb
           w Die O3DCxx 3D-Sensoren beeinflussen sich bei der Hinderniserkennung nicht
             untereinander.

14
O3DC02

8        Bedien- und Anzeigeelemente
Das Gerät zeigt mit den Anzeigeelementen LED 1 – 4 den aktuellen Betriebszustand an.

        LED 1                               LED 2
      LED 4                                   LED 3
                                                                                                                            DE

Abb. 5: Anzeigeelemente des Gerätes

LED 4 „Ethernet“     LED 1 „Power“           LED 2 „OUT 1“      LED 3 „OUT 2“      Beschreibung
                     leuchtet                                                      Das Gerät ist betriebsbereit,
                                                                                   Versorgungsspannung liegt an
                     blinkt mit 0,5 Hz                                             Das Gerät ist nicht parametriert oder
                                                                                   die Parametrierung wurde nicht auf
                                                                                   das Gerät geladen.
                                                                                   On
                                                                                   Off
                     blinkt 2x mit 0,5 Hz                                          Das Gerät ist im Parametriermodus.
                                                                                   On
                                                                                   Off
                                             leuchtet                              Das Gerät ist bereit (IDLE state)
                                                                                   (Ò Switching the sensing
                                                                                   state / 55).
                                             blinkt mit 10 Hz   blinkt mit 10 Hz   Die Hinderniserkennung ist aktiv
                                                                                   (SENSING state) (Ò Switching the
                                                                                   sensing state / 55).
leuchtet                                                                           Ethernet ist verbunden.
blinkt                                                                             Ethernet überträgt Daten.
aus                                                                                Ethernet ist nicht verbunden.
                                             blinkt mit 8 Hz    blinkt mit 8 Hz    Das Gerät meldet einen internen
                                                                                   Fehler.
                                             blinkt mit 2 Hz    blinkt mit 2 Hz    Das Gerät meldet einen behebbaren
                                                                                   Fehler. Die Fehlermeldung kann über
                                                                                   Ethernet ausgelesen werden.
                                                  Lauflicht ⇒                      Das Gerät bootet.
                                                  Lauflicht ⇐                      Das Gerät führt ein Firmware-Update
                                                                                   aus.

                                                                                                                       15
O3DC02

9     Inbetriebnahme
Durch Einschalten der Versorgungsspannung wird das Gerät in Betrieb genommen. Nach ca.
15 Sekunden befindet sich das Gerät im Standby und ist bereit Konfigurationskommandos zu
empfangen. Die Anzeigeelemente signalisieren den aktuellen Betriebszustand.

9.1 Gerät parametrieren
Das Gerät wird mit der Software ifm Vision Assistant oder über XML-RPC und Prozessschnittstellen-
Kommandos parametriert.

       w Die Software ifm Vision Assistant und das Softwarehandbuch sind im Internet verfügbar:
         www.ifm.com

       w Third party-Bibliotheken können die Kommunikation über XML-RPC vereinfachen
         (beispielsweise https://docs.python.org/3/library/xmlrpc.html)

       w Die XML-RPC-Schnittstelle wird nur für das Parametrieren benötigt. Im Regelbetrieb für die
         Kommunikation zwischen einer Steuerung und dem Gerät ist die XML-RPC-Schnittstelle
         nicht notwendig.

Individuelle IP-Adresse
Beim Verwenden mehrerer Geräte auf einem Fahrzeug muss die standardmäßige IP-Adresse
„192.168.0.69“ geändert werden. Hierfür wird das XML-RPC-Objekt “device/networkconfig” benötigt
(Ò Device / Network config object / 33). Der Parameter “StaticIPv4Address” wird mit der
“setParameter”-Methode geändert (Ò Parameter API / 26). Die neue Konfiguration wird mit der
“saveAndActivateConfig”-Methode aktiviert.
NTP-Server-Konfiguration
Die IP-Adresse des NTP-Servers wird mit dem XML-RPC-Objekt zur Zeitkonfiguration „device/time“
eingestellt (Ò Device / Time config object / 33). Zuerst wird der Parameter „NTPServers“ auf die IP-
Adresse des NTP-Servers gesetzt mit der „setParameter”-Methode (Ò Parameter API / 26).
Anschließend wird die Synchronisation mit dem Parameter “SynchronizationActivated” aktiviert. Die
neue Konfiguration wird mit der „saveAndActivateConfig“-Methode aktiviert. Zum Abschluss ist ein
Neustart des Gerätes erforderlich.
Extrinsische Kalibrierung
Die Koordinatensysteme des Gerätes und Fahrzeugs müssen zueinander kalibriert werden, da die
Objektwarnzonen in Fahrzeugkoordinaten angegeben sind. Die extrinsische Kalibrierung transformiert
das intrinsische Koordinatensystem des Gerätes in das Koordinatensystem des Fahrzeugs. Die
Schätzung basiert auf der Betrachtung eines Kalibriermusters, dessen Position in
Fahrzeugkoordinaten angegeben ist.

                              1                      2          3                      4

Abb. 6: Extrinsische Kalibrierung des Gerätes
      1 Fahrerloses Transportfahrzeug (FTF)              2 Gerät
      3 Abstand zwischen Gerät und Kalibriermuster       4 Kalibriermuster

16
O3DC02

Als Kalibriermuster eignet sich ein 80x50 cm großes Schachbrettmuster mit 10x10 cm großen
Quadraten. Das Kalibriermuster wird auf eine ebene Platte in 75-105 cm Abstand zum Gerät mit einer
maximalen Unsicherheit der Referenzpunkte von ±5 mm angebracht.
Mit Standardmethoden zur Kamerakalibrierung werden eine Rotation und Translation extrahiert,
welche den Zusammenhang zwischen Fahrzeug- und Gerätekoordinatensystem beschreiben. Die
Parameter können mittels XML-RPC auf dem Gerät gespeichert werden. Hierfür benötigt man das
XML-RPC-Objekt „DeviceConfig“ (Ò Device config object / 30). Die zugehörigen Parameter sind in
der folgenden Tabelle aufgeführt (Ò Parameter API / 26).                                               DE
Parametername                                     Einheit         Beschreibung

  ExtrinsicCalibRotX                              [°]             Rotation um x-Achse

  ExtrinsicCalibRotY                              [°]             Rotation um y-Achse

  ExtrinsicCalibRotZ                              [°]             Rotation um z-Achse

  ExtrinsicCalibTransX                            [mm]            Translation in x-Richtung

  ExtrinsicCalibTransY                            [mm]            Translation in y-Richtung

  ExtrinsicCalibTransZ                            [mm]            Translation in z-Richtung

Die neue Konfiguration wird mit der „save“-Methode aktiviert.

9.1.1     Objektwarnzonen
Das Gerät besitzt drei unabhängige Objektwarnzonen, in denen Objekte erkannt und angezeigt
werden. Jede Objektwarnzone ist durch ein Polygon mit sechs Eckpunkten definiert. Für jede
Objektwarnzone wird eine einmalige Konfigurations-ID vergeben. Die Objektwarnzonen werden mit
Prozessschnittstellen-Kommandos eingestellt (Ò Process interface command reference / 45) und
an das Gerät gesendet (Ò Sending and retrieving zone configuration to the device / 54).

Abb. 7: Polygon mit 6 Eckpunkten

Die 6 Eckpunkte sind in Fahrzeugkoordinaten angegeben. Die Objektwarnzone ergibt sich aus der
konvexen Hülle der 6 Eckpunkte, erkennbar an den durchgezogenen Linien im Polygon. 2 Eckpunkte
können dieselben Koordinaten besitzen.
Es gibt eine globale Höhe für alle Objektwarnzonen. Durch die 6 Eckpunkte und die globale Höhe
ergibt sich eine dreidimensionale Objektwarnzone. Das Gerät überprüft nicht die Validität der
gewählten Punkte im Bezug zum Bildfeld des Gerätes.

                                                                                                  17
O3DC02

Abb. 8: Gerät mit Objektwarnzonen

Wird eine Objektwarnzone über das Blickfeld des Gerätes hinaus definiert (oder darüber/dahinter),
kann das Gerät Objekte in diesen Bereichen nicht detektieren. Ein Mindestabstand der
Objektwarnzone zum Gerät ist nicht notwendig.
Mit den 6 Eckpunkten und den 3 Objektwarnzonen kann eine kurvenähnliche Objektwarnzone
bestimmt werden. Die Standardkonfiguration der Objektwarnzonen ist für alle Eckpunkte und
Zonenidentifikationsparameter [0,0]. Daher wird für die Standardkonfiguration der Objektwarnzonen
niemals ein Objekt detektiert und in der Zonenbelegung angezeigt.

Abb. 9: Objekt bewegt sich aus dem Erfassungsbereich

Abb. 10: Objekt befindet sich außerhalb des Erfassungsbereiches

18
O3DC02

            ACHTUNG
            Objekte werden nicht erkannt
            w Objekte außerhalb des Erfassungsbereiches werden nicht vom Gerät erkannt.
              Beispielsweise sind Objekte wie Kisten direkt vor dem Fahrzeug problematisch, wenn
              sie sich außerhalb des Erfassungsbereiches befinden.
            u Objekte außerhalb des Erfassungsbereiches beachten.                                         DE
        Objektwarnzonen werden nicht gespeichert
        w Die Objektwarnzonen werden nicht im Gerät gespeichert. Nach dem Neustarten des Gerätes
          müssen die Objektwarnzonen neu eingestellt werden.

9.1.2      Belegungskarte
Unabhängig von den Objektwarnzonen kann das Gerät eine Belegungskarte ausgeben. Die
Belegungskarte umfasst einen Bereich von ±5 m in x- und y-Richtung der Koordinaten des Fahrzeugs.

Abb. 11: Belegungskarte mit dem Raster 200x200 Zellen

Die Belegungskarte ist in ein Raster von 200x200 Zellen unterteilt. Für jede Zelle (5x5 cm) wird an der
Position die Wahrscheinlichkeit eines Hindernisses ausgegeben. Das FTF mit dem montierten Gerät
befindet sich an Position 0,0 in der Mitte der Belegungskarte.
In der Belegungskarte sind drei Objektwarnzonen im Bereich der grünen, gelben und roten Zellen
eingestellt. Die weiß eingefärbten Zellen haben einen Wert ungleich Null und eine erhöhte
Wahrscheinlichkeit, dass sich an der Position ein Hindernis befindet. Eine Zelle kann Werte im
Bereich „0“ bis „255“ annehmen. Bei einem Wert von „0“ ist ein Hindernis höchstwahrscheinlich nicht
vorhanden. Bei einem Wert von „255“ ist ein Hindernis höchstwahrscheinlich vorhanden. Die grüne
Objektwarnzone erkennt ein Hindernis und löst entsprechend aus.
In der folgenden Abbildung wird das Distanz-, Amplituden- und Konfidenzbild zur oben abgebildeten
Belegungskarte angezeigt.

Abb. 12: Distanzbild (links), Amplitudenbild (mittig) und Konfidenzbild (rechts)

                                                                                                     19
O3DC02

Die Ausgabe der Belegungskarte wird mit den Prozessschnittstellen-Kommandos eingestellt
(Ò Configuration of PCIC output / 41). Die zugehörige Image-ID lautet „occupancy_map“.
Beispiel für einen JSON-String

 { "layouter": "flexible", "format": { "dataencoding": "ascii" }, "elements":
 [ { "type": "string", "value": "star", "id": "start_string" }, { "type":
 "blob", "id": "occupancy_map" }, { "type": "string", "value": "stop", "id":
 "end_string" } ] }

Das Element „0“ der ausgegebenen Matrix korrespondiert mit der Zelle bei x = -5 m und y = -5 m in
den Koordinaten des Fahrzeugs.
Das Element „199“ der ausgegebenen Matrix korrespondiert mit der Zelle bei x = -5 m und y = +5 m in
den Koordinaten des Fahrzeugs.
Das letzte Element „39999“ der ausgegebenen Matrix korrespondiert mit der Zelle bei x = +5 m und
y = +5 m in den Koordinaten des Fahrzeugs.

9.2 Objekte detektieren
Nachdem das Gerät parametriert ist, kann das Detektieren von Objekten aktiviert werden:
u das Gerät starten,
u die Eigenbewegungsdaten bereitstellen,
u das Gerät in den Detektionsmodus schalten.

      Kommandos werden nicht beantwortet
      w Das Gerät nimmt nach dem Neustart Verbindung zum eingestellten NTP-Server auf. Zu
        diesem Zeitpunkt ist die ODS-Anwendung unvollständig geladen. Dadurch ist zwar eine
        Verbindung zum Gerät möglich, allerdings werden Kommandos nicht beantwortet oder
        abgelehnt. Voll funktionsfähig ist das Gerät erst nach dem vollständigen Laden der ODS-
        Anwendung.

Eigenbewegungsdaten
Die Eigenbewegung wird mit den folgenden Parametern beschrieben:

Parametername            Einheit                   Genauigkeit              Beschreibung

  VelocityX              [m/s]                     +- 10 mm/s               Geschwindigkeit in x-
                                                                            Richtung im
                                                                            Fahrzeugkoordinatensystem

  VelocityY              [m/s]                     +- 10 mm/s               Geschwindigkeit in y-
                                                                            Richtung im
                                                                            Fahrzeugkoordinatensystem

  GearRate               [rad/s]                   +- 1°/s                  Rotation in Radian pro
                                                                            Zeitintervall im
                                                                            Fahrzeugkoordinatensystem

  TimeStamp              [ns]                      +-5ms                    Zeitstempel der Endposition
                                                                            (synchronisiert für Sensor-
                                                                            und Fahrzeugkontrollsystem)

Das Gerät benötigt Informationen zur Eigenbewegung des Fahrzeugs mit einer konstanten
Wiederholungsrate von 30 Hz.

20
O3DC02

                                                   t3
                                                                    ω3

                                                              Vy3
                                                                                                         DE
                                ω2               Vx3

                                                                                               t4
                                 Vy2
                 t2

                          Vx2
               x

y

        t1
Abb. 13: Eigenbewegung des Fahrzeugs

Die Eigenbewegung des Fahrzeugs wird zum Zeitpunkt ti (i = 1, 2, 3, …) durch die Geschwindigkeit in
x-Richtung vxi und y-Richtung vyi und durch die Gierrate ωi beschrieben.
Die Eigenbewegungsdaten werden an das Gerät im Koordinatensystem des Fahrzeugs über
Prozessschnittstellen-Kommandos gesendet (Ò Sending ego data to the device / 52).
Gerätemodus
Das Gerät kann den Gerätemodus „BOOT“, „IDLE“, „SENSING“ oder „ERROR“ annehmen.
Im Gerätemodus „BOOT“ befindet sich das Gerät während des Startens.
Im Gerätemodus „IDLE“ befindet sich das Gerät nach dem Starten. Das Gerät emittiert kein Licht und
es werden keine Daten aufgezeichnet, um Energie zu sparen. Der Gerätemodus ist für das Fahrzeug
vorgesehen, wenn es sich nicht bewegt.
Im Gerätemodus „SENSING“ ist die Hinderniserkennung aktiviert. Das Gerät emittiert Licht, es werden
Daten aufgezeichnet, die Eigenbewegungsdaten werden evaluiert und es werden Informationen zur
Zonenbelegung ausgegeben. Der Gerätemodus ist für das Fahrzeug vorgesehen, wenn es sich
bewegt.
Im Gerätemodus „ERROR“ befindet sich das Gerät im Fehlerfall.

       w Zwischen den Gerätemodi „IDLE“ und „SENSING“ wird mit Prozessschnittstellen-
         Kommandos gewechselt (Ò Switching the sensing state / 55).

                                                                                                    21
O3DC02

10 Wartung, Instandsetzung, Entsorgung

10.1     Wartung
Das Gerät ist wartungsfrei.

10.2     Reinigung der Gehäuseoberfläche
u Gerät von der Betriebsspannung trennen.
u Verschmutzungen mit einem weichen, chemisch unbehandelten und trockenen Tuch entfernen.

       Empfohlen werden Mikrofaser-Tücher ohne chemische Zusatzmittel.

u Bei starker Verschmutzung ein feuchtes Tuch verwenden.

10.3 Instandsetzung
u Das Gerät nur durch den Hersteller instand setzen lassen.
u Sicherheitshinweise beachten.

10.4 Entsorgung
u Das Gerät gemäß den nationalen Umweltvorschriften entsorgen.

10.5 Firmware aktualisieren
Die Firmware des Gerätes kann mit der Software ifm Vision Assistant aktualisiert werden.

       Datenverlust durch Firmware-Aktualisierung
       w Einige im Gerät gespeicherte Parameter gehen durch das Aktualisieren der Firmware
         verloren. Von den Parametern kann mit dem ifm Vision Assistant ein Backup erstellt werden.
       u Vor dem Aktualisieren die Parameter exportieren.
       u Nach dem Aktualisieren die Parameter importieren.

10.6 Gerät austauschen
       Datenverlust durch Geräte-Austausch
       w Die im Gerät gespeicherten Parameter gehen durch den Austausch verloren. Von den
         Parametern kann mit dem ifm Vision Assistant ein Backup erstellt werden.
       u Vor dem Aktualisieren die Parameter exportieren.
       u Nach dem Aktualisieren die Parameter importieren.

       w Das Backup der Parameter hat einen zusätzlichen Nutzen: Mit dem Backup können mehrere
         Geräte schnell mit identischen Parametern ausgestattet werden.

22
O3DC02

11 Zulassungen / Normen
Prüfnormen und Bestimmungen (Ò Technische Daten)
Die EU-Konformitätserklärung und Zulassungen sind abrufbar unter:
www.ifm.com

                                                                             DE

                                                                        23
O3DC02

12 Appendix

12.1      Required ports
The following ports are required for the sensor configuration using XML-RPC and for receiving data on
the process interface. They must not be blocked by a firewall or router.
•    TCP/HTTP: 80
•    TCP: 50010
If the ifm Vision Assistant is used, the following additional ports must also be available:
•    UDP: 3321
•    TCP/HTTP: 8080
It is possible to configure another port than 50010 for the process interface. If a different port is used, it
must not be blocked either.

12.2 XML-RPC interface
In case the device is not configured by the ifm Vision Assistant, the XML-RPC interface can be used
instead.

       w General information about XML-RPC is found on the website http://xmlrpc.com/spec.md

To send a command via the XML-RPC interface, the command must have a special layout. Linefeeds
and carriage returns are essential.

       w Every command which is sent via the XML-RPC interface must end with carriage return
          and linefeed  .

Several commands will use different URLs in the XML-RPC header.

12.2.1     Sample XML-RPC command
All following XML-RPC commands will have this type of layout:

    POST /RPC3 HTTP/1.0
    User-Agent: Frontier/5.1.2 (WinNT)
    Host: betty.userland.com
    Content-Type: text/xml
    Content-length: 181
    
    examples.getStateName
    
    41
    
The following example contains one O3DCxx command:

24
O3DC02

 POST /api/rpc/v1/com.ifm.efector/ HTTP/1.1 
 User-Agent: Frontier/5.1.2 (WinNT)
 Host: 192.168.0.69
 Content-Type: text/xml
 Content-length: 94
 
                                                                                                              DE
 getParameter

12.2.2     XML-RPC objects
To communicate and to configure the device via XML-RPC the XML-RPC commands have to use
different XML-RPC objects. Different commands need different XML-RPC objects (Ò XML-RPC
command reference / 26). The interface of O3DCxx is structured in an object-oriented way. Some of
the objects are available all the time, others are only available after bringing the device into a special
mode by calling a method on an already available object. This mechanism is used to create system
requirements (e.g. password protection).

       w It could be necessary to send heartbeats so that there will be no session timeout.

The following diagram should give an overview how objects are related to each other and which
methods must be called to make others available:

Abb. 14: XML-RPC Objects 1

Abb. 15: XML-RPC Objects 2

                                                                                                         25
O3DC02

Main object
Object-URI: /api/rpc/v1/com.ifm.efector/
This is the main object of RPC. It contains methods to open a session. The session contains methods
for activating the edit mode. Most of its methods are only getters, because it should be possible to
protect editing with a password.

Session object
Object URI e.g.: /api/rpc/v1/com.ifm.efector/session_d21c80db5bc1069932fbb9a3bd841d0b/
The URL part “d21c80db5bc1069932fbb9a3bd841d0b” is the session ID. It is returned by the
command "requestSession" of the main object. If the command "requestSession" is called without a
user-defined session ID, which can be passed as a parameter, a random session ID is generated
automatically.

EditMode object
Object URI e.g.: /api/rpc/v1/com.ifm.efector/session_d21c80db5bc1069932fbb9a3bd841d0b/edit/
This object is only available if the device is in the edit operating mode. The index of applications must
be between 1 and 32. The device must only support 32 applications and the indexes must start at 1.

DeviceConfig object
Object-URI e.g.: /api/rpc/v1/com.ifm.efector/session_d21c80db5bc1069932fbb9a3bd841d0b/edit/
device/

Device/NetworkConfig object
Object URI e.g.: /api/rpc/v1/com.ifm.efector/session_d21c80db5bc1069932fbb9a3bd841d0b/edit/
device/network/

Device/Time object
Object URI e.g.: /api/rpc/v1/com.ifm.efector/session_d21c80db5bc1069932fbb9a3bd841d0b/edit/
device/time/

12.3         XML-RPC command reference

12.3.1         Parameter API
The parameters setParameter , getParameter , getAllParameters and
getAllParameterLimits are implemented in the following RPC objects:
•     Device
•     Network
•     Time
setParameter

Method Name                Description                   Input parameter               Output parameter
    setParameter           Sets a parameter to a specific Name of parameter: string.   Empty string (compatible with
                           value.                         New value: string.           classic XmlRPC client).

26
O3DC02

getParameter

Method Name                  Description                     Input parameter                    Output parameter
 getParameter                Returns the current value of    Name of parameter: string.         Value of parameter: string.
                             the parameter.

getAllParameter                                                                                                                    DE
Method Name                  Description                     Input parameter                    Output parameter
 getAllParameters            Returns all parameters of the   None.                              Struct (name contains the
                             object in one data structure.                                      parameter name, value
                                                                                                contains the stringified
                                                                                                parameter value).

getAllParameterLimits

Method Name                  Description                     Input parameter                    Output parameter
 getAllParameterLimits       Returns limits of all numeric   None.                              Struct of Structs (name in first
                             parameters, that have limits                                       struct is the parameter name,
                             defined on the device.                                             substructs contains:
                                                                                                 min :string,
                                                                                                max :string )
                                                                                                E.g.:
                                                                                                {"ExposureTime1":
                                                                                                { "min": "123", "max":
                                                                                                "432" },
                                                                                                "ExposureTime2":
                                                                                                { "min": "123", "max":
                                                                                                "432" }}

Parameter string encoding
Non-string parameters must be encoded in the following format.

Type                                                         Stringified
bool                                                         "true" / "false"
                                                             setParameter method also accepts "1" / "0". Getter methods
                                                             must always return "true" / "false".
int                                                          decimal (e.g. "-1234" / "1234" )
                                                             Values should be in the range of int32
                                                             (-2^31...2^31).
double                                                       English floating-point notation (optional with exponent).
                                                             E.g. "1.2", ".3", "4.5e6", "-7E-8", "-inf", "nan"

         w Structured types (array or structs) can't be put into parameter storage in a general way.
           Encoding of arrays must specified on specific parameters.

12.3.2      Main object
getParameter

Method Name                  Description                     Input parameter                    Output parameter
 getParameter                Getter for the device-global    Name of a device parameter:        Value of the requested
                             parameters.                     string.                            parameter: string.

                                                                                                                              27
O3DC02

getAllParameters

Method Name         Description                       Input parameter   Output parameter
 getAllParameters   Getter for the parameters         None.             Struct (name contains the
                    described here.                                     parameter name, value
                    This is an additional getter                        contains the stringified
                    outside of edit sessions. It is                     parameter value).
                    possible to read device
                    information without login.

getSWVersion

Method Name         Description                       Input parameter   Output parameter
 getSWVersion       Returns version information of None.                Struct of strings, e.g.
                    all software components.                            { "IFM_Software":
                                                                        "0.01.07", "Frontend":
                                                                        "01.05.02", ... }
                                                                        Mandatory keys:
                                                                        "IFM_Software"
                                                                        "Linux"
                                                                        "Main_Application"
                                                                        "Diagnostic_Controller"
                                                                        "Algorithm_Version"
                                                                        "Calibration_Version"
                                                                        "Calibration_Device"

getHWInfo

Method Name         Description                       Input parameter   Output parameter
 getHWInfo          Returns hardware information None.                  Struct of strings, e.g.
                    of all components.                                  { "MACAddress":
                                                                        "00:02:01:40:06:C9",
                                                                        "Frontend": "#!
                                                                        01_F340_001_...", ... }
                                                                        Mandatory keys:
                                                                        "MACAddress"
                                                                        "Connector"
                                                                        "Diagnose"
                                                                        "Frontend"
                                                                        "Illumination"
                                                                        "Mainboard"

28
O3DC02

requestSession

Method Name             Description                          Input parameter                 Output parameter
 requestSession         Requests a session object for        Password: string                Session ID: string
                        access to the configuration          Session ID: string (optional)
                        and for changing the device
                        operating mode.
                        This blocks parallel editing
                        and allows protection of                                                                              DE
                        editing with a password.
                        The ID could optionally be
                        defined by the external
                        system, but it must be the
                        defined format (32char "hex").
                        If it is called with only one
                        parameter, the device will
                        generate a session ID.
                        The session will start with a
                        default timeout
                        ("SessionTimeout" device
                        parameter). The timeout can
                        be extended by calling
                        "heartbeat".
                        The device will stay in RUN
                        mode.
                        If password is disabled on the
                        device, the value given as
                        password parameter is
                        ignored.

reboot

Method Name             Description                          Input parameter                 Output parameter
 reboot                 Reboot system. Parameter             Type of system that should be Output: string
                        defines which mode/system            booted after shutdown: int
                        will be booted.                      “0”: Productive mode
                                                             “1”: Recovery mode

systemCommand

Method Name             Description                          Input parameter                 Output parameter
 systemCommand          Performs a generic command           Command: string                 Output: string
                        on the device.                       Parameter: string

12.3.3       Session object
heartbeat

Method Name             Description                          Input parameter                 Output parameter
 heartbeat              Extends the lifetime of the          Requested timeout interval till The used timeout interval, in
                        edit session.                        next heartbeat, in seconds: int seconds: int
                        If the given value is outside
                        the range of
                        "SessionTimeout", the saved
                        default timeout will be used.

cancelSession

Method Name             Description                          Input parameter                 Output parameter
 cancelSession          Explicit stop of this session.       None.                           Empty string (compatible with
                        If an application is still in edit                                   classic XmlRPC client).
                        mode, it will implicitly do the
                        same as
                        "stopEditingApplication".

                                                                                                                         29
O3DC02

setOperatingMode

Method Name              Description                      Input parameter               Output parameter
 setOperatingMode        Changes the operating mode       Mode: integer                 Empty string (compatible with
                         of the device.                   “0”: Run mode                 classic XmlRPC client).
                         Setting this to "edit" will      “1”:: Edit mode
                         enable the "edit mode object”
                         on RPC.

12.3.4    Device config object
activatePassword

Method Name              Description                      Input parameter               Output parameter
 activatePassword        Sets a password and              Password: string              Empty string (compatible with
                         activates it for the next edit                                 classic XmlRPC client).
                         session.
                         Making this change
                         persistently requires calling
                         "save" on device config.

save

Method Name              Description                      Input parameter               Output parameter
 save                    Stores current configuration in None.                          Empty string (compatible with
                         persistent memory.                                             classic XmlRPC client).
                         If this is not called after
                         changing device parameters
                         (via setParameter), changes
                         will get lost on reboot.

Parameter of device config
Methods for parameter access are defined here:

Parameter name                      Data type                                Description
 Name                               String (utf8)                            User-defined name of the device (max.
                                                                             64 characters).
 Description                        String (utf8)                            User-defined description of the device
                                                                             (max. 500 characters).
 ActiveApplication                  Int                                      Index of active application.
                                    *) Has limits                            This applies only to RUN mode:
                                                                             defines the application active on startup
                                                                             (if static- application switching is
                                                                             disabled).
                                                                             contains the current active application
                                                                             (could also be changed via PCIC
                                                                             command).
                                                                             “0” means no application is active.
 PcicTcpPort                        Int                                      TCP/IP port for PCIC connections.
 PcicProtocolVersion                Int                                      Sub-protocol of PCIC, see specification
                                    *) Has limits                            of PCIC.

 IOLogicType                        Int                                      Defines logic type of all digital pins.
                                    *) Has limits                            Allowed values:
                                                                             “0”: NPN
                                                                             “1”: PNP
 IODebouncing                       Bool                                     Applies to all inputs

30
O3DC02

Parameter name              Data type            Description
IOExternApplicationSwitch   Int                  Allowed values:
                            *) Has limits        “0”: off
                                                 “1”: static via I/O
                                                 “2”: pulse driven via I/O
                                                 “3”: pulse driven via trigger
SessionTimeout              Int                  Number of seconds which a session
                                                 stays before a call to "heartbeat" method
                                                                                                 DE
                            *) Has limits
                                                 is needed.
ServiceReportFailedBuffer   Int                  Number of buffers reserved for failed
                            *) Has limits        results.

ServiceReportPassedBuffer   Int                  Number of buffers reserved for passed
                            *) Has limits        results.

ExtrinsicCalibTransX        Double               Extrinsic calibration, transition in X
                            Unit: millimetres    direction.

ExtrinsicCalibTransY        Double               Extrinsic calibration, transition in Y
                            Unit: millimetres    direction.

ExtrinsicCalibTransZ        Double               Extrinsic calibration, transition in Z
                            Unit: millimetres    direction.

ExtrinsicCalibRotX          Double               Extrinsic calibration, rotation around X
                            Unit: degrees        axis.

ExtrinsicCalibRotY          Double               Extrinsic calibration, rotation around Y
                            Unit: degrees        axis.

ExtrinsicCalibRotZ          Double               Extrinsic calibration, rotation around Z
                            Unit: degrees        axis.

IPAddressConfig             Int                  readonly: The GUI requires to know if
                                                 the device is on a discovery IP address
                                                 for multiple use cases. This information
                                                 was extended to reflect all kinds of IP-
                                                 address situations.
                                                 Allowed values:
                                                 “0”: Static (IP address explicitly defined
                                                 inside the device)
                                                 “1”: DHCP (using a DHCP server in the
                                                 network)
                                                 “2”: LinkLocal (configured to DHCP, but
                                                 no server which provided an address)
                                                 “3”: Discovery (changed by
                                                 IP4Discovery mechanism)
PasswordActivated           Bool                 readonly: Is true if the password
                                                 protection is enabled.
OperatingMode               Int                  readonly: Mode of device (RUN, EDIT).
                                                 See "setOperatingMode" (the setter is
                                                 outside the edit mode, but inside
                                                 session).
DeviceType                  String               readonly: Delivers a type description,
                                                 unique by imager, evaluation logic and
                                                 device interface.
ArticleNumber               String               readonly: Official catalogue number.
ArticleStatus               String               readonly: Official two-letter status code.
UpTime                      Double               readonly: Hours since last reboot.
ImageTimestampReference     Int                  readonly: This returns the current
                            Unit: microseconds   timestamp as a reference for the
                                                 timestamps in the received images.
TemperatureFront1           Double               Invalid temperature, the output is
                            Unit: celsius        3276.7.

                                                                                            31
O3DC02

Parameter name                     Data type                          Description
 TemperatureFront2                 Double                             Invalid temperature, the output is
                                   Unit: celsius                      3276.7.

 TemperatureIllu                   Double                             readonly: Temperature measured in the
                                   Unit: celsius                      device.
                                                                      Measured on the illumination board.

*) Has limits: parameters with this marker are listed in the reply of getAllParameterLimits method.
Default values of device config parameters

Parameter name                     Data type                          Description
 Name                              String (utf8)                      "New sensor"
 Description                       String (utf8)                      ""
 ActiveApplication                 Int                                0
                                   *) Has limits
 PcicTcpPort                       Int                                50010
 PcicProtocolVersion               Int                                3
                                   *) Has limits
 IOLogicType                       Int                                1
                                   *) Has limits
 IODebouncing                      Bool                               true
 IOExternApplicationSwitch         Int                                0
                                   *) Has limits
 SessionTimeout                    Int                                30
                                   *) Has limits
 ExtrinsicCalibTransX              Double                             0.0
                                   Unit: millimetres
 ExtrinsicCalibTransY              Double                             0.0
                                   Unit: millimetres
 ExtrinsicCalibTransZ              Double                             0.0
                                   Unit: millimetres
 ExtrinsicCalibRotX                Double                             0.0
                                   Unit: degrees
 ExtrinsicCalibRotY                Double                             0.0
                                   Unit: degrees
 ExtrinsicCalibRotZ                Double                             0.0
                                   Unit: degrees
 IPAddressConfig                   Int                                0
 PasswordActivated                 Bool                               false
 OperatingMode                     Int                                0
 ServiceReportFailedBuffer         Int                                15
 ServiceReportPassedBuffer         Int                                15

*) Has limits: parameters with this marker are listed in the reply of getAllParameterLimits method.
For all other device config parameters there are no defined default values because they are either
device dependent (DeviceType, ArticleNumber, ArticleStatus) or volatile (UpTime,
ImageTimestampReference).
Minimum and maximum values of device config parameters

Parameter name                     Minimum value                      Maximum value
 ActiveApplication                 0                                  32

32
O3DC02

Parameter name                          Minimum value                          Maximum value
 PcicProtocolVersion                    1                                      4
 IOLogicType                            0                                      1
 IOExternApplicationSwitch              0                                      3
 SessionTimeout                         5                                      300

                                                                                                                           DE
12.3.5    Device / Network config object
saveAndActivateConfig

Method Name                  Description                     Input parameter             Output parameter
 saveAndActivateConfig       Reinitialise the network        None.                       Empty string (compatible with
                             interface so that it uses the                               classic XmlRPC client).
                             configuration which was set
                             by the other RPC methods.
                             There will be no XMLRPC
                             reply, because the network
                             interface is instantly reset.

Parameters of network config

Parameter name                          Data type                              Description
MACAddress                              string (read-only)                     MAC address of the device (format:
                                                                               "xx:xx:xx:xx:xx:xx").
UseDHCP                                 bool                                   Configure the IP interface via DHCP.
StaticIPv4Address                       string                                 IPv4 address of the device (max. 15
                                                                               characters).
                                                                               Only used if DHCP is disabled and if
                                                                               there is no temporary IP address set via
                                                                               discovery (format: "192.168.0.69").
StaticIPv4SubNetMask                    string                                 IPv4 network mask of the device (max.
                                                                               15 characters).
StaticIPv4Gateway                       string                                 IPv4 gateway of the device (max. 15
                                                                               characters).

Default values of network config parameters

Parameter name                          Data type                              Description
UseDHCP                                 bool                                   false
StaticIPv4Address                       string                                 "192.168.0.69"
StaticIPv4SubNetMask                    string                                 "255.255.255.0"
StaticIPv4Gateway                       string                                 "192.168.0.201"

12.3.6    Device / Time config object
saveAndActivateConfig

Method Name                  Description                     Input parameter             Output parameter
 saveAndActivateConfig       Save and immediately apply      None.                       Empty string (compatible with
                             the current time configuration.                             classic XmlRPC client).
                             This might lead to a jump in
                             the system time.

                                                                                                                      33
O3DC02

Parameters of time config

Parameter name                    Data type                        Description
NTPServers                        string (UTF-8)                   List of NTP servers which should be
                                                                   used for system time synchronization.
                                                                   The server entries must be separated
                                                                   with commas and whitespaces. Each
                                                                   server entry must be a numeric IPv4
                                                                   address (e.g. "192.168.0.69").
WaitSyncTries                     int                              Number of attempts to initially
                                                                   synchronize with an NTP server. Each
                                                                   attempt waits 10 seconds for a server
                                                                   response.
SynchronizationActivated          bool                             Enables synchronization of system time
                                                                   via NTP.
StartingSynchronization           bool (read-only)                 Returns "true" during the initial NTP
                                                                   synchronization, which may result in a
                                                                   jump in the system time. Returns "false"
                                                                   afterwards.
Syncing                           bool (read-only)                 Returns "true" if the system clock is
                                                                   synchronized to an NTP server. This
                                                                   happens if at least one of the three most
                                                                   recent synchronization attempts were
                                                                   successful.
                                                                   At least 1 of the last 3 less significant
                                                                   bits in the “Reach” register must set to
                                                                   “1”. Each measurement of reachability is
                                                                   performed every 64 s in standard
                                                                   conditions, but it may depend on current
                                                                   network traffic etc. (the pooling interval).
CurrentTime                       int (read-only)                  Returns the current system time (UTC,
                                                                   seconds since 1.1.1970)
Stats                             string (read-only)               Returns a human readable string
                                                                   containing the synchronization state and
                                                                   accuracy for all NTP servers.
MaxNumberOfNTPServers             int (read-only)                  Returns the maximum number of
                                                                   servers which can be added to the NTP
                                                                   client.

Default values of time config parameters

Parameter name                    Data type                        Description
NTPServers                        string (UTF-8)                   „“
WaitSyncTries                     int                              2
SynchronizationActivated          bool                             false

Minimum and maximum values of time config parameters

Parameter name                    Minimum value                    Maximum value
NTPServers                        0                                5
WaitSyncTries                     1                                60

12.4      Process interface
The process interface is used during the normal operation mode to get operational data from the
device (e.g. 3D images, process values etc.). By default, the process interface uses port 50010. The
port can be changed using the parameter “PcicTcpPort” of the “device config object” (Ò Device config
object / 30).

34
Sie können auch lesen