My final year project

Dependencies:   BSP_DISCO_F746NG F746_GUI LCD_DISCO_F746NG SDFileSystem TS_DISCO_F746NG ResistiveTouchController Map CYS8218Controller MedianFilter

Revision:
49:a907d4f447a9
Parent:
47:c04b0d51e1e3
Child:
50:0e0cf6b350f7
--- a/main.cpp	Mon Oct 10 06:27:44 2016 +0000
+++ b/main.cpp	Wed Oct 12 00:06:26 2016 +0000
@@ -26,7 +26,7 @@
 //-- X Axis variables
 float zeroAlpha = 0;
 float alpha = 0;
-float xSP = -20;
+float xSP = 0;
 float x = 0;
 float xError = 0;
 float xPrevError = 0;
@@ -35,7 +35,7 @@
 //-- Y Axis Variables
 float zeroBeta = 0;
 float beta = 0;
-float ySP = 50;
+float ySP = 0;
 float y = 0;
 float yError = 0;
 float yPrevError = 0;
@@ -55,8 +55,8 @@
 ResistiveTouchController plate(A0,A1,A3,A4,A5);
 Map xMapper(0,1024, -170,170);
 Map yMapper(0,1024, -136,136);
-CYS8218Controller xMotor(D9);
-CYS8218Controller yMotor(D8);
+CYS8218Controller xMotor(D8);
+CYS8218Controller yMotor(D9);
 
 
 float tCal[3][2];
@@ -68,9 +68,9 @@
 
 int measuredTs = 0;
 
-bool started = true;
+bool started = false;
 
-int ballOnPlate = 1;
+int ballOnPlate = 0;
 
 bool saved = false;
 
@@ -207,8 +207,8 @@
 
 void Manual()
 {
-  xMotor.set(alpha);
-  yMotor.set(beta);
+  xMotor.Set(-alpha);
+  yMotor.Set(beta);
   Thread::wait(10);
 }
 
@@ -221,8 +221,12 @@
   {
     cycleTimer.start();
     plate.Measure();
-    x = xMapper.Calculate(floor(plate.X()));
-    y = yMapper.Calculate(floor(plate.Y()));
+    
+    //x = xMapper.Calculate(floor(plate.X()));
+    //y = yMapper.Calculate(floor(plate.Y()));
+    
+    x = xMapper.Calculate(floor(xFilter.Process(plate.X())));
+    y = yMapper.Calculate(floor(yFilter.Process(plate.Y())));
 
     xError = xSP - x;
     yError = ySP - y;
@@ -236,8 +240,8 @@
     alpha = ( alpha > 10 ? 10 : (alpha < -10 ? -10 : alpha));
     beta = ( beta > 10 ? 10 : (beta < -10 ? -10 : beta) );
 
-    xMotor.set(alpha);
-    yMotor.set(beta);
+    xMotor.Set(alpha);
+    yMotor.Set(-beta);
 
     cycleTimer.stop();
     measuredTs = cycleTimer.read_ms();
@@ -253,7 +257,7 @@
 
 void Calibrate()
 {
-  ballOnPlate = test.read();
+  ballOnPlate = plate.TouchDetected();
 
   if( calStarted )
   {
@@ -266,7 +270,7 @@
 
         if( calHeldTime >= 5 )
         {
-          while( test.read() );
+          while( plate.TouchDetected() );
 
           //TODO Test calibration function
           calPoint++;