INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Map funktion bei Fernsteuerung
23.04.2018, 03:58
Beitrag #1
Map funktion bei Fernsteuerung
Guten Tag,

Ich bin noch ziemlich am Anfang meiner Arduinokenntnisse daher bekomme ich folgendes nicht hin:

Ich habe einen "Joystick" , drück ich ihn nach vor gibt er eien Wert von 118-0.
118 unbetätigt, 0 Vollgas.
ich hätte im gegenzug dazu gerne 0-255 für meinen analogWrite(h-Brücke,Motor)

Ich hab mich soweit in die map funktion reingelesen das ich mir sicher bin ich muss diese verwenden.
Aber mein Problem ist das ich so ein taugenichts im rechnen bin das es mir einfach nicht gelingt.
Könnte mir bitte jemand sagen wie ich das umrechnen muss?
Mein Ansatzt war:
void loop() {
Usb.Task();
pwm= PS4.getAnalogHat(LeftHatY);
lenkwert = PS4.getAnalogHat(RightHatX);
lenkwert = map(lenkwert, 0, 256, 0, 180);
servo.write(lenkwert); //Lenkung funktioniert

if (pwm<118){
digitalWrite (dreh1,HIGH); //Drehrichtung
digitalWrite (dreh2,LOW); //Drehrichtung
geschwval=map(pwm,118,0,0,255) //Da ist mein beschriebenes Problem
analogWrite (geschwPin,geschwval);
Serial.print(pwm);
Serial.print("\t");
}
if (pwm>139){
digitalWrite (dreh1,LOW);
digitalWrite (dreh2,HIGH);
geschwval=map(pwm,139,255,0,255);
analogWrite (geschwPin,geschwval);

}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 08:04
Beitrag #2
RE: Map funktion bei Fernsteuerung
Code:
if (pwm<118){
  digitalWrite (dreh1,HIGH); //Drehrichtung
  digitalWrite (dreh2,LOW); //Drehrichtung
  geschwval=map(pwm,118,0,0,255) //Da ist meiner Meinung nach kein Problem.
  analogWrite (geschwPin,geschwval);
  Serial.print(pwm);
  Serial.print("\t");
} else if (pwm>139){
  digitalWrite (dreh1,LOW);
  digitalWrite (dreh2,HIGH);
  geschwval=map(pwm,139,255,0,255);
  analogWrite (geschwPin,geschwval);
} else analogWrite (geschwPin,0);
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 11:03
Beitrag #3
RE: Map funktion bei Fernsteuerung
Setze bitte Deinen kompletten Sketch in Codetags ins Forum. Wie das geht steht hier.
Beschreibe bitte auch Dein Problem: War erwartest Du und was passiert(nicht).

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 11:52
Beitrag #4
RE: Map funktion bei Fernsteuerung
Zitat:pwm= PS4.getAnalogHat(LeftHatY);

(Größerer) Schönheitsfehler (neben den Fehlenden Code-Tags): in der Variable steckt nicht der PWM-Wert, sondern der analoge Eingangswert. Ein Variablenname wie "JoystickSpeedInput" wäre passender.

Zitat: Serial.print(pwm);
Serial.print("\t");

Mach mal die Serial.print an das Ende deiner if/else-Abfragen. Gib dabei sowohl den Eingangswert wie auch den Ausgangswert aus. Und Covus hats auch schon angedeutet: du musst auch definieren, was zwischen den Eingangswerten 118 und 139 passieren soll. Im Moment ist das nämlich: "nichts". Und das heißt: "keine Änderung des bisherigen Standes".
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 12:15
Beitrag #5
RE: Map funktion bei Fernsteuerung
@TO: Warum erstellst Du ein Crossposting im anderen Forum und gibst nicht erst mal hier eine vernünftige Antwort?
Ist das ein Zeichen von Ignoranz oder Arroganz?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 12:21
Beitrag #6
RE: Map funktion bei Fernsteuerung
Danke Corvus, danke Da_user das es nochj Leute gibt die Helfen statt zu meckern.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 12:37 (Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2018 12:38 von da_user.)
Beitrag #7
RE: Map funktion bei Fernsteuerung
(23.04.2018 12:21)marsmännchen schrieb:  Danke Corvus, danke Da_user das es nochj Leute gibt die Helfen statt zu meckern.

Du, mich stört es auch, dass du den code nicht in die Code-Tags gesetzt hast. Er ist einfach schwerer zu lesen und damit fällt es einem schwerer dir zu helfen. Aber du wurdest jetzt einmal darauf hingewiesen, und dass soll dann bitte auch reichen. Und das kann man von zwei Seiten her sehen...

Auch Crosspostings sind alles andere als nett...

Denk dran: du willst was von uns...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.04.2018, 12:42 (Dieser Beitrag wurde zuletzt bearbeitet: 23.04.2018 12:44 von hotsystems.)
Beitrag #8
RE: Map funktion bei Fernsteuerung
(23.04.2018 12:21)marsmännchen schrieb:  Danke Corvus, danke Da_user das es nochj Leute gibt die Helfen statt zu meckern.

Und ein meckern ist es schon garnicht, sondern ein Hinweis, wie man sich im Forum verhält damit man von den freiwilligen Helfern (in deren Freizeit) auch eine Hilfe bekommt.

Edit:
Oder kennt man auf dem Mars keine Benimmregeln ? Wink

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Funktion aufrufen senseman 14 451 09.02.2020 21:42
Letzter Beitrag: senseman
  Funktion random() Bau3r 1 153 02.02.2020 16:23
Letzter Beitrag: Tommy56
  Funktion mit Schieberegister Bau3r 3 181 02.02.2020 12:04
Letzter Beitrag: Tommy56
  array aus Methode/Funktion sepp01 3 934 14.10.2018 19:16
Letzter Beitrag: Tommy56
  Funktionen mit der millis() Funktion Zis 3 2.132 16.05.2018 21:50
Letzter Beitrag: Tommy56
  Millis verzögern Funktion? malsehen 14 3.393 29.03.2018 21:47
Letzter Beitrag: hotsystems
  Eine Funktion verlassen Jan5663 8 4.210 18.12.2017 13:49
Letzter Beitrag: Chopp
  switch case funktion ausser halb loop ??? huber5093 13 4.284 12.04.2017 15:26
Letzter Beitrag: Tommy56
  Funktion mit Parameterübergabe - u8g torsten_156 8 3.462 22.06.2016 18:53
Letzter Beitrag: Pit
  Funktion in Loop einmalig ausführen Haustechno 4 6.336 09.03.2016 22:43
Letzter Beitrag: Haustechno

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste