본문 바로가기

전체 글119

액추에이터 - 모터 (Motor) 1. 자동화의 원동력 모터 (Motor) 모터는 대표적인 액추에이터 중 하나로, 산업에서 가장 널리 사용되면서도 제어 기술이 매우 까다로운 편이다.산업, 자동화, 가전, 이동수단, 로봇 기술, 철도 등 거의 모든 기계 시스템에서 핵심적인 역할을 담당하는 필수요소로 자리잡고 있다. 모터는 단순한 회전 장치를 넘어서 현대 산업과 기술 발전을 가능하게 한다.스마트 팩토리에서는 다양한 형태의 모터가 사용되며, 정확한 속도, 방향, 토크 제어가 필수적이다. 모터 없이 공장의 컨베이어가 움직일 수 없고 로봇또한 동작할 수 없으며, 기계 장비가 가공을 수행할 수도 없다.모터는 단순한 부품이 아니라, 현대 문명을 움직이는 핵심 기술이며, 지속적인 연구와 개선이 필요한 필수적인 요소이다.특히 산업용 임베디드 시스템(Em.. 2025. 3. 8.
자료구조 (Data Structure) 1. 자료구조 (Data Structure) 개념 자료구조(Data Structure)란 데이터(정보)를 효율적으로 저장하고 관리하며, 필요한 연산을 효과적으로 수행할 수 있도록 조직하는 방법을 의미한다.2. 자료구조 (Data Structure) 필요성 효율적인 데이터 저장데이터를 체계적으로 저장하여 빠르게 접근하고 사용할 수 있도록 함.연산의 최적화검색, 삽입, 삭제 등의 연산을 최소한의 연산량으로 수행할 수 있도록 설계됨.메모리 관리제한된 메모리를 효율적으로 사용하고 낭비를 줄임.알고리즘 성능 향상알고리즘의 성능을 최적화하여 실행 속도를 높일 수 있음.3. 자료구조 (Data Structure) 분류3 - 1. 선형 자료구조 (Linear Data Structures)데이터가 순차적으로 저장되는 구.. 2025. 3. 5.
코딩 스타일 (C++) C++에서 코딩 스타일의 규약은 가독성, 유지보수성, 성능, 안정성을 고려한다.특히, 임베디드 시스템에서는 메모리 제어와 성능 최적화가 중요한 만큼 일부 규칙이 일반적인 C++보다 더 엄격할 수 있다. 가독성과 일관성을 위한 규칙일뿐 반드시 지켜져야하는 부분은 아니나, 프로젝트를 누군가와 협업한다면 규칙을 지키는 것을 권장한다.1. 네이밍 규칙 (Naming Conventions)로컬 변수 : 소문자로 시작, 언더바 _ 로 단어 구분int sensor_value; // _ 구분float temperature_celsius; // 카멜표기법 멤버 변수 : m_ 접두사 사용class Sensor {private: int m_value;};전역 변수 : g_ 접두사 사용int g_system_status.. 2025. 3. 4.
DWIN DGUS HMI 개발 라이브러리 1. Embedded System에서 HMI의 역할HMI(Human-Machine Interface)는 사용자가 임베디드 시스템(Embedded System)과 상호작용할 수 있도록 하는 디스플레이, 터치스크린, 버튼, GUI 인터페이스 등을 의미한다. 임베디드 시스템은 주로 센서, 액추에이터, 마이크로컨트롤러(MCU) 등으로 구성되며, HMI를 통해 사용자에게 데이터를 표시하고, 제어 입력을 받을 수 있다. 즉, 여러 수동버튼을 하나의 화면으로 구성할 수 있다는 것이다.비유하자면 개인용 컴퓨터에서 모니터를 통해 사용자와 시스템이 상호작용 하듯이 PLC에서도 HMI를 통해 데이터를 시각화하고 사용자 입력을 받을 수 있음.개인용 컴퓨터에서 모니터 + 키보드 + 마우스가 사용자 인터페이스를 담당하듯, PLC.. 2025. 3. 2.
Embedded PLC IoT 보드 제작 1. 알리익스프레스 인클로저 케이스알리익스프레스에서 인클로저 케이스를 저렴하게 구매하였다. 도면 자료를 도저히 찾을 수 가 없어서 직접 수령 이후 보드조립 규격에 맞도록 사이즈를 측정하였다. 사실, 해당 케이스는 작년 여름 쯤에 3000원 가격 정도에 구매하였으나 이전 프로젝트 (데이터수집장치) PCB 설계에 한번 실패하고 많은 돈을 잃었기 때문에 그동안 활용할 생각을 하지 못하였다...산전수전끝에 얼마전에 하드웨어 문제를 찾아서 개선했고 USB UART 회로를 구현하는데 성공하였다. 그래서 이번에는 좀 더 완벽한 형태의 PLC (Programmable Logic Controller)를 만들어보고자 한다.※ 인클로저 케이스란?전자기기, 자동차, 산업기기 등의 기계에 부착되어 장치(PCB)를 보호하는 케이.. 2025. 2. 27.
Embedded System 개발 문서화 임베디드 시스템은 일반적으로 큰 시스템의 일부로 통합된 전문화된 컴퓨터 시스템이다. 임베디드 시스템은 특정 기능을 수행하는 컴퓨터 엔진을 형성하기 위해 하드웨어와 소프트웨어 컴포넌트 조합으로 구성된다.최근 공부 중인 도서에서 임베디드 시스템에 대한 정의를 인상적으로 표현하였는데 다음과 같다." 최종 기능이 컴퓨터가 되지 않는 컴퓨터 " -  임베디드 시스템을 위한 소프트웨어 공학 총론 - "개발(Develop)" 이라는 것은 단순히 정해진 것 들을 프로그래밍 하는 것 만을 요구하지 않는다. 프로그래밍은 개발을 위한 도구이자 수단에 불과하며 "개발자의 역할은 단순한 코드 작성자 아닌 다양한 IT 기술들을 융합" 하여 새로운 것을 창조해내는 역할을 수행한다.임베디드 시스템 개발에서는 하드웨어와 소프트웨어가 .. 2025. 2. 25.
4-20mA Receiver 회로 설계 최근 가장 이상적인 PLC (Programming Logic Controller) 보드를 만들기 위해 나름 열심히 연구를 하고 있다.금번에는 ESP32 WROOM 32E (안테나 내장형 MCU)를 활용하여 Embedded System 원 보드화를 설계중이다.1. Current Sense Amplifiers (전류 감지 증폭기)최근 LCSC 부품 키워드를 참고하다 흥미로운 증폭기를 발견하였다. Current Sense Amplifiers (전류 감지 증폭기) 라는 부품인데 전류 감지를 위한 저항 (션트 저항)에서 만들어지는 전압을 증폭하기 위한 전용 증폭기이다.(1) CSAMP VS OPAMP Current Sense Amplifier (CSA) 는 전류 감지에 특화되어 있으며, 높은 공통 모드 전압 범위.. 2025. 2. 14.
임베디드 (ESP32) 보드 개발 이슈 사항 1. 데이터 수집 및 제어 (PLC:Programmable Logic Controller) 보드(1) 주요기능DC 24V / 2A (24W) 전원1602 I2C 디스플레이디지털 입력 : 24V 신호를 입력디지털 출력 : 24V 신호를 출력아날로그 입력 (4-20mA) : 4~20mA 신호를 입력아날로그 입력 (0-10V) : 0-10V 신호를 입력센서 입력 : CT(AC전류 센서) 입력, PT100(온도 센서) 입력GPIO 핀 (I2C SDA, SCL / ADC/ DI/ DO)부저 출력Ethernet (W5500 SPI 기반)MicroSD 카드 (SPI 기반)RS485/232 통신USB C Type ( 펌웨어 업로드 , 시리얼 디버깅용 )(2) 개발환경회로도 및 PCB 아트웍 : EasyEDA펌웨어 작업.. 2025. 1. 27.
Ethernet 인터페이스 (W5500) 1. Ethernet 구현이 필요한 경우를 대비Ethernet의 경우 고속 데이터 전송과 안정성을 자랑하는 통신 인터페이스이다. TCP/IP도 물리적계층으로 Ethernet을 포함하여 사용하고 있다. 그러나 마이크로컨트롤러와 연결해서 사용하는 일이 있을까 싶기도 하지만 Ethernet 인터페이스 하나로 수많은 프로토콜 (TCP/IP, UDP, HTTP, MQTT 등)을 구현할 수 있다는 엄청난 장점이 있다.(1) Ethernet 을 기반으로 하는 산업용 프로토콜 EtherCAT (Ethernet for Control Automation Technology)ProfinetModbus TCPEtherNet IP (Industrial Protocol)Ethernet을 기반으로 하는 산업용 프로토콜들은 주로 산.. 2024. 11. 29.
PLC(Programmable Logic Controller) 와 시퀀스 1. 개념(1) PLC는 시퀀스 제어 (회로) 동작을 위한 장비PLC는 프로그래머블 로직 컨트롤러(Programmable Logic Controller)의 약자로 산업 기계설비에서 자동화 제어 및 모니터링에 사용되는 컴퓨팅 장치이다.전자제어를 위한 장치(소형 저전력 디바이스)라기 보다는 산업 전기(220V, 380V)를 사용하는 기계설비를 제어하기 위한 장치에 가깝다. 현장에 가보면 판넬이나 큰 모터를 구동하는 기계설비 등에 사용된다. 이를 "시퀀스" 라고 부르며 PLC의 본연의 기능은 사용자가 프로그래밍을 통하여 "시퀀스 제어 (회로)"를 구현하기 위한 장치 일 뿐이다.▼개념이해를 위해 PLC보다 먼저 알아야 할 것은 시퀀스이다.▼(2) 시퀀스 개념시퀀스는 미리 정해진 순서나 일정한 논리에 의해 제어하.. 2024. 10. 29.