Darkside(https対応しました)

2025年01月20日の記事

2025年1月20日(月) 21:02

言うことを聞かない

 低速回転域だけを使い、送信機のスティック操作で回転速度を変えるプログラムにする。
 続いて、ホールセンサーの値が変化してモーター回転軸の位置が確定できたタイミングで、与えていた正弦波の位相とどれぐらいズレているかを液晶ディスプレイに表示させる。

 ところが、液晶ディスプレイに何も表示されない。
 そもそも、モーターが回転してくれない。回転しなければホールセンサーの値が変化することもなく、何も表示されない。

 受信基板をセットしたのは久しぶりなので、送信機のスティック位置だけを表示するプログラムを書き込んで実行してみる。
 意外なことに、すんなり想定通りに表示された。送信機のスティックに追随して値は変化する。

 ではなぜ、モーターが回転しないのだ?

 これは単純な問題のはずだ、と机上デバッグ。PWMレジスターに値をセットし忘れていたことに気付く。
 修正すると、液晶ディスプレイに表示されるようになった。しかし、値が極端に不安定。モーターも送信機に連動しているように感じない。
 液晶ディスプレイは表示に時間を要するので、リアルタイム処理の途中に本当は挿入したくない。試しに表示やめてみる。だが、モーター回転の不安定さは変わらない。

 回転制御の部分で不具合を抱え込んでしまったのか?
 ならばとこれまで散々試したような、回転速度固定にしてみる。すると、嘘のようにモーターは安定して回転を始めた。

 どうやらまた、非常に基本的な部分でミスしているっぽい。

written by higashino [エアガン機動戦闘車] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]

この記事へのトラックバックPingURL
Darkside(https対応しました)

Generated by MySketch GE 1.4.1

Remodelling origin is MySketch 2.7.4