マイクロコントローラーの故障モード: 発生理由と回避方法

Altium Designer
|  October 23, 2017
Anything that can go wrong will go wrong(問題が起きる可能性があるものは、問題が起きるものである)」と書かれたホワイトボード

設計の成功の大部分は大学にかかっています。実験室の実験でコンデンサーを誤って爆発させる原因を学んだからではなく、思いもよらないときにマーフィーの法則が当てはまることがあると学んだからです。Warcraftゲームに参加して終わりのない任務の遂行に明け暮れていた私は、常にコンピューターに依存して活動していました。

その当時、コンピューターの性能はかなり低く、悪名高いWindowsの「死のブルースクリーン」ポップアップが時々表示されるのは珍しいことではありませんでした。Warcraftゲームが中断されることはイライラの種であり、遂行した任務がシステムに保存されず数時間が無駄になる一方で、私はコンピュータークラッシュにより重度のパニック発作を引き起こしたものです。設計者であれば、現場でマイクロコントローラーに障害が発生した場合に、同様のパニックを経験したことがあるかもしれません。

マイクロコントローラーの故障モードがシステムに与える影響

組み込みシステムでは、マイクロ コントローラー(MCU)の障害は、業務の締め切りに遅れた場合よりも悪い影響が出る可能性があります。多くの場合、MCUは、決済端末、医療機器、セキュリティーシステムなどの用途における心臓部です。これらのシステムは高い安定性を必要とし、たいていはシステム障害に強くありません。

MCUが故障すると、場合によってはシステムの稼働が完全に停止します。この状況は、ユーザーに迷惑をかけたり、重要な使用現場において安全上のリスクを引き起こす可能性があります。クライアントにとって、信頼性の低いシステムは運用能力に影響を与え、収益の損失につながる可能性があります。設計者にとっては、何百もの製品が現場で常に故障していることは、私たちの誇りに大きな打撃を与え、評判に影響することが考えられます。

落胆した同僚を非難するビジネスマン
指さすだけでは、故障したマイクロコントローラーをどうすることもできません。

マイクロコントローラーの故障の理由とその責任

信頼性のある組み込みシステムには、ハードウェア設計者とファームウェア プログラマの協力が必要です。一部の設計エラーは開発段階で検知されず、導入後にやっと問題が顕在化します。この場合、その責任の大部分を誰が負うべきなのでしょうか。 

指をさす前に、マイクロコントローラーが故障する一般的な理由を考えてみましょう。

1. メモリスタック オーバーフロー

マイクロコントローラーのメモリスタックは、一時的な使用を目的とした内部RAMの指定領域です。メモリスタックのサイズは制限されており、MCUによって異なります。ファームウェア プログラマがスタックサイズより大きい変数を割り当てると、ランタイム中にスタックオーバーフローが発生し、ファームウェアに問題が生じる場合があります。 

2. 不正なポインター

MCUファームウェア プログラミングでは、変数、またはプログラム関数のアドレスを示すために、通常ポインターが使用されます。ポインターを宣言して使用する場合、ファームウェア プログラマは、プログラミング言語(多くの場合C言語)で定義された厳密な構文に従う必要があります。誤って不正なポインターを使用すると、MCUは有効範囲外のアドレスで変数または関数の処理を行おうとする可能性があり、これによってMCUがクラッシュする場合があります。

3. 不安定な電圧ソース

よく見落とされる要因です。MCUの確実な稼働のためには、安定した電力ネットワークが必要です。外部の干渉により電源がひんぱんに中断されると、MCUが故障する可能性があります。動作電圧が低下すると、MCUの動作が不安定になることや、完全にフリーズする可能性があります。

4. 電気的干渉

電気的干渉の処理に失敗した場合、特にリレーとモーターから誘導された干渉は、MCUをクラッシュさせることがあります。以前携わった、単純なDCモーターを駆動させるプロジェクトでは、MCUがモーターを逆方向に駆動しようとするたびにMCUが故障することがありました。この問題は、演算増幅器を使用して電気的絶縁を強化することで解決しました。 

5. 不十分な組み立てプロセス

マイクロコントローラーの障害は、ハードウェア技術者ともファームウェア技術者とも関係がない場合があります。 MCUのピンの半田接合の品質が低いと、MCUの予期しない動作を引き起こす可能性があります。一部の組み込みシステムのみに障害が発生する場合は、製造業者のプロセス品質の調査を開始することをお勧めします。

マイクロチップ製造工場
設計の良し悪しはプリント基板組立の業者によります。

信頼性のある組み込みシステムの設計にあたって、ハードウェアとファームウェアの技術者は、責任のなすり合いをする代わりにそれぞれの役割を果たす必要があります。よいプログラミング倫理を実践し、事前にメモリ割り当てを計画しておくことが、ベストプラクティスです。プログラマにとって、物事をシンプルに保つことは、エラーを含むコードを最小限に抑えるための賢明な選択です。

ハードウェア設計者は、ハードウェアが使用される環境を考慮し、あらゆる可能性に備える必要があります。これには、基本設計の全てのベストプラクティスを順守し、PCB設計ソフトウェアのツールを十分に活用して設計をテストすることです。Altium Designerのテクノロジーで構築されたアルティウムのCircuitStudioは、プロ仕様のPCBを設計するためのツールを提供します。

今すぐCircuitStudioの無償評価版をリクエストして、世界最高のPCB設計ソリューションをお試しください!

Check out Altium in action...

Powerful PCB Design

About Author

About Author

电子设计和DFM的PCB设计工具。给EDA领导者的信息。

most recent articles

テンプレートを活用してより多くの時間を設計に充てるには 今日、設計者は一般にEDAソフトウェアのデフォルトを開始点として使用し、寸法線、単位、グリッド設定、色、他の環境的な要素を必要に応じて変更します。プロジェクトを開始するたびに初めから作業を行うのが普通で、既知の適切な設定、レイヤー構成、回路図シートのタイトルブロックなどがほとんど再利用されません。 このように設計データをその場その場で作成すると、プロジェクトの不整合や危険を招きます。Altium Designer®とAltium 365®のテンプレートは、個々の設計者や設計チームが一貫した設計データを使用して信頼できる開始点からプロジェクトを始められるようにすることで、これらの危険を排除するのに役立ちます。 このビデオでは、設計プロセスを通してAltium Designerでテンプレートがどのように使用されているか紹介します。 以下は、セッションで紹介されたトピックとなります。 設計プロセスの各側面をテンプレート化する Altium 365を使用してチームに展開するための設計テンプレートを活用する 均一なコンポーネントをすばやく作成する 設計チーム全体で一貫性を実現する 準備や研修時間を短縮する 今すぐAltium Designerの無償評価版をリクエストして、世界最高のPCB設計ソリューションをお試しください!ご不明な点などございましたら、お問合せフォームにご入力ください。 ビデオを見る
Altium Designerによるプリント基板の設計 プリンテッドエレクトロニクスは3D印刷と同様に一般化しつつあります。急速に広がりつつあるこの技術により、製造の分野において新しい可能性が生まれ、技術者や設計者は、これまで対応できなかった市場に製品を送り出すことが可能になりました。新しい基板とインクは、生体医療から航空宇宙、家電機器まで、様々な用途に対応するために開発されています。 この技術に対応できる契約製造業者が多数、出現したことで、コスト競争が激しくなりつつあります。試作と量産を迅速に行えることは多くの可能性を秘めています。Altium 365®を使用すれば、設計プロセス全体で製造業者と情報を常に直接共有できます。 以下は、セッションで紹介されたトピックとなります。 現在のプリンテッドエレクトロニクス設計で使用する独自の配線技法 プリンテッドエレクトロニクス用にレイヤー構成を指定する方法 プリンテッドエレクトロニクス用にビアを配置する方法 製造業者がすぐに使用できるデザインパッケージを作成する方法 Altium 365を使用して製造業者と直接、情報を共有する方法 今すぐAltium Designerの無償評価版をリクエストして、世界最高のPCB設計ソリューションをお試しください!ご不明な点などございましたら、お問合せフォームにご入力ください。 ビデオを見る
Altium Designer 21:より優れた設計手法 設計プロセスでは多くの場合、退屈な繰り返し作業が求められます。Altium Designer 21では、ユーザーの皆様からのフィードバックを基に長く使用されている機能に見直しを加え、ユーザーエクスペリエンスを改善するとともにパフォーマンスと安定性の向上が行われており、より優れた環境で設計を行うことができます。これらの改良点により、既存の設計タスクが合理化され、リアルな3Dモデリングで精巧なリジッド設計またはリジッドフレキシブル設計を完成させることができます。 さらに、Altium 365®はAltium Designerの最新リリースで、従来にも増して重要な役割を果たしています。詳しくご覧ください。 以下は、セッションで紹介されたトピックとなります。 SPICEシミュレーションの拡張 リジッドフレキシブル設計: 基板プランニングとレイヤースタックの定義 高速設計:トロンボーンとノコギリ歯のチューニング 回路設計の改良:一般的なコンポーネントとネットのプロパティ Altium 365:プロジェクト履歴、競合回避、コメント 今すぐAltium Designerの無償評価版をリクエストして、世界最高のPCB設計ソリューションをお試しください!ご不明な点などございましたら、お問合せフォームにご入力ください。 ビデオを見る
Back to Home