Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

So erstellen Sie eine einfache PLCnext-Konsolenanwendung in C#

Dieses Tutorial zeigt, wie Sie eine einfache „Hello World“-Konsolenanwendung für ein PLCnext Control-Gerät erstellen. Die Anwendung ist in C# geschrieben und zielt auf .NET Core ab.

Beachten Sie, dass dieses Tutorial für C#-Anwendungen gedacht ist, die vollständig außerhalb der PLCnext Runtime ausgeführt werden. Informationen zu C#-Anwendungen, die auf eCLR abzielen, finden Sie im eCLR-Abschnitt des PLCnext Info Center.

Das Installations-Tutorial hat gezeigt, wie .NET Core auf einer SPS installiert wird. In diesem Fall können mehrere Anwendungen, die auf .NET Core abzielen, auf der SPS ausgeführt werden, mit minimaler Duplizierung gängiger .NET-DLLs.

Alternativ ist es möglich, eine .NET Core-Anwendung auf einer SPS auszuführen, auf der das .NET Core-Framework nicht installiert ist. In diesem Fall werden alle für die Anwendung erforderlichen .NET-Abhängigkeiten mit der Anwendung bereitgestellt. Dies kann für Projekte geeignet sein, die nur eine .NET Core-Anwendung auf der SPS benötigen.

Dieses Tutorial behandelt den zweiten Anwendungstyp.

Dieses Tutorial verwendet:

Verfahren

  1. Erstellen Sie in Visual Studio ein neues Projekt mit der C#-Konsolen-App-Vorlage (.NET Core).

  2. Fügen Sie dem Projektstammverzeichnis eine Datei mit dem Namen runtimeconfig.template.json hinzu , die Folgendes enthält:

    { "configProperties": { "System.Globalization.Invariant": true } }
    

    Der Grund für diese Eigenschaftseinstellung wird im Abschnitt „Hintergrundinformationen“ des Installations-Tutorials beschrieben.

  3. Fügen Sie die folgende Zeile zum Abschnitt PropertyGroup der Projektdatei (.csproj) hinzu:

    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    

    Dies weist den Compiler an, auf eine 32-Bit-Linux-Plattform abzuzielen. Die .csproj-Datei sollte dann etwa so aussehen:

    <Project sdk=”Microsoft.NET.Sdk”>
    <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    </PropertyGroup>
    </Project>
    
  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe und öffnen Sie ein Terminal.

  5. Führen Sie im Terminal die folgenden Befehle aus:

    dotnet build .ConsoleApp1.csproj 
    dotnet publish -c RELEASE -r linux-arm .ConsoleApp1.csproj -o MyApp
    

    Wobei ConsoleApp1 der Name der Lösung ist und MyApp ist der Name des Ausgabeverzeichnisses, in dem die Anwendung veröffentlicht wird. Die Anwendung kann auch in DEBUG veröffentlicht werden Modus, falls erforderlich.

  6. Kopieren Sie das Ausgabeverzeichnis und seinen gesamten Inhalt mit (z. B.) WinSCP in die SPS.

  7. Öffnen Sie eine Shell-Session auf der SPS mit (zum Beispiel) PuTTY oder ssh.

  8. Überprüfen Sie das Format der ausführbaren Datei:

    file /opt/plcnext/MyApp/ConsoleApp1 ConsoleApp1: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=887a06cd9735de5da4b686517f69d68779571cec, stripped
    

    Dies bestätigt, dass die Anwendung für die richtige Plattform erstellt wurde.

  9. Stellen Sie sicher, dass die ausführbare Datei über Ausführungsrechte verfügt:

    chmod a+x /opt/plcnext/MyApp/ConsoleApp1
    
  10. Führen Sie die Anwendung aus:

    /opt/plcnext/MyApp/ConsoleApp1 Hello World!
    

Fragen/Kommentare?

Wenn Sie Fragen oder Kommentare haben, stellen Sie diese bitte im PLCnext Community Forum.


Industrietechnik

  1. Wie man reibungslose UX erstellt
  2. So erstellen Sie eine Liste von Zeichenfolgen in VHDL
  3. So erstellen Sie eine selbstüberprüfende Testbench
  4. So erstellen Sie ein Array von Objekten in Java
  5. So erstellen Sie eine erfolgreiche Business Intelligence-Strategie
  6. So verwenden Sie den Alibaba Cloud Connector
  7. Clusterverwaltung auf PLCnext?
  8. Java-Anwendung auf PLCnext Control
  9. Wie mehrere Toleranzen zu Konflikten führen können
  10. Verwendung von Wolfram in einer Automobilanwendung