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

OCIコンテナでgrpcurlを使用したPLCnext ControlへのローカルgRPC通信

これは、PLCnext Controlデバイス上のPLCnext RuntimeとgRPCでやり取りするシリーズの最新記事です。

シリーズの過去の記事:

上記の記事では、リモート クライアント デバイスからPLCnext Controlデバイス上のgRPCサーバにアクセスする方法を示しています。この投稿では、ローカル gRPCクライアント、つまりPLCnext Controlデバイス上で実行されるgRPCクライアントが、同じデバイス上のgRPCサーバにアクセスする例を紹介します。

PLCnext Controlデバイス上のローカル gRPCクライアントの他の例:

PLCnext Controlデバイスには標準でgRPCクライアント ソフトウェアがインストールされていないため、この記事では、PodmanとDocker Hubから適切なイメージを使用して、gRPCクライアント(この場合はgrpcurl)をOCIコンテナで実行する方法を示します。

前提条件

  1. インターネットアクセスを備えた適切なPLCnext Controlデバイス。例:ファームウェアバージョン2025.0以降のAXC F 3152、ファームウェアバージョン2026.0以降のAXC F 1252。現在、この記事で使用するOCIイメージは、AXC F 2152のようなarmv7ターゲットでは利用できません。
  2. ブラウザでデバイスのWebベースド マネジメント(WBM)サイトを開き、[システム サービス]ページでGRPCローカル サーバ機能が有効になっていることを確認します。

手順:

  1. adminユーザー アカウントを使用して、PLCnext Controlデバイスでセキュア シェル セッションを開きます。
  2. シェル セッションで次のコマンドを実行します:
podman pull docker.io/fullstorydev/grpcurl:latest-alpine

これにより、grpcurlコマンドライン ツールを含むOCIイメージがPLCnext Controlデバイスにダウンロードされます。

  1. ローカル PLCnext Controlデバイスで利用可能なgRPCサービスを一覧表示します:
podman run -it --rm -v /run/plcnext/:/run/plcnext/ --userns=keep-id docker.io/fullstorydev/grpcurl:latest-alpine --plaintext unix:///run/plcnext/grpc.sock list

応答:

Arp.Device.Interface.Services.Grpc.IDeviceControlService
Arp.Device.Interface.Services.Grpc.IDeviceInfoService
Arp.Device.Interface.Services.Grpc.IDeviceSettingsService
Arp.Device.Interface.Services.Grpc.IDeviceStatusService
Arp.Io.Axioline.Services.Grpc.IAcyclicCommunicationService
Arp.Io.Axioline.Services.Grpc.IAxioMasterService
Arp.Plc.Gds.Services.Grpc.IDataAccessService
Arp.Plc.Gds.Services.Grpc.IForceService
Arp.Plc.Gds.Services.Grpc.ISubscriptionService
Arp.Services.DataLogger.Services.Grpc.IDataLoggerService2
Arp.Services.NotificationLogger.Services.Grpc.INotificationLoggerService
Arp.System.Commons.Services.Io.Grpc.IDirectoryService
Arp.System.Commons.Services.Io.Grpc.IFileService
Arp.System.Commons.Services.Io.Grpc.IFileSystemInfoService
Arp.System.Lm.Services.Grpc.ILicenseStatusService
Arp.System.Nm.Services.Grpc.INotificationManagerService
Arp.System.Security.Services.Grpc.IAuthenticationService
Arp.System.Um.Services.Grpc.IAuthorizationInfoService
Arp.System.Um.Services.Grpc.IPasswordAuthenticationService
grpc.reflection.v1.ServerReflection
grpc.reflection.v1alpha.ServerReflection
  1. (オプション) 以降のgrpcurlコマンドを簡略化するためのエイリアスを作成します:
alias grpcurl="podman run -it --rm -v /run/plcnext/:/run/plcnext/ --userns=keep-id docker.io/fullstorydev/grpcurl:latest-alpine"
  1. PLCnext Controlデバイスから基板温度を取得します:
grpcurl -format json -d '{"identifier":"Status.Board.Temperature.Centigrade"}' --plaintext unix:///run/plcnext/grpc.sock Arp.Device.Interface.Services.Grpc.IDeviceStatusService.GetItem

応答:

{ "_ReturnValue": { "TypeCode": "CT_Int8", "Int8Value": 46 } }

注記:

Makers Blogは、Phoenix Contactによってテストまたはレビューされていないコミュニティ メンバーのアプリケーションとユーザー ストーリーを紹介しています。自己責任でご利用ください。

産業技術

  1. 初心者のためのPCB基礎知識:設計・材料・製造コストまで総合ガイド
  2. ステッピングモーター vs DCモーター vs サーボモーター:主要な違いを徹底解説
  3. CNC加工におけるコーナーラジアスの影響:精度・コスト・仕上げ品質を最適化
  4. スーパーバイザー標準作業の習得:リーダーシップ、説明責任、プロセス卓越性の構築
  5. Android build.prop 徹底チューニング22選:2024年更新版で体験を劇的改善
  6. 高品質PCB実装にIPC標準が不可欠な理由
  7. 航空宇宙・防衛業界の多面的リスクを乗り越える
  8. 複素数の理解:スカラーからフェーザへのAC回路解析
  9. E3.seriesデータベースチュートリアル:属性、接続等をマスター - ダウンロード&コース付き
  10. 主要な電気ショック危険と身を守る方法
  11. 放電加工機(EDM):種類、メリット、デメリット解説