The _OBJ that is referred to in those examples should be your chopper, not a game logic..
This way the smoke is attached to the chopper and so the smoke will emit from it.
It should work just fine if you just copy/paste one of those examples, put them in a script and edit a bit
smoke.sqf (using the Mixed Smoke Large example)
_ps1 setParticleCircle [0, [0, 0, 0]];
_ps1 setParticleRandom [0, [0.4, 0.4, 0], [0.4, 0.4, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0];
_ps1 setParticleParams [["\ca\data\particleeffects\fireandsmokeanim\smokeanim.p3d", 8, 1, 6], "", "billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.2, 0.2, 0.2, 0.3], [0.35, 0.35, 0.35, 0.2], [0.5, 0.5, 0.5, 0]], [0.125], 1, 0, "", "", _this];
_ps1 setDropInterval 0.2;
_ps2 setParticleCircle [0, [0, 0, 0]];
_ps2 setParticleRandom [0, [0.4, 0.4, 0], [0.4, 0.4, 0], 0, 0.25, [0, 0, 0, 0.1], 0, 0];
_ps2 setParticleParams [["\ca\data\particleeffects\fireandsmokeanim\smokeanim.p3d", 8, 3, 1], "", "billboard", 1, 8, [0, 0, 0], [0, 0, 4.5], 0, 10, 7.9, 0.5, [4, 12, 20], [[0.33, 0.33, 0.33, 0.8], [0.66, 0.66, 0.66, 0.4], [1, 1, 1, 0]], [0.125], 1, 0, "", "", _this];
_ps2 setDropInterval 0.2;
You can execute the script from some trigger, init.sqs/sqf or from the chopper's init field for example like this (the choppername should be changed to your chopper's name of course)
call {choppername execVM "smoke.sqf"}
If you want the smoke to stop at some point that of course has to be added in the above example script.
Can't tell in 100% certainty that this will work because I can't test this at the moment..