원문: https://www.schneider-electric.co.uk/en/faqs/FA142566/ 산업용 근접센서는 대부분 반도체 부품으로 만들어집니다. 근접센서에서, 트랜지스터와 같은 반도체 부품은 물체의 근접을 감지하게 되면 출력을 스위칭(출력을 내보내거나 차단) 하는데 사용됩니다. 3선 결선 방식의 센서는 회로와 트랜지스터 구성방식에 따라 PNP 타입과 NPN 타입으로 나눌 수 있습니다. 한가지 중요한 점은 PNP, NPN 타입의 구분은 센서가 NO(normally open) 타입인지, NC(normally closed) 타입인지와는 상관이 없다는 것입니다. PNP, NPN 타입 센서 모두 NO, NC 접점을 가질 수 있습니다. PNP, NPN 타입 중 무엇을 선택해야 하나? PNP, NPN 센서 타입 중 어떤 것을 사용할 지는 센서가 사용될 회로의 환경에 달려 있습니다. 릴레이를 사용하는 전통적인 회로 구성방식에서는 아래와 같이 PNP, NPN 센서를 사용할 수 있습니다. PNP 방식은 센서의 출력선을 릴레이 코일의 +단자에 결선합니다. NPN 방식의 센서는 출력선을 릴레이 코일의 -단자에 결선합니다. NPN 방식보다는 PNP 방식이 많이 사용되고 있습니다. PLC를 이용하는 환경에서 센서의 타입을 선택하는 경우에는 PLC 입력카드의 타입에 유의해야 합니다. PLC 입력카드에는 입력카드의 입력단자로 전류가 흐르는 sink타입과, 입력카드 입력단자에서 전류가 나가는 source타입 두가지가 있습니다. PNP 타입의 센서를 사용하는 경우 sink 타입의 입력카드를 사용하고, COM단자에 -전원을 인가합니다. 그리고 센서의 출력부를 입력카드의 입력단자에 연결합니다. NPN 타입의 센서를 사용하는 source 타입의 입력카드를 사용하고, COM단자에 +전원을 인가합니다. 그리고 센서의 출력부를 입력카드의 입력단자에 연결합니다. PNP 타입의 센서가 많이 사용되므로 덩달아 sin...
PLC 아날로그 입출력 개념 및 결선 아날로그 신호가 PLC로 들어오면 우선 A/D 컨버터(Analog-Digital Converter)를 거치게 됩니다. A/D 컨버터는 아날로그 형태의 신호를 PLC에서 처리 가능하도록 디지털 형태로 변환시켜 줍니다. PLC에서 다루는 아날로그 신호는 아래와 같은 형태가 있습니다. - 전압(Voltage) - 전류(Current) - 저항(Resistance) 신호의 형태에 따라 신호가 취급되는 값의 범위가 있습니다. 가장 흔히 사용되는 형태는 전류 형태이며 4-20mA 값을 주로 사용합니다. A/D 컨버터가 아날로그 값을 디지털로 변환할 때 사용되는 bit수를 분해능이라 합니다. 일반적으로는 16bit 길이가 사용됩니다. 다시말해 4-20mA 사이의 16mA를 16bit로 쪼개어 표현한다는 의미입니다. 따라서 분해능에 사용된 bit수가 많을수록 더 세밀한 단위를 취급할 수 있습니다. 아래 그림은 4-20mA 출력을 가지는 온도 트랜스미터(temperature transmitter)의 예입니다. 온도 트랜스미터와 온도센서가 연결되어 있습니다. 온도 정보는 트랜스미터에서 섭씨 0~100도로 계량화(calibrated) 됩니다. 즉, 섭씨 0도는 4mA, 섭씨 100도는 20mA가 되는 것입니다. 위 그림에서 온도 정보는 PLC로 바로 들어오지 않고 트랜스미터를 거쳤습니다. 온도 정보를 PLC가 바로 해석하기 보다는 트랜스미터에서 해석하여 전압이나 전류 형태로 변환하여 PLC의 전압/전류 아날로그 카드로 연결됩니다. 만약 트랜스미터가 없다면, 온도센서의 정보를 해석하기 위해 PLC에는 온도입력 모듈이 별도로 필요하게 됩니다. 전압/전류 아날로그 입력카드를 사용하면, 온도센서가 아니더라도 다양한 형태의 아날로그 데이터를 트랜스미터 전압/전류 형태로 취급할 수 있으므로, 좀 더 유현한 구조가 됩니다. 아날로그 입력 모듈의 결선법은 입력 신호가 전압인지, 전류인지에 따라 다릅니다. 전압/전류은 저항과 연...
Understanding Flow Controls: Meter-In vs Meter-Out 에어실린더에 작용하는 힘은 압력조절기(pressure regulator)에 의해 결정됩니다. 그리고 피스톤이 움직이는 속도는 속도제어(flow control) 밸브를 통해 이루어집니다. 실린더의 각 포트마다 속도제어 밸브가 설치되어 인출과 인입 속도를 제어하게 됩니다. 아래는 속도제어 밸브의 구조입니다. 위 그림에 대한 기호는 아래와 같이 표기됩니다. 미터아웃(Meter-Out) 방식의 실린더 속도제어 아래 그림은 미터아웃 방식에 대한 도식입니다. 미터인(Meter-In) 방식의 실린더 속도제어 아래 그림은 미터인 방식에 대한 도식입니다. 끝.
집에서 무농약 상추 재배부터 상추차 분말 만들기: 저예산 수경재배 아이디어 안녕하세요! 최근 건강한 먹거리에 대한 관심이 높아지면서, 직접 키운 무농약 상추로 상추차를 만들어 보려는 분 들이 많아졌습니다. 특히, 농약이나 중금속 걱정 없이 깨끗한 상추를 손쉽게 키우는 방법이 궁금하다면, 오늘 소개할 ‘저예산 수경재배’와 ‘상추차 분말화’ 아이디어 가 큰 도움이 될 거예요. 1. 왜 수경재배인가? 흙을 쓰지 않는 수경재배는 벌레나 병충해가 적고, 농약을 사용하지 않아도 되는 무농약 재배에 최적화된 방법 입니다. 또한, 흙에서 오는 중금속 걱정도 사라지죠. 실내에서 LED 조명만 있으면 연중 내내 신선한 상추를 수확할 수 있어 도시 가정에서도 쉽게 시작할 수 있습니다. 2. 저예산으로 시작하는 수경재배 기본 장비 재배통 : 락앤락 같은 밀폐 플라스틱 통, 1~2만원 내외 네트컵과 고정재 : 상추 씨앗 심고 뿌리 내리기 좋은 스펀지, 5천원 내외 수경 배양액 : 시판 제품 혹은 직접 제조 가능 (아래 참고) LED 식물등 : 1~3만원대 풀스펙트럼 LED 조명 추천 에어펌프(선택) : 뿌리에 산소 공급, DWC 방식 시 필요 대략 5만 원 내외 로 기본 세팅 가능하며, 단계별로 장비를 늘리면서 확장해 나가도 좋습니다. 3. LED 조명, 어떻게 골라야 할까? 식물에게 꼭 필요한 빛은 400~700nm 범위의 ‘광합성 유효광(PAR)’입니다. 상추는 하루에 약 **100~300 μmol/m²/s의 빛 세기(PPFD)**가 필요합니다. 너무 밝으면 잎이 딱딱해지고, 너무 약하면 성장이 느려집니다. 집에서 쓰기 좋은 LED 식물등은 가격대비 효율이 좋은 삼성 LM301B 칩 기반 제품이나 T5 LED 형광등 풀스펙트럼 제품을 추천합니다. 4. 친환경 수경재배 배양액, 직접 만들어 보자 배양액은 식물 성장에 필요한 영양분을 녹인 액체입니다. 시중에 좋은 제품이 많지만 직접 만드는 것도 가능합니다. ...
한국거래소(KRX) 데이터 API 입문 가이드 안녕하세요! 오늘은 한국거래소(KRX)에서 제공하는 공식 데이터 API에 대해 알아보려고 합니다. 주식, 지수, 채권 등 다양한 금융 데이터를 손쉽게 가져올 수 있는 KRX Open API 활용법과 사용 절차, 그리고 간단한 파이썬 예제까지 모두 정리했으니, 금융 데이터 분석이나 자동화 작업에 관심 있는 분들은 꼭 참고해 보세요. 1. KRX 데이터 API란? 한국거래소는 자사 금융 데이터를 누구나 활용할 수 있도록 KRX 정보데이터시스템 이라는 포털을 운영 중입니다. 이곳에서는 주식 시세 지수 정보 채권 및 파생상품 시세 ETF/ETN 거래 정보 공매도 현황 등 다양한 금융 데이터를 API 형태로 제공합니다. 즉, 개발자나 데이터 분석가가 직접 데이터를 요청해서 받을 수 있는 RESTful API 서비스라고 생각하시면 됩니다. 2. 주요 제공 데이터 종류 KRX Open API에서는 다음과 같은 데이터를 제공합니다. 주식 관련 데이터: 일별 시세, 종목 기본정보, 투자자별 매매동향 지수 데이터: KOSPI, KOSDAQ, KRX100 등의 지수 시세 채권 및 파생상품: 채권지수, 파생상품지수 시세 ETF/ETN: 상장된 ETF 및 ETN 거래정보 공매도 정보: 일별 공매도 거래량 및 잔고 기타: ELW, DLS/DLF, 배출권, 해외 연계시장 시세 등 3. API 사용 방법 1) 회원가입 및 로그인 우선 KRX 정보데이터시스템 에 접속해 회원 가입 및 로그인을 진행합니다. 2) API 인증키 신청 로그인 후 마이페이지에서 ‘API 인증키 신청’을 통해 인증키를 발급받습니다. 3) 데이터 서비스 이용 신청 원하는 데이터 서비스에 대해 추가 이용 신청을 해야 합니다. 예를 들어 ‘KOSPI 일별 시세 정보’를 사용하려면 해당 서비스에 별도로 신청해야 합니다. 4) API 호출 발급받은 인증키와 필요...
Difference Between an NPN and a PNP Transistor 위 그림에서 기호는 아래 의미입니다. B: BASE C: COLLECTOR E: EMITTER NPN, PNP 둘다 BJT(bipolar junction transistor: 접합형 트랜지스터)입니다. 전류를 이용하여 제어가 되며, 전류를 증폭하는 기능이 있습니다. base에 전류가 흐르면, emitter와 collector 사이에는 더 많은 전류가 흐르게 됩니다. 즉, base는 emitter-collector 간 전류를 흐르게 하는 스위치 역할과 더불어 전류 증폭기 역할을 하게 됩니다. 이는 NPN, PNP 구분에 상관없이 동일한 특성입니다. NPN, PNP 트랜지스터의 차이는, 트랜지스터 핀에 전원이 인가되는 방법의 차이에 기인합니다. NPN 트랜지스터는 collector와 base에 양전압을 연결합니다. NPN 트랜지스터의 base에 양전압이 인가되면 emitter 방향으로 전류가 공급(sourcing, 소스)가 되면서 collector-emitter간 연결이 만들어지고, 전류도 흐르게 됩니다. 다시 정리하자면, base에 임계전압인 0.7V이상의 전압이 인가되면 전류는 base에서 emitter로 흐르게 되고, 덩달아 collector-emitter간에 흐르는 전류도 점차 증가하게 되는 형태입니다. PNP 트랜지스터는 emitter에 양전압을 연결하고, base에 음전압(또는, emitter에 인가된 전압보다 낮은 전압)을 연결합니다. PNP 트랜지스터는 base에 음전압이 인가되면 base에서 ground 방향으로 전류가 빠지면서(sink, 싱크) emitter-collector간 연결이 만들어지고 전류가 흐르게 됩니다. NPN, PNP 트랜지스터는 emitter-collector간 전류의 방향이 다르기 때문에, 위 그림에서 확인할 수 있듯이 부하(load)가 연결되는 위치 또한 다르게 됩니다. 끝.
때때로 릴레이는 래치(latch) 상태가 필요합니다. 흔히 자기 유지 또는 실링(sealing)이라 불리는 래치(latch) 상태는 릴레이를 ON 시키는 조건이 사라져도 계속 ON 상태를 유지하는 기능입니다. 특정 이벤트의 발생을 기억하기 위해 릴레이 래치를 사용합니다. 예를 들어, 푸시 버튼이 눌려진 이벤트를 기억하고 싶은 경우 릴레이를 래치시켜 이벤트 해제 상태가 될 때까지 이벤트 발생 내역을 기억하는 것입니다. 모터를 예를 들어 START 버튼을 누르면 모터를 계속 구동시키고, STOP 버튼이 눌려지면 모터를 정지하는 것입니다. 래치 기능이 없으면 START 버튼이 눌린 동안만 모터가 구동될 것입니다. (래치 기능이 포함된 버튼을 사용하는 것도 한 가지 방법입니다.) PLC가 사용되기 전 릴레이 제어에서는 릴레이의 접점을 활용한 배선으로 릴레이 래치를 구현했습니다. 초기 상태에서는 릴레이 CR1의 코일이 OFF 상태이며, START 버튼의 N.O 접점은 OFF, STOP 버튼의 N.C 접점은 ON 상태입니다. CR1 릴레이의 N.O 접점은 OFF 상태입니다. START 버튼을 누르면 아래와 같이 전류가 두 개의 경로로 전류가 흐르게 됩니다. 이 상태에서 START 버튼에서 손을 떼면 아래와 같이 전류가 흐릅니다. 즉, START 버튼에서 손을 떼어도 릴레이 CR1은 계속 ON 상태로 머물러 있을 수 있습니다. 이 상태에서 STOP 버튼을 누르면 전류가 흐를 수 있는 경로가 차단되면서 CR1이 OFF 상태가 됩니다. 래치 기능이 포함된 푸시 버튼을 사용하면 위와 같은 래치 회로가 필요 없지만, 장비 구동시 래치 상태가 해제되어 있지 않은 상태에서 전원이 인가되면 바로 장비가 구동될 수도 있어 안전성 면에서 추천되지 않습니다. 끝.
74HC595 Shift register : Serial to Parallel 간혹 아두이노의 핀이 모자라는 경우가 있습니다. 이런 경우 시프트 레지스터가 해결책이 될 수 있습니다. 시프트 레지스터는 시리얼 데이터를 입력받아 여러 핀을 통해 병렬 출력해 주는 기능을 수행합니다. 흔히 사용되는 74HC595 시프트 레지스터와 아두이노를 연동해 보겠습니다. 74HC595는 8비트 데이터 입력, 시리얼입력으로 병렬출력, 그리고 3개의 상태를 가집니다. 다시말하자면 3개의 입력으로 8개의 출력을 제어할 수 있습니다. 74HC595와 반대 역할의 시프트 레지스터도 있습니다. 74HC165은 병렬데이터를 입력으로 받아 시리얼 데이터로 출력합니다. 이는 여러개의 입력 데이터를 적은 수의 핀으로 수집할 때 용이합니다. 74HC595는 두개의 내장 8비트 레지스터를 포함합니다. 첫번째는 시프트 레지스터(Shift Register)입니다. 74HC595에 클럭 펄스가 발생되면 두가지 일이 발생합니다. - 시프트 레지스터의 비트 0~6은 비트 1~7로 이동됩니다. - 클럭 펄스의 상승 에지 시점의 데이터 핀 상태가 비트 0에 저장됩니다. 74HC595의 두번째 레지스터는 저장/레치 레지스터(Storage/Latch Register)입니다. Latch 핀에 신호를 주면 시프트 레지스터의 내용이 저장/레치 레지스터로 복사됩니다. 저장/레치 레지스터는 74HC595칩의 Q A -Q H 핀에 연결되어 있습니다. 아래는 74HC595의 Pinout입니다. 신호선 명칭 위에 바(bar)가 있는 것은 네거티브 로직(negative logic)으로 해당 핀의 신호를 끄면 해당 기능이 동작한다는 의미입니다. - GND : 아두이노의 그라운드(ground) 핀과 연결합니다. - VCC : 아두이노의 5V 핀에 연결합니다. - SER (Serial Input) : 시프트 레지스터로 데이터를 입력하는 핀 - SRCLK (Shift Re...
래더 다이어그램과 PLC 래더 다이어그램은 전기적 작동 순서를 나타내는 전통적인 방법이자 현재에도 널리 사용되고 있습니다. 래더 다이어그램은 한 장치의 활성화 또는 켜짐이 미리 결정된 이벤트 순서에 따라 다른 장치를 켜는 방식으로 필드 장치의 상호 연결을 나타냅니다. 아래 그림은 간단한 전기 래더 다이어그램을 보여줍니다. 래더 다이어그램 예시 원래 래더 다이어그램은 기계나 장비를 제어하는 데 사용되는 배선 논리 회로를 나타내기 위해 고안되었습니다. 산업계에서 널리 사용됨에 따라 설계자 및 장비 사용자에게 제어 정보를 전달하는 표준 방법이 되었습니다. 래더 다이어그램은 사용 및 해석이 쉽고 업계에서 널리 수용되었기 때문에 PLC의 프로그래밍 언어가 래더 다이어그램을 모방하는 것은 자연스러운 일이었습니다. PLC의 목적은 기존 래더 다이어그램으로 설계되어 전선과 릴레이로 구성된 시스템을 보다 저렴하고 안정적인 방식으로 대체하는 것입니다. PLC는 소프트웨어 명령어를 사용하여 기존 래더 다이어그램 상 물리적으로 구현해야 하는 유선(wired) 상호 연결을 CPU에 논리적으로 구현합니다. 아래 그림은 위 예시용 래더 다이어그램을 PLC 형식으로 변환하는 과정을 보여줍니다. 물리적 I/O 필드 장치는 입력 및 출력 인터페이스에 연결되는 반면, 래더 프로그램은 PLC 내부에서 물리적 배선과 유사한 방식으로 구현됩니다(즉, 하드배선 대신 PLC CPU 내부에 소프트웨어적으로 배선됨). 앞서 언급했듯이 CPU는 입력 상태를 읽고 프로그램에 따라 출력 인터페이스를 활성화 시키고, 출력 인터페이스에 물리적으로 연결된 실제 출력 장치를 제어합니다. PLC 프로그램에서 명령어들은 참조하는 메모리 주소가 있습니다. 입출력 인터페이스에 할당된 메모리가 있고, PLC 명령어는 해당 메모리 주소를 참조하여 물리적으로 연결된 입출력 장치와 상호작용하게 됩니다. 끝.
이 포스팅에서는 PLC 래더 다이어그램 프로그래밍 시 사용되는 일반적인 양식(템플릿)과 함께 래더 다이어그램이 가진 단점에 대해 소개하고자 합니다. Drawbacks in conventional programming methodology 대부분의 PLC들은 아래 그림에 나와 있는 래더 다이어그램 형식의 프로그래밍 방법을 사용합니다. 이 다이어그램은 전기 회로 다이어그램과 매우 유사하고, 그 동작을 해석하기는 비교적 쉽습니다. 다이어그램은 모터를 구동시키는데 사용되는 논리를 설명합니다. START 및 STOP은 외부에서 수신된 명령 입력입니다. FAULT는 모터 보호 체계의 신호입니다. START가 ON이면 출력 COIL이 활성화됩니다. START 및 STOP 명령은 순간(펄스) 유형이며 이 출력 코일의 상태는 STOP 또는 FAULT 입력 상태가 변경될 때까지 출력을 'true' 상태로 잠그는 데 사용됩니다. 대부분의 PLC는 시스템 실행 중에 실시간으로 이러한 모든 입력 및 출력의 상태를 보여주는 동적 디스플레이를 제공합니다. 따라서 외부 신호나 프로그램 자체의 오작동을 쉽게 식별하고 수정할 수 있습니다. 그러나 이 프로그래밍 접근 방식은 근래의 프로그래밍 방식에 비해 여러 가지 제한 사항을 가지고 있습니다. 아래에서는 래더 다이어그램이 다른 프로그래밍 접근 방식에 비해 부족하다고 판명된 항목들입니다. • 소프트웨어 구조 부족 • 재사용성의 문제 • 부족한 데이터 구조 정의 • 복잡한 산술 연산을 처리하는 데 어려움이 있음 Software structure 복잡한 제어 시스템을 다룰 때 주요 프로그래밍 요구 사항 중 하나는, 작업을 더 작고 덜 복잡한 여러 문제로 나누고 서로 명확한 상호 연결을 설정할 수 있어야 한다는 것입니다. 이러한 개별 코드 조각을 프로그램 블록 또는 프로그램 단위라고 합니다. 이러한 프로그램 단위는 다른 프로그래머에 의해 코딩될 수 있고 다른 프로그래머에 의해 제어 시스템의 다른 부분에서 사용될 ...
댓글
댓글 쓰기