Code to let Gr20's BioRobotics2017 robot come to live.

Dependencies:   FastPWM MODSERIAL QEI mbed

Revision:
0:caa8ee3bd882
Child:
2:df0c6af898ac
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ref.h	Sun Nov 12 00:14:05 2017 +0000
@@ -0,0 +1,45 @@
+/**
+ * Reference signals
+ */
+namespace ref
+{
+const double kSampleTime = 0.01;
+const double kCalibrationOmega = 20; // [deg/sec]
+const double kCalibrationError = 1;
+const double kCalibrationOmegaStep = kCalibrationOmega*kSampleTime;
+
+const double kMinX = 0.290;
+const double kMaxX = 0.600;
+
+const double kMinY = -0.140;
+const double kMaxY =  0.190;
+
+const double kOriginTheta1 = robot::InverseKinematicsTheta(kMinX,kMinY,1);
+const double kOriginTheta2 = robot::InverseKinematicsTheta(kMinX,kMinY,2);
+
+const double kMaxSpeed = 0.05;// [m/s]
+const double kMaxStep = kMaxSpeed*kSampleTime;
+
+int i_demo_coord = 0;
+const int kNumDemoCoords = 9;
+const double kDemoCoords[2][kNumDemoCoords]  {
+    {kMinX, kMaxX, kMaxX, kMinX, kMinX, kMaxX, kMaxX, kMinX, kMinX},
+    {kMinY, kMinY, kMaxY, kMaxY, kMinY, kMaxY, kMinY, kMaxY, kMaxY}
+    };
+
+double theta_1 = 0;
+double theta_2 = 0;
+
+double get_ref_x();
+double get_ref_y();
+
+
+
+void SetPositionAsReference();
+
+void UpdateReference();
+
+void CalibrationReference();
+void HomingReference();
+void DemoReference();
+}
\ No newline at end of file