모션 변경 다이내믹(Motion Change Dynamics, MCD)

이 정보는
CompactLogix
5370,
ControlLogix
5570,
Compact GuardLogix
5370,
GuardLogix
5570,
Compact GuardLogix
5380,
CompactLogix
5380,
ControlLogix
5580,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.
모션 변경 다이내믹(Motion Change Dynamics, MCD) 명령어를 사용하여 진행 중인 이동 프로파일 또는 조그 프로파일의 속도, 가속률 또는 감속률을 선택적으로 변경합니다.
아키텍처 및 안전 지원
아키텍처
표준
안전
CompactLogix 5370, ControlLogix 5570, Compact GuardLogix 5370 및 GuardLogix 5570 컨트롤러
예
아니요
CompactLogix
5380,
ControlLogix
5580,
Compact GuardLogix
5380,
GuardLogix
5580 및 ControlLogix 5590 컨트롤러
예
아니요
사용 가능한 언어
래더 다이어그램
MCD_LD_avail_v31
펑션 블록
이 명령어는 함수 블록에서 사용할 수 없습니다.
구조화된 텍스트
MCD(Axis, MotionControl, MotionType, ChangeSpeed, Speed, ChangeAccel, AccelRate, ChangeAccelJerk, AccelJerk, ChangeDecelJerk, ChangeDecel, DecelRate, SpeedUnits, AccelUnits, DecelUnits, JerkUnits)
피연산자
명령어 내에서 혼합된 데이터 유형을 위한 데이터 변환 규칙이 있습니다. 데이터 변환 항목을 참조하십시오.
래더 다이어그램과 스트럭쳐드 텍스트
피연산자
유형
팁: AXIS_CONSUMED는
Compact GuardLogix
5580 및
CompactLogix
5380 컨트롤러에서만 지원됩니다.
유형
팁: AXIS_GENERIC은
ControlLogix
5570 및
GuardLogix
5570 컨트롤러에서만 지원됩니다.
형식
설명
Axis
AXIS_CIP_DRIVE
AXIS_VIRTUAL
AXIS_CIP_DRIVE
AXIS_VIRTUAL
AXIS_SERVO
AXIS_SERVO_DRIVE
AXIS_GENERIC_DRIVE
태그
작업을 수행할 축의 이름.
REF_TO 모션 데이터 유형을 지원하는 컨트롤러의 경우 지원되는 축 피연산자 유형을 등가 REF_TO 유형으로 대체할 수 있습니다.
Motion Control
MOTION_INSTRUCTION
MOTION_INSTRUCTION
태그
명령어 상태 파라미터에 액세스하는 데 사용되는 구조.
Motion Type
UDINT
UDINT
즉시
변경할 모션 프로파일(조그 또는 이동). 다음 중 하나를 선택합니다.
0 = 조그
1 = 이동
Change Speed
BOOLEAN
BOOLEAN
즉시
속도 변화를 활성화하려면 설정합니다. 다음 중 하나를 선택합니다.
0 = 아니요
1 = 예
Speed
REAL
REAL
즉시 또는 태그
% 또는 속도 단위로 표시되는, 축을 이동하는 새로운 속도.
Change Accel
BOOLEAN
BOOLEAN
즉시
가속도 변화를 활성화하려면 설정합니다. 다음 중 하나를 선택합니다.
0 = 아니요
1 = 예
Accel Rate
REAL
REAL
즉시 또는 태그
% 또는 가속도 단위로 표시되는 축의 가속률.
Change Decel
BOOLEAN
BOOLEAN
즉시
감속도 변화를 활성화하려면 설정합니다. 다음 중 하나를 선택합니다.
0 = 아니요
1 = 예
Decel Rate
REAL
REAL
즉시 또는 태그
% 또는 감속도 단위로 표시되는 축의 감속률.
이동이 진행 중일 때 가속도를 줄이면 축이 목표 위치를 오버슈트할 수 있습니다.
Change Accel Jerk
SINT, INT 또는 DINT
SINT, INT 또는 DINT
즉시
0 = 아니요
1 = 예
Accel Jerk
SINT, INT, DINT 또는 REAL
SINT, INT, DINT 또는 REAL
즉시 또는 태그
가속 저크 피연산자 값을 반드시 입력해야 합니다. 이 명령어는 프로파일이 S-곡선으로 구성된 경우에만 값을 사용합니다.
가속 저크는 축의 가속 저크율입니다.
이 값을 사용하여 시작하십시오.
가속 저크 = 100 (시간 비율(%))
저크 단위 = 2
Change Decel Jerk
SINT, INT 또는 DINT
SINT, INT 또는 DINT
즉시
0 = 아니요
1 = 예
Decel Jerk
SINT, INT, DINT 또는 REAL
SINT, INT, DINT 또는 REAL
즉시 또는 태그
감속 저크 피연산자의 값을 반드시 입력해야 합니다. 이 명령어는 프로파일이 S-곡선으로 구성된 경우에만 값을 사용합니다.
감속 저크는 좌표 시스템의 감속 저크율입니다.
다음 값을 사용하여 시작합니다.
감속 저크 = 100 (시간 비율(%))
저크 단위 = 2
Speed Units
DINT
DINT
즉시
속도 값을 표시하기 위해 사용되는 단위. 다음 중 하나를 선택합니다.
0 = 단위/초
1 = 최대 속도 비율(%)
4 = 단위/마스터 단위
Accel Units
DINT
DINT
즉시
가속도 값을 표시하기 위해 사용되는 단위. 다음 중 하나를 선택합니다.
0 = 단위/초
2
1 = 최대 가속도 비율(%)
4 = 단위/마스터 단위
2
Decel Units
BOOLEAN
BOOLEAN
즉시
감속도 값을 표시하기 위해 사용되는 단위. 다음 중 하나를 선택합니다.
0 = 단위/초
2
1 = 최대 감속 비율(%)
4 = 단위/마스터 단위
2
Jerk Units
SINT, INT 또는 DINT
SINT, INT 또는 DINT
즉시
0 = 단위/초
3
1 = 최대값 비율(%)
2 = 시간 비율(%)
4 = 단위/마스터 단위
3
6 = 시간 마스터 구동 비율(%)
구조화된 텍스트
스트럭처드 텍스트 내 식의 구문에 대한 자세한 내용은 구조화된 텍스트 구문 항목을 참조하십시오.
사용 가능한 옵션을 선택해야 하는 피연산자에 대한 선택 항목을 입력합니다.
피연산자
다음 옵션은
텍스트로 입력
숫자로 입력 가능
축
열거형 없음
Tag
MotionControl
열거형 없음
Tag
MotionType
조그
이동
0
1
ChangeSpeed
아니요
예
0
1
속도
열거형 없음
Immediate or Tag
ChangeAccel
아니요
예
0
1
AccelRate
열거형 없음
Immediate or Tag
ChageDecel
아니요
예
0
1
DecelRate
열거형 없음
Immediate or Tag
ChangeAccelJerk
열거형 없음
0 = No
1 = Yes
AccelJerk
열거형 없음
Immediate or tag
You must always enter a value for the Accel operand. This instruction only uses the value if the Profile is configured as S-curve.
Use this value to get started.
Accel Jerk = 100
ChangeDecelJerk
열거형 없음
0 = No
1 = Yes
DecelJerk
열거형 없음
Immediate or tag
You must always enter a value Decel Jerk operand. This instruction only uses the value if the Profile is configured as S-curve.
Use this value to get started.
Decel Jerk = 100
SpeedUnits
unitspersec
%ofmaximum
unitspermasterunit
0
1
4
AccelUnits
unitspersec
2
%ofmaximum
unitspermasterunit
2
0
1
4
DecelUnits
unitspersec
2
%ofmaximum
unitspermasterunit
2
0
1
4
JerkUnits
unitspersec
3
%ofmaximum
%oftime
unitspermasterunit
3
%oftimemasterdriven
0
1
2
4
6
MOTION_INSTRUCTION 구조
니모닉
설명
.EN (Enable) Bit 31
렁이 거짓에서 참으로 전환할 경우 설정되며 서보 메세지 전환이 완료되어 렁이 거짓이 될 때까지 설정된 상태로 유지됩니다.
.DN (Done) Bit 29
축 변경 다이내믹이 성공적으로 시작되지 않았을 때 설정됩니다. 명령어 실행은 단일 스캔에서 완료되며 DN 비트가 즉시 설정됩니다.
.ER (Error) Bit 28
구성되지 않은 축을 지정한 경우 등 명령어가 에러를 감지했음을 나타내도록 설정됩니다.
설명
MCD 명령어는 즉석에서 프로파일 이동 속도를 변경하고 사다리꼴 프로파일 조그의 속도, 가속도, 및 감속도를 즉석에서 변경합니다. 원하는 물리적 축과 모션 유형을 선택하고 속도, 가속도 및 감속도에 대한 값 또는 태그 변수를 입력합니다. 속도, 가속도 및 감속도 값은 현재 구성된 최대값의 백분율로 입력하거나 축의 구성된 속도 또는 가속도 단위로 직접 입력할 수 있습니다.
대상 지정된 축이 사용 가능한 축 목록에 없으면 축이 서보 작업에 대해 구성되지 않은 것입니다. 태그 편집기를 사용하여 새 축을 만들고 구성합니다.
프로그래밍 가이드라인
중요: 속도 및/또는 끝 위치 오버슈트 위험
이동 다이내믹[모션 변경 다이내믹(Motion Change Dynamics, MCD) 명령어 또는 모션 조정 변경 다이내믹(Motion Coordinated Change Dynamics, MCCD)]를 변경하거나 마지막 명령어가 완료되기 전에 새로운 명령어를 시작하는 등의 방법을 사용하여 이동 파라미터를 동적으로 변경하는 경우 속도 및/또는 끝 위치 오버슈트 위험이 발생할 수 있다는 점을 알아두십시오.
사다리꼴 속도 프로파일은 이동이 감속 중이거나 감속 시점에 가까워지는 상태에서 최대 감속도가 감소하면 오버슈트할 수 있습니다.
S-곡선 속도 프로파일은 다음 경우에 오버슈트할 수 있습니다.
이동이 감속 중이거나 감속 시점에 가까워지는 상태에서 최대 감속도가 감소하는 경우 또는
최대 가속 저크가 감소하고 축이 가속 중인 경우 그렇지만 시간 비율(%)로 저크가 지정된 경우 저크가 간접적으로 변경될 수 있습니다.
자세한 내용은 축 모션 문제 해결을 참조하십시오.
이 전환 명령어에서 명령어를 실행해야 할 때마다 릴레이 래더가 렁-입력-조건을 해제에서 설정으로 전환합니다.
이동 다이내믹 변경
이동의 모션 유형을 입력 또는 선택하면 진행 중인 이동의 속도, 가속도 및/또는 감속도를 지정한 값으로 변경할 수 있습니다. 새 속도가 현재 속도보다 빠른 경우에는 지정된 가속률로, 새 속도가 현재 속도보다 느린 경우에는 지정된 감속률로 속도 변화가 발생합니다.
이동 일시 중지
MCD 명령어는 속도를 0으로 변경해 진행 중인 이동을 일시적으로 중지하는 데 사용할 수 있습니다. 원래 지정된 대로 이동을 완료하려면 0 이외의 속도 값과 함께 다른 MCD 명령어를 사용합니다.
조그 다이내믹 변경
조그의 모션 유형을 입력 또는 선택하면 진행 중인 조그의 속도, 가속도 및/또는 감속도를 지정한 값으로 변경할 수 있습니다. 새 속도가 현재 속도보다 빠른 경우에는 지정된 가속률로, 새 속도가 현재 속도보다 느린 경우에는 지정된 감속률로 속도 변화가 발생합니다.
모션 드라이브 시작(Motion Drive Start, MDS) 명령어 지원
MCD 명령어는 모션 드라이브 시작(MDS) 명령어를 지원합니다. 그러나 모션 플래너가 직접 명령 속도 속성에서만 값을 가져와 드라이브로 합계 명령을 보내기 전에 축 출력으로 합산하기 때문에 MCD 명령어는 DirectVelocityControlStatus 명령 기능에 영향을 미치지 않습니다. 가속도 및 감속도가 모두 계획되면 MCD 명령어는 기능에 영향을 미치지 않습니다.
MDSC와 마스터 구동 속도 제어(Master Driven Speed Control, MDSC)의 시간 구동 모드 간 변경
MCD 명령어로 마스터 구동 모드에서 시간 구동 모드로 또는 그 반대로 변경할 수 없습니다. 모드 변경을 시도할 경우 런타임 에러가 표시됩니다.
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
이 명령어에만 해당되는 것은 없습니다. 초기화되지 않은 참조 또는 잘못된 유형의 참조가 축 피연산자로 전달되면 주 폴트가 발생할 수 있습니다. 피연산자 관련 폴트에 대해서는 공통 속성 항목을 참조하십시오.
실행
래더 다이어그램
조건/상태
수행한 작업
사전 스캔
.EN, .DN, .ER 및 .IP 비트는 거짓으로 해제됩니다.
렁-입력-조건이 거짓임
.DN 또는 .ER 비트가 참인 경우 .EN 비트는 거짓으로 해제됩니다.
렁-입력-조건이 참임
.EN 비트가 참으로 설정되고 명령어가 실행됩니다.
사후 스캔
N/A
구조화된 텍스트
조건/상태
수행한 작업
사전 스캔
래더 다이어그램 표의 사전 스캔을 참조하십시오.
정상 실행
래더 다이어그램 표에서 렁-입력-조건이 거짓이고 이어서 렁-입력-조건이 참인지 확인하십시오.
사후 스캔
래더 다이어그램 표에서 사후 스캔 섹션을 참조하십시오.
에러 코드
모션 명령어는 모션 에러 코드 .ERR 항목을 참조하십시오.
런타임 에러 조건
마스터 구동 속도 제어(Master Driven Speed Control, MDSC) 기능의 경우 시스템 모드를 마스터 구동에서 시간 구동으로, 아니면 시간 구동에서 마스터 구동으로 변경하려고 시도하면 런타임에 에러가 발생합니다.
확장 에러 코드
확장 에러 코드는 여러 명령어에 일반적인 에러 코드에 대한 추가 명령어 관련 정보를 제공합니다. 모션 명령어는 모션 에러 코드 .ERR 항목을 참조하십시오.
범위를 벗어난 파라미터(13) 에러 코드의 확장 에러 코드는 위에서 아래로 화면에 나열되는 피연산자 번호를 나타내는 숫자를 표시합니다. 여기서 첫 번째 피연자의 번호는 0입니다. 따라서 MCD 명령어의 경우 확장 에러 코드 4가 속도 피연산자의 값을 가리킬 수 있습니다. 그런 다음 명령어에 허용된 값 범위를 참조하여 값을 확인해야 합니다.
에러 코드 54 – 최대 감속도 값이 0인 경우 확장 에러에서 양수(0-n)가 반환되면 좌표 시스템의 문제 있는 축을 지칭합니다. 좌표 시스템 속성의 일반 탭으로 이동하여 축 그리드의 괄호([ ]) 열을 아래를 보고 최대 감속도 값이 0인 축을 확인합니다. 문제의 축 옆에 있는 줄임표 단추를 클릭하여 축 속성 화면에 액세스합니다. 다이내믹 탭으로 이동하여 최대 감속도 값을 적절히 변경합니다. 확장 에러 번호가 -1이라면 좌표 시스템의 최대 감속도 값이 0이라는 의미입니다. 좌표 시스템 속성의 다이내믹 탭으로 이동하여 최대 감속도 값을 수정합니다.
MCD에 의한 상태 비트 변경
마스터 구동 속도 제어(Master Driven Speed Control, MDSC) 펑션의 경우 MCD가 실행되면(IP 전환) MAM 명령어에서 상태 비트(CalculatedDataAvailable(CDA))가 지워져 이벤트 거리가 계산되었음을 나타냅니다. MCD가 완료되고 이벤트 거리가 다시 계산되면 CalculatedDataAvailable 상태 비트가 다시 설정됩니다. 따라서 MCD 명령어가 완료된 후 CalculatedDataAvailable 상태 비트를 살펴보고 재계산된 이벤트 거리를 사용할 시점을 확인합니다.
MCD가 실행되면 CDA 비트가 지워집니다. 새로운 다이내믹 파라미터를 사용하여 이동의 계산 데이터가 다시 계산됩니다. 계산이 완료되면 CDA 비트가 다시 설정됩니다. 재계산된 계산 데이터는 MCD 지점에서가 아니라 MCD 명령어로 변경되므로 새 다이내믹 파라미터를 사용하여 원래 모션 시작점(MSP)에서 이벤트 거리 지점으로 측정됩니다.
MCD가 속도를 0으로 변경하면 이벤트 거리가 재계산되지 않고 CDA 비트가 설정되지 않습니다. 그러나 이벤트 거리는 두 번째 MCD가 실행되어 모션이 다시 시작되면 재계산됩니다. 다시 계산된 계산 데이터에는 모션이 중지된 기간이 포함됩니다.
이벤트 거리를 0으로 설정하면 계산 데이터가 이동 길이와 같은 위치와 같도록 설정됩니다. 이것은 내부 지연으로 인해 PC 비트가 설정되기 전에 하나 또는 두 개의 대략적인 업데이트 기간이 될 수 있습니다. 보통 기본 업데이트 기간 중간 무렵에 끝 위치에 도달하므로 결과적으로 추가되는 기본 업데이트 기간이 지연됩니다. 따라서 마스터가 계산된 데이터와 동일한 거리만큼 이동한 경우 슬레이브 이동의 PC 비트가 설정될 때까지 최대 2회 반복을 기다려야 합니다.
예
예 1
래더 다이어그램
MCD_LD_ex1_v31
구조화된 텍스트
MCD(Axis1,MCD_1,Move,Yes,75,Yes,50,No,0,No,0,No,0,%ofMaximum,%ofMaximum,%ofMaximum,%ofMaximum);
예 2
래더 다이어그램
MCD_LD_ex2_v31
구조화된 텍스트
MCD(Axis1,mcd_motion_ctrl,Move,Yes,2,Yes,1,No,100,Yes,100.0,Yes,100.0,%ofMaximum,%ofMaximum,%ofMaximum,%ofTime);
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal