Finalement c'était pas complètement linéaire (juste 2 segments), mais là, bizarrement, c'est passé comme une lettre à la poste, et la gauge est bien fluide.
https://vimeo.com/99709219
- Code: Tout sélectionner
Var 0000, name init, Value 0
{
&rpm_servo = 240
}
Var 0020, name rpm_servo, Link USB_SERVOS, Output 4, PosL 210, PosC 600, PosR 1000 // servo gauge RPM
{
IF &rpm_servo < 240
{
&rpm_servo = 240
}
IF &rpm_servo > 925
{
&rpm_servo = 925
}
}
Var 0021, name rpm_scaler, Link FSUIPC_INOUT, Offset $08C8, Length 2
Var 0022, name prop_rpm, Link FSUIPC_INOUT, Offset $0898, Length 2 // 0-16384 (100%) x rpm scaler/65536
{
L0 = &prop_rpm * &rpm_scaler // calcul pour rpm
&rpm = L0 / 65536 // calcul pour rpm
IF &rpm < 2000
{
L1 = &rpm * 0.2
&rpm_servo = 210 + L1
}
IF &rpm >= 2000
{
L1 = &rpm * 0.23
&rpm_servo = 150 + L1
}
}
Var 0023, name rpm // calcul pour rpm
{
L0 = &prop_rpm * &rpm_scaler
&rpm = L0 / 65536
}
Allez, je me remet sur l'anémo...