Math. Operatoren / Signalanpassung

zuordnen

addition-block
Für Erklärung auf einzelne Komponenten klicken.

Block

Der zuordnen Block ist ein Block, der zur Signalanpassing dient. Mit ihm lassen sich Werte aus einem Zahlenbereich in einen anderen Zahlenbereich übertragen. Beim Übertragen werden nur ganze Zahlen generiert. Es gibt keine Kommazahlen oder Brüche. Wenn ein Wert hinter dem Komma entsteht, dann wird dieser abgeschnitten.

Erklärung

Einfaches Beispiel: Eine Zahl aus dem Zahlenraum 0 bis 10 soll in eine Zahl aus dem Zahlenraum von 0 bis 100 übertragen werden. Zahl 2 aus dem Zahlenraum [0, 10] entspricht der Zahl 20 im Zahlenraum [0, 100].
Rechnung:

100 · 2 10

= 20



Wenn eine Zahl übertragen wird, dann verändert sich diese zwar, jedoch ist das Verhältnis des Abstandes zur untersten Zahl und dieses zur oberen Zahl gleich, wie bei der zu übertragenden Zahl und der untersten bzw. obersten Zahl ihres Zahlensystems.
Eine Formel hierfür lautet:

alte_Zahl * neuer_höchstwert alter_höchstwert

= neue_zahl



Oder:

alte_Zahl * neuer_niedrigstwer alter_niedrigstwert

= neue_zahl


Weiteres Beispiel: Die Zahl 50 aus dem Zahlenraum [0, 100] soll in den Zahlenraum [-50, 50] übertragen werden. Die übertragene Zahl ist 0.

Anwendung mit dem Beispiel von analogWrite. Mit dem analogWrite Befehl kann eine Ausgangsspannung zwischen 0 und 5 Volt an bestimmten digitalen Pins simuliert werden. Dazu wird dem analogWrite Block eine Zahl zwischen 0 und 255 übergeben. 0 entspräche einer mittleren simulierten Ausgangsspannung von 0 Volt und 255 einer mittleren Ausgangsspannung von 5 Volt.
Nun kann man mit dem zuordnen Block eine Spannung mit einem Wert zwischen 0 und 5 angeben und sich daraus dann den erforderlichen Wert für den analogWrite Befehl bestimmen lassen.

Beispiel: Eine Spannung von 4,2 Volt soll am Pin 3 simuliert werden.
Wichtig: Wenn eine Kommazahl eingesetzt wird, dann darf kein Komma verwendet werden. Für das Komma wird stattdessen ein Punkt eingesetzt.

In ArduBlock:

beispiel-zum-zuordnen-block

Wert

Der Wert Parameter ist einfach dazu da, um den Zahlenwert aus dem Zahlenbereich von Low bis von HIGH einzutragen, der in den Zahlenbereich von nach Low bis nach High übertragen werden soll. Als Wert Parameter kann auch eine analoge Variable oder ein analoger Eingang des Arduinos verwendet werden. Es kann sich auch um eine Kommazahl handeln.
Achtung: Natürlich muss der Wert Parameter zwischen von Low und von High liegen.

von Low/ von High

Der von Low Parameter ist die untere Grenze des aktuellen Zahlenbereichs.
Der von High Parameter ist die obere Grenze des aktuellen Zahlenbereichs.

nach Low/ nach High

Der nach Low Parameter ist die untere Grenze des Zahlenbereichs in den die Größe unter Wert übertragen werden soll.
Der nach High Parameter ist die obere Grenze des Zahlenbereichs in den die Größe unter Wert übertragen werden soll.

Code

Im Code kann der zuordnen Block mit dem Befehl map(Wert, von Low, von High, nach Low, nach High) realisiert werden. Wobei für den die entsprechenden Parameter natürlich eingetragen werden müssen.

Das Beispiel von oben würde im Code dann folgendermaßen aussehen:

  map(4.2, 0, 5, 0, 255);