<phyphox xmlns="http://phyphox.org/xml" xmlns:editor="http://phyphox.org/editor/xml" version="1.7" editor:version="1.0" locale="">
    <title>Ballistic pendulum 4</title>
    <category>Texas Instruments SensorTag</category>
    <description>Read the y-component of the accelerometer (Texas Instruments SensorTag like the CC2650 or the CC1350) put to the ballistic pendulum and determine the bullet speed and energy. Suspension length of the pendulum is determined by its period of oscillations.</description>
    <icon format="string">Ba4</icon>
    <data-containers>
        <container size="0" static="false">accYRaw</container>
        <container size="0" static="false">t</container>
        <container size="1" static="false">count</container>
        <container size="1" static="false">tmax</container>
        <container size="0" static="false">accY</container>
        <container size="1" static="false">max</container>
        <container size="1" static="false">min</container>
        <container size="1" static="false">m</container>
        <container size="1" static="false">M</container>
        <container size="1" static="false">L</container>
        <container size="1" static="false">speed</container>
        <container size="1" static="false">energy</container>
        <container size="1" static="false">position_max</container>
        <container size="1" static="false">position_min</container>
        <container size="1" static="false">min_position</container>
        <container size="1" static="false">t_first</container>
        <container size="1" static="false">demi_T</container>
        <container size="1" static="false">start_t</container>
        <container size="0" static="false">to_measure</container>
        <container size="1" static="false">start_position</container>
        <container size="0" static="false">t_cut</container>
        <container size="1000" static="false">re</container>
        <container size="1000" static="false">im</container>
        <container size="0" static="false">fft</container>
        <container size="1" static="false">count_measure</container>
        <container size="1" static="false">frequency</container>
        <container size="1" static="false">V2</container>
        <container size="1000" static="false">quotient</container>
        <container size="1000" static="false">out</container>
        <container size="1" static="false">position</container>
        <container size="1000" static="false">sum</container>
        <container size="1000" static="false">period</container>
        <container size="1000" static="false">quotient (1)</container>
        <container size="1" static="false">count_cut</container>
        <container size="1" static="false">count_cutX10</container>
    </data-containers>
    <input>
        <bluetooth editor:uuid="101" editor:posx="100" editor:posy="250"  name="SensorTag"  mode="notification" rate="1" subscribeOnStart="false">
            <config char="F000AA83-0451-4000-B000-000000000000" conversion="hexadecimal">0A</config>
            <config char="F000AA82-0451-4000-B000-000000000000" conversion="hexadecimal">1000</config>
            <output char="F000AA81-0451-4000-B000-000000000000" conversion="int16LittleEndian" offset="8" length="2">accYRaw</output>
        </bluetooth>
    </input>
    <output>
    </output>
    <analysis sleep="0"  onUserInput="false">
        <multiply editor:uuid="149" editor:posx="260" editor:posy="77">
            <input as="factor" clear="false">accYRaw</input>
            <input as="factor" type="value">0.000598755</input>
            <output as="product">accY</output>
        </multiply>
        <subrange editor:uuid="150" editor:posx="413.1166687011719" editor:posy="255.54998779296875">
            <input as="in" clear="false">accY</input>
            <input as="from" clear="false">start_position</input>
            <output as="out">to_measure</output>
        </subrange>
        <min editor:uuid="151" editor:posx="683.86669921875" editor:posy="380.066650390625" multiple="false">
            <input as="x" clear="false">position_max</input>
            <input as="y" clear="false">position_min</input>
            <output as="position">min_position</output>
        </min>
        <min editor:uuid="152" editor:posx="684.7333374023438" editor:posy="213.11666870117188" multiple="false">
            <input as="y" clear="false">accY</input>
            <output as="position">position_min</output>
        </min>
        <max editor:uuid="153" editor:posx="684.75" editor:posy="533.7666625976562" multiple="false">
            <input as="x" clear="false">position_max</input>
            <input as="y" clear="false">position_min</input>
        </max>
        <max editor:uuid="154" editor:posx="685.11669921875" editor:posy="35.08332824707031" multiple="false">
            <input as="y" clear="false">accY</input>
            <output as="position">position_max</output>
        </max>
        <min editor:uuid="155" editor:posx="1018" editor:posy="274" multiple="false">
            <input as="y" clear="false">to_measure</input>
            <output as="min">min</output>
        </min>
        <max editor:uuid="156" editor:posx="1020" editor:posy="105" multiple="false">
            <input as="y" clear="false">to_measure</input>
            <output as="max">max</output>
        </max>
        <count editor:uuid="157" editor:posx="1250" editor:posy="850">
            <input as="buffer" clear="false">accYRaw</input>
            <output as="count">count</output>
        </count>
        <formula editor:uuid="158" editor:posx="1331.7000122070312" editor:posy="671.3333282470703" formula="3.14*sqrt([1]/9.8)">
            <input as="in" clear="false">L</input>
            <output as="out">demi_T</output>
        </formula>
        <formula editor:uuid="159" editor:posx="1500" editor:posy="1100" formula="([1]-1)*0.1">
            <input as="in" clear="false">count</input>
            <output as="out">tmax</output>
        </formula>
        <formula editor:uuid="160" editor:posx="1513" editor:posy="277" formula="([1]-[2])*([4]/[3])*sqrt([5]/9.81)/2">
            <input as="in" clear="false">max</input>
            <input as="in" clear="false">min</input>
            <input as="in" clear="false">m</input>
            <input as="in" clear="false">M</input>
            <input as="in" clear="false">L</input>
            <output as="out">speed</output>
        </formula>
        <ramp editor:uuid="161" editor:posx="1750" editor:posy="1350">
            <input as="start" type="value">0</input>
            <input as="stop">tmax</input>
            <input as="length">count</input>
            <output as="out">t</output>
        </ramp>
        <formula editor:uuid="162" editor:posx="1960.5833129882812" editor:posy="453.8666687011719" formula="[1]*[1]*[2]/2000">
            <input as="in" clear="false">speed</input>
            <input as="in" clear="false">m</input>
            <output as="out">energy</output>
        </formula>
        <subrange editor:uuid="163" editor:posx="2067.7166748046875" editor:posy="1231.2333374023438">
            <input as="in" clear="false">t</input>
            <input as="from" clear="false">min_position</input>
            <input as="length" type="value">1</input>
            <output as="out">t_first</output>
        </subrange>
        <formula editor:uuid="164" editor:posx="2180" editor:posy="77" formula="([1]-[2])*([4]/[3])/(4*3.14*[5])">
            <input as="in" clear="false">max</input>
            <input as="in" clear="false">min</input>
            <input as="in" clear="false">m</input>
            <input as="in" clear="false">M</input>
            <input as="in" clear="false">frequency</input>
            <output as="out">V2</output>
        </formula>
        <subrange editor:uuid="165" editor:posx="2254.7166748046875" editor:posy="1016.2333374023438">
            <input as="in" clear="false">t</input>
            <input as="from" clear="false">start_position</input>
            <output as="out">t_cut</output>
        </subrange>
        <add editor:uuid="166" editor:posx="2324.2833251953125" editor:posy="1234.2833251953125">
            <input as="summand" clear="false">t_first</input>
            <input as="summand" clear="false">demi_T</input>
            <output as="sum">start_t</output>
        </add>
        <fft editor:uuid="167" editor:posx="2609.13330078125" editor:posy="828.0333251953125">
            <input as="re" clear="false">to_measure</input>
            <output as="re">re</output>
            <output as="im">im</output>
        </fft>
        <min editor:uuid="168" editor:posx="2633.61669921875" editor:posy="1335.75" multiple="false">
            <input as="y" clear="false">t</input>
            <input as="threshold" clear="false">start_t</input>
        </min>
        <threshold editor:uuid="169" editor:posx="2634.7666625976562" editor:posy="1506.1499938964844" falling="false">
            <input as="y" clear="false">t</input>
            <input as="threshold" clear="false">start_t</input>
            <output as="position">start_position</output>
        </threshold>
        <count editor:uuid="249" editor:posx="2687.866668701172" editor:posy="642.183349609375">
            <input as="buffer" clear="false">t_cut</input>
            <output as="count">count_cut</output>
        </count>
        <formula editor:uuid="170" editor:posx="2877.2166748046875" editor:posy="827.4166870117188" formula="sqrt([1_]*[1_]+[2_]*[2_])">
            <input as="in" clear="false">re</input>
            <input as="in" clear="false">im</input>
            <output as="out">fft</output>
        </formula>
        <multiply editor:uuid="250" editor:posx="2920.6666870117188" editor:posy="641.3166656494141">
            <input as="factor" clear="false">count_cut</input>
            <input as="factor" type="value">10</input>
            <output as="product">count_cutX10</output>
        </multiply>
        <periodicity editor:uuid="198" editor:posx="2989.9833374023438" editor:posy="351.56666564941406">
            <input as="x" clear="false">t_cut</input>
            <input as="y" clear="false">to_measure</input>
            <input as="dx" clear="false">count_cutX10</input>
            <output as="period">period</output>
        </periodicity>
        <count editor:uuid="171" editor:posx="3012.316650390625" editor:posy="984.2000122070312">
            <input as="buffer" clear="false">t_cut</input>
            <output as="count">count_measure</output>
        </count>
        <subrange editor:uuid="172" editor:posx="3241.066650390625" editor:posy="823.5">
            <input as="in" clear="false">fft</input>
            <input as="from" type="value">2</input>
            <input as="to" clear="false">quotient</input>
            <output as="out">out</output>
        </subrange>
        <divide editor:uuid="199" editor:posx="3339.7000122070312" editor:posy="386.18333435058594">
            <input as="dividend" type="value">1</input>
            <input as="divisor" clear="false">period</input>
            <output as="quotient">quotient (1)</output>
        </divide>
        <divide editor:uuid="173" editor:posx="3345.11669921875" editor:posy="1014">
            <input as="dividend" clear="false">count_measure</input>
            <input as="divisor" type="value">2</input>
            <output as="quotient">quotient</output>
        </divide>
        <max editor:uuid="174" editor:posx="3485.9166870117188" editor:posy="835.2999877929688" multiple="false">
            <input as="y" clear="false">out</input>
            <output as="position">position</output>
        </max>
        <add editor:uuid="175" editor:posx="3721.4166870117188" editor:posy="858.8666687011719">
            <input as="summand" clear="false">position</input>
            <input as="summand" type="value">1</input>
            <output as="sum">sum</output>
        </add>
        <divide editor:uuid="176" editor:posx="3963.550048828125" editor:posy="870.1999969482422">
            <input as="dividend" clear="false">sum</input>
            <input as="divisor" clear="false">count_measure</input>
            <input as="divisor" type="value">0.1</input>
            <output as="quotient">frequency</output>
        </divide>
    </analysis>
    <views>
        <view label="Raw Data">
            <edit editor:uuid="183" editor:posx="1018" editor:posy="461" label="Bullet mass" signed="true" decimal="true"   unit="g" factor="1" default="2.6">
                <output>m</output>
            </edit>
            <edit editor:uuid="184" editor:posx="1017" editor:posy="580" label="Pendulum mass" signed="true" decimal="true"   unit="g" factor="1" default="128">
                <output>M</output>
            </edit>
            <edit editor:uuid="185" editor:posx="1021" editor:posy="687" label="Pendulum length" signed="true" decimal="true"   unit="m" factor="1" default="0.2">
                <output>L</output>
            </edit>
            <graph editor:uuid="186" editor:posx="2383" editor:posy="641" label="Acceleration Y" aspectRatio="2.5" style="lines" lineWidth="1" color="ff7e22" partialUpdate="true" history="1" labelX="t" labelY="a" labelZ="" unitX="s" unitY="m/s²" unitZ="" logX="false" logY="false" logZ="false" xPrecision="3" yPrecision="3" zPrecision="3" scaleMinX="auto" scaleMaxX="auto" scaleMinY="auto" scaleMaxY="auto" scaleMinZ="auto" scaleMaxZ="auto" minX="0" maxX="0" minY="0" maxY="0" minZ="0" maxZ="0"  mapWidth="0"       >
                <input axis="x">t</input>
                <input axis="y">accY</input>
            </graph>
            <value editor:uuid="187" editor:posx="1864" editor:posy="268" label="Bullet speed" size="1" precision="2" scientific="false" unit="m/s" factor="1" >
                <input>speed</input>
            </value>
            <value editor:uuid="188" editor:posx="2291" editor:posy="462" label="Bullet energie" size="1" precision="2" scientific="false" unit="Joule" factor="1" >
                <input>energy</input>
            </value>
            <value editor:uuid="189" editor:posx="2500.9666748046875" editor:posy="82.48333740234375" label="Bullet speed²" size="1" precision="2" scientific="false" unit="m/s" factor="1" color="red">
                <input>V2</input>
            </value>
        </view>
        <view label="Debug">
            <value editor:uuid="190" editor:posx="2645.5" editor:posy="1234.9166870117188" label="start t" size="1" precision="2" scientific="false" unit="s" factor="1" >
                <input>start_t</input>
            </value>
            <value editor:uuid="191" editor:posx="2922.800048828125" editor:posy="1525.5" label="start position" size="1" precision="2" scientific="false"  factor="1" >
                <input>start_position</input>
            </value>
            <graph editor:uuid="192" editor:posx="2631.8499755859375" editor:posy="1077.683349609375" label="TO MEASURE" aspectRatio="2.5" style="lines" lineWidth="1" color="ff7e22" partialUpdate="true" history="1" labelX="t_cut" labelY="y_cut" labelZ="" unitX="s" unitY="m/s²" unitZ="" logX="false" logY="false" logZ="false" xPrecision="3" yPrecision="3" zPrecision="3" scaleMinX="auto" scaleMaxX="auto" scaleMinY="auto" scaleMaxY="auto" scaleMinZ="auto" scaleMaxZ="auto" minX="0" maxX="0" minY="0" maxY="0" minZ="0" maxZ="0"  mapWidth="0"       >
                <input axis="x">t_cut</input>
                <input axis="y">to_measure</input>
            </graph>
            <graph editor:uuid="193" editor:posx="3186.9000244140625" editor:posy="613.25" label="FFT" aspectRatio="2.5" style="lines" lineWidth="1" color="ff7e22" partialUpdate="true" history="1" labelX="x" labelY="y" labelZ="" unitX="" unitY="" unitZ="" logX="false" logY="false" logZ="false" xPrecision="3" yPrecision="3" zPrecision="3" scaleMinX="auto" scaleMaxX="auto" scaleMinY="auto" scaleMaxY="auto" scaleMinZ="auto" scaleMaxZ="auto" minX="0" maxX="0" minY="0" maxY="0" minZ="0" maxZ="0"  mapWidth="0"       >
                <input axis="y">fft</input>
            </graph>
            <value editor:uuid="194" editor:posx="4188.38330078125" editor:posy="871.3500061035156" label="frequency" size="1" precision="4" scientific="false" unit="Hz" factor="1" color="red">
                <input>frequency</input>
            </value>
            <graph editor:uuid="195" editor:posx="3521.1666870117188" editor:posy="642.2666625976562" label="peaks" aspectRatio="2.5" style="lines" lineWidth="1" color="ff7e22" partialUpdate="true" history="1" labelX="peak number" labelY="position" labelZ="" unitX="" unitY="" unitZ="" logX="false" logY="false" logZ="false" xPrecision="1" yPrecision="3" zPrecision="3" scaleMinX="auto" scaleMaxX="auto" scaleMinY="auto" scaleMaxY="auto" scaleMinZ="auto" scaleMaxZ="auto" minX="0" maxX="0" minY="0" maxY="0" minZ="0" maxZ="0"  mapWidth="0"       >
                <input axis="y">out</input>
            </graph>
        </view>
        <view label="Autoperiod">
            <value editor:uuid="230" editor:posx="3606.0166625976562" editor:posy="386.0500030517578" label="Autofrequency" size="1" precision="4" scientific="false" unit="Hz" factor="1" color="blue">
                <input>quotient (1)</input>
            </value>
        </view>
    </views>
    <export>
        <set name="raw_data">
            <data name="total time (s)">t</data>
            <data name="accY (m/s^2)">accY</data>
        </set>
        <set name="data_to_measure">
            <data name="time to measure (s)">t_cut</data>
            <data name="acc to measure (m/s^2)">to_measure</data>
        </set>
    </export>
</phyphox>
