Skript

Ein Python-Skript bearbeiten

Warum kann ich das Skript nicht editieren?

  • Sie müssen über die Berechtigung zum Editieren des Python-Skripts verfügen. Üblicherweise müssen Sie hierfür als Developer angemeldet sein.

  • Sie müssen sich im Handbetrieb befinden.

  • Das Python-Skript darf gegenwärtig nicht ausgeführt werden.

Zugriff auf Module

In der Start-Datei kann auf alle Module in der selben Ebene im Modulbaum zugegriffen werden.

Beispiel 1. Zugriff auf Module

In diesem Beispiel befinden sich die folgenden Module: Script, TypeData, WorkPiece, PowerSupply, Multimeter und HighVoltageTester alle innerhalb des Modul-Baums auf der selben Ebene.

moduleTree de

Es kann daher aus der Start-Datei direkt auf diese Module zugegriffen werden:

Zugriff auf ein Modul
PowerSupply.SetVoltage(14.0)

Autocomplete und Type Hints

Das Fenster für die Autovervollständigung wird mit der Tastenkombination Strg+Leertaste geöffnet.

autoComplete de.drawio
Abbildung 1. Autocomplete und Definition der .NET-Methode SetVoltage aus dem ScpiPowerSupplyModule

Die mit einem heart gekennzeichneten Funktionen und Properties sind favorisiert und werden im Autocomplete zuoberst angezeigt.

Filterfunktion: nur die angewählten Elemente werden angezeigt
  • module Modul

  • class Klasse

  • method Funktion

  • property Eigenschaft

  • field Variable

  • parameter Parameter

  • keyword Schlüsselwort

Zur Verbesserung der Autovervollständigung werden Python Type Hints unterstützt.

Python Type Hints
Python ist eine dynamisch typisierte Sprache. Daher ist es nicht immer möglich, den Typ eines Methodenparameters, eines Rückgabewerts oder einer Variablen zu bestimmen. Mit Hilfe von Typ-Hinweisen (Type Hints) ist es jedoch möglich, die Autovervollständigung anzuzeigen. Python 2.7 unterstützt nur Typ-Hinweise innerhalb von Kommentaren, siehe auch PEP484 type hints for Python 2.7

Beispiel 2. Type Hint für eine Variable
clr.AddReference("UserDocumentation")
import UserDocumentation

Station = WorkPiece.Parent # type: UserDocumentation.Modules.StationModule
Station. # Now you can see here the completions for the type 'FunctionTester.UserDocumentation.Modules.StationModule'
Beispiel 3. Type Hint für eine Methode
def embezzle(self, account, funds=1000000, *fake_receipts):
    # type: (str, int, *str) -> None
    """Embezzle funds from account using fake receipts."""

Ausführen und Debuggen eines Python-Skripts

Im Menü des Python-Skript-Moduls sind unter Debug alle Debugging-Befehle aufgeführt.

debug de
Abbildung 2. Debug-Befehle
  • play Die Start-Datei ausführen F5
    Um das Python-Skript auszuführen, müssen folgende Bedingungen erfüllt sein:

    1. Die Station muss sich im Handbetrieb manual befinden

    2. Sie müssen die Berechtigung besitzen, ein Skript ausführen zu dürfen.

    3. Das Projekt muss eine Start-Datei haben

  • break Das laufende Skript anhalten

  • stop Das laufende Skript stoppen Shift+F5

  • stepin Einzelschritt im Skript ausführen F11

  • stepover Bis zur nächsten Zeile im Skript ausführen F10

  • bug Die Debug-Skript-Option umschalten

  • togglebreakpoint Breakpoint hinzufügen/ entfernen F9

Die Zeile, in der das Python-Skript steht, wenn die Debug-Skript-Option bug angewählt wurde, ist gelb hinterlegt. Im Python-Skript gesetzte Breakpoints werden durch einen roten Punkt breakpoint dargestellt.

scriptDebug de
Abbildung 3. Debugging im Python-Skript
Wenn im Python-Skript debuggt werden soll, muss die Debug-Skript-Option bug angewählt werden, nur dann werden hinzugefügte Breakpoints breakpoint berücksichtigt.

Debugging-Variable __debug__

Die Debugging-Variable __debug__ ist nützlich, um insbesondere während des Debugging (die Debug-Skript-Option bug ist angewählt) Ausgaben per print-Befehl in das Output-Fenster in der Tableiste auszugeben.

if __debug__:
    print "Diese Zeile wird nur ausgeführt, wenn die Debug-Skript-Option angewählt ist."