変わりモノがいい!

変わりモノには価値がある・・・ハズ?

Pi式Jetracer Pro キャリブレーション手順にも落とし穴がありました。

至る所に落とし穴はあるものです。

Pi式Jetracer Proをほぼ毎日触ってきて、だいぶ個性というか特徴を理解できたような気がします。
自動運転までは、まだまだ幾つものステップを踏んでいかないといけませんが、日々前進していきたいと思います。
ということで、今日はPi式Jetracer Proのキャリブレーションです。
キャリブレーションって、何をきゃりぶレートするの?と思って見てみると、
ステアリング角度ですね。
ステアリングが中央にある時の指示データ、そこをベースにして右、左端部に対する指示データを決める、という作業を行うことになります。
ここにも落とし穴がありました。

f:id:ken2017:20210601125010p:plain
それでは今回の落とし穴の件を含めて進捗の報告をします。

キャリブレーション開始

キャリブレーションの手順はここに書いてあります。

www.waveshare.com

ところが、ここに書いてある通りにやっても全く動きません。
書いている内容としては、
donkey calibrate --channel 0 --bus=1
これでキャリブレーションのためのアプリを起動します。
アプリが動くとステアリングに対する指示値の入力ができるようになりますので、
例えば300のように指示値を入力します。

f:id:ken2017:20210601130028p:plain
問題は、ここでどんな数値を入れても動かない。
何をしても動かない。
この段階で頭の中には????と?が沢山飛んでいます。
キャリブレーションを行った結果として中央、右、左の指示値をconfig.pyの中に設定するとのことなので、config.pyを覗いてみました。
すると、あれ?、チャンネル番号が違う、ということが判りました。
config.pyの中にはステアリングに相当するチャンネル番号は1となっていました。
おいおい、こういう基本的なところを間違えてはいけないだろ、と思いながらPi式Jetracer Proへのコマンドを以下に変更しました。
donkey calibrate --channel 1 --bus=1
これで問題は解決、無事にステアリングが動き始めました。
waveshareさん、修正が必要ですよ。
キャリブレーションの結果、中央への指示値は、380が良さそうでした。
それをもとに右端への指示値を480とし、
左端への指示値を280としました。
     左             中央           右

f:id:ken2017:20210601131419j:plain f:id:ken2017:20210601131336j:plain f:id:ken2017:20210601131516j:plain
最終的には、こういう姿になりましたが注意が必要です。
今回あったのは、中央値を390として右に490で動かし、その後、390にして中央に戻した時、ちゃんと中央にあるので安心し、それでは、と、左に290で動かして中央に390で戻すと???、下の写真にあるように中央に戻っていない、ちょっと左になっている。

f:id:ken2017:20210601132210j:plain
それでは、と、中央値を385にしてやってみて、ダメ?
それでは、と、中央値を380にしてやってみて、良さそう。
となった次第です。
このことから判るように、実際に使う段階になると問題が発生する可能性を秘めています。
注視しておく必要があります。
落とし穴は、ステアリングの設定だけではなく、スロットルの設定にもありました。
設定の手順を示している記事には、以下のように設定値を設定しろとありました。
前進の設定値が4095、停止の設定値が0、後進の設定値が4095、です。

f:id:ken2017:20210601132620p:plain
はいはい、ということで、指示通りにconfig.yの中に設定して動かしてみましたが、前進はすれども後進しない、という現象になりました。
昨日の段階では、前進、後進、ともに問題なく動いていたので今回変更した値に問題があることになります。
昨日の設定値(デフォルト)は、前進が500、停止が370、後進が220、でした。
この値に戻して動かしてみると、当然ながら問題なく動きました。
記事が間違えていることになります。
500、370、220の使われたかを正しく理解するにはコードを見る必要がありますが、時間があるときにでも見てみようと思います。

準備も最終段階になりました。

以上で準備もほぼ終わりました。
これから学習用のデータを採取するわけですが、その際にゲームパッドを使うほうが操作性が良い面があります。
1年前に、ディープラーニングを使った自動運転カーを作りましたが、学習データを取る際に結構難しかったことを覚えています。
その際には、キーボードでの操作でした。
Pi式Jetracer Proには標準でゲームパッドが付属しています。

f:id:ken2017:20210601133704j:plain
今回は、このゲームパッドを使って学習データを採取したいと思います。
さて、では、ゲームパッドが動くかどうかを確かめましょう。
無事起動し、ゲームパッドでステアリングもスロットルもコントロールできることを確認しました。

f:id:ken2017:20210601133641j:plain
Pi式Jetracer Proが届いて、早10日間が経過しました。
やっと学習データ取りに入れます。
良い学習データを取るには、運転が上手くないといけません。
明日からPi式Jetracer Proの運転練習をします。
ガイダンスには、10周問題なく走行できること、と書いてありました。
1年前の経験からいえば大変なことです。
当時、2周とか3周問題なく走らせるにも難儀しました。
練習、練習。
今日はここまで。
では、また。

 

プライバシーポリシー お問い合わせ