another
Dependencies: mbed KondoServoLibrary Encoder
Diff: User.cpp
- Revision:
- 25:4eb2f2795120
- Parent:
- 24:674b011da45b
- Child:
- 26:3adbabf7d770
--- a/User.cpp Thu Mar 19 06:18:37 2020 +0000 +++ b/User.cpp Thu Mar 19 08:35:23 2020 +0000 @@ -33,17 +33,17 @@ DigitalIn touchSensor(p14);//タッチセンサー -DigitalOut out1(p19);//エアシリンダー(つかむ方) -DigitalOut out2(p20);//エアシリンダー(投擲)) +DigitalOut out1(p19);//エアシリンダー(投擲) +DigitalOut out2(p20);//エアシリンダー(つかむ) DigitalOut out3(p18);//エアシリンダー(ボックス) -int id = 1;//ballbreak; -int id2 = 0;//box +int id = 0;//ballbreak; +int id2 = 1;//box double SERVO2DEG = 270.0 / (11500 - 3500); -double first_ball = (5000 - 3500) * SERVO2DEG; -double first_box = (5000 - 3500) * SERVO2DEG; //X haven't be decided -double grab_ball = (3500 - 3500) * SERVO2DEG; -double pass = (8000 - 3500) * SERVO2DEG; +double first_ball = (4500 - 3500) * SERVO2DEG; +double first_box = (4000 - 3500) * SERVO2DEG; //X haven't be decided +double grab_ball = (3830 - 3500) * SERVO2DEG; +double pass = (7080 - 3500) * SERVO2DEG; double grab_box = (3500 - 3500) * SERVO2DEG; void cal() @@ -100,6 +100,11 @@ led2=0; led3=0; led4=0; + //reset + if((ButtonState >> BUTTONUP)&1 == 1 &&(ButtonState >> BUTTONTRIANGEL)&1 == 1 ) {//R2 + NVIC_SystemReset(); + printf("reset\r\n"); + } //move if((ButtonState >> BUTTONUP)&1 == 1&&(ButtonState >> BUTTONL1)&1 == 1) { //UPL1 @@ -126,7 +131,7 @@ move = 10; } else if((ButtonState >> BUTTONR1)&1 == 1) { //R1 move = 11; - } else if((ButtonState >> BUTTONSTART)&1 == 1 ) {//対応するボタンを書く(今回SELLECTボタン + } else if((ButtonState >> BUTTONSTART)&1 == 1 ) {//対応するボタンを書く(今回startボタン move = 12; } else if((ButtonState >> BUTTONSELECT)&1 == 1 ) {//対応するボタンを書く(今回SELLECTボタン move = 13; @@ -156,6 +161,7 @@ printf("box 2\r\n"); led4 = 1; } + show_angle(); //CAN通信用プログラム if(shoot==1)shot(); @@ -192,13 +198,13 @@ } void shot() { - out1=1; int breaknum=0; X.rise(&Xcount); double a=0,r=0.4,v=0; int i=0,count;//rで半径指定 a*r=v ticker.attach(&cal,0.05); while(1) { + out1=1; printf("%d\r\n",touchSensor.read()); f=0; b=0.05; @@ -208,11 +214,9 @@ printf("%d",EC.getCount()); EC.reset(); printf("%d",EC.getCount()); - wait(2); - out1=0; wait(1); out2=0; - wait(1); + out2=1; printf("passed\r\n"); wait(1); while(1) { @@ -253,7 +257,7 @@ if(m>1) { m=1; } - f=0.45*m;//速度一定 + f=0.1*m;//速度一定 b=0.0; if(X_count>2) { if(i > 345 && i < 355) {//離す角度を決める