質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

Q&A

解決済

2回答

5876閲覧

ウォッチドッグのオーバーフロー周期の決め方

退会済みユーザー

退会済みユーザー

総合スコア0

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

0グッド

0クリップ

投稿2019/02/19 13:20

ウォッチドッグのオーバーフロー周期

マイコンを触り始めたのですが、
ウォッチドッグのオーバーフロー周期はどのように決めるものなのでしょうか?

Renesas RL78の場合

第10章 ウォッチドッグ・タイマ
以下の記載があります。
イメージ説明

何かをもとに決めるのだと思いますが、
何を基準にオーバーフロー期間を設定すれば良いのかがそもそも分かりません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

keicha_hrs

2019/02/19 14:28

設定値に悩む以前に、今作ろうとしているシステムはウォッチドッグタイマが必要な設計とすることが確定しているのでしょうか?(ウォッチドッグタイマを使わない設計にすることも可能)それが決まっていない段階で設定値に悩んでいるのだとしたら無意味ですよ。
退会済みユーザー

退会済みユーザー

2019/02/22 10:19

keicha_hrsさん、補足ありがとうございます。勿論、可能だとは思いますが、組込みの世界では、どのようなシステムであれ、マイコンを使う限りはWDTでシステムを監視すべきではないでしょうか。アドレスが化けてPCが意図しない場所を指すこともあるでしょうし、プログラムのところどころBITフラグ等を立てておき、意図した通過順でなければ無限ループでリセットさせるという使い方もできるかと思います。WDTが機能として不要なケースとしてはICEデバッグする時ぐらいかなと思います。
guest

回答2

0

固まってからリセットまで装置が止まります。
どのくらい耐えられますか?
という基準で決めます。

特別指定がなければいつも一番長くしています。

投稿2019/02/21 05:46

hillacken

総合スコア359

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/02/22 10:35

回答ありがとうございます。 一番長くしておいてシステム、要求として問題ないかですね。。 たとえば車の制御とか安全が求められる世界では厳しそうですね。
guest

0

ベストアンサー

ウオッチドッグを使うなら、何らかのループ処理(繰り返し処理)でウオッチドッグのトリガを行うことになると思いますが、そのループの周期時間を見積もり、その最大時間の数倍から十数倍程度の周期時間を設定しますね

あんまし周期時間が短すぎると、ループ処理でのウオッチドッグのトリがが間に合わなくなりますね

投稿2019/02/19 14:11

y_waiwai

総合スコア88163

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/02/22 10:31

回答ありがとうございます。おっしゃる通り、メインループから周期的にクリアします。たとえば単純な仮定ですが、メイン1周100msだとして、オーバーフロー周期120msだとすると、20msの猶予しかありません。メイン1周中にWDTを1回しかクリアしないとしたら、多重割込みで20msかかる場合にリセットしてしまいます。ループ中に2回クリアすれば大丈夫だとは思いますが。考え方としては、メイン1周+多重割込みの最大処理時間を見積もり、それを上回る程度のオーバーフロー時間を設定するのがシステムとしてベストではないかと考えています。どう思いますか?hillackenさんが言うように、要求がないなら最大時間で設定しても別に良いのかもしれません。
y_waiwai

2019/02/22 10:43

まず、どこまでの停止時間を許容できるか、を決める必要があります これが決まるなら、WDT周期はその時間以内にしなくてはなりません。 これを大前提とし、メインループの周期に、あらゆる要因を加味し(もちろん多重割り込みなど)リセット最大周期を求め、それの数倍以上の周期をWDT周期時間とします まあ、停止時間の要求仕様が厳しくなければ、最大時間でもいいでしょうね
退会済みユーザー

退会済みユーザー

2019/02/22 10:50

承知しました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問