newest version,

Dependencies:   QEI mbed

Committer:
NickDGreg
Date:
Fri Oct 23 13:14:57 2015 +0000
Revision:
0:fc6fa085d591
move_motor compiles, working on filter.  Cannot pass AnalogIn as input, says no default constructor. Cannot pass as pinName as analogIn declared in constructor cannot be seen  by methods; ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
NickDGreg 0:fc6fa085d591 1 /*
NickDGreg 0:fc6fa085d591 2 * check_state_change.cpp
NickDGreg 0:fc6fa085d591 3 *
NickDGreg 0:fc6fa085d591 4 * Created on: Oct 20, 2015
NickDGreg 0:fc6fa085d591 5 * Author: User
NickDGreg 0:fc6fa085d591 6 */
NickDGreg 0:fc6fa085d591 7
NickDGreg 0:fc6fa085d591 8 #include "mbed.h"
NickDGreg 0:fc6fa085d591 9 #include <iostream>
NickDGreg 0:fc6fa085d591 10
NickDGreg 0:fc6fa085d591 11 //threashold to turn on the system if it is off
NickDGreg 0:fc6fa085d591 12 double threashold_turn_on = 10;
NickDGreg 0:fc6fa085d591 13
NickDGreg 0:fc6fa085d591 14 //threashold to turn of the system if it is on
NickDGreg 0:fc6fa085d591 15 double threashold_turn_off = 9;
NickDGreg 0:fc6fa085d591 16
NickDGreg 0:fc6fa085d591 17 void check_state_change(std::string &state, std::string newState, int &num_on_inputs, double &threashold)
NickDGreg 0:fc6fa085d591 18 {
NickDGreg 0:fc6fa085d591 19 if (state == newState)
NickDGreg 0:fc6fa085d591 20 {
NickDGreg 0:fc6fa085d591 21 //add one to the count to track how long the muscle is tense for (update() moves motor if tensed for 0.25s)
NickDGreg 0:fc6fa085d591 22 //if at rest then still tracked but update function will not move the motor only reset num_on_inputs
NickDGreg 0:fc6fa085d591 23 num_on_inputs++;
NickDGreg 0:fc6fa085d591 24
NickDGreg 0:fc6fa085d591 25 }
NickDGreg 0:fc6fa085d591 26 else
NickDGreg 0:fc6fa085d591 27 {
NickDGreg 0:fc6fa085d591 28 //state change so reset the values of on inputs
NickDGreg 0:fc6fa085d591 29 num_on_inputs = 0;
NickDGreg 0:fc6fa085d591 30 //change state to newState
NickDGreg 0:fc6fa085d591 31 state = newState;
NickDGreg 0:fc6fa085d591 32
NickDGreg 0:fc6fa085d591 33 //change the threashold as there has been a change of state
NickDGreg 0:fc6fa085d591 34 if (newState == "rest")
NickDGreg 0:fc6fa085d591 35 {
NickDGreg 0:fc6fa085d591 36 //we know the system has switched from on to off so set threashold to turn on threashold
NickDGreg 0:fc6fa085d591 37 threashold = threashold_turn_on;
NickDGreg 0:fc6fa085d591 38 }
NickDGreg 0:fc6fa085d591 39
NickDGreg 0:fc6fa085d591 40 else
NickDGreg 0:fc6fa085d591 41 {
NickDGreg 0:fc6fa085d591 42 //we know the system has switched from rest to left, right, or keypress i.e. off to on
NickDGreg 0:fc6fa085d591 43 threashold = threashold_turn_off;
NickDGreg 0:fc6fa085d591 44 }
NickDGreg 0:fc6fa085d591 45 }
NickDGreg 0:fc6fa085d591 46 }
NickDGreg 0:fc6fa085d591 47
NickDGreg 0:fc6fa085d591 48
NickDGreg 0:fc6fa085d591 49
NickDGreg 0:fc6fa085d591 50
NickDGreg 0:fc6fa085d591 51