1. MISRA C++:2008 とは:安全性のための制約
MISRA C++:2008は、自動車、医療機器、産業制御といった**「失敗が許されない」組み込みシステム**のために策定されたガイドラインです。C++の柔軟性をあえて制限し、予期せぬ動作を徹底的に排除します。
本記事で遵守する主要原則
- 動的メモリ確保(new/delete)の禁止: メモリ断片化とリークを防止。
- 例外処理(throw/catch)の禁止: 実行時間の決定性を確保。
- 暗黙の型変換の禁止: 意図しない精度損失やオーバーフローを防止。
- 再帰呼び出しの禁止: スタックオーバーフローのリスクを排除。
2. 振動モーターの種類と制御特性
ハプティクス(触覚フィードバック)の品質は、使用するモーターの特性理解から始まります。
種類 略称 制御方式 特徴
偏心回転質量 ERM PWMデューティ 構造が単純。安価だが応答は低速。
線形振動アクチュエータ LRA PWM + 周波数 共振周波数での駆動が必須。応答が非常に速い。
圧電素子 Piezo 波形制御 高電圧駆動。高精細な振動が可能だが高コスト。
