Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

Cómo crear una aplicación de consola PLCnext simple en C#

Este tutorial muestra cómo crear una aplicación de consola "Hello World" simple para un dispositivo PLCnext Control. La aplicación está escrita en C# y apunta a .NET Core.

Tenga en cuenta que este tutorial está diseñado para aplicaciones C# que se ejecutan completamente fuera del tiempo de ejecución de PLCnext. Para las aplicaciones de C# que tienen como objetivo el eCLR, consulte la sección eCLR del PLCnext Info Center.

El tutorial de instalación mostró cómo instalar .NET Core en un PLC. En ese caso, se pueden ejecutar varias aplicaciones dirigidas a .NET Core en el PLC, con una duplicación mínima de .NET dll comunes.

Como alternativa, es posible ejecutar una aplicación .NET Core en un PLC que no tenga instalado el marco .NET Core. En este caso, todas las dependencias de .NET necesarias para la aplicación se implementan con la aplicación. Esto puede ser adecuado para proyectos que requieren solo una aplicación .NET Core en el PLC.

Este tutorial aborda el segundo tipo de aplicación.

Este tutorial utiliza:

Procedimiento

  1. En Visual Studio, cree un nuevo proyecto utilizando la aplicación de consola C# de plantilla (.NET Core).

  2. Agregue un archivo al directorio raíz del proyecto llamado runtimeconfig.template.json , que contiene lo siguiente:

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

    El motivo de esta configuración de propiedad se describe en la sección "Información básica" del tutorial de instalación.

  3. Agregue la siguiente línea a la sección PropertyGroup del archivo del proyecto (.csproj):

    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    

    Esto le dice al compilador que se dirija a una plataforma Linux de 32 bits. El archivo .csproj debería verse así:

    <Project sdk=”Microsoft.NET.Sdk”>
    <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    </PropertyGroup>
    </Project>
    
  4. En el Explorador de soluciones, haga clic con el botón derecho en la Solución y abra una Terminal.

  5. En la terminal, ejecuta los siguientes comandos:

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

    Donde ConsoleApp1 es el nombre de la solución, y MyApp es el nombre del directorio de salida, donde se publicará la aplicación. La aplicación también se puede publicar en DEBUG si es necesario.

  6. Copie el directorio de salida y todo su contenido al PLC usando (por ejemplo) WinSCP.

  7. Abra una sesión de shell en el PLC usando (por ejemplo) PuTTY o ssh.

  8. Compruebe el formato del ejecutable:

    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
    

    Esto confirma que la aplicación se ha creado para la plataforma correcta.

  9. Asegúrese de que el ejecutable tenga privilegios de ejecución:

    chmod a+x /opt/plcnext/MyApp/ConsoleApp1
    
  10. Ejecute la aplicación:

    /opt/plcnext/MyApp/ConsoleApp1 Hello World!
    

¿Preguntas/comentarios?

Si tiene alguna pregunta o comentario, hágalo en el foro de la comunidad de PLCnext.


Tecnología Industrial

  1. Cómo crear UX sin fricciones
  2. Cómo crear una lista de cadenas en VHDL
  3. Cómo crear un banco de pruebas de autocomprobación
  4. Cómo crear un temporizador en VHDL
  5. Cómo crear una matriz de objetos en Java
  6. Cómo crear una estrategia de inteligencia empresarial exitosa
  7. Cómo utilizar el conector de la nube de Alibaba
  8. ¿Gestión de clústeres en PLCnext?
  9. Aplicación Java en PLCnext Control
  10. Cómo las tolerancias múltiples pueden crear conflictos
  11. Cómo utilizar tungsteno en una aplicación automotriz