Hinweise zur Dokumentation

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der nachfolgenden Hinweise und Erklärungen unbedingt notwendig.

Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt.

Disclaimer

Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt.
Deshalb ist die Dokumentation nicht in jedem Fall vollständig auf die Übereinstimmung mit den beschriebenen Leistungsdaten, Normen oder sonstigen Merkmalen geprüft.
Falls sie technische oder redaktionelle Fehler enthält, behalten wir uns das Recht vor, Änderungen jederzeit und ohne Ankündigung vorzunehmen.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden.

Marken

Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE®, XFC® und XTS® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.

Patente

Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP1590927, EP1789857, DE102004044764, DE102007017835
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

Die TwinCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP0851348, US6167425 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

Copyright

© Beckhoff Automation GmbH & Co. KG, Deutschland.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmuster- oder Geschmacksmustereintragung vorbehalten.


Overview

TwinCAT PLC Library: SMTP BC

Übersicht

Die Bibliothek beinhaltet nützliche Funktionsbausteine für den BC9000-Busklemmen Controller um das SMTP-Protokoll (Simple Mail Transfer Protocol) zu nutzen.

Funktionsbausteine

Name | Beschreibung
FB_Smtp | Verschickt E-Mails.


FB_Smtp

TwinCAT PLC Library: SMTP BC

FUNCTION_BLOCK FB_Smtp

Der Funktionsbaustein nutzt das SMTP Protokoll (Simple Mail Transfer Protocol) um E-Mails zu verschicken. Der Funktionsbaustein kann z.B. dazu benutzt werden Fehler, Diagnoseinformationen, Warnungen als E-Mail zu verschicken. Die Empfängeradressen werden als Strings an die sTo-, sCc-, sBcc- und sSubject-Eingangsvariablen übergeben. Die maximale Stringlänge der Empfängeradressen wurde auf 80 Zeichen begrenzt um die Ressourcen zu schonen. Der String mit dem eigentlichen Mail-Text darf auch länger sein.

VAR_INPUT

VAR_INPUT
    bStart		: BOOL;
    sSmtpServer	: STRING(15);
    sFrom		: STRING;
    sTo		: STRING;
    sCc		: STRING;
    sBcc		: STRING;
    sSubject		: STRING;
    pMail		: DWORD;
    tTimeOut		: TIME;
END_VAR

bStart: Eine steigende Flanke an diesem Eingang aktiviert den Funktionsbaustein.

sSmtpServer: IP-Adresse des SMTP-Servers als String.

sFrom : Ein String mit der E-Mail Adresse des Absenders. Wird ein Leerstring angegeben, dann erzeugt der Bus-Controller eine E-Mail Adresse aus dem Namen des Bus-Controllers und der MAC ID. Die maximale Stringlänge ist auf 80 Zeichen begrenzt. Es dürfen auch mehrere Empfängeradressen getrennt durch Semikolons angegeben werden.

sTo : Ein String mit der E-Mail Adresse des Empfängers. Es muss eine gültige E-Mail Adresse angegeben werden. Die maximale Stringlänge ist auf 80 Zeichen begrenzt. Es dürfen auch mehrere Empfängeradressen getrennt durch Semikolons angegeben werden.

sCc : Ein String mit der E-Mail Adresse eines weiteren Empfängers (Cc=Carbon Copy). Es kann auch ein Leerstring angegeben werden. Eine Kopie der E-Mail wird an diesen Empfänger gesendet. Die E-Mail Adresse dieses Empfängers wird bei anderen Empfängern sichtbar. Die maximale Stringlänge ist auf 80 Zeichen begrenzt. Es dürfen auch mehrere Empfängeradressen getrennt durch Semikolons angegeben werden.

sBcc : Ein String mit der E-Mail Adresse eines weiteren Empfängers (Bcc=Blind Carbon Copy). Es kann auch ein Leerstring angegeben werden. Eine Kopie der E-Mail wird an diesen Empfänger gesendet. Die E-Mail Adresse dieses Empfängers wird bei anderen Empfängern nicht sichtbar. Die maximale Stringlänge ist auf 80 Zeichen begrenzt. Es dürfen auch mehrere Empfängeradressen getrennt durch Semikolons angegeben werden.

sSubject : Ein String mit der Betreff-Zeile zu der E-Mail. Es kann auch ein Leerstring angegeben werden. Die maximale Stringlänge ist auf 80 Zeichen begrenzt.

pMail : Die Adresse (Pointer) eines nullterminierten Strings mit dem E-Mail Text. Es kann auch ein Leerstring angegeben werden. Die Adresse des Strings kann mit dem ADR-Operator ermittelt werden.

tTimeOut : Maximale Zeit, die bei der Ausführung des Befehls nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
    bBusy		: BOOL;
    bError		: BOOL;
    iErrorId		: WORD;
END_VAR

bBusy: Dieser Ausgang bleibt solange auf TRUE, bis der Baustein eine Befehlsanforderung ausführt, längstens aber für die Dauer der, an dem tTimeOut-Eingang angelegten Zeit.

bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in iErrorId enthalten.

iErrorId: Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls (Tabelle).

Fehlercode (hex) | Beschreibung
0x8000 | SMTP server not found.
0x8001 | Resource error.
0x8002 | Socket resource error.
0x8003 | Connection fault.
0x8004 | Communication fault.
0x8005 | Rx error. Communication time exceeded.
0x8006 | Rx error. Communication fault.
0x8007 | Rx error. Frame error.
0x8008 | Communication error. Wrong response.
0x8009 | Tx error. Communication fault.
0x800A | Communication shutdown error.
0x800B | Communication timeout.
0x8010 | Invalid parameter.

Beispiel für einen Aufruf in FUP:

PROGRAM MAIN
VAR
    fbSMTP	: FB_Smtp;
    bSend	: BOOL;
    sMsg 	: STRING(100):='Test';
    bBusy 	: BOOL;
    bError 	: BOOL;
    nErrId 	: UDINT;
END_VAR

Im Beispiel wird bei einer steigenden Flanke am bStart-Eingang eine Mail an 4 Empfänger verschickt.

Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken
TwinCAT v2.7.0 und höher | BC9xxx (165) firmware version >=0xB6 | TcSMTPBC.Lb6