Jump to content

Helicopter EFM Demo


Recommended Posts

Notice: this mod is no longer updated after October 13, 2020. V0.4 is the last update

I have created a basic helicopter EFM and used the AH-6J Littlebird as the demo aircraft. I started this project because there are no DCS helicopters that are completely free (i.e. don't require the Ka-50 module). Therefore I created this EFM, which can be used as a template for other helicopter mods, as an open source project. I chose the AH-6 due to the simplicity of its cockpit and systems and most likely won't be made by an official 3rd party.

 

Anyone is able to modify and use the source code as long as I am mentioned in creation of the original. Anyone may also help contribute to this project in anyway (and if there is enough desire I may continue to improve the mod). The EFM source code is located in AH-6J/EFM. The cockpit texture template is also available in the download.

 

Before downloading please know that this is not originally designed to be an end user mod and the aircraft is very unfinished.

A list of missing features and limitations includes:

Basic vortex ring state

Basic ground effect

No autorotation

Lift is not affected by altitude or temperature

The flight model is not closely accurate to the real aircraft. Data is based on the OH-6 Cayuse

Radio and communications are not functional

Engine torque not simulated

No pilot model

Basic texturing

Probably some of bugs

 

List of features:

Main flight instruments function

Working weapon system and cold start with clickable switches

Can control from both seats

Working RWR

Can use M134 minigun, GAU-19 and rockets

Basic Damage model

Basic multicrew (can switch controls but cockpits not synced)

 

v0.4 13 Oct

https://drive.google.com/file/d/1-5kLJnYlTyCtSS5IQknQ5x9WngMsF-Yk/view?usp=sharing

 

v0.35 6 August

Full mod Link: https://drive.google.com/file/d/1gzWyy1PeauS22tvU0HITSVKj4J4AuHpK/view?usp=sharing

EFM source only: https://drive.google.com/file/d/181L0rDsRiIUQElEjKFv5P6QWliYHvGQb/view?usp=sharing

 

Install like any other aircraft mod, unzip and place AH-6j in C:\Users"USERNAME"\Saved Games\DCS.openbeta\Mods\aircraft

 

A cold start procedure can be found in the Doc folder.

The flight model was created from NASA CR-3144 and the framework of CptSmiley's F-16 EFM demo

The flight model uses data from the OH-6 Cayuse, and engine and electrical systems are also based on the OH-6 due to lack of information of the Littlebird.

Please note that the cockpit and systems are not 100% accurate to the AH-6J, I tried to make it as close as possible but the truth is a picture of the AH-6J cockpit doesn't exist on the internet (or I couldn't find one after many hours of looking). I'd say it's about 90% accurate based on the MH-6J cockpit and a real AH-6J pilot.

 

Thanks to:

Particleman for basic external texturing

CptSmiley for the original F-16 demo

Nero.ger for his RWR example script

A-4E dev team for providing working examples of weapon systems

 

svOd8I0.jpg

TaVUt0G.jpg

mWackzU.jpg


Edited by nibbylot
  • Like 9
  • Thanks 5
Link to comment
Share on other sites

Explanation of main panel

eKLaTUU.jpg

 

Cold start procedure:

1. Power Selector Switch up for battery (B) or down for ground power (LCTRL+B) (ground crew must connect ground power for this option)

2. Hold Starter Switch (Home) until N1 RPM is above 15%

3. Push Thottle Idle cutoff (End) to allow fuel flow to start and continue holding Starter Switch until N1 RPM reaches 62%

4. Turn on Generator and Inverter Switches

5. Increase N1 RPM to 100% by turning throttle (Page Up)

 

You can switch seats with '1' and '2'.

'C' to request control.

 

 

Change log

0.4 13 Oct

- Added option to remove aiming dot (under special options)

- External textures unwrapped and new basic textures thanks to Particleman

- Added cold start procedure to kneeboard

- Fixed bug where using the ']' key to cycle kneeboard pages moved idle cutoff and shut down engine

- Engine sound fixed (due to DCS update)

- RWR updated to more closely match real APR-39 display

- Added main menu logo

- Rockets able to be loaded when weapon plank removed - fixed

 

0.35 6 August

- Added zoom axis

- Changed rockets in loadout from practice to HE and added White Phosphorus

- Added menu background by Silvrav

- Added segmented display to fuel gauge

EFM

- Lift now affected by missing rotor blades

- Further reduced pitch-back at high speed

- First implementation of ground effect and VRS introduced

- Added experimental N2 and TOT simulation

 

0.3 26 June 2020

- Added GAU-19 .50 cal gattling gun

- Added basic Force Feedback support

- Added option to remove weapon platform

- Added trim controls

- Added controls indicator

- M134 minigun now drops spent shells

EFM:

- labeled data tables so they are easier to understand their affect on the FM

- reduced rotational instability during straight and level flight

 

0.21 20 June 2020

- Fixed throttle wrap-around when using keyboard

- Added throttle axis assignment

- Changed to have full rpm on hot start

 

0.2 16 June 2020

- Added M880 digital clock display

- Removed some unused key commands + fixed missing view commands for joystick

- Moved engine and electric system from lua to EFM to provide better working example

- Reduced pitch back at high speed

- Cleaned up source code and reorganized

- Updated DCS API (wHumanCustomPhysicsAPI) with newest version

 

0.11 23 March 2020

-Added more network animations for multiplayer

-Added option for copilot to take control

-Added Mainpanel layout diagram in Doc folder

 

0.1 22 March 2020

- Initial Release


Edited by nibbylot
Link to comment
Share on other sites

I downloaded it just to see how it is modelled so far, as I have been in a couple of old MD-500s when I was younger. But, when I set everything up, it wouldn't let me get in the cockpit. Is there something I missed?

 

Try the link again please, I changed a setting so it might work now.

  • Like 1
Link to comment
Share on other sites

Cool mod! I'm not helo pilot but I'll definatelly take a look.

 

Did you build the EFM from scratch or is it based on existing FM available?

 

Yes and no. It's not built from scratch in that I used the F-16 EFM demo by CptSmiley as a base and used the table lookup functions in that example. But the specific functions used in the equations of motions are scratch. It's based on the data from NASA CR-3144.

 

If you're interested in how it works, there is 6 equations of motion (forward, down and right force, and pitch, yaw, roll moments ) and for each equation there is 10 elements (3 airspeed directions, 3 rollrates, and 4 inputs). You add those 10 elements up and multiply it by the mass if its a force or the inertia in that direction if its a moment. So in essence there's 60 data points acting at any given time.

  • Like 1
Link to comment
Share on other sites

Very cool. btw will you update the helicopter model in the future? :D

 

I will consider it, but currently I am working on other projects. Ideally I want to learn how to do PBR textures and use photoshop but that takes time and this was started as more of an example for EFM. I am doing this all by myself and spent about 4 months total doing what you see so far so if you want to see a better looking helicopter then learn some skills and help out.

Link to comment
Share on other sites

I will consider it, but currently I am working on other projects. Ideally I want to learn how to do PBR textures and use photoshop but that takes time and this was started as more of an example for EFM. I am doing this all by myself and spent about 4 months total doing what you see so far so if you want to see a better looking helicopter then learn some skills and help out.

 

I would be able to help provide texture / model / pbr conversion work if you need it.

Link to comment
Share on other sites

I spent the better part of the morning with your AH-6J. It installed via OVGME perfectly.

I bound my controls like a normal helicopter, without any curves for my first few flights.

Lifting off, its very squirrely. It wanted to rotate backwards immediately and wanted to "fall off" if not kept perfectly centered.

 

So I went back into the controls and used similar settings to the Gazelle, because of its size.

For Pitch & Roll, I used 0 Deadzone, 100 for X, 80 for Y and a +5 Curve. For my pedals, I brought it back to -10 and again to -5, settling there. With these, I was able to maintain a stable hover, but again with some left stick and pedal to prevent it from drifting off right. As I moved into forward flight, at 80kts, I'm having to put nearly full forward cyclic to prevent the nose from going skyward. I flew around and made several transitions into a hover and landing. No VRS was encountered that I noticed and you mentioned.

 

On the final few flights, I armed up. No noticeable effect of weight or change in the FM with weapons on board. So these were purely cosmetic but very fun.

 

All in all, you've got the beginning of a believable helo FM. It has inertia and isnt on rails. Some trim would be nice, to overcome the excessive amount of pitch.

 

I look forward to the next version.


Edited by ST0RM
Link to comment
Share on other sites

Was instantly able to pick up the bird and bring it into a stable hover.

No curves for my controls - I use a Microsoft Sidewinder FFB as cyclic stick and a Hotas for collective.

The bird is quite sensitive to pilot induced oscillations.

It feels and flies like a nimble helicopter and shows a believable behaviour.

Was instantly having a lot of fun with it flying through open hangars and curving between buildings.

I hope the upcoming OH-58 will feel like that.

 

Good job!

Thumbs up - finally we have a basic helicopter flight model.

This could be the start of a community project.

 

Next steps could be adding an accented ground effect and some non-linear dampening around the axes to break up the ‘pure’ mathematical flight model into something more lifelike.

 

In the entry.lua there are following lines:

local FM =

{

[1] = self_ID,

[2] = "AH6", -- name of dll

center_of_mass = {0,0,0}, -- center of mass position relative to object 3d model center for empty aircraft

moment_of_inertia = {446, 1219, 979, 50}, -- moment of inertia of empty (Ixx,Iyy,Izz,Ixz) in kgm^2 --128

}

 

Questions:

Can you give us a picture of the model with the position of the center?

Is moment of inertia taken as input for your flight model?

What else can a user change in your flight model by just editing a file without compiling a DLL?


Edited by Rifter
Typo
Link to comment
Share on other sites

Hi,

exactly the type of helicopter in DCS always really wanted. I'm impressed :thumbup: with the processing and flight model.

Thank you so much for demonstration of the AH-6J and I look forward to the future development module.

🖥️MSI PRO Z690-A DDR4, Kingston 3600 MHz 64 Gb, i5 12600K, Gigabyte RTX 4090, Samsung SSD 970 EVO Plus,🕹️VKB NXT Premium.

Link to comment
Share on other sites

I spent the better part of the morning with your AH-6J. It installed via OVGME perfectly.

I bound my controls like a normal helicopter, without any curves for my first few flights.

Lifting off, its very squirrely. It wanted to rotate backwards immediately and wanted to "fall off" if not kept perfectly centered.

 

So I went back into the controls and used similar settings to the Gazelle, because of its size.

For Pitch & Roll, I used 0 Deadzone, 100 for X, 80 for Y and a +5 Curve. For my pedals, I brought it back to -10 and again to -5, settling there. With these, I was able to maintain a stable hover, but again with some left stick and pedal to prevent it from drifting off right. As I moved into forward flight, at 80kts, I'm having to put nearly full forward cyclic to prevent the nose from going skyward. I flew around and made several transitions into a hover and landing. No VRS was encountered that I noticed and you mentioned.

 

On the final few flights, I armed up. No noticeable effect of weight or change in the FM with weapons on board. So these were purely cosmetic but very fun.

 

All in all, you've got the beginning of a believable helo FM. It has inertia and isnt on rails. Some trim would be nice, to overcome the excessive amount of pitch.

 

I look forward to the next version.

 

Thanks for the constructive feedback! I'll use that while working on the next version.

 

As far the weapons, they should affect weight balance, not sure about drag I'll look into that but you can see the weight effects if you load a rocket pod on on side and not the other.

 

Was instantly able to pick up the bird and bring it into a stable hover.

No curves for my controls - I use a Microsoft Sidewinder FFB as cyclic stick and a Hotas for collective.

The bird is quite sensitive to pilot induced oscillations.

It feels and flies like a nimble helicopter and shows a believable behaviour.

Was instantly having a lot of fun with it flying through open hangars and curving between buildings.

I hope the upcoming OH-58 will feel like that.

 

Good job!

Thumbs up - finally we have a basic helicopter flight model.

This could be the start of a community project.

 

Next steps could be adding an accented ground effect and some non-linear dampening around the axes to break up the ‘pure’ mathematical flight model into something more lifelike.

 

In the entry.lua there are following lines:

local FM =

{

[1] = self_ID,

[2] = "AH6", -- name of dll

center_of_mass = {0,0,0}, -- center of mass position relative to object 3d model center for empty aircraft

moment_of_inertia = {446, 1219, 979, 50}, -- moment of inertia of empty (Ixx,Iyy,Izz,Ixz) in kgm^2 --128

}

 

Questions:

Can you give us a picture of the model with the position of the center?

Is moment of inertia taken as input for your flight model?

What else can a user change in your flight model by just editing a file without compiling a DLL?

 

The center of the model is the middle of the rotor blades. And yes those inertia values are directly used in the fm, changing them will change how easy it is to pitch, roll and yaw.

As far as other things you can affect without compiling the dll, the mass can also be changed.


Edited by nibbylot
Link to comment
Share on other sites

@nibbylot

Great work!

Cold start working OK.

But weapons do not work. I have master arm ON, loaded rockets and guns and nothing happened after pushing the trigger for cannon or rockets.

Whats needs to use weapons?

Link to comment
Share on other sites

@nibbylot

Great work!

Cold start working OK.

But weapons do not work. I have master arm ON, loaded rockets and guns and nothing happened after pushing the trigger for cannon or rockets.

Whats needs to use weapons?

 

Did you make sure the 2 knobs above master arm are not set to OFF? The rocket and gun selector have OFF,L,LR,R

Link to comment
Share on other sites

The center of the model is the middle of the rotor blades. And yes those inertia values are directly used in the fm, changing them will change how easy it is to pitch, roll and yaw.

 

I’m a bit confused by the ‘0,0,0’ for the centre of mass.

If your model centre is in the rotor centre, and there is no offset to to centre of mass, the moment of inertia values would be about the axes through the centre of the rotor?

Link to comment
Share on other sites

The center of the model is the middle of the rotor blades.

 

According to the NASA document the CG is somewhere around WL50.

If the model centre lays at WL 83, there should be an offset of 33” downwards.

33” are around 0.84 meters, which means the line for center_of_mass in the entry.lua should be:

 

center_of_mass = {0,-0.84,0},

 

Furthermore - since the y and z axes are swapped in DCS, the moment_of_intertia in entry.lua should probably be:

 

moment_of_inertia = {446, 979, 1219, 50},

 

(CptSmiley also did that in his F16 FM compared to the original source).

 

As a hint for all testers of this bird:

The given moments of inertia do not represent the max load out of the chopper.

For the little bird that would be 3,100 lb or 1,406 kg.

The given values are for 2570 lb or 1157 kg.

 

Besides of that: The OH-6 is a great Mod and I really hope it gets some attention from the community in terms of suggestions and improvements.

 

Thanks, nibbylot. Appreciate your work!

MoI.jpg.3488b472424c0d50990a47a99ff40952.jpg

OH-6_CG.jpg.bfca2bb012529cd21d42b370c871fa45.jpg

Link to comment
Share on other sites

According to the NASA document the CG is somewhere around WL50.

If the model centre lays at WL 83, there should be an offset of 33” downwards.

33” are around 0.84 meters, which means the line for center_of_mass in the entry.lua should be:

 

center_of_mass = {0,-0.84,0},

 

Furthermore - since the y and z axes are swapped in DCS, the moment_of_intertia in entry.lua should probably be:

 

moment_of_inertia = {446, 979, 1219, 50},

 

(CptSmiley also did that in his F16 FM compared to the original source).

 

As a hint for all testers of this bird:

The given moments of inertia do not represent the max load out of the chopper.

For the little bird that would be 3,100 lb or 1,406 kg.

The given values are for 2570 lb or 1157 kg.

 

Besides of that: The OH-6 is a great Mod and I really hope it gets some attention from the community in terms of suggestions and improvements.

 

Thanks, nibbylot. Appreciate your work!

 

Sorry, I did not explain well enough. I meant the x and y axis center is in the rotor hub, the z is not. You can see the model center using model viewer, but here is a picture to show you. The center of mass is close to what the NASA document says.

 

RHWzh9d.jpg

Link to comment
Share on other sites

Nice little mod. Just flew a couple patterns with it. Feels pretty good for a generic flight model. I have only a few hours in smaller helos, most of my time is in bigger ones, but I feel like the pitch and roll is a little less stable IRL.

 

The torque effect feels spot on, though. Fun to mess around with, and would be awesome if completely fleshed out.

 

i9 12900k @ 4.9ghz, 32gb RAM

Nvidia RTX 3090

Windows 11 x64

Valve Index

Brunner CLS-E w/RS F16GRH, Virpil TCS Rotor Plus Collective, BRD F1 Pedals, WH Throttle, FSSB R3 w/WH Grip, PointCTRL v1

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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