사이보그 V1
52,000 원
Flight Sim Yoke
219,000 원
T-Rudder Pedals Mk. IV
340,000 원


 
 
  로터리(ANT, RNG) 프로그래밍

로터리(ANT, RNG) 프로그래밍.

1) FoxyGUI 프로그래밍 화면 명칭 및 기능

1) 1형식 구문: 일정 키값 반복 생성

2) 2형식: 일정한 위치에서 임의의 값 생성
(Custom character sequence, fixed regions)

3) 3형식: held 키값 생성 (Held character generation)

4) 4형식: Pulse 값 생성 (Pulsed character generation)

5) 5형식: 가변적인 위치에서 임의의 값 생성
(Custom character sequence, variable regions)

6) 6형식: 가변적인 위치에서 일정 키값 반복 생성
(Repeating character generation, variable regions)



2) 로터리(ANT, RNG) 프로그래밍.



1) FoxyGUI 프로그래밍 화면 명칭 및 기능

폭시GUI의 로타리 스위치 프로그래밍을 위해서는 메뉴바의 "Advanced programming"에서 "Programming the Range and Antenna knobs"를 선택합니다.


FOXY GUI 로타리 프로그래밍 시작화면

맨 윗줄에서 Range 놉(RNG)과 Antenna 놉(ANT)중에서 선택을 합니다.
둘의 설정법은 같고, 각 항목의 설정을 마칠 때마다 오른쪽 아래의 Accept 아이콘을 클릭하면 각 항목별 설정이 적용됩니다.
폭시GUI에서 쓸 수 있는 로타리 스위치의 설정형식은 Type1에서 Type 4까지 4가지가 있습니다.

Type1은 왼쪽으로 돌릴 때 나오는 값과 오른쪽으로 돌릴 때 나오는 값을 정하는 형식입니다. 입력칸들은 다음과 같습니다.
● number of Characters : 로타리 축을 몇등분할 것이냐를 정합니다. 센터값이 있다면 짝수라야 합니다.
● Step up character : 시계방향으로 돌릴 때 로타리축을 등분한 지점마다 생성될 값을 이곳에 입력합니다.
● Step Down Character : 로타리를 시계 반대방향으로 돌릴 때 생성될 값을 여기에 입력합니다.
● Cenrte Character : 로차리 스위치를 중앙 고정턱 위치에 놓았을 때 생성되는 값을 정해줍니다.

Type 2는 로타리 축을 분할하여 각 분할 영역에서 생성되는 값을 일일이 지정해주는 것입니다.

● Nuber of bands : 분할 영역의 개수
● Character sequence : 로타리를 왼쪽에서 오른쪽으로 돌릴 때 생성될 값들을 순서대로 써줍니다. 위칸의 분할 영역의 개수와 같거나, 생성될 값보다 분할 영역의 개수가 더 커야 합니다.

Type3은 로타리축을 왼쪽, 오른쪽, 중앙위치로 구분하여 로타리 축이 각 영역에 있을 때 생성될 값을 지정하는 방식입니다. 이 형식에서는 해당 값을 held하는 것(/H 명령기호)과 같은 결과가 나타납니다.

● Left Character : 로타리 축이 중앙 고정턱의 왼쪽에 있을 때 생성될 값을 지정합니다.
● Centre Character : 로타리 축이 중앙 고정턱에 있을 때 생성될 값을 지정합니다. 중앙 위치의 값을 넣고 싶지 않다면, 이 칸에 " ^ " 를 넣습니다.
● Right Character : 로타리 축이 중앙 고정턱의 왼쪽에 있을 때 생성될 값을 지정합니다.

Type4는 Type3과 같이 로타리 축을 왼쪽, 오른쪽, 중앙 위치로 3등분하되, 일정한 시간마다 지정된 값이 반복 생성되는 방식입니다.

● Pulse rate : 값이 반복되는 시간주기를 정합니다. 1000분의 초단위로 입력합니다. 예를 들어, 이 칸에 500을 입력했다면 같은 값이 0.5초마다 반복해서 생성됩니다.
● Left Character : 로타리 축이 중앙 고정턱의 왼쪽에 있을 때 생성될 값을 지정합니다.
● Centre Character : 로타리 축이 중앙 고정턱에 있을 때 생성될 값을 지정합니다. 중앙 위치의 값을 넣고 싶지 않다면, 이 칸에 " ^ " 를 넣습니다.
● Right Character : 로타리 축이 중앙 고정턱의 왼쪽에 있을 때 생성될 값을 지정합니다.

5형식 구문은 2형식 구문과 같으나, 각각의 키값이 생성되는 영역을 %단위로 임의로 지정한다는 점만 다릅니다. 즉 1형식 구문의 특수 파생형이 6형식인 것과 마찬가지로, 2형식 구문의 특수 파생형이 형식 구문입니다.
6형식 구문은 1형식 구문 부분에서 간단하게 설명한 바와 같이, 키값 생성 영역을 사용자가 지정해주는 1형식 구문의 특수 파생형입니다.

위에서 말한대로 로타리 스위치 축을 비롯한 각 축들에 키보드 값을 프로그래밍하는데는 6가지의 구문 형식이 있습니다.

1형식: 일정 키값 반복 생성 (Repeating character generation)
2형식: 일정한 위치에서 임의의 값 생성 (Custom character sequence, fixed regions)
3형식: held 키값 생성 (Held character generation)
4형식: Pulse 값 생성 (Pulsed character generation)
5형식: 가변적인 위치에서 임의의 값 생성 (Custom character sequence, variable regions)
6형식: 가변적인 위치에서 일정 키값 반복 생성 (Repeating character generation, variable regions)



1) 1형식 구문: 일정 키값 반복 생성

1형식에서는 일정한 키값이나 마우스 값이 반복 산출되며, 다음과 같은 문법을 따릅니다.

[축 이름] [구문 형식] [영역 개수(최대 50)] [Up 키값] [Down 키값] [중앙 키값(옵션)] FORCE_MACROS(옵션)

예) ANT 1 10 u d c - FORCE_MACROS

위의 그림에서 오른쪽 하단에 있는 Accept 버튼을 누르면 아래와 같은 joystick 파일의 프로그래밍 구문을 볼 수 있습니다.

이와 같이 프로그래밍 후, ANT 놉 스위치를 왼쪽 끝에서부터 시계 방향으로 돌린 다음 반시계방향으로 돌리면 다음과 같은 값이 생성됩니다.

프로그래밍 결과 값: u u u u u c u u u u u d d d d d c d d d d d

여기에는 일반 키값뿐 아니라 매크로값도 사용이 가능합니다.
예를 들어 다음과 같은 매크로가 있다고 해보겠습니다.

Chaff_Flare = c DLY(30) f
Getting_desperate = RPT(20) (c f)

그러면, 1형식 구문을 다음과 같이 만들 수 있습니다.
RNG 1 5 Chaff_Flare Getting_desperate

여기서, [영역 개수]의 숫자는 축을 한쪽 끝에서 다른쪽 끝까지 돌렸을 때 중앙값을 제외하고 생성되는 값의 개수입니다. (구형 TM의 로타리 스위치 명령어에서는 중앙에서 한쪽 끝까지 돌릴 때 생성되는 개수였습니다.) 또한, 로타리 스위치의 중앙 고정턱에 해당하는 중앙값은 선택사항으로 생략할 수 있습니다. 중앙 값을 생략하면 다음과 같은 구문이 됩니다.

구문: RNG 1 6 u d
생성: u u u u u u d d d d d d

반면에, 아래와 같이 중앙값에 무효값(^)을 입력하면 다음과 같이 중앙값 생략과는 조금 다른 결과가 생성됩니다.



구문: RNG 1 6 u d ^
생성: u u u 공란 u u u d d d 공란 d d d


이 무효값인 " ^ "는 유저가 로타리 축의 중앙지점 복귀가 필요할 때 사용할 수 있습니다.

FORCE_MACROS 명령어는 키값 생성 속도를 늦추어서 키값이 원래 의도했던 것과 다르게 생성되는 것을 방지하는 기능을 합니다.

주의)
1) 다음과 같은 구문은 불가능합니다.
RNG 1 3 a b c d e f 이 구문 대신,

다음과 같은 구문으로 바꾸는 것은 가능합니다.
RNG 1 3 (a b c) (d e f)

위의 그림에서 오른쪽 하단에 있는 Accept 버튼을 누르면 아래와 같은 joystick 파일의 프로그래밍 구문을 볼 수 있습니다.

또는 RNG 1 3 ABC_macro DEF_macro

매크로:
ABC_macro = a b c
DEF_macro = d e f


2) 로타리 스위치 1형식 구문에는 /U, /M, /D, /I, /O 명령기호를 사용할 수 있습니다.
예) RNG /U 1 3 F1 F2
/M 1 5 (SHF UARROW) (SHF DARROW)
/D /I 1 6 e t F5
/O 1 4 [ ] KP5


3) 1형식 구문에서 Shift 등의 버튼을 함께 누를 때는, 반드시 괄호로 묶어주거나 매크로를 이용하여야 합니다.
예)
RNG 1 3 SHF F1 SHF F2 (X)
RNG 1 3 (SHF F1) (SHF F2) (O)
RNG 1 3 Look_Up Look_Down (O)

매크로:
Look_Up = SHF F1
Look_Down = SHF F2
또는, 구문에 키값을 대문자로 입력하면 Shift를 누른 값과 같은 결과가 나옵니다.

예) 아래 두 구문은 결과값이 같습니다.
RNG 1 3 P Q
RNG 1 3 (SHF p) (SHF q)


4) 1,2,5,6,형식 구문에서는 /P, /R, /H 명령기호도 매크로나 괄호를 이용하여 사용이 가능합니다.
예) RNG 1 3 Macro_1 Macro_2

매크로:
Macro_1 = /P a /R b
Macro_2 = /H d
(그러나 로타리 스위치에 /H 명령을 쓸 일이 있을지는 모르겠군요^^)


5) 1형식 구문에서는 /T (토글) 명령기호를 쓸 수 없습니다.


6) 6형식 구문은 1형식 구문의 특수 파생형으로서, 키값이 생성되는 영역을 지정해주는 것입니다.
다음의 두 구문은 같은 결과를 생성합니다.

예)
ANT 1 4 u d c
ANT 6 5 (0 20 40 60 80 100) u d c

ANT 놉을 왼쪽 끝에서 오른쪽 끝까지 돌렸을 때의 결과:
u u c u u d d c d d


로터리 프로그래밍(1형식)의 예

아래의 그림은 IL-2를 예를 들어 로터리 프로그래밍 1형식을 이용하여 Aileron trim 과 Elevator Trim을 각각 RNG, ANT에 프로그래밍한 화면과 Accept 버튼을 눌러 나타나는 joystick 파일의 프로그래밍 구문 입니다.



2) 2형식: 일정한 위치에서 임의의 값 생성

2형식 구문은 로타리 스위치에서 일련의 다른 키값이나 매크로들을 생성할 때 쓰이며, 문법은 다음과 같습니다.

[축 이름] [구문 형식][영역 개수(최대 50)] {원하는 키값들} - FORCE_MACROS(옵션)
예) ANT 2 5 a b c d e - FORCE_MACROS

위의 그림에서 오른쪽 하단에 있는 Accept 버튼을 누르면 아래와 같은 joystick 파일의 프로그래밍 구문을 볼 수 있습니다.

위 구문에서, ANT 놉 스위치를 위쪽 끝에서부터 시계방향으로 돌리고 나서 반시계방향으로 다시 돌려내리면 다음의 결과가 나옵니다:

b c d e d c b a

단, 여기서 맨 끝에 해당하는 값은 축의 끝에 닿았을 때 한번만 생성이 됩니다. 예를 들어, 위의 구문으로 ANT 놉을 끝에서 끝까지 여러 번 돌린다면 다음과 같은 결과가 생성됩니다.

b c d e d c b a b c d e d c b a b 등등…

또한, 구 TM 프로그래밍에서는 "영역 개수"와 "원하는 키의 종류 수"가 같아야 했으나, 현재는 "영역 개수"가 같거나 더 많아도 됩니다.
2형식 구문에서도 다음과 같이 매크로를 사용할 수 있습니다.

예)
RNG 2 5 Emcon-1 Emcon-2 Emcon-3 Emcon-4 Emcon-5

매크로:
Emcon-1 = e DLY(40) 1
Emcon-2 = e DLY(40) 2
Emcon-3 = e DLY(40) 3
Emcon-4 = e DLY(40) 4
Emcon-5 = e DLY(40) 5

주의)
1) 모든 형식의 구문에서 /U, /M, /D, /I, /O 명령기호를 쓸 수 있습니다.


예)
ANT /U 1 6 a b c
/M 1 6 d e f
/D 2 3 g h I


2) 단, 키값 자체에 /U, /M, /D, /I, /O 명령기호를 쓸 수는 없습니다. 이를 원할 경우 매크로를 사용하여야 합니다.
예)
RNG 2 3 a b macro_1

매크로:
macro_1 = /I KP1 /O KP2

3) 1,2,5,6 형식 구문에서 /P, /R, /H 명령기호를 사용할 수 있습니다.


로터리 프로그래밍(2형식)의 예

아래의 그림은 IL-2를 예를 들어 로터리 프로그래밍 2형식을 이용하여 Power를 프로그래밍한 화면과 Accept 버튼을 눌러 나타나는 joystick 파일의 프로그래밍 구문 입니다.



3) 3형식: held 키값 생성

3형식 구문은 Held 키값을 생성하며, 문법은 다음과 같습니다:

[축 이름] [구문 형식] [왼쪽 키값] [중앙 키값] [오른쪽 키값]

예)
RDDR 3 l c r

위의 그림에서 오른쪽 하단에 있는 Accept 버튼을 누르면 아래와 같은 joystick 파일의 프로그래밍 구문을 볼 수 있습니다.

이 구문의 결과값은, 러더를 왼쪽으로 차고 있는 동안 1을 누르고 있고, 오른쪽을 차는 동안에는 r을 누르고 있고, 러더를 중앙으로 풀었을 때는 c를 누른 것과 같은 신호가 생성됩니다. 즉, 좌우 각 방향에 대해서 /H 명령기호의 키값 명령을 준 것과 같습니다. 키보드에 러더 키가 할당되어있을 때 안테나 놉 스위치를 러더로 쓴다거나 할 때 유용한 구문형식입니다.

주의)
1) 3형식 구문에서는 축이 좌, 우, 중앙 이렇게 3개 영역으로만 나뉩니다.
2) 중앙 키값을 원치 않는다면, 중앙 키값에 무효값인 " ^ " 를 넣으면 됩니다.


예)
RDDR 3 l ^ r


로터리 프로그래밍(3형식)의 예

아래의 그림은 IL-2를 예를 들어 로터리 프로그래밍 3형식을 이용하여 Rudder를 프로그래밍한 화면과 Accept 버튼을 눌러 나타나는 joystick 파일의 프로그래밍 구문 입니다.



4) 4형식: Pulse 값 생성

4형식 구문은 축을 3분할하는 것은 3형식과 비슷하나, 3형식이 지정된 키값을 누르고 있는 것과 같은 기능을 하는데 비해, 4형식 구문은 지정된 값을 마치 깜빡등과 같이 정해진 시간단위로 반복 생성하는 기능을 가집니다.
문법은 다음과 같습니다:

[축 이름] [구문 형식] [키값 반복시간(0.001초 단위)] [왼쪽 키값] [중앙 키값] [오른쪽 키값]

예)
RNG 4 1000 l c r

위의 그림에서 오른쪽 하단에 있는 Accept 버튼을 누르면 아래와 같은 joystick 파일의 프로그래밍 구문을 볼 수 있습니다.

위 구문의 결과는, RNG 놉 스위치를 중앙에서 왼쪽에 놓고 있으면 매 1000밀리초(1초)마다 " 1 "이 생성되며 오른쪽에 놓고 있으면 역시 1초마다 " r "이 생성됩니다.

주의)
1) 중앙 키값이 필요치 않으면 그자리에 " ^ " 을 넣으면 됩니다.


예)
RNG 4 60 l ^ r


2) 키값 반복 시간은 0에서 82800000(23시간)까지 가능합니다.

현재 열려있는 프로파일을 쿠거로 다운로드 합니다. 다운로드 전에는 키테스트나 그밖에 입력 확인이 안되니 먼저 다운로드후 확인해야 합니다.


로터리 프로그래밍(4형식)의 예

아래의 그림은 IL-2를 예를 들어 로터리 프로그래밍 4형식을 이용하여 Auto Pilot 과 Toggle Wingtip Smoke를 RNG에 프로그래밍한 화면과 Accept 버튼을 눌러 나타나는 joystick 파일의 프로그래밍 구문 입니다.

이 경우 RNG버튼을 왼쪽으로 돌리면 Auto Pilot이 10초동안만 지속되며 반대로 오른쪽으로 돌리면 Toggle Wingtip Smoke가 10초 동안만 지속됩니다.(1000분의 초단위로 입력)



5) 5형식: 가변적인 위치에서 임의의 값 생성

5형식 구문은 2형식 구문과 같으나, 각각의 키값이 생성되는 영역을 %단위로 임의로 지정한다는 점만 다릅니다. 즉 1형식 구문의 특수 파생형이 6형식인 것과 마찬가지로, 2형식 구문의 특수 파생형이 형식 구문입니다. 문법은 다음과 같습니다.

[축 이름] [구문 형식] [영역 개수(최대 50)] [영역 폭(%)] {원하는 키값들} - FORCE_MACROS(옵션)

예)
THR 5 4 (0 20 45 70 100) a b c d - FORCE_MACROS

위 구문의 결과는,
스로틀이 0에서 20%까지 일 때 - " a " 생성
스로틀이 21에서 45%까지 일 때 - " b " 생성
스로틀이 46에서 70%까지 일 때 - " c " 생성
스로틀이 71에서 100%까지 일 때 - " d " 생성

5형식 구문의 특성은 기본적으로 2형식과 같으나, 아날로그 축에 디지털 키값을 지정할 수 있으므로 그 축에 다양한 기능을 추가로 부여할 수 있습니다. 예를 들자면, 스로틀 축에 디지털 키값을 부여하면 스로틀을 낮췄을 때 역추진이나 스로틀 idle 기능, 또는 휠브레이크 등등이 기능이 작동하도록 지정할 수가 있습니다.

예)
THR /U
/M
/D 5 1 (0 5) Wheelbrakes


매크로:
Wheelbrakes = /P b /R b

위 구문에서, 도그파이트 스위치가 Down 위치에 있고 스로틀이 최소 위치로 당겨져 있다면 휠브레이크가 작동을 하게 됩니다. 한편 도그파이트 스위치가 Middle이나 Up 위치에 있을 때는 아무런 디지털 키값이 생성되지 않습니다.

주의)
1) 구형의 TM 프로그래밍에서는 스로틀을 디지털 값으로 사용할 때 스로틀을 끝까지 내린 위치를 정의하는 BTN MT 라는 명령 구문이 있었으나, 개선된 쿠거의 프로그래밍 기능으로 인하여 이 구문 명령은 없어졌습니다. 그 대신, 이 5형식 구문을 이용하면 같은 효과를 얻을 수 있습니다.

2) 5형식 구문으로 축에 디지털 값을 부여하더라도, 그 축의 아날로그 값의 선형 곡선은 변하지 않습니다.

3) 1, 2, 5, 6 형식 구문에서는 /P, /R, /H 명령기호를 사용할 수 있지만, 매크로 또는 괄호를 이용하여 기입하여야 합니다.


예)
THR 5 1 (0 5) Wheelbrakes

매크로:
Wheelbrakes = /P b /R b

또는
THR 5 1 (0 5) (/P b /R b)

틀린 구문:
THR 5 1 (0 5) /P b /R b (X)



6) 6형식: 가변적인 위치에서 일정 키값 반복 생성

6형식 구문은 1형식 구문 부분에서 간단하게 설명한 바와 같이, 키값 생성 영역을 사용자가 지정해주는 1형식 구문의 특수 파생형입니다. 문법은 다음과 같습니다:

[축 이름] [구문 형식] [영역 개수(최대 50)] [중앙키값(옵션)]

예)
ANT 6 5 (8 20 40 45 70 80) u d c - FORCE_MACROS

1형식 구문과 달리, 6형식 구문에서는 중앙 키값을 지정할 수 있습니다. 이때 중앙 키값은 매 지정 영역의 사이에서 생성이 됩니다. 위 구문에서, ANT 놉을 왼쪽 끝에서부터 오른쪽 끝까지 시계 방향으로 돌리면 다음과 같은 결과가 생성됩니다.

u u c u u d d c d d

중앙 키값을 넣지 않은 경우의 구문과 결과는 다음과 같습니다.

ANT 6 5 (8 20 40 45 70 80) u d
u u u u u d d d d d



 
   





The World For Flight
 
 
대한민국 공군 비행시뮬레이션대회(http://www.airforce.mil.kr/FSH)