컴퓨터 계측 및 실습 개 요

33
컴컴컴 컴컴 컴 컴컴 컴 컴 컴컴컴컴컴 컴컴컴컴컴

Upload: jamal

Post on 19-Jan-2016

115 views

Category:

Documents


5 download

DESCRIPTION

컴퓨터 계측 및 실습 개 요. 영남대학교 기계공학부. PC 의 기본장치. PC 의 작동구조. 컴퓨터의 기본구성. CPU 의 구조. IBM-PC 의 입출력 단자. Analog and Digital. Analog: 측정치의 값이 연속적인 형태 Digital: 변화의 최소 크기가 정해져 잇고 변화의 크기는 최소크기의 정수배만 가능 Digital 의 장단점 : Digital 화 된 이후에는 추가적인 noise 가 없으나 , resolution 이 제한적임. 디지털의 장점. 잡음을 거의 타지 않음 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 컴퓨터 계측 및 실습 개 요

컴퓨터 계측 및 실습

개 요

영남대학교 기계공학부

Page 2: 컴퓨터 계측 및 실습 개 요

PC 의 기본장치

Page 3: 컴퓨터 계측 및 실습 개 요

PC 의 작동구조

Page 4: 컴퓨터 계측 및 실습 개 요

컴퓨터의 기본구성

Ãâ·ÂÆ÷Æ®ROM

RAM

Á¦¾î±â

¿¬»ê±â

·¹Áö½ºÅÍ

ÀÔ·ÂÆ÷Æ®

µ¥ÀÌÅÍ ¹ö½º

¾îµå·¹½º ¹ö½º

Á¦¾î ¹ö½º

Áß¾Óó¸®ÀåÄ¡(CPU)

ÁÖ±â¾ïÀåÄ¡ ÀÔÃâ·Â ÀåÄ¡

Page 5: 컴퓨터 계측 및 실습 개 요

CPU 의 구조

Page 6: 컴퓨터 계측 및 실습 개 요

IBM-PC 의 입출력 단자

B1B2B3B4B5B6B7B8B9

B10B11B12B13B14B15B16B17B18B19B20B21B22B23B24B25B26B27B28B29B30B31

A1A2A3A4A5A6A7A8A9

A10A11A12A13A14A15A16A17A18A19A20A21A22A23A24A25A26A27A28A29A30A31

GND+RESET DRV

+5V DC+IRQ 2-5V DCDRQ2

-12 DC-CARD SLOTD

+12 DCGND

-SMEMW-SMEMR

-IOW-IOR

-DACK3DRQ3

-DACK1DRQ1

-REFRESHCLK

IRQ7IRQ6IRQ5IRQ4IRQ3

-DACK2T/CALE

+5V DCOSCGND

-I/O CHCKD7D6D5D4D3D2D1D0+I/O CH RDYAENA19A18A17A16A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0

Page 7: 컴퓨터 계측 및 실습 개 요

Analog and Digital

Analog: 측정치의 값이 연속적인 형태Digital: 변화의 최소 크기가 정해져 잇고

변화의 크기는 최소크기의 정수배만 가능

Digital 의 장단점 : Digital 화 된 이후에는 추가적인 noise 가 없으나 , resolution이 제한적임

Page 8: 컴퓨터 계측 및 실습 개 요

디지털의 장점 잡음을 거의 타지 않음 작동전압이 낮음 (5V 혹은 12V) 자동 스케일링이 가능 (scaling) 다른 기기 ( 혹은 컴퓨터 ) 와의 연결이 용이 데이터의 처리 (data reduction, filtering...)

가 가능하다

Page 9: 컴퓨터 계측 및 실습 개 요

계측제어계의 구성요소

ÀÔ·ÂÆ÷Æ®(A/D , DI)

Ãâ·ÂÆ÷Æ®(D/A , DO)

(½ºÀ§Ä¡)

(¿Âµµ¼¾¼ )

(·¥ÇÁ)

(¸ðÅÍ)

µ¥ÀÌÅÍ ¹ö½º

¸ñÇ¥¹°

¼¾¼

±¸µ¿±â

Page 10: 컴퓨터 계측 및 실습 개 요

어드레스 디코드

CPU Address Decoder

I/O 1 I/O 2 I/O 3

Address Bus

I/O 1 I/O 2 I/O 3

Data Bus

Page 11: 컴퓨터 계측 및 실습 개 요

Breadboard 의 모양

Page 12: 컴퓨터 계측 및 실습 개 요

Breadboard 의 배선

Page 13: 컴퓨터 계측 및 실습 개 요

커미조아 인터페이스보드

COMI-SD104 Multi-Function Board

Page 14: 컴퓨터 계측 및 실습 개 요

기본 사양

Bus BM PC Bus(32Bit PCI) 크기 195 * 107 mm 자원할당 Plug & Play 방식의 자동할당

Page 15: 컴퓨터 계측 및 실습 개 요

입출력 채널

아날로그 입력 Differential 8 Channel, Single Ended 16 Channel

아날로그 출력 2 Channel 디지털 입력 8 Channel 디지털 출력 8 Channel 타이머 2 channel

Page 16: 컴퓨터 계측 및 실습 개 요

A/D Conversion Complete 12 bit A/D Conversion A/D Converter : Burr Brown ADS7899 Type of ADC : Successive approximation A/D Channel : 16 Single Ended, 8 Differential Input Voltage Range : 10 V, 5 V, 2, 1, 0 10V,

0 5V, 0 2V,0 1V Resolution : 14 Bits, 1 in 16384 Maximum Sampling Rate : 375 kHz Streaming to Disk Rate : 375 kHz (Tested on PentiumⅢ 700MHz) Input Impedance : 10 Mohm A/D Trigger Mode : Programmable Timer, Software,

External Trigger Data Transfer : Programmed I/o, Interrupt, Block Mode Channel Configuration : Uni polar/Bipolar, Gain, Channel,

Channel No FIFO Size : 4 Kbytes

Page 17: 컴퓨터 계측 및 실습 개 요

D/A Conversion D/A Converter : Burr Brown DAC7545 D/A Channel : 2 Channel (for single DC Output) Resolution : 12 Bits, 1 in 4096 Setting time : 2usec Output Voltage Range : 10 V D/A Trigger Mode : Software Data Transfer : Programmed I/O

Page 18: 컴퓨터 계측 및 실습 개 요

Digital Input TTL Compatible Input Channel : 8 Channel Voltage Level : Low(0~0.8 V), High(2V~) Input Load : Low 0.5V(0.2 mA), High 2.7V(20 mA) Data Transfer : Programmed I/O

Page 19: 컴퓨터 계측 및 실습 개 요

Digital Output TTL Compatible Output Channel 8 Channel Voltage Level Low(0~0.4 V), High(2.4V~) Input Load Low 0.5V(0.2 mA), High 2.7V(0.4 mA) Data Transfer Programmed I/O

Page 20: 컴퓨터 계측 및 실습 개 요

Programmable Counter

COMI-SD Counter Clock Input Channel 2 Channel Resolution 32 bits Gate Input Software Reset Real Time Clock

Page 21: 컴퓨터 계측 및 실습 개 요

COMI-SD104 Reading 레지스터 구조

No. Address Description Bit

0 CS0+0 A/D Buffer Register 32Bits

1 CS0+4 A/D Conversion Check Register 32Bits

2 CS0+8 A/D Gain Memory Trigger 32Bits

3 CS1+0 A/D FIFO Register 32Bits

4 CS2+0 Digital Input Register 32Bits

5 CS3+0 Counter0 Low Word Register 32Bits

6 CS3+4 Counter0 High Word Register 32Bits

7 CS3+8 Counter1 Low Word Register 32Bits

8 CS3+12 Counter1 High Word Register 32Bits

9 CS3+16 Speed Checker0 Word Register 32Bits

10 CS3+20 Speed Checker1 Word Register 32Bits

Page 22: 컴퓨터 계측 및 실습 개 요

COMI-SD104 Writing 레지스터 구조

No Address Description Bit

0 CS0+0 INT Clear Register 32Bits

1 CS0+4 A/D Range Memory Control Register 32Bits

2 CS0+8 A/D Software Trigger Register 32Bits

3 CS0+12 A/D Channel & Range Memory Register 32Bits 4 CS0+16 A/D Scan Channel Number Register 32Bits

5 CS0+20 Interrupt Control Register 32Bits

6 CS0+24 A/D Trigger Timer Control Register 32Bits

7 CS0+28 A/D Trigger Control Register 32Bits

8 CS1+0 D/A0 Output Register 32Bits

9 CS1+4 D/A1 Output Register 32Bits

10 CS2+0 Digital Output Register 32Bits

11 CS3+0 Sampling Timer Register0 32Bits

12 CS3+4 Sampling Timer Register1 32Bits

13 CS3+8 Scan Timer Register0 32Bits

14 CS3+12 Scan Timer Register1 32Bits

15 CS3+16 Speed Checker Gate Control Register 32Bits

16 CS3+24 Counter0 Clear Register 32Bits

17 CS3+28 Counter1 Clear Register 32Bits

Page 23: 컴퓨터 계측 및 실습 개 요

Comidas.h 와 Comidas.cpp 를 Include 하기

1) ComidasCommon.h, Comidas.h 그리고 Comidas.cpp 파일을

프로젝트가 있는 폴더에 복사한다 .

2) Comidas.cpp 파일을 프로젝트에 추가한다 .

3) Comidas.cpp 소스파일의 맨 처음 부분에 #include "stdafx.h"

구문을 추가한다 .

4) COMI-SD104 보드를 제어하는 함수를 사용하는 소스파일에

#include “Comidas.h”

구문을 추가한다 .

프로그램 작성 공통 사항 (1)

Page 24: 컴퓨터 계측 및 실습 개 요

디바이스 핸들

디바이스 핸들은 COMI-SD104 를 제어하는 모든 함수의 파라미터로

사용되므로 전역변수 또는 메인 윈도우 클래스의 멤버 변수로

관리한다 .

일반적으로 다이얼로그 기반 프로그램인 경우 메인 다이얼로그

클래스 (XXXXDlg) 의 멤버변수로 선언한다 .

class CASISTDlg : public CDialog{

………...public: //user parameter

HANDLE m_hDevice;………...

};

프로그램 작성 공통 사항 (2)

Page 25: 컴퓨터 계측 및 실습 개 요

라이브러리 및 디바이스 로딩 (Loading)

프로그램 시작 부분에서 다음과 같은 함수를 수행하여 라이브러리 및

디바이스를 로드하여야 한다 .

• BOOL COMI_LoadDll(void) : 라이브러리를 로드한다 .

• HANDLE COMI_LoadDevice (COMIDAS_DEVID deviceID, ULONG insta

nce) : 지정한 디바이스를 로드한다 .

일반적으로 다이얼로그 기반 프로그램인 경우에는 OnInitDialog()

함수에서 라이브러리 및 디바이스 로딩을 수행하면된다 .

프로그램 작성 공통 사항 (3-1)

Page 26: 컴퓨터 계측 및 실습 개 요

프로그램 작성 공통 사항 (3-2)

Page 27: 컴퓨터 계측 및 실습 개 요

라이브러리 및 디바이스 언로딩 (Unloading)

프로그램 종료 부분에서 다음과 같은 함수를 수행하여 라이브러리 및

디바이스를 언로드하여야 한다 .

• void COMI_UnloadDll(void) : 라이브러리를 로드한다 .

• void COMI_UnloadDevice (HANDLE hDevice) : 지정한 디바이스를

언로드한다 .

일반적으로 다이얼로그 기반 프로그램인 경우에는 WM_CLOSE 이벤트

핸들러인 OnClose() 함수에서 라이브러리 및 디바이스 언로딩을

수행하면된다 .

프로그램 작성 공통 사항 (4-1)

Page 28: 컴퓨터 계측 및 실습 개 요

☞ OnClose() 함수 생성 및 작성 예

프로그램 작성 공통 사항 (4-2)

Page 29: 컴퓨터 계측 및 실습 개 요

LED, 7 세그먼트 , 스테핑 모터

Digital Output 구동 프로그램

Page 30: 컴퓨터 계측 및 실습 개 요

SetTimer ( UINT nIDEvent, 10, NULL )

OnTimer ( UINT nIDEvent )

KillTimer ( UINT nIDEvent )

기본함수기본함수

Page 31: 컴퓨터 계측 및 실습 개 요

SetTimer 는 OnTimer, KillTimer 와 함께 사용되며 OnTimer 함수를 구동하는 함수이다 . 여기서 첫번째 매개변수 0 은 실행되는 Timer 번호 , 10 은 단위가 msec 로 OnTimer 실행 간격을 의미한다 . 즉 0 번 Timer 가 0.01 초 마다 실행된다 .

SetTimer ( 0, 10, NULL)

Page 32: 컴퓨터 계측 및 실습 개 요

nIDEvent 는 Timer 번호를 의미한다 . SetTimer 함수가 한 개만 존재할 때는 nI

DEvent 는 0 으로 인식하고 여러 개의 SetTimer 함수가 존재할 때는 SetTimer 함수의 첫번째 매개변수 값을 받아 작업이 분기되어진다 .

OnTimer ( UINT nIDEvent )

Page 33: 컴퓨터 계측 및 실습 개 요

KillTimer 함수의 매개변수는 Timer 번호 (nIDEvent) 를 의미한다 . 여기에는 0 번 Timer 를 지시하고 있다 . 따라서 이 KillTimer 함수는 0 번 Timer 를 끝낸다 .

KillTimer ( 0 )