Go Down

Topic: PWM In, Pulse Out (Read 1 time) previous topic - next topic

nitromethan

Hallo,

für eine kleine Motorsteuerung muss ich folgendes Projekt umsetzen:

In den Arduino geht ein Pin mit einer PWM hinein und wird ausgewertet. An einem Ausgang soll ein Puls von 105.000hz erzeugt werden.

Nun meine Frage: Wie erzeuge ich einen Plus von 105.000hz mit dem Arduino ? Eine fertige Funktion dafür habe ich nicht gefunden!



sth77

Wie genau müssen die 105 kHz denn sein? Sollen die tatsächlich fest bleiben oder sich abhängig von der angelegten PWM ändern?
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

nitromethan

Hallo,

abhängig von der PWM. 105kHz sind das Maximum

uwefed

Ich habe nicht verstanden was Du haben willst.
Ein Impuls hat keine Frequenz sondern nur eine Dauer.
Meinst Du eine Rechteckspannung mit mindestens 105kHz?
Welchen Frequenzbereich willst Du in Abhängigkeit von dem PWM-Signal haben?

Grüße Uwe

nitromethan

Hallo,

also der Bereich ist von 1hz bis zu 105kHz - Die Motorendstufe bekommt diese Werte.

uwefed

Du beliebst zu Scherzen?

nitromethan

#6
Mar 25, 2013, 04:19 pm Last Edit: Mar 25, 2013, 04:39 pm by nitromethan Reason: 1
? Wieso ?  :P


Jedoch ist 1hz schwachsinn, sorry!

Also hier nochmal meine Denkweise:

// 6400 * 500 / 60 = 53333 hz = 500u/min
// 6400 / 60 = 106,66 hz = 1u/min

6400 = Schritte pro Umdrehung


uwefed


? Wieso ?  :P


Jedoch ist 1hz schwachsinn, sorry!

Also hier nochmal meine Denkweise:

// 6400 * 500 / 60 = 53333 hz = 500u/min
// 6400 / 60 = 106,66 hz = 1u/min

6400 = Schritte pro Umdrehung




Was ist das für ein Motor? Welche Motorendstufe hast Du?
Grüße Uwe

nitromethan

Diese Endstufe:

http://www.cnc-spezialist.de/leadshine-schrittmotortreiber-m542-p-294-1.html

Zum Motor habe ich gerade keine Angabe  :smiley-red:

uwefed

Ok, jetzt wissen wir wozu das Rechtecksignal nutze ist. Woher kommt das PWM-Signal?
Grüße Uwe

nitromethan

Aus einem RC-Empfänger, also eher PPM als PWM, den Teil habe ich allerdings schon. Wichtig ist, dass ich den Motor einmal 1u/min drehen lasse und einmal 500 u/min. Alles andere kann ich ja runterteilen.

uwefed

ok; also PPM-Signal mit einem Pulsweite von 1 bis 2 mS.
Jetzt noch was: soll die Übertragungsfunktion PPM zu fstep linear sein?
1mS 1U/min
2mS 500U/min
1,5mS 250U/min?


uwefed

Das PPM-Signal kannst Du mit
pulseIn(pin, HIGH,21000)
einlesen.
Die Ausgabe einer Frequenz ist am einfachsten mit einem Timer zu realisieren, wobei ich Dir aber nicht helfen kann; ich bin selbst nicht sattelfest bei den Timern.
Irgendjemand wird schon antworten.
Grüße Uwe

nitromethan

Wie gesagt PPM In hab ich schon, dass ist nicht das Problem. Probleme hab ich beim Output :)

Go Up