工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 産業技術

C# で簡単な PLCnext コンソール アプリケーションを作成する方法

このチュートリアルでは、PLCnext Control デバイス用のシンプルな「Hello World」コンソール アプリケーションを作成する方法を示します。アプリケーションは C# で記述され、.NET Core を対象としています。

このチュートリアルは、PLCnext ランタイムの外部で完全に実行される C# アプリケーションを対象としていることにご注意ください。 eCLR をターゲットとする C# アプリケーションについては、PLCnext Info Center の eCLR セクションを参照してください。

インストール チュートリアルでは、PLC に .NET Core をインストールする方法を示しました。その場合、共通の .NET dll の重複を最小限に抑えて、.NET Core をターゲットとする複数のアプリケーションを PLC 上で実行できます。

別の方法として、.NET Core フレームワークがインストールされていない PLC で .NET Core アプリケーションを実行することもできます。この場合、アプリケーションに必要なすべての .NET 依存関係がアプリケーションと共にデプロイされます。これは、PLC で .NET Core アプリケーションを 1 つだけ必要とするプロジェクトに適している場合があります。

このチュートリアルでは、2 番目のタイプのアプリケーションについて説明します。

このチュートリアルでは以下を使用します:

手順

<オール>
  • Visual Studio で、テンプレート C# コンソール アプリ (.NET Core) を使用して新しいプロジェクトを作成します。

  • runtimeconfig.template.json という名前のプロジェクト ルート ディレクトリにファイルを追加します。 、以下を含む:

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

    このプロパティ設定の理由は、インストール チュートリアルの「背景情報」セクションで説明されています。

  • プロジェクト ファイル (.csproj) の PropertyGroup セクションに次の行を追加します。

    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    

    これにより、コンパイラは Linux 32 ビット プラットフォームを対象とするようになります。.csproj ファイルは次のようになります。

    <Project sdk=”Microsoft.NET.Sdk”>
    <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RuntimeIdentifiers>linux-arm</RuntimeIdentifiers>
    </PropertyGroup>
    </Project>
    
  • ソリューション エクスプローラーでソリューションを右クリックし、ターミナルを開きます。

  • ターミナルで、次のコマンドを実行します:

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

    どこで ConsoleApp1 はソリューションの名前、MyApp アプリケーションが公開される出力ディレクトリの名前です。アプリケーションは DEBUG でも公開できます

  • (たとえば) WinSCP を使用して、出力ディレクトリとそのすべての内容を PLC にコピーします。

  • (たとえば) PuTTY または ssh を使用して、PLC でシェル セッションを開きます。

  • 実行可能ファイルの形式を確認してください:

    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
    

    これにより、アプリケーションが正しいプラットフォーム用に構築されていることが確認されます。

  • 実行可能ファイルに実行権限があることを確認してください:

    chmod a+x /opt/plcnext/MyApp/ConsoleApp1
    
  • アプリケーションを実行します:

    /opt/plcnext/MyApp/ConsoleApp1 Hello World!
    
  • 質問/コメント?

    質問やコメントがある場合は、PLCnext コミュニティ フォーラムで質問してください。


    産業技術

    1. 摩擦のないUXを作成する方法
    2. VHDL で文字列のリストを作成する方法
    3. セルフチェック テストベンチの作成方法
    4. VHDL でタイマーを作成する方法
    5. Java でオブジェクトの配列を作成する方法
    6. 成功するビジネスインテリジェンス戦略を作成する方法
    7. Alibaba Cloud コネクタの使用方法
    8. PLCnextでのクラスタ管理?
    9. PLCnext ControlのJavaアプリケーション
    10. 複数の公差が衝突を引き起こす仕組み
    11. 自動車用途でタングステンを利用する方法