2017b/Member/yan/Mission3
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2017b/Member]]
#contents
*課題 [#v615d870]
ピンポン玉&紙コップ回収ロボット
#ref(2017b/Member/yan/Mission3/1.png,22.0kb)
ピンポン玉と紙コップを別々に回収してピンポン玉はX地点、紙...
http://yakushi.shinshu-u.ac.jp/robotics/?2017b%2FMission3
*ルート説明 [#pf2c0ee0]
D点からC点まで直進した後左折する
C点からF点までライントレースする。
F点で交差点を認識した後左折する
超音波センサーが作動して紙コップを見つける。
?番号の紙コップをつかむ
QS間の線を認識するまで後退。
X地点まで紙コップを運ぶ
紙コップを上げてピンポン玉を枠内に収める
ロボットをに?番号の紙コップの方向に向ける
センサーを下ろしたあと、超音波センサーが作動して?番号の...
?番号の紙コップをつかむ
QS間の線を認識するまで後退。
X地点まで紙コップを運ぶ
Y地点に紙コップを置く
*ロボットの本体説明 [#r8f2fc51]
制作したロボットは一体で、コップを見つける、つかむ、重ね...
#ref(2017b/Member/yan/Mission3/20.jpg,102.1kb)
*ロボット機構 [#t7366ffc]
コップを取るアーム
下方の腕はコップを固定して、上方の腕をモーターで動かすこ...
#ref(2017b/Member/yan/Mission3/21.jpg,102.1kb)
超音波センサー
コップを見つけるセンサーはロボット前面中央、さらにセンサ...
#ref(2017b/Member/yan/Mission3/22.jpg,63.4kb)
光センサ―
下の画像のようにロボットの左右両方に光センサーを取り付け...
#ref(2017b/Member/yan/Mission3/24.jpg,63.4kb)
*親機のコントロール部分 [#z56efc0d]
?ロボットの移動
?超音波センサ―の動作
?光センサーの動作
*子機のコントロール部分 [#u9a306ee]
?コップを取るアーム
*コップをキャッチする順序 [#f7bcd797]
?超音波センサーでコップを探す
?コップを見つけたら、超音波センサーを挙げる
?ロボットは前に進んでコップをキャッチ
?xのところに移動する
?アームをアップしてピンポン玉を下す
?超音波センサーを下して、次のコップを探すに行く
*コップを重ねる動作 [#tdae7dc0]
コップを取るアームを下げて、固定したコップと重ねてからあ...
#ref(2017b/Member/yan/Mission3/19.jpg,235.7kb)
*プログラミングの説明 [#ya19ac57]
課題3のプログラミングは2機のNXT間でBluetouthを介して通...
defineで次の内容を定義する。
#define SPEED 100
#define SPEED_SLOW 60
#define turn_left1 OnFwd(OUT_A,80 * x); OnRev(OUT_C,35 *...
#define turn_left2 OnFwd(OUT_A,100 * x); OnFwd(OUT_C,40 ...
#define turn_left3 OnFwd(OUT_A,80 * x); OnRev(OUT_C,90 *...
#define turn_left5 OnFwd(OUT_A,80 * x); OnRev(OUT_C,1 * ...
#define go_forward OnFwd(OUT_A,80 * x); OnFwd(OUT_C,87 *...
#define go_back OnRev(OUT_A,100 * x); OnRev(OUT_C,85 * x);
#define turn_right1 OnRev(OUT_A,35 * x); OnFwd(OUT_C,80 ...
#define turn_right2 OnFwd(OUT_A,30 * x); OnFwd(OUT_C,100...
#define turn_right3 OnRev(OUT_A,80 * x); OnFwd(OUT_C,80 ...
#define AD SendRemoteNumber(1,MAILBOX1,01); //アー...
#define AU SendRemoteNumber(1,MAILBOX1,02); //アー...
#define TD OnRev(OUT_B,45 * x); Wait(1000);
#define TU OnFwd(OUT_B,45 * x); Wait(1000);
#define CupOff SendRemoteNumber(1,MAILBOX1,03); //コッ...
#define turn_right4 OnRev(OUT_A,80 * x); OnFwd(OUT_C,60 ...
#define turn_right5 OnRev(OUT_A,80 * x); OnFwd(OUT_C,1 *...
#define turn_right6 OnRev(OUT_A,1 * x); OnFwd(OUT_C,80 *...
#define DO 523
#define x 0.65 //かけ数
#define z 1.0
*サブルーチン
今回はサブルーチンとして「センサー2(光センサー)を使用...
右に沿ってライントレースするサブルーチン
sub IKK() 光センサ―
{
int BP = 0;
while (BP < 125){
if (SENSOR_2 < 45) {
turn_right1;
BP++;
}else{
if (SENSOR_2 < 49 ) {
turn_right2;
} else if (SENSOR_2 < 56 ) {
go_forward;
} else if (SENSOR_2 < 58) {
turn_left2;
} else {
turn_left1;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
Wait(10);
BP = 0;
}
左に沿ってライントレースするサブルーチン
sub DKK()
{
int BP = 0;
while (BP < 170){
if (SENSOR_2 < 45) {
turn_left1;
BP++;
}else{
if (SENSOR_2 < 49 ) {
turn_left2;
} else if (SENSOR_2 < 54 ) {
go_forward;
} else if (SENSOR_2 < 55) {
turn_right3;
} else {
turn_right4;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
BP = 0;
}
右側の光センサーを使い左に沿ってライントレースする
sub DKK2()
{
int BP = 0;
while (BP < 170){
if (SENSOR_3 < 45) {
turn_left1;
BP++;
}else{
if (SENSOR_3 < 49 ) {
turn_left2;
} else if (SENSOR_3 < 54 ) {
go_forward;
} else if (SENSOR_3 < 55) {
turn_right3;
} else {
turn_right4;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
BP = 0;
}
*関数 [#d1c0f4fd]
そして今回は、紙コップを探し前進するプログラミングを関数...
const float diameter = 5.45; //タイヤ直径
const float track = 10.35; //タイヤトレッド幅
const float pi = 3.1415; //円周率
void fwdDist(float d) //距離 dcm前進
{
long angle = d/(diameter*pi)*360.0; //必要なタイヤの回...
RotateMotorEx(OUT_AC, SPEED_SLOW, angle, 0, true ,true);
}
void turnAng(long ang) //角度ang度の時計回りの旋回
{
long angle = track/diameter * ang;
RotateMotorEx(OUT_AC, SPEED_SLOW, angle, 100, true, true);
}
int searchDirection(long ang) //現在の方向を中心にang度...
//障害物までの距離を返す
{
long tacho_min; //最も近い距離を実現するタイヤの回転数
int d_min = 300; //最も近い距離の仮の最小値(十分大きく...
long angle = (track/diameter)*ang; //旋回角度からタイヤ...
turnAng(ang/2); //指定された角度の半分を旋回
ResetTachoCount(OUT_AC); //角度計測をリセット
OnFwdSync(OUT_AC,SPEED_SLOW,-100); //半時計回りに旋回
while(MotorTachoCount(OUT_A)<=angle) {
if (SensorUS(S1)<d_min){ //現在の距離が借りの最小値より...
d_min = SensorUS(S1); //仮の最小値を更新
tacho_min = MotorTachoCount(OUT_A); //この時のタイヤの回...
}
}
OnFwdSyncEx(OUT_AC,SPEED_SLOW,100,RESET_NONE);
until(MotorTachoCount(OUT_A)<=tacho_min || SensorUS(S1)<...
Wait(14); //微調整
Off(OUT_AC);Wait(500);
return d_min;
}
task main()
{
SetSensorLowspeed(S1);
SetSensorLight(S2);
SetSensorLight(S3);
go_forward;
Wait(500); //少し前進
turn_left3;
Wait(200);
while (SENSOR_2 > 45)
{
turn_left3;
}
turn_right1;
Wait(100);
IKK(); //Fまでライントレース
turn_left3;
Wait(1000); //左向く
int d = searchDirection(70);//コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
go_forward;
Wait(2900);
AD; //コップを取る
Off(OUT_AC);
Wait(3000);
go_back;
Wait(500);
turn_left3;
Wait(700);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(250);
Off(OUT_AC);
Wait(200);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(450);
Off(OUT_AC);
Wait(450);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(250);
Off(OUT_AC);
Wait(200);
turn_right5;
Wait(700);
while (SENSOR_3 > 45)
{
turn_right5;
}
DKK2(); //Sを左折
//Qに到着
turn_right6;
Wait(1100);
while (SENSOR_2 > 45)
{
turn_right6;
}
turn_right3;
Wait(300);
Off(OUT_AC);
Wait(1000);
go_forward; //Xに入る
Wait(2500);
AU; //Xでコップを上げる
Off(OUT_AC);
Wait(3000);
go_back;
Wait(1200);
Off(OUT_AC);
Wait(2000);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(500);
while (SENOSR_2 > 45)
{
go_back;
}
Off(OUT_AC);
Wait(1000);
turn_right5;
Wait(500);
while (SENSOR_3 > 45)
{
turn_right5;
}
turn_right5;
Wait(600);
while (SENSOR_3 > 45)
{
turn_right5;
}
Off(OUT_AC);
Wait(1000);
go_forward;
Wait(1000);
while (SENSOR_2 > 45)
{
go_forward;
}
Off(OUT_AC);
Wait(1000);
while (SENSOR_3 > 45)
{
turn_left5;
}
turn_left5;
Wait(300);
go_forward;
Wait(500);
TD; //超音波下げる
Off(OUT_AC);
Wait(2000);
d = searchDirection(120);//コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
Off(OUT_AC);
Wait(1000);
go_forward;
Wait(1300);
Off(OUT_AC);
Wait(1000);
turn_left3;
Wait(1400);
Off(OUT_AC);
Wait(2000);
go_forward;
Wait(2300);
go_back;
Wait(100);
Off(OUT_AC);
Wait(500);
AD; //コップを取る(重ねる)
Off(OUT_AC);
Wait(3000);
go_back; //kaiki
Wait(1900);
turn_right3;
Wait(1400);
go_back;
Wait(1300);
while (SENSOR_2 > 45)
{
go_back;
}
turn_left5;
Wait(1200);
while (SENSOR_3 > 45)
{
turn_left5;
}
turn_right5;
Wait(300);
go_forward;
Wait(1000);
while (SENSOR_2 > 45)
{
go_forward; //Xまで直進
}
AU; //Xでコップを上げる
turn_left3;
Wait(200);
go_back;
Wait(300);
CupOff;
while (SENSOR_2 > 45)
{
go_back;
} //黒い線までバックする
turn_right3;
Wait(1000); //右折する
go_forward;
Wait(1000); //少し直進する
d = searchDirection(120); //コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
go_forward;
Wait(1000);
AD; //コップを取る
go_back;
Wait(1000); //バックしてコースにもどる
DKK(); //Bまでライントレースする
turn_left3; //左折する
Wait(1000);
DKK(); //Pに到着
turn_right3;
Wait(200);
go_forward;
Wait(1000); //Xにはいる
AU; //コップを上げる
go_back;
Wait(1000); //Xから出る
turn_left3; //左を向く
Wait(1000);
DKK(); //PからQまで円周上をライントレース
turn_left3;
Wait(1000);
DKK(); //Sに到着
turn_right3;
Wait(200);
go_forward; //Yに入る
Wait(1000);
AD; //コップを置く
CupOff; //コップ離す
}
*プログラミングの内容はパートナーが書いた内容を参考しま...
URL:http://yakushi.shinshu-u.ac.jp/robotics/?2017b%2FMemb...
*感想 [#j59fc1e0]
1.ロボット全体の安定性はとても重要である。2.1位チーム...
終了行:
[[2017b/Member]]
#contents
*課題 [#v615d870]
ピンポン玉&紙コップ回収ロボット
#ref(2017b/Member/yan/Mission3/1.png,22.0kb)
ピンポン玉と紙コップを別々に回収してピンポン玉はX地点、紙...
http://yakushi.shinshu-u.ac.jp/robotics/?2017b%2FMission3
*ルート説明 [#pf2c0ee0]
D点からC点まで直進した後左折する
C点からF点までライントレースする。
F点で交差点を認識した後左折する
超音波センサーが作動して紙コップを見つける。
?番号の紙コップをつかむ
QS間の線を認識するまで後退。
X地点まで紙コップを運ぶ
紙コップを上げてピンポン玉を枠内に収める
ロボットをに?番号の紙コップの方向に向ける
センサーを下ろしたあと、超音波センサーが作動して?番号の...
?番号の紙コップをつかむ
QS間の線を認識するまで後退。
X地点まで紙コップを運ぶ
Y地点に紙コップを置く
*ロボットの本体説明 [#r8f2fc51]
制作したロボットは一体で、コップを見つける、つかむ、重ね...
#ref(2017b/Member/yan/Mission3/20.jpg,102.1kb)
*ロボット機構 [#t7366ffc]
コップを取るアーム
下方の腕はコップを固定して、上方の腕をモーターで動かすこ...
#ref(2017b/Member/yan/Mission3/21.jpg,102.1kb)
超音波センサー
コップを見つけるセンサーはロボット前面中央、さらにセンサ...
#ref(2017b/Member/yan/Mission3/22.jpg,63.4kb)
光センサ―
下の画像のようにロボットの左右両方に光センサーを取り付け...
#ref(2017b/Member/yan/Mission3/24.jpg,63.4kb)
*親機のコントロール部分 [#z56efc0d]
?ロボットの移動
?超音波センサ―の動作
?光センサーの動作
*子機のコントロール部分 [#u9a306ee]
?コップを取るアーム
*コップをキャッチする順序 [#f7bcd797]
?超音波センサーでコップを探す
?コップを見つけたら、超音波センサーを挙げる
?ロボットは前に進んでコップをキャッチ
?xのところに移動する
?アームをアップしてピンポン玉を下す
?超音波センサーを下して、次のコップを探すに行く
*コップを重ねる動作 [#tdae7dc0]
コップを取るアームを下げて、固定したコップと重ねてからあ...
#ref(2017b/Member/yan/Mission3/19.jpg,235.7kb)
*プログラミングの説明 [#ya19ac57]
課題3のプログラミングは2機のNXT間でBluetouthを介して通...
defineで次の内容を定義する。
#define SPEED 100
#define SPEED_SLOW 60
#define turn_left1 OnFwd(OUT_A,80 * x); OnRev(OUT_C,35 *...
#define turn_left2 OnFwd(OUT_A,100 * x); OnFwd(OUT_C,40 ...
#define turn_left3 OnFwd(OUT_A,80 * x); OnRev(OUT_C,90 *...
#define turn_left5 OnFwd(OUT_A,80 * x); OnRev(OUT_C,1 * ...
#define go_forward OnFwd(OUT_A,80 * x); OnFwd(OUT_C,87 *...
#define go_back OnRev(OUT_A,100 * x); OnRev(OUT_C,85 * x);
#define turn_right1 OnRev(OUT_A,35 * x); OnFwd(OUT_C,80 ...
#define turn_right2 OnFwd(OUT_A,30 * x); OnFwd(OUT_C,100...
#define turn_right3 OnRev(OUT_A,80 * x); OnFwd(OUT_C,80 ...
#define AD SendRemoteNumber(1,MAILBOX1,01); //アー...
#define AU SendRemoteNumber(1,MAILBOX1,02); //アー...
#define TD OnRev(OUT_B,45 * x); Wait(1000);
#define TU OnFwd(OUT_B,45 * x); Wait(1000);
#define CupOff SendRemoteNumber(1,MAILBOX1,03); //コッ...
#define turn_right4 OnRev(OUT_A,80 * x); OnFwd(OUT_C,60 ...
#define turn_right5 OnRev(OUT_A,80 * x); OnFwd(OUT_C,1 *...
#define turn_right6 OnRev(OUT_A,1 * x); OnFwd(OUT_C,80 *...
#define DO 523
#define x 0.65 //かけ数
#define z 1.0
*サブルーチン
今回はサブルーチンとして「センサー2(光センサー)を使用...
右に沿ってライントレースするサブルーチン
sub IKK() 光センサ―
{
int BP = 0;
while (BP < 125){
if (SENSOR_2 < 45) {
turn_right1;
BP++;
}else{
if (SENSOR_2 < 49 ) {
turn_right2;
} else if (SENSOR_2 < 56 ) {
go_forward;
} else if (SENSOR_2 < 58) {
turn_left2;
} else {
turn_left1;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
Wait(10);
BP = 0;
}
左に沿ってライントレースするサブルーチン
sub DKK()
{
int BP = 0;
while (BP < 170){
if (SENSOR_2 < 45) {
turn_left1;
BP++;
}else{
if (SENSOR_2 < 49 ) {
turn_left2;
} else if (SENSOR_2 < 54 ) {
go_forward;
} else if (SENSOR_2 < 55) {
turn_right3;
} else {
turn_right4;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
BP = 0;
}
右側の光センサーを使い左に沿ってライントレースする
sub DKK2()
{
int BP = 0;
while (BP < 170){
if (SENSOR_3 < 45) {
turn_left1;
BP++;
}else{
if (SENSOR_3 < 49 ) {
turn_left2;
} else if (SENSOR_3 < 54 ) {
go_forward;
} else if (SENSOR_3 < 55) {
turn_right3;
} else {
turn_right4;
}
BP = 0;
}
Wait(1);
}
Off(OUT_AC);
PlayTone(DO,100); Wait(100);
BP = 0;
}
*関数 [#d1c0f4fd]
そして今回は、紙コップを探し前進するプログラミングを関数...
const float diameter = 5.45; //タイヤ直径
const float track = 10.35; //タイヤトレッド幅
const float pi = 3.1415; //円周率
void fwdDist(float d) //距離 dcm前進
{
long angle = d/(diameter*pi)*360.0; //必要なタイヤの回...
RotateMotorEx(OUT_AC, SPEED_SLOW, angle, 0, true ,true);
}
void turnAng(long ang) //角度ang度の時計回りの旋回
{
long angle = track/diameter * ang;
RotateMotorEx(OUT_AC, SPEED_SLOW, angle, 100, true, true);
}
int searchDirection(long ang) //現在の方向を中心にang度...
//障害物までの距離を返す
{
long tacho_min; //最も近い距離を実現するタイヤの回転数
int d_min = 300; //最も近い距離の仮の最小値(十分大きく...
long angle = (track/diameter)*ang; //旋回角度からタイヤ...
turnAng(ang/2); //指定された角度の半分を旋回
ResetTachoCount(OUT_AC); //角度計測をリセット
OnFwdSync(OUT_AC,SPEED_SLOW,-100); //半時計回りに旋回
while(MotorTachoCount(OUT_A)<=angle) {
if (SensorUS(S1)<d_min){ //現在の距離が借りの最小値より...
d_min = SensorUS(S1); //仮の最小値を更新
tacho_min = MotorTachoCount(OUT_A); //この時のタイヤの回...
}
}
OnFwdSyncEx(OUT_AC,SPEED_SLOW,100,RESET_NONE);
until(MotorTachoCount(OUT_A)<=tacho_min || SensorUS(S1)<...
Wait(14); //微調整
Off(OUT_AC);Wait(500);
return d_min;
}
task main()
{
SetSensorLowspeed(S1);
SetSensorLight(S2);
SetSensorLight(S3);
go_forward;
Wait(500); //少し前進
turn_left3;
Wait(200);
while (SENSOR_2 > 45)
{
turn_left3;
}
turn_right1;
Wait(100);
IKK(); //Fまでライントレース
turn_left3;
Wait(1000); //左向く
int d = searchDirection(70);//コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
go_forward;
Wait(2900);
AD; //コップを取る
Off(OUT_AC);
Wait(3000);
go_back;
Wait(500);
turn_left3;
Wait(700);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(250);
Off(OUT_AC);
Wait(200);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(450);
Off(OUT_AC);
Wait(450);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(250);
Off(OUT_AC);
Wait(200);
turn_right5;
Wait(700);
while (SENSOR_3 > 45)
{
turn_right5;
}
DKK2(); //Sを左折
//Qに到着
turn_right6;
Wait(1100);
while (SENSOR_2 > 45)
{
turn_right6;
}
turn_right3;
Wait(300);
Off(OUT_AC);
Wait(1000);
go_forward; //Xに入る
Wait(2500);
AU; //Xでコップを上げる
Off(OUT_AC);
Wait(3000);
go_back;
Wait(1200);
Off(OUT_AC);
Wait(2000);
while (SENSOR_2 > 45)
{
go_back;
}
go_back;
Wait(500);
while (SENOSR_2 > 45)
{
go_back;
}
Off(OUT_AC);
Wait(1000);
turn_right5;
Wait(500);
while (SENSOR_3 > 45)
{
turn_right5;
}
turn_right5;
Wait(600);
while (SENSOR_3 > 45)
{
turn_right5;
}
Off(OUT_AC);
Wait(1000);
go_forward;
Wait(1000);
while (SENSOR_2 > 45)
{
go_forward;
}
Off(OUT_AC);
Wait(1000);
while (SENSOR_3 > 45)
{
turn_left5;
}
turn_left5;
Wait(300);
go_forward;
Wait(500);
TD; //超音波下げる
Off(OUT_AC);
Wait(2000);
d = searchDirection(120);//コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
Off(OUT_AC);
Wait(1000);
go_forward;
Wait(1300);
Off(OUT_AC);
Wait(1000);
turn_left3;
Wait(1400);
Off(OUT_AC);
Wait(2000);
go_forward;
Wait(2300);
go_back;
Wait(100);
Off(OUT_AC);
Wait(500);
AD; //コップを取る(重ねる)
Off(OUT_AC);
Wait(3000);
go_back; //kaiki
Wait(1900);
turn_right3;
Wait(1400);
go_back;
Wait(1300);
while (SENSOR_2 > 45)
{
go_back;
}
turn_left5;
Wait(1200);
while (SENSOR_3 > 45)
{
turn_left5;
}
turn_right5;
Wait(300);
go_forward;
Wait(1000);
while (SENSOR_2 > 45)
{
go_forward; //Xまで直進
}
AU; //Xでコップを上げる
turn_left3;
Wait(200);
go_back;
Wait(300);
CupOff;
while (SENSOR_2 > 45)
{
go_back;
} //黒い線までバックする
turn_right3;
Wait(1000); //右折する
go_forward;
Wait(1000); //少し直進する
d = searchDirection(120); //コップ探す
if (d > 10){
fwdDist(d-10.0);//コップに近づく
}
TU; //超音波センサーをあげる
go_forward;
Wait(1000);
AD; //コップを取る
go_back;
Wait(1000); //バックしてコースにもどる
DKK(); //Bまでライントレースする
turn_left3; //左折する
Wait(1000);
DKK(); //Pに到着
turn_right3;
Wait(200);
go_forward;
Wait(1000); //Xにはいる
AU; //コップを上げる
go_back;
Wait(1000); //Xから出る
turn_left3; //左を向く
Wait(1000);
DKK(); //PからQまで円周上をライントレース
turn_left3;
Wait(1000);
DKK(); //Sに到着
turn_right3;
Wait(200);
go_forward; //Yに入る
Wait(1000);
AD; //コップを置く
CupOff; //コップ離す
}
*プログラミングの内容はパートナーが書いた内容を参考しま...
URL:http://yakushi.shinshu-u.ac.jp/robotics/?2017b%2FMemb...
*感想 [#j59fc1e0]
1.ロボット全体の安定性はとても重要である。2.1位チーム...
ページ名: