ここまでに実行したジョブは、16kHzサイクルあたり数十個、あるいは200〜300個の算術命令に及んでおり、さらにFFT計算もあります。低価格MCUでの単純な割り込みサービス・ルーティングを超えてタスクが増加するポイントに近づいていますが、これで終わりではありません。
最も明らかなのはモーター数の追加です。フライス盤のツール位置や多指多関節ロボットハンドなど、多くの制御タスクは本質的に多軸です。統合レベルと軸間でリアルタイムデータを共有する必要性のどちらも、1台のマルチチャネルコントローラーを使用する利点を示唆していますが、軸間で重複する計算がほとんどないため、チャネル数の増加は即、作業負荷の倍増につながります。
次にサンプリングレートがあります。今やサンプリングレートは歴史的な基準である16kHzに留まらず、RMS位置誤差や速度誤差の低減を目指して高くなり始めており、場合によっては100kHzに達しています。当然ですが、サンプル区間が増加すると、リアルタイム計算完了までの時間が減少します。リアルタイム計算は、サンプル区間内に収めなければならないからです。
さらに、現場組織の変化もコントローラー・アーキテクチャにプレッシャーを与えています。それは、サブシステムのネットワーク化が進んでいることです。大きな転換点となったのは、デザインへの産業用ネットワーク・インタフェースの追加でした。システム設計者は、コマンド発行、状態の確認、記録データの読み取りをネットワーク経由で行うことをますます望むようになっています。
ネットワークインタフェースにより、必要な物理層およびハードウェアが追加されるだけでなく、制御ループのサンプル同期活動とは非同期に実行されるプロトコルスタックも追加されます。つまり、割り込み駆動型の単純なリアルタイム・タスクだけでなく、リアルタイムと対ネットワークという2つのタスクにデッドラインがあることになります。この時点で、RTOSの必要性から逃れることは難しいでしょう。
ネットワークアクセスには脆弱性が付随します。残念ながら、ネットワーク接続された制御システムへの攻撃の可能性は、インターネットに直接露出されているかどうかにかかわらず、ハッキングがもたらしうる潜在的損害の程度に関係します。完全な安全はあり得ません。そのため、一見重要性の低いモーターコントローラーのサブシステムでさえも、将来は防御が必要になるはずです。つまり、メッセージの認証やデータの暗号化/復号をローカルで実行しなければならなくなり、通常は暗号アクセラレータが必要になるということです。
以上、最初の質問におおよそ回答しました。
これまで見てきたように、ますます多くの機能がソフトウェア化されるにつれて、PMSMコントローラーは低価格MCU向けの簡単なタスクから、ハードウェア・アクセラレーションを必要とする高い計算負荷を伴うタスクにまで至っています。
また、FFT、有限インパルス応答(IIR)フィルタ、ネットワークインタフェース、付随するセキュリティ機能の必要性を指摘しました。十分な処理能力を提供しながら、リアルタイムタスクとバックグラウンドタスクの適切な分離を維持するには、非対称型マルチプロセッシングが最善の方法と考えられるようになっています。
コンピューティング環境は、割り込み駆動型のベアメタル。コードセットから、マルチコンテキスト・ワークロードへと拡大しています。そうしたワークロードは、多くの厳しいリアルタイム・タスクと幾つかの通信関連バックグラウンド・タスクで構成され、バックグラウンド・タスクの一部にも産業用ネットワークの厳しいデッドラインがあります。
そうしたタスクが混在する環境にはRTOSがまず間違いなく必要です。また、セキュリティの必要性から、カーネルに対する信頼の根源も必要です。FPGAに実装するにせよ、セルベースのテクノロジーに実装するにせよ、小さなモーターコントローラーにも立派なヘテロジニアス・マルチコアSoCが必要な時代を迎えています。
Copyright © ITmedia, Inc. All Rights Reserved.