kann fahren und drehen

Dependencies:   mbed

StateMachine.cpp

Committer:
Jacqueline
Date:
2018-04-23
Revision:
0:6d0671ae4648

File content as of revision 0:6d0671ae4648:


// Statemachine
//V04.18
// V. Ahlers

#include <mbed.h>
#include "StateMachine.h"

using namespace std;

StateMachine::StateMachine(int IrR, int IrL, int IrF) : IrR(IrR), IrL(IrL), IrF(IrF) {}

StateMachine::~StateMachine (){}

int StateMachine :: drive() {
    
           
    
    if((IrR==0) && (IrL==0) && (IrF==1)){
        caseDrive = 2;                                                          // Folge: 90 Grad nach rechts drehen
    }else  if ((IrR==0) && (IrL==1) && (IrF==0)){
        caseDrive = 2;                                                          // Folge: 90 Grad nach rechts drehen
    }else  if ((IrR==0) && (IrL==1) && (IrF==1)){
        caseDrive = 2;                                                          // Folge: 90 Grad nach rechts drehen                 
    }else  if ((IrR==1) && (IrL==0) && (IrF==0)){
        caseDrive = 1;                                                          // Folge: geradeaus fahren
    }else  if ((IrR==1) && (IrL==0) && (IrF==1)){
        caseDrive = 3;                                                          // Folge: 270 Grad nach rechts drehen
    }else  if ((IrR==1) && (IrL==1) && (IrF==0)){
        caseDrive = 1;                                                          // Folge: geradeaus fahren
    }else  if ((IrR==1) && (IrL==1) && (IrF==1)){
        caseDrive = 4;                                                          // Folge: 180 Grad nach rechts drehen
    }else{ caseDrive=0;
    }

    return caseDrive;
}