Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Comment créer une application console PLCnext simple en C#

Ce didacticiel montre comment créer une application console « Hello World » simple pour un équipement PLCnext Control. L'application est écrite en C# et cible .NET Core.

Notez que ce didacticiel est destiné aux applications C# qui s'exécutent entièrement en dehors du runtime PLCnext. Pour les applications C# qui ciblent l'eCLR, veuillez vous référer à la section eCLR du PLCnext Info Center.

Le didacticiel d'installation a montré comment installer .NET Core sur un automate. Dans ce cas, plusieurs applications ciblant .NET Core peuvent être exécutées sur l'automate, avec une duplication minimale des DLL .NET communes.

Comme alternative, il est possible d'exécuter une application .NET Core sur un automate sur lequel le framework .NET Core n'est pas installé. Dans ce cas, toutes les dépendances .NET requises pour l'application sont déployées avec l'application. Cela peut convenir aux projets qui ne nécessitent qu'une seule application .NET Core sur l'automate.

Ce tutoriel aborde le second type d'application.

Ce tutoriel utilise :

Procédure

  1. Dans Visual Studio, créez un nouveau projet à l'aide du modèle d'application C# Console (.NET Core).

  2. Ajoutez un fichier au répertoire racine du projet appelé runtimeconfig.template.json , contenant les éléments suivants :

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

    La raison de ce paramètre de propriété est décrite dans la section "Informations générales" du didacticiel d'installation.

  3. Ajoutez la ligne suivante à la section PropertyGroup du fichier de projet (.csproj) :

    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    

    Cela indique au compilateur de cibler une plate-forme Linux 32 bits. Le fichier .csproj devrait alors ressembler à ceci :

    <Project sdk=”Microsoft.NET.Sdk”>
    <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    </PropertyGroup>
    </Project>
    
  4. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur la solution et ouvrez un terminal.

  5. Dans le terminal, exécutez les commandes suivantes :

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

    ConsoleApp1 est le nom de la solution, et MyApp est le nom du répertoire de sortie, où l'application sera publiée. L'application peut également être publiée en DEBUG mode si nécessaire.

  6. Copiez le répertoire de sortie et tout son contenu dans l'automate en utilisant (par exemple) WinSCP.

  7. Ouvrez une session shell sur l'automate en utilisant (par exemple) PuTTY ou ssh.

  8. Vérifiez le format de l'exécutable :

    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
    

    Cela confirme que l'application a été conçue pour la bonne plate-forme.

  9. Assurez-vous que l'exécutable dispose des privilèges d'exécution :

    chmod a+x /opt/plcnext/MyApp/ConsoleApp1
    
  10. Exécutez l'application :

    /opt/plcnext/MyApp/ConsoleApp1 Hello World!
    

Des questions/commentaires ?

Si vous avez des questions ou des commentaires, n'hésitez pas à les poser sur le forum de la communauté PLCnext.


Technologie industrielle

  1. Comment créer une liste de chaînes en VHDL
  2. Comment créer un banc d'essai d'auto-vérification
  3. Comment créer un tableau d'objets en Java
  4. Comment créer une stratégie de Business Intelligence réussie
  5. Comment utiliser Alibaba Cloud Connector
  6. Gestion de cluster sur PLCnext ?
  7. Application Java sur PLCnext Control
  8. Comment plusieurs tolérances peuvent créer des conflits
  9. Comment utiliser le tungstène dans une application automobile