inkl Line Sensor

Dependencies:   mbed

Fork of Roboshark_V2 by Roboshark

Committer:
ahlervin
Date:
Thu Apr 26 05:58:07 2018 +0000
Revision:
5:e715d157ced5
Parent:
0:6d0671ae4648
bug fix

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jacqueline 0:6d0671ae4648 1
Jacqueline 0:6d0671ae4648 2 // Statemachine
Jacqueline 0:6d0671ae4648 3 //V04.18
Jacqueline 0:6d0671ae4648 4 // V. Ahlers
Jacqueline 0:6d0671ae4648 5
Jacqueline 0:6d0671ae4648 6 #include <mbed.h>
Jacqueline 0:6d0671ae4648 7 #include "StateMachine.h"
Jacqueline 0:6d0671ae4648 8
Jacqueline 0:6d0671ae4648 9 using namespace std;
Jacqueline 0:6d0671ae4648 10
Jacqueline 0:6d0671ae4648 11 StateMachine::StateMachine(int IrR, int IrL, int IrF) : IrR(IrR), IrL(IrL), IrF(IrF) {}
Jacqueline 0:6d0671ae4648 12
Jacqueline 0:6d0671ae4648 13 StateMachine::~StateMachine (){}
Jacqueline 0:6d0671ae4648 14
Jacqueline 0:6d0671ae4648 15 int StateMachine :: drive() {
Jacqueline 0:6d0671ae4648 16
Jacqueline 0:6d0671ae4648 17
Jacqueline 0:6d0671ae4648 18
Jacqueline 0:6d0671ae4648 19 if((IrR==0) && (IrL==0) && (IrF==1)){
Jacqueline 0:6d0671ae4648 20 caseDrive = 2; // Folge: 90 Grad nach rechts drehen
Jacqueline 0:6d0671ae4648 21 }else if ((IrR==0) && (IrL==1) && (IrF==0)){
Jacqueline 0:6d0671ae4648 22 caseDrive = 2; // Folge: 90 Grad nach rechts drehen
Jacqueline 0:6d0671ae4648 23 }else if ((IrR==0) && (IrL==1) && (IrF==1)){
Jacqueline 0:6d0671ae4648 24 caseDrive = 2; // Folge: 90 Grad nach rechts drehen
Jacqueline 0:6d0671ae4648 25 }else if ((IrR==1) && (IrL==0) && (IrF==0)){
Jacqueline 0:6d0671ae4648 26 caseDrive = 1; // Folge: geradeaus fahren
Jacqueline 0:6d0671ae4648 27 }else if ((IrR==1) && (IrL==0) && (IrF==1)){
Jacqueline 0:6d0671ae4648 28 caseDrive = 3; // Folge: 270 Grad nach rechts drehen
Jacqueline 0:6d0671ae4648 29 }else if ((IrR==1) && (IrL==1) && (IrF==0)){
Jacqueline 0:6d0671ae4648 30 caseDrive = 1; // Folge: geradeaus fahren
Jacqueline 0:6d0671ae4648 31 }else if ((IrR==1) && (IrL==1) && (IrF==1)){
Jacqueline 0:6d0671ae4648 32 caseDrive = 4; // Folge: 180 Grad nach rechts drehen
Jacqueline 0:6d0671ae4648 33 }else{ caseDrive=0;
Jacqueline 0:6d0671ae4648 34 }
Jacqueline 0:6d0671ae4648 35
Jacqueline 0:6d0671ae4648 36 return caseDrive;
Jacqueline 0:6d0671ae4648 37 }