Understanding Flow Controls: Meter-In vs Meter-Out 에어실린더에 작용하는 힘은 압력조절기(pressure regulator)에 의해 결정됩니다. 그리고 피스톤이 움직이는 속도는 속도제어(flow control) 밸브를 통해 이루어집니다. 실린더의 각 포트마다 속도제어 밸브가 설치되어 인출과 인입 속도를 제어하게 됩니다. 아래는 속도제어 밸브의 구조입니다. 위 그림에 대한 기호는 아래와 같이 표기됩니다. 미터아웃(Meter-Out) 방식의 실린더 속도제어 아래 그림은 미터아웃 방식에 대한 도식입니다. 미터인(Meter-In) 방식의 실린더 속도제어 아래 그림은 미터인 방식에 대한 도식입니다. 끝.
한국거래소(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 호출 발급받은 인증키와 필요...
AWG는 American Wire Gauge의 약자로써 미국에서 사용되는 전선관련 규격입니다. 조작선으로 많이 사용되는 UL선의 경우 AWG 사이즈가 표기되어 있는데 해당 전선의 도체 단면적이 몇 SQ(\(mm^{2}\))인지 궁금할 때가 있습니다. AWG 번호를 가지고 해당 전선의 도체 단면적이 몇 SQ(\(mm^{2}\))인지 변환하는 방법과 변환표를 공유하고자 합니다. AWG => SQ 변환공식 우선 n은 AWG 번호를 의미합니다. 전선의 피복을 포함한 외경 지름은 아래와 같이 구할 수 있습니다. The metric wire outside diameter = \(0.127\ mm\ \times\ 92^{(32-n)/39}\ [mm]\) 전선내 도체의 단면적은 아래와 같이 구할 수 있습니다. The metric wire cross-section = \(0.012668\ mm^{2}\ \times\ 92^{(36-n)/19.5}\ [mm^{2}]\) 예를 들어, 1AWG의 전선에 대해 위 공식을 적용하면 아래와 같습니다. The metric wire outside diameter = \(0.127\ mm\ \times\ 92^{(32-1)/39}\ =\ 7.348 mm\) The metric wire cross-section = \(0.012668\ mm^{2}\ \times\ 92^{(36-1)/19.5}\ = 42.409 mm^{2}\) AWG => SQ 변환표 끝.
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에는 온도입력 모듈이 별도로 필요하게 됩니다. 전압/전류 아날로그 입력카드를 사용하면, 온도센서가 아니더라도 다양한 형태의 아날로그 데이터를 트랜스미터 전압/전류 형태로 취급할 수 있으므로, 좀 더 유현한 구조가 됩니다. 아날로그 입력 모듈의 결선법은 입력 신호가 전압인지, 전류인지에 따라 다릅니다. 전압/전류은 저항과 연...
공압제어에서 방향제어밸브는 핵심요소입니다. 공압회로에서 방향제어밸브를 의미하는 기호에는 밸브의 상세한 내용이 표현됩니다. 기호는 엑츄에이터의 종류, 위치(position)의 개수, 공기가 흐르는 경로(flow path) 그리고 포트(ports)들에 대한 정보를 포함합니다. 공압회로에서 방향제어밸브 기호를 읽는 방법에 대해서 간략히 정리합니다. 밸브(Valve) 기호 대다수의 밸브 기호는 아래 그림과 같이 기본적으로 3가지 항목은 포함하고 있습니다. 엑츄에이터는 밸브의 한 위치에서 다른 위치로 이동시키는 역할을 합니다. position & flow box들은 밸브가 어떻게 동작하는지 묘사합니다. 모든 밸브는 최소한 두개의 position을 가지고, 한 position당 최소 하나 이상의 flow path를 가집니다. Position & Flow Boxes position & flow box는 밸브의 이동가능한 위치를 나타냅니다. box안의 화살표는 flow path를 의미합니다. 위 그림은 두개의 box를 가지고 있으며, 왼쪽 엑츄에이터가 동작하지 않는 상태에서는 오른쪽 box의 flow path가 적용됩니다. 왼쪽 엑츄에이터가 동작하면 엑츄에이터 가장 가까이 있는 왼쪽 box의 flow path가 적용됩니다. 밸브는 한 시점에 하나의 position 상태에만 머물러 있씁니다. 위 그림은 솔레노이드와 리턴스프링이 양쪽에 있는 형태의 밸브입니다. 양쪽에 있는 리턴스프링은 두 솔레노이드 모두 활성화되지 않는 경우 밸브를 가운데 position으로 위치시키는 역할을 하게 됩니다. 위 그림에서는 엑츄에이터가 동작하지 않으면 air flow가 없게 됩니다. 이런 형태의 밸브는 실린더를 점진적으로 제어하는데 흔히 사용됩니다. 포트(Ports) box내 end point 개수가 곧 포트 개수입니다. Figure 2C에서 5개의 포트가 확인됩니다. 배출용 포트는 간혹 소음기나 flow control va...
[실무 가이드] 서보 모터 브레이크 결선, 왜 릴레이 터미널을 써야 할까? 서보 앰프 브레이크 배선 예시 (ex. MINAS-A6B 시리즈) 서보 시스템을 설계하거나 시운전(Try Run)을 할 때 가장 빈번하게 발생하는 사고 중 하나가 서보 드라이버의 출력 포트 소손 입니다. "그냥 24V 신호니까 브레이크에 바로 연결하면 안 되나?"라는 의문에서 시작해, 가장 안전하고 똑똑한 결선 방법까지 정리해 봅니다. 1. 서보 드라이버 출력(X4)의 한계: "생각보다 약하다" 대부분의 메이저 서보 드라이버(Panasonic, Mitsubishi 등) 출력 포트는 최대 정격이 30V 50mA 내외입니다. 반면, 모터 브레이크를 해제하는 데 필요한 전류는 소형 모터 기준 약 300~400mA 에 달합니다. 결론: 직접 연결하는 순간 정격의 6~8배가 넘는 전류가 흐르며 드라이버 내부 트랜지스터가 즉사합니다. 2. 해결사: 릴레이 터미널 선택의 기술 드라이버 보호를 위해 중간에 '릴레이'라는 다리를 놓아야 합니다. 이때 어떤 보드를 쓰느냐가 시스템의 안정성을 결정합니다. 브레이크 OFF 신호는 X4 커넥터의 핀 1, 2번을 사용해서 배선합니다. BRK-OFF-(2번 핀)에 DC24V의 0V를 연결하고 BRK-OFF+(1번 핀)을 릴레이 코일의 -단자에 연결합니다. 그리고 릴레이 코일의 +단자에는 DC24V+를 연결합니다. 중요한 점은 브레이크 코일용 DC 파워서플라이와 제어용 DC 파워서플라이는 별개의 것을 사용하는 것이 권장사항입니다. ① 소비전류를 체크하라 (앰프 보호) 범용 릴레이(HR7 등): 코일 소비전력이 약 0.9W(37.5mA)로, 드라이버 정격(50mA)에 너무 바짝 붙어 있어 위험 마진이 적습니다. 슬림 릴레이 터미널(R4T-YC, R4T-16P-S): 소비전력이 약 110~120mW (약 10mA) 수준입니다. 드라이버 정격의 20%만 사용하므로 매우 안전합니다. ② 유도성 부하(브레이크)에 강...
위 그림에서 (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 기능을 이용합니다. ...
Frame Grabber? 프레임 그래버는 비디오 카메라를 컴퓨터에 연결하기 위한 컴퓨터 확장보드를 일컫는 일반적인 이름입니다. 이 이름은 이미지 프레임을 생성하는 에어리어 스캔 카메라에 적합합니다. 라인 스캔 카메라가 관련되면 프레임 대신 라인이 생성됩니다. 그럼에도 불구하고 인터페이스 보드는 여전히 일반적으로 프레임 그래버라고 불립니다. 프레임 그래버는 내부 저장 구조에 따라 여러 종류로 분류될 수 있습니다. 일반적인 두가지 종류는 아래와 같습니다. - 프레임 버퍼 기반 프레임 그래버 (Frame buffer-based frame grabbers) - FIFO 기반 프레임 그래버 (FIFO-based frame grabbers) What is a Grabber? 그래버는 프레임 그래버가 소유한 하드웨어 리소스 세트입니다. 프레임 그래버는 동시에 작동하는 여러 그래버를 통합할 수 있습니다. 이로 인해 단일 보드 내에 여러 개의 카메라와 연동될 수 있습니다. 여러 그래버를 동시에 작동할 수 없는 경우에도 여러 대의 카메라를 처리할 수 있습니다. 이 경우, 그래버(또는 그래버 세트)는 시간 다중화 방식으로 사용됩니다. 이것을 "그래버 스위칭"이라고 합니다. 그래버는 각 카메라에 연속적으로 할당되어 카메라를 제어하고 비디오 프레임이나 페이지를 획득합니다. 프레임 버퍼 기반 그래버는 프레임이나 페이지를 온보드 프레임 버퍼에 저장한 다음 호스트 메모리에 저장합니다. FIFO 기반 그래버는 프레임이나 페이지를 호스트 메모리에 직접 저장합니다. Frame Buffer-Based Frame Grabber 그래버는 카메라에 필요한 모든 타이밍 및 제어 작업을 담당하고 카메라에서 제공하는 비디오 데이터(아날로그 또는 디지털)를 조절하는 하드웨어 리소스 세트입니다. 프레임 버퍼는 카메라에서 생성된 풀 프레임 이미지를 저장할 수 있을 만큼 큰 내부 저장 영역입니다. Line-Scan 작업의 경우 프레임은 실제로 연속된 라인 집합으로 구성되며 이 집합을 페이지라고...
원문: 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 프로그래밍을 하다 보면 여러 개의 서보 모터를 제어할 때 기본적인 로직은 동일하지만 입출력 주소나 동작 방식이 조금씩 다른 경우가 많습니다. 이런 경우, Structured Text(ST) 언어에서 함수(Function), 함수 블록(Function Block, FB), 그리고 Petri Net 을 활용하면 코드의 중복을 줄이고 유지보수성을 높일 수 있습니다. 이번 글에서는 이를 활용하는 방법을 소개하겠습니다. 1. 함수(Function) 활용 함수는 입력 값을 받아 처리한 후 결과를 반환하는 구조로, 입출력 주소가 다르지만 기본적인 제어 로직이 동일한 경우 유용합니다. ✅ 예제: 단순 서보 모터 제어 함수 FUNCTION ServoControl : BOOL VAR_INPUT StartCmd : BOOL; StopCmd : BOOL; END_VAR VAR_OUTPUT MotorStatus : BOOL; END_VAR BEGIN IF StartCmd THEN MotorStatus := TRUE; ELSIF StopCmd THEN MotorStatus := FALSE; END_IF; ServoControl := MotorStatus; END_FUNCTION ✅ 사용법 Motor1_Status := ServoControl(Motor1_Start, Motor1_Stop); Motor2_Status := ServoControl(Motor2_Start, Motor2_Stop); ➡️ 장점: 간단한 로직을 여러 개의 서보 모터에 쉽게 적용 가능 2. 함수 블록(Function Block, FB) 활용 함수 블록은 내부 변수 값을 유지할 수 있어, 서보 모터의 상태 저장이 필요한 경우 적합합니다. 각 서보 모터에 대해 인스턴스를 생성하여 독립적인 상태를 유지할 수 있습니다. ✅ 예제: 서보 모터 객체화 FUNCTION_BLOCK ServoMotor VAR_INPUT Star...
댓글
댓글 쓰기