본 연구는 ASIC기반의 유선 온습도제어 시스템을 FPGA기반의 무선 제어 시스템으로 설계하고 구현하였다. FPGA 분야와 무선제어 시스템은 산업 현장에서 특히 온도와 습도 측정하는 분야에서 빠르게 성장하고 있다. FPGA는 저렴한 비용으로 빠르게 개발 할 수 있고, 원하는 CPU와 IO를 설정하여 시스템을 구성할 수 있다. 주변 장치를 IP 기반으로 설계하고 쉽게 변경할 수 있다. 무선화는 복잡하고 변화가 많은 현장에서 설치가 간편하고 유지 보수가 용이한 장점이 있다. 본 연구에서는 Sprtan-6 FPGA로 MicroBlaze 기반의 32비트 RISC CPU, 터치 및 주변 장치를 구현하고 임베디드 리눅스를 포팅하고, 지그비 무선 통신을 추가하였다. 시스템에 리눅스 OS와 웹 서버를 추가하여 웹을 통한 모니터링과 제어 기능을 구현하였다. 기존의 시스템과 비교할 때 성능향상 뿐만 아니라 개발이 쉽고 가격도 저렴하다. 연구에서는 특히 리눅스 기반의 개발환경 구축과 사용자 인터페이스 구현에 연구를 집중하였다.
본 연구는 ASIC기반의 유선 온습도 제어 시스템을 FPGA기반의 무선 제어 시스템으로 설계하고 구현하였다. FPGA 분야와 무선제어 시스템은 산업 현장에서 특히 온도와 습도 측정하는 분야에서 빠르게 성장하고 있다. FPGA는 저렴한 비용으로 빠르게 개발 할 수 있고, 원하는 CPU와 IO를 설정하여 시스템을 구성할 수 있다. 주변 장치를 IP 기반으로 설계하고 쉽게 변경할 수 있다. 무선화는 복잡하고 변화가 많은 현장에서 설치가 간편하고 유지 보수가 용이한 장점이 있다. 본 연구에서는 Sprtan-6 FPGA로 MicroBlaze 기반의 32비트 RISC CPU, 터치 및 주변 장치를 구현하고 임베디드 리눅스를 포팅하고, 지그비 무선 통신을 추가하였다. 시스템에 리눅스 OS와 웹 서버를 추가하여 웹을 통한 모니터링과 제어 기능을 구현하였다. 기존의 시스템과 비교할 때 성능향상 뿐만 아니라 개발이 쉽고 가격도 저렴하다. 연구에서는 특히 리눅스 기반의 개발환경 구축과 사용자 인터페이스 구현에 연구를 집중하였다.
In this paper, we designed and built a wired temperature controller system which is based on ASIC for a wireless temperature controller system based on FPGA. FPGA devices and wireless controller systems are growing quickly especially for industrial systems for sensing temperature and humidity. FPGA ...
In this paper, we designed and built a wired temperature controller system which is based on ASIC for a wireless temperature controller system based on FPGA. FPGA devices and wireless controller systems are growing quickly especially for industrial systems for sensing temperature and humidity. FPGA can set up a desired system and a CPU, and directly set up or change a peripheral device based on an IP quickly for an affordable price. This wireless system is easy to install in the field where there are lots of changes and the system is complex. It also has advantages for maintenance. In this study, we are using a 32 bit RISC CPU based on MicroBlaze, with a touch interface, peripheral device, and porting the embedded Linux. Also, we added wireless communication using ZigBee. With this system we provide remote monitoring and control through the web by adding a web server. Compared to the original system, we say not only a performance improvement, but also more efficient development and cheaper costs. In this study, we focused especially on building a better development environment and a more effective user interface.
In this paper, we designed and built a wired temperature controller system which is based on ASIC for a wireless temperature controller system based on FPGA. FPGA devices and wireless controller systems are growing quickly especially for industrial systems for sensing temperature and humidity. FPGA can set up a desired system and a CPU, and directly set up or change a peripheral device based on an IP quickly for an affordable price. This wireless system is easy to install in the field where there are lots of changes and the system is complex. It also has advantages for maintenance. In this study, we are using a 32 bit RISC CPU based on MicroBlaze, with a touch interface, peripheral device, and porting the embedded Linux. Also, we added wireless communication using ZigBee. With this system we provide remote monitoring and control through the web by adding a web server. Compared to the original system, we say not only a performance improvement, but also more efficient development and cheaper costs. In this study, we focused especially on building a better development environment and a more effective user interface.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
그리고 자일링스사에서 제공하는 공개 소스 리눅스를 운영체제로 채택하여 포팅하고, 실제 무선 온도 제어 시스템을 구현하기 위한 GUI(Graphic User Interface)와 네트워크 및 웹 서버애플리케이션을 구현한다[8]. 무선 온도 제어 시스템을 구성한 후에 기존의 시스템에 비하여 가질 수 있는 장점과 성능 비교에 관하여 고찰한다.
정밀 온도 및 습도 제어 시스템이 산업의 여러 방면에서 널리 활용되고 있다. 본 연구는 산업용 무선 온도 제어기의 무선기능의 추가와 개발 및 유지보수의 편리성을 위해서 FPGA(Field Programmable Gate Array) 기반 시스템으로 설계 및 구현을 하였다. (주)삼원테크의 온도 제어기는 ARM 계열의 MPU(Multi-Processor Unit)가 활용되며 온도 측정장치와 제어기는 RS 232C 및 485 방식의 유선기반의 방식이다.
본 연구에서는 FPGA기반 무선 온도 제어 시스템을 설계 및 구현한다. 디질런트사의 Atlys Spatran-6 FPGA 개발 보드로 프로토타입의 구성 및 테스트를 한다.
본 연구에서는 무선 온도 제어시스템을 위한 하드웨어를 직접 설계하였다. 자일링스사의 sprtan-6 FPGA칩을 사용하고 기존의 삼원 온도 시스템을 구현할 주변 장치와 무선 통신에 필요한 지그비 모듈을 설계하였다.
제안 방법
(주)삼원테크의 온도 제어기는 ARM 계열의 MPU(Multi-Processor Unit)가 활용되며 온도 측정장치와 제어기는 RS 232C 및 485 방식의 유선기반의 방식이다. FPGA를 활용하여 제품의 성능은 향상하고 비용은 낮추며, 무선화를 통해서 설치 및 관리를 편리하도록 시스템을 설계하고 구현하였다.
NFS는 컴파일서버와 타깃리눅스 시스템간의 파일 시스템 공유 서비스를 제공한다. 그래서 개발을 하는 평상시에는 타킷 시스템에서 NFS로 컴파일 서버에 있는 실행파일을 원격으로 실행해서 테스트한다. 개발 초반에 다소 번거롭지만 개발의 용이함을 위해 구축해야하는 필수 요소이다[17].
그래서 본 연구에서는 개발을 좀 더 용이하게 하기 위해서 VMware를 이용해서 윈도우에서 이용 가능한 소프트웨어와 리눅스에서 활용 가능한 텔넷, NFS 서비스 등의 개발환경을 하나의 PC에서 사용 하였다.
이들은 전형적인 임베디드 시스템의 구성에서 컴파일 서버와 사용자 단말을 VMware 툴을 이용하여 하나의 PC안에 구성한다. 그래서 하나의 OS에는 익숙한 윈도우 환경을 사용하면서 자일링스사의 ISE Design Suite을 이용하여 MicroBlaze 기반의 CPU, DDR2, Flash 및 각종 입출력 하드웨어 장치를 설계하고 JTAG를 이용해서 타깃시스템으로 다운로드한다. 다른 OS에는 컴파일 서버로 타깃시스템에서 이용할 텔넷, NFS (Network File system) 등 네트워크 서비스 및 소스 코드 편집, 교차 개발 환경을 구성해서 컴파일을 진행한다.
⑤ 데이터 및 분석 자료의 저장을 위해 SD Card를 장착하였다. 그리고 Firmtech의 Mango 기반 지그비 무선 통신의 설계를 하고 온도 센서를 부착하여 온도를 제어 할 수 있도록 하였다.
본 연구에서는 FPGA기반 무선 온도 제어 시스템을 설계 및 구현한다. 디질런트사의 Atlys Spatran-6 FPGA 개발 보드로 프로토타입의 구성 및 테스트를 한다. 그리고 최신 FPGA 프로세서인 Spatran 6 기반으로 제어기를 설계하고, MicroBlaze 기반의 32비트 RISC CPU를 구현한다[6].
Spartan 6 FPGA에 32비트 임베디드 프로세서인 MicroBlaze를 탑재하여 제어 시스템을 구현하여 관리의 편리성과 안정성을 높였다. 리눅스 OS 기반에서 제어 프로그래밍을 구현하였다. 센서와 제어기, 제어기와 컨트롤러 사이에는 근거리 무선통신인 지그비를 적용하여 무선화 함으로 설치와 관리가 용이하다.
본 연구에서 개발된 보드를 이용해서 무선 온도 제어 시스템을 구현했다. 무선 온도 제어 시스템은 터치스크린(TFT LCD)의 인터페이스를 이용한 제품 조작 및 설정이 가능하고 정밀 측정 가능한 온도 센서 최대 255개로부터 값을 읽어 들여서 그 값들을 모니터링, 분석, 제어가 가능하다.
본 연구에서 활용한 FPGA는 현장에서 빠르게 구현하여 적용해 보는 설계 방식으로 저렴한 비용과 시간으로 원하는 칩을 만들 수 있고, CPU 및 주변장치들을 IP 기반으로 직접 설계할 수 있으며, 필요에 따라 변경이 가능하다.
본 연구에서는 ASIC 기반의 시스템에서 ASIC 보다 진보된 기술인 FPGA로 하나의 칩에 MCU+ Flash+I/O를 포함하고, 여러 개의 프로세서를 장착할 수 있고 언제든지 바꿀 수 있으며, 각종 IO를 내장할 수 있다. 그리고 FPGA칩 설계기술은 제품단가를 현저히 낮출 수 있고, 개발 기간을 기존 방식 보다 약 1/5로 줄일 수 있으며, 시스템을 소형화할 수 있는 기술이다.
무선 온도 제어 시스템의 개발 환경은 임베디드 소프트웨어 개발 환경인 컴파일 서버, 사용자 단말, 타깃시스템을 사용한다. 본 연구에서는 VMware을 이용하여 하나의 PC에서 컴파일 서버 OS와 사용자 단말 OS를 설치했다[3]. VMware의 장점은 이와 같이 여러 개의 OS를 설치 할 수 있고, 멀티부팅이 가능하여 한 컴퓨터에서 다시 부팅하지 않고 여러 개의 OS를 운영할 수 있다.
본 연구에서는 산업용으로 활용될 무선 임베디드 시스템을 FPGA 기반으로 설계하고 구축하고 지그비 무선 통신을 추가하였다. Spartan 6 FPGA에 32비트 임베디드 프로세서인 MicroBlaze를 탑재하여 제어 시스템을 구현하여 관리의 편리성과 안정성을 높였다.
특히 산업현장에서 적용 사례가 많아지고 있는데 복잡하고 변화가 많은 현장에서 기존의 시스템보다 무선 제어 및 센싱 시스템은 설치가 간편하고 유지 보수가 용이한 장점이 있다. 본 연구에서는 표 1과 같이 하드웨어의 구현은 최신 FPGA 프로세서인 Spatran 6 기반으로 제어기를 설계하고, MicroBlaze 기반의 32비트 RISC CPU를 구현하였다. FPGA 기반으로 설계 및 제작은 개발 기간을 단축하고 가격을 낮추며, 안정성을 높여 경쟁력을 높이는데 있다[1].
테스트를 위한 개발 환경의 구성은 그림 2처럼 노트북, HDMI 용 모니터 그리고 Atlys 보드로 구성된다. 이 테스트에서는 센싱을 위한 무선 통신(지그비)과 TFT LCD 테스트를 제외하고, 임베디드 리눅스, 포팅(porting) 그리고 GUI(Graphic user interface)를 위한 테스트를 하였다[5-17].
본 연구에서는 무선 온도 제어시스템을 위한 하드웨어를 직접 설계하였다. 자일링스사의 sprtan-6 FPGA칩을 사용하고 기존의 삼원 온도 시스템을 구현할 주변 장치와 무선 통신에 필요한 지그비 모듈을 설계하였다. 그림 3과 그림 4는 설계한 보드의 실제 모습이다.
그리고 지그비(Zigbee) 통신기술은 초소형, 저전력, 저가격 측면에서 우수한 특징을 가지고 있으므로, 무선 임베디드 FPGA 기반 산업 및 컨트롤러 시스템을 효율적으로 지원할 수 있는 무선 통신 기술이다. 지그비를 이용하여 무선통신을 설계하고 구현하였으며 주된 센싱은 온도를 읽고 AD 변환하여 무선을 통해 디지털로 전송한다. 특히, 반경 30m내에서 250Kbps의 속도로 데이터를 전송하며 메시 네트워크 구조를 이용하면 하나의 무선 네트워크에 약 255대의 기기를 연결할 수 있는 확장성이 매우 우수한 기술이다[2].
대상 데이터
하드웨어 디버그와 프로그램 다운로드를 위해서 JTAG Debug 인터페이스를 사용하였다. ② 데이터입출력으로는 16550기반의 Serial UART를 사용하였고, 네트워크로 이더넷 컨트롤러를 연결하였다. OS는 산업용 컨트롤러에 적합하도록 리눅스 기반으로 프로그래밍 환경을 구성하였다.
또 개발환경의 버전관리와 추가기기에 대한 확장이 쉬워져서 개발하는데 용이하다. 본 논문에서는 VMware 환경에서 CentOS 5 기준으로 사용되었다[10].
본 연구에서 보드를 개발하기 전에 테스트를 위해 사용한 보드는 그림 1과 같은 Digilent 사의 Atlys Spartan-6 FPGA 개발 보드이다. Atlys 회로 보드는 완제품으로 Xilinx spartan-6 LX45 FPGA를 기반으로 바로 사용 가능한 디지털 회로 개발 플랫폼이다[20].
저전력의 지그비 송수신기를 빛이나 기온, 압력과 같은 다양한 기능의 센서들과 결합하여 보다 큰 규모의 센서네트워크를 구성할 수 있는 기술이다. 본 연구에서는 지그비 무선 통신을 위해 펌텍사의 지그비 모듈을 설계 및 제작에 사용하였다. 여러 개의 센싱 노드와 데이터를 모으는 타깃 보드에 지그비를 부착하고 통신을 한다[9-10].
본 연구에서는 교차 개발 컴파일러 환경(tool chain)을 위해서 자일링스사에서 제공하는 공개 소스 리눅스를 사용한다. 컴파일러로는 자일링스에서 제공하는 microblaze 4.1.2 버전의 gcc 컴파일러를 사용한다. 공개 소스 리눅스 플랫폼을 사용하기 위해서는 표 3과 같은 툴과 라이브러리가 필요하다.
테스트를 위한 개발 환경의 구성은 그림 2처럼 노트북, HDMI 용 모니터 그리고 Atlys 보드로 구성된다. 이 테스트에서는 센싱을 위한 무선 통신(지그비)과 TFT LCD 테스트를 제외하고, 임베디드 리눅스, 포팅(porting) 그리고 GUI(Graphic user interface)를 위한 테스트를 하였다[5-17].
이론/모형
현재 마이크로윈도우에서 제공하는 장치(Widget)는 없지만 FLTK의 마이크로윈도우용인 FLNK와 함께 Nano-X 기반의 TinyWidget이 지원 되고 있다[13]. 본 연구에서는 Nano-X 기반의 라이브러리를 사용하였다.
호스트 시스템에서는 이 같은 tool을 통해 타깃 시스템에서 실행될 수 있는 실행 코드를 만들어낸다. 본 연구에서는 교차 개발 컴파일러 환경(tool chain)을 위해서 자일링스사에서 제공하는 공개 소스 리눅스를 사용한다. 컴파일러로는 자일링스에서 제공하는 microblaze 4.
성능/효과
RS485 방식의 통신에서 무선 통신을 더함으로써 유선이 가지는 단점인 접속할 수 있는 양과 설치의 어려움을 해소할 수 있었다. 그리고 지그비 무선 통신기술은 초소형, 저전력, 저가격 측면에서 우수한 특징을 가지고 있으며, 유선 방식의 32개의 연결 피드를 최대 255개로 연결 가능하다.
본 연구에서는 산업용으로 활용될 무선 임베디드 시스템을 FPGA 기반으로 설계하고 구축하고 지그비 무선 통신을 추가하였다. Spartan 6 FPGA에 32비트 임베디드 프로세서인 MicroBlaze를 탑재하여 제어 시스템을 구현하여 관리의 편리성과 안정성을 높였다. 리눅스 OS 기반에서 제어 프로그래밍을 구현하였다.
본 연구는 개발 환경을 VMware를 이용하여 개발을 기존의 개발 시스템보다 개발을 용이하게 하였다. 그리고 그래픽 지원을 위해 nano-X를 활용하였으며, 다른 그래픽 라이브러리보다 사이즈가 작아, 임베디드의 제한적 자원에 효율적이다. 앞으로의 향후 연구과제는 현재의 시스템의 구현을 모듈화 하고 최적화된 라이브러리를 만드는 것이고, 웹 서버의 확장 및 보안에 대해서 연구하고, 스마트 폰과의 연계를 통해서 기기를 통해서 모니터링 및 제어를 구현할 계획이다.
센서와 제어기, 제어기와 컨트롤러 사이에는 근거리 무선통신인 지그비를 적용하여 무선화 함으로 설치와 관리가 용이하다. 또한 제어 시스템을 FPGA 기반으로 구현함으로 시스템의 안정성이 높였다. 본 연구는 개발 환경을 VMware를 이용하여 개발을 기존의 개발 시스템보다 개발을 용이하게 하였다.
본 논문에서 구현된 플랫폼인 임베디드 리눅스 OS는 동일한 OS에서 동작하는 다른 기종과도 이식 가능하고 융합이 용이하다. 그리고 플랫폼 내부에 존재하는 웹 서버와 CGI통신으로 인터넷 원격 접속 및 제어가 가능하고 센서/제어 모듈은 플랫폼 내부에 동기화 하여 따로 동작 혹은 Stand alone 모드로 동작 가능하다.
또한 제어 시스템을 FPGA 기반으로 구현함으로 시스템의 안정성이 높였다. 본 연구는 개발 환경을 VMware를 이용하여 개발을 기존의 개발 시스템보다 개발을 용이하게 하였다. 그리고 그래픽 지원을 위해 nano-X를 활용하였으며, 다른 그래픽 라이브러리보다 사이즈가 작아, 임베디드의 제한적 자원에 효율적이다.
후속연구
그리고 그래픽 지원을 위해 nano-X를 활용하였으며, 다른 그래픽 라이브러리보다 사이즈가 작아, 임베디드의 제한적 자원에 효율적이다. 앞으로의 향후 연구과제는 현재의 시스템의 구현을 모듈화 하고 최적화된 라이브러리를 만드는 것이고, 웹 서버의 확장 및 보안에 대해서 연구하고, 스마트 폰과의 연계를 통해서 기기를 통해서 모니터링 및 제어를 구현할 계획이다.
질의응답
핵심어
질문
논문에서 추출한 답변
임베디드 운영체제란 무엇인가?
임베디드 운영체제는 타깃 시스템인 하드웨어에 내장 되어 동작하는 소프트웨어를 의미한다. 점차 임베디드 시스템의 요구기능이 복잡해짐에 따라 프로그램도 복잡해지고, 지원해야 하는 서비스가 다양화됨에 따라 프로그램을 보다 효율적으로 관리하기 위해서 최근의 모든 임베디드 시스템에서는 임베디드 운영체제를 사용한다.
타깃 시스템에 수행될 운영체제 및 프로그램의 컴파일을 위해서는 교차개발 환경을 구축해야 하는데, 교차개발 환경은 무엇인가?
타깃 시스템에 수행될 운영체제 및 프로그램의 컴파일을 위해서는 교차개발 환경을 구축해야 한다. 교차개발 환경이라 함은 주 컴퓨터(host computer)와 타깃 시스템의 프로세서가 서로 다른 경우, 주 컴퓨터에서 사용되는 타깃용 도구라고 정의할 수 있다[15]. 교차개발 환경을 이용하여 컴파일 된 프로그램은 JTAG, 이더넷 또는 시리얼 포트를 통해 타깃 시스템의 플래시 메모리와 같은 저장장치로 다운로드 된다.
삼원테크의 온도 제어기에 들어가는 MPU는 어떤 계열인가?
본 연구는 산업용 무선 온도 제어기의 무선기능의 추가와 개발 및 유지보수의 편리성을 위해서 FPGA(Field Programmable Gate Array) 기반 시스템으로 설계 및 구현을 하였다. (주)삼원테크의 온도 제어기는 ARM 계열의 MPU(Multi-Processor Unit)가 활용되며 온도 측정장치와 제어기는 RS 232C 및 485 방식의 유선기반의 방식이다. FPGA를 활용하여 제품의 성능은 향상하고 비용은 낮추며, 무선화를 통해서 설치 및 관리를 편리하도록 시스템을 설계하고 구현하였다.
참고문헌 (21)
류재경, 이수현, 정용진, "SURF 알고리즘 기반 특징점 추출기의 FPGA 설계," 멀티미디어학회 논문지, Vol. 14, No. 3, pp. 368-377, 2011.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.