x

Dependencies:   Servo ServoArm mbed

Fork of PES_PIXY_Officiall by zhaw_st16b_pes2_10

Committer:
EpicG10
Date:
Fri May 26 08:01:48 2017 +0000
Revision:
3:63da1d1fae15
Parent:
0:15a8480061e8
c

Who changed what in which revision?

UserRevisionLine numberNew contents of line
beacon 0:15a8480061e8 1 #include "Robot.h"
beacon 0:15a8480061e8 2 #include "Declarations.h"
EpicG10 3:63da1d1fae15 3
beacon 0:15a8480061e8 4
beacon 0:15a8480061e8 5 Farbsensor::Farbsensor()
beacon 0:15a8480061e8 6 {
beacon 0:15a8480061e8 7 }
beacon 0:15a8480061e8 8
beacon 0:15a8480061e8 9 Farbsensor::Farbsensor(AnalogIn* FarbVoltage)
beacon 0:15a8480061e8 10 {
beacon 0:15a8480061e8 11 init(FarbVoltage);
beacon 0:15a8480061e8 12 }
beacon 0:15a8480061e8 13
beacon 0:15a8480061e8 14 void Farbsensor::init(AnalogIn* FarbVoltage)
beacon 0:15a8480061e8 15 {
beacon 0:15a8480061e8 16 this->FarbVoltage= FarbVoltage;
beacon 0:15a8480061e8 17 }
beacon 0:15a8480061e8 18
beacon 0:15a8480061e8 19 int Farbsensor::read()
beacon 0:15a8480061e8 20 {
beacon 0:15a8480061e8 21 static int time=0;
beacon 0:15a8480061e8 22 static float messungen=0.0f;
beacon 0:15a8480061e8 23 if( time < 10 ){
beacon 0:15a8480061e8 24 messungen += FarbVoltage->read();
beacon 0:15a8480061e8 25 time++;
beacon 0:15a8480061e8 26 return -1;
beacon 0:15a8480061e8 27 }
beacon 0:15a8480061e8 28 else{
beacon 0:15a8480061e8 29 float Ufarbsensor = messungen/10.0;
beacon 0:15a8480061e8 30 Ufarbsensor = Ufarbsensor*3300;//Set the Voltage between 0mV und 3300mV
EpicG10 3:63da1d1fae15 31
beacon 0:15a8480061e8 32 messungen = 0.0f;
beacon 0:15a8480061e8 33 time = 0;
beacon 0:15a8480061e8 34 if ((Ufarbsensor > GREEN_DOWNLIMIT) && (Ufarbsensor < GREEN_UPLIMIT))
beacon 0:15a8480061e8 35 {
beacon 0:15a8480061e8 36 return GREEN;
beacon 0:15a8480061e8 37 }
beacon 0:15a8480061e8 38 else if(Ufarbsensor < RED_UPLIMIT)
beacon 0:15a8480061e8 39 {
beacon 0:15a8480061e8 40 return RED;
beacon 0:15a8480061e8 41 }
beacon 0:15a8480061e8 42 else
beacon 0:15a8480061e8 43 {
beacon 0:15a8480061e8 44 return NOBLOCK;
beacon 0:15a8480061e8 45 }
beacon 0:15a8480061e8 46 }
beacon 0:15a8480061e8 47 }
beacon 0:15a8480061e8 48
beacon 0:15a8480061e8 49 Farbsensor::operator int()
beacon 0:15a8480061e8 50 {
beacon 0:15a8480061e8 51 return read();
beacon 0:15a8480061e8 52 }