diff options
author | sicarius <devnull@localhost> | 2007-02-17 01:35:01 +0100 |
---|---|---|
committer | sicarius <devnull@localhost> | 2007-02-17 01:35:01 +0100 |
commit | 4a2ba4b7105d168932163cbd07a062fdf2ba00e9 (patch) | |
tree | 1891a3eab64be1ae1a31e1b882ad9e6ce356620e /source/AVR_Studio/Soccer/navigation.c | |
parent | 37d4d23f1dca88b6d074fb09739c9ae071551694 (diff) | |
download | rc2007-soccer-4a2ba4b7105d168932163cbd07a062fdf2ba00e9.tar rc2007-soccer-4a2ba4b7105d168932163cbd07a062fdf2ba00e9.zip |
+++ enhanced framework hardware interface
Diffstat (limited to 'source/AVR_Studio/Soccer/navigation.c')
-rwxr-xr-x | source/AVR_Studio/Soccer/navigation.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/AVR_Studio/Soccer/navigation.c b/source/AVR_Studio/Soccer/navigation.c index cbdbdc9..2698390 100755 --- a/source/AVR_Studio/Soccer/navigation.c +++ b/source/AVR_Studio/Soccer/navigation.c @@ -26,18 +26,18 @@ void Navigation::SetzeGeschwindigkeit(int nGeschwindigkeit) { // Aktualieren ohne Parameter
-void Navigation::Aktualisieren() {
+void Navigation::Aktualisieren() {
// Richtung in x und y-Kompontente zerlegen
- double y = cos(richtung); // richtung ist winkel
- double x = sin(richtung);
+ double y = cos((double)richtung*0.01745); // richtung ist winkel
+ double x = sin((double)richtung*0.01745);
// Abweichung der Ausrichtung ermitteln(als winkel)
int w = sensor.GetAusrichtung() - ausrichtung;
// Stärke der einzelnen Motoren berechnen
- double v0 = (-x-sqrt(3)*y)/2;
+ double v0 = (-x+sqrt(3)*y)/2;
double v1 = x;
- double v2 = (-x+sqrt(3)*y)/2;
+ double v2 = (-x-sqrt(3)*y)/2;
// Ausgerechnete Stärke an die Motoren übergeben
board.motor(0,(int)((double)v0*geschwindigkeit +w));
|