Technology
μC3
(μC3:マイクロシースリー)
μC3(マイクロ・シー・スリー)は、イーフォース株式会社が提供する組込み機器向けのリアルタイムOS(RTOS)です。μITRON仕様を基に設計されており、マイコンを搭載した計測機器、制御機器、通信機器などで、複数の処理を決められた時間内に実行するために使用されます。
一般的なパソコン用OSとは異なり、限られたCPU性能やメモリ容量の中で、制御周期、応答時間、処理の優先順位を管理することを重視しています。
ハカルプラスでは、一部の計量制御盤製品にμC3を採用し、計量処理、入出力制御、通信、表示、データ保存などを組み合わせた組込みソフトウェアを開発しています。
リアルタイムOSの役割
リアルタイムOSは、処理を単に高速化するものではなく、必要な処理を定められた時間内に実行しやすくするためのOSです。
計量制御機器では、重量値の取得、演算、表示更新、通信、異常監視、実績保存など、複数の処理を並行して行います。
これらをタスクと呼ばれる単位に分け、それぞれへ優先順位を設定することで、データ保存や通信に時間がかかった場合でも、重要な計量・制御処理を優先して実行できます。
μITRON仕様との関係
μITRONは、日本で策定された組込みシステム向けリアルタイムOSの仕様です。特定の製品名ではなく、タスク管理、同期、通信、時間管理などの基本機能とインターフェースを定めています。
μC3はμITRON仕様を基に実装されたOSであり、μITRON系OSの設計方法や開発経験を活用しやすいことが特長です。
ただし、対応する仕様、追加機能、開発ツールなどは製品ごとに異なるため、別のμITRON系OSから移行する場合は、機能やAPIの違いを確認する必要があります。
μC3の主な機能
タスク管理
処理を複数のタスクに分け、実行状態や優先順位を管理します。
例えば、重量値の取得や入出力制御を高い優先順位に設定し、画面表示や履歴保存を低い優先順位にすることで、制御の応答性を確保します。
タスク間の同期・通信
複数のタスクが同じデータを安全に利用できるように、セマフォ、イベントフラグ、データキューなどの機能を使用します。
計測タスクで取得した値を、表示タスクや通信タスクへ受け渡すといった処理を構成できます。
時間管理
一定時間の待機、周期的な処理、タイムアウト監視などを管理します。
センサの定周期読込み、通信応答の待ち時間、一定時間ごとのデータ保存などに利用されます。
割込み処理との連携
タイマー、通信受信、外部入力などの割込みを受け付け、必要なタスクを起動します。
割込み内では短時間の処理だけを行い、時間のかかる処理をタスク側へ移すことで、システム全体の応答性を維持します。
コンフィグレーションツール
μC3では、専用のコンフィグレーションツールを使用して、タスク、優先順位、スタック容量、同期オブジェクトなどを設定できます。
設定内容を基に、OS構成に必要なコードや定義を自動生成できるため、開発作業の効率化や設定ミスの低減につながります。
ただし、タスク数やスタック容量を大きくしすぎるとメモリを多く消費し、小さすぎると動作不良の原因になります。実機で処理負荷やメモリ使用量を確認しながら調整することが重要です。
ミドルウェアとの組合せ
組込み機器では、リアルタイムOSに加えて、用途に応じたミドルウェアやデバイスドライバーを組み合わせます。
- TCP/IPなどのネットワーク通信
- シリアル通信・USB通信
- ファイルシステム
- SDカード・USBメモリへの保存
- Webサーバー機能
- センサ・表示器・入出力機器の制御
CPU、コンパイラ、OS、ミドルウェアの対応状況を確認し、処理速度、メモリ容量、保存領域を考慮して構成します。
計量制御機器での活用
計量制御機器では、正確な重量計測と設備制御を行いながら、表示、通信、記録などの処理も同時に実行する必要があります。
μC3を利用することで、次のような処理をタスクごとに分けて管理できます。
- 重量信号の取得・演算
- 計量シーケンスの制御
- 接点入力・出力の監視
- 表示器や操作画面の更新
- PLC・上位システムとの通信
- 設定値・補正値の管理
- 異常・警報の監視
- 実績データの保存
重要度の異なる処理を適切に分けることで、通信異常や保存処理の遅延が発生した場合でも、計量や制御の中核処理への影響を抑えられます。
開発時の注意点
優先順位の設計
優先順位が不適切だと、重要な処理が遅れたり、優先度の低いタスクが実行されなくなったりすることがあります。処理周期と重要度を整理して設定します。
共有データの排他制御
複数のタスクが同じデータへ同時にアクセスすると、値の不整合や予期しない動作が発生する可能性があります。セマフォなどを利用して排他制御を行います。
スタック容量の管理
各タスクへ割り当てるスタック容量が不足すると、メモリ破壊や不安定動作につながります。最大使用量を確認し、適切な余裕を確保します。
異常時の復旧
通信停止、センサ異常、メモリ不足などが発生した場合に、再接続、タスク再起動、警報出力、安全停止など、どのように処理するかを設計します。
ハカルプラスのμC3対応
ハカルプラスでは、一部の計量制御盤製品にμC3を採用し、計量、制御、通信、表示、記録を組み合わせた組込みソフトウェアを開発しています。
主な対応内容には、次のものがあります。
- CPU・マイコンの選定
- タスク構成・優先順位の設計
- 計量・制御処理の実装
- 割込み・タイマー処理
- PLC・上位機器との通信
- ファイルシステム・記録媒体との連携
- 異常監視・ウォッチドッグ処理
- 処理時間・メモリ使用量の評価
OS単体ではなく、回路、マイコン、計量センサ、入出力、通信、記録媒体まで含め、製品全体として安定して動作するように設計します。
よくある質問
Q. μC3とは何ですか?
A. イーフォース株式会社が提供する、μITRON仕様を基にした組込み機器向けリアルタイムOSです。
Q. WindowsやLinuxとは何が違いますか?
A. 限られたマイコン資源の中で、制御処理を決められた時間内に実行することを重視しています。
Q. μC3を使うと処理速度が速くなりますか?
A. 単純にCPUの演算速度を高めるものではありません。複数の処理を管理し、重要な処理を必要な時間内に実行しやすくします。
Q. μITRONとμC3は同じものですか?
A. μITRONはリアルタイムOSの仕様で、μC3はその仕様を基に開発されたOS製品です。
Q. μC3でネットワーク通信はできますか?
A. 対応するTCP/IPプロトコルスタックや通信ドライバーを組み合わせることで実現できます。
Q. SDカードやUSBメモリへ保存できますか?
A. 対応するファイルシステム、ドライバー、ハードウェアを組み合わせることで保存できます。
Q. ハカルプラスではμC3を使用した開発に対応できますか?
A. 計量制御盤への採用実績があり、マイコン、入出力、通信、計量処理を含む組込みソフトウェアを検討できます。
関連ワード
同じカテゴリの『ハカル技術辞典』を見る