DP / Mbed 2 deprecated RCControlOOPWithThrottle

Dependencies:   mbed

Fork of RCControlOOP by DP

Committer:
mfillinois
Date:
Wed Oct 08 16:59:47 2014 +0000
Revision:
2:e9042e88abf1
Parent:
1:e694ee3b4a7f
Child:
3:b3ec75e9163f
RC control for sending button presses from Android to control

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mfillinois 0:78e2af20cbf3 1 #include "Mousr.h"
mfillinois 0:78e2af20cbf3 2
mfillinois 2:e9042e88abf1 3 //Mousr::Mousr() : m1a(p24), m1b(p23), m2a(p22), m2b(p21)
mfillinois 2:e9042e88abf1 4 Mousr::Mousr() : mstby(p6), m_a1(p24), m_a2(p25), mpwma(p26), m_b1(p23), m_b2(p22), mpwmb(p21)
mfillinois 0:78e2af20cbf3 5 {
mfillinois 2:e9042e88abf1 6 straightSpeed = 0.3;
mfillinois 2:e9042e88abf1 7 straightSlowSpeed = 0.1;
mfillinois 2:e9042e88abf1 8 rotateSlowSpeed = 0.05;
mfillinois 2:e9042e88abf1 9 rotateSpeed = 0.1;
mfillinois 2:e9042e88abf1 10 rotateFastSpeed = 0.2;
mfillinois 2:e9042e88abf1 11
mfillinois 2:e9042e88abf1 12 // Parameters for Flip
mfillinois 2:e9042e88abf1 13 flipStraightSpeed = 0.5;
mfillinois 2:e9042e88abf1 14 flipStraightWait = 0.5;
mfillinois 2:e9042e88abf1 15 flipStopWait = 0.1;
mfillinois 2:e9042e88abf1 16 flipRotateSpeed = 0.5;
mfillinois 2:e9042e88abf1 17 flipRotateWait = 0.1;
mfillinois 2:e9042e88abf1 18 mpwma = 1;
mfillinois 2:e9042e88abf1 19 mpwmb = 1;
mfillinois 2:e9042e88abf1 20 mstby = 1;
mfillinois 0:78e2af20cbf3 21 }
mfillinois 0:78e2af20cbf3 22
mfillinois 0:78e2af20cbf3 23 void Mousr::stop()
mfillinois 0:78e2af20cbf3 24 {
mfillinois 2:e9042e88abf1 25 // m1a = 0; m2a = 0; m1b = 0; m2b = 0; return;
mfillinois 2:e9042e88abf1 26 m_a1 = 0; m_a2 = 0; m_b1 = 0; m_b2 = 0; return;
mfillinois 0:78e2af20cbf3 27 }
mfillinois 0:78e2af20cbf3 28
mfillinois 0:78e2af20cbf3 29 void Mousr::straight(float speed)
mfillinois 0:78e2af20cbf3 30 {
mfillinois 2:e9042e88abf1 31 // m1a = speed; m1b = 0; m2a = speed; m2b = 0; return;
mfillinois 2:e9042e88abf1 32 m_a1 = speed; m_a2 = 0; m_b1 = speed; m_b2 = 0; return;
mfillinois 0:78e2af20cbf3 33 }
mfillinois 0:78e2af20cbf3 34
mfillinois 0:78e2af20cbf3 35 void Mousr::backwards(float speed)
mfillinois 0:78e2af20cbf3 36 {
mfillinois 2:e9042e88abf1 37 //m1a = 0; m2a = 0; m1b = speed; m2b = speed; return;
mfillinois 2:e9042e88abf1 38 m_a1 = 0; m_a2 = speed; m_b1 = 0; m_b2 = speed; return;
mfillinois 0:78e2af20cbf3 39 }
mfillinois 0:78e2af20cbf3 40
mfillinois 0:78e2af20cbf3 41 void Mousr::left(float speed)
mfillinois 0:78e2af20cbf3 42 {
mfillinois 2:e9042e88abf1 43 // m1a = 0; m1b = speed; m2a = speed; m2b = 0; return;
mfillinois 2:e9042e88abf1 44 m_a1 = speed; m_a2 = 0; m_b1 = 0; m_b2 = speed; return;
mfillinois 0:78e2af20cbf3 45 }
mfillinois 0:78e2af20cbf3 46
mfillinois 0:78e2af20cbf3 47 void Mousr::right(float speed)
mfillinois 0:78e2af20cbf3 48 {
mfillinois 2:e9042e88abf1 49 // m1a = speed; m1b = 0; m2a = 0; m2b = speed; return;
mfillinois 2:e9042e88abf1 50 m_a1 = 0; m_a2 = speed; m_b1 = speed; m_b2 = 0; return;
mfillinois 0:78e2af20cbf3 51 }
mfillinois 0:78e2af20cbf3 52
mfillinois 0:78e2af20cbf3 53 void Mousr::flipLeft()
mfillinois 0:78e2af20cbf3 54 {
mfillinois 0:78e2af20cbf3 55 straight(flipStraightSpeed);
mfillinois 0:78e2af20cbf3 56 wait(flipStraightWait);
mfillinois 2:e9042e88abf1 57 stop();
mfillinois 2:e9042e88abf1 58 wait(flipStopWait);
mfillinois 0:78e2af20cbf3 59 left(flipRotateSpeed);
mfillinois 0:78e2af20cbf3 60 wait(flipRotateWait);
mfillinois 1:e694ee3b4a7f 61 stop();
mfillinois 0:78e2af20cbf3 62 }
mfillinois 0:78e2af20cbf3 63
mfillinois 0:78e2af20cbf3 64 void Mousr::flipRight()
mfillinois 0:78e2af20cbf3 65 {
mfillinois 0:78e2af20cbf3 66 straight(flipStraightSpeed);
mfillinois 0:78e2af20cbf3 67 wait(flipStraightWait);
mfillinois 2:e9042e88abf1 68 stop();
mfillinois 2:e9042e88abf1 69 wait(flipStopWait);
mfillinois 0:78e2af20cbf3 70 right(flipRotateSpeed);
mfillinois 0:78e2af20cbf3 71 wait(flipRotateWait);
mfillinois 1:e694ee3b4a7f 72 stop();
mfillinois 0:78e2af20cbf3 73 }
mfillinois 0:78e2af20cbf3 74
mfillinois 0:78e2af20cbf3 75 // GETTER FUNCTIONS
mfillinois 0:78e2af20cbf3 76 float Mousr::getStraightSpeed()
mfillinois 0:78e2af20cbf3 77 {
mfillinois 0:78e2af20cbf3 78 return straightSpeed;
mfillinois 0:78e2af20cbf3 79 }
mfillinois 0:78e2af20cbf3 80
mfillinois 2:e9042e88abf1 81 float Mousr::getStraightSlowSpeed()
mfillinois 2:e9042e88abf1 82 {
mfillinois 2:e9042e88abf1 83 return straightSlowSpeed;
mfillinois 2:e9042e88abf1 84 }
mfillinois 2:e9042e88abf1 85
mfillinois 0:78e2af20cbf3 86 float Mousr::getRotateSlowSpeed()
mfillinois 0:78e2af20cbf3 87 {
mfillinois 1:e694ee3b4a7f 88 return rotateSlowSpeed;
mfillinois 0:78e2af20cbf3 89 }
mfillinois 0:78e2af20cbf3 90
mfillinois 0:78e2af20cbf3 91 float Mousr::getRotateSpeed()
mfillinois 0:78e2af20cbf3 92 {
mfillinois 1:e694ee3b4a7f 93 return rotateSpeed;
mfillinois 0:78e2af20cbf3 94 }
mfillinois 0:78e2af20cbf3 95
mfillinois 0:78e2af20cbf3 96 float Mousr::getRotateFastSpeed()
mfillinois 0:78e2af20cbf3 97 {
mfillinois 1:e694ee3b4a7f 98 return rotateFastSpeed;
mfillinois 0:78e2af20cbf3 99 }