140 lines
5.0 KiB
Markdown
140 lines
5.0 KiB
Markdown
# CC100_HW
|
|
|
|
Hardwareanbindung für die digitalen Ein- und Ausgänge sowie die beiden PT-Temperatursensoren einer CC100-Steuerung.
|
|
|
|
### Inhaltsverzeichnis
|
|
|
|
1. [Funktionsumfang](#1-funktionsumfang)
|
|
2. [Voraussetzungen](#2-voraussetzungen)
|
|
3. [Software-Installation](#3-software-installation)
|
|
4. [Einrichten der Instanzen in IP-Symcon](#4-einrichten-der-instanzen-in-ip-symcon)
|
|
5. [Statusvariablen und Profile](#5-statusvariablen-und-profile)
|
|
6. [WebFront](#6-webfront)
|
|
7. [PHP-Befehlsreferenz](#7-php-befehlsreferenz)
|
|
|
|
### 1. Funktionsumfang
|
|
|
|
- Ansteuerung von vier digitalen Ausgängen
|
|
- Auswertung von acht digitalen Eingängen
|
|
- Auswertung von zwei PT-Temperatursensoren
|
|
- Automatisches Einlesen der Temperaturen alle 30 Sekunden
|
|
- Automatisches Einlesen der digitalen Eingänge alle 2 Sekunden
|
|
- Schreiben der Ausgangszustände in die CC100-Systemdatei
|
|
- Umrechnung der digitalen Eingangszahl in acht einzelne Schaltzustände
|
|
- Umrechnung der PT-Rohwerte in Temperaturwerte
|
|
|
|
### 2. Voraussetzungen
|
|
|
|
- IP-Symcon ab Version 7.1
|
|
- Linux-basiertes CC100-System
|
|
- Zugriff des IP-Symcon-Dienstes auf die benötigten Systemdateien
|
|
- Schreibberechtigung für die Datei der digitalen Ausgänge
|
|
- Vorhandene CC100-Kernel- und IIO-Treiber
|
|
|
|
Folgende Systemdateien werden verwendet:
|
|
|
|
```text
|
|
/sys/kernel/dout_drv/DOUT_DATA
|
|
/sys/devices/platform/soc/44009000.spi/spi_master/spi0/spi0.0/din
|
|
/sys/bus/iio/devices/iio:device2/in_voltage13_raw
|
|
/sys/bus/iio/devices/iio:device2/in_voltage1_raw
|
|
```
|
|
|
|
Das Modul ist wegen dieser fest eingetragenen Systempfade nur für die entsprechende CC100-Hardware vorgesehen.
|
|
|
|
### 3. Software-Installation
|
|
|
|
- Das Verzeichnis `CC100_HW` in die verwendete IP-Symcon-Modulbibliothek kopieren.
|
|
- Alternativ die zugehörige Modulbibliothek über die Modulverwaltung installieren.
|
|
- Anschließend die Modulbibliothek neu laden.
|
|
|
|
### 4. Einrichten der Instanzen in IP-Symcon
|
|
|
|
Unter `Instanz hinzufügen` kann das Modul `CC100_HW` mithilfe des Schnellfilters gefunden werden.
|
|
|
|
Weitere Informationen zum Hinzufügen von Instanzen befinden sich in der [Dokumentation der Instanzen](https://www.symcon.de/service/dokumentation/konzepte/instanzen/#Instanz_hinzufügen).
|
|
|
|
**Konfigurationsseite**:
|
|
|
|
Name | Beschreibung
|
|
--- | ---
|
|
FilePath | Dateipfad zum Schreiben der digitalen Ausgangszustände
|
|
Standardwert | `/sys/kernel/dout_drv/DOUT_DATA`
|
|
|
|
Im aktuellen Modulverzeichnis ist keine `form.json` vorhanden. Die Eigenschaft `FilePath` ist deshalb nicht über eine normale Konfigurationsseite auswählbar und verwendet standardmäßig den im Modul hinterlegten Pfad.
|
|
|
|
### 5. Statusvariablen und Profile
|
|
|
|
Die Statusvariablen werden beim Erstellen der Instanz automatisch angelegt. Das Löschen einzelner Variablen kann zu Fehlfunktionen führen.
|
|
|
|
#### Statusvariablen
|
|
|
|
Name | Ident | Typ | Beschreibung
|
|
--- | --- | --- | ---
|
|
DO 1 | Bit1 | Boolean | Digitaler Ausgang 1
|
|
DO 2 | Bit2 | Boolean | Digitaler Ausgang 2
|
|
DO 3 | Bit3 | Boolean | Digitaler Ausgang 3
|
|
DO 4 | Bit4 | Boolean | Digitaler Ausgang 4
|
|
DI1 | DI1 | Boolean | Digitaler Eingang 1
|
|
DI2 | DI2 | Boolean | Digitaler Eingang 2
|
|
DI3 | DI3 | Boolean | Digitaler Eingang 3
|
|
DI4 | DI4 | Boolean | Digitaler Eingang 4
|
|
DI5 | DI5 | Boolean | Digitaler Eingang 5
|
|
DI6 | DI6 | Boolean | Digitaler Eingang 6
|
|
DI7 | DI7 | Boolean | Digitaler Eingang 7
|
|
DI8 | DI8 | Boolean | Digitaler Eingang 8
|
|
PT1 Temperatur | PT1 | Float | Berechnete Temperatur des PT1-Eingangs
|
|
PT2 Temperatur | PT2 | Float | Berechnete Temperatur des PT2-Eingangs
|
|
|
|
#### Profile
|
|
|
|
Name | Typ | Verwendung
|
|
--- | --- | ---
|
|
~Switch | Boolean | Darstellung der digitalen Ausgänge als Schalter
|
|
~Temperature | Float | Darstellung der PT-Werte als Temperatur
|
|
|
|
Es werden keine eigenen Variablenprofile erstellt.
|
|
|
|
### 6. WebFront
|
|
|
|
Im WebFront werden folgende Werte dargestellt:
|
|
|
|
- Vier digitale Ausgänge
|
|
- Acht digitale Eingänge
|
|
- Zwei Temperaturwerte
|
|
|
|
Die digitalen Eingänge werden alle 2 Sekunden aus der CC100-Systemdatei gelesen.
|
|
|
|
Die PT-Rohwerte werden alle 30 Sekunden eingelesen und anhand der im Modul hinterlegten Skalierungsbereiche in Temperaturwerte umgerechnet.
|
|
|
|
#### Einschränkung der digitalen Ausgänge
|
|
|
|
Die vier Ausgangsvariablen sind als bedienbare Schalter registriert. Die aktuelle `RequestAction()`-Implementierung verarbeitet die Identifikatoren `Bit1` bis `Bit4` jedoch nicht.
|
|
|
|
Beim direkten Schalten über das WebFront wird deshalb die Fehlermeldung `Invalid Ident` ausgelöst. Die Bedienung der Ausgänge funktioniert erst nach einer entsprechenden Erweiterung von `RequestAction()`.
|
|
|
|
### 7. PHP-Befehlsreferenz
|
|
|
|
#### PT-Werte manuell einlesen
|
|
|
|
```php
|
|
GEF_DOUT_ReadPTValues(12345);
|
|
```
|
|
|
|
Liest beide PT-Rohwerte ein, berechnet die Temperaturen und aktualisiert die Variablen `PT1` und `PT2`.
|
|
|
|
Dabei muss `12345` durch die Objekt-ID der CC100_HW-Instanz ersetzt werden.
|
|
|
|
#### PT-Werte über RequestAction aktualisieren
|
|
|
|
```php
|
|
IPS_RequestAction(12345, 'DOUT_ReadPTValues', '');
|
|
```
|
|
|
|
#### Digitale Ein- und Ausgänge aktualisieren
|
|
|
|
```php
|
|
IPS_RequestAction(12345, 'UpdateFile', '');
|
|
```
|
|
|
|
Diese Aktion liest die digitalen Eingänge ein und schreibt den aus `Bit1` bis `Bit4` berechneten Ausgangswert in die konfigurierte Systemdatei. |