기술 지원 서POSCTRL을 이용한 속도 변환 예제 1 |
---|
위치 결정 전용 전용 명령어 (POSCTRL)를 사용하여 속도 운전(FSC) 및 속도 제어 프로그램을 작성합니다.
...
• 전원 버튼이 켜지면 원점 복귀(근사 원점 결정) 기능이 실행 됩니다.
• X00 버튼을 누르면 FSC 운전을 수행 합니다. (초기 속도 1000pps)
• L1, L2, L3 디바이스 값이 ON 될때 마다 속도가 증가 합니다.
• L11, L12, L13 디바이스 값이 ON될때 마다 속도가 감소 합니다.
• L10 디바이스 값이 ON되면 고속 원점 복귀 동작이 수행 됩니다.
• 각 디바이스 별로 지정된 속도는 아래 표를 참조하시기 바랍니다.
디바이스 설명
디바이스 | 기능 | 디바이스 | 기능 |
X00 | FSC 운전 시작 | L10 | 고속 원점 복귀 |
L01 | 100pps 씩 속도 증가 | L11 | 100pps 씩 속도 감소 |
L02 | 400pps 씩 속도 증가 | L12 | 400pps 씩 속도 감소 |
L03 | 700pps 씩 속도 증가 | L13 | 700pps 씩 속도 감소 |
a) 회로 결선
...
① A1(X00)에 위치 결정 명령을 하기 위한 버튼을 연결합니다.
(버튼을 누를 경우 위치 결정 동작 실행)
② A8(X0C)에 근사원점(DOG)을 위한 버튼을 연결합니다.
③ DC+24V 전원을 연결합니다.
④ GND를 연결합니다.
위치 결정 프로그램
① 시작 어드레스를 ‘M’ , ‘0’ 설정합니다.
② Low Active 모드로 설정하고 바이어스 속도는 100, 속도 상한은 20000을 설정합니다.
③ 가감속 시간 1값을 1000ms 로 설정합니다.
④ 속도 운전중 위치 표시 기능은 '갱신'으로 설정합니다.
⑤ 원점 복귀를 하기 위해 다음과 같이 설정합니다.
• 원점 복귀 방법 : 근사원점 • 원점 복귀 방향 : 역방향
• 원점 복귀 고속(PPS) : 20000 • 원점 복귀 저속(PPS) : 1000
• 원점 복귀 가감속 시간 : 1번
...
위치 데이터 설정
① X축 위치 데이터 1을 설정 합니다.
② 제어 코드는 FSC, 운전 속도는 1000 pps 로 설정 합니다.
③ 목표 위치는 설정 하지 않습니다.
...
스캔 프로그램
스캔프로그램을 추가하여 다음과 같이 작성합니다.
...
① PLC POWER ON시 원점 복귀를 수행 합니다.
원점 복귀 방식이 '근사 원점'으로 설정 되었으므로 X0E가 3번 ON/OFF 되면 동작을 종료합니다.
② X00버튼을 누를 경우 PSTRT 명령을 통해 FSC 운전을 수행 합니다..
③ L01 ~ L03 이 ON되면 현재 속도 값(M40)에서 디바이스 별로 정해진 속도값을 가산해줍니다.
④ L11 ~ L13 이 ON되면 현재 속도 값(M40)에서 디바이스 별로 정해진 속도값을 감산해줍니다.
이때 감산된 속도값이 0보다 작다면 0값을 줍니다. (속도 하한 처리)
⑤ 속도 변경 요청(L01, L02, L03, L11, L12, L13이 ON)이 발생하면 POSCTRL 명령을 통해 속도 변경을 수행 합니다.
POSCTRL을 통한 속도 변경은 D300 ~ D302 값을 기반으로 수행 하며 D300 = 1 은 X축을 D301 = 2는 속도 변경을
나타 냅니다. D302는 변경할 속도 값이 됩니다.
⑥ L10이 ON 되면 고속 원점 복귀 기능이 수행 됩니다.
동작 확인
① PLC 전원을 ON 하면 원점 복귀를 수행합니다.
X0C 신호가 3번 ON되면 현재 위치를 0으로 만들고 원점 복귀를 종료합니다.
...
⑧ L13을 또 한번 더 ON 하면 현재 속도에서 700pps만큼 감산 됩니다.
이때 연산된 값은 -400pps(300 - 700 = -400) 이므로 LD프로그램에서 하한 처리 되어 정지 합니다.
** 속도 변경시 변경 속도 값이 0이면 위치 결정 운전은 정지 합니다. 이때 다시 속도 운전을 수행 하려면
PSTRT 명령을 통해 FSC나 RSC 명령을 수행 하여야 합니다.
...
POSCTRL을 이용한 속도 변환 예제 2 (속도 변환 시나리오 추가) |
---|
• 위의 예제를 활용하여 시간별로 아래 표와 같은 속도가 변하도록 프로그램을 작성합니다.
• 시간 값은 X00가 ON 된 이후의 시간값을 의미 합니다.
시간(s) | 0 | 5 | 7 | 10 | 15 | 20 |
속도 | 1000 | 1700 | 2100 | 2500 | 2600 | 3000 |
시간(s) | 30 | 45 | 60 | 75 | 90 | 100 |
속도 | 2900 | 2200 | 1500 | 800 | 400 | 0 |
스캔프로그램
위의 예제 아래 부분에 아래와 같이 작성된 프로그램을 추가 합니다.
스캔 프로그램 작성을 위해 계산된 속도 편차와 시간 편차는 아래와 같습니다.
시간(s) | 0 | 5 | 7 | 10 | 15 | 20 |
속도 | 1000 | 1700 | 2100 | 2500 | 2600 | 3000 |
시간 편차 | 5 | 2 | 3 | 5 | 5 | |
속도 편차 | +700 | +400 | +400 | +100 | +400 | |
시간(s) | 30 | 45 | 60 | 75 | 90 | 100 |
속도 | 2900 | 2200 | 1500 | 800 | 400 | 0 |
시간 편차 | 10 | 15 | 15 | 15 | 15 | 10 |
속도 편차 | -100 | -700 | -700 | -700 | -400 | -400 |
...
① X00이 ON되어 POSCTRL실행 결과가 성공(D401의 1번 비트 ON)이고 운전중(M10 ON)이면 시간을 측정 합니다.
② T0는 FSC 운전 시작후 5초 후(첫번째 대기 시간) ON 된다. T0 ON 후 T1 대기 시간이 측정 되며 2초(두번째 대기 시간) 후
ON 되며 T3 대기 시간을 측정합니다. 마찬가지로 T3 -> T4 -> T5 -> ... -> T10까지 계산된 시간 편차 만큼 대기후 ON 합니다.
③ 속도 변경 값이 100pps (T03) 이면 L01 코일에 연결 합니다. 마찬가지로 400pps, 700pps는 L02, L03에,
-100pps, -400pps, -700pps는 L11, L12, L13 코일에 연결 합니다.
...