Produkt: | Elvis |
Version: | alle |
Stand: | 2007-07-24 |
Zusammenfassung
Wir haben Netzwerkkameras von drei Herstellern mit Elvis getestet: Advantech, Axis und Mobotix.
Einzelheiten
Grundsätzlich sind wir an standardisierten Lösungen interessiert. Für die Einbindung von Videobildern in Windows-Programmen ist die ActiveX-Schnittstelle als Standard zu werten. Dadurch können alle Komponenten (Kamera, Video-Server, Treiber und Oberfläche) aus einer Hand geliefert und deshalb ideal aufeinander abgestimmt sein. Elvis muß nur das ActiveX-Element einbinden können – und das kann er sehr gut!
Hinweis: Leider sind die Eigenschaftsseiten der ActiveX oft als modale Seiten gedacht (Eigenschaftsdialog mit OK-Knopf). Elvis verwendet aber nicht-modale Dialoge, die das Weiterarbeiten bei offenem Eigenschaftsdialog ermöglichen. Das führt manchmal zu Problemen beim Übernehmen der veränderten Daten (Daten werden nicht gespeichert, weil der Eigenschaftsdialog kein „OK“ bekommt).
Abhilfe in diesen Fällen:
1. Wir haben eine Kontrollelement-Eigenschaftsseite, in der die Daten richtig übernommen werden. Diese Eigenschaftsseite wirkt etwas roh, da hier die Eigenschaften in einer Liste aufgeführt werden. Drücken Sie die Strg- und die Umschalt-Taste beim Öffnen des Eigenschaftsdialogs.
2. Benutzen Sie die Ereignisverarbeitung der Bedienstation (siehe Beispiele unten).
Advantech
Advantech bietet eine günstige Kamera für den Indoor Bereich an.
Wir haben die ADAM-6090 getestet.
Das mitgelieferte ActiveX muss installiert werden. Um die Kamera im Netzwerk einzubinden, muß die IP-Adresse der Kamera geändert werden. Bei dem uns vorliegenden Kontrollelement (Gif89) war die Speicherung der IP-Adresse nicht möglich.
Mit der Ereignisverarbeitung der Seite ist dies aber kein Problem:
Sub Form_Load() Form.Gif1.RemoteHost = "192.XXX.XXX.XXX" Form.Gif1.Play End Sub
Anmerkungen: Gif1 = der Name des Kontrollelements (kann frei vergeben werden).
Statt der konstanten IP-Adresse kann natürlich auch ein Text-Datenpunkt verwendet werden:
Sub Form_Load() Form.Gif1.RemoteHost = Database.Datapoint("IP Adresse Kamera").ActualValue Form.Gif1.Play End Sub
Axis
Von Axis stehen mehrere Kameras sowohl für den Indoor als auch für den Außenbereich zur Verfügung.
Wir haben die 2120 getestet.
Da bis vor kurzem von Axis zur Verfügung gestellte Kontrollelement „CamImage“ hatte ebenfalls Probleme, die IP-Adresse zu speichern. Lösung wie oben, jedoch muss hier statt RemoteHost die Eigenschaft URL gesetzt werden:
Form.CamImage1.URL = "http://192.XXX.XXX.XXX/axis-cgi/mjpg/video.cgi" bzw. Form.CamImage1.URL = "http://" & Database.Datapoint("IP Adresse Kamera").ActualValue & "/axis-cgi/mjpg/video.cgi"
Für den Netzwerkserver 2400+ können die einzelnen Kanäle in der Ereignisverarbeitung wie folgt angesprochen werden (/2/ steht hier für die Kanalnummer):
Form.CamImage1.URL = "http://192.XXX.XXX.XXX/mjpg/2/video.mjpg"
Das neue Kontrollelement „Axis Media Control“ von Axis funktioniert problemlos (die IP kann direkt im Kontrollelement eingegeben werden und wird auch gemerkt). Download direkt bei Axis: http://www.axis.com/techsup/software/amc/index.htm
Mobotix
Getestet wurde die Kamera M22M.
Lange war für Mobotix-Kameras kein ActiveX erhältlich; das hat sich nun geändert: das Kontrollelement kann von http://developer.mobotix.com/ocx/MxPEG_ActiveX.html heruntergeladen werden. Auf der Seite steht zwar, dass das Kontrollelement nur im Internet Explorer funktioniert, nach unseren Tests klappt das aber auch in Elvis bestens. Zur Installation muss man leider etwas Hand anlegen:
- die MxPEG_ActiveX.ocx aus der CAB-Datei in ein beliebiges Verzeichnis extrahieren (z.B. mit WinZIP)
- und dann wie in KB000001 beschrieben registrieren.
Um das Kamerabild in eine Seite einzublenden:
- das Kontrollelement „MxPEG_ActiveX Control“ (aus der Bibliothek „MxPEG_ActiveX ActiveX-Steuerelement-Modul“) erzeugen
- im Eigenschaftsdialog auf der Seite „General“ die IP-Adresse, Benutzername und Passwort eingeben