제어기술 소개 목표 : 제어기의 종류, 제어 방식 등을 살펴본다. 주요내용 제어기의 종류 제어방식 : 시퀀스, 피드백, 등.

Slides:



Advertisements
Similar presentations
Dept. Computer Engineering DBLAB 정보처리개론 담당 교수 : 김정석 2009 년도 1 학기.
Advertisements

Family 의 개요 의 외부 Pin 기능과 내부 기능 Memory 구조 Timing 2 장 8051 의 구조.
메카트로닉스 개론 ㈜ ESP 교육시스템 사업팀 메카트로닉스 (Mechatronics)? Mechatronics = Mechanics + Electronics Mechanism for Factory Automation Electronics for Mechanism Control.
( 주 ) 센추리 기술연구소 전장설계팀 AR CS 기술 교육 일 시 : 2011 년 03 월.
Smart IoT 설계 시스템 Lecture 09. Smart IoT 시스템 소개. Smart IoT 설계 시스템 2.
IC DESIGN LAB 서강대학교 집적회로설계 연구실 SOGANG UNIVERSITY 2014 Since 1993
마이크로 컨트롤러 Microcontroller.
SoC 로봇워 참가자 교육.
Chapter 9. 컴퓨터설계기초 9-1 머리말 9-2 데이터 처리장치 (Datapath)
Project Goal..! Milestone Role Division Achievement Result
DISPLAY Block diagram BASE BOARD CPU BOARD DDR-3 1GB (256MB X 4) CPU
음향 시스템 사양서 SIGNAL PROCESSOR BSS : BLU-806 SPECIFICATIONS FEATURES
소프트웨어와 운영체제.
One Step Closer - AVR ATMEGA128 -
PIC는 우리의 친구 한국정보통신대학교 디지털미디어연구소.
2장 마이크로프로세서 구성요소 Slide 1 (of 19).
분산 제어 시스템 DCS DCS 목 차 1. DCS의 탄생과 발전 2. DDC와 DCS의 비교 3. 분산제어 시스템의 개요 4. DCS의 역할분담 5. DCS의 일반구성 6. DCS의.
자동제어 개념2 1 1.
  사 용  설 명 서    (항온항습기) Ver. 09
Signal 자연계에 존재하는 모든 정보전달의 수단 신호의 공학적 표현 물소리, 바람소리, 새소리 짐승소리,불,연기,봉화…
Project . A/D Converter AD Converter using for MOSFET 무한도전 팀명 : 무한도전
Technical Trends of Servo Drive and Performance
마이크로프로세서 메모리 및 입출력장치 인터페이스
DB1000조절및 PID 관계 작성자 : 김영복.
PLC : Programmable Logic Controller
마이크로프로세서(Microprocessor,µP)
USER’S MANUAL 모델명: CCR-201 코드시스템(주)
10장 주변장치 (PIO) Slide 1 (of 28).
< 생산자동화 기능사 실기수준 >
 midi LOGGER GL220   신제품 소개 Dec, 2011.
1장. 컴퓨터의 기초 Lecture #1.
3장 MPU 내부구조 Slide 1 (of 28).
임베디드 하드웨어 Lecture #6.
컴퓨터 구조학 정보보호학과.
新入 社員 敎育 資料(回路 PARTS) LG Electronics / 冷氣 OBU 1. 回路 開發 中日程
아날로그 및 디지털 회로의 인터페이싱.
14. 센서 인터페이스 센서 센서의 분류 센서의 변환기능 센서사용 제어시스템 대한상공회의소 충북인력개발원 정보통신과 강 원 찬.
DSP와 TMS320F28x의 이해.
Introduce to ATmega128 & Codevision
2-1. PLC I/O 할당 입.출력 기기와 외부기기와의 접속
12. 아두이노와 센서를 이용한 제어 - 스마트 폰으로 제어하는 아두이노 -.
전원설비 포인트연결어댑터 교육자료 주식회사 필 트 론.
AFC-1500 FASTENING SYSTEM.
컴퓨터 구조.
1 컴퓨터 시스템 소개.
PLC를 이용한 제어로직에 관한 연구 김 재 은.
운영체제 (OS: Operating System)
9장. 중앙처리 장치의 조직과 기능 다루는 내용 컴퓨터 본체에서 CPU의 위치 살펴보기 CPU의 성능, 기능, 조직
시퀀스제어와 PLC응용 제1장 시퀀스 제어의 개요.
종합설계 I - 반도체 회로 설계 - 충북대학교 양병도 교수.
UNIT 02 Microprocessor 로봇 SW 교육원 조용수.
DSP 소개 및 TMS320LF2407A 6th hyaoo.
1. Embedded System의 이해.
6 중앙처리장치의 조직과 기능 IT CookBook, 컴퓨터 구조와 원리 2.0.
3주 컴퓨터구조.
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
PLC.
Chapter 4 The Von Neumann Model.
SYSMAC GATEWAY 간이 매뉴얼.
Computer System Architecture
설비 접점/PLC 연결방안 및 수집대상 자료 TV현황판 POP SERVER Ethernet 작업기계 PLC와의 연결방법
제16강 입출력시스템 1.
PLC : Programmable Logic Controller
【처리 Flow】 ① ② 5) 홍채 인식 보안 MOUSE 제품의 개요 보안 및 암호화에 개인의 생채정보를 이용함으로써
아두이노 프로그래밍 Lecture #
임베디드 하드웨어 Lecture #6.
Progress Seminar 양승만.
Progress Seminar 권치헌.
Lecture 7 7-Segment LED controller using u-controller
ADLAD System MANUAL [ ] SEM. Digital Appliance ADLAD System ?
Presentation transcript:

제어기술 소개 목표 : 제어기의 종류, 제어 방식 등을 살펴본다. 주요내용 제어기의 종류 제어방식 : 시퀀스, 피드백, 등

제어의 이해 제어는 유용한 결과를 얻기 위하여 환경에 무관하게 대상의 물리량을 조절하도록 하는 것이다. 예를 들어 방안의 온도를 제어하고자 한다면 적절한 온도센서를 이용하여 온도를 계측하고 원하는 목표온도와의 차이에 따라 히터나, 가스 등의 출력기기를 적절하게 조절하도록 하는 것이 제어라고 할 수 있다. 목표온도 제어기 방 온도센서 히터 Relay/SCR

제어기의 종류 우리가 사용할 수 있는 제어기의 종류를 살펴 보면 대표적으로 전용 제어기 (Embedded Controller), 개인용 컴퓨터(Personal Computer), PLC (Programmable Logic Control) 가 있다. 다음에 자세히 설명될 예정이지만 각각의 제어기는 고유의 장단점을 가지고 있으므로 제어대상에 따라 선택되어질 수 있다. 때로는 공정이나 장치의 특징에 따라 조합으로 사용될 수 있다. 예를 들어 PLC나 Embedded Controller가 하위의 제어를 담당하고 PC는 통신을 통하여 사용자 인터페이스, 고도의 계산, 데이터 관리 및 전송의 역할을 담당하도록 조합으로 사용되는 예가 많이 있다.

Embedded Controller 전용 제어기 (Embedded Controller) 이 제어기는 해당 공정 또는 기기에 적합하도록 특별하게 설계된 제어기를 칭한다. 주로 MPU, MCU, DSP 등의 프로세서를 이용하여 판단, 연산, 데이터 처리 등을 수행하도록 설계 되어있다. 단위 제어기의 가격은 저렴하지만 초기에 별도의 하드웨어 개발비와 시간이 필요하므로 염가 대량생산에 대응하는 제어기로서 적합하다. 사진은 모토롤러사의 32bit 마이크로 컨트롤러를 이용한 보드의 사진이다.

PLC PLC (Programmable Logic Control) 전통적으로 범용 산업용 제어기로 널리 사용되고 있다. 전기 회로와 유사한 Ladder Diagram이라는 특별한 프로그램언어를 사용하고 있다. 열악한 현장 환경에 대응하여 고 신뢰성을 보장한다. 아날로그 신호용 입출력 모듈(AD, DA), 서보 모터에 대응하는 위치결정 모듈 등의 다양한 모듈을 선택적으로 사용할 수 있다. 사진은 미국 AB사의 다양한 타입의 PLC를 보여 주고 있다.

Personal Computer 개인용 컴퓨터(Personal Computer) 컴퓨터의 고속연산 능력을 이용하여 다양한 계산 및 예외 처리가 가능하다 컴퓨터의 데이터 표시, 저장기능 활용하여 다양한 정보를 제공할 수 있다. 컴퓨터의 카메라, 조이스틱, 프린터, 스캐너, LAN 등의 주변장치를 백분 활용하여 데이터의 활용가치를 높일 수 있다. 이러한 장점들 때문에 최근 들어 PC가 매우 많이 도입되고 있다. 그러나 기존의 PC는 공정이나 장비를 제어할 수 있는 입출력장치를 가지고있지 않기 때문에 PC-card 나 기타 장치와 통신을 함으로써 제어 및 계측작업을 완수 할 수 있다. 사진은 컴퓨터의 슬롯에 장착하여 컴퓨터기반의 제어를 가능하게 하기 위하여 다양한 입출력을 할 수 있는 Pc-card이다.

제어방식에 따른 분류 제어는 다음 분류와 마찬가지로 보는 관점에 따라 다양한 분류가 가능하다. 시퀀스제어는 특정 시간이나 센서 감지조건 등에 따라 순차적동작이 일어나도록 하는 반면에 연속제어는 근본적으로 특정 물리량을 원하는 값에 도달하도록 제어하는 것이다. 개루프제어(Open-loop)는 센서값을 읽어서 보정하는 feedback loop 없이 일방적으로 출력을 조절하는 방식이며 반면에 폐루프(Closed-loop)는 feedback loop 의 센서신호를 근거로 출력이 원하는 값에 도달하도록 끊임없이 입력을 보정하는 방식이며 일명 feedback제어라고도 한다. 디지털과 아날로그제어는 제어연산을 디지털연산에 의하여 수행되느냐 연산증폭기와 같은 아날로그 회로에 의하여 처리되느냐에 따라 분류된다. 정치제어는 제어 목표(Set Point)가 시간에 따라 빈번하게 바뀌지않고 일정한 값을 유지하는 경우를 말하고 추종제어는 제어목표가 시간에 따라 계속 바뀌게 되어있어 출력이 끊임없이 추종하도록 하는 제어이다. 정치제어는 보일러 온도 제어의 경우를 들 수 있고 추종제어는 날아다니는 비행기를 추격하는 미사일제어가 적합한 예가 될 것이다.

제어 시퀀스제어 연속 제어 - Feedback 의 유무 - 제어 연산처리 방식 - 목표의 형태 - 출력의 형태 순서 또는 순차 제어 라고도 함 Relay Logic 이나 PLC를 많이 사용. - Feedback 의 유무 개루프 (Open loop) 폐루프 (Closed loop), Feedback 제어 - 제어 연산처리 방식 디지털제어 (Digital) 아날로그제어 (Analog) - 목표의 형태 정치 (Regulation) 추종 (Tracking) - 출력의 형태 ON-OFF 연속량

시퀀스제어(Sequence Control) 시퀀스제어는 순차제어 순서제어라고도 하며 특정 시간이나 센서 감지에 의한 조건 등에 따라 순차적 동작이 일어나도록 하는 제어이다. 예를 들어서 자동세차기가 있다고 할 때 그 시퀀스 제어프로그램은 다음과 같은 동작을 표현할 것이다. 동전이 투입되고 차량을 센서가 감지하면 물이 분사되기 시작하고 10초 후 세제가 20 초 동안 분사된다. 물과 세제 분사가 중단되고 회전 브러시가 회전을 시작하며 10초 후 회전 브러시가 앞뒤를 움직이기 시작한다…. 주로 프로그램의 형태로 미리 기술된 이행조건에 따라 ON-OFF 동작을 일으키며 목표하는 작업을 완수한다. PLC나 전용 제어기의 조건 연산에 의존하며 다음과 같은 예를 들 수 있다. 자판기, 세탁기, Pick & Place작업 등 시퀀스 제어 ON-OFF 입출력 Digital량 위주 Open Loop 제어 Logic 연산제어 제어기 작동기 이행조건 세탁 행굼

연속제어 연속제어 연속량 입출력 Analog양 위주 Closed Loop 제어 -, +, *, / 연산 제어 A C S 온도, 압력, 유량, 속도와 같은 연속된 물리량을 사용자가 설정한 목표값(Set Point)이 되도록 제어하는 것이다. 예를 들어서 기관사의 레버에 의하여 바퀴의 회전속도를 연속적으로 바꿀 수 있는 전동차가 있다고 할 때 레버의 각도에 비례하는 목표 속도와 속도센서에 의하여 측정된 실제속도의 차이를 근거로 제어기가 제어 입력을 인가 함으로써 실제속도가 목표속도에 도달하게 된다. 이와 같이 시퀀스제어와 대비되는 개념으로 연속된 물리량을 제어하는 연속제어는 주로 Closed loop의 형태를 많이 사용하고 있으며 주요 요소는 다음과 같다. S : 센서로서 실제 공정값(Process Value)을 계측. C: 목표값 (SP)과 공정값(PV)의 차이인 오차를 근거로 적절한 제어입력을 연산하고 작동기(Actuator)에 인가시켜 궁극적으로 PV가 SV에 도달하고 유지되게 한다. A: 작동기로서 제어입력에 대응하여 적절한 출력이 나오게 하는 장치이다. 예를 들어 보일러의 버너나 히터, 로봇의 모터 등이 이에 해당된다. 연속제어 연속량 입출력 Analog양 위주 Closed Loop 제어 -, +, *, / 연산 제어 A C S

개루프 제어(Open Loop Control) 개루프제어는 폐루프제어에 대비되는 제어방법으로써 공정출력 또는 공정값(PV)를 SP와 비교하는 Feedback 제어 없이 일방적으로 작동기를 동작시켜 간단하게 제어를 하는 방법이다. 예를 들어 반응로의 온도를 60도로 조절하기 위하여 적당하게 Heater의 Dial을 돌려 온도계의 온도가 60도가 되도록 한다면 이것이 개루프 제어 이다. 별도의 복잡한 제어기가 필요 없어 간단하지만 반응로의 상태나 외기 온도가 조금만 바뀌어도 온도가 쉽게 변동한다. Set P. Process V. Controller Actuator Process PC + x PLC Embedded Heater Motor Cylinder Boiler Robot Automat

폐루프 제어(Closed loop Control) 폐루프제어에서는 개루프제어에 공정출력 또는 공정값(PV)을 측정하여 목표값(SP)와 비교하는 Feedback 제어 방식을 도입하여 없이 일방적으로 작동기를 동작시켜 간단하게 제어를 하는 방법이다. 예를 들어 반응로의 온도를 60도로 제어하려고할 때 폐루프제어에서는 목표값을 설정하면 제어기가 현재 온도를 서모 커플이나 RTD 등의 온도 센서로 부터 계측된 실제 온도와 비교하여 적절한 Heater구동 전력을 산출하게 된다. 이렇게 실제온도를 관측한 결과를 기반으로 제어를 수행함으로써 반응로 온도가 60도를 유지하게 된다. 이 제어의 경우 센서가 필요하고 고가의 제어기가 필요하므로 비용이 많이 들지만 반응로의 상태나 외기 온도변화에 대해서도 만족할만한 성능을 보장받을 수 있다. Set P. Process V. Controller Actuator Process Sensor

폐루프제어 그림은 모터에 장착된 회전 암의 각도를 제어하는 폐루프제어의 예이다. 모터 축에는 회전각도를 전압으로 변환시켜주는 Pot(potentiometer) 가 달려있다. 제어기에서는 Set point에 해당하는 30도를 입력받아 현재 각도와의 차이인 error를 구하고 이를 변환시켜 모터 입력을 만든다. 이러한 과정을 연속적으로 반복함으로써 error 가 0이 되는 적절한 보정입력이 연산된다. 30 Pol ㅡ Set point Error 0 Motor +

디지털제어 v.s. 아날로그제어 일반적으로 제어기를 분류할 때 디지털제어기와 아날로그 제어기로 분류하기도 한다. 이 분류는 제어 연산방식 즉 오차를 구하고 적절한 미분, 적분 조작을 한다든지 하는 조작을 아날로그회로에의 하는가 디지털연산을 하느냐에 따르는 것이다. 추세상 Programmable 하다는 점과 주변 온도noise에 강하다는 장점으로 디지털제어로 바뀌어 가고있다.

아날로그제어 다음은 아날로그제어의 한 예로서 오븐의 온도 제어이다. 다음은 아날로그제어의 한 예로서 오븐의 온도 제어이다. Thermocouple로 오븐의 온도를 계측하고 목표온도에 해당하는 전압과 오븐 온도에 해당하는 전압의 차이를 연산 증폭기(Op. Amp.)를 이용하여 구하고 이를 증폭, 미분,적분 회로의 조합에 인가하여 보정입력을 만들어낸다. 장점은 비교적 간단하고 염가인 것이다. 단점은 노이즈, 주변온도 등에 민감하고 한번 제작된 후 변경이 어렵다는 것이다. Controller Oven Set point Heating element (desired temperature) + _ (Actual temperature) GND Thermocouple

디지털제어 디지털 제어는 센서로부터의 전압을 아날로그 디지털 변환기(AD Converter)를 이용하여 디지털 값으로 변환하고 마이크로프로세서나 컴퓨터의 수치 연산 및 비교를 통하여 제어 입력을 구한다. 이 제어입력 값이 디지털이므로 이를 아날로그로 변환하는 디지털 아날로그변환기(DA Converter)를 이용하여 작동기(Actuator)를 구동한다. 이 디지털제어기의 장점은 노이즈, 온도에 강건하고 Program에 의하여 동작되므로 수시로 변경이 가능하며 지능제어와 같은 고도의 제어도 실현이 가능하다. Digital data Analog data Set Point Controlled variable Controller (digital) DAC Actuator Process Digital data Analog data ADC Sensor

공정제어(Process Control) 프로세스제어는 다양한 물리량이 관계되는 공정을 원하는 상태로 유지 및 변경시키는 제어를 말한다. 예를 들어 화학공정, 반도체 증착 공정, 가공공정 등이 있다.

공정제어(Process Control) 우측 그림은 Yellow와 Blue의 염료를 섞어 Green색 페인트를 제조하는 공정제어의 예이다. 가장 단순한 배합 방법은 수동식 개루프 제어이다, 두개의 유량조절 밸브를 각각 조절하여 원하는 배합의 Green 페인트를 생산할 수 있다. 그러나 이 유량제어는 각각 탱크의 염료량에 따라 토출량이 변화하므로 시시각각 배합 비율이 변화하는 문제가 있다. 이러한 문제를 해결하기 위하여 각각의 밸브와 유량 센서를 조합하여 폐루프 제어를 적용하는 방법이 가능하다. 이 방법은 두 염료의 배합 유량이 일정하게 제어되므로 우수한 품질을 보장 받을 수 있으나 원 염료자체의 농도차이가 발생하면 역시 일정한 Green 페인트를 얻을 수 없다. 이러한 문제점을 보완하기 위하여 배합된 페인트에 Color센서를 장착하였다. 만일 Yellow의 농도를 높여야 한다면 밸브를 열고 Blue의 농도를 높이려면 밸브를 닫는다. 이 예를 보면 공정제어에서 가능하면 제어하고자 하는 최종의 물리량을 직접 계측하는 것이 가장 유리하다는 것을 알 수 있다.

Servo Control Servo는 Service, Servant 등과 어원을 같이하며 주인의 명령에 충실하게 따르는 노예와 같은 특성을 같는 제어기를 의미한다. 주로 위치,속도, 힘들을 제어 목표에 지정하는 데로 충실하게 추종할 수 있도록 하는 시스템을 말한다. 서보 모터는 이러한 용도에 적합한 모터를 말하며 종종 온도나 압력에도 비슷한 개념을 적용하여 서보라는 명칭을 붙이기도 한다. 그림은 제어판의 다이알에 따라 비례적으로 회전하는 안테나 서보 제어 시스템이다. Antenna Position sensor Control panel Motor N W E Controller S

On-Off 제어(2 point) On-OFF제어는 제어입력이 연속적인 값이 아니라 On 또는 Off 두 상태로 주워지는 2 Point Control을 의미한다. 가정용 보일러나 에어컨 등이 이에 해당한다. 아래 그림에서 보는 바와 같이 목표 온도가 70도일 때 +/-2도의 Tolerance를 두고 그 이하가 되면 히터를 On시키고 그 이상이 되면 Off시킴으로써 원하는 70도 +/-2이내로 제어한다. 이때 Tolerance 구간을 줄이면 정밀해지지만 우측 그래프와 같이 히터를 계속 On-Off를 반복하게 되어 수명문제가 발생한다.

On-Off 제어 (3 point) On-off제어의 특수한 경우로 3 Point제어가 있다. 주로 상반된 2종의 입력이 존재하는 경우에 적용된다. 우측은 해저 석유 탐사선인데 바람과 조류에 관계없이 일정한 위치를 제어하는 경우이다. 이 경우 A,B 두개의 스크루가 있고 가능한 3개의 상태는 다음과 같다. 동쪽으로 5 ft 이상 치우칠 때  A-On 동쪽으로 5 ft 이상 치우칠 때  B-On +/- 5 ft이내일 때  All Off 이 외에도 온수와 냉수를 각각 On-off 하여 온도를 제어하는 경우에도 같은 방법으로 적용된다.

PID 제어 전통적인 제어 기법으로서 산업용제어기에 많이 사용된다. 이 제어기는 시행착오에 의하여 제어대상에 따라 제어기의 이득(GAIN) 을 제어결과를 보면서 조정하는 튜닝과정이 필요하다. 이러한 불편을 줄이기 위하여 어떤 제어기들은 Auto-tuning 기능을 내장하기도 한다. 비례 (Proportional: P) 제어 : 오차에 비례하는 제어 입력을 사용하는 가장 직관적인 제어방법 적분(Integral: I)제어 오차의 누적치를 제어입력에 반영함으로써 Offset Error 제거하는 효과 미분(Derivative: D)제어 : 신속한 응답 및 감쇄효과 증진시키는 역할 PID제어 : P, I, D 의 조합

Multi-Process Control 1C-1P : 1 Controller – 1 Process 1C-n P : 1 Controller – n Process 1MC-n SC-n P : 1 Master Controller – n Slave Controller -n Process 1C – 1P 방식 그림은 3개의 프로세스를 3개의 소규모 제어기가 각각 제어하는 방식이다. 단순하고 간단하지만 제어기간의 정보교환이 어려워 세개의 프로세스 간의 연관성 있는 통합제어가 곤란하다, Controller Controller Controller Local process1 Local process2 Local process1 (a) Individual local controllers

1C – n P 1MC – n SC-n P 하나의 강력한 제어기를 3개의 프로세스를 모두 제어하는 경우이다. 비교적 경제적일 수 있고 통합제어가 유리하지만 문제발생시 모든 공정을 가동 중지해야 한다. 1MC – n SC-n P 1C-1P 와 마찬가지로 각 공정에 소규모의 slave Controller 할당하여 지역적인 제어를 담당 시키고 있다. 그러나 이들을 RS-485/422 이나 Ethernet 의 네트웍으로 연결하여 중앙의 master controller에 연결시켜 통합 모니터링 및 조율이 가능한 구조이다. 1C-1P나 1C-nP의 단점을 극복한 Master –slave 형의 계층제어(Hierarchical Control)이며 여러 개의 분산된 지역 제어기를 갖는다는 점에서 분산제어(Distributed Control) 시스템이다. Computer (acting as three controllers) Local process1 Local process2 Local process3 (b) Direct computer control of three processes Controller Controller Controller Computer Local process1 Local process2 Local process3 ( c ) Distributed computer control using local controllers

Embedded Controller 전용제어기는 특정 제어임무를 보드 내에서 수행해야 하므로 대개는 Microprocessor(MPU), Micro-controller(MCU), Digital Signal Processor(DSP) 등의 연산 처리장치 및 각종 인터페이스 장치가 필요하다. 연산 처리장치의 주요 특징은 다음과 같다. MPU : 마이크로프로세서로서 연산장치, 제어장치, 프로그램해독기 등이 있어서 프로그래머가 작성한 프로그램(Firmware)데로 동작한다. 외부장치와 정보를 교환할 수 있는 BUS를 통하여 memory, I/O port, ADC, DAC, 통신 Chip 등의 주변장치와 interface된다. MCU : MPU, memory, 주변장치를 한 chip 안에 넣은 것으로 종종 one-chip, 마이콤 등으로 불려진다. 간단한 제어기 구축에 유리하다. DSP: MPU core에 여러 가지 신호처리 기능을 추가한 특수한 형태의 MPU를 말한다. 주로 Audio, Video 등의 효과 처리에 유리하며 MCU형태도 나오고 있다.

그림 (a)는 MPU와 주변 장치를 이용한 전용제어기의 한 예이다.(Intel 486, 8086) 이와는 대조적으로 (b)는 주변장치 및 MPU를 한 개의 chip에 내장한 MCU의 예를 보여주고 있다.(Motorola 68HC11) Microprocessor Memory Input Output (a) Microprocessor Microcontroller CPU (microprocessor) Memory Input Output (b) Microcontroller

Microprocessor 기반 시스템 MPU기반의 전용제어기는 그림과 같이 ROM, RAM과 같은 메모리와 센서, 스위치입력을 받을 수 있는 입력장치, 작동기, 표시기 등에 제어입력을 보낼 수 있는 출력 인터페이스 장치가 MPU에 Bus 형태로 interface되어 있다. 병렬 버스에는 Data bus, Address bus, Control bus가 있고 종종 SPI나 I2C와 같은 데이터 및 어드레스를 직렬로 전송하는 직렬 버스도 있다. CPU(microprocessor) Address Bus ALU Memory (RAM and ROM) Input Output From sensors, Switches, etc. Registers To indicators, Actuators, etc. Control Data Bus Control Bus

Serial vs Parallel Interface Parallel I/F 데이터를 표현하는 bit수(word) 만큼의 전선으로 이진의 데이터를 한꺼번에 전송하는 인터페이스 방식이다. 한 워드씩 한꺼번에 전송하므로 속도가 빠르다. 그러나 대개 0 ~ 5V의 레벨로 구동하므로 전송거리가 짧고 전선수가 많으며 비싸다. Serial I/F 전송하고자 하는 데이터를 다음그림과 같이 한 bit씩 전송하는 방식이다. 그러므로 전송의 시작과 끝을 구별하는 나름 데로의 약속이 필요하다. 한 bit씩 전송하는 방식이므로 속도가 느리지만 염가이며 단순한 구조를 유지할 수 있다. 전압 레벨을 높이거나 차동 전송을 이용하여 전송거리를 늘일 수 있으며 잡음(Noise)에도 강하다. 1 Bit 0 LSB Bit 1 Bit 4 Bit 3 Bit 2 Bit 5 Bit 6 Bit 7 MSB Parity Start bit Stop bit(s) Time

그림은 MPU기반의 제어기에서 병렬 데이터를 UART (Universal Asynchronous Receiver Transmitter) IC를 이용하여 직렬 데이터로 변환 및 전송하는 예이다. 대게 MCU에는 UART 및 SPI, I2C 등의 통신 기능이 이미 내장된 경우가 많고 주변장치 (Memory, ADC, DAC, DIO)중에도 이러한 인터페이스를 지원하는 것들이 있으므로 때문에 편리하다. Microprocessor controller Serial-to- Parallel Converter (UART) Serial data Parallel-to- serial converter (UART) Parallel data Return GND

I/O Interface 그림은 MPU의 주변장치 Digital I/O, ADC, DAC 들이 실제 센서, 스위치, 모터, 알람 등에 어떻게 결합되는지를 보여주는 것이다. 각각의 주변장치가 서로 다른 어드레스로 할당되어 있으므로 실제 프로그램에서는 특정 어드레스에 원하는 값을 쓰거나 데이터를 읽어 들임으로써 여러가지 제어임무를 수행할 수 있다.

Digital to Analog 변환 Vref=10 Vdc Op-Amp Digital input DAC 아날로그 와 디지털간의 변환은 언급한 바와 같이 ADC, DAC가 있다. 0~10V의 아날로그 전압이 있다면 이를 디지털 값으로 변환될 때 변환기가 8bit 이면 0~255 까지 16bit이면 0 ~ 4095 사이의 값으로 변환된다. 그림에서 보는 바와 같은 8bit DAC의 경우 10/255=0.0392 V의 분해능을 갖는다. 여기서 분해능이란 1bit 변화에 대한 전압의 변화를 의미한다. 만일 127이라는 값을 인가하면 127* 0.0392=4.98V 의 전압이 출력된다. ADC의 경우 이러한 연산을 반대로 생각하면 되며 양극성(bipolar)의 경우는 –10~+10V 사이가 되므로 출력이 부호를 가지고있다. 이 경우 변환된 디지털 값도 2의 보수( 2’s complement) 등을 이용하고 있다. Vref=10 Vdc Op-Amp Digital input DAC Vout (analog voltage) 255 “steps” 9.96V GND 0V

Control Programming 우측의 다이어그램은 피드백 제어 프로그래밍의 간단한 구조를 보여준다. 이와 같은 구조의 프로그램을 MCU나 컴퓨터로 구현을 하여 제어프로그램을 완성하게 된다. 프로그램의 내용을 살펴보면 우선 사용자가 키패드나 다이얼로 설정한 목표값인 (SP)를 읽어 들인다. 다음은 ADC와 같이 외부에서 센서의 신호를 읽어 들일 수 있는 포트를 통하여 센서 계측값(PV)을 얻은 후 이를 SP와의 차이를 구한다. 이를 오차 (E)라 하자. (E=SP-PV) 직관적으로 생각해서 E가 양수 이면 출력이 모자라므로 제어입력(U)을 키워야 하고 E가 음수이면 출력이 과다하므로 제어입력을 줄여야 하겠다. 실제로는 이러한 과정을 PID와 같은 제어법칙을 사용하여 오차로부터 적절한 제어입력을 계산해낸다. 마지막으로 제어입력을 작동기(Actuator)에 인가하고 약간의 지연시간을 갖은 후 다시 처음으로 돌아가 과정을 무한이 되풀이한다. 참고로 시스템이 안정되며 만족할만한 출력을 낼 수 있는 제어법칙을 찾아내고 개선하는 학문이 “제어공학”이다. Input set point data Input sensor data Subtract to get error Calculate new control Signal for actuator Send out put value Time delay (optional)