古澤_活動記録2021 - HondaLab/Robot-Intelligence GitHub Wiki

実験動画まとめ>https://muroranit-my.sharepoint.com/:f:/g/personal/18024154_mmm_muroran-it_ac_jp/EhKNbtAP7CtNiD9LlGPUcS8BDBu38Avo77RnTwxftw7_gg?e=l3NXR3

04/20 debianのインストール

06/08 2次元最適速度ロボットの走行実験

1回目 2回目 3回目 4回目 5回目
変更なし b=160,360 b=300,360 parm.csv内のb=0.40 以降動画内参照

動画->https://muroranit-my.sharepoint.com/:f:/g/personal/18024154_mmm_muroran-it_ac_jp/EmfS-zn4_ghBrOIW4xL_AocBxF4jLaE-K9lclQk0eLErjg?e=8Matrc

06/22
動画>https://muroranit-my.sharepoint.com/:f:/g/personal/18024154_mmm_muroran-it_ac_jp/EqR5-dG9MKFKlfduLHwKKPkBkJ12MNNHnHXPhnCmvjJ8BA?e=3sSicA

7/20 動画>https://muroranit-my.sharepoint.com/:f:/g/personal/18024154_mmm_muroran-it_ac_jp/Et8DTuGnbB1HrbMjkkG3TOQBdqAW7cz-G6_1EvnK32tOTQ?e=luoHCu

11/03
servo.pyのモジュールの作成
問題点:カメラがカクカクしている

11/05
ssr109a.pyを利用しcollectin_data.pyで使えるようにした
同様にtofセンサーでカメラが動くソースコードの作成に挑戦したが、シンタックスエラーがでて失敗 

11/07 実際に教師データの作成を行おうとした際、操作が重くラジコン操作のキーの反映に約12秒ほど掛かった。原因としてプログラムが重いのかなとも思ったが、実験前に試しで動かしていた時は重くなることはなく、そこがよくわからない。

11/08 研究室で改めて教師データの収集を行うとロボットの遅延は特になかった。なので研究室で教師データの作成を行った。
データ数は1000、コースは楕円コースを使用した。最初の200のデータは外壁ありでの走行、次の200データは外壁なしでの走行、最後の600データは外壁なし且つ障害物ありで走行した。

11/09
VRシアターで教師データの作成を試みたが、やはりVRシアターでは遅延が発生した。この原因を突き止めないといけない。
昨日の教師データの学習を行った。学習結果は以下のとおりである。
300_eopch_TrainWeight_rightOutput.pdf

300_epoch_TrainWeight_LeftOutput.pdf

2999_eopch_TrainWeight_rightOutput.pdf  

2999_epoch_TrainWeight_LeftOutput.pdf   1000loss_epoch.pdf  

11/17
前回の学習での走行を行ったが内壁のみでの走行は失敗した。壁沿いには走らず、まっすぐ進行した。 前回の原因追求のためVRシアターで教師データの収集を行うとロボットを起動して一回目は遅延がなく収集することができた。その際、操作の途中でカメラのサーボモーターは正常に動くが、左右のモーターの出力だけが遅延するという状態が見られた。

11/19
芋煮会をした。今回は自分が味付けをしたが、自分の味付けで取り返しがつかなくなるというプレッシャーからかなり薄味に仕上げてしまった。食材を入れることで味が薄くなる分を考慮して少し濃い目に味付けても良かったと反省している。また、ビールと発泡酒は別物であるのでこのことも今後注意すること。調味料もとても残っているので買い出しに行くときは確認すること。

11/24
学習したデータの走行を行った。カーブを曲がりきれずに終わった。
試してみたいこととして、左右のモーターの出力を均等に戻すボタンを入力した際はカメラの角度は変更しないことを挙げる。理由はカーブを曲がる際、どうしても左右のモーターの出力を均等に戻す場面が多く見られる。そのたびにカメラが正面を向くのでカメラのブレが多くなること、内壁をわざわざカメラの端っこまたは外に追いやってしまうことが起きるため。

ANGL_GAINは等しく0.6

方向 解像度 レンズのサイズ データの数 エポック 教師データの内容
反時計 320×320 500 3000 障害物なし
方向 解像度 レンズのサイズ データの数 エポック 教師データの内容
反時計 320×320 1000 3000 障害物なし500、あり500
方向 解像度 レンズのサイズ データの数 エポック 教師データの内容
時計 320×320 1000 3000 外壁あり障害物なし200、障害物なし200、障害物あり600

動画>https://muroranit-my.sharepoint.com/:f:/g/personal/18024154_mmm_muroran-it_ac_jp/EgUQN7q-ptFJrDkg_aXr1hwBLQN-1rl63YoBrvw5knnAVw?e=427xem

11/27
左右のtofセンサーの値の差によってカメラのサーボが動くソースコードを作成した。

11/29
9号車の遅延について現在わかっていることをまとめる。
・ロボットを起動してから一回目に動かす場合は遅延が発生しない。これに関しては一回目に使用した全く同じソースコードを利用しても遅延が発生する。
・自分が作成した以外のソースコード(自分が試したのはリーくんが作成したソースコード)でも遅延は発生する。

11/30
カメラのサーボをリモコン操作によって動かすソースコードの作成 

12/15
9号車の遅延を解決するためcpuの使用率の測定を行った。

相乗平均を用いてカメラの角度を決めるソースコードを実行した時(一回目)
furusawa_1

相乗平均を用いてカメラの角度を決めるソースコードを実行した時(二回目)
furusawa_2

モーターの出力の差を用いてカメラの角度を決めるソースコードを実行した時(一回目)
furusawa_motor_1

モーターの出力の差を用いてカメラの角度を決めるソースコードを実行した時(二回目)
furusawa_motor_2

Liくんのソースコードを実行した時(一回目)
Li_1

Liくんのソースコードを実行した時(二回目)
Li_2

結果としてはcpuの使用率との関係性はわからなかった。Liくんのソースコードとモーターの出力の差を用いてカメラの角度を決めるソースコードはともに高い%を出したのに対し、相乗平均を用いてカメラの角度を決めるソースコードは低い%をだした。

一旦遅延の解決は諦め、一回目のみ正常に動くことを利用し実験を行っていく。前回作成した相乗平均を用いてカメラの角度を決めるのソースコードの調整を行った。また学習にはカメラの角度のデータも教師データとして用いて学習を行う。

12/19
教師データの収集を行った。場所はVRシアターで行った。条件は以下の通り。

ソースコード 解像度 レンズのサイズ データ数 ハンドルのサイズ コース 教師データの内容
相乗平均 320×320 1500 円形(大) 障害物なし500、障害物あり500×2
リモコン 320×320 2500 円形(大) 障害物なし500、障害物あり500×4

12/23
上記の相乗平均のデータの走行を行った。研究室ではうまく走行しなかった。
原因として、学習が足りなかったのではないかと思う。この教師データの学習を行う際、学習時間が少し短いと感じたため学習の打ち止めの誤差の値を小さくして改めて学習をし走行を行う。

1/4
楕円コース上でどのアルゴリズムが内壁のみで自立走行できるか調査した。

場所 コース 教師データ数 エポック ハンドル 解像度
研究室 楕円 500 3000 320×320
カメラ カメラサーボの駆動方法 カメラサイズ 走行できたか 壁を見失うか
固定   見失う
固定   見失わない
駆動 距離センサー 不可 見失う
駆動 左右のモーターの差 見失わない

1/13
前回の続きを行った。またその際前回のカメラを固定して実験を行ったものが解像度320×320だとおもっていたが、間違いで320×320であった。その修正も含め表のつくりなおしを行う。また、今回からカメラが駆動する走行ロボットの実験に1号車を利用した。しかし、1号車の真ん中のtofセンサーがControl Interface errorが発生しうまく動かなかったのでサーボの駆動に相乗平均ではなく、単純に左右の値の差からサーボの角度を出力するソースコードを利用した。

場所 コース 教師データ数 エポック ハンドル
研究室 楕円 500 3000
カメラ カメラサーボの駆動方法 レンズサイズ 解像度 画角 走行できたか 壁を見失うか
固定   320×320 114度 不可 見失う
固定   320×240 164度 見失う
固定   320×320 154度 不可 見失う
固定   320×240 216度 見失わない
駆動 tof(相乗平均) 320×320 114度 不可 見失う
駆動 tof(左右の値の差) 320×240 164度 不可 見失う
駆動 左右のモーターの差 320×320 114度 見失わない
駆動 左右のモーターの差 320×240 164度 見失う

1/13
前回の実験の距離センサーを利用したもの(相乗平均、左右の値の差)に関して学習にカメラのサーボモーターの値(角度)を含めたもの、そうでないものの2つの実験を行った。結果としては角度のデータを含めて学習を行ったほうが内壁に沿って走るように見えたが、大きな差はないように感じた。

1/20
実験結果の円コースの追加と修正を行った.

カメラ カメラサーボの駆動方法 レンズサイズ 解像度 画角 走行できたか 壁を見失うか 号車
固定   320×320 114度 不可 見失う 105
固定   320×240 164度 見失う 105
固定   320×320 154度 不可 見失う 105
固定   320×240 216度 見失わない 105
駆動 tof(相乗平均) 320×320 114度 不可 見失う 109
駆動 tof(左右の値の差) 320×240 164度 不可 見失う 101
駆動 左右のモーターの差 320×320 114度 不可 見失う 109
駆動 左右のモーターの差 320×240 164度 見失う 109
駆動 左右のモーターの差 320×240 164度 見失う 101

円コースの実験結果

場所 コース 教師データ数 エポック ハンドル
研究室 300 3000
カメラ カメラサーボの駆動方法 レンズサイズ 解像度 画角 走行できたか 壁を見失うか 号車
駆動 tof(左右の値の差) 320×240 164度 不可 見失う 101
駆動 左右のモーターの差 320×240 164度 見失わない 101

01/26
軌跡のデータを取るためにVRシアターで改めて自律走行を行った研究室の結果と大きく差が出たので表にまとめる
また,一部データはVRシアターで全く走らなかったので教師データ取り直した

場所 コース 教師データ数 エポック ハンドル
VRシアター 楕円 500 3000
カメラ カメラサーボの駆動方法 レンズサイズ 解像度 画角 走行できたか 壁を見失うか 号車 データは取り直したか
固定   320×320 114度 不可 見失う 105 していない
固定   320×240 164度 見失わない 105 した
固定   320×320 154度 見失わない 105 していない
固定   320×240 216度 見失わない 105 した
駆動 tof(相乗平均) 320×320 114度 不可 見失う 109 していない
駆動 tof(相乗平均) 320×240 164度 不可 見失う 109 していない
駆動 tof(左右の値の差) 320×240 164度 不可 見失う 101 していない
駆動 左右のモーターの差 320×320 114度 見失わない 109 していない
駆動 左右のモーターの差 320×240 164度 見失わない 109 した