|
Post by msparks on Feb 15, 2021 7:31:31 GMT
Not sure if your throttle governor workaround was from my mod for the old XP9 R44 forums.x-plane.org/index.php?/forums/topic/146395-robinson-governor-script/Or if you came to the same solution on your own. but the other helo issue in XP is still the inclinometer at low speed, the latest version I use for this is: newslipskid = create_dataref("heli/gauges/indicators/slip_deg_helo","number") slipskid = find_dataref("sim/cockpit2/gauges/indicators/slip_deg","number") roll = find_dataref("sim/flightmodel/position/true_phi") airspeed = find_dataref("sim/flightmodel/position/indicated_airspeed") local currentRoll=0 function rescale(in1, out1, in2, out2, x)
if x < in1 then return out1 end if x > in2 then return out2 end return out1 + (out2 - out1) * (x - in1) / (in2 - in1)
end function animate_value(current_value, target, min, max, speed)
local fps_factor = math.min(0.1, speed * SIM_PERIOD)
if target >= (max - 0.001) and current_value >= (max - 0.01) then return max elseif target <= (min + 0.001) and current_value <= (min + 0.01) then return min else return current_value + ((target - current_value) * fps_factor) end
end function after_physics() currentRoll=animate_value(currentRoll,roll/2,-10,10,2) newslipskid=rescale(30,-currentRoll,60,slipskid,airspeed) end
Which uses airframe roll to 30kts then gradually blends into the actual slip variable up to 60kts, Feel free to use it. also needs sim/cockpit2/gauges/indicators/slip_deg replacing with heli/gauges/indicators/slip_deg_helo in R44-Guages-B.obj to actually use it.
|
|
|
Post by VSL-Admin on Feb 15, 2021 18:32:31 GMT
Not sure if your throttle governor workaround was from my mod for the old XP9 R44 forums.x-plane.org/index.php?/forums/topic/146395-robinson-governor-script/Or if you came to the same solution on your own. but the other helo issue in XP is still the inclinometer at low speed, the latest version I use for this is: newslipskid = create_dataref("heli/gauges/indicators/slip_deg_helo","number") slipskid = find_dataref("sim/cockpit2/gauges/indicators/slip_deg","number") roll = find_dataref("sim/flightmodel/position/true_phi") airspeed = find_dataref("sim/flightmodel/position/indicated_airspeed") local currentRoll=0 function rescale(in1, out1, in2, out2, x)
if x < in1 then return out1 end if x > in2 then return out2 end return out1 + (out2 - out1) * (x - in1) / (in2 - in1)
end function animate_value(current_value, target, min, max, speed)
local fps_factor = math.min(0.1, speed * SIM_PERIOD)
if target >= (max - 0.001) and current_value >= (max - 0.01) then return max elseif target <= (min + 0.001) and current_value <= (min + 0.01) then return min else return current_value + ((target - current_value) * fps_factor) end
end function after_physics() currentRoll=animate_value(currentRoll,roll/2,-10,10,2) newslipskid=rescale(30,-currentRoll,60,slipskid,airspeed) end
Which uses airframe roll to 30kts then gradually blends into the actual slip variable up to 60kts, Feel free to use it. also needs sim/cockpit2/gauges/indicators/slip_deg replacing with heli/gauges/indicators/slip_deg_helo in R44-Guages-B.obj to actually use it. Hi there! No. Throttle governor solution and implementation for the VSKYLABS helicopters was created and developed from scratch. Same goes to all other aspects and systems. In general, VSKYLABS is trying to achieve all required functionality with *as little as possible* use of scripts, and with utilizing these within the default X-Plane systems and datarefs. Sometimes there is a need for enhancement, and it is always being challenged and overcome with an in-house solution. Did not quite get what exactly is the issue that you are refering to with your script. To note that VSKYLABS is not/will not use any non in-house scripts and solutions in the projects. These may be uploaded by the users independently, at the .org website etc... as an independent downloads or mods. However, in such cases, although mods do exist for addons (freeware and payware), VSKYLABS cannot recommend using any user-based system-related and/or flight-dynamics related mod in the projects due to higher chances of incompatibility or conflicts with the built in systems and flight dynamics architecture. Thanks anyways!
|
|
|
Post by msparks on Feb 16, 2021 2:52:59 GMT
the default inclinometer is erroneous at low speed, i assume from lots of rounding error on small values. The xp9 r44 by Brett S worked around this by hiding and swapping it out for something else below a certain speed. Its been reported a few times by different people including me over the years. That code works around the issue by using body roll when speed is low (hence no angular momentum) (the animate value), and using rescale to blend roll and slip_deg as airspeed increases to the point slip_deg doesnt have tons of error. I made it a while ago, just got round to updating forums.x-plane.org/index.php?/files/file/50881-updated-sikorsky-s-76-for-xp-1130/with it, since its the only significant issue Ive found with your ___ gorgeous r44, thought id throw it your way to. as is it can just go as a separate xlua module, but the .obj mod is likely problematic. I made a video of it a few years ago when reporting youtu.be/CcvZ4aCsopc^the inclinometer should not be left at the start of that video. Im pretty sure this cant be used as a mod because to make changes the updater needs disabling, else it just overwrites them. The other thing I did to mine was mirror the checklist hand to use for detailed flightplans and airport aips.
|
|
|
Post by VSL-Admin on Feb 16, 2021 8:31:22 GMT
Hello! Ok now I get it. The VSKYLABS R44 inclinometer is making use of X-Plane's default dataref: sim/cockpit2/gauges/indicators/slip_deg Now, there is another relevant dataref which is: sim/cockpit2/gauges/indicators/sideslip_degrees These two straightforward datarefs for sideslip indicator are working in X-Plane quite differently. The 2nd dataref above is a synthetic indication which will show a synthetic "zero" value when standing still, and +/-90 values when exceeding a certain threshold, which is NOT the actual sideslip, which is a result of changes in accelerations (not relative angles). This "stupid" dataref will show zero when standing still on an inclined surface, and also will show a "stupid" positive negative values up to 90 degrees as a result of nose vs vector velocity (airflow) positions. This dataref is more fit for the construction of the YAW STRING, which is showing the relative nose vs vector velocity (airflow) indication. The 1st dataref (the one which is being used in the VSKYLABS R44) is working differently in X-Plane, and it will show a *processed* side slip that takes into consideration the actual attitude inclination (aka change in accelerations, not airflow and alpha/beta angles values). This "smart" sideslip dataref WILL show negative/positive values when standing still on inclined surface. This is a "smarter" sideslip indicator because a real-world aircraft inclinometer is not representing actual *beta* values (btw in forward flight it may indicate sideslip), but it shows *accelerations* which may change due to flying condition. This is much closer to a real inclinometer and how it works. When the helicopter is flying in a "skid" or "slip"...say you add a right pedal at 80 knots, what will happen is that the nose will try to go to the right, but the vector velocity will not follow completely, because the existence of aerodynamic forces. Physically, all passengers will be "pushed" slightly forward and to the left. If the situation persist, the inclinometer will sense the acceleration and the new equilibrium will act on the ball accordingly, and will place itself in the new "zero" or stabilized position. This is what happens in the VSKYLABS R44 as well. As you can assume now, the inclinometer is being used to indicate slipping or skidding (indication where the ball is inside or outside the nose during a turn), to assist in coordinated flight. These are being measured from acceleration forces. In practice, at very low airspeed, changing the nose attitude to the left or to the right (as in hover) will hardly affect the forces on the ball, and the sideslip indicator (inclinometer) will hardly assist the pilot to determine if the helicopter is "crawling" with the nose to the left of to the right. So this is a normal behavior. What *will* happen is that the inclinometer will sense accelerations and will show them. During hovering it may not assist the pilot to determine a stable hover. As speed is being build up, acceleration forces will get higher and you will have a decent indication of side-slip acceleration. In the past, this was deeply investigated here at the 'labs, to understand how it works in X-Plane with the built in datarefs. It was found that the 'sim/cockpit2/gauges/indicators/slip_deg' is doing a good job and that it takes into considerations the accelerations. The only thing that may still be noticeable is the gauge calibration, which is a bit on the lower side and may need to be a bit more sensitive (this is not related to the dataref but to the construction of the indicator). This may be updated in the future. In any ways, hope that this helps, and many thanks for your positive feedback!
|
|
|
Post by msparks on Feb 16, 2021 19:58:51 GMT
It was found that the 'sim/cockpit2/gauges/indicators/slip_deg' is doing a good job and that it takes into considerations the accelerations. Yes it does - and that code still uses it -> entirely after 60kts But at low speeds its way out and misleading (for example, doing a low speed sideways maneuver). So what that code does is take the good dataref slipskid = find_dataref("sim/cockpit2/gauges/indicators/slip_deg") The roll of the helicopter roll = find_dataref("sim/flightmodel/position/true_phi") roll is "instant" whereas the ball reacts slowly to changes, so get a version of roll that gradually approaches current roll currentRoll=animate_value(currentRoll,roll/2,-10,10,2) Now decide which to use newslipskid=rescale(30,-currentRoll,60,slipskid,airspeed) This sets a new dataref heli/gauges/indicators/slip_deg_helo (which is used in the obj for the display) to -currentRoll when speed is <=30kts to sim/cockpit2/gauges/indicators/slip_deg when speed is >=60kts and linearly between the two when airspeed is 30 to 60kts
|
|
|
Post by VSL-Admin on Feb 22, 2021 5:51:47 GMT
Hi! As noted, the turn and slip indicator (or the inclinometer) is intended to measure accelerations during *flight*. During slow flight, a yaw string (or slip string) should be used to determine slip or skid, more accurately. The advantage of the yaw string is that it is sensitive in all speed regimes, while the inclinometer is more fit to indicate slip/skid in forward flight (higher speeds). Reminder - the inclinometer is not indicating actual slip, but only the relationship between the bank and the rate of yaw, as explained in my previous reply. In helicopters, at *low speeds*, it should not used as a pure "slip indicator" and it will not show accurate readings. We've found that the default X-Plane dataref for the inclinometer is doing a good job in representing this. What can be done is to increase the sensitivity of the inclinometer itself within the default dataref (this is an animation related fine-tuning, not a script/dataref).
|
|
|
Post by msparks on Feb 23, 2021 2:04:42 GMT
In helicopters, at *low speeds*, it should not used as a pure "slip indicator" and it will not show accurate readings. Hi, It took me a while (a long while) to work out the "physics" behind how that magic little ball actually worked - how something so simple does what it does. But its really simple - it "just" a pendulum, showing the direction of lateral G force. During flight, it shows slip/skid because during a turn the net G-force should always be straight down, the ball drifts up the side with any net force away from center. At slow speed it works identically - except now there is no angular momentum and it functions as a highly precise roll indicator This is why I noticed it was off at slow speed, I have an eye on it for the roll of the helo during slow speed manoeuvres (pitch is easy to do visually), being so badly out was messing them up, especially since there are no actual physical forces to estimate roll.
|
|