Seite 1 von 1

Elevator Trim Wheel

Verfasst: Di 24. Apr 2018, 06:15
von Hannes
Hallo,

Ein paar Infos zum Prototypen eines Elevator Trim Wheels, so wie es die Cessna 172 verbaut hat.
Das Trimmrad selbst ist ein 3D Druck, die Mechanik aus Aluminium-Blech gefertigt.
Für die Umdrehungsabnahme ist ein Encoder zum Einsatz gekommen und der Zeiger für die Anzeige der aktuellen Trimmung wird von einem Servomotor gemacht.
Das ganze wird über Mobiflight mit dem Flugsimulator synchronisiert.

Trimwheel 3.png
Trimwheel 5.png
Trimwheel 1.png
Trimwheel 2.png
20180306_203013.jpg

Re: Elevator Trim Wheel

Verfasst: Mo 1. Okt 2018, 14:53
von Pietrogramma
Hi Hannes and compliment for your work.
I see that you use for your trim a servo motor, can tell me, please, how I must set Mobiflight for use the encoder and the servo motor?
I tryed with the Event ID "Elevator_Trim_DN" and "Elevator_Trim_UP" and the encoder work fine but the servo, using the offset 0BC2 with value type int, size in bytes 2, mask value with 0xFFFF and BCD and More options not use, do not work fine(it seams crazy). For the servo I have a SG90 or MG90 or MG995, what you suggest me to use?
Thanks and ciao

Re: Elevator Trim Wheel

Verfasst: Mo 1. Okt 2018, 16:03
von Hannes
The offset is correct. Activate the Transform function and make the following entry. $+16383. With this setting, the servo always works from the value range in the positive and not in the negative numerical value. Test it.
It works like that for me. Good luck

Here the entry from the config file:

Code: Alles auswählen

<config guid="9bcd6659-cf32-4a9c-814a-46ac756bdd17">
      <active>true</active>
      <description>Elevator Leveler</description>
      <settings msdata:InstanceType="MobiFlight.OutputConfigItem, MFConnector, Version=7.5.0.0, Culture=neutral, PublicKeyToken=null" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
        <source type="FSUIPC" offset="0x0BC2" offsetType="Integer" size="2" mask="0xFFFF" bcdMode="False" />
        <comparison active="False" value="" operand="=" ifValue="" elseValue="" />
        <display type="Servo" serial="SP1/ SN-fc0-a1c" trigger="normal" servoAddress="Elevator Leveler" servoMin="0" servoMax="32766" servoMaxRotationPercent="50">
          <interpolation active="False">
            <value x="0" y="0" />
            <value x="16383" y="16383" />
            <value x="32766" y="32766" />
          </interpolation>
        </display>
        <preconditions>
          <precondition type="config" active="true" ref="1632b36b-a471-4f7c-ae4c-febb0b37a3a8" operand="=" value="1" logic="and" />
        </preconditions>
        <transformation active="True" expression="$+16383" substrStart="0" substrEnd="7" />
        <configrefs />
      </settings>
    </config>