Understanding Flow Controls: Meter-In vs Meter-Out 에어실린더에 작용하는 힘은 압력조절기(pressure regulator)에 의해 결정됩니다. 그리고 피스톤이 움직이는 속도는 속도제어(flow control) 밸브를 통해 이루어집니다. 실린더의 각 포트마다 속도제어 밸브가 설치되어 인출과 인입 속도를 제어하게 됩니다. 아래는 속도제어 밸브의 구조입니다. 위 그림에 대한 기호는 아래와 같이 표기됩니다. 미터아웃(Meter-Out) 방식의 실린더 속도제어 아래 그림은 미터아웃 방식에 대한 도식입니다. 미터인(Meter-In) 방식의 실린더 속도제어 아래 그림은 미터인 방식에 대한 도식입니다. 끝.
전력(kW) 계산하기 (직류, 교류 단상, 교류 삼상) 전류(A)와 전압(V)를 알고 있는 경우, 전압원이 종류에 따라 전력(kW)을 어떻게 계산하는지 보겠습니다. DC amps to kilowatts calculation (직류) 직류는 단순히 전류와 전압을 곱하고 1000으로 나누면 kW 단위의 전력을 구할 수 있습니다. P (kW) = I (A) × V (V) / 1000 AC single phase amps to kilowatts calculation (교류 단상) 교류 단상의 경우 역률(Power Factor)를 곱한 뒤, 전류와 RMS 전압을 곱하고, 1000으로 나누면 kW 단위의 전력을 구할 수 있습니다. P (kW) = PF × I (A) × V (V) / 1000 AC three phase amps to kilowatts calculation (교류 삼상) Calculation with line to line voltage (상간 전압 이용시) 교류 삼상의 상간 전압을 이용하여 전력을 구하는 경우, √3과 역률(Power Factor)을 곱하고, 위상 전류(phase current)와 두 활선 사이의 RMS 전압을 곱합니다. 그리고 1000으로 나누어 kW 단위의 전력을 구합니다. P (kW) = √3 × PF × I (A) × V L-L(V) / 1000 Calculation with line to neutral voltage (활선-중립선 이용시) 교류 삼상의 활선-중립선 전압을 이용하여 전력을 구하는 경우, 3과 역률(Power Factor)을 곱하고, 위상 전류(phase current)와 두 활선 사이의 RMS 전압을 곱합니다. 그리고 1000으로 나누어 kW 단위의 전력을 구합니다. P (kW) = 3 × PF × I (A) × V L-N(V) / 1000 끝.
한국거래소(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 호출 발급받은 인증키와 필요...
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에는 온도입력 모듈이 별도로 필요하게 됩니다. 전압/전류 아날로그 입력카드를 사용하면, 온도센서가 아니더라도 다양한 형태의 아날로그 데이터를 트랜스미터 전압/전류 형태로 취급할 수 있으므로, 좀 더 유현한 구조가 됩니다. 아날로그 입력 모듈의 결선법은 입력 신호가 전압인지, 전류인지에 따라 다릅니다. 전압/전류은 저항과 연...
위 그림에서 (a)는 전압분배(Voltage Divider), (b)는 가변저항(Potential Divider)입니다. 전압분배는 고정된 두개의 저항으로 구성됩니다. 가변저항은 전압분배와 구조적으로 비슷하나 하나의 저항을 특정 지점을 기준으로 둘로 나누게 되며, 이 특정 지점은 임의로 조절 가능한 구조로 되어 있습니다. 위 그림에서 전압분배나 가변저항 모두 두 저항 사이에 Vd 포인트가 위치하고, 저항 R1, R2 크기를 조절할 수 있느냐 없느냐가 차이점입니다. 전압분배와 가변저항 둘 모두, 직렬로 연결된 두 저항의 크기에 따라 인가되는 공급 전압이 달라지는 원리를 이용하며, 공급전원을 원하는 크기로 출력하기 위해서 사용합니다. 아래 그림은 동일한 저항값을 가지는 R1, R2가 직렬로 연결되어 있는 회로입니다. Vin은 총 전압이고, R1, R2에 나누어 인가됩니다. 결론적으로 Vout은 Vin과 다른 전압을 가지게 됩니다. 각 저항 R1, R2에 얼마의 전압이 인가될지는 두 저항의 상대적인 크기와 총 저항의 크기로 결정됩니다. 그 공식은 아래와 같습니다. 아래 회로를 봅시다. Vin이 5V이고 R1 is 1KΩ and R2 is 10KΩ인 경우 Vout에 인가되는 전압은 얼마일까요? 가변저항은 다양한 저항값을 가진 제품들이 있습니다. 예를 들어 10KΩ 가변저항의 경우 0Ω에서 최대 10KΩ까지 저항값을 변경할 수 있습니다. 그럼 아두이노와 가변저항을 이용하여 LED의 밝기를 조절해 보겠습니다. 우선 가변저항은 아래와 같은 구조를 가집니다. 3개의 핀으로 구성되어 있고, Vref-Ground 핀을 통해서 공급전원을 인가하면 ouput 쪽으로 가변저항에 의해 조정된 출력전압이 인가됩니다. 우선, 아두이노 우노와 220옴 저항, LED를 이용하여 위와 같은 회로를 구성합니다. 그리고 아두이노 IDE를 이용하여 아래와 같이 코드를 입력합니다. const int ledPin = 9; //pin 9의 PWM 기능을 이용합니다. ...
이 포스팅에서는 PLC 래더 다이어그램 프로그래밍 시 사용되는 일반적인 양식(템플릿)과 함께 래더 다이어그램이 가진 단점에 대해 소개하고자 합니다. Drawbacks in conventional programming methodology 대부분의 PLC들은 아래 그림에 나와 있는 래더 다이어그램 형식의 프로그래밍 방법을 사용합니다. 이 다이어그램은 전기 회로 다이어그램과 매우 유사하고, 그 동작을 해석하기는 비교적 쉽습니다. 다이어그램은 모터를 구동시키는데 사용되는 논리를 설명합니다. START 및 STOP은 외부에서 수신된 명령 입력입니다. FAULT는 모터 보호 체계의 신호입니다. START가 ON이면 출력 COIL이 활성화됩니다. START 및 STOP 명령은 순간(펄스) 유형이며 이 출력 코일의 상태는 STOP 또는 FAULT 입력 상태가 변경될 때까지 출력을 'true' 상태로 잠그는 데 사용됩니다. 대부분의 PLC는 시스템 실행 중에 실시간으로 이러한 모든 입력 및 출력의 상태를 보여주는 동적 디스플레이를 제공합니다. 따라서 외부 신호나 프로그램 자체의 오작동을 쉽게 식별하고 수정할 수 있습니다. 그러나 이 프로그래밍 접근 방식은 근래의 프로그래밍 방식에 비해 여러 가지 제한 사항을 가지고 있습니다. 아래에서는 래더 다이어그램이 다른 프로그래밍 접근 방식에 비해 부족하다고 판명된 항목들입니다. • 소프트웨어 구조 부족 • 재사용성의 문제 • 부족한 데이터 구조 정의 • 복잡한 산술 연산을 처리하는 데 어려움이 있음 Software structure 복잡한 제어 시스템을 다룰 때 주요 프로그래밍 요구 사항 중 하나는, 작업을 더 작고 덜 복잡한 여러 문제로 나누고 서로 명확한 상호 연결을 설정할 수 있어야 한다는 것입니다. 이러한 개별 코드 조각을 프로그램 블록 또는 프로그램 단위라고 합니다. 이러한 프로그램 단위는 다른 프로그래머에 의해 코딩될 수 있고 다른 프로그래머에 의해 제어 시스템의 다른 부분에서 사용될 ...
센서를 선정할 때 NPN 출력을 선정할지 PNP 출력을 선정할 지 결정해야 할 때가 있습니다. 매번 헷갈리는 이 내용을 다시 정리해 봅니다. (1) NPN 출력 형식은 부하(load)가 전원의 +와 센서의 출력선 사이에 위치하게 됩니다. - 예를들어, PLC 입력측 COMMON에 DC24V 전원의 +단자를 연결하고 센서의 출력선을 PLC 입력단자와 연결한다고 보면 됩니다. 즉, 센서가 NPN 출력이면, 센서가 감지될 때 출력선으로 0V 선이 연결된다고 볼 수 있습니다. (2) PNP 출력 형식은 부하(load)가 센서의 출력선과 전원의 -단자 사이에 위치하게 됩니다. - 예를들어, PLC 입력측 COMMON에 DC24V 전원의 -단자를 연결하고 센서의 출력선을 PLC 입력단자와 연결한다고 보면 됩니다. 즉, 센서가 PNP 출력이면, 센서가 감지될 때 출력선으로 +24V 선이 연결된다고 볼 수 있습니다. 자주 사용되는 OMRON E2E-X 시리즈의 DC 3선식 NPN/PNP 배선도는 아래와 같습니다. (1) NPN OUTPUT NPN OUTPUT 센서를 사용하기 위해서는 PLC의 입력 배선은 소스 타입입니다. (2) PNP OUTPUT PNP OUTPUT 센서를 사용하기 위해서는 PLC의 입력 배선은 싱크 타입입니다. 끝.
때때로 릴레이는 래치(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 상태가 됩니다. 래치 기능이 포함된 푸시 버튼을 사용하면 위와 같은 래치 회로가 필요 없지만, 장비 구동시 래치 상태가 해제되어 있지 않은 상태에서 전원이 인가되면 바로 장비가 구동될 수도 있어 안전성 면에서 추천되지 않습니다. 끝.
사각형의 넓이 왜 가로 곱하기 세로 (밑변 곱하기 높이)인가? 우리는 사각형의 가로와 세로의 길이를 곱하여 넓이를 구하는 것을 알고 있습니다. 그런데 사각형의 가로와 세로를 곱하면 넓이가 되는 것을 어떻게 증명할까요? 우선 기하학 측면에서 살펴 보겠습니다. 우선 정사각형의 넓이 구하는 방법에 대한 증명에서 출발합니다. 아래 그림을 보겠습니다. 사각형 \(□ABCD\) 변의 길이 \(L\)로 이루어진 정사각형입니다. 사각형 \(□EFGH\)은 변의 길이가 \(1\)인 정사각형입니다. 그리고 사각형 \(□EFGH\)는 넓이에 대한 공리(Axioms of Area)에 의해 넓이가 \(1\)이 됩니다. 그리고 변 \(AB\), \(EF\)의 비는 아래와 같습니다. \(AB:EF=L:1\) 그리고 " Similar Polygons are composed of Similar Triangles " 정리에 의해서 사각형 \(□ABCD\)와 \(□EFGH\)의 넓이 비는 아래와 같이 정리됩니다. \(□ABCD:□EFGH=(AB:EF)^2\) \(\frac{□ABCD}{□EFGH}=(\frac{L}{1})^2=L^2\) 결과적으로, 사각형 \(□ABCD\)의 넓이는 \(L^2\)가 되고, 이는 한 변의 길이의 제곱을 의미합니다. 이제 직사각형의 넓이 공식에 대한 증명을 보겠습니다. 위 그림에 직사각형 \(□ABCD\)가 있습니다. 변 \(CD\)와 동일한 길이를 한 변으로 하는 정사각형 \(□CDEF\), 변 \(BC\)와 동일한 길이를 한 변으로 하는 정사각형 \(□BCHI\)를 붙입니다. 그러면 직사각형 \(□CDEF\)와 \(□BCHI\)는 합동입니다. \(AB = a\)로 두고 \(BI = b\)로 두면 정사각형 \(□AIGE\)의 넓이는 아래와 같이 전개됩니다. \((a + b)^2 = a^2 + □ABCD 넓이 + □BCHI 넓이 + b^2\) \((a + b)^2 = a^2 + 2 \times □ABCD 넓이 + b^2\...
역사 (History) 최초의 PLC는 1968년도 제너럴 모터스 회사에 의해 설계되었습니다. PLC 등장 이전에는 아래 그림과 같은 전기기계식 릴레이 (Electromechanical Relay)로 제어 시스템을 구축했습니다. 전기기계식 릴레이로 구성된 시스템을 수정하기 위해서는 릴레이의 물리적 배치 및 배선 재작업으로 인한 비용 및 시간의 낭비를 초래하였습니다. 제너럴 모터스는 이러한 비용 낭비를 줄이는 한 방법으로 PLC를 설계하게 된 것입니다. 이 때 사용된 반도체는 IC (Integrated Circuit) 형태이지만, 1971년도 인텔 (Intel)이 마이크로프로세서를 소개한 이 후 PLC도 덩달아 발전을 거듭하게 됩니다. 제어의 형태 생산 공정들은 선행 공정이 있기 마련입니다. 즉, 한 공정이 끝난 뒤 그 다음 공정이 이어지는 형태입니다. 각 공정에는 세부 공정들이 있으며 여러 가지 장비의 ON/OFF 동작에 의해 작업됩니다. 이러한 장비들을 언제 ON/OFF 할 지 결정할 지는 센서의 ON/OFF와 같은 이산적 정보 (discrete information)를 바탕으로 이루어집니다. 또는 온도, 습도, 압력 등과 같은 연속적으로 변화하는 정보를 활용할 수도 있습니다. 시퀀스 제어 (Sequential Control) 시퀀스 제어란 일련의 액션들이 사전에 정의된 순서데로만 동작하게끔 제어하는 형태를 의미합니다. 이러한 제어를 다른 용어로 이산 제어 (Discrete Control)이라고 하며, 이 때 제어 로직의 데이터로 사용되는 입출력 또한 ON/OFF 형태입니다. (예를 들어, 센서가 무엇을 검출/미검출, 모터가 ON/OFF 등을 의미) 자동 제어 (Automatic Control) 자동 제어란 연속적으로 변화하는 입력정보를 바탕으로 일련의 제어 로직을 거친 뒤 출력값을 연속적으로 변화시키는 형태의 제어를 의미하며 아날로그 피드백 (Analog Feedback Control)이 사용됩니다. 아날로그 피드백에 관여하는 파라미터를...
댓글
댓글 쓰기