본문 바로가기

IT/PLC114

[PLC기본] 10진수, 2진수, 16진수, 2진화 10진수 명령 및 PLC기본 PLC CPU는 ON과 OFF 또는 1과 0의 2진수(BIN)로 처리한다. 현실 세계에서는 10진수를 가장 많이 쓰기 때문에 PLC에 수치 정보를 전달하거나 읽을 때 10진수에서 2진수로 혹은 그 반대로 변환해야한다. 10진수(Decimal) 0~9의 10종류의 기호를 사용하여 나타 낼 수 있는 수 MELSEC -A PLC에서는 10진수를 표현할 때 "K"를 붙임 2진수(Binary ...BIN) 0과 1의 2종류 기호로 나타 낼 수 있는 수 10진수와 2진수를 살펴보면 아래와 같다 2진수 기준으로 봤을 때 각자리 마다 10진 수로 표현할 수 있는 무개가 있다 16진수(Hexadecimal) 0~9와 A~F의 16종류의 기호로 순서와 크기를 나타내는 수 MELSEC - A PLC에서는.. 2020. 10. 23.
[DBCD, BCD] 차이점 알기 BCD, DBCD 디지털 스위치에 값을 표현할 때 각 4비트씩 나눠서 표시하게된다 이때 사용하는 명령어 차이점 BCD 명령어에서는 표시할 데이터(BIN-> BCD의 데이터)가 0~9999일 때에 가능함 이외의 값이면 오류가 발생한다(오류넘버: 50(Operation Error)) 설정 값이 9999를 넘는 값을 표시할 때 DBCD 명령을 사용 이 경우 99,999,9999까지의 숫자를 표현 가능 2020. 10. 22.
[BIN, BCD] 명령어 BCD 2진화 10진수 10진수의 자리 숫자를 2진수로 표현한 것 4자리 최대수 9999를 16비트로 표현한것 2진화 10진수를 사용하는 경우는 1. 디지털 스위치의 출력 신호 2. 7소자 표시기(디지털 표시기)의 신호 BIN, BCD 차이점 PLC에서 데이터를 받을 때 BIN PLC에서 데이터를 줄 때 BCD 2020. 10. 22.
[AGV]란 무엇인가? AGV 무인 운반차(Automated Guided Vehicle, AGV) 종류에 따라 혈액, 공장, 창고, 물류, 은행, 공항, 전자부품이송 등 목적에 따라 다양하게 사용가능함 작업 공간 내 특정 물건 또는 상품들을 자동으로 이동 시켜주는 물류 자동화의 핵심 기술이다. 기존의 AGV는 독립적인 실내위치인식 기술과 함께 각 AGV별로 주행경로 인식을 위해 레이저, 마그네틱, 관성 센서 등을 이용하기 때문에 고비용이며 유지 및 확장이 어렵다는 단점을 가지고 있다. 이러한 단점을 해결하기 위해 본 논문에서는 라인스캐카메라 기반의 마이크로 컨트롤러에서도 구현 가능한 경량화 된 패턴인식 기술을 이용하여 AGV의 주행제어뿐 아니라 위치인식을 동시에 할 수 있는 기술을 제안한다. 제안된 패턴인식기술은 각 AGV가 .. 2020. 10. 22.
[K4X20] 의미 K4X20 워드 장치D(데이터 레지스터), T(타이머 현재값), C(카운터 현재값) 등은 1개가 16비트(1워드)로 구성되어 있고, 원칙적으로 1개의 장치 사이에서 데이터를 전송합니다. 비트 장치(X, Y, M 등)도 16비트가 모이면 워드 장치와 같은 크기의 데이터로 취급할 수 있습니다. 단 16개의 장치 번호가 연속해야합니다. 비트 장치의 경우는 4비트 단위로 데이터를 취급할 수 있다. K1 : 4비트 K2 : 8비트 K3 : 12비트 k4 : 16비트 X20 : 시작 위치 X20부터 16비트를 의미하므로 X20~X2F범위의 데이터를 말함 2020. 10. 21.
[예제] CJ, CALL, RET, FEND 사용해서 X7 ON/OFF에따라 다른 출력 문제 X7이 OFF일 때 Y70과 Y71이 5초씩 깜박임 X7이 ON일 때 Y72와 Y73이 10초씩 깜박임 X0이 ON일 때 Y70~Y30이 리셋 프로그래밍 X7이 OFF일 때 Y70, Y71 동작 FEND는 END과 동일 X7이 ON일 때 P10으로 이동 후 실행 FEND는 END과 동일 X0이 ON되면 [CALL P20]으로 이동 후 RET까지 코드실행 후 복귀 JS, Python에서 함수 실행과 비슷한 느낌임 2020. 10. 21.
[예제] PLS, PLF로 Y70, 71 출력 반복 문제 PLS, PLF 사용하기 X0 펄스 상승할 때 Y70이 ON-OFF-ON-OFF를 반복 X0 펄스 하강할 때 Y71이 ON-OFF-ON-OFF를 반복 프로그래밍 PLS : ON상태일 때 반응 PLF : OFF상태일 때 반응 설명 X1에 ON 상태일 때만 반응 하는데 [PLS M0]명령어로 X1이 ON됐을때 짧게 한번의 신호로 M0이 ON 됐다 다시 OFF됨 M0 ON되는 순간 Y70이 ON되고, M0은 OFF상태가되고 Y70은 자기유지 [PLS M0]명령어로 X1이 다시 ON됐을 때 짧게 한번의 신호로 M0이 ON됐다 다시 OFF됨 M0 ON되는 순간 Y70이 OFF되고, M0은 OFF상태가되고 Y70은 자기유지 죽고 OFF됨 2020. 10. 20.
[예제] SET, RST, C, T 사용한 1초점등 10회 5초 정지 만들기 문제 X0이 ON 하면 Y70이 1초 간격으로 깜박 Y70이 10회 깜박이면 5초간 깜박이 정지 이후 다시 깜박임 X1이 ON 하면 Y70의 깜박임 정지 프로그래밍 X0 ON되고 Y70이 1초 간격으로 깜박 Y70이 깜박일 때 C카운트 증가 C카운트 10이 됐을 때 Y70 5초정지 5초 정지 이후 다시 깜박임 시작 + C 카운트 초기화 X1이 ON되면 Y70깜박이 정지 C카운트 초기상태로 되돌리기 2020. 10. 20.
[FEND] 명령 FEND 1스텝 명령어이다 END명령과 같은 명령으로 사용가능 -시퀀스 프로그램을 래더 블록별로 연산하여 종료할 때 CJ, SCJ명령과 함께 사용 -서브 루틴 프로그램(CALL, RET 명령)을 사용할 때 -인터럽트 프로그램을 사용할 때 FEND 명령을 실행하면 PCL는 타이머, 카운터의 현재값을 처리하거나 자기 진단을 한 다음 0스텝부터 다시 연산시작 주의사항 FEND 명령은 시퀀스 프로그램에서 여러 번 사용할 수 있지만, 서브 루틴 프로그램과 인터럽트 프로그램에서는 사용할 수 없다. FEND 명령은 시퀀스 프로그램(메인과 서브 모두)의 마지막에서는 사용 할 수 없음 마지막에는 반드시 END명령을 사용 2020. 10. 20.
LIST