4.1.28. cmmCfgSetMioProperty¶
SYNOPSYS¶
VT_I4 cmmCfgSetMioProperty (
[in] VT_I4 Axis, [in] VT_I4 Propld, [in] VT_I4 PropVal
)
DESCRIPTION¶
각종 모션 입출력 신호에 대한 환경을 설정합니다.
PARAMETER¶
Axis: 축 번호. 축번호는 상수값으로 [cmX1] 부터 0 번째 축을 기준 축으로 임의의 축을 설정할 수 있습니다.
PropId : 어떠한 환경에 대하여 설정할 것인지를 지정하는 매개 변수입니다. 이 값에 대해서는 아래 표를 참조하십시오.
PropVal : PropId 로 지정된 환경에 대한 설정 및 반환값.
PropId |
Meaning & PropVal |
---|---|
0 (cmALM_LOGIC) |
Alarm(ALM) 신호의 입력로직입니다. |
1 (cmALM_MODE) |
Alarm 입력이 ON 되어 해당 축의 모션작업이 정지할 때 정지되는 방식의 설정 값입니다. |
2 (cmCMP_LOGIC) |
위치비교출력(CMP) 신호의 출력방식 설정 값입니다. |
3 (cmDR_LOGIC) |
-/+ DR 신호의 입력로직 설정 값입니다. |
4 (cmEL_LOGIC) |
-EL 과 +EL 신호의 입력로직 설정 값입니다. |
5 (cmEL_MODE) |
-/+ EL 신호가 ON 되어 정지할 때 정지 방식의 설정 값입니다. |
6 (cmERC_LOGIC) |
ERC 출력 신호의 출력로직의 설정 값입니다. |
7 (cmERC_OUT) |
원점복귀 완료 시에 ERC 출력여부의 설정 값입니다. |
8 (cmEZ_LOGIC) |
EZ(엔코더 Z 상) 입력 신호의 입력로직의 설정 값입니다. |
9 (cmINP_EN) |
INP 신호 입력 활성화의 설정 값입니다. |
10 (cmINP_LOGIC) |
INP(Inposition) 신호의 입력로직 설정 값입니다. |
11 (cmLTC_LOGIC) |
LTC(Latch) 신호의 입력로직 설정 값입니다. |
12 (cmLTC_LTC2SRC) |
두 번째 LATCH COUNTER 의 대상카운터 설정 값입니다. |
13 (cmORG_LOGIC) |
ORG(원점센서) 신호의 입력로직 설정 값입니다. |
14 (cmSD_EN) |
SD(Start of Deceleration) 신호의 입력상태를 설정합니다. |
15 (cmSD_LOGIC) |
SD(Start of Deceleration) 신호의 입력로직 설정 값입니다. |
16 (cmSD_LATCH) |
SD(Start of Deceleration) 신호를 래치(Latch)할 것인지에 대한 속성값입니다. |
17 (cmSD_MODE) |
SD 신호에 따른 동작모드 설정 값입니다. |
18 (cmSTA_MODE) |
Start mode 의 설정 값입니다. |
19 (cmSTA_TRG) |
STA 신호가 ON 되는 형태를 설정합니다. |
20 (cmSTP_MODE) |
STP 신호모드의 설정 값입니다. |
21 (cmCLR_CNTR) |
CLR 신호가 입력되었을 때 CLEAR 되도록 할 모션컨트롤러의 카운터를 선택합니다. |
22 (cmCLR_SIGTYPE) |
CLR 신호의 신호 형태의 설정 값입니다. 설정 및 반환되는 PropVal 은 다음과 같습니다. |
23 (cmCMP_PWIDTH) |
CMP 출력은 One-shot pulse 로 출력되는데, 출력되는 펄스의 폭을 조절할 수 있습니다. |
24 (cmERC_ONTIME) |
ERC 출력펄스의 펄스폭의 설정 값입니다. |
25 (cmSVON_LOGIC) |
서보온(Servo-On) 신호의 출력 로직의 설정 값입니다. |
RETURN VALUE¶
Value |
Meaning |
---|---|
음수 |
수행 실패 |
cmERR_NONE |
수행 성공 |
Example¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | C/C++
#include “cmmSDK.h”
#include “cmmSDKDef.h”
void OnSetMioProperty_Set ()
{
long nAxisNo = 1; // MIO 신호 환경을 설정할 축을 선택합니다.
long nAlmLogic, nAlmMode; // ALM 신호 환경 설정 정보.
/* ALM 신호에 대해 설정되어 있는 로직 및 모드를 확인하여,
‘ALM Logic : B 접점, ALM Mode : 즉시 정지’ 로 설정합니다. */
// ALM 로직 설정 상태 확인 및 설정
if (cmmCfgGetMioProperty ( nAxisNo, cmALM_LOGIC, &nAlmLogic ) == cmERR_NONE )
{
if ( nAlmLogic != cmLOGIC_B)
{
// ALM 로직을 ‘B 접점 방식’으로 설정
cmmCfgSetMioProperty ( nAxisNo, cmALM_LOGIC, cmLOGIC_B );
}
}
// ALM 신호 ON 시 정지 모드 설정
if (cmmCfgGetMioProperty ( nAxisNo, cmALM_MODE, &nAlmMode ) == cmERR_NONE )
{
if ( nAlmMode != cmFALSE )
{
// ALM 신호 ON 시 정지 모드를 ‘즉시 정지’ 모드로 설정
cmmCfgSetMioProperty ( nAxisNo, cmALM_MODE, cmFALSE );
}
}
}
-------------------------------------------------------------------------------------------------------------
Visual Basic
Private Sub OnSetMioProperty_Set ()
Dim nAxisNo As Long ‘ MIO 신호 환경을 설정할 축을 선택합니다.
Dim nAlmLogic As Long, nAlmMode As Long ‘ ALM 신호 환경 설정 정보.
nAxisNo = 1
‘ALM 신호에 대해 설정되어 있는 로직 및 모드를 확인하여,
‘ALM Logic : B 접점, ALM Mode : 즉시 정지’ 로 설정합니다.
‘ ALM 로직 설정 상태 확인 및 설정
If cmmCfgGetMioProperty ( nAxisNo, cmALM_LOGIC, nAlmLogic ) = cmERR_NONE Then
If nAlmLogic <> cmLOGIC_B Then
‘ALM 로직을 ‘B 접점 방식’으로 설정
Call cmmCfgSetMioProperty ( nAxisNo, cmALM_LOGIC, cmLOGIC_B )
End If
End If
‘ ALM 신호 ON 시 정지 모드 설정
If cmmCfgGetMioProperty ( nAxisNo, cmALM_MODE, nAlmMode ) = cmERR_NONE Then
If nAlmMode <> cmFALSE Then
‘ ALM 신호 ON 시 정지 모드를 ‘즉시 정지’ 모드로 설정
Call cmmCfgSetMioProperty ( nAxisNo, cmALM_MODE, cmFALSE )
End If
End If
End Sub
-------------------------------------------------------------------------------------------------------------
Delphi
procedure OnSetMioProperty_Set ();
var
nAxisNo : LongInt; // MIO 신호 환경을 설정할 축을 선택합니다.
nAlmLogic, nAlmMode : LongInt; // ALM 신호 환경 설정 정보.
begin
nAxisNo := 1;
{ ALM 신호에 대해 설정되어 있는 로직 및 모드를 확인하여,
ALM Logic : B 접점, ALM Mode : 즉시 정지’ 로 설정합니다. }
// ALM 로직 설정 상태 확인 및 설정
if cmmCfgGetMioProperty ( nAxisNo, cmALM_LOGIC, @nAlmLogic ) = cmERR_NONE then
begin
if nAlmLogic <> cmLOGIC_B then
begin
// ALM 로직을 ‘B 접점 방식’으로 설정
cmmCfgSetMioProperty ( nAxisNo, cmALM_LOGIC, cmLOGIC_B );
end;
end;
// ALM 신호 ON 시 정지 모드 설정
if cmmCfgGetMioProperty ( nAxisNo, cmALM_MODE, @nAlmMode ) = cmERR_NONE then
begin
if nAlmMode <> cmFALSE then
begin
// ALM 신호 ON 시 정지 모드를 ‘즉시 정지’ 모드로 설정
cmmCfgSetMioProperty ( nAxisNo, cmALM_MODE, cmFALSE );
end;
end;
end;
|
See also