トイ クワッド に嵌った。:Deviation 演算ロジック解説編
Deviation ロジック演算解説編
2019-MAR-15
DEVIATION FORUM に面白そうな御題がありましたので、
出来るだけ簡単な方法で、実現してみました。
(実現方法は、他にも有ります。)
Setting 3 pos rate switches for t8sg v2 plus
https://www.deviationtx.com/forum/3-feedback-questions/8304-setting-3-pos-rate-switches-for-t8sg-v2-plus#73369
御題
Flaps are now controlled by (I’m a Mode 1 flyer)
SW “C”
Pos 1: “CO” : flaps up
Pos 2: “C1” : take off flaps 10-15 degrees
Pos 3: “C2” : landing flaps 45-60 degrees
I wish to Mix down ELEVATOR Trim to FLAP in Position 3: ONLY
となっていますが、
Stick move : -100% ~ 0% ~ 100%
0% is Stick Neutral
ですし、
Servo degrees ex. 1?: 0 ~ 45 ~ 90 , 0 ~ 90 ~ 180
Servo degrees ex. 2?: -45 ~ 0 ~ 45 , -90 ~ 0 ~ 90
どっちなの?とか、
Stick Neutralの角度が不明、-100%~100% の移動角度が不明ですので、
回答に困ります。、
Since i made a sample, please try setting range conversion.
I use Virt 1/2 for explanation and verification.
There are other realization methods, so please try.
Value monitor:Main menu -> 2.Transmitter menu ->
2.Channel monitor : Mixer output ◀▶:Stick input
と、回答しましたが、
前程条件:御題を次の様に書換えています。
入力1:SW “C”、入力2:AUX4、入力3:AUX5
AUX4 / AUX5 は、スティック入力でも可能です。
Pos 1: “CO” : flaps up EX.Val -5%
Pos 2: “C1”+ AUX4 : take off flaps 10-15 %
Pos 3: “C2”+ AUX5 : landing flaps 45-60 %
※X:入力を示します、Y:出力を示します。
<< EX 1 >>
Vart1 : Complex , Mixers : 3 の設定をします。
01. <“C2”& AUX4(44%~60%) : landing flaps 44%-60% , % to digree conversion is required.>
44% , 52% , 60% :Diff 8% , 8% ですが、7% , 8% で良ければ、45%~60% も可能
45% , 52.5% , 60% : 0.5 , Few can not express、Deviation は、少数位が扱えない。
Vart1 page:1 、頁:1
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX4 、入力を指定
Curve:3 Point (ENT) 、3点補正を選択
Point1:44,Point2:52,Point3:60 、補正値1、2、3、
操作感のずれを気にしないなら、45 / 52 / 60
Scale:100 、100%
Offset:0 、 0%
式:Y=aX+b{X|-100%≦X≦100%}
02. <“C1”& AUX4( 9%~15%) : take off flaps 9%-15% , % to degree conversion is required.>
9% , 12% , 15%
10% , 12.5% , 15% : 0.5 , Few can not express
Vart1 page:2 、頁:2
Switch:SW C1 、スイッチ:SW-C1、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX4 、入力を指定
Curve:3 Point (ENT) 、3点補正を選択
Point1: 9,Point2:12,Point3:15 、補正値1、2、3
操作感のずれを気にしないなら、10 / 12 / 15
Scale:100 、100%
Offset:0 、 0%
式:Y=aX+b{X|-100%≦X≦100%}
03. <“CO” : flaps up. >
Vart1 page:3 、頁:3
Switch:SW C0 、スイッチ:SW-C0、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:None 、無指定
Curve:Fixed 、Scale の値で置換
Scale : -5%(ex.) 、置換数値
Offset:0 、0%
式:Y=a
04. < Please check Vart1 : 1-3 mix >
Virt1 - C0 : -5%
- C1 & AUX4 : 9% to 15%
- C2 & AUX4 : 44% to 60%
と、出力が変化します。
05. Plese try ELEVATOR MIX .
% to degree conversion is required.
<< EX 2 >>
Vart2 : Complex , Mixers : 7 の設定をします。
Y=aX+b、{X|-100%≦X≦100%}
では、検証結果を考えるのが面倒なので、
0~100%で、扱う様に細工がしてあります。
01. <“C2”& AUX5(45%~60%) : landing flaps 45%-60% , % to digree conversion is required.>
45% to 60% : Diff 15% , Offset 45% 、差分は15%、オフセット45%
Vart2 page:1 、頁:1
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX5 、入力を指定
Curve:1 to 1 、1対1を指定
Scale:50% 、Y=0.5X
Offset:50% 、Y=Y+50
式:Y=aX+b、Y=0.5X+50、
結果:X|-100%≦X≦100% で、Y|0%≦Y≦100%
’
Vart2 page:2 、頁:2
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:mult 、掛算を指定
Src:None 、無指定
Curve:Fixed 、置換を指定
Scale:15 、Y=aX、a=15%
Offset:0 、
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|0%≦Y≦15%
’
Vart2 page:3 、頁:3
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:add 、加算を指定
Src:None 、無指定
Curve:Fixed 、置換を指定
Scale:45 、Y=aX+b、加算値(b):45
Offset:0 、0指定
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|45%≦Y≦60%
02. <“C1”& AUX4( 10%~15%) : take off flaps 10%-15% , % to degree conversion is required.>
10% , 15% : Diff 5% , Offset 10%
数値が異なるだけで、同じ仕組みなので省略
Vart2 page:4
Switch:SW C1
Mux:replace
Src:AUX5
Curve:1 to 1
Scale:50
Offset:50
式:Y=aX+b、Y=0.5X+50、
結果:X|-100%≦X≦100% で、Y|0%≦Y≦100%
’
Vart2 page:5
Switch:SW C1
Mux:mult
Src:None
Curve:Fixed
Scale:5
Offset:0
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|0%≦Y≦5%
’
Vart2 page:6
Switch:SW C1
Mux:add
Src:None
Curve:Fixed
Scale:10
Offset:0
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|10%≦Y≦15%
03. <“CO” : flaps up. >
数値が異なるだけで、同じ仕組みなので省略
Vart2 page:7
Switch:SW C0
Mux:replace
Src:None
Curve:Fixed
Scale : -5%(ex.)
Offset:0
式:Y=a
04. < Please check Vart2 : 1-3 mix >
Virt2 - C0 : -5%
- C1 & AUX5 : 10% to 15%
- C2 & AUX5 : 45% to 60%
05. Plese try ELEVATOR MIX .
% to degree conversion is required.
※慣れない間は、-100%~0%~100%の値に混乱するかもしれませんが、
-100%~100%と考えずに、ざっくり、数値は、
0~200 変化すると考えて、下さい。
最終結果は、計算した結果を、-100すると、
理解してください。
-50%~50%の場合は、0~100 変化するので、
まずは、0~100変化する数値で考えて、結果を-50します。
-100%~0%~100%:変化量は、200 ですよね?
- 50%~0%~ 50%:変化量は、100 ですよね?
※4~20mA入力を、 -10℃~40℃ で表現するには、
Y=( ((40-(-10))/(X-4)/(20-4)) )+(-10)
Y=( 50/(X-4)/16 )-10
(X-4)/16:割合を出す
式を変形して、
Y=(50/16)X-10
※0~4095を、-100%~100% で表現するには、
Y=( (100-(-100))/X/4095 ) +(-100)
Y=200/X/4095ー100
X/4095:割合を出す
式を変形して、
Y=(200/4095)X-100
※つまり、
Y= (YrangeH-YrangeL) / ( X - XrangeL ) / (XrangeH-XrangeL) + YrangeL
※制約:各CH、仮想CH毎に指定出来るミキサー:10個です。
これを超える場合は、仮想CHを複数使って計算する事になります。
演算の実行順は、
CH1-ミキサー1~10
~CH16-ミキサー1~10
仮想CH1-ミキサー1~10
~仮想CH10-ミキサー1~10
の筈です。
実CH1で、実CH2~10や仮想CH1~10を参照する様な事や、、
仮想CH1で、仮想CH2~10を参照する様な事は、
実行順に十分注意を払ってください。
2019-MAR-15
DEVIATION FORUM に面白そうな御題がありましたので、
出来るだけ簡単な方法で、実現してみました。
(実現方法は、他にも有ります。)
Setting 3 pos rate switches for t8sg v2 plus
https://www.deviationtx.com/forum/3-feedback-questions/8304-setting-3-pos-rate-switches-for-t8sg-v2-plus#73369
御題
Flaps are now controlled by (I’m a Mode 1 flyer)
SW “C”
Pos 1: “CO” : flaps up
Pos 2: “C1” : take off flaps 10-15 degrees
Pos 3: “C2” : landing flaps 45-60 degrees
I wish to Mix down ELEVATOR Trim to FLAP in Position 3: ONLY
となっていますが、
Stick move : -100% ~ 0% ~ 100%
0% is Stick Neutral
ですし、
Servo degrees ex. 1?: 0 ~ 45 ~ 90 , 0 ~ 90 ~ 180
Servo degrees ex. 2?: -45 ~ 0 ~ 45 , -90 ~ 0 ~ 90
どっちなの?とか、
Stick Neutralの角度が不明、-100%~100% の移動角度が不明ですので、
回答に困ります。、
Since i made a sample, please try setting range conversion.
I use Virt 1/2 for explanation and verification.
There are other realization methods, so please try.
Value monitor:Main menu -> 2.Transmitter menu ->
2.Channel monitor : Mixer output ◀▶:Stick input
と、回答しましたが、
前程条件:御題を次の様に書換えています。
入力1:SW “C”、入力2:AUX4、入力3:AUX5
AUX4 / AUX5 は、スティック入力でも可能です。
Pos 1: “CO” : flaps up EX.Val -5%
Pos 2: “C1”+ AUX4 : take off flaps 10-15 %
Pos 3: “C2”+ AUX5 : landing flaps 45-60 %
※X:入力を示します、Y:出力を示します。
<< EX 1 >>
Vart1 : Complex , Mixers : 3 の設定をします。
01. <“C2”& AUX4(44%~60%) : landing flaps 44%-60% , % to digree conversion is required.>
44% , 52% , 60% :Diff 8% , 8% ですが、7% , 8% で良ければ、45%~60% も可能
45% , 52.5% , 60% : 0.5 , Few can not express、Deviation は、少数位が扱えない。
Vart1 page:1 、頁:1
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX4 、入力を指定
Curve:3 Point (ENT) 、3点補正を選択
Point1:44,Point2:52,Point3:60 、補正値1、2、3、
操作感のずれを気にしないなら、45 / 52 / 60
Scale:100 、100%
Offset:0 、 0%
式:Y=aX+b{X|-100%≦X≦100%}
02. <“C1”& AUX4( 9%~15%) : take off flaps 9%-15% , % to degree conversion is required.>
9% , 12% , 15%
10% , 12.5% , 15% : 0.5 , Few can not express
Vart1 page:2 、頁:2
Switch:SW C1 、スイッチ:SW-C1、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX4 、入力を指定
Curve:3 Point (ENT) 、3点補正を選択
Point1: 9,Point2:12,Point3:15 、補正値1、2、3
操作感のずれを気にしないなら、10 / 12 / 15
Scale:100 、100%
Offset:0 、 0%
式:Y=aX+b{X|-100%≦X≦100%}
03. <“CO” : flaps up. >
Vart1 page:3 、頁:3
Switch:SW C0 、スイッチ:SW-C0、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:None 、無指定
Curve:Fixed 、Scale の値で置換
Scale : -5%(ex.) 、置換数値
Offset:0 、0%
式:Y=a
04. < Please check Vart1 : 1-3 mix >
Virt1 - C0 : -5%
- C1 & AUX4 : 9% to 15%
- C2 & AUX4 : 44% to 60%
と、出力が変化します。
05. Plese try ELEVATOR MIX .
% to degree conversion is required.
<< EX 2 >>
Vart2 : Complex , Mixers : 7 の設定をします。
Y=aX+b、{X|-100%≦X≦100%}
では、検証結果を考えるのが面倒なので、
0~100%で、扱う様に細工がしてあります。
01. <“C2”& AUX5(45%~60%) : landing flaps 45%-60% , % to digree conversion is required.>
45% to 60% : Diff 15% , Offset 45% 、差分は15%、オフセット45%
Vart2 page:1 、頁:1
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:replace 、リプレースを選択
Src:AUX5 、入力を指定
Curve:1 to 1 、1対1を指定
Scale:50% 、Y=0.5X
Offset:50% 、Y=Y+50
式:Y=aX+b、Y=0.5X+50、
結果:X|-100%≦X≦100% で、Y|0%≦Y≦100%
’
Vart2 page:2 、頁:2
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:mult 、掛算を指定
Src:None 、無指定
Curve:Fixed 、置換を指定
Scale:15 、Y=aX、a=15%
Offset:0 、
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|0%≦Y≦15%
’
Vart2 page:3 、頁:3
Switch:SW C2 、スイッチ:SW-C2、式有効条件を指定します。
Mux:add 、加算を指定
Src:None 、無指定
Curve:Fixed 、置換を指定
Scale:45 、Y=aX+b、加算値(b):45
Offset:0 、0指定
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|45%≦Y≦60%
02. <“C1”& AUX4( 10%~15%) : take off flaps 10%-15% , % to degree conversion is required.>
10% , 15% : Diff 5% , Offset 10%
数値が異なるだけで、同じ仕組みなので省略
Vart2 page:4
Switch:SW C1
Mux:replace
Src:AUX5
Curve:1 to 1
Scale:50
Offset:50
式:Y=aX+b、Y=0.5X+50、
結果:X|-100%≦X≦100% で、Y|0%≦Y≦100%
’
Vart2 page:5
Switch:SW C1
Mux:mult
Src:None
Curve:Fixed
Scale:5
Offset:0
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|0%≦Y≦5%
’
Vart2 page:6
Switch:SW C1
Mux:add
Src:None
Curve:Fixed
Scale:10
Offset:0
式:Y=aX+b
結果:X|-100%≦X≦100% で、Y|10%≦Y≦15%
03. <“CO” : flaps up. >
数値が異なるだけで、同じ仕組みなので省略
Vart2 page:7
Switch:SW C0
Mux:replace
Src:None
Curve:Fixed
Scale : -5%(ex.)
Offset:0
式:Y=a
04. < Please check Vart2 : 1-3 mix >
Virt2 - C0 : -5%
- C1 & AUX5 : 10% to 15%
- C2 & AUX5 : 45% to 60%
05. Plese try ELEVATOR MIX .
% to degree conversion is required.
※慣れない間は、-100%~0%~100%の値に混乱するかもしれませんが、
-100%~100%と考えずに、ざっくり、数値は、
0~200 変化すると考えて、下さい。
最終結果は、計算した結果を、-100すると、
理解してください。
-50%~50%の場合は、0~100 変化するので、
まずは、0~100変化する数値で考えて、結果を-50します。
-100%~0%~100%:変化量は、200 ですよね?
- 50%~0%~ 50%:変化量は、100 ですよね?
※4~20mA入力を、 -10℃~40℃ で表現するには、
Y=( ((40-(-10))/(X-4)/(20-4)) )+(-10)
Y=( 50/(X-4)/16 )-10
(X-4)/16:割合を出す
式を変形して、
Y=(50/16)X-10
※0~4095を、-100%~100% で表現するには、
Y=( (100-(-100))/X/4095 ) +(-100)
Y=200/X/4095ー100
X/4095:割合を出す
式を変形して、
Y=(200/4095)X-100
※つまり、
Y= (YrangeH-YrangeL) / ( X - XrangeL ) / (XrangeH-XrangeL) + YrangeL
※制約:各CH、仮想CH毎に指定出来るミキサー:10個です。
これを超える場合は、仮想CHを複数使って計算する事になります。
演算の実行順は、
CH1-ミキサー1~10
~CH16-ミキサー1~10
仮想CH1-ミキサー1~10
~仮想CH10-ミキサー1~10
の筈です。
実CH1で、実CH2~10や仮想CH1~10を参照する様な事や、、
仮想CH1で、仮想CH2~10を参照する様な事は、
実行順に十分注意を払ってください。