Forum: Mikrocontroller und Digitale Elektronik PWM Signale überwachen


von Thomas (Gast)


Lesenswert?

Hallo Zusammen,

ich habe ein nicht ganz alltägliches Problem und versuche es einmal hier 
zu umreisen.
Ich muss 2 x 8 PWM Kanäle vergleichen und bei Abweichungen über 60% über 
mehr als 1 Sekunde einen Ausgang dauerhaft (bis zum mechanischen bzw. 
elektrischen Reset über Taster) auf TTL High bringen.

Überwacht werden müssen PWM Signale zwischen 1 und 2,5 ms Sie müssen 
mindestens 1,050 und maximal 2,25ms entsprechen.
Verglichen werden müssen:

PWM aus Controller1 Ausgang1 mit PWM aus Controller2 Ausgang1
PWM aus Controller1 Ausgang2 mit PWM aus Controller2 Ausgang2
PWM aus Controller1 Ausgang3 mit PWM aus Controller2 Ausgang3
PWM aus Controller1 Ausgang4 mit PWM aus Controller2 Ausgang4
PWM aus Controller1 Ausgang5 mit PWM aus Controller2 Ausgang5
PWM aus Controller1 Ausgang6 mit PWM aus Controller2 Ausgang6
PWM aus Controller1 Ausgang7 mit PWM aus Controller2 Ausgang7
PWM aus Controller1 Ausgang8 mit PWM aus Controller2 Ausgang8

sollte z.B. der Ausgang 3 aus Controller 1 im Signal mehr als 60% über 
oder unter dem entsprechenden Ausgangssignal(3) von Controller 2 liegen 
oder das Signal ausserhalb der erlaubten Grenzen (1,05 und 2,25ms) 
liegen brauche ich ein Signal entweder TTL high oder Low um eine Warnung 
(LED) aufleuchten zu lassen.

Frage, mit welchem uC kann man das verwirklichen (geht auch ein kleiner 
Arduino??) wer kann mir beim programmieren behilflich sein.

Ich danke Euch sehr!

VG Thomas

von Einer K. (Gast)


Lesenswert?

Thomas schrieb:
> geht auch ein kleiner
> Arduino??

Vermutlich: Ja!
Wenn keine ISR in die Quere kommen, ist pulseIn() auf ca 4µs genau.
Evtl. ein paar mal messen und die Ausreißer entsorgen.

> PWM Signale
PWM?
Nicht eher PPM?

von Thomas (Gast)


Lesenswert?

Hey,

nein es sind pulse wide modulation nicht pulse pause modulation.

kannst Du evtl. bei der Programmierung helfen? welchen Arduino nimmt man 
da?

Danke! erstmal

von Einer K. (Gast)


Lesenswert?

Einen, mit genügend digitalen Pins.

Ein Uno hat z.B. 14 Digitale und noch 5 Analoge, die man mit nutzen 
kann.
Wobei 0 und 1 eigentlich für den seriellen Datenverkehr gedacht sind. 
Und von daher frei bleiben sollten.

Thomas schrieb:
> kannst Du evtl. bei der Programmierung helfen?
Ich kann mal drüber schauen, wenn du damit nicht fertig wirst.

von Thomas (Gast)


Lesenswert?

Tja und genau da hapert es bei mir.. ich kann es einfach nicht, bin 
wahrscheinlich zu alt das zu begreifen, obwohl ichs gerne könnte.. muss 
nicht kostenlos sein die Hilfe. Gibt nur nichts das ich fertig kaufen 
könnte. Hab gehofft hier kann mir jemand (auch gegen eine finanzielle 
Zuwendung) helfen..

Thomas

von Einer K. (Gast)


Lesenswert?

Thomas schrieb:
> bin
> wahrscheinlich zu alt das zu begreifen,

Wer will, findet Wege, wer nicht will, Gründe.

von Thomas (Gast)


Lesenswert?

Richtig.... aber doch auch wieder nicht, manchmal hat der Tag einfach 
mehr Stunden nötig, um den Schreibtisch wieder leerer zu bekommen, 
trotzdem Danke!

von Thomas E. (thomase)


Lesenswert?

Thomas schrieb:
> Richtig.... aber doch auch wieder nicht, manchmal hat der Tag einfach
> mehr Stunden nötig, um den Schreibtisch wieder leerer zu bekommen,
> trotzdem Danke!

Was erwartest du?

Du suchst einen Hobbyprogrammierer, der dir hilft. Schildere dein 
Anliegen so, daß es auch jemanden anspricht, der sich dafür 
interessiert.

Thomas schrieb:
> Überwacht werden müssen PWM Signale zwischen 1 und 2,5 ms Sie müssen
> mindestens 1,050 und maximal 2,25ms entsprechen.

Das riecht doch nach Servo.

Also komm nicht mit einer abstrakten Darstellung, sondern schildere dein 
tatsächliches Problem. Servo-Experten gibt es hier genug. Und da du 
nicht der einzige bist, der in seinen Quadcopter einen Autopiloten 
einbauen möchte, findest du vielleicht sogar jemanden, der die Lösung 
dafür in der Schublade hat und sich darüber freute, wenn nicht nur sein 
Hubschrauber, sondern auch deiner damit flöge.

von Theor (Gast)


Lesenswert?

@ Thomas
Nun, zumindest für mich bleiben ein paar Frage offen, auf welche sich 
die Antworten entweder aus der Kenntnis der Anwendung ergeben oder im 
einzelnen gestellt werden müssen. Je nach den Antworten erschliessen 
sich einige Möglichkeiten zur Realisierung und verschliessen sich 
andere.

Z.B.

1. Wie hoch ist die PWM-Frequenz? Aus den Angaben von max 2,5ms lässt 
sich nur schliessen, dass die Frequenz geringer als 1/2,5ms = 400Hz sein 
muss. Zwar spielt das für den Vergleich zweier PWM-Signale allein keine 
entscheidende Rolle, aber ich denke, für den gleichzeitigen Vergleich 
von Acht PWM-Signalen schon.

2. Sind die PWM-Signale synchron? In dem Sinne, dass etwa die steigende 
Flanke zweier Signale gleichzeitig auftritt. Sind jeweils zwei zu 
vergleichende Signale synchron? Das würde eine relativ unaufwendige 
Möglichkeit eröffnen.

3. Wie genau muss der Vergleich sein? Und, wo, wenn man zwei Flanken 
miteinander vergleicht liegt das Toleranzfeld in Relation dazu?

4. Welche Verzögerungen in Beziehung zur PWM-Zykluszeit sind zulässig? 
D.h. wie lange darf es maximal dauern, bis das Ausgangssignal anzeigt, 
dass eine Abweichung vorliegt? Und wie lange darf es dauern, bis das 
Signal wieder zurückgenommen wird?

5. Was ist die Dynamik des PWM-Signales? Wie schnell ändert sich das 
Puls-Pause Verhältnis?


Gut. Das sind technisch sehr detaillierte Fragen.
Man kann das, wie oben erwähnt, auch anders und auf die Anwendung 
bezogen, fragen.

Wovon, was, auf welche Weise und zu welchem Zweck wird da mit PWM 
gesteuert? Wirkt eine Regelung?
Es muss an dieser Stelle offen bleiben, ob die Antworten auf diese Frage 
alle sinnvollen technisch detaillierten Frage, wie oben beispielhaft 
genannt, beantworten.
Es muss auch offen bleiben, ob die Antwort wiederum die Frage sinnvoll 
erscheinen lässt, ob man das nicht auch anders machen kann.
Und es bleibt offen, ob in dieser Hinsicht überhaupt eine 
Wahlmöglichkeit besteht.


Ich denke, dass ich Dir helfen kann, das Problem zum einen systematisch 
anzugehen und zum anderen aus einer Vielzahl von möglichen Lösungen eine 
oder mehrere vorzuschlagen und, falls Du es wünschst, zu realisieren.

Falls Dich das interessiert, schreibe mir an: mugijepajaxe@dis card 
mail.de
(Leerzeichen bitte entfernen).

von Thomas (Gast)


Lesenswert?

Hallo Thomas,

sorry ich hab versucht das so gut wie möglich zu beschreiben was ich 
brauche, ja es sind Servosignale hat aber nichts mit einem Autopiloten 
zu tun sondern mit der Möglichkeit zwei Autopiloten zu überwachen um 
Fehler zu erkennen und die Betriebssicherheit zu gewährleisten.

VG

Thomas

von Harald W. (wilhelms)


Lesenswert?

Thomas schrieb:

> ja es sind Servosignale

...und kommen die aus einer Standardfernsteuerung? Dann werden die
Kanäle typischerweise nacheinander gesendet. Man könnte sie also
"verunden" und  braucht dann nur einen Eingang am µC. Dieser Thread
ist mal wieder ein typisches Beispiel dafür, das eine unvollständige
Beschreibung des TEs für viel unnötige Lese- und Schreibarbeit sorgt.

: Bearbeitet durch User
von Thomas (Gast)


Lesenswert?

Hallo Harald,

nein sie kommen nicht aus einer Fernsteuerung, da sind es PPM Signale, 
sie kommen aus zwei Flugsteuerungen mit je 8 einzelnen Ausgängen, die 
Schaltung die auf den Impuls folgt schaltet zwischen den Beiden um.

VG Thomas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.