330 likes | 688 Views
실습목표. 1. 프로그램 편집기능을 익힌다 . 2. 기본평션의 편집 방법을 익힌다. 예비지식. 1. TOF 펑션블록 (off delay timer) 입력 IN:BOOL 타이머 기동조건 PT: TIME 설정시간 (Preset Time) 출력 Q:BOOL 타이머 출력 ET:TIME 경과시간 (Elapsed Time) 기능
E N D
실습목표 1.프로그램 편집기능을 익힌다. 2.기본평션의 편집 방법을 익힌다. 예비지식 1. TOF 펑션블록(off delay timer) 입력 IN:BOOL 타이머 기동조건 PT: TIME 설정시간(Preset Time) 출력 Q:BOOL 타이머 출력 ET:TIME 경과시간(Elapsed Time) 기능 • IN 이 1이 되면 Q가 1dl 되고, IN이 0이 된 후부터 PT에 의해서 지정된 설정 시간이 경과한 후 Q가 0이 된다. • IN이 0이 된후 경과 시간이 ET로 출력된다. • 만일 경과시간 ET가 설정시간에 도달하기 전에 IN이 1이 되면 경과 시간은 다시 0으로 된다.
실습목표 1.프로그램 편집기능을 익힌다. 2.기본평션의 편집 방법을 익힌다. 예비지식 2. TP 펑션블록(pulse timer) 입력 IN:BOOL 타이머 기동조건 PT: TIME 설정시간(Preset Time) 출력 Q:BOOL 타이머 출력 ET:TIME 경과시간(Elapsed Time) 기능 • IN 이 1이 되면 PT에 의해서 지정된 설정시간 동안만 Q가 1이되고, ET가 PT에 도달하면 자동으로 0이 된다. • 경과시간 ET는 IN이 1이 되었을 때 부터 증가하며 PT에 이르면 값을 유지하다가 IN이 0이 될때 0의 값이 된다. • ET가 증가할 동안은 In이 0이 되거나 재차 1이 되어도 영향이 없다.
실습목표 1.프로그램 편집기능을 익힌다. 2.기본평션의 편집 방법을 익힌다. 예비지식 1. ADD 펑션(덧셈) 입력 EN:BOOL 1일때 펑션 실행 IN1: ANY_NUM 더해질 값 IN2: ANY_NUM 더할 값 출력 ENO:BOOL 에러 없이 실행되면 1출력 OUT:ANY_NUM 더한 결과 • IN1, IN2….Inn(n은 입력 개수)를 더해서 OUT으로 출력시킴 2. SUB기본펑션 (뺄셈) 입력 EN: BOOL 1일 때 펑션 실행 IN1: ANY_NUM 빼어질 값 IN2: ANY_NUM뺄 값 출력 ENO: BOOL 에러 없이 실행되면 1출력 OUT: ANY_NUM 뺀 결과 값 IN1, IN2, OUT에 연결되는 변수는 모두 같은 데이터 타입이어야 함. 기능 • IN1에서 IN2를 빼서 OUT으로 출력시킨다.
실습목표 1.프로그램 편집기능을 익힌다. 2.CTU펑션블록의 편집 방법을 익힌다. 예비지식 1. CTU펑션블록 (가산 카운터) 입력 CU : BOOL 업_카운트(Up_Count)펄스 입력 R : BOOL 리세트(Reset)입력 PV : INT 설정값 (Preset Value) 출력 Q:BOOL 카운트_업(Count_Up)출력 CV : INT 현재값(Current Value) 기능 • R이 0이고 CU가 1이 될 때 카운트가 되며 CV는 CV의 이전값보다 1증가한다. • 출력 Q는 CV가 PV 이상이 될 때만 1이 된다. • 리세트 입력 R이 1이 되면 현재값 CV는 0이 된다. 2. INT_TO_BCD 펑션 , BCD_TO_INT펑션 입력 EN:BOOL 1일 때 펑션 실행 출력 ENO:BOOL 에러 없이 실행되면 1출력 OUT: * * * 타입 변환된 데이터 기능 WORD INT를 BCD형태로 BCD를 INT로 변환한다.
실습목표 1.프로그램 편집기능을 익힌다. 2. CTD 펑션블록의 편집 방법을 익힌다. 예비지식 1.CTD 펑션블록(감산 카운터) 입력 CD : BOOL 다운_카운트(Down_Count) 펄스 입력 LD : BOOL 설정치 입력(Load) PV : INT 설정값(Preset Value) 출력 Q : BOOL 카운트_다운(Count_Down) 출력 CV : INT 현재값(Current Value) 기능 • 입력 LD가 1이 되면 현재값 CV에는 언제나 PV값이 로드된다. (즉 CV=PV) • LD가 0이고 CU가 0에서 1이 되면 CV는 CV의 이전값보다 1감소된다. (단 CV는 INT의 최소값인 –32768 이상일 때만 감소하고 –32768이 되면 더 이상 감소하지 않는다.) • 출력 Q는 CV가 0 이하일 때만 1이 된다.
실습목표 1.프로그램 편집기능을 익힌다. 2. 모터의 기동/정지 프로그램을 작성해 본다. 실습 방법 동작 설명 콘베어 밸트. 에스컬레이터. 기타 운송기기에 물건이 올라오면 모터가 기동하여 물건 을 옮긴다. 물건이 도착 장소에 도착하면 모터가 정지하고 도착했음을 부저로 알린다. 이와 같은 동작은 산업현장의 여러 곳에서 사용된다. 입출력 할당 1. 입력 : 모터ON-%IX0.0.0 모터STOP-%IX0.0.1 전원스위치-%IX 0.0.2 2. 출력 : 출력-%QX0.2.0 부저출력-%QX0.2.15 3. 나머지는 회로도의 내용대로 자동으로 하고 타이머의 설정시간과 MOVE의 OUT은 반드시 BYTE로 처리해야 한다.
실습목표 1.프로그램 편집기능을 익힌다. 2. 수의 크기 비교 프로그램을 작성해 본다. 실습 방법 동작 설명 디지털 스위치에 입력한 두 수(앞의 두숫자와 뒤의 두숫자)를 비 교하여 대소를 판단하고 그에 해당하는 램프를 점등한다. 또 입력 된 수는 FND에 출력한다. 입출력 할당 1. 입력 : 입력1(디지털 스위치 앞 2자리)-%IB0.0.1 입력2(디지털 스위치 뒤 2자리)-%IB0.0.0 START-%IX0.1.0 2. 출력 : 출력1-%QX0.3.0 출력2-%QX0.3.1 출력3-%QX0.3.2 FND1-%QB0.2.1, FND2-%QB0.2.0
실습목표 1.프로그램 편집기능을 익힌다. 2. 예약 변수와 문자열처리, 데이터 타입의 변경을 이해한다. 예비지식 1.예약 변수(Real Time Clock)