void

Dependencies:   SerialMultiByte

Files at this revision

API Documentation at this revision

Comitter:
Kouki Suzuki
Date:
Mon Oct 01 21:19:50 2018 +0900
Parent:
1:57b4a0340e93
Commit message:
v1

Changed in this revision

SerialMultiByte.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-os.lib Show annotated file Show diff for this revision Revisions of this file
diff -r 57b4a0340e93 -r 4a8227afe47b SerialMultiByte.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SerialMultiByte.lib	Mon Oct 01 21:19:50 2018 +0900
@@ -0,0 +1,1 @@
+https://os.mbed.com/teams/NHK-Robocon2016_Nagaoka_B_Team/code/SerialMultiByte/#4109001829fe
diff -r 57b4a0340e93 -r 4a8227afe47b main.cpp
--- a/main.cpp	Mon Oct 01 12:05:13 2018 +0000
+++ b/main.cpp	Mon Oct 01 21:19:50 2018 +0900
@@ -1,4 +1,111 @@
-#include "mbed.h"
-
-int main(){
-}
\ No newline at end of file
+
+#include"wheel_unit.h"
+#include"mbed.h"
+
+wheel_unit wheel_unit;
+int main(){
+  while(true){
+    wheel_unit.main_do();
+  }
+}
+/*
+#include"PS3.h"
+#include"mbed.h"
+#include"pin_config.h"
+#include"omni_wheel.h"
+#include"wheel.h"
+#include"ikarashiMDC.h"
+#include"SerialMultiByte.h"
+#include"PID.h"
+#define PI 3.141592
+
+SerialMultiByte sboard(SERIAL_TX,SERIAL_RX);
+PS3 ps3(PS3_TX,PS3_RX);
+PID pid(6.0,3.0,0.000005,0.01);
+Serial pc(USBTX,USBRX,115200);
+OmniWheel omni(4);
+Serial serial(MDC_TX,MDC_RX,115200);
+DigitalOut serialcontrol(D10);
+ikarashiMDC motor[]{
+    ikarashiMDC(&serialcontrol,1,0,SM,&serial),
+    ikarashiMDC(&serialcontrol,1,1,SM,&serial),
+    ikarashiMDC(&serialcontrol,1,2,SM,&serial),
+    ikarashiMDC(&serialcontrol,1,3,SM,&serial),
+};
+uint8_t rx_data[10];
+int b[12];
+int stick[4];
+int trigger[2];
+int i,angle,default_angle;
+double spin;
+int main(){
+  pid.setInputLimits(-18000,18000);
+  pid.setOutputLimits(-1.0,1.0);
+  pid.setBias(0);
+  pid.setMode(1);
+  sboard.baud(115200);
+  sboard.setHeaders('H','Z');
+  sboard.startReceive(2);
+  sboard.getData(rx_data);
+  default_angle = ((rx_data[0] << 8) | rx_data[1]);
+  if(rx_data[0] >= 128)
+    default_angle = ((default_angle - 32768) * -1);
+  omni.wheel[0].setRadian(PI / 4.0 * 1.0 );
+  omni.wheel[1].setRadian(PI / 4.0 * 7.0 );
+  omni.wheel[2].setRadian(PI / 4.0 * 5.0 );
+  omni.wheel[3].setRadian(PI / 4.0 * 3.0 );
+  while(1){
+    sboard.getData(rx_data);
+    angle = ((rx_data[0] << 8) | rx_data[1]);
+    if(rx_data[0] >= 128)
+      angle = ((angle - 32768) * -1);
+    if(b[5] == 1){
+      sboard.getData(rx_data);
+      default_angle = ((rx_data[0] << 8) | rx_data[1]);
+      if(rx_data[0] >= 128)
+      default_angle = ((default_angle - 32768) * -1);
+      pid.reset();
+    }
+    angle = -1*(angle - default_angle);
+    pc.printf("sb*%d/%d/%d/%d/",angle,rx_data[0],rx_data[1],angle);
+    pid.setSetPoint(0.0);
+    pid.setProcessValue(double(angle));
+    double spin_power = pid.compute();
+    pc.printf("sp1*%f",spin_power);
+    for(i = 0;i < 12;i++){
+      b[i] = ps3.getButton(i);
+      pc.printf("%d-",b[i]);
+    }
+    for(i = 0;i < 4;i++){
+      stick[i] = ps3.getStick(i);
+      pc.printf("%d--",stick[i]);
+    }
+    for(i = 0;i < 2;i++){
+      trigger[i] = ps3.getTrigger(i);
+      pc.printf("%d--",trigger[i]);
+    }
+    double X = (double)((stick[0]/255.0 - 0.5)*2.0);
+    double Y = (double)((stick[1]/255.0 - 0.5)*2.0);
+    if(b[0])Y=0.3;
+    if(b[1])Y=-0.3;
+    if(b[2])X=0.3;
+    if(b[3])X=-0.3;
+    if(X <=0.2&&X>=-0.2)X = 0.0;
+    if(Y <=0.2&&Y>=-0.2)Y = 0.0;
+    if(((trigger[0]-trigger[1])/255.0) == 0 && b[4] == 1){
+      spin = spin_power;
+    }
+    else{
+      spin = (double)((trigger[0]-trigger[1])/255.0);
+    }
+    omni.computeXY(Y,-X,spin);
+    for(int i = 0; i < 4; i++) {
+      motor[i].setSpeed(omni.wheel[i]);
+      pc.printf("%f//",omni.wheel[i].getOutput());
+    }
+    stick[0] = char(stick[0]);
+    pc.printf("%.3f-%.3f",X,Y);
+    pc.printf("\n\r");
+  }
+}
+*/
diff -r 57b4a0340e93 -r 4a8227afe47b mbed-os.lib
--- a/mbed-os.lib	Mon Oct 01 12:05:13 2018 +0000
+++ b/mbed-os.lib	Mon Oct 01 21:19:50 2018 +0900
@@ -1,1 +1,1 @@
-https://github.com/ARMmbed/mbed-os/#835fabe557aabc3f8ec5d3fc1163fec757fbbe48
+https://github.com/ARMmbed/mbed-os/#6f338f8915d22737ecb5f3de508584b6fb00749e