No.60   Behind class
Category : 授業
今週からいよいよヤバイな。
そう感じてきた。
授業の進度が早くて復習が全く追いついていない。
研究も進んでない。
インターンシップ応募も、もちっとサクッと出しておきたかったけど、かなり時間かかってるし。
それに週末の遊びもあって。
これはとりあえず授業と研究に専念せねばいけないな。
夜も普通に寝ちゃってる感じだけど、もうちょっと睡眠削りたいところだ。
今日は、ロボットアーム製作のエクストラタイムの日。
大会まではあと月曜にもう一日エクストラの日があるだけだ。
それなのに、プログラムが終わらなかった、、、。
まだ、まともに動いていない。
RobotCでのデバッグの仕方が良くわからなかったので、慣れるのにも時間がかかる。
まず前回からつまずいていたのは何故かタッチセンサーを上手く認識できないこと。
スイッチオンで1、オフで0のはずだけど、IF文でSensorValue(touchSensor)を上手くキャッチできていないよう。
他の値が入っているのかなと思って、ディスプレイにダンプしてみたらオンで182、オフで1023とか、意味のわからない値が入ってるし、、、。
でもif( SensorValue(touchSensor) == 182 ) とかしてもやっぱりオンを認識してくれなかったり、もうなんか意味不明。タッチセンサーは使わなくてもなんとかなりそうなので、使わない方向に決めた。
それで今回やっと逆運動学の計算があってるか確認して、嫌な予感どおり、どうもうまくいってない。デバッグがものすごくやりにくくて、かなり時間かかってしまった、、。
どこがおかしいかずっと悩んで、色々調べて、もう時間が終わりというとこで、おかしいところを発見した。どうやら逆運動学の計算は合ってそうなのだけど、モーターへの指令の与え方が間違っていたようだ。
たとえば、
nMoterEncoderTarget[motorA] = ±50;
motoer[motoerA] = 30;
としているところは、motorAを角度±50度分、パワー30で持っていく、というつもりで書いていたけど、
+側に移動ならこれでいいのだけど、モーターの回転方向が-側なら、
nMoterEncoderTarget[motorA] = 50;
motoer[motoerA] = -30;
としないといけないよう。
(間違いがあったので、9/6に修正)
こりゃ、わかりにくいわ、、、。ドキュメント読んでもこんなの書いてないやん、、、。
これを直したら上手くいくかまでは確認できなかったので、後は一日で初めてうまく動かして完成させないといけない。かなり厳しい。
ほんとこの授業は最近凹むな。
なんか結構がんばってるつもりなのに、とても時間が足りない。
他のみんな、プログラムもできて機構も凝ってたりして、ほんと優秀よな。
これは生半可なことではとても追いつけないな、と厳しさを実感。
そう感じてきた。
授業の進度が早くて復習が全く追いついていない。
研究も進んでない。
インターンシップ応募も、もちっとサクッと出しておきたかったけど、かなり時間かかってるし。
それに週末の遊びもあって。
これはとりあえず授業と研究に専念せねばいけないな。
夜も普通に寝ちゃってる感じだけど、もうちょっと睡眠削りたいところだ。
今日は、ロボットアーム製作のエクストラタイムの日。
大会まではあと月曜にもう一日エクストラの日があるだけだ。
それなのに、プログラムが終わらなかった、、、。
まだ、まともに動いていない。
RobotCでのデバッグの仕方が良くわからなかったので、慣れるのにも時間がかかる。
まず前回からつまずいていたのは何故かタッチセンサーを上手く認識できないこと。
スイッチオンで1、オフで0のはずだけど、IF文でSensorValue(touchSensor)を上手くキャッチできていないよう。
他の値が入っているのかなと思って、ディスプレイにダンプしてみたらオンで182、オフで1023とか、意味のわからない値が入ってるし、、、。
でもif( SensorValue(touchSensor) == 182 ) とかしてもやっぱりオンを認識してくれなかったり、もうなんか意味不明。タッチセンサーは使わなくてもなんとかなりそうなので、使わない方向に決めた。
それで今回やっと逆運動学の計算があってるか確認して、嫌な予感どおり、どうもうまくいってない。デバッグがものすごくやりにくくて、かなり時間かかってしまった、、。
どこがおかしいかずっと悩んで、色々調べて、もう時間が終わりというとこで、おかしいところを発見した。どうやら逆運動学の計算は合ってそうなのだけど、モーターへの指令の与え方が間違っていたようだ。
たとえば、
nMoterEncoderTarget[motorA] = ±50;
motoer[motoerA] = 30;
としているところは、motorAを角度±50度分、パワー30で持っていく、というつもりで書いていたけど、
+側に移動ならこれでいいのだけど、モーターの回転方向が-側なら、
nMoterEncoderTarget[motorA] = 50;
motoer[motoerA] = -30;
としないといけないよう。
(間違いがあったので、9/6に修正)
こりゃ、わかりにくいわ、、、。ドキュメント読んでもこんなの書いてないやん、、、。
これを直したら上手くいくかまでは確認できなかったので、後は一日で初めてうまく動かして完成させないといけない。かなり厳しい。
ほんとこの授業は最近凹むな。
なんか結構がんばってるつもりなのに、とても時間が足りない。
他のみんな、プログラムもできて機構も凝ってたりして、ほんと優秀よな。
これは生半可なことではとても追いつけないな、と厳しさを実感。
PR
Trackback URL: