Cases eingefügt
Dependencies: mbed
StateMachine.cpp
- Committer:
- Jacqueline
- Date:
- 2018-04-16
- Revision:
- 1:619ca6edc4a9
- Parent:
- 0:e611a0b9f02a
File content as of revision 1:619ca6edc4a9:
#include "mbed.h" case FORWAERTSFAHREN: buttonNow = button->read(); if (buttonNow && !buttonBefore){ controller-> setTranslationVelocity(0.0f); state = LANGSAM_FAHREN; } else if(((irSensorF.read() < DISTANCE_THRESHOLD) && (irSensorR.read() < DISTANCE_THRESHOLD)) { controller.setTranslationVelocity(0.0f); controller.setRotationVelocity(ROTATION_VELOCITY); state = 270_GRAD_RECHTS; } else if(irSensorR.read() > DISTANCE_THRESHOLD){ controller.setTranslationVelocity(0.0f); controller.setRotationVelocity(ROTATION_VELOCITY); state = 90_GRAD_RECHTS; } else if((irSensorF.read() < DISTANCE_THRESHOLD) && (irSensorR.read() < DISTANCE_THRESHOLD) (SensorL.read() < DISTANCE_THRESHOLD)) { controller.setTranslationVelocity(0.0f); controller.setRotationVelocity(ROTATION_VELOCITY); state = 180_GRAD_RECHTS; } buttonBefore = buttonNow; break; case 90_GRAD_RECHTS buttonNOW = button.read(); if (buttonNow && !buttonBefore { // deect button rising edge controller.setRotationalVelocity(0.0f); state = LANGSAM_FAHREN; } else if ((irSensorR < DISTANCE_THRESHOLD) { controller.setTranslationalvelocity(TRANSLATIONAL_VELOCITY); state = VORWAERTSFAHREN; } case 270_GRAD_RECHTS buttonNow = button.read(); if (buttonNow && !buttonBefore { //detect button rising edge controller.set RotationalVelociy(0.0f); state = LANGSAM_FAHREN; } else if ((irSensorF.read() > DISTANCE_THRESHOLD) && (irSensorR.read() > DISTANCE_THRESHOLD) && (irSensorL.read() < DISTANCE_THRESHOLD) { controller.setTranslationalVelocity(TRANSLATIONAL_VELOCITY); state= VORWAERTSFAHREN; } case 180_GRAD_RECHTS buttonNow && !button.read(); if (buttonNow && !buttonBefore { // detect button rising edge state = LANGSAM_FAHREN; } else if (( irSensorR.read() > DISTANCE_THRESHOLD) && (irSensorF.read() > DISTANCE_THRESHOLD) && (irSensorL.read() > DISTANCE_THRESHOLD)) { controller.setTranslationalVelocity(TRANCLATIONAL_VELOCITY) { state = VORWAERTSFAHREN; case LANGSAM_FAHREN; if ((fabs(controller.getActualTranslationalVelocity()) < 0.01f ) && (fabs(controller.getActualRotationalVelocity()) < 0.1f ) { enableMotorDriver = 0; state = ROBOT_OFF; } break;