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

C#でPLCnextコンソールアプリケーションを開発:初心者ガイド

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

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

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

代替案として、.NET CoreフレームワークがインストールされていないPLCで.NET Coreアプリケーションを実行することも可能です。この場合、アプリケーションに必要なすべての.NET依存関係がアプリケーションとともに展開されます。これは、PLC上で1つの.NET Coreアプリケーションのみを必要とするプロジェクトに適しています。

このチュートリアルでは、後者のタイプのアプリケーションを扱います。

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

手順

  1. Visual Studioで、「C# Console App (.NET Core)」テンプレートを使用して新しいプロジェクトを作成します。

  2. プロジェクトルートディレクトリにruntimeconfig.template.jsonというファイルを追加し、以下の内容を記述します:

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

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

  3. プロジェクトファイル(.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> 
  4. ソリューションエクスプローラーでソリューションを右クリックし、ターミナルを開きます。

  5. ターミナルで以下のコマンドを実行します:

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

    ここでConsoleApp1はソリューションの名前、MyAppはアプリケーションが公開される出力ディレクトリの名前です。必要に応じてDEBUGモードで公開することもできます。

  6. 出力ディレクトリとそのすべての内容をPLCにコピーします(例:WinSCPを使用)。

  7. PLCでシェルセッションを開きます(例:PuTTYまたはssh)。

  8. 実行ファイルの形式を確認します:

    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 

    アプリケーションが正しいプラットフォーム向けにビルドされていることが確認できます。

  9. 実行ファイルに実行権限があることを確認します:

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

    /opt/plcnext/MyApp/ConsoleApp1
    Hello World! 

質問/コメント?

ご質問やコメントがある場合は、PLCnext Community Forumでお気軽にお尋ねください。


産業技術

  1. フリクションレスなユーザー体験の構築:UXデザインのブループリント
  2. ビジネスインテリジェンスの習得:データ駆動型成功のための勝利戦略の策定
  3. PLCnextとAlibaba Cloud Connectorの連携:ステップバイステップガイド
  4. PLCnextでのクラスタ管理:産業オートメーションにおけるKubernetesの活用
  5. JlinkでPLCnext Control上のJava 9アプリを最適化
  6. 複数公差の競合を避ける:コストと品質への影響
  7. BEV向け抵抗スポット溶接に銅タングステンを活用
  8. VHDLで文字列リストを作成する: ベスト・プラクティスと実装例
  9. VHDLで自己検証テストベンチを構築する実践ガイド
  10. VHDLで信頼性の高いタイマーを構築:クロックサイクルカウントで時間を計測
  11. Javaオブジェクト配列の作成:ステップバイステップガイド