Integration in TwinCAT (BC9191)

Dieses Beispiel beschreibt, wie ein einfaches SPS-Programm für SMI in TwinCAT geschrieben werden kann und wie es mit der Hardware verknüpft wird. Es soll ein SMI-Motor angesteuert und per Taster die Laufrichtung verändert werden.

Beispieldateien entpacken

Hardware

Einrichtung der Komponenten

Es wird folgende Hardware benötigt:

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

Dieses Beispiel geht davon aus, dass ein Hoch-Taster auf den ersten und ein Runter-Taster auf den zweiten Eingang der KL1002 gelegt wurde und sich an der Adresse 1 ein SMI-Motor befindet.

Software

Erstellung des SPS-Programms

Erstellen Sie ein neues SPS-Projekt für BC-basierte Systeme (BCxx50 über AMS) und fügen die Bibliotheken TcSMI.lbx und TcSystemBCxx50.lbx hinzu. Gehen Sie danach im Menü auf Projekt → Optionen... → Übersetzungsoptionen und wählen LREAL als REAL übersetzen an.

Integration in TwinCAT (BC9191) 1:
Sample-BC-Options

Erzeugen Sie als Nächstes die folgenden globalen Variablen:

VAR_GLOBAL
    bUp          AT %I* : BOOL;
    bDown        AT %I* : BOOL;
    stInData     AT %I* : ST_KL6831KL6841InData;
    stOutData    AT %Q* : ST_KL6831KL6841OutData;
    stCommandBuffer     : ST_SMICommandBuffer;
END_VAR

bUp: Eingangsvariable für den Hoch-Taster.

bDown: Eingangsvariable für den Runter-Taster.

stInData: Eingangsvariable für die SMI-Klemme.

stOutData: Ausgangsvariable für die SMI-Klemme.

stCommandBuffer: Wird für die Kommunikation mit SMI benötigt.

Da BC-Geräte nur über eine Task verfügen, kann die Kommunikation mit SMI nicht separat ausgeführt werden.

Legen Sie daher ein MAIN-Programm (CFC) an in dem die Bausteine FB_KL6831KL6841Communication, FB_SMIUpStep und FB_SMIDownStep aufgerufen werden. Achten Sie beim Kommunikationsbaustein darauf, mit stInData, stOutData und stCommandBuffer zu verknüpfen.

Integration in TwinCAT (BC9191) 2:

Der Eingang bStart des StepUp-Bausteins wird mit der globalen Variable bUp verknüpft und stCommandBuffer mit der globalen Variable stCommandBuffer. Verfahren Sie entsprechend für den StepDown-Baustein.

Integration in TwinCAT (BC9191) 3:

Gehen Sie in die Taskkonfiguration und geben Sie der Task eine niedrigere Intervall-Zeit. Genauere Informationen dazu finden Sie in der Beschreibung des Bausteins FB_KL6831KL6841Communication.

Integration in TwinCAT (BC9191) 4:

Laden Sie das Projekt als Bootprojekt auf den BC und speichern Sie es ab.

Konfiguration im System Manager

Legen Sie ein neues System-Manager-Projekt an, wählen Sie als Zielsystem den BC und lassen Sie nach dessen Hardware suchen.

Fügen Sie das oben angelegte SPS-Programm unter SPS-Konfiguration hinzu.

Integration in TwinCAT (BC9191) 5:

Verknüpfen Sie die globalen Variablen des SPS-Programms nun mit den Ein- und Ausgängen der Busklemmen, erzeugen Sie die Zuordnungen und aktivieren Sie die Konfiguration. Starten Sie dann das Gerät im Run-Modus.
Ihr BC ist jetzt einsatzbereit.

Durch Betätigen von einem der Richtungstaster steuert der SMI-Motor die gewählte Richtung für den unter uiAngle angegebenen Winkelgrad an.