Jump to content

Is there an easy way to record flight data?


esb77

Recommended Posts

I'm wondering if there is an easy way to do automated flight data recording in DCS. I searched the forums hoping that maybe I could deconstruct .trk files, but it turns out that they record player input. What I'm looking for is flight model output, the stuff that gets fed to the cockpit instruments.

 

Airspeed, barometric alt, real alt, normal acceleration (g meter), that sort of stuff.

Callsign "Auger". It could mean to predict the future or a tool for boring large holes.

 

I combine the two by predictably boring large holes in the ground with my plane.

Link to comment
Share on other sites

Tacview.

 

http://lomac.strasoftware.com/tacview-download-en.php

 

It might not do everything you want but it should be close.

ASUS ROG Maximus VIII Hero, i7-6700K, Noctua NH-D14 Cooler, Crucial 32GB DDR4 2133, Samsung 950 Pro NVMe 256GB, Samsung EVO 250GB & 500GB SSD, 2TB Caviar Black, Zotac GTX 1080 AMP! Extreme 8GB, Corsair HX1000i, Phillips BDM4065UC 40" 4k monitor, VX2258 TouchScreen, TIR 5 w/ProClip, TM Warthog, VKB Gladiator Pro, Saitek X56, et. al., MFG Crosswind Pedals #1199, VolairSim Pit, Rift CV1 :thumbup:

Link to comment
Share on other sites

hmm..I believe almost all of that data is available by export...

I cant remember the program someone on these boards developed a few years back , but all the cockpit gauges and settings were exported in real time to this program and it used the data to drive it's own sets of gauges / info on an Ipad (for eg).

 

Search for LUA exporting, and you might be able to work out how to capture all of that data from a replayed track (or in real-time if that's easier)

 

I also think Tacview does a bit of that

Link to comment
Share on other sites

For testing, I export most of the cockpit gauge reading to a comma-delimited file which I can then import into Excel for easy graphing.

 

For example, here is what I'm using for the Ka-50. The arguments (such as indicated airspeed being argument 51) can be found in ".../Mods/aircrafts/<aircraft>/Cockpit/Scripts/mainpanel_init.lua"

 

function LuaExportStart()
exportdata_output_file = io.open("../Ka-50_export.csv", "w")
exportdata_output_file:write("Time,"..
				"Rotor RPM,"..
				"Blade Pitch,"..
				"APU EGT,"..
				"L ENG EGT,"..
				"R ENG EGT,"..
				"L ENG RPM,"..
				"R ENG RPM,"..
				"Altitude AGL,"..
				"Altitude MSL,"..
				"Altimeter,"..
				"Vertical Speed,"..
				"Fuel Fwd"..
				"Fuel Aft"..
				"\n")
end

function LuaExportActivityNextEvent(t)
local tNext = t
if exportdata_output_file then
	exportdata_output_file:write(string.format("%.1f",t))
	local panel = GetDevice(0)
	local rpmRotor = panel:get_argument_value(52) * 110
	exportdata_output_file:write(string.format(",%.1f",rpmRotor))
	local bladePitch = panel:get_argument_value(53) * 14 + 1
	exportdata_output_file:write(string.format(",%.1f",bladePitch))
	local egtAPU = panel:get_argument_value(6) * 900
	exportdata_output_file:write(string.format(",%d",egtAPU))
	local egtEngL = panel:get_argument_value(133) * 1200
	exportdata_output_file:write(string.format(",%d",egtEngL))
	local egtEngR = panel:get_argument_value(134) * 1200
	exportdata_output_file:write(string.format(",%d",egtEngR))
	local rpmEngL = panel:get_argument_value(135) * 110
	exportdata_output_file:write(string.format(",%.1f",rpmEngL))
	local rpmEngR = panel:get_argument_value(136) * 110
	exportdata_output_file:write(string.format(",%.1f",rpmEngR))
	local altAGL = LoGetAltitudeAboveGroundLevel()
	exportdata_output_file:write(string.format(",%.1f",altAGL))
	local altMSL = LoGetAltitudeAboveSeaLevel()
	exportdata_output_file:write(string.format(",%.1f",altMSL))
	local altGauge = panel:get_argument_value(87) * 10000
	exportdata_output_file:write(string.format(",%.1f",altGauge))
	local vy = panel:get_argument_value(24) * 30
	exportdata_output_file:write(string.format(",%.1f",vy))
	local fuelF = panel:get_argument_value(137) * 800 / .775
	exportdata_output_file:write(string.format(",%.4f",fuelF))
	local fuelR = panel:get_argument_value(138) * 800 / .775
	exportdata_output_file:write(string.format(",%.4f",fuelR))
	exportdata_output_file:write('\n')
end
tNext = tNext + 1.0
return tNext
end

 

Crude, but effective...I like to say. It gets the values of each argument once per second and writes them to a file which I then open in Excel.

Link to comment
Share on other sites

Thanks for the replies, folks. AlphaOneSix, thanks in particular, because space, comma, or tab delimited data is an ideal output for further processing.

Callsign "Auger". It could mean to predict the future or a tool for boring large holes.

 

I combine the two by predictably boring large holes in the ground with my plane.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...