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
PWM-Signal auf anderen Pin übertragen
03.03.2015, 19:59
Beitrag #9
RE: PWM-Signal auf anderen Pin übertragen
(03.03.2015 19:57)Ard_Gast schrieb:  Indem ich den Wertebereich (0 bis 1560) auf 0 bis 255 map. Jedoch lief der Motor bereits ohne das "Gaspedal" zu berühren. Also es hängt grade noch an der Umwandlung.
Der Wertebereich fängt auch erst bei etwa 1000 an. Schreib Dir mal einen Sketch, der Dir die Wertebereiche für die Knüppelstellungen ermittelt.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.03.2015, 20:47 (Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2015 06:35 von dqb312.)
Beitrag #10
RE: PWM-Signal auf anderen Pin übertragen
Hallo,

für die Ausgabe eines Servosignales gibt es die Library "servo.h".
Zur Ausgabe kann man einen Winkelwert (0 bis 180 Grad) oder den Millisekundenwert benutzen. In deinem Fall wären die (edit) Mikrosekunden passend, da du die Eingangswerte im gewünschten Bereich einfach durchreichen kannst.

Gruß Rainer
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.03.2015, 21:00
Beitrag #11
RE: PWM-Signal auf anderen Pin übertragen
(03.03.2015 20:47)dqb312 schrieb:  für die Ausgabe eines Servosignales gibt es die Library "servo.h".
Zur Ausgabe kann man einen Winkelwert (0 bis 180 Grad) oder den
Mit dem Servo gibt's doch gar kein Problem, er verwendet schon die Library.

Zitat:Millisekundenwert benutzen.
Es sind Mikrosekunden.

Zitat:In deinem Fall wären die Millisekunden passend, da du die Eingangswerte im gewünschten Bereich einfach durchreichen kannst.
Er kann das in dem Fall nicht einfach durchreichen.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.03.2015, 10:29
Beitrag #12
RE: PWM-Signal auf anderen Pin übertragen
Hallo Zusammen,

ich scheitere immer noch an dem Problem ein PWM-Signal auf einen anderen Pin zu übertragen.
Inzwischen habe ich das PWM-Signal über den Interrupt-Pin (Pin 3 -> Arduino Mega 2560) mit einer RCReceive.h Library eingelesen. Das funktioniert auch soweit. Das Signal hat ein Wertebereich von 47 (Bremsen) bis 215 (Gas) und 130 ist Neutralstellung. Auch habe ich überprüft, dass der Output ein PWM-Pin ist (Pin 5 -> Arduino Mega 2560). Mit dem dazugehörigen Befehl analogWrite() will es aber einfach nicht klappen.
Hat zufällig jemand das gleiche Problem und bereits ein Sketch dafür programmiert? Oder sieht jemand meinen Fehler?! oder hat das jemand mit pulsIn() hingekriegt?

Anbei der Sketch für das PWM-Signal auslesen und übertragen.

Vielen Dank im Voraus!

#include "makros.h"
#include "debug.h"
#include "RCReceive.h"


// LEDs: Pins: VL: 45 VR: 27 HL: 47 HR: 29

int led[] = { 45, 27, 47, 29 };

// Variablen:

const byte PWM_Eingang = 3; //Interrupt-Pin

RCReceive rcReceiver_RC;

int Stellmotor = 5; // Digital PWM-Pin

int x = 0;
int value = 0;


void setup()
{

rcReceiver_RC.attachInt(PWM_Eingang);

Serial.begin(9600);
Serial.println("PWM-Ueberwachung");
Serial.println("Serial Monitor gestartet");

// Initialisierung von LED-Pins als Output

pinMode(led[0], OUTPUT);
pinMode(led[1], OUTPUT);
pinMode(led[2], OUTPUT);
pinMode(led[3], OUTPUT);

}


void loop(void) {


if (rcReceiver_RC.hasNP() && !rcReceiver_RC.hasError()) {
byte value = rcReceiver_RC.getValue();
//Serial.println(value);


//Bremsen
if (value > 47 && value < 130) {
digitalWrite(led[1], HIGH);

}

//Gas (Stellmotor -> Pin-Ausgang 5)
if (value > 130 && value < 215) {
digitalWrite(led[2], HIGH);
analogWrite(Stellmotor, map(value, 130, 215,0 ,255));
x=analogRead(Stellmotor);
Serial.println(value);
Serial.println(x);

}
//Neutral
if (value == 130) {
digitalWrite(led[3], HIGH);
}
}
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.03.2015, 11:54
Beitrag #13
RE: PWM-Signal auf anderen Pin übertragen
Hi,
was genau klappt denn nicht?
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.03.2015, 12:01
Beitrag #14
RE: PWM-Signal auf anderen Pin übertragen
Die übertragenen Werte stimmen nicht.
Ich erhalte immer nur einen Wert (309), egal welche Knüppelstellung ich habe.

Gruß
Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.03.2015, 12:08
Beitrag #15
RE: PWM-Signal auf anderen Pin übertragen
Hi,
es wäre gut, wenn man nicht so viel raten müsste, aber ich probier's mal. Ich nehme mal an, dass Du von "x" redest:
Code:
analogWrite(Stellmotor, map(value, 130, 215,0 ,255));
x=analogRead(Stellmotor);
Serial.println(value);
Serial.println(x);
analogWrite produziert ein PWM-Signal an einem Ausgang, während analogRead ein analoges Signal zwischen 0 und 5V (normalerweise) an einem Eingang erwartet. Das passt nicht zusammen. Mit anderen Worten: der Wert, den analogRead hier liefert ist mehr oder weniger Zufall und sagt gar nichts aus.
Ob das ganze funktioniert kannst Du so nicht ermitteln.

Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.03.2015, 12:23
Beitrag #16
RE: PWM-Signal auf anderen Pin übertragen
Im Anhang sind die verwendeten Pin-Anschlüsse und eine Übersicht über den Empfänger.


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  I2C Daten übertragen Gandalf 3 214 04.11.2016 13:20
Letzter Beitrag: hotsystems
  PWM Signal imitieren Marc2014 5 190 15.10.2016 11:34
Letzter Beitrag: Binatone
  Temperatur mit nrf24 übertragen jgrothe 17 660 09.09.2016 14:01
Letzter Beitrag: jgrothe
  PWM-Signal Ben-g 9 846 21.04.2016 13:09
Letzter Beitrag: Ben-g
  433 Mhz Signal von Garagentor Fernbedieung einlesen Much 6 813 07.02.2016 10:45
Letzter Beitrag: Binatone
  Datei von SD an anderen Arduino senden ProgrammierTier 1 541 02.02.2016 09:05
Letzter Beitrag: hotsystems
  DMX Signal mit Arduino empfangen, aber wie? mat21his 4 663 28.01.2016 16:20
Letzter Beitrag: ardu_arne
  PWM-Signal PC-Lüfter scritch 1 433 03.01.2016 21:23
Letzter Beitrag: Bitklopfer
  Anfängerhilfe: Piezo-Signal auslesen/kopieren Koregan 9 891 31.12.2015 08:40
Letzter Beitrag: Bitklopfer
  Ir Signal bei High gronph 7 803 01.11.2015 18:49
Letzter Beitrag: gronph

Gehe zu:


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