Speed up Your Programming – Quick Drop
Transcrição
Speed up Your Programming – Quick Drop
Speed up Your Programming – Quick Drop "Auf die Frage nach seinem Geheimnis, warum er so schnell programmiert, antwortet Darren Nattinger: „It’s not really a secret. Quick Drop. I’d say that’s the singular idea that makes me the fastest.”" - M. Eng. Philipp Hohl, ifm syntron gmbh (http://www.ifm.com) Die Aufgabe: Der Beitrag zeigt die einfache Benutzung der Quick-Drop-Leiste, das Erstellen von Shortcuts sowie das Einbinden von Scripting-Plug-ins. Die Lösung: Vollständige Kundenlösung lesen Mithilfe der Quick-Drop-Leiste erhöht jeder Anwender seine Programmiergeschwindigkeit. Autor(en): M. Eng. Philipp Hohl - ifm syntron gmbh (http://www.ifm.com) Lorenz Casper - National Instruments Germany GmbH (http://ni.com/germany) Diese Kundenlösung wurde im Tagungsband 2015 (http://www.amazon.de/Virtuelle-Instrumente-Praxis-2015-VIP-Kongress/dp/3800736691/) des Technologie- und Anwenderkongresses „Virtuelle Instrumente in der Praxis“ (http://www.ni.com/germany/vip) veröffentlicht. Eingesetzte Produkte: LabVIEW Die Abbildungen der Kundenlösung finden Sie in der Galerie und im Fließtext. In der Galerie können Sie die Bilder in größerer Auflösung ansehen. Kurzfassung Auf die Frage nach seinem Geheimnis, warum er so schnell programmiert, antwortet Darren Nattinger: „It’s not really a secret. Quick Drop. I’d say that’s the singular idea that makes me the fastest. […]” – „Es ist eigentlich kein Geheimnis. Quick Drop. Ich würde sagen, das ist das einzigartige Konzept, das mich zum Schnellsten macht. […]” Mithilfe der Quick-Drop-Leiste erhöht jeder Anwender seine Programmiergeschwindigkeit. Der Beitrag zeigt die einfache Benutzung der Quick-Drop-Leiste, das Erstellen von Shortcuts sowie das Einbinden von Scripting-Plug-ins. Quick Drop Können wir vom schnellsten LabVIEW-Programmierer und mehrfachen LabVIEW Coding Challenge Champion etwas lernen? Ja, können wir! Stellen Sie sich dazu bitte einmal folgendes Szenario vor: Ihr Chef kommt in Ihr Büro, fantasiert von neuen Projekten und der Möglichkeit, alles in LabVIEW zu realisieren. Da die Zeit ohnehin schon knapp ist, sollte das Programm aber am besten schon gestern fertig sein. Zudem sollte es getestet und natürlich dokumentiert werden, und auch eine Anleitung für die späteren Anwender sollte nicht fehlen. Sie kennen diese Situation sicherlich in der einen oder anderen Form, auch wenn hier natürlich etwas übertrieben wurde. Es stellt sich jedoch die Frage, ob der Entwicklungsprozess nicht effizienter gestaltet werden kann. Bringen wir die Sache auf den Punkt: Der einfachste Weg ist, schneller zu programmieren! Lassen Sie uns einmal analysieren, was uns beim Programmieren eines VIs verlangsamt. Angenommen, Sie wollen eine While-Schleife auf dem Blockdiagramm platzieren: Dann öffnen Sie die Funktionenpalette und klicken durch die Paletten, bis Sie die While-Schleife auswählen und platzieren können. Natürlich wissen Sie, dass die While-Schleife in der Palette „Structures“ zu finden ist. Dennoch erfordert das Auswählen der Paletten und der Funktion ein gewisses Maß an Zeit, die es nun systematisch zu verkürzen gilt. Eine Möglichkeit bietet uns die Funktion „Quick Drop“ (in der deutschen LabVIEW-Version „Schnelleinfügeliste“, im Nachfolgenden der Einfachheit halber Quick-Drop-Leiste genannt). Bild 1: Die Quick-Drop-Leiste Öffnen Sie die Quick-Drop-Leiste mit der Tastenkombination <Strg> + <Leertaste>. Es erscheint ein Fenster, wie in Bild 1 zu sehen. Beim erstmaligen Öffnen kann es etwas länger dauern, bis die Leiste angezeigt wird, da hier LabVIEW die Liste der Funktionen neu indiziert. Ist die Quick-Drop-Leiste geöffnet, kann nun der Name der Funktion eingegeben werden. Trägt man die ersten Buchstaben der While-Schleife ein, so schlägt die Quick-Drop-Leiste bereits passende Funktionen vor. Mit <Enter> wird die Funktion ausgewählt und kann anschließend mit der Maus im Blockdiagramm gesetzt werden. Kennt man den Namen der Funktion, kann somit auf die Palettenansicht verzichtet werden. Das alleinige Suchen von Funktionen mittels der Quick-Drop-Leiste bringt jedoch noch keine wirkliche Steigerung der Programmiergeschwindigkeit. Dazu modifizieren wir die Quick-Drop-Leiste über die Schaltfläche „Configure …“. In den Reitern „Blockdiagramm“ und „Frontpanel“ können nun spezielle Abkürzungen für Funktionen eingetragen werden. Die Eingabe von „While-Schleife“ verkürzt sich somit auf die Eingabe von „ws“, und eine False-Konstante erzeugt man beispielsweise über das Kürzel „bc“. Alle eingetragenen Shortcuts werden in der Datei LabVIEW.ini hinterlegt. Man kann deshalb auch die Shortcut-Liste von Darren Nattinger verwenden und in diese Datei integrieren. Sie findet sich in der Quick Drop Enthusiasts Community. Die Vorgehensweise dazu wird zum einen in der Community und zum anderen im Buch „Einführung in LabVIEW“ näher beschrieben. Doch bietet die Quick-Drop-Leiste noch mehr. Zusätzlich zu den Shortcuts können sogenannte Quick-Drop-Plug-ins in die Leiste integriert werden. In LabVIEW 2014 sind bereits einige dieser nützlichen Plug-ins enthalten. Sie wurden ausführlich getestet und weisen ein Verhalten auf, das jeder Anwender erwartet. Beispielsweise können Sie, wie in Bild 2 zu sehen ist, einige Funktionsblöcke in LabVIEW markieren, die Quick-Drop-Leiste öffnen und mit der Tastenkombination <Strg> + <w> diese automatisch verbinden lassen. In der LabVIEW Quick Drop Enthusiasts Community finden Sie aktuell über 40 weitere solcher Plug-ins, die Sie selbst herunterladen und installieren können. Diese sind nicht in der Standard-Palette enthalten, da sie eventuell 1/4 www.ni.com und mit der Tastenkombination <Strg> + <w> diese automatisch verbinden lassen. In der LabVIEW Quick Drop Enthusiasts Community finden Sie aktuell über 40 weitere solcher Plug-ins, die Sie selbst herunterladen und installieren können. Diese sind nicht in der Standard-Palette enthalten, da sie eventuell noch nicht das optimale, vom Endanwender erwartete Verhalten aufweisen. In der Community-Gruppe wird oft der Funktionsumfang eines solchen Plug-ins diskutiert und erweitert. So kann es sogar passieren, dass ein solches Plug-in in den Standardumfang von LabVIEW integriert wird. Aktuell finden sich in der Community beispielsweise Plug-ins, mit denen Sie alle Cases einer Case-Struktur auf einmal darstellen, in kürzester Zeit VI-Serverreferenzen ändern oder gar FGVs automatisiert erstellen können. Solche Plug-ins können Sie natürlich auch selbst erstellen, erweitern oder kombinieren. Im LabVIEW-Verzeichnis findet sich eine Vorlage (ein Template), die Sie für diese Plug-ins nutzen müssen. In diesem sind bereits Funktionen, wie die Übergabe von markierten Elementen, eingegebene Texten in der Quick-Drop-Leiste oder Undo, enthalten. In der Quick Drop Enthusiasts Community ist ausführlich dokumentiert, wie Sie Ihren Code in das Template einbinden müssen. Wer nun sofort die Quick-Drop-Leiste einsetzen möchte, kann viele der bereits genannten Plug-ins einfach mit dem Paket VIBox im VI Package Manager herunterladen. In diesem Paket sind bereits viele Plug-ins aus der Community gebündelt. Um direkt ein solches Plug-in zu erstellen, sollten Sie sich zunächst mit VI Scripting vertraut machen, da die meisten Plug-ins darauf basieren. VI Scripting ist eine Technologie bzw. API, mit der sich programmatisch G-Objekte erstellen oder modifizieren lassen. Mehr Informationen, Whitepapers und Webcasts zu VI Scripting finden sich auf der Homepage von National Instruments. Zum Schluss noch ein Aufruf: Setzen Sie die Quick-Drop-Leiste und Ihre Plug-ins ein, werden auch Sie zum schnellsten Programmierer der Welt und bringen Sie sich in die LabVIEW Community ein! Bild 2: Automatisches Verbinden der VIs über das Quick-Drop-Plug-in Zusammenfassung Mit der Quick-Drop-Leiste bietet National Instruments dem Programmierer ein mächtiges Tool. Die Möglichkeit, Plug-ins in LabVIEW einzubinden sowie Shortcuts für Funktionen anzulegen, kann die Programmiergeschwindigkeit steigern. Autor: M. Eng. Philipp Hohl ifm syntron gmbh (http://www.ifm.com) Marienfelder Straße 10 Tettnang 88069 Deutschland Tel: +49 7542 9460 1749 Fax: +49 7542 9460 1120 [email protected] (mailto:[email protected]) 2/4 www.ni.com Bild 1: Die Quick-Drop-Leiste Bild 2: Automatisches Verbinden der VIs über das Quick-Drop-Plug-in Rechtliche Hinweise Diese Kundenlösung („Kundenlösung“) wurde von einem Kunden von National Instruments („NI“) entwickelt. DIESE KUNDENLÖSUNG WIRD IM „IST-ZUSTAND“ ZUR VERFÜGUNG GESTELLT UND NI ÜBERNIMMT KEINERLEI GARANTIEN. AUSFÜHRLICHERE ERLÄUTERUNGEN ZU ANDEREN EINSCHRÄNKUNGEN ENTNEHMEN SIE BITTE DEN NUTZUNGSBEDINGUNGEN FÜR NI.COM. 3/4 www.ni.com 4/4 www.ni.com