EL6851 mit CX5120

Dieses Beispiel beschreibt, wie ein einfaches SPS-Programm für DMX in TwinCAT geschrieben werden kann und wie es mit der Hardware verknüpft wird. Es soll nach DMX-Geräten gesucht werden.

Beispiel: DMX_Sample_EL6851_CX5120.zip

EL6851 mit CX5120 1:

Das TwinCAT-Projekt steht als *.zip-Datei zum Download zur Verfügung. Diese muss zuerst lokal entpackt werden, damit das Archiv (*.tnzip-Datei) zum Import in das TwinCAT-Projekt zur Verfügung steht.

Hardware

Einrichtung der Komponenten

Es wird folgende Hardware benötigt:

Richten Sie die Hardware, sowie die DMX-Komponenten wie in den entsprechenden Dokumentationen beschrieben ein.

Software

Erstellung des SPS-Programms

Erstellen Sie ein neues „TwinCAT XAE Project“ und legen Sie ein „Standard PLC Project“ an.

Fügen Sie im SPS-Projekt unter „References“ die Bibliothek Tc2_DMX hinzu.

Erzeugen Sie eine globale Variablenliste mit dem Namen GVL_DMX und legen Sie die folgenden Variablen an:

VAR_GLOBAL
    stEL6851InData      AT %I* : ST_EL6851InDataEx;
    stKL6851OutData     AT %Q* : ST_EL6851OutData;
    stCommandBuffer            : ST_DMXCommandBuffer;
    arrDMXProcessData          : ARRAY [1..512] OF BYTE;
END_VAR

Name

Typ

Beschreibung

stEL6851InData

ST_EL6851InDataEx

Eingangsvariable für die DMX-Klemme.

stEL6851OutData

ST_EL6851OutData

Ausgangsvariable für die DMX-Klemme.

stCommandBuffer

ST_DMXCommandBuffer

Wird für die Kommunikation mit DMX benötigt.

arrDMXProcessData

BYTE

Über diese Variable werden dem Baustein die Daten übergeben, die zyklisch an die DMX-Geräte versendet werden sollen. Hierzu muss der CycleMode aktiv sein (siehe auch Eingang bSetCycleMode).

Legen Sie anschließend ein Programm (CFC) für die Hintergrundkommunikation mit DMX an. In diesem wird der Baustein FB_EL6851CommunicationEx aufgerufen. Achten Sie beim Kommunikationsbaustein darauf, ihn mit stEL6851InData, stEL6851OutData und stCommandBuffer zu verknüpfen.

EL6851 mit CX5120 2:

Legen Sie ein MAIN-Programm (CFC) an, in dem der BausteinFB_DMXDiscovery512 aufgerufen wird. Der Eingang stCommandBuffer des Bausteins wird mit der globalen Variable stCommandBuffer verknüpft. Wenn die Variable bStart TRUE ist wird die Suche nach DMX-Geräten gestartet. Die Anzahl der gefundenen Geräte steht in der Variable iFoundDevices und zusätzliche Informationen dazu in aDMXDeviceInfoList.

EL6851 mit CX5120 3:

Navigieren Sie in den Bereich der Taskkonfiguration und konfigurieren die PlcTask. Exemplarisch erhält die Task die Priorität 16 und eine Zykluszeit von 6 ms.

EL6851 mit CX5120 4:

Legen Sie eine weitere Task für die Hintergrundkommunikation an. Geben Sie dieser Task eine höhere Priorität (kleinere Zahl) und eine niedrigere Intervall-Zeit als der PlcTask.

EL6851 mit CX5120 5:

Fügen Sie dieser Task das Programm für die Kommunikation zu. Weitere Information zur Taskkonfiguration finden Sie in der Beschreibung des Bausteins FB_EL6851CommunicationEx.

EL6851 mit CX5120 6:

E/A Konfiguration

Wählen Sie als Zielsystem den CX und lassen Sie nach dessen Hardware suchen.

Stellen Sie die DMX-Eingänge 1 bis 64 zur Verfügung, indem Sie die Registerkarte Prozessdaten der EL6851 öffnen und unter Inputs die Option 0x1A01 anwählen.

EL6851 mit CX5120 7:

Im Bereich SPS, in der Instanz des Projektes sehen Sie, dass die Ein- und Ausgangsvariablen der entsprechenden Task zugeordnet sind.

Verknüpfen Sie die globalen Variablen des SPS-Programms mit den Ein- und Ausgängen der EtherCAT-Klemme.

EL6851 mit CX5120 8:

Erstellen Sie die Projektmappe und aktivieren Sie die Konfiguration.