Und noch einmal Begriffsverwirrung: Bit-Zahl Auflösung

Hägar

User
Nachdem ich Euch schon zum Thema Latenzzeit und Framerate gefordert (und sachkundige Antwort bekommen:)) habe, hier noch die Bitte um Klarstellung der verschiedenen im Umlauf befindlichen Angaben zur Auflösung und Bit-Zahl:

Beispielsweise bei Futaba und Spektrum der neueren Generation findet man Angaben zur verbesserten Auflösung mit 2048 bit statt (üblicher?) 1024 bit.

Diese Zahlenangaben passen augenscheinlich überhaupt nicht zusammen mit den Zahlenwerten anderer Hersteller:

MPX gibt für M-Link eine Auflösung von 12 bit (3872 Schritte) an. EZC gibt für sein 2.4GHz-System eine Auflösung von 15 bits (32768 Schritte) an. Usw, usw.

Offenbar vergleiche ich hier Äpfel mit Birnen. Kann bitte jemand Licht ins Dunkel bringen?

Gruß,
Stefan.
 
2^Bit-Anzahl => Stufen

10 bit => 1024 Stufen
11 bit => 2048 Stufen
12 bit => 4096 Stufen
...

Futaba und Spektrum verwechseln demnach wohl Bit und Stufen. :)

Wie MPX auf ihre krumme Anzahl kommt wissen sie wohl hoffentlich selber.
 

MalteS

User
Hi,

beim Steuern ist das was deine Hand, bzw. das Poti in deinem Sender liefern ist ein analoger Wert für die Position des Knüppels. Will sagen: In Theorie es gibt unendlich viele Knüppelstellungen. Nehmen wir mal an du bekommst also -1 (links) bis 1 (rechts). Mitte ist bei 0. Du steuerst nach rechts und hast 0.00113214

Bei einer digitale Übertragung kann man aber nur eine endliche Zahl von Werten übertragen. Man digitalisiert (quantisiert) also. Je mehr bits desto genauer kann man sich dieser unendlichen Zahl nähern.
10 Bit -> 1024 Schritte
11 Bit -> 2048 Schritte
12 Bit -> 4096 Schritte (wie die von dir erwähnte MPX Zahl zustandekommt kann ich nicht sagen)
15 Bit -> 32768 "

Was heist das:
Die Zahl kann man bei 10 Bit mit 1/512 = 0.0019 als kleinstem Sprung übertragen. Zwischen 0 und 0.0019 gibt es keinen Wert. Was geschieht also mit der Zahl von oben? Bei der Digitalisierung entsteht ein Fehler. Je mehr Bits man verwendet desto kleiner wird der Fehler zwischen dem was analog vorhanden war und dem was übertragen wird.

Allerdings:
Muss eine höhere Genauigkeit an anderer Stelle auch wieder in Mechanische Bewegung umgesetzt werden. Hier ist manchmal zuviel Genauigkeit gar nicht erwünscht da Stromverbrauch und evtl. Schwingneigung dann zunehmen. M.E. ist man mit 11 oder 12 Bit heute gut bedient. 15Bit halte ich für Marketing.

Gruß
Malte
 
Wenn man von 90° Servogesamtweg ausgeht und ein Servoruderhorn von 1cm annimmt sind das circa:

sin(90°/512) * 10mm = 3/100mm. :)

Alles über 1024 bit ist definitiv albern, da kann einem die Werbung noch so viel erzählen.
 
Es gibt halt Hersteller, die geben echte Zahlen an, und es gibt Hersteller die geben theoretische Zahlen an.

Beispiel theoretisch werden 2 byte übertragen = 256 * 256 schritte = 65536 = 16 bit aber der Sender gibt nur 1024 her , also alles lug und trug!

Am besten man misst es selber!
 

The Hun

User gesperrt
Meist bezieht sich der Werbetext auch nur auf den A/D-Wandler. Wie es mit dem Rest aussieht, ist unbekannt.

Man kann also Fragen, ob ein JR 4014 Servo, angesteuert durch eine alte mc-20 mit 512 Schritten, ruckelt oder nicht. Wenn ja, macht ein 1024 System Sinn.
 

Hägar

User
@all: Zunächst einmal vielen Dank für Eure zahlreichen engagierten Antworten.

Allerdings gehen die meisten Antworten leider an der Kernfrage vorbei. Beispiele:
2^Bit-Anzahl => Stufen
10 bit => 1024 Stufen...
...Die Zahl kann man bei 10 Bit mit 1/512 = 0.0019 als kleinstem Sprung übertragen. Zwischen 0 und 0.0019 gibt es keinen Wert. Was geschieht also mit der Zahl von oben? Bei der Digitalisierung entsteht ein Fehler. Je mehr Bits man verwendet desto kleiner wird der Fehler zwischen dem was analog vorhanden war und dem was übertragen wird.
Das Prinzip "2^Bit-Anzahl => Stufen" und der daraus folgenden Restfehler war mir durchaus klar und gar nicht hinterfragt. Aber wie passt das mit den Angaben von Futaba und Spektrum zu 2048 bit zusammen??? Das würde ja einer rechnerischen Auflösung von 3,2e616 entsprechen !?!?

Die versteckte Antwort liegt vielleicht in diesem Satz:
Futaba und Spektrum verwechseln demnach wohl Bit und Stufen. :)
Das wäre plausibel. Oder gibt es irgend ein denkbares Szenario, wo 2048 bit (nicht Stufen!) eine Rolle spielen?

In diesem Zusammenhang, auch wenn es nur indirekt mit meiner Eingangsfrage zusammen hängt:

Wobei ein Servo vielleicht 512 Schritte auflöst. Der Rest ist Marketing ;)
...Alles über 1024 bit ist definitiv albern, da kann einem die Werbung noch so viel erzählen.
Meine alte MPX3030 habe ich auf 2.4GHz aufgerüstet. Vorher wie nachher war die tatsächlich am Servo ankommende Auflösung subjektiv gefühlt ausreichend, solange die entsprechenden Servos einzeln angesteuert sind. Wenn aber komplizierte Mischer ins Spiel kommen, sieht die Sache anders aus. Da kann man nicht mehr jede Trimmraste an einer Servobewegung wiedererkennen.

Kann es sein, dass hier ein Auflösungsproblem vorliegt? Erfordern programmierte Mischer höhere interne Auflösungen, damit man am Servo tatsächlich die realen 512 oder 1024 (oder welche servorelevante Zahl auch immer) Schritte wiederfindet?

Gruß,
Stefan
 

MeiT

User
Hallo,

wie man auf krumme Stufen wie bei MPX kommt, kann man am R607 von Futaba sehen:

moin,

nachgemessen am R607:

max_servopuls_r607.JPG


min_servopuls_r607.JPG


spread_servopuls_r607-2.JPG


spread_servopuls_r607-3.JPG



Fernsteuerung war FF7 mit R607FS
Messung an Kanal 3 des R607.

+140, trimmung voll, servomitte voll plus
größter Impuls der überhaupt einstellbar ist und übertragen wird ist 2119µs.

-140, trimmung voll, servomitte voll minus
kleinster Impuls der überhaupt einstellbar ist und übertragen wird ist 921,9µs.

macht eine differenz von 1197,1us.

kanal eingestellt auf +-1%. jetzt kann der kleinste Schritt angesteuert werden.

ganz interessant ist, dass es so wie es aussieht zwei verschiedene kleinste Schritte gibt.
3 schritte von 880ns und ein schritt von 1320ns.
das ganze so wie es aussieht regelmässig.

3 zu 1 ergibt eine durchschnittliche Schrittweite von 990ns.

1197,1us/990ns = ca. 1209

also rund 1209 Schritte

messfehlerbehaftet stimmt also die Aussage mit 1200 Schritten von robbe

grüße

Grüße
 

onki

User
Hallo Stefan

Um mal etwas klarzustellen. Es ist sicherlich theoretisch möglich, Informationen mit 2048 bit zu übertragen, dann ist aber schluß. Ob du das Ende der Übertragung miterleben kannst ist fraglich, da es eine ziemlich lange Übertragung wird, egal wie schnell das ganze mit heutigen Mitteln von Statten geht.
Moderne PCs arbeiten gerade mal mit einem 64 bit breiten Bus und können astronomisch große Speichermengen damit bedienen (zumindest aus heutiger Sicht).

Es gibt auf diesem Planeten keine Hardware wie ADCs, das sind die Teile die aus Analog Digital machen, bzw. DACs die das digitale wieder analogisieren, die mit 2048 bit zurechtkommen. Das mit 2048 Bit ist absoluter Quatsch.
In der Praxis gängig und noch bezahlbar sind max. 24 Bit DAC bzw. ADC, die braucht im Modellbausektor aber niemand.
Wie schon gesagt liegt der brauchbare Bereich bei 512 (9 Bit) bzw. 1024 (10 Bit) Schritten Auflösung.
Die Sache mit den Mischern ist aus meiner Sicht nicht so tragisch, da Sender intern mit %Werten rechnen sollten und dann erst bei der Ausgabe in die Schritte umrechnet.

Das begrenzende Glied wird immer der Knüppel (bzw. der Pilot) und das Servo sein. Und da reichen die oben genannten Grenzen mehr als üppig aus.
Wenn ich mir so manche Ruderanlenkung ansehe, sind da oft 2 Bit Auflösung schon ausreichend:)
Jedes Mehr belegt nur unnötig Bandbreite.

Gruß

Onki
 
Die Sache mit den Mischern ist aus meiner Sicht nicht so tragisch, da Sender intern mit %Werten rechnen sollten und dann erst bei der Ausgabe in die Schritte umrechnet.

Ganz so ist es nicht. Ein paar zusätzliche Bits bei der Berechnung sind da schon sinnvoll, damit es nicht zu unnötigen Auflösungsverlusten kommt. Immerhin werden da doch einige Faktoren hintereinander in die Werte hineinmultipliziert (Knüppelweg, 1-n Mischer hintereinander, Differenzierungen, Servoweg, ...) Wenn die Funken intern mit 16 bit rechnen, ist das allerdings ausreichend.

Oliver
 
Jeder nicht all zu popelige uC ist in der Lage schnell genug in Gleitkommazahlen zu rechnen.

Am Ende wird dann wieder in Fixkomma konvertiert.

Alles andere wäre wirklich komisch.
 

Hägar

User
...Um mal etwas klarzustellen. Es ist sicherlich theoretisch möglich, Informationen mit 2048 bit zu übertragen, ... Ob du das Ende der Übertragung miterleben kannst ist fraglich, ...
Hi Onki, klare Worte sind immer gut:cool:. Halten wir also fest: Die Herstellerangaben (Futaba, Spektrum) von 2048 bit gehören in den Bereich der Utopie. Es müssen wie weiter oben schon angedeutet 2048 Schritte entsprechend 11 bit gemeint sein. Damit dürfte dieser Punkt erledigt sein.
...Wie schon gesagt liegt der brauchbare Bereich bei 512 (9 Bit) bzw. 1024 (10 Bit) Schritten Auflösung.
Das begrenzende Glied wird immer der Knüppel (bzw. der Pilot) und das Servo sein. Und da reichen die oben genannten Grenzen mehr als üppig aus.
Wenn ich mir so manche Ruderanlenkung ansehe, sind da oft 2 Bit Auflösung schon ausreichend:)
Jedes Mehr belegt nur unnötig Bandbreite.
Die Sache mit den Mischern ist aus meiner Sicht nicht so tragisch, da Sender intern mit %Werten rechnen sollten und dann erst bei der Ausgabe in die Schritte umrechnet.
Ich behaupte nicht das Gegenteil, würde obige Aussage aber gerne doch hinterfragen. Ein paar einfache Überlegungen:
Wenn das limitierende Element die Auflösung des Servos ist, dann sollte die Funke eine Auflösung liefern, die besser als diejenige des Servos ist. Im oben zitierten Fiala-Link ist von Servo-Auflösungen irgendwo zwischen 512 und 1024 Schritten die Rede, in seltenen Fällen auch besser. Wäre also gut, wenn am Empängerausgang mindestens 1024 Schritte ankämen.

Jetzt meine eigene Beobachtung, die ich nicht quantifizieren kann: Bei einigen meiner Flugmodelle (Hallen-Schockies, Outdoor-3D-Flieger) ohne Stabilität oder sogar mit leichter Instabilität um die Querachse wird es am Höhenruder heikel. Insbesondere wenn mehr als +/- 60° Ausschlag anliegen. Da entscheidet jede Raste des Trimmschiebers zwischen gut und nicht mehr so gut. Da bin ich dann heikel, was Spiel im Gestänge und fehlende Servoauflösung betrifft.

Und jetzt kommt meine Grübelei zum Thema Mischer ins Spiel. Wenn ich wild Höhe/Seite/2xQuer für die Kompensation unerwünschter Kopplungen mische, dann habe ich halt subjektiv das Gefühl (nicht nachgemessen), dass da irgenwo Auflösung verloren gegangen ist.

Mag ja sein, dass am Output 1024 Schritte ankommen. Aber das nützt nicht viel, wenn der Input geringer aufgelöst ist. Ich denke da an Fehlerverkettung und Fehleraddition, die in komplexen Systemen durchaus eine erhebliche Größenordnung annehmen kann. Keine Ahnung, ob das auch in der mir fremden Welt der RC-bits&bytes so ist, aber genau das versuche ich ja hier herauszufinden. Wenn das analoge Knüppel-Signal nach X Durchläufen durch A/D-Wandler, Mischer, sonstige Signalverarbeitung, keine Ahnung was sonst noch mit nur noch 256 Schritten Auflösung vorliegt, dann kann es egal ob mit 10, 11 oder sonst wieviel bits übertragen werden. Dadurch wird die Auflösung dann auch nicht mehr besser.

Also Klartext: Wird die Auflösung durch Mischer etc. beeinträchtigt? Braucht man intern höhere Auflösungen, um am Empfängerausgang wenigstens die angestrebten 1024 Schritte auch tatsächlich zu haben?

Gruß,
Stefan
 
Also Klartext: Wird die Auflösung durch Mischer etc. beeinträchtigt? Braucht man intern höhere Auflösungen, um am Empfängerausgang wenigstens die angestrebten 1024 Schritte auch tatsächlich zu haben?
Ich denke eher, dass Du den folgenden Effekt siehst: Eine Trimmraste ist normalerweise mindestens in der Ausgabe fühlbar. Wird die Geberwirksamkeit aber durch einen geringen Mischanteil stark reduziert, kann es sein, dass eine Trimmraste am Geber das Ausgangssignal am Servo um weniger als eine Stufe beeinflusst. Und ergo nicht durchs System kommt. Das merkst Du aber nur beim Testen am Boden.
 

onki

User
Hallo

Meiner Meinung nach ist und bleibt die Ein- bzw. Ausgabe das begrenzende Element. Die Mischproblematik sehe ich nicht, da hier anders gerechnet werden kann (Float).
Mehr als 1024 (10bit) sind Humbug, da die (Ausgabe) Hardware das nicht hergibt. Hinzu kommen Servospiel und das der Anlenkung, die die hohe Auflösung ad absurdum führen würde.

Gruß
Onki
 
Die Mischproblematik sehe ich nicht, da hier anders gerechnet werden kann (Float).
Ein Beispiel: Eine Trimmraste habe bei 100% Wirksamkeit 2 Digits Änderung am Ausgang zur Folge.

Wenn ich diesen Geber mit weniger als 50% (je nach Rundungsverfahren auch mit weniger als 25%) als Input in einen Mischer gebe, kommt eine einzelne Raste Trimmung hinten nicht mehr heraus.

Daran änder auch genaue Rechnung im System nichts.

Ausserdem diskutieren wir hier über eine MPX 3030. Ein System, das IIRC seit über 10 (20?) Jahren nicht mehr gewartet werden kann, da Entwicklungsdaten verloren. Da ist also durchaus auch Integer-Mathematik in den Mischern denkbar. Kenne ich z.B. von Fahrradcomputern. Auch da könnte man heute anders, und doch springt die Berechnung der Durchschnittsgeschwindigkeit bei einigen (namhaften) Produkten um mehrere Digits.
 

Hägar

User
Ich gebe ja zu, dass meine Grübeleien zum Thema Mischer und Auflösung eher spekulativer Natur sind. Ich schaue mal, ob ich in den nächsten Tagen ein Testsetup zusammenkriege, um dies zu verifizieren. Und werde dann berichten.
 
Alles andere wäre wirklich komisch.

Na, dann mach dich mal auf allerhand komisches gefasst.

Wenn überhaupt, könnte man deren Verwendung bei der Berechnung der Taumelscheibenservostellungen verstehen. Für alles andere sind die in einem Sender ziemlich ungeeignet, und verbrauchen nur kostbare Rechenleistung und Speicherplatz.

Oliver
 
Ansicht hell / dunkel umschalten
Oben Unten