2012b/Member/kuRo/Mission1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2012b]]
#contents
*課題1 [#h3fbdd6c]
図のようなコースを各自で作成した上で、次のような動作をす...
コースの詳細については授業中説明する。
-1人目
++ スタート地点から出発し、スタート地点外のすぐ近くに置...
++ ピンポン玉をつかんだら速やかにスタート地点の境界の黒...
ただしT字路では、直進、右折、左折を正しく判断させること。...
++ ゴール地点に到達したら、ゴールエリア外からピンポン玉...
ただし、どうしてもエリア外からのシュートが難しい場合は、...
-2人目
++上の動作でスタートとゴールを逆にして同様の動きをするプ...
#ref(2012b/Mission/2012b-mission1.png,100%,課題1のコース)
*・・・・・・・・・・・・・・・・・・・・・・・・作成者・...
kuRo【くろ】::Twitterで「黒騎士」と名乗っているところか...
RCX(旧式)シリーズのグループ 6 左側(R6)~
ちなみに長野県内の某私立高校[普通科]出身。~
プログラムは未知との遭遇でした。~
・・・・・・・・・環境・・・・・・・・・・
プログラム環境
PC[1](メイン)~
handmadePC~
CPU Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz~
M/B ASUSTeK Computer INC. P8Z68-V PRO GEN3~
メモリ 24576MB RAM~
GPU NVIDIA GeForce GTX 560 Ti~
OS Operating System: Windows 7 Professional 64-bit~
OS Debian GNU/Linux~
PC[2](サブ)~
Panasonic CF-S10(カスタムメイド)~
CPU Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz~
メモリ 8192MB RAM~
OS Operating System: Windows 7 Professional 64-bit~
OS Debian GNU/Linux~
ロボット運用環境
試作運用~
場所 基本的に10番教室、夕方以降なので蛍光灯の光がメイン。~
電池 Panasonic アルカリ乾電池単3型 LR6XJ~
備考 仲間がいた。そこにはみんなの笑顔とロボットがいた。~
実践運用~
場所 kuRo宅フローリング床のダイニング。カーテンを閉め切...
電池 Panasonic エボルタ単3形 LR6EJ~
備考 冷蔵庫の裏にピンポン球が迷いこんでちょっとした大惨...
▼RCXの事はほとんど呟かないが参考に▼
https://twitter.com/_black_night_
* 最終目標とロボット紹介 ...
黒い線と白い下地の境界線にそって動くプログラムを作り、...
店頭をしない程度で極限まで車体を小さくし、どのロボット...
以下に挙げる図のように光センサーの位置を動かしながら進む...
タイヤの動きでスムーズな走行が行えるように、右左それぞれ...
具体的には、図にあるようにカーブする時内輪になる側を後ろ...
この時に、前進するタイヤのパワーを仮に100とすると、後...
#ref(プレゼンテーション1.png);
↓↓↓今回作成したロボット↓↓↓
#ref(DCF00443.JPG);
想像しやすいように軽トラックの画像を参照する。(フリー素...
#ref(struck_free_photo.png);
ロボット基部を軽トラックのような構造にし、荷台に当たる部...
アームは、単純に上下動作を行うだけになっており、紙の影響...
駆動部分に関しては、下の写真を参考に、歯車で駆動で生まれ...
アームの動きをもう少し遅くするのが当初の予定だったが、限...
#ref(DCF00447.JPG);
ギアに関して↓
#ref(DCF00446.JPG);
写真の通り、ギアは用意されているものの中で一番大きなもの...
また、後輪はタイヤにして4輪走行でも、今回同様2輪にしてブ...
球の確保は見た目通りアームでつかむだけの作業である。~
球の発射は、アームを持ち上げて車体を使って押し出す動作で...
基本的にこの構造のロボットと、ライントレースのプログラム...
成功したのは25/32回。失敗の要因としては、センサーが突然コ...
工夫した点↓
#ref(DCF00449.JPG);
ロボットを構成する上で、意外と厄介に感じるのがケーブルの...
そこで今回、私はロボットの中にいくつか空洞をつくり、ケー...
写真の様に、モーターの上からRCXの側面につながる空洞、フロ...
* 感想と反省 ...
反省点としては、最後の発射のタイミングがコースや、ロボッ...
本来であれば白い線に到達したタイミングで発射する予定だっ...
しかしまだまだ修行不足だと感じた。プログラムを書いていて...
テストプログラムとして何度も書いて実現可能な動きを蓄積し...
さらに、ロボットのほうも、最後の最後まで改良を繰り返した...
今回実践した中で、ロボットが紙の折り目を超えたりしようと...
*:::::::::::::::::::::::プログラム:::::::::::::::::::::::...
プログラムは、「球の確保」「ライントレース」「発射」の三...
定義(#define)に、実際に使われていないものがあるが、ここ...
タイマーを用いて、黒い線の右側を読み取るか左側を読み取る...
特にココといった限定はしていない。範囲的に変える場所を指...
今回は8.0Vから9.8V間での運用をしたが、このRCXは8.7V以下の...
もともと、光量によるセンサーの誤作動を防ぐために我が家の...
また、電圧が8.2V以下になった時点で自重により前進するのが...
#define go OnFwd(OUT_AC); //前へ進む
#define back OnRev(OUT_AC); //後ろへ下がる
#define turn_left Off(OUT_A); OnFwd(OUT_C); Wait(50); Of...
#define turn_right Off(OUT_C); OnFwd(OUT_A); Wait(50); O...
#define left SetPower(OUT_A, 2); SetPower(OUT_C, 3); OnR...
#define right SetPower(OUT_A, 3); SetPower(OUT_C, 2); On...
#define senkai_l OnFwd(OUT_C); Wait(100); Off(OUT_C);//9...
#define THRESHOLD 46 //黒い部分と白い部分の域値の数字を...
#define STEP 1 //白と黒の境界をセンサが読むタイミング
#define Catch OnFwd(OUT_B); Wait(50); Off(OUT_B);//ピン...
#define parge OnRev(OUT_B); Wait(50); OnFwd(OUT_AC); Wai...
task main ()
{
{
OnRev(OUT_B);
Wait(10);
Catch;//ピンポン球をキャッチし、ラインとレースに入る前...
SetSensor(SENSOR_1, SENSOR_LIGHT);
ClearTimer(0);//タイマーをリセット
while(FastTimer(0) <= 700)//最初の直角と交差点の間の...
{
if(SENSOR_1 < THRESHOLD)//センサーが黒にある場合、左...
{
left;
}
else
{
right;
}
Wait(STEP);
}
right; Wait(50);//コースのインクがにじんでいるので微調整
ClearTimer(1);//
while(FastTimer(1) <= 1500 )//一個目の交差点の直前か...
{
if(SENSOR_1 < THRESHOLD)//黒い線と白い線の右側の境界...
{
right;
}
else
{
left;
}
Wait(STEP);
}
ClearTimer(2);
while(FastTimer(2) <= 1400 )//二個目の交差点の前の曲...
{
SetPower(OUT_AC, 2);
if(SENSOR_1 < THRESHOLD)
{
left;
}
else
{
right;
}
Wait(STEP);
}
parge;//発射する。この時ゴール直前のコースの短い直線上...
}
終了行:
[[2012b]]
#contents
*課題1 [#h3fbdd6c]
図のようなコースを各自で作成した上で、次のような動作をす...
コースの詳細については授業中説明する。
-1人目
++ スタート地点から出発し、スタート地点外のすぐ近くに置...
++ ピンポン玉をつかんだら速やかにスタート地点の境界の黒...
ただしT字路では、直進、右折、左折を正しく判断させること。...
++ ゴール地点に到達したら、ゴールエリア外からピンポン玉...
ただし、どうしてもエリア外からのシュートが難しい場合は、...
-2人目
++上の動作でスタートとゴールを逆にして同様の動きをするプ...
#ref(2012b/Mission/2012b-mission1.png,100%,課題1のコース)
*・・・・・・・・・・・・・・・・・・・・・・・・作成者・...
kuRo【くろ】::Twitterで「黒騎士」と名乗っているところか...
RCX(旧式)シリーズのグループ 6 左側(R6)~
ちなみに長野県内の某私立高校[普通科]出身。~
プログラムは未知との遭遇でした。~
・・・・・・・・・環境・・・・・・・・・・
プログラム環境
PC[1](メイン)~
handmadePC~
CPU Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz~
M/B ASUSTeK Computer INC. P8Z68-V PRO GEN3~
メモリ 24576MB RAM~
GPU NVIDIA GeForce GTX 560 Ti~
OS Operating System: Windows 7 Professional 64-bit~
OS Debian GNU/Linux~
PC[2](サブ)~
Panasonic CF-S10(カスタムメイド)~
CPU Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz~
メモリ 8192MB RAM~
OS Operating System: Windows 7 Professional 64-bit~
OS Debian GNU/Linux~
ロボット運用環境
試作運用~
場所 基本的に10番教室、夕方以降なので蛍光灯の光がメイン。~
電池 Panasonic アルカリ乾電池単3型 LR6XJ~
備考 仲間がいた。そこにはみんなの笑顔とロボットがいた。~
実践運用~
場所 kuRo宅フローリング床のダイニング。カーテンを閉め切...
電池 Panasonic エボルタ単3形 LR6EJ~
備考 冷蔵庫の裏にピンポン球が迷いこんでちょっとした大惨...
▼RCXの事はほとんど呟かないが参考に▼
https://twitter.com/_black_night_
* 最終目標とロボット紹介 ...
黒い線と白い下地の境界線にそって動くプログラムを作り、...
店頭をしない程度で極限まで車体を小さくし、どのロボット...
以下に挙げる図のように光センサーの位置を動かしながら進む...
タイヤの動きでスムーズな走行が行えるように、右左それぞれ...
具体的には、図にあるようにカーブする時内輪になる側を後ろ...
この時に、前進するタイヤのパワーを仮に100とすると、後...
#ref(プレゼンテーション1.png);
↓↓↓今回作成したロボット↓↓↓
#ref(DCF00443.JPG);
想像しやすいように軽トラックの画像を参照する。(フリー素...
#ref(struck_free_photo.png);
ロボット基部を軽トラックのような構造にし、荷台に当たる部...
アームは、単純に上下動作を行うだけになっており、紙の影響...
駆動部分に関しては、下の写真を参考に、歯車で駆動で生まれ...
アームの動きをもう少し遅くするのが当初の予定だったが、限...
#ref(DCF00447.JPG);
ギアに関して↓
#ref(DCF00446.JPG);
写真の通り、ギアは用意されているものの中で一番大きなもの...
また、後輪はタイヤにして4輪走行でも、今回同様2輪にしてブ...
球の確保は見た目通りアームでつかむだけの作業である。~
球の発射は、アームを持ち上げて車体を使って押し出す動作で...
基本的にこの構造のロボットと、ライントレースのプログラム...
成功したのは25/32回。失敗の要因としては、センサーが突然コ...
工夫した点↓
#ref(DCF00449.JPG);
ロボットを構成する上で、意外と厄介に感じるのがケーブルの...
そこで今回、私はロボットの中にいくつか空洞をつくり、ケー...
写真の様に、モーターの上からRCXの側面につながる空洞、フロ...
* 感想と反省 ...
反省点としては、最後の発射のタイミングがコースや、ロボッ...
本来であれば白い線に到達したタイミングで発射する予定だっ...
しかしまだまだ修行不足だと感じた。プログラムを書いていて...
テストプログラムとして何度も書いて実現可能な動きを蓄積し...
さらに、ロボットのほうも、最後の最後まで改良を繰り返した...
今回実践した中で、ロボットが紙の折り目を超えたりしようと...
*:::::::::::::::::::::::プログラム:::::::::::::::::::::::...
プログラムは、「球の確保」「ライントレース」「発射」の三...
定義(#define)に、実際に使われていないものがあるが、ここ...
タイマーを用いて、黒い線の右側を読み取るか左側を読み取る...
特にココといった限定はしていない。範囲的に変える場所を指...
今回は8.0Vから9.8V間での運用をしたが、このRCXは8.7V以下の...
もともと、光量によるセンサーの誤作動を防ぐために我が家の...
また、電圧が8.2V以下になった時点で自重により前進するのが...
#define go OnFwd(OUT_AC); //前へ進む
#define back OnRev(OUT_AC); //後ろへ下がる
#define turn_left Off(OUT_A); OnFwd(OUT_C); Wait(50); Of...
#define turn_right Off(OUT_C); OnFwd(OUT_A); Wait(50); O...
#define left SetPower(OUT_A, 2); SetPower(OUT_C, 3); OnR...
#define right SetPower(OUT_A, 3); SetPower(OUT_C, 2); On...
#define senkai_l OnFwd(OUT_C); Wait(100); Off(OUT_C);//9...
#define THRESHOLD 46 //黒い部分と白い部分の域値の数字を...
#define STEP 1 //白と黒の境界をセンサが読むタイミング
#define Catch OnFwd(OUT_B); Wait(50); Off(OUT_B);//ピン...
#define parge OnRev(OUT_B); Wait(50); OnFwd(OUT_AC); Wai...
task main ()
{
{
OnRev(OUT_B);
Wait(10);
Catch;//ピンポン球をキャッチし、ラインとレースに入る前...
SetSensor(SENSOR_1, SENSOR_LIGHT);
ClearTimer(0);//タイマーをリセット
while(FastTimer(0) <= 700)//最初の直角と交差点の間の...
{
if(SENSOR_1 < THRESHOLD)//センサーが黒にある場合、左...
{
left;
}
else
{
right;
}
Wait(STEP);
}
right; Wait(50);//コースのインクがにじんでいるので微調整
ClearTimer(1);//
while(FastTimer(1) <= 1500 )//一個目の交差点の直前か...
{
if(SENSOR_1 < THRESHOLD)//黒い線と白い線の右側の境界...
{
right;
}
else
{
left;
}
Wait(STEP);
}
ClearTimer(2);
while(FastTimer(2) <= 1400 )//二個目の交差点の前の曲...
{
SetPower(OUT_AC, 2);
if(SENSOR_1 < THRESHOLD)
{
left;
}
else
{
right;
}
Wait(STEP);
}
parge;//発射する。この時ゴール直前のコースの短い直線上...
}
ページ名: