summaryrefslogtreecommitdiffstats
path: root/source/AVR_Studio/Soccer/sensor
diff options
context:
space:
mode:
Diffstat (limited to 'source/AVR_Studio/Soccer/sensor')
-rwxr-xr-xsource/AVR_Studio/Soccer/sensor/ballsensor.c13
-rwxr-xr-xsource/AVR_Studio/Soccer/sensor/ballsensor.h4
-rwxr-xr-xsource/AVR_Studio/Soccer/sensor/sensor.c10
-rwxr-xr-xsource/AVR_Studio/Soccer/sensor/sensor.h7
4 files changed, 25 insertions, 9 deletions
diff --git a/source/AVR_Studio/Soccer/sensor/ballsensor.c b/source/AVR_Studio/Soccer/sensor/ballsensor.c
index af9434b..8136581 100755
--- a/source/AVR_Studio/Soccer/sensor/ballsensor.c
+++ b/source/AVR_Studio/Soccer/sensor/ballsensor.c
@@ -10,12 +10,19 @@ Ballsensor::Ballsensor() {
winkel[5] = 260;
winkel[6] = 300;
winkel[7] = 330;
+
+ // Der Winkel ist erstmal 0
+ ballwinkel = 0;
}
Ballsensor::~Ballsensor() {
}
-int Ballsensor::getBallwinkel() {
+int Ballsensor::GetBallwinkel() {
+ return ballwinkel;
+}
+
+void Ballsensor::Aktualisieren() {
// Erstelle ein Array für die Sensorwerte
int sensor[NUM_BALLSENSOR];
int result = 0; // und einer Variable fürs Ergebnis
@@ -30,6 +37,6 @@ int Ballsensor::getBallwinkel() {
if(sensor[i] < current) result = i; // Ergebnis ist erstmal index
}
- // Gebe den Winkel zum index result zurück
- return winkel[result];
+ // Setze den Winkel zum index result
+ ballwinkel = winkel[result];
}
diff --git a/source/AVR_Studio/Soccer/sensor/ballsensor.h b/source/AVR_Studio/Soccer/sensor/ballsensor.h
index 5fa7f08..5190a87 100755
--- a/source/AVR_Studio/Soccer/sensor/ballsensor.h
+++ b/source/AVR_Studio/Soccer/sensor/ballsensor.h
@@ -12,11 +12,13 @@ class Ballsensor
{
private:
int winkel[NUM_BALLSENSOR];
+ int ballwinkel;
public:
Ballsensor();
~Ballsensor();
- int getBallwinkel(); // Gibt den aktuellen Winkel vom Ball zurück
+ int GetBallwinkel(); // Gibt den aktuellen Winkel vom Ball zurück
+ void Aktualisieren(); // Aktualisiert die Variable
};
#endif
diff --git a/source/AVR_Studio/Soccer/sensor/sensor.c b/source/AVR_Studio/Soccer/sensor/sensor.c
index a1730db..78326ee 100755
--- a/source/AVR_Studio/Soccer/sensor/sensor.c
+++ b/source/AVR_Studio/Soccer/sensor/sensor.c
@@ -6,10 +6,14 @@ Sensor::Sensor() :ballsensor() {
Sensor::~Sensor() {
}
+// Aktualisiert die ganzen Sachen ;)
void Sensor::Aktualisieren() {
-
+ position.Aktualisieren(); // Aktualisiere die Position
+ ballsensor.Aktualisieren(); // Aktualisiere den Ballwinkel
+ abstand.Aktualisieren(); // Aktualsiere die abstandsdaten
}
-int Sensor::getAusrichtung() {
- return 0;
+// Gebe die aktuelle Ausrichtung zurück
+int Sensor::GetAusrichtung() {
+ return position.GetAusrichtung();
}
diff --git a/source/AVR_Studio/Soccer/sensor/sensor.h b/source/AVR_Studio/Soccer/sensor/sensor.h
index afbb3a0..f3f36ad 100755
--- a/source/AVR_Studio/Soccer/sensor/sensor.h
+++ b/source/AVR_Studio/Soccer/sensor/sensor.h
@@ -3,7 +3,8 @@
#include "../hal/board.h"
#include "ballsensor.h"
-#include "../hal/maussensor.h"
+#include "position.h"
+#include "abstand.h"
#include "../global.h"
extern Board board;
@@ -12,13 +13,15 @@ class Sensor
{
private:
Ballsensor ballsensor;
+ Position position;
+ Abstand abstand;
public:
Sensor();
~Sensor();
void Aktualisieren();
- int getAusrichtung(); // Gibt die aktuelle Ausrichtung des Roboters zurück
+ int GetAusrichtung(); // Gibt die aktuelle Ausrichtung des Roboters zurück
};
#endif