hisyam fs / Mbed 2 deprecated Test_all

Dependencies:   mbed ADS1115 StepperMotor SRF05 TPA81new

Files at this revision

API Documentation at this revision

Comitter:
hisyamfs
Date:
Fri Jan 04 11:58:19 2019 +0000
Parent:
12:1e3227a6fcd7
Child:
14:207770fefedf
Commit message:
Test terakhir, 17 des 2018

Changed in this revision

SRF05.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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SRF05.lib	Fri Jan 04 11:58:19 2019 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/simon/code/SRF05/#e758665e072c
--- a/main.cpp	Sun Dec 16 01:53:07 2018 +0000
+++ b/main.cpp	Fri Jan 04 11:58:19 2019 +0000
@@ -3,28 +3,29 @@
 #include "AX12.h"
 #include "Uvtron.h"
 #include "TPA81new.h"
+#include "SRF05.h"
 
 #define WAIT_TIME 0.02
 
 Serial pc(USBTX, USBRX);
+AnalogIn IR(PA_0);
 // stepper(PinName _en, PinName ms1, PinName ms2, PinName ms3, PinName _stepPin, PinName dir);
 stepper s(PC_6, PC_8, PA_12, PC_7, PA_11, PB_12);
 Uvtron uv(PC_12);
-
-AX12 servo1(PC_10, PC_11, PA_13, 6,  1000000); // tx, rx, tx_enable, servo ID, baud rate  
-AX12 servo2(PC_10, PC_11, PA_13, 22, 1000000);
-AX12 servo3(PC_10, PC_11, PA_13, 19, 1000000);
-
-TPA81 tpay(PB_9, PB_8, 0xDE);
+AX12 servo1(PC_10, PC_11, PA_13, 1, 1000000); // tx, rx, tx_enable, servo ID, baud rate  
+TPA81 tpay(PB_9,PB_8, 0xDE);
+SRF05 srf(PA_15, PA_14); // trigger, echo
 DigitalOut led(LED1);
 
 int main()
 {
-    s.enable();
+//    s.enable();
     while (1)
     {
-        
-        // TPA
+//      Ultrasonik
+        pc.printf("Distance = %.1f\n", srf.read());
+
+//      TPA
         pc.printf("%d", tpay.getTemp(0));
         int i;
         pc.printf("\nTPA Y \n");
@@ -33,22 +34,61 @@
             pc.printf("%d ",tpay.getTemp(i));
         }
         
-        // Stepper
-        pc.printf("Stepper\n");
+//         Stepper
+        pc.printf("\n stepper \n");
         s.step(1, 1, 1/WAIT_TIME);
         
         // Servo
-        servo1.SetGoal(240);
-        servo2.SetGoal(240);
-        servo3.SetGoal(240);
-        pc.printf("Servo : 240\n");
-        led = 1;
+        float degrees2 = 150;
+        float speed1 = 1.0;
+        servo1.MultSetGoal(
+            degrees2, speed1, 
+            degrees2, speed1,  
+            degrees2, speed1,   
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1
+        );
+        
+        pc.printf("Servo 150\n");
         wait(1);
-        servo1.SetGoal(150);
-        servo2.SetGoal(150);
-        servo3.SetGoal(150);
-        pc.printf("Servo : 150\n");
-        led = 0;
+        
+        degrees2 = 240;
+        
+        servo1.MultSetGoal(
+            degrees2, speed1, 
+            degrees2, speed1,  
+            degrees2, speed1,   
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1, 
+            degrees2, speed1
+        );
+        
+        pc.printf("Servo 240\n");
         wait(1);
         
         // Uvtron
@@ -56,5 +96,11 @@
         int read = uv.Flag;
         if (read) pc.printf("FIRE DETECTED\n");
         else pc.printf("NOT DETECTED\n");
+        
+        // IR
+        float meas = IR.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
+        meas = meas * 3300; // Change the value to be in the 0 to 3300 range
+        float ir_dist = (330377) * (pow(meas , (-1.349f)));
+        printf("IR : %.4f\n", ir_dist);
     }    
 }
\ No newline at end of file