Sensoren auslesen/umwandeln/codieren und State Maschine

Dependencies:   mbed

Fork of StateMachine_1 by Roboshark

main.cpp

Committer:
ahlervin
Date:
2018-04-20
Revision:
4:91a9737e4821
Parent:
2:a227732e1412

File content as of revision 4:91a9737e4821:


// Main zum Testen der IR Sensoren
//V04.18
// V. Ahlers

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


AnalogIn IrRight(PC_3);
AnalogIn IrLeft (PC_5);
AnalogIn IrFront(PC_2);
float disR = 0;
float disL = 0;
float disF = 0;

float dis2R = 0;
float dis2L = 0;
float dis2F = 0;
int IrR = 0;
int IrL = 0;
int IrF = 0;
int caseDrive = 0;

IRSensor iRSensor(IrRight, IrLeft, IrFront, dis2R, dis2L, dis2F);
StateMachine stateMachine(IrR, IrL, IrF);



int main() {
 
    
    printf("\n die Distanzen sind\n");
    while(1) {
        float disR = iRSensor.readR(); // Distanz in mm
        float disL = iRSensor.readL();
        float disF = iRSensor.readF();
        dis2R = disR;
        dis2L = disL;
        dis2F = disF;
        int IrR = iRSensor.codeR();     // min Distanz unterschritten = 1
        int IrL = iRSensor.codeL();
        int IrF = iRSensor.codeF();
        int caseDrive = stateMachine.drive(); //entscheidung welcher Drive Case
        
        
        printf ("IR Right = %f \n", disR);
        printf("IR Left = %f \n",disL);
        printf("IR Front = %f\n",disF);

        wait (1.0);
    }
}