Der in TwinCAT 3 integrierte Safety-Editor erlaubt die Erstellung einer Sicherheitsapplikation in einer freigrafischen Umgebung. Die gewünschte Logik wird mit Hilfe eines FBD programmiert. Zur besseren Übersichtlichkeit kann die Anwendung in Netzwerken organisiert werden. Als Elemente der Logik können die bereits von den Logic-Komponenten bekannten Funktionsbausteine genutzt werden (digitale Funktionsbausteine für EL69xx; zusätzlich analoge Funktionsbausteine für EL6910, EJ6910, EK1960, AX8xxx-x1xx, AX8xxx-x2xx etc.).
Der Safety-Editor bietet eine erhöhte Flexibilität und Portabilität. Dies wird erreicht durch eine zunächst von der physikalisch verwendeten Hardware unabhängigen Programmierung. Hierzu werden sowohl das Zielsystem als auch alle Ein- und Ausgangsgeräte als sogenannte Alias-Geräte zur Verfügung gestellt. Auf dieser Ebene können alle sicherheitsrelevanten Einstellungen bereits im Voraus getätigt werden. Bevor das Projekt auf die ausführende Hardware übertragen wird, müssen diese Alias-Geräte den verbauten physikalischen Geräten zugeordnet werden.
Neben der Verwendung vorgegebener Funktionsbausteine besteht zukünftig die Möglichkeit der Erstellung eigener Funktionsbausteine. Diese können zum einen aus bereits vorzertifizierten Bausteinen erzeugt werden. Zum anderen können neue Funktionsbausteine durch die Verwendung von Safety C erstellt werden (dies kann nur für die Safety-Runtime erfolgen). Safety C stellt ein nahezu uneingeschränktes Derivat von Standard C dar. Dadurch können für Safety-Applikationen bekannte Kontrollkonstrukte, wie beispielsweise IF-THEN-ELSE, SWITCH-CASE sowie die unter C üblichen Datentypen, verwendet werden.