モジュール診断ロジック
モジュール診断ロジックとは、センサ、アクチュエータ、電源、通信、演算コアなどのモジュールが意図通りに動作しているかをオンラインで監視し、異常を検出・隔離・記録し、必要に応じて安全側へ制御を切り替えるための仕組みである。組込みシステム、車載ECU、産業用コントローラやPLCのI/Oモジュールなどで必須となる。要求は機能安全(ISO 26262やIEC 61508)や法規(OBD-II/EOBD)により定義され、誤検出・未検出のバランス、検出遅れ、実装コストとの整合を図りつつ、診断カバレッジを高める設計が求められる。
対象とするモジュールの範囲
対象は広範である。代表例は①センサ系(温度、圧力、電流、位置など)、②アクチュエータ系(バルブ、モータ、ソレノイド)、③電源・ドライバ(Hブリッジ、リレー駆動、LDO/DC-DC)、④マイコン周辺(RAM/Flash、クロック、ADC/DAC)、⑤通信(CAN、LIN、Ethernet、UART)、⑥環境監視(温度上昇、湿度、結露)である。各モジュールに固有の故障モードを列挙し、監視頻度と許容遅れを定義する。
基本概念と用語
- 故障・障害・不具合の区別(fault/failure/error)
- 検出・隔離・緩和(detection/isolation/mitigation)の三段構え
- 診断カバレッジ(検出率)、潜在故障、常時/断続/一過性の別
- 安全状態、デグレード(limp-home)とフェイルセーフ/フェイルオペレーショナル
設計原則
設計原則は監視の独立性確保、冗長性、しきい値のヒステリシス、デボウンス、ウィンドウ監視、自己診断(BIST)、監視用ウォッチドッグの二重化である。校正値や閾値はキャリブレーション化して現場で最適化できるようにする。計算遅延やサンプリング位相が判定に影響するため、実時間制約とスケジューリングも重要である。
代表的な診断手法
レンジチェックと有効範囲監視
アナログ値の上下限監視、物理的にあり得ない値(負の圧力など)を弾く手法である。ADC断線検出ではプルアップ/プルダウン抵抗により飽和電圧へ誘導し、開短を識別する。
相関・冗長センサの比較
二重化センサの差分、比率、勾配の監視で相互監視を行う。過渡応答や温度係数の差を考慮し、相関窓と時間フィルタを組み合わせる。
妥当性(plausibility)チェック
制御入力と出力の物理的一貫性を検証する。例として、モータ指令と電流上昇、弁開度と流量応答の対応を監視する。N-of-M投票で誤検出を低減する。
モデルベース診断(MBD)
一次・二次の物理モデルやオブザーバ、パリティ方程式を用いて残差を生成し、統計的に判定する。外乱やモデル不確かさに対しては適応的なしきい値とする。
通信診断
CRC、シーケンスカウンタ、タイムアウト、バスオフ、メッセージ新鮮度を監視する。CANのエラーフレームやBus-offからのリカバリ条件も定義する。
故障判定ロジックの構造
- 前処理:デジタルフィルタ、外れ値除去、温度補正
- 条件判定:しきい値、ウィンドウ、傾き、残差
- 確定化:デボウンスカウンタ、N-of-M、遅延タイマ、ヒステリシス
- 記録:DTC登録、フリーズフレーム保存、発生回数の更新
- 復帰:クリア条件(規定時間正常、電源再投入回数、走行サイクル)
DTC管理とサービス層
サービス層ではDTC(Diagnostic Trouble Code)の定義、重大度、依存関係、MIL点灯要求、OBD準備モニタの状態遷移を扱う。未確定(pending)と確定(confirmed)の二段階を設け、走行サイクルを単位とする消灯・消去条件を明示する。
フェイルセーフとデグレード制御
検出後は代替値(substitution)、リミット(上限/下限)、開ループへの切替、速度やトルクの制限などで安全側へ誘導する。切替時の段差やハンチングを避けるため、ランプやブレンドを設ける。
規格・プロセスとの整合
機能安全ではASILに応じた診断カバレッジ、SPFM/LFMの達成、故障注入試験が要求される。上位設計ではFMEA、FTA、設計レビュー、トレーサビリティ(要求–実装–試験)を維持する。車載ではOBD法規に基づく監視項目としきい値が定義される。
評価と検証
MIL/SIL/HILでのモデル/コード/ハードウェア段階ごとの検証、故障注入(センサ開短、通信遮断、周波数摂動、ビット反転)による検出率評価、誤検出率や検出遅延の統計評価を行う。実機では温度・電圧・振動のストレス下で再現性を確認する。
実装上の注意
- RTOS優先度と周期整合、割込み遅延の吸収
- Flash書換え頻度とウェアレベリング、電源断保護
- キャリブレーション境界値の一貫性とバージョン管理
- 診断と制御の分離、リカバリの再入可能性
よくある不具合原因
センサ誤差や環境影響を見込まない固定しきい値、デボウンス不足によるチャタリング、相関監視の位相ずれ、通信の再送・遅延を無視した新鮮度判定、復帰条件の未定義による点灯しっぱなしが典型である。これらは試験設計とキャリブ設計の不整合で顕在化する。
小規模例:酸素センサ加熱回路の診断
ヒータ電流の上限/下限監視と開短判定、加熱後の応答立上り時間監視、排気温度・電源電圧での補正、N-of-Mでの確定化、DTC登録と代替制御(ヒータ停止と推定係数補正)を組み合わせる。これによりモジュール診断ロジックの教科書的構成を満たす。
要件定義の勘所
ユースケースごとに許容リスク、検出遅れ、サービス影響、コストを定量化し、検出率・誤検出率・遅延のKPIを合意する。実装前に信号品質(S/N、帯域、量子化)の見積りを行い、必要なフィルタ次数やサンプルレートを逆算する。これがモジュール診断ロジックの性能上限を規定する。
運用・保守
現場ではログ収集、フリーズフレーム解析、DTCの発生頻度と季節相関の統計管理、フィールドでのキャリブ更新、サービスツールによる再学習・初期化機能が重要である。ソフト更新時は診断の互換性とテストケースの再実行性を確保する。
コメント(β版)