204
1 BASIC 과 LADDER 를 지원하는 초소형 임베디드 컴퓨터 TM 사용자 설명서 Part 2 레더로직 중심 매뉴얼버젼:200907 본 사용설명서는 CUBLOC STUDIO V3.0.A 이후 버전을 기준으로 설명되어 있습니다. 컴파일 테크놀로지 주식회사 www.comfile.co.kr

사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

1

BASIC 과 LADDER 를 지원하는 초소형 임베디드 컴퓨터 TM

사용자 설명서 Part 2

레더로직 중심

매뉴얼버젼:200907

본 사용설명서는 CUBLOC STUDIO V3.0.A 이후 버전을 기준으로 설명되어 있습니다.

컴파일 테크놀로지 주식회사

www.comfile.co.kr

Page 2: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

2

등록상표

WINDOWS는 Microsoft Corporation의 등록상표입니다.

CUBLOC은 Comfile Technology의 등록상표입니다.

기타 다른 상표는 해당회사의 등록상표입니다.

알림

본 설명서의 내용은 사전 통보 없이 변경될 수 있습니다. 본 제품의 기능은 성능 개선을 위하여 사전 통보 없이 변경될

수 있습니다. 본 제품을 이 자료에서 설명한 용도 외에서 사용할 경우, 폐사에서는 어떠한 책임도 지지 않으므로 주의하

시기 바랍니다. 본 제품은 컴파일 테크놀로지의 고유 기술을 사용하여 개발된 제품으로 저작권법에 의한 보호를 받고

있습니다. 따라서 본 제품 (제품에 대한 아이디어 및 설명서 및 기타 포함)의 어떠한 부분도 사전에 폐사와의 문서 동의

없이 복사되거나 변경, 재 생산할 수 없으며 또한 다른 언어로도 번역될 수 없습니다.

주의사항

인쇄된 설명서는 인쇄된 시점에서는 최신버젼이지만, 인쇄된 후 시간이 경과된 뒤에 새로운 내용이 추가되거나, 기존내

용이 바뀔 가능성이 있습니다. 최신버젼의 설명서는 항상 인터넷 홈페이지 (www.comfile.co.kr)에서 확인하시기 바랍니

다.

본 제품 (CUBLOC및 CUTOUCH그리고, 부속장치 일체)를 사용하시다가 생긴 손해 및 손실에 대하여 저희 컴파일 테

크놀로지 주식회사는 어떠한 책임도 없음을 명시하는 바입니다.

본 제품을 사용하기 이전에 반드시 본 사용설명서를 읽어본 뒤 사용하시기 바랍니다. 본 사용설명서를 충분히 읽어보지

않은 상태로 본 제품을 사용하는 것으로 인해 발생된 피해에도 저희 회사에서는 어떠한 책임도 없음을 명시합니다.

인쇄 내역 2009년 7월 배포함

Copyright 1996,2006 컴파일 테크놀로지㈜

Page 3: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

3

SOUTSINATNVSS

SS_P0(Input_only)SCK_P1

MOSI_P2MISO_P3

P4PWM0_P5PWM1_P6PWM2_P7

(CUNET)SCL_P8(CUNET)SDA_P9

P10P11

TX1RX1

AVDDN/C

ADC0_P24ADC1_P25ADC2_P26ADC3_P27

P47P46P45P44P43P42P41P40

VDDVSSRESN/CP16P17P18P19_PWM3P20_PWM4_INT0P21_PWM5_INT1P22_INT2P23_INT3P15_HCNT1P14_HCNT0P13P12

123456789

10111213141516

33343536373839404142434445464748

49505152535455565758596061626364

17181920212223242526272829303132

TTLTX1TTLRX1AVREFP48P31_ADC7P30_ADC6P29_ADC5P28_ADC4P32P33P34P35P36P37P38P39

SOUTSINATNVSS

SS_ADC0_P0(Input only)SCK_ADC1_P1

MOSI_ADC2_P2MISO_ADC3_P3

ADC4_P4PWM0_ADC5_P5PWM1_ADC6_P6PWM2_ADC7_P7

123456789101112

242322212019181716151413

VIN (5.5V~12Vinput)VSSRESVDDP15_HCNT1P14_HCNT0P13P12P11_TX1P10_RX1P9_SDA(CUNET)P8_SCL(CUNET)

123456789

1011121314151617181920

SoutSinAtnVss

SS_P0Input only) SCK_P1

MOSI_P2MISO_P3

P4PWM0_P5PWM1_P6PWM2_P7

P56P57P58P59P60P61P62P63

(

2122232425262728293031323334353637383940

VddVssRESVBBP8 ADC0P9 ADC1P10 ADC2P11_ADC3P12_ADC4P13_ADC5P14_ADC6P15_ADC7P64P65P66P67P68P69P70P71

___

95 96 97 98 99 100

101

102

103

104

105

106

107

108

PW

M4

_P90

PW

M5

_ P

91P

20P

21 H

CN

T0_

P22

HC

NT

1_ P

23P

76P

77P

78P

79P

84P

85P

86P

87

81 82 83 84 85 86 87 88 89 90 91 92 93 94

N/C

P89

P

WM

3P

16

SC

LC

UN

ET)

P17

SD

A(C

UN

ET

)P

18

INT

3P

19 I

NT4

P72

P73

P74

P75

P80

P81

P82

P83

_ _(

_ _ _

4142434445464748495051525354555657585960

TX1RX1

AVddVddP24P25P26P27P28P29P30P31P40P41P42P43P44P45P46P47

6162636465666768697071727374757677787980

TtlTX1TtlRX1AVrefVssP32P33P34P35P36P37P38P39P48P49P50P51P52P53P54P55

CB380CB280

CB220CB320

CB290

123456789

1011121314151617181920

SoutSinAtnVss

SS_P0SCK P1

MOSI P2MISO P3

P4PWM0_ P5PWM1_ P6PWM2_ P7

RX2_ P8TX2_ P9

P10PWM6_ P11PWM7_ P12PWM8_ P13

P14P15

___

2122232425262728293031323334353637383940

VddVssRESVBBP16 ADC0P17 ADC1P18 ADC2P19 ADC3P20 ADC4P21 ADC5P22 ADC6P23 ADC7P24P25P26P27 PWM3P28 PWM4 INT0P29 PWM5_INT 1P30 INT2P31 INT3

_ _ _ _ _ _ _ _

_ _ __ __

4142434445464748495051525354555657585960

TXERXE

AVddVdd

ADC8 P32ADC9 P33

ADC10 P34ADC11 P35ADC12 P36ADC13 P37ADC14 P38ADC15 P39HCNT1 P47HCNT0 P46

P45P44

TX1 P43RX1 P42

CUNET)SDA P41(CUNET)SCL P40

__________

__

( __

6162636465666768697071727374757677787980

TtlTXETtlRXEAVrefVssP48P49P50P51 PWM9P52 PWM10P53 PWM11P54P55P63P62P61P60P59P58P57 TX3P56 RX3

___

__

CB405InputOnly

18 19 20P18 P19_PWM3P20_PWM4_INT0P21_PWM5_INT1P22_INT2P23_INT3

SPARE I/O

23 22 21

123456789

1011121314151617181920

SoutSinAtn

VCCP0

SCK / P1MOSI / P2MISO / P3

P4PWM0 / P5PWM1 / P6PWM2 / P7

RX2 / P8TX2 / P9

P10PWM6 / P11PWM7 / P12PWM8 / P13

P14P15

2122232425262728293031323334353637383940

VCCGNDRESVBBP16 / AD0P17 / AD1P18 / AD2P19 / AD3P20 / AD4P21 / AD5P22 / AD6P23 / AD7P24P25P26P27 / PWM3P28 / PWM4 INT0P29 / PWM5/ INT 1P30 / INT2P31 / INT3

/

95 96 97 98 99 100

101

102

103

104

105

106

107

108

GN

DG

ND

N/C

N/C

P72

P73

P74

P75

P76

P77

P78

P79

P82

N/C

81 82 83 84 85 86 87 88 89 90 91 92 93 94

VC

CV

CC

N/C

N/C

P64

P65

P66

P67

P68

P69

P70

P71

P80

P81

4142434445464748495051525354555657585960

TXERXEN/C

VCCAD8 / P32AD9 / P33

AD10 / P34AD11 / P35AD12 / P36AD13 / P37AD14 / P38AD15 / P39

HCNT1 / P47HCNT0 / P46

P45P44

TX1 / P43RX1 / P42SDA / P41SCL / P40

6162636465666768697071727374757677787980

TtlTXETtlRXEAVrefGNDP48P49P50P51 / PWM9P52 / PWM10P53 / PWM11P54P55P63P62P61P60P59P58P57 / TX3P56 / RX3

CB400InputOnly

Page 4: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

4

머리말

본 사용설명서는 CUBLOC 레더중심 사용설명서입니다. 레더로직을 중심으로 CUBLOC 을 사용하는 방법에 대해

서 설명하고 있습니다.

BASIC 언어와 CUBLOC 에 대한 일반적인 사항들은 “BASIC 언어중심”사용 설명서를 참조하시고, 레더로직과 관

련된 부분만 본 사용설명서를 참조하시기 바랍니다.

또한 본 사용설명서는 CUBLOC STUDIO V3.0.A 이후버젼으로 설명을 진행합니다. 그 이전버젼과는 다소 설명이

일치하지 않는 부분이 나올수 있습니다.

최신버젼의 CUBLOS STUDIO는 www.comfile.co.kr 에서 다운로드 받으실 수 있습니다.

컴파일 테크놀로지 주식회사

CUBLOC STUDIO V3.0.A 에서는 LADDER LOGIC 과 관련된 성능이 대폭 향상되었습니다. 레더로직을 많이 활

용하시는 고객분께서는 V3.0.A 이후버젼을 사용하시기 바랍니다. 기존버젼과 비교해서 향상된 부분은 다음과 같

습니다.

1. 복잡한 레더로직도 분석가능합니다.

2. UNDO 기능을 지원합니다.

3. 레더화면에서도 마우스 휠을 돌리면 스크롤할 수 있습니다.

4. 레더표시를 보기 편하도록 개선하였습니다.

5. 모니터링시 접속선에서도 ON/OFF 상황을 알수 있도록 하였습니다.

Page 5: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

5

LADDER 입력 시 주의사항

CUBLOC STUDIO V3.0.A 부터 레더 분석능력이 향상되었습니다. 기존 버전에서 사용할 수 없었던 복잡한 레더

로직도 사용하실 수 있습니다.

입력심볼을 자유롭게 배치할 수 있습니다. 단, 출력심볼은 맨 끝부분에 위치시키십시오.

다음과 같은 형태의 레더로직도 사용할 수 있습니다.

출력부가 복잡한 형태의 레더로직도 사용가능합니다.

Page 6: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

6

한 개의 라인에서 여러 개의 나뉘어 파생되는 것도 가능합니다. (이전 버전에서는 불가능했습니다.)

두군데에서 파생됨

출력으로 진행되는 신호를 카운터의 입력으로 처리할 수 있습니다.

아래 사항은 일반적으로 레더작성시 주의해야될 사항들입니다. 참고하십시오.

1. 논리적으로 반대인 상황을 같은 출력에 보낼수 없습니다. 이 경우 컴파일시 에러가 발생되지 않으므로 주의가

필요합니다.

2. 레더는 아래 방향으로만 전개해야 합니다. 다음과 같은 레더는 에러처리됩니다. 다음과 같은 회로는 컴파일시

에러멧세지가 발생합니다.

Page 7: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

7

3. PLC 는 제어신호의 흐름이 좌->우, 상->하로만 흐르게 되어 있습니다. 다음과 같은 회로는 컴파일시 에러멧세

지가 발생합니다.

이 회로는 다음과 같이 바꾸어 사용하십시오.

Page 8: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

8

차 례

LADDER입력 시 주의사항 ....................................................................................................................................................................5

제 1 장 CUBLOC의 기초....................................................................................................................................................................... 11

CUBLOC소개.......................................................................................................................................................................................... 12

LADDER LOGIC 과 BASIC................................................................................................................................................................ 13

LADDER 와 BASIC의 멀티테스킹................................................................................................................................................... 15

반도체형의 장점..................................................................................................................................................................................... 17

개발환경................................................................................................................................................................................................... 19

CUBLOC STUDIO ................................................................................................................................................................................. 20 CUBLOC관련 제품군 ........................................................................................................................................................................... 21

일체형 큐블록 CUSB시리즈 ............................................................................................................................................................... 23

큐블록 코어모듈 OVERVIEW................................................................................................................................................................ 24

제 2 장 PLC란 무엇인가........................................................................................................................................................................ 25

PLC의 역사.............................................................................................................................................................................................. 26

컴퓨터와 PLC ......................................................................................................................................................................................... 27

PLC의 종류.............................................................................................................................................................................................. 29

제 3 장 CUBLOC STUDIO................................................................................................................................................................. 31

CUBLOC STUDIO 사용법 기초......................................................................................................................................................... 32

화면 구성 ................................................................................................................................................................................................. 35

LADDER 작성법.................................................................................................................................................................................... 36

LADDER 편집........................................................................................................................................................................................ 37

모니터링................................................................................................................................................................................................... 41

WATCH POINT ...................................................................................................................................................................................... 42 타임 차트 모니터................................................................................................................................................................................... 43

메뉴 설명 ................................................................................................................................................................................................. 45

PLC셋업 마법사 ..................................................................................................................................................................................... 47

제 4 장 레더로직의 기초 ........................................................................................................................................................................ 51

LADDER의 기초.................................................................................................................................................................................... 52

레더 로직 다이어그램의 기본 구성.................................................................................................................................................. 54

니모닉과 레더로직 다이어그램.......................................................................................................................................................... 55

릴레이 표현............................................................................................................................................................................................. 56

I/O포트의 사용........................................................................................................................................................................................ 59

사용 디바이스 선언............................................................................................................................................................................... 61

제 5 장 레더로직 기본명령어................................................................................................................................................................ 63

CUBLOC LADDER 명령요약............................................................................................................................................................. 64

Page 9: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

9

LOAD,LOADN, OUT .............................................................................................................................................................................66

NOT, AND,OR .........................................................................................................................................................................................72

ANDS,ORS ...............................................................................................................................................................................................75

SETOUT, RSTOUT.................................................................................................................................................................................78

DF, DFN.....................................................................................................................................................................................................80

TON, TAON..............................................................................................................................................................................................81

TOFF, TAOFF...........................................................................................................................................................................................83

CTU............................................................................................................................................................................................................86

CTD............................................................................................................................................................................................................86

UP/DOWN COUNTER...........................................................................................................................................................................88

KCTU.........................................................................................................................................................................................................89

KCTD.........................................................................................................................................................................................................89

MCS, MCSCLR........................................................................................................................................................................................90

STEPSET...................................................................................................................................................................................................93

STEPOUT..................................................................................................................................................................................................96 비교명령....................................................................................................................................................................................................97

제 6 장 레더로직 응용명령어.................................................................................................................................................................99

응용명령어란 .........................................................................................................................................................................................100

워드와 더블워드 저장방식.................................................................................................................................................................102

2 진수와 10 진수, 16 진수....................................................................................................................................................................103

WMOV, DWMOV.................................................................................................................................................................................104

WXCHG, DWXCHG.............................................................................................................................................................................105

FMOV......................................................................................................................................................................................................106

GMOV .....................................................................................................................................................................................................107

WINC, DWINC WDEC, DWDEC.......................................................................................................................................................108

WADD, DWADD ..................................................................................................................................................................................109

WSUB, DWSUB ....................................................................................................................................................................................109

WMUL, DWMUL..................................................................................................................................................................................110

WDIV, DWDIV......................................................................................................................................................................................111

WOR, DWOR.........................................................................................................................................................................................112

WXOR, DWXOR...................................................................................................................................................................................113

WAND, DWAND ..................................................................................................................................................................................114

WROL,DWROL.....................................................................................................................................................................................115

WROR,DWROR ....................................................................................................................................................................................116

GOTO,LABEL........................................................................................................................................................................................117

CALLS,SBRT,RET................................................................................................................................................................................118

INTON .....................................................................................................................................................................................................119

TND..........................................................................................................................................................................................................120 특수릴레이 .............................................................................................................................................................................................121

제 7 장 레더로직의 기능 확장...........................................................................................................................................................125

Page 10: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

10

베이직과의 데이터 공유 .................................................................................................................................................................... 126

A/D입력.................................................................................................................................................................................................. 128

PWM출력............................................................................................................................................................................................... 130

고속카운터 입력................................................................................................................................................................................... 131

키패드 입력........................................................................................................................................................................................... 132

PLC셋업마법사를 이용한 레더기능 확장 ..................................................................................................................................... 133

7 세그먼트 디스플레이...................................................................................................................................................................... 135

LCD디스플레이 : 방법 1.................................................................................................................................................................... 138

LCD디스플레이 : 방법 2.................................................................................................................................................................... 140

LCD디스플레이 : 방법 3.................................................................................................................................................................... 143

레더에서 사운드발생.......................................................................................................................................................................... 146

레더에서 복잡한 연산식 수행 .......................................................................................................................................................... 148

제 8 장 BASIC에서 레더로직 블록제어 ...................................................................................................................................... 151

LADDER 와 BASIC의 협동 ............................................................................................................................................................. 152

방법 1: M릴레이로 AND하기............................................................................................................................................................ 153

방법 2: 마스터 콘트롤로 제어하기 ................................................................................................................................................. 156

방법 3: GOTO로 제어하기 ................................................................................................................................................................. 158

방법 4: 레더전체를 ON/OFF를 제어하기...................................................................................................................................... 159

MEMO .................................................................................................................................................................................................... 160

제 9 장 모드버스체험 ........................................................................................................................................................................... 161

MODBUS 체험..................................................................................................................................................................................... 162

모드버스의 응용................................................................................................................................................................................... 165

제 10 장 어플리케이션 노트.............................................................................................................................................................. 167

노트 1. 자기유지 (래치)회로............................................................................................................................................................. 168

노트 2. 인터록 회로 ............................................................................................................................................................................ 171

노트 3. 스위칭 회로 ............................................................................................................................................................................ 173

노트 4. 레더에서 온도읽기................................................................................................................................................................ 175

제 11 장 입출력 회로........................................................................................................................................................................... 181

다운로드 케이블 연결......................................................................................................................................................................... 182

USB-RS232 케이블 사용..................................................................................................................................................................... 186

다운로드 시 발생되는 에러멧세지.................................................................................................................................................. 188

큐블록 기본회로................................................................................................................................................................................... 189

입출력 회로 구성법............................................................................................................................................................................. 190

RS232 회로............................................................................................................................................................................................. 194

CUBLOC STUDY BOARD 회로도.................................................................................................................................................. 196

BASE BOARD....................................................................................................................................................................................... 200

INDEX......................................................................................................................................................................................................... 203

Page 11: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

11

제 1 장

CUBLOC 의 기초

Page 12: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

12

CUBLOC 소개

PLC 는 “프로그래머블 로직 콘트롤러”의 약자로, 아래 왼쪽에 있는 그림처럼 생긴 제품입니다. 이에 반해 “큐블

록”은 오른쪽에 있는 그림처럼 “반도체형”으로 생긴 새로운 형태의 PLC / Embedded Controller 제품입니다.

일반적인 PLC CUBLOC

두 제품 모두 “릴레이 레더 로직”을 사용할 수 있습니다만, 전통적인 방식의 PLC 와 비교해서 “큐블록”은 몇 가지

차이점을 가지고 있습니다.

우선, 큐블록은 “반도체형”으로 되어 있어 PCB (인쇄 회로 기판)에 직접 장착할 수 있습니다. 따라서 좀더 저렴한

생산비용으로 여러분이 생각하는 제어기판을 구성할 수 있습니다.

그리고, CUBLOC 은 LADDER LOGIC 언어의 단점을 보완할 수 있는 BASIC 언어를 지원하고 있습니다.

LADDER LOGIC 은 전기제어 및 산업용 기계 등을 설계하기에는 충분하지만, 보다 복잡한 처리를 요구하는 장비

에서는 부족한 방식입니다. LADDER LOGIC 으로 처리할 수 없는 데이터수집, 그래픽 표시, 수치 연산 등 보다 복

잡한 처리를 하기 위해, 큐블록에서는 BASIC 언어를 추가적으로 지원하고 있습니다.

DIM A AS INTEGERIF IN(0) = 0 THEN OUT 2,AEND IFGOTO LAB1

LADDER LOGIC BASIC

* 큐블록을 사용하기 위해서 반드시 BASIC 언어를 배워야 하는 것은 아닙니다. “ PLC SETUP WIZARD” 를 이

용하면 BASIC 언어를 몰라도 레더로직만으로도 충분히 큐블록을 사용할 수 있습니다.

Page 13: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

13

LADDER LOGIC 과 BASIC

LADDER LOGIC 의 가장 큰 특징은 모든 회로가 동시에 동작 가능한 “병렬처리(Parallel)방식”이라는 점입니다.

P0

P5

P3

P2

P6

P9

P8

A

B

위의 회로에서 A 회로와 B 회로는 언제든지 동작 가능한 상태로 대기 중입니다. 입력이 들어오면 출력 포인트가

활성화 됩니다.

이에 반해 BASIC 언어는 첫 번째 행부터 차례대로 실행되는 “순차처리(Sequential) 방식”입니다.

Dim A As Integer

Dim B As Integer

A = 0

Again:

For B=0 to 10 Debug DEC A,CR

A = A + 10

Next

Goto Again

Loop

Jump

이 두 가지 프로그래밍 방식은 서로 다른 분야에서 오랫동안 사용되어 왔습니다. LADDER LOGIC 은 공장자동화

용 콘트롤러인 PLC 에서, 프로그래밍 언어는 (BASIC, C, 어셈블러 등) PC 나 MCU 에서 사용되고 있습니다.

LADDER LOGIC 이 가지고 있는 가장 큰 장점은 입력에 대한 즉각적인 처리가 가능하다는 것입니다. LADDER

LOGIC 이 아무리 길고 복잡해도, 각각의 회로는 언제든지 동작 가능한 상태로 대기하고 있다가, 입력조건이 성립

되면 해당 출력을 내보냅니다. 이러한 LADDER LOGIC 은 기계제어, 전기제어 분야에서 탁월한 성능을 발휘하면

서 지금도 공장자동화 분야에서 가장 많이 사용되고 있는 프로그래밍 방법으로 자리잡고 있습니다.

Page 14: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

14

하지만 LADDER LOGIC 는 “프로그래밍 언어”라기 보다는 논리회로라고 할 수 있기 때문에, 그 능력에 한계가 있

습니다. 대표적으로 키패드로부터 키 입력을 받아들이고, 디스플레이 소자 (LCD, 7 SEGMENT)에 캐릭터를 표시

하고, 메뉴의 이곳 저곳을 옮겨 다니는, 유저 인터페이스와 관련된 일은 LADDER LOGIC 으로 구현할 수 없습니

다.

이런 일들은 BASIC 과 같은 “프로그래밍 언어”에서는 비교적 간단하게 처리할 수 있습니다. BASIC 언어는 실수

및 정수를 다루는 수치연산, 데이터 통신, 자료처리 등을 위해 개발된 언어이기 때문입니다. 또한 BASIC 언어는

인간이 사용하는 자연언어 (IF, GOTO 등)을 사용하여 프로그램을 작성할 수 있도록 고안되었기 때문에 비전문가

들도 쉽게 배우고 익힐 수 있는 언어입니다.

LADDER LOGIC 프로그래밍 언어(BASIC,C,ASM)

DEVICE PLC PC 또는 마이크로컴퓨터

응용분야 공장자동화, 기계제어 일반적인 컴퓨터 프로세싱 분야

장점 시퀀스 제어, 비트제어, 타이밍제어,

카운터 제어

수치연산, 통신, 자료처리, 데이터수집, 분석,

그래픽제어 등

기본원리 병렬처리 순차제어

LADDER LOGIC 의 병렬처리와 BASIC 언어의 순차처리는 매우 상호 보완적인 특징을 가지고 있습니다. BASIC

에서 할 수 없었던 일들을 LADDER LOGIC 에서 간단히 처리할 수 있고, 그 반대로 LADDER LOGIC 에서 할 수

없었던 일들은 BASIC 에서 쉽게 처리할 수 있는 경우가 많이 있습니다.

그래서 이 두 가지 프로그래밍 방식을 하나의 콘트롤러에서 사용할 수 있도록 만든 제품이 “CUBLOC”입니다. 두

가지 언어의 장점을 잘 이해한 뒤, LADDER LOGIC 으로 처리할 부분과 BASIC 으로 처리할 부분을 잘 나누어서

프로그램을 작성한다면, 지금까지 어렵게 해왔던 프로그래밍을 좀더 쉽게 할 수 있을 것입니다.

Page 15: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

15

LADDER 와 BASIC 의 멀티테스킹

이미 시장에는 LADDER 의 일부분으로 BASIC 을 사용하는 방법을 채택한 제품이 있습니다. 아래 그림처럼 어떤

입력조건이 있을 때, 베이직명령어로 구성된 서브루틴이 실행되는 구조로 되어 있습니다. 이 방법이 가지고 있는

단점들이 몇 가지 있습니다.

P0 P1 Print "Setting Mode"A = A + 1B = B +1RETURN

FUNC #1

FUNC #1

첫 번째는 BASIC 의 실행시간에 따라 LADDER LOGIC 의 실행에 영향을 준다는 것입니다. BASIC 을 처리하는

부분에서 무한루프에라도 빠지게 된다면, LADDER LOGIC 도 실행을 멈추게 됩니다. LADDER LOGIC 의 즉각적

인 병렬처리는 LADDER LOGIC 에서 가장 중요한 요소인데, BASIC 때문에 LADDER LOGIC 의 병렬처리를 보장

할 수 없다면, BASIC 기능이 아예 없는 것이 나을지도 모릅니다.

두 번째는 BASIC 은 LADDER LOGIC 의 일부분으로 밖에 사용할 수 없다는 점입니다. BASIC 언어는 그 자체로

도 복잡한 처리가 가능한 프로그래밍 언어입니다. 이러한 언어를 LADDER LOGIC 의 부속품으로 밖에 사용할 수

없다면, BASIC 언어의 성능을 제대로 활용하지 못하게 됩니다.

세 번째는 I/O 사용에 있어서, BASIC 에서의 실행결과가 LADDER 와 충돌을 일으킬 수 있는 요소가 많이 존재합

니다. 그 이유는 LADDER LOGIC 은 I/O 포트를 “리플레쉬”하는 반면, BASIC 에서는 I/O 를 직접 제어하기 때문입

니다.

이러한 문제점을 해결하고, BASIC 과 LADDER LOGIC 이 하나의 프로세서에서 유기적으로 결합하는 방법으로,

CUBLOC 에서는 “멀티테스킹”을 채택하였습니다. BASIC 은 BASIC 대로, LADDER 는 LADDER 대로 동시에 실

행되는 것입니다.

LADDER

LADDERLADDER

BASIC BASIC

BASIC

SINGLE TASK MULTI TASK

Page 16: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

16

이렇게 함으로써, 앞에서 언급하였던 문제점들이 자동적으로 해결되었습니다. 먼저 BASIC 의 실행시간이

LADDER LOGIC 의 동작에 영향을 주지 않게 되었습니다. BASIC 과 LADDER 는 서로의 실행시간에 영향을 주지

않고, 동시에 동작됩니다. BASIC 이 무한루프에 빠지더라도 LADDER LOGIC 은 정상적으로 동작합니다.

또한, BASIC 만으로도 하나의 프로젝트를 완성할 수 있습니다. CUBLOC 의 BASIC 부분은 “타사의 BASIC 전용

콘트롤러” 보다 뛰어난 성능과 용량을 가지고 있습니다. LADDER LOGIC 의 도움이 필요 없는 경우, BASIC 만으

로도 CUBLOC 의 성능을 충분히 활용할 수 있도록 하였습니다.

I/O 의 경우, 유저의 선택에 따라 BASIC 에서 사용하는 I/O 와 LADDER 에서 사용하는 I/O 를 분리 운영합니다.

따라서 I/O 충돌에 따른 문제를 사전에 예방할 수 있습니다.

Page 17: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

17

반도체형의 장점

CUBLOC 의 특징 중, 빼놓을 수 없는 중요한 특징은 “반도체형”이라는 것입니다. 일반적으로 PLC 라고 하면, 블

록 형의 케이스에 단자 대를 갖춘 제품을 말합니다. 이런 PLC 를 사용할 때에는 PLC 를 넣을 별도의 케이스 또는

케비넷과 단자 대에 배선작업을 일일이 해주어야 한다는 단점이 있습니다.

몇 개 정도의 셋트만 조립한다면, 특별한 문제가 없겠지만, 반복적으로 생산하는 제품에 위와 같은 PLC 를 적용

했다면 여러 가지 문제가 발생하게 됩니다. 우선, 일일이 사람이 배선작업 및 조립을 해야 하므로 인건비가 상승

되고, 불량률도 높아지게 됩니다. 무엇보다도 재료비가 많이 들고, 부피가 커지는 것이 가장 큰 단점이라고 할 수

있습니다.

CUBLOC

CORE MODULE

CUBLOC

CORE MODULE

그림에서 볼 수 있듯이, CUBLOC 은 반도체형으로 되어있어, PCB 에 실장이 가능한 제품입니다. PLC 를 마치 “마

이컴 (MCU)”처럼 사용할 수 있습니다. 양산하고자 하는 제품에 딱 맞는 PCB 를 별도 제작하여, 전용 보드 형태

로 만들어 사용할 수 있습니다. 재료비 절감은 물론, 인건비도 줄일 수 있고, 제품도 컴팩트한 사이즈로 만들 수

있습니다.

Page 18: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

18

다음은 일반 PLC 와 반도체형 PLC 인 CUBLOC 의 차이점을 표로 정리해 본 것입니다.

일반 PLC CUBLOC

외형

생산방식 단자 대에 배선하는 방식 PCB를 사용하여 양산하는 방식

인건비 높음 낮음

반복 재 생산 어려움 용이함

제품 생산 단가 높음 낮음

완성품 크기 비교적 큰 규모 컴팩트한 사이즈

일반적인 PLC 를 사용하여 양산하고 있는 제품이 있다면, CUBLOC 을 사용하여 PCB 형으로 바꾸는 것을 검토해

보십시오. 생산성과 원가절감에 대하여 만족할 만한 결과가 있을 것입니다.

Page 19: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

19

개발환경

CUBLOC 을 사용하기 위해서는 Windows XP (2000,이상) 운영체계와 RS232 포트를 갖춘 PC 가 필요하고, 일반

적인 PLC 와 마찬가지로 PC 와 RS232 로 접속합니다. RS232C 포트가 없는 PC 라면, USB to RS232C 변환 컨버

터를 사용합니다. PC 와 연결된 상태에서 다운로드 및 모니터링이 가능합니다.

PC 와 연결을 해제하면 혼자서 동작하는 STAND ALONE 상태가 됩니다. CUBLOC 에는 플레쉬 메모리가 내장되

어 있어, 한번 기억된 프로그램은 전원이 없어도 계속 기억하고 있습니다. 나중에 다시 새로운 프로그램을 다운로

드 할 수 있으며, 프로그램을 지울 수도 있습니다.

Page 20: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

20

CUBLOC STUDIO

CUBLOC을 사용하는 데 필요한 통합개발환경 소프트웨어인 CUBLOC-STUDIO은 인터넷 홈페이지

www.comfile.co.kr을 통하여 무상 제공됩니다. 유저는 이 프로그램을 사용해서 BASIC과 LADDER프로그램을

작성하게 됩니다.

하나의 통합개발환경에서 베이직과 레더로직을 모두 입

력할 수 있습니다.

유저는 단지 “실행”보턴만 누르면 두 가지 모두 한번에

컴파일 되어 “큐블록”으로 다운로드 됩니다.

www.comfile.co.kr에서 최신 버전의 CUBLOC

STUDIO 를 다운로드 받으세요. CUBLOC STUDIO는

기능향상을 위하여 예고 없이 업그레이드 될 수 있습니

다.

Page 21: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

21

CUBLOC 관련 제품군

CORE MODULE 큐블록의 핵심인 CPU 부분을 모듈형태로 만들어 놓은

것입니다. 여러분께서는 코어모듈만 구입하신 뒤, 기

판을 만들어서 사용할 수도 있고, 컴파일 테크놀로지

에서 판매하는 각종 기판을 같이 구입하셔서 사용할

수도 있습니다. 코어모듈에 여러분이 원하는 I/O 를 추

가한다면, 세상 어디에도 존재하지 않는 나만의 PLC

를 만드실 수 있게 됩니다.

큐블록 코어 모듈은 프로그램 메모리 사이즈와 I/O 포

트 수에 따라서 다양한 모델이 있습니다. 여러분이 만

들고자 하는 제품에 적합한 “큐블록 코어 모듈”을 선

택하시기 바랍니다.

PROTO BOARD 시리즈 만능기판형태로 되어 있어, 간단하게 시제품을 만들고

자 하는 분들에게 필요한 제품군입니다. 큐블록 코어

모듈을 장착하는 부분과, 파워회로, 인터페이스 회로

가 내장되어 있습니다.

BASE BOARD 산업현장에서 바로 응용할 수 있도록 만든 제품군입니

다. 출력 포트에 릴레이를 연결하여, 솔레노이드 및,

마그네틱 스위치 등을 연결할 수 있고, 입력포트는

24V 입력을 받을 수 있으며, 센서류 및 근접스위치 등

을 연결 할 수 있습니다. 산업용 DIN-RAIL (찬넬)에

장착할 수 있는 가이드도 부착되어 있습니다.

Page 22: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

22

STUDY BOARD 큐블록을 처음 사용하는 사람들을 위한 실험실습용

보드입니다. 스위치, LED 등의 기초소자와 전원회

로, RS232 인터페이스 회로 등이 내장되어 있습니

다. 큐블록을 처음 구매하는 분은 “스터디 보드”와

“CUBLOC 코어모듈”, 케이블류 등을 포함하고

“START KIT”를 구입하시기 바랍니다.

LCD DISPLAY 모듈 CUNET 통신을 지원하는 다양한 디스플레이 모듈

을 지원합니다. 이 모듈을 사용한다면 유저는 단순

한 명령 (PRINT, CLS 등)으로 손쉽게 디스플레이를

제어할 수 있습니다.

세븐 세그먼트 디스플레이 모듈

(CSG 시리즈) 세븐세그먼트는 구동원리는 간단하지만, 막상 구동

하려면 귀찮은 점이 많은 디스플레이 소자입니다.

CSG 모듈을 사용하여 I2C 접속으로 큐블록과 연결

한다면, 간단한 명령어로 손쉽게 세븐 세그먼트를

구동할 수 있습니다. 사진에 있는 것과 다른 형태의

다른 사이즈의 제품도 준비되어 있습니다.

CUTOUCH 시리즈 큐블록 과 GHLCD 그리고 터치패널을 일체형으로

만든 제품입니다. 큐블록의 BASIC 명령으로 터치패

널과 LCD 디스플레이를 제어하고, LADDER LOGIC

으로 외부 I/O 를 제어할 수 있도록 만든 제품입니

다.

Page 23: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

23

일체형 큐블록 CUSB 시리즈

큐블록과 BASE BOARD, RELAY, SMPS 를 모두 하나로 합친 제품입니다. 좀더 현장에서 쉽게 적용할 수 있도록

만든 제품입니다. I/O 수에 따라서 다양한 모델이 있습니다.

CUSB-14R DC24V 입력 9 점

RELAY 출력 6 점의 소형모델

전원은 FREE VOLT SMPS (AC85V~264V)

CUSB-30R DC24V 입력 11 점

RELAY 출력 6 점

전원은 FREE VOLT SMPS (AC85V~264V)

CUSB-22R DC24V 입력 11 점

RELAY 출력 10 점

전원은 FREE VOLT SMPS (AC85V~264V)

CUSB-22D DC24V 입력 11 점

RELAY 출력 10 점

전원은 DC24V 입력

CUSB-22R 의 DC 버전

CUSB-36R DC24V 입력 16 점

RELAY 출력 16 점

전원은 FREE VOLT SMPS (AC85V~264V)

Page 24: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

24

큐블록 코어모듈 Overview

큐블록의 핵심인 “큐블록 코어모듈”은 다음과 같은 모습을 하고 있습니다. 다음은 큐블록 코어모듈 시리즈 중

CB220 모듈 입니다.

SOUTSINATNVSS

SS_P0(Input only)SCK_P1

MOSI_P2MISO_P3

P4PWM0_P5PWM1_P6PWM2_P7

123456789101112

242322212019181716151413

VIN (5.5V~12Vinput)VSSRESVDDP15_HCNT1P14_HCNT0P13P12P11_TX(CH1)P10_RX(CH1)P9_SDA(CUNET)P8_SCL(CUNET)

CB220

CB220 은 24 핀의 반도체형 DIP 형태 펙키지로 되어 있으며, 16 핀의 I/O 포트와 5V 전원 레귤레이터를 내장하고

있습니다. 대부분의 핀은 I/O 핀으로 되어 있어, 이곳에 입출력 소자들을 연결하여 PLC 를 구성합니다.

I/O 핀은 5V 를 입력하거나 출력하도록 되어 있습니다. 여기에 직접 RELAY 나 센서를 연결할 수 는 없습니다. 별

도의 회로를 사용하여, I/O 에서 높은 전압을 입력 받거나, RELAY 출력을 할 수 있도록 해야 합니다.

별도로 판매하는 BASE BOARD 나, CUSB 시리즈 등을 함께 구입하시면, 이러한 부분을 쉽게 해결할 수 있습니다.

아니면, 여러분이 직접 I/O 확장회로를 설계하여 사용하실 수 도 있습니다. 입력과 출력 보강회로에 대한 회로도

는 “제10 장 입출력회로”에서 설명합니다.

큐블록 코어모듈만 구입하신 뒤, PCB 를 제작해서 사용하신다면, “맞춤형 PLC”를 만들 수 있습니다. 즉, 여러분이

하고자 하는 일에 꼭 맞는 나만의 PLC 를 만들 수 있게 됩니다.

기타 다른 큐블록 코어모듈에 대한 구체적인 설명은 “제12 장 코어모듈”에서 다루고 있습니다.

Page 25: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

25

제 2 장

PLC 란 무엇인가

Page 26: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

26

PLC 의 역사

큐블록을 공부하기에 앞서, PLC 의 역사에 대해서 간단하게 알아보도록 하겠습니다. PLC 가 사용되기 이전에는 “릴

레이 제어반”이 쓰이고 있었습니다. 릴레이 제어반이란 커다란 나무판 위에 릴레이, 센서, 타이머 등의 소자를 배

치하고, 전선으로 결선을 한 형태의 보드를 의미합니다.

“릴레이 제어반”을 설치하는 데에는 많은 인력과 비용이 필요하고, 수정하거나 보완하기 위한 작업도 매우 번거롭

고 까다로웠습니다. 그래서 이런 문제점을 해결하기 위해 1970 년대 초에 PLC (프로그래머블 로직 콘트롤러)가 처

음 등장했습니다.

최초의 PLC 는 단순한 “시퀀스 회로”를 수행할 수 있을 정도의 단순한 기능이었고, 그 당시 마이크로프로세서의

처리속도가 느렸기 때문에, PLC 에 마이크로 프로세서를 사용하지 않았지만, 이제는 모든 PLC 에서 마이크로 프로

세서를 기본적으로 사용하고 있습니다.

PLC 의 발전과정을 연도별로 살펴보면 다음과 같습니다.

1968 년 : Programmable Controller 의 개념이 정립

1969 년 : 1K 메모리, 128 개의 I/O 점수를 가진 PLC 의 등장

1971 년 : 4 비트 마이크로 프로세서의 개발 (4004)

1972 년 : 8 비트 마이크로 프로세서의 개발 (8008)

1974 년 : 16 비트 마이크로 프로세서의 개발, 이때부터 타이머, 카운터기능과 12K 메모리를 갖춘 PLC 등장

1976 년 : 원격 I/O 모듈 등장

1983 년 : 저가의 소형 일체형 PLC 등장

1985 년 : PLC, 컴퓨터, CNC, 로봇 등을 기초로 하는 분산형 계층 제어 시스템 등장

1997 년 : 32 비트 마이크로 프로세서를 채택한 PLC 등장

최근의 PLC 를 보면, 단순 시퀀스, 타이머, 카운터 구현에 만족하지 않고, 통신 및 네트워크 기능과 모터콘트롤 및

위치제어, 온도센싱 등의 기능을 갖춘 고성능 PLC 가 주종을 이루고 있습니다.

<다기능 블록형 PLC>

Page 27: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

27

컴퓨터와 PLC

컴퓨터와 PLC, 모두 마이크로 프로세서를 사용하지만, 생김새나 사용방법은 매우 다릅니다.

PLC 에는 키보드와 모니터가 없다.

그림처럼 PLC 에는 일반적으로 모니터와 키보드를 연결하지 않습니다. PLC 에 프로그램을 입력하기 위해서는 별

도의 로더나 컴퓨터가 있어야 합니다. PLC 의 내부 상태를 표시하기 위해, 램프나 LED 등을 사용하고, 추가적으로

터치스크린 등을 붙이는 경우가 있는데, 컴퓨터에서처럼 무조건 모니터가 필요한 것은 아닙니다.

PLC 는 레더로직을 사용합니다.

PLC 는 레더로직이라고 불리는 그림형태의 시퀀스언어를 사용합니다. 컴퓨터에서 C, BASIC 과 같은 언어를 사용

하는 것과 구별할 수 있습니다. 레더로직은 현장실무자가 기계의 내용을 직관적으로 제어하고 관찰할 수 있는 현

장중심의 언어라고 할 수 있습니다.

LADDER LOGIC

Page 28: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

28

PLC 는 OS 가 필요 없습니다.

PLC 에는 WINDOWS 나 LINUX 와 같은 운영체계 프로그램이 필요 없습니다. 대부분의 PLC 는 레더로직 프로그

램을 분석하고 실행할 수 있는 자체 OS 시스템이 설치된 상태로 출하되므로, 사용자가 OS 에 대하여 신경 쓸 필

요도 없고, 바꾸거나 업그레이드할 수 없도록 되어 있습니다.

PLC 에는 자동화에 관해서는 천재이지만, 그 외에는 소질이 없습니다.

PLC 는 공장자동화에 관련된 일이라면 자신 있습니다. 하지만 컴퓨터에서처럼 그림을 그리거나, 음악을 듣거나,

영화를 보거나 할 수는 없습니다. PLC 는 공장자동화를 위해서 만들어진 컴퓨터라고 볼 수 있습니다.

컴퓨터는 약전, PLC 는 강전을 주로 다룹니다.

약한 전기를 “약전”이라고 하고, 강한 전기를 “강전”이라고 합니다. 약전에서는 + / - 15V 이내의 작은 전압을 주로

취급합니다. 강전은 12V~220V 정도의 전압을 취급합니다. PLC 의 I/O 포트에는 강전을 다룰 수 있는 포트가 있어서,

220V 의 전기를 제어하거나, 대용량의 모터를 ON/OFF 할 수 있습니다. 이에 반해 컴퓨터에 있는 I/O 포트를 보면

낮은 전압으로 입,출력하도록 되어 있습니다.

PLC 는 구석진 곳을 좋아합니다.

PLC 가 설치되는 것은 공장 구석구석의 케이스 안쪽이나, 먼지나 진동이 심한 곳이 대부분입니다. 그래서 PLC 는

현장설치에 적합한 생김새와 내구성을 가지고 있습니다.

Page 29: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

29

PLC 의 종류

일반적으로 “모듈형”과 “일체형”으로 나눌 수 있습니다.

모듈형은 여러 개의 모듈이 하나의 PLC 를 구성하도록 되어 있는 제품입니다. 보통 CPU 모듈, 전원모듈, 입출력

모듈 등을 블록단위로 연결할 수 있는 구조로 되어 있습니다. 제어 포인트수가 많다면 이러한 “모듈형”이 적합합

니다. 모듈형은 I/O 포인트의 추가가 쉽고, 기타 기능(모터제어, 온도제어) 을 갖고 있는 모듈을 추가적으로 사용할

수 있기 때문입니다.

제어포인트의 수가 작은 소형기계의 경우에는 일체형 PLC 를 주로 사용합니다. 일체형 PLC 는 전원, CPU, I/O 가

하나의 케이스 안에 모두 들어가 있고, 모듈형 PLC 에 비해 상대적으로 가격이 저렴합니다.

“큐블록”은 “반도체형 PLC”또는 “일체형 PLC”로 분류될 수 있습니다. 일체형 PLC 에서처럼 소형기계의 메인 콘트

롤러로 사용할 수 있기 때문입니다.

Page 30: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

30

MEMO

Page 31: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

31

제 3 장

CUBLOC

STUDIO

*본 사용설명서에 있는 화면은 사용하고 있는 CUBLOC STUDIO 의 버전에 따라 다소 차이가 있을 수 있습니다.

Page 32: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

32

CUBLOC STUDIO 사용법 기초

처음에는 BASIC 프로그램을 작성할 수 있는 TEXT EDITOR 상태가 됩니다. F2 키를 누르면 LADDER LOGIC 을

편집할 수 있는 LADDER EDITOR 화면이 표시되고, F1 키를 누르면 다시 BASIC 프로그램을 편집할 수 있는

TEXT EDITOR 상태가 됩니다. 화면 상단의 툴 바를 이용하여 기본적인 조작을 할 수 있습니다. 가장 많이 사용

하는 3 가지 보턴은 “파일오픈”, “파일세이브”, “실행” 보턴입니다.

Page 33: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

33

소스파일은 확장자 .CUL 과 .CUB, 두 개의 파일로 저장됩니다. 따라서 파일을 따로 백업하거

나, 이동할 때 반드시 두 개 파일을 같이 옮겨야 합니다.

파일 오픈 시에는 위의 그림처럼 .CUL 파일만 표시됩니다. (.CUB 파일을 표시하지 않습니다. 하지만 실제로는 같

은 폴더에 들어 있습니다.) .CUL 파일을 오픈하면 자동적으로 같은 이름의 CUB 파일이 오픈됩니다.

유저가 작성한 소스는 PC 상에만 저장할 수 있습니다. “CUBLOC 모듈”에 저장했다가 나중에 다시 불러오는 “소

스 업로드”기능은 지원하지 않으므로, 주의하시기 바랍니다. 소스를 잃어버렸을 경우, CUBLOC 모듈 에서 소스를

다시 불러올 수 있는 방법은 없으므로 소스프로그램의 보관 및 백업에 항상 신경 써 주시기 바랍니다.

*기존 TinyPLC 사용자는 주의하십시오. CUBLOC 에서는 더 이상 “ 소스 업로드” 기능

을 지원하지 않습니다.

메모 CUBLOC 모듈은 기본적으로 “코드 프로텍션”을 지원합니다. 다운로드 된 유저 프로그램을 읽어낼 수 없도록 설

계되어 있습니다. 가령, 특수한 장비를 사용하여 반도체 칩 내부의 데이터를 읽어낸다 하더라도, 암호화되어 알

수 없는 숫자들만 읽혀질 뿐입니다.

Page 34: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

34

RUN 을 누르면 (또는 단축키 CTRL-R) 저장-컴파일-다운로드-실행이 됩니다. LADDER 와 BASIC 모두

RUN 보턴 하나로 컴파일 에서 실행까지 한번에 수행됩니다. 번역도중 에러가 발생되면 에러멧세지가 표시되고,

에러가 발생한 곳으로 커서가 이동합니다.

BASIC 은 다음과 같이 작성합니다. CUBLOC Text Editor 는 일반적인 에디터와 동일한 사용방법을 가지고 있으

며 칼라링과 일부 특수 기능키를 지원합니다.

레더로직만 사용하는 경우에도 “최소한의 코드”는 작성해주어야 하므로, 텍스트 에디터를 사용하는 방법에 대해서

알아야 합니다.

기능키 동작설명

CTRL-Z UNDO

CTRL-O OPEN

CTRL-S SAVE

*소스작성 중 자주 CTRL-S키를 눌러 저장하는 습관을 들이는 것이 좋습니다.

CTRL-C COPY

CTRL-X CUT

CTRL-V PASTE

CTRL-F FIND

CTRL-HOME 문서의 맨 처음으로

CTRL-END 문서의 맨 끝으로

Page 35: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

35

화면 구성

큐블록 스튜디오 레더를 작성을 위한 화면 구성입니다.

화면상에 보이는 빨간색 박스가 “커서”입니다. 커서키를 및 마우스 포인트를 사용하면 커서를 이동시킬 수 있습니

다. 먼저 커서를 원하는 위치로 이동시킨 후, F3~F12 키를 누르면 해당위치에 원하는 심볼을 표시할 수 있습니다.

그리고 텍스트를 입력하는 방법으로 레더도를 작성합니다.

Page 36: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

36

LADDER 작성법

F3 KEY .를 누르면 심볼이 표시됩니다

START .라고 입력하면 심볼 상단에 문자가 표시됩니다

F5 KEY .를 누르면 횡접속선이 표시됩니다

F7 KEY " RELAY " .를 누르고 라고 입력합니다

END END .심볼을 누르면 명령선이 입력됩니다

TEXT 입력 시 맨 끝에 ENTER 키를 눌러야 입력이 완료됩니다. 그리고, LADDER 의 가장 끝에는 반드시 END

명령이 있어야 합니다. CUBLOC STUDIO 는 END 명령이 위치한 곳까지 번역하고, 저장합니다. END 명령 이후

에 작성된 부분은 저장되지 않으므로 주의하시기 바랍니다.

Page 37: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

37

LADDER 편집

텍스트 수정 이미 작성되어 있는 TEXT 부분을 수정하려면 해당위치에 커서를 놓은 뒤, ENTER 키를 누르면, 해당부분의

TEXT 를 수정할 수 있습니다.

종 접속선의 추가 삭제 종 접속 선이 필요한 곳에 커서를 위치시킨 후 F6 를 누르면 횡 접속 선이 표시됩니다.

커서의 오른쪽 아랫 부분에서 종 접속선이 표시됩니다.

이미 표시되어 있는 종 접속 선을 지우려면 해당위치에서 한번 더 F6 키를 누르면 지워집니다.

횡 접속선의 추가 삭제 F5 키 또는 “-“키를 누르면 횡 접속 선이 표시됩니다. 이미 표시되어 있는 곳에서 다시 한번 F5 키를 누르면 지워

집니다. 횡 접속선 및 종접속선은 토글동작으로 표시하거나 지울 수 있습니다.

Page 38: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

38

셀 단위 삭제

현재 커서가 위치한 곳에 있는 선과 텍스트내용을 모두 삭제하고 싶다면 “SPACE 키”를 누릅니다.

렁의 삭제

Ladder 에서 한 행을 렁(Rung)이라고 부릅니다. 지우고 싶은 렁에 커서를 위치시킨 뒤 CTRL-D 를 누르면 해당

렁이 삭제됩니다. 실제로는 버퍼로 이동합니다.

렁의 복구 지웠던 렁을 복구하려면, CTRL-U 를 누릅니다. 버퍼에 저장되었던 렁이 복구됩니다.

Page 39: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

39

셀 단위 삽입과 삭제

현재 커서의 위치에서 DEL 키를 누르면 셀이 삭제되고, 뒤에 있던 부분이 당겨지게 됩니다.

INS 키를 누르면 빈칸이 삽입되고, 뒷부분은 밀려납니다.

렁 복사 같은 형태의 레더가 계속 반복될 경우 CTRL-A 를 누르면, 바로 윗줄의 렁과 똑 같은 모양의 렁이 생성됩니다.

단, 텍스트 내용은 복사되지 않습니다.

코멘트 표시 LADDER 프로그램 중 빈 공간에 “주석문 (COMMENT)”를 입력할 수 있습니다. 코멘트는 “어포스토로피” (‘) 로

시작해야 하며, 반드시 빈 공간이나, 빈 줄에 표시해야 합니다. 코멘트 사이에 세미콜론을 넣으면 행 바꿈이 되어

두 줄로 코멘트를 입력할 수 있습니다.

Page 40: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

40

레더의 블록이동 복사

레더의 일부분을 선택하여 따로 보관하거나, 이동 복사 등을 할 수 있습니다.

마우스를 이용하여 드레그-드롭한다면 원하는 영역을 선택할 수 있습니다. (드레그-드롭이란?: 시작점에서 마우스

의 왼쪽보턴을 클릭한 뒤, 클릭한 상태로 대각선방향의 끝 지점까지 이동한 뒤, 마우스의 보턴을 놓습니다.) 선택

된 영역은 반전되어 표시됩니다. 이 상황에서 CTRL-C 를 누르면 선택된 영역이 버퍼로 복사됩니다. 화면에는 아

무 변화도 일어나지 않지만, 선택된 영역이 버퍼에 저장된 것입니다. CTRL-X 를 누르면 복사한 뒤, 해당영역을 모

두 클리어 합니다.

복사하고자 하는 지점으로 커서를 이동시킨 뒤 CTRL-V 를 누르면 버퍼에 있던 내용이 표시됩니다. CTRL-V 는 넣

을 공간을 확보한 뒤, 표시하고, CTRL-T 는 원래 있던 내용에 겹쳐서 표시됩니다.

* LADDER 편집화면에서 UNDO (실행 전 상황으로 복귀)는 지원합니다. CTRL-Z 를

누르면됩니다. 단 바로전 상황으로만 되돌아갈 수 있습니다. 멀티레벨 UNDO 는 지원

하지 않으므로 주의하시기 바랍니다.

Page 41: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

41

모니터링 CUBLOC STUDIO 에서는 LADDER LOGIC 의 동작상황을 실시간으로 보여주는 “모니터링”기능을 지원합니다.

화면상단에 있는 툴 바에서 모니터링 ON/OFF 스위치를 누르면 모니터링 상태로 들어가거나, 빠져 나올 수 있습

니다. (또는 CTRL-E 키를 누르면 모니터링 상태로 들어갑니다. 이 기능은 CUBLOC STUDIO V3.0.A 이후버젼에

서 사용가능합니다.) LADDER 모니터링 ON / OFF 스위치

다음은 모니터링중인 화면입니다. ON 상태인 접점은 “녹색블록”이 표시되며, 타이머, 카운터 등은 현재 값을 표시

합니다.

LADDER 모니터링 상태에서는 편집 및 저장이 불가능합니다. 그리고 LADDER 모니터링 상태에서 다운로드 및

BASIC 의 디버그 창 표시도 불가능합니다. 반드시 LADDER 모니터링 상태를 끈 후에 다른 작업을 하기 바랍니다.

Page 42: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

42

WATCH POINT 특정 릴레이나 메모리의 내용을 보고 싶을 때에는 WATCH POINT 를 이용합니다. LADDER 중 빈 부분에 “어포

스트로피”를 두 개 연달아 작성한 뒤 보고 싶은 릴레이번호를 적어줍니다. (따옴표가 아닌, 어포스트로피 두 개

입니다.) 다운로드 한 뒤, 모니터링 상태에서 와치포인트에 릴레이의 상태가 표시됩니다.

사용 예)

‘’P0 ‘’D0 ‘’T1

C, T, D 는 16 비트 값으로 표시 되며, 나머지 P, M, F 는 접점형태로 표시됩니다. S 릴레이는 와치포인트로 볼 수

없습니다. 그리고, END 문 밑에 있는 레더나 문장은 번역되지 않기 때문에 와치포인트는 END 문 안에 있어야만

볼 수 있습니다.

주의사항 모니터링 화면의 갱신속도는 PC 환경 (실행속도 등)에 따라 실제의 릴레이상태와 약간의 시간차이가 발생할 수

있습니다. 너무 빠른 릴레이의 ON/OFF 상황이 화면상에 모두 표시될 수 는 없다는 것을 염두에 두고, 모니터링

화면을 참고하시기 바랍니다. Setup 메뉴의 Ladder Setup 에서 Monitoring Speed 로 모니터링 속도를 변화시킬

수 있습니다.

Page 43: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

43

타임 차트 모니터 CUBLOC STUDIO 에서는 특정 릴레이의 상태를 타임차트형태로 볼 수 있는 “타임차트 모니터링”기능을 지원합

니다. 화면상단에 있는 툴 바에서 타임차트 모니터 스위치를 누르면 타임차트 모니터 윈도우가 나옵니다.

타임 차트 모니터

상단에 있는 Start 보턴을 누르면 캡쳐를 시작합니다. 한눈금의 간격을 최소 40mS 단위부터 측정할 수 있습니다.

Stop 보턴을 누르면 캡쳐를 중지합니다. [A], [B] 커서를 조정하여 커서간의 시간간격을 측정해 볼 수 있으며, 표

시할 릴레이의 종류를 다시 선택할 수도 있습니다.

Page 44: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

44

A 지점을 클릭하면, 다음과 같은 팝업창이 표시됩니다. 여기에서 표시하고자 하는 릴레이를 바꿀 수 있습니다.

Page 45: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

45

메뉴 설명 파일 (File) 메뉴 메뉴 설명

새로만들기 새로운 파일을 작성하기 위해 BASIC 과 LADDER 영역을 모두 클리어 합니

다.

열기 저장해 놓은 CUBLOC 파일을 불러옵니다.

레더 IMPORT 저장해 놓은 CUBLOC파일 중 LADDER만 읽어서, 현재 LADDER편집영역

의 커서가 있는 부분에 삽입시킵니다. 다른 파일에서 레더만 가져올 때 사용

하는 메뉴입니다.

저장하기 편집중인 내용을 파일로 저장합니다.

다른 이름으로 저장 다른 이름으로 저장합니다.

오브젝트만 저장 소스형태로 저장하지 않고, 오브젝트형태로 저장합니다. 오브젝트로 저장한

파일은 소스로 변환되지 않으므로, 소스 유출을 방지할 수 있습니다. 오브젝

트로 저장한 파일은 아래 “오브젝트 다운로드”에 의해서 다운로드만 가능할

뿐, 편집할 수 없습니다.

LADDER인쇄 LADDER영역에 있는 레더소스를 프린터로 출력합니다. 아래의 프린터 설정

을 먼저 하신 후 사용하시기 바랍니다.

BASIC인쇄 BASIC소스를 프린터로 출력합니다. 프린터 설정을 한 뒤, 프린트하도록 되

어 있습니다.

프린터 설정 LADDER영역 프린트를 위한 프린터 설정 창을 띄웁니다.

오브젝트 다운로드 오브젝트 파일을 CUBLOC 모듈로 다운로드 합니다.

BASIC편집모드로.. BASIC편집모드로 이동합니다. F1을 누른 것과 동일합니다.

LADDER편집모드로.. LADDER편집모드로 이동합니다. F2를 누른 것과 동일합니다.

최근 편집파일 최근에 편집한 파일 4개를 보여줍니다. 이중 하나를 선택하면, 오픈됩니다.

끝내기 CUBLOC STUDIO를 종료합니다.

실행 (Run) 메뉴 메뉴 설명

실행 BASIC 과 LADDER 를 모두 컴파일하고, 에러가 없으면 CUBLOC

모듈로 다운로드 후 실행합니다.

다운로드 후 자동으로 실행하는 것을 원치 않을 경우, 설정(Setup)

의 Studio Option에서 변경할 수 있습니다.

리셋 CUBLOC모듈을 리셋 시킵니다.

LADDER모니터링 시작 LADDER모니터링을 시작합니다.

BASIC디버그 터미널 BASIC 디버그 터미널을 표시합니다.

소스 중 DEBUG명령이 있다면, RUN후 자동으로 표시됩니다.

CUBLOC 플레쉬 메모리 지움 CUBLOC 플레쉬 메모리의 내용을 모두 클리어 합니다.

릴레이 사용현황 보기 (컴파일 후) 레더에서 사용한 릴레이를 보여줍니다.

문법체크 문법의 이상유무만 체크해 줍니다.

편집 (Edit) 메뉴는 메뉴의 제목만 읽어봐도 알 수 있는 일반적인 내용이므로 별도로 설명하지 않겠습니다.

Page 46: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

46

설정(Setup)메뉴 메뉴 설명

PLC 셋업 마법사 레더를 위한 베이직 소스 자동 생성 마법사

PC인터페이스 설정 PC와의 인터페이스를 위한 RS232 COM PORT를 선택하는 메뉴입니다.

COM 1 ~ 4중 하나를 선택합니다.

에디터 환경 설정 BASIC 텍스트 에디터의 환경을 설정하는 메뉴입니다.

레더로직 환경설정 CUBLOC Studio의 세부상황을 선택할 수 있는 메뉴입니다.

영문메뉴로 전환 영문메뉴로 전환해줍니다. 영문메뉴 상태에서 이 자리에는 Use Korean

menu로 바뀝니다. Use Korean menu를 선택하면 다시 한글 메뉴상태로

복귀됩니다.

한글 메뉴상태에서 모든 에러멧세지는 한글로 표시되고, 영문 메뉴상태에

서 모든 에러멧세지는 영문으로 표시됩니다.

펌웨어 다운로드 CUBLOC CORE의 펌웨어를 다운로드 합니다. 이 메뉴를 사용하지 않아

도, RUN시에 STUDIO에서 펌웨어 업그레이드 여부를 판단하여, 질문 창

을 띄워줍니다.

Studio 옵션 설정 창에 대한 자세한 설명입니다.

기계와 연결이 되어 있는 상황에서는 다운로드 후 자동으로 실행하도록 하면 기계동작에 무리가 발생할 가능성이

있습니다. 다운로드 후 자동실행 옵션을 OFF 하게 되면, CUBLOC 은 다운로드 후 정지상태로 머물러 있습니다.

이때 RESET 보턴을 누르거나, CUBLOC 의 전원을 OFF – ON 하게 되면 실행됩니다.

도움말 메뉴에는 CUBLOC 의 사용설명서와 오늘의 팁, 업그레이드 정보, CUBLOC Studio 의 현재 버전 등을 볼

수 있는 메뉴가 있습니다.

Page 47: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

47

PLC 셋업 마법사

CUBLOC 에서 LADDER 를 사용하기 위해서는 기본적인 BASIC 코드를 작성해 주어야 합니다. 간단한 소스지만,

BASIC 를 잘 모르는 분에게는 부담스러운 일이 아닐 수 없습니다. 그래서 큐블록 스튜디오에서는 “PLC 셋업 마

법사”기능을 제공하고 있습니다.

화면에서 볼 수 있듯이 디바이스명과 I/O 상태, 각종 기능의 사용여부를 단지 클릭해주기만 하면 BASIC 코드를

생성해 줍니다.

Alias 는 M0=ABCD 와 같이 릴레이명과 별명만 한 줄에 하나씩 작성해 줍니다. Modbus 를 사용한다면 use

MODBUS on CH1 을 체크하시고, 바로 아래에 있는 보레이트와 프로토콜을 맞춰주기만 하면 됩니다.

Page 48: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

48

생성중인 BASIC 코드의 상태는 상단 탭 [Output BASIC code review]를 누르면 볼 수 있습니다.

A/D 와 PWM, COUNT 와 같은 기능들은 특정 D 영역으로 중계하는 방식으로 사용할 수 있습니다. 예를 들어

ADC0 을 체크했다면, A/D 채널 0 의 변환 값이 D(10)영역에 저장되므로 사용자는 D10 영역을 읽어오기만 하면

A/D 채널0 의 값을 알 수 있습니다.

PWM 의 경우, D29 에 특정 값을 써넣으면 이 값이 PWM3 번 채널에 자동적으로 출력됩니다. HIGH COUNT1 을

체크했다면 고속카운터1 의 내용을 D39 에서 읽어볼 수 있습니다. 나중에 BASIC 부분을 수정한다면 D 영역의 위

치를 유저가 임의대로 변경할 수 도 있습니다.

작성이 모두 끝났으면 [Replace Basic Code]를 누르면 최종상태가 BASIC 영역으로 저장됩니다. 이전에 있던 베

이직 소스는 모두 지워지게 되므로 주의하시기 바랍니다. 이전 소스상태를 저장할 것인지 물어보는 박스가 표시

됩니다. 이 때 YES 를 선택하시면, 이전소스의 상태를 별도파일로 저장할 수 있습니다.

셋업상태를 별도의 파일로 저장해 두려면 화면 하단에 있는 [SAVE AS..]를 누르면 됩니다. 나중에 [LOAD…]를

누르면 다시 이전 상태를 불러올 수 있습니다. 큐블록 동작을 위해서 셋업상태를 꼭 저장해야 하는 것은 아닙니다.

어차피 BASIC 상태로 변화된 소스 파일이 레더와 함께 저장되기 때문입니다. 셋업파일을 따로 저장하는 것은

BASIC 코드를 유저가 변경했을 경우, 다시 원래 상태로 되돌리거나 다른 프로그램을 만들 때 참고하고기 위해서

입니다.

Page 49: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

49

릴레이 사용현황 보기

레더로직을 작성하다 보면, 특정릴레이를 사용했는지 궁금한 경우가 발생합니다. 이 메뉴를 사용하면 지금 현재

여러분이 작성한 레더로직에서 사용된 릴레이를 모두 볼 수 있습니다. 다운로드 한 뒤, 실행메뉴-> 릴레이 사용

현황 보기를 클릭하면 다음과 같은 윈도우가 표시됩니다.

이 목록을 참조하면 사용하지 않은 릴레이를 쉽게 알 수 있으므로, 소스 추가 및 수정에 도움이 됩니다.

Page 50: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

50

MEMO

Page 51: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

51

제 4 장

레더로직의 기초

Page 52: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

52

LADDER 의 기초

하나의 스위치와 하나의 램프가 있는 회로를 동작시키기 위해서는 다음과 같은 회로가 필요합니다.

이 회로에서 전원을 생략하고 그리면 아래 그림처럼 표현할 수 있습니다. 양쪽의 두 선이 전원 선입니다.

이 회로를 LADDER LOGIC 으로 표현하면 다음과 같습니다.

P0 P9

이처럼, LADDER 로직은 전기 회로를 알기 쉬운 기호로 표시한 것입니다. 회로를 구성하는 스위치, 램프 등의

“기초소자”가 있고, 이 기초소자는 특정 포트나 메모리의 일부분에 연결되어 있습니다. 위의 그림에서 스위치는

P0 포트에 연결하고 램프를 P1 포트에 연결하는 상황을 가정한 것입니다.

이외에도 “타이머”,”카운터”등의 다양한 소자들과 이들을 서로 연결하는 방법으로 “AND”연결, “OR”연결등이 등

장합니다. 다음은 OR 연결과 AND 연결이 있는 레더도입니다.

Page 53: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

53

P0

P3

P2 P9

이 회로에서 P0 과 P2 는 AND 연결이고, P0 과 P3 는 OR 연결이 된 것입니다. 이 레더도를 CUBLOC STUDIO

상에서 표현하면 다음과 같습니다.

CUBLOC STUDIO 에서는 오른쪽 모선이 생략되어 있습니다. 이 그림에서 P0, P1, P2 로 이름 붙여진 곳을 “릴레

이”라고 합니다. PLC 에서의 “릴레이”는 우리들이 알고 있는 부품형태의 “릴레이”라기 보다는 메모리의 일부분이

라고 할 수 있습니다.

Page 54: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

54

레더 로직 다이어그램의 기본 구성

레더로직은 다음과 같은 레더 다이어 그램으로 표현합니다. 레더 다이어그램은 “모선, 입력접점, 출력접점, 신호

선”등으로 구성됩니다. (원래는 왼쪽에도 모선이 있지만, 큐블록에서는 왼쪽 모선을 생략하고 있습니다.)

A 접점, B 접점

A 접점은 평상시 열려있다가 신호가 들어오면 닫히는 “Normal Open” 입력입니다. 이와 반대로 B 접점은 평상시

닫혀있다가 신호가 들어오면 열리는 “Normal Close”입력을 말합니다.

(A) Normal Open (B) Normal Close

기능 릴레이 심볼

기능 릴레이 (Function Relay)는 타이머,카운터,연산명령 등의 기능을 가지고 있는 릴레이 표현을 말합니다.

Function Relay

Page 55: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

55

니모닉과 레더로직 다이어그램

초창기의 PLC 는 다음과 같은 니모닉 (논리명령어) 을 직접 입력하는 방식으로 레더 프로그램을 작성했습니다.

LOAD P0

AND P1

OUT P2

END

이런 방식보다는 레더로직 다이어그램으로 프로그램 하는 방식이 훨씬 더 레더를 쉽게 이해할 수 있고, 유지보수

하기에도 간편하기 때문에, 최근에는 레더 로직 다이어그램으로 프로그램 하는 것이 보편화 되어 있습니다.

레더 로직 다이어 그램은 결국 “니모닉”으로 변환되어 PLC 에 저장됩니다. 위의 레더의 경우 다음과 같은 니모닉

으로 변환되어 저장됩니다.

LOAD P0

OR P3

ANDN P2

OUT P9

END

PLC 메이커에 따라 니모닉 입력방식을 지원하고 있는 회사도 있지만, “큐블록”에서는 레더로직 다이어그램 입력

방식만을 지원합니다. (큐블록 스튜디오에서는 레더로직 다이어그램이 어떻게 니모닉으로 변환되었는지를 확인할

수 있는 볼 수 있습니다.)

Page 56: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

56

릴레이 표현

CB220, CB280, CB320, CB380, CB400 에서의 릴레이 CB220, CB280, CB320, CB380 에서 사용할 수 있는 릴레이를 정리한 표입니다.

릴레이 명칭 범위 단위 기능

입출력 릴레이 P P0~P127 1 비트 외부 기기와의 인터페이스

내부릴레이 M M0~M511 1 비트 내부 상태의 보존

특수기능 릴레이 F F0~F127 1 비트 시스템 상태

타이머 T T0~T99 16 비트 (1워드) 타이머용

카운터 C C0~C49 16비트 (1워드) 카운터용

스텝제어 S S0~S15 256스탭( 1바이트) 스텝제어용

데이터 영역 D D0~99 16비트 (1워드) 데이터보관

P,M,F 는 비트단위로 되어 있고, T,C,D 는 워드단위로 되어 있습니다. 비트 영역으로 되어 있는 P, M, F 를 워드단

위로 억세스 하려면 WP, WM, WF 을 사용해야 합니다.

릴레이 명칭 범위 단위 기능

WP WP0~7 16 비트 (1워드) P영역의 워드단위 억세스

WM WM0~WM31 16비트 (1워드) M영역의 워드단위 억세스

WF WF0~WF7 16비트 (1워드) F영역의 워드단위 억세스

WP0 는 P0~P15 까지의 내용을 담고 있으며, P0 이 가장아래쪽(LSB)에 P15 가 가장 위쪽(MSB)에 위치합니다.

WMOV 등과 같은 응용명령어 군에서 사용하면 편리합니다.

Page 57: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

57

CB290, CB405 에서의 릴레이 CB290, CB405 에서 사용할 수 있는 릴레이를 정리한 표입니다. CB220, 280 보다 일부 릴레이(M, C, T, D)가 확

장되었습니다.

릴레이 명칭 범위 단위 기능

입출력 릴레이 P P0~P127 1 비트 외부 기기와의 인터페이스

내부릴레이 M M0~M2047 1 비트 내부 상태의 보존

특수기능 릴레이 F F0~F127 1 비트 시스템 상태

타이머 T T0~T255 16 비트 (1워드) 타이머용

카운터 C C0~C255 16비트 (1워드) 카운터용

스텝제어 S S0~S15 256스탭( 1바이트) 스텝제어용

데이터 영역 D D0~D511 16비트 (1워드) 데이터보관

P,M,F 는 비트단위로 되어 있고, T,C,D 는 워드단위로 되어 있습니다. 비트 영역으로 되어 있는 P, M, F 를 워드단

위로 억세스 하려면 WP, WM, WF 을 사용해야 합니다.

릴레이 명칭 범위 단위 기능

WP WP0~7 16 비트 (1워드) P영역의 워드단위 억세스

WM WM0~WM63 16비트 (1워드) M영역의 워드단위 억세스

WF WF0~WF7 16비트 (1워드) F영역의 워드단위 억세스

WP0 는 P0~P15 까지의 내용을 담고 있으며, P0 이 가장 아래쪽(LSB)에 P15 가 가장 위쪽(MSB)에 위치합니다.

WMOV 등과 같은 응용명령어 군에서 사용하면 편리합니다.

P0WP0

WP1

WP2

WP3

P15

P31 P16

P32

P48

P47

P63

Page 58: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

58

내부 릴레이

내부 릴레이 (M)은 프로그램상에서만 동작하는 릴레이입니다. ON/ OFF 상태를 따로 OUTPUT 포트에 연결하지

않은 이상, 외부에 출력되지 않습니다. M 릴레이는 출력심볼에 사용할 수도 있고, 입력심볼에 사용할 수도 있습니

다.

P 릴레이 중 사용하지 않는 영역

CUBLOC 은 P0~P127 까지의 P 릴레이를 지원합니다. P 릴레이는 외부 I/O 포트와 1:1 로 연결되어 있습니다.

CUBLOC 모델 중 대부분은 128 개 보다 적은 수의 I/O 포트만을 가지고 있습니다. 이 경우 사용하지 않는 나머지

P 영역은 M 영역처럼 사용할 수 있습니다.

Page 59: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

59

I/O 포트의 사용

CUBLOC 의 I/O 포트는 BASIC 과 LADDER 에서 모두 사용할 수 있는 “공용 자원”입니다. 특별한 정의를 하지

않는다면, 모든 I/O 포트는 BASIC 쪽으로 할당됩니다. LADDER 에서 콘트롤 하려면 “Usepin” 명령을 사용해서,

“앞으로 이 I/O 포트는 LADDER 에서 사용할 것임”을 분명하게 선언해주어야 합니다.

USEPIN 0,IN USEPIN 1,OUT

0 번포트를 입력으로 1 번포트를 출력으로 만들고, LADDER 에서 사용하는 포트로 셋팅합니다. USEPIN 으로 선

언된 포트는 LADDER 에서 “리플레쉬”합니다. “리플레쉬”란 레더 시작 전에 I/O 상태를 읽어서 P 영역

에 저장한 뒤, 레더수행 뒤 P 영역의 내용을 I/O 포트로 다시 써넣는 작업을 말합니다.

INPUT REFLASH

LADDER SCAN

OUTPUT REFLASH

BASIC 에서도 IN, OUT 명령 등으로 I/O 포트를 조작할 수 있는데, 이 것은 직접 I/O 포트에서 값을 읽거

나, 써넣는 작업을 합니다. 따라서 LADDER 에서 사용하는 I/O 포트는 BASIC 에서 사용하는 I/O 포트와 구분

해서 관리할 필요가 있습니다.

USEPIN 으로 선언된 포트는 LADDER 에서만 사용할 수 있으며, 리플레쉬의 대상이 되므로, BASIC 에서는 억세

스 할 수 없게 됩니다.

USEPIN 0,IN, START USEPIN 1,OUT, RELAY

위와 같이 USEPIN 명령 뒷부분에 “별명”을 함께 지정할 수도 있습니다. 별명은 I/O 포트 및 릴레이를 쉽게 참조

할 수 있도록 도와주는 또 하나의 이름입니다. P 영역이 아닌 다른 영역은 ALIAS 명령을 사용해서 별명을 선언합

니다.

Page 60: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

60

별명의 사용

P0, P1, M0 과 같은 “릴레이 번호”만을 사용해서 LADDER LOGIC 을 작성할 경우, 나중에 판독하기 어려운 상태

가 됩니다. 실질적인 역할을 쉽게 알 수 있는 “별명”를 사용하면 보다 쉬운 LADDER LOGIC 을 작성 할 수 있습

니다.

이를 위해서 BASIC 부에서 이름을 정의해야 합니다. ALIAS 라는 명령을 사용하여 릴레이 번호에 “별명”을 할당

하게 됩니다. 아래BASIC 소스는 위 LADDER LOGIC 을 위한 최소한의 프로그램입니다.

ALIAS M0 = MAINMOTOR ALIAS M2 = STATUS1 ALIAS M4 = MOTORSTOP

I/O 영역인 P 릴레이는 USEPIN 명령에서 별명을 지정할 수도 있고, ALIAS 명령을 사용하여 별도로 별명을 지정

할 수도 있습니다.

레더의 시작

CUBLOC 은 BASIC 부터 실행이 시작됩니다. BASIC 에서 LADDER 를 시작할 수 있도록 “SET LADDER ON”명

령을 써주어야 합니다. 이 명령이 실행되면 LADDER 가 일정한 시간간격(스캔타임 : 10mS)으로 실행됩니다.

SET LADDER ON

* BASIC 에서 SET LADDER ON 명령을 써주지 않으면 LADDER LOGIC 이 있어도 실

행되지 않습니다.

Page 61: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

61

사용 디바이스 선언

여러 개의 CUBLOC 모델 중 어떤 디바이스를 사용하는지 컴파일러에게 알려주어야 합니다. 이를 위해서 CONST

DEVICE 명령을 사용합니다.

CONST DEVICE = CB220 ‘ CB220 모델을 사용합니다.

이 명령은 반드시 소스프로그램의 가장 첫 번째 줄에 위치해야 합니다.

이 명령을 생략했을 때에는 초기값인 “CB220”모델이 선택됩니다.

CONST DEVICE = CB220 ‘ CB220 모델을 사용합니다. CONST DEVICE = CB280 ‘ CB280 모델을 사용합니다.

주의사항 사용하는 모델에 따라서 지원하지 않는 명령이나, 다른 형식으로 지원하는 명령이 있을 수 있습니다. 이러한 명령

들에 대해서는 해당제품의 사용설명서를 참조하시기 바랍니다. 본 사용설명서는 CUBLOC CB2XX 시리즈를 기준

으로 설명하고 있습니다.

Page 62: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

62

Ladder 실행을 위한 최소한의 BASIC 프로그램

LADDER 를 실행하기 위해서는 다음과 같이 “디바이스 선언”, “포트선언”, “LADDER 실행 개시”등을 위한 최소한

의 BASIC 프로그램이 필요합니다. 실제로는 BASIC 프로그램이라기 보다 선언문으로만 구성된 리스트라고 볼 수

있습니다.

Const Device = CB280 '디바이스 모델을 선언 Usepin 0,In,START '레더에서 사용할 입출력 포트 Usepin 1,In,RESETKEY Usepin 2,In,BKEY Usepin 3,Out,MOTOR Alias M0=RELAYSTATE '별명 선언 Alias M1=MAINSTATE Set Ladder On '레더스캔의 시작 지시 Do Loop 'BASIC 프로그램이 필요 없다면 '이후부터는 아무것도 하지 않고 루프만 돌립니다.

Page 63: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

63

제 5 장

레더로직

기본명령어

Page 64: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

64

CUBLOC LADDER 명령요약

기본명령어

명령어 Symbol 설명

LOAD

A 접점 (Normal Open)의 시작

LOADN

B 접점 (Normal Close)의 시작

OUT

연산 결과 출력

NOT

NOT 이전의 연산결과를 반전

STEPSET 스탭 콘트롤러 출력 (순차제어용)

STEPOUT 스탭 콘트롤러 출력 (후입우선용)

MCS 마스터 콘트롤 시작

MCSCLR 마스터 콘트롤 종료

DF

입력조건 상승 시 1 스캔타임만 ON 출력

DFN

입력조건 하강 시 1 스캔타임만 ON 출력

SETOUT 출력을 ON 상태로 유지

RSTOUT 출력을 OFF 상태로 유지

END 프로그램의 종료

GOTO 무조건 분기

LABEL 라벨선언

CALLS 서브루틴 분기

SBRT 서브루틴 선언

RET 서브루틴 종료

Page 65: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

65

타이머

명령어 Symbol 설명

TON

0.01 초 단위 ON 타이머

TOFF

0.01 초 단위 OFF 타이머

TAON

0.1 초 단위 ON 타이머

TAOFF

0.1 초 단위 OFF 타이머

KTON

0.01 초 단위 ON 타이머 (전원ON 시 초기화 하지 않음)

KTAON

0.1 초 단위 ON 타이머 (전원ON 시 초기화 하지 않음)

카운터

명령어 Symbol 설명

CTU

UP 카운터

CTD

DOWN 카운터

KCTU

UP 카운터 (전원 ON 시 초기화 하지 않음)

KCTD

DOWN 카운터 (전원 ON 시 초기화 하지 않음)

Page 66: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

66

LOAD,LOADN,

OUT

LOAD 는 A 접점의 시작, LOADN 은 B 접점의 시작입니다. OUT 은 출력접점입니다.

LOAD

LOADN

OUT

LOAD, LOADN, OUT 명령에 사용할 수 있는 릴레이를 정리한 표입니다.

가능영역 P M F S C T D 상수

LOAD

LOADN

O O O O O O

OUT O O

P 릴레이는 I/O 포트에 연결되어 있으므로, 포트로부터 입출력 되는 상황이 그대로 전달됩니다. M.F 등 다른 릴레

이는 메모리 내부에 저장되는 것이므로 외부 I/O 포트에 전달되지 않습니다.

P0

P2

P1

P3

Page 67: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

67

DEMO PROGRAM 다음 샘플 프로그램을 입력 후 실행시키면, P0 에 연결된 스위치의 동작에 따라 P2 에 연결된 LED 가 점멸됩니다.

베이직 쪽에는 아래 내용을 입력하세요.

Const Device = CB280 Usepin 0,In Usepin 2,Out Set Ladder On Do Loop

레더 로직은 아래 그림을 참고하여 입력하세요.

실험하기 위한 회로도는 다음과 같이 구성합니다.

P0

P2

CB280 5V

Page 68: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

68

CUBLOC STUDY BOARD-1 을 가지고 계신 분은 아래 그림처럼, 점퍼선 2 개를 사용하여 간단하게 배선하신

뒤 실험할 수 있습니다.

0

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 70 1 2 3 0 1 2 3 4 5 6 7

8 16

24 32 40

LED OUTPUT A/D INPUT TOGGLE INPUT PUSH S/W INPUT

지금 다운로드 한 레더로직이 어떻게 변환되었는지 보려면, “Ladder Mnemonic” 탭을 클릭하면 됩니다.

일부 명령은 본 사용설명서에서 설명하고 있는 명령과 다른 형태로 기록됩니다만, 실제 동작에 영향을 주지는 않

습니다. 예를 들어, OUT 명령은 OT 명령으로, END 명령은 RET 명령으로 기록됩니다. 각 줄의 뒷부분에 있는 ;

__POS 이후 영역은 시스템에서 참조하는 코멘트이며, 실제로는 번역되지 않습니다.

이 기능을 특별히 사용할 필요가 있는 것은 아닙니다. 다만, 여러분이 작성된 레더 로직 다이어그램이 어떤 니모

닉으로 변환되었는지 확인하고 싶을 때, 사용하시면 됩니다.

Page 69: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

69

PLC SETUP WIZARD 사용법

DEMO PROGRAM 에서 작성한 BASIC 소스를 “PLC SETUP WIZARD”를 사용해서 자동생성 해보겠습니다.

CUBLOC STUDIO 의 최초상태는 아래화면처럼 텅 빈상태입니다. (New 를 누르면, BASIC 과 레더영역이 모두 지

워집니다.)

Page 70: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

70

디바이스를 CB280 으로 바꾸고, I/O MAP 에서 P0 과 P2 를 USE 체크하고, 입출력상태를 조정합니다. 아래 화면

을 참조하세요.

다, 조정하셨으면, 하단에 있는 “Replace Basic Code”를 누릅니다.

이전 소스를 저장하겠냐고 물어보면, No 를 선택합니다.

“지금 현재 BASIC 코드가 지워집니다. 그래도 계

속하시겠습니까?” 라고 물어봅니다. YES 를 선택

하세요.

Page 71: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

71

베이직 탭을 누르면, 다음 화면처럼 BASIC 코드가 자동 생성되어 있는 것을 확인할 수 있습니다. 단순히 레더로

직만 사용하실 분들은 일일이 베이직 코드를 작성하지 않고 “PLC SETUP WIZARD”를 이용하세요.

WIZARD 화면하단에 위치한 LOAD SAVE AS… 버튼은 레더로직을 SAVE 하거나 LOAD 하는 기능이 아닙니

다. 이 버튼은 WIZARD 셋업상태를 저장하고 불러올 수 있는 기능입니다. BASIC 이나 LADDER LOGIC 과는 아

무 상관도 없습니다.

Page 72: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

72

NOT,

AND,OR NOT Symbol

AND

OR

NOT 심볼을 만나면 직전까지의 연산결과를 반전시킵니다. 화면 상단의 NOT 심볼을 누르거나 슬레쉬 “/” 키를 누

르면 커서위치에 NOT 이 표시됩니다.

이 레더는 다음과 같이 써도 동일한 동작을 수행합니다. 즉 A 접점과 NOT 이 만나면 B 접점과 같은 동작을 수행

합니다.

AND 연산을 하려면 입력심볼을 나란히 위치시키면 됩니다. 두 개의 입력조건이 모두 “True”일때 연산결과도

“True”가 됩니다.

OR 연산을 하려면 위아래로 입력심볼을 위치시킵니다. 두 개의 입력조건 중 하나라도 “True”가 되면 연산결과도

“True”가 됩니다.

Page 73: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

73

DEMO PROGRAM 다음 샘플 프로그램을 입력 후 실행시키면, P0, P1 에 연결된 스위치의 동작에 따라 P2 에 연결된 LED 가 점멸됩

니다. 베이직 부분에는 아래 코드를 입력해 주십시오.

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

먼저 AND 를 실험해볼 수 있는 레더로직입니다.

회로는 다음과 같이 구성하여 주십시오.

P1

P0

P2

CB280

5V

5V

P0 과 P1 의 스위치를 모두 눌러야, P2 에 연결된 LED 에 불이 들어오는 것을 확인할 수 있습니다.

Page 74: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

74

이것은 AND 논리게이트와 같은 회로로 설명될 수 있습니다.

같은 회로도에서 다음과 같이 레더로직을 바꾸어 입력한 뒤 실행시켜 보세요! 이것은 OR 명령을 실험해 볼 수 있

는 레더로직입니다.

이것은 OR 논리 게이트와 같은 회로로 볼 수 있습니다.

Page 75: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

75

ANDS,ORS

다음과 같은 경우에는 블록단위의 AND, OR 연산으로 번역됩니다.

BLOCK AND

BLOCK OR

블록단위 논리연산이 왜 필요한지 알아보도록 하겠습니다. 블록단위 논리연산이라는 개념을 적용하지 않고, 아래

레더 다이어그램을 니모닉으로 한번 변환을 해보겠습니다.

LOAD P0

OR P1

AND P3

OUT P2

얼핏 보면 이렇게 번역될 것 같습니다. 하지만 이렇게 번역한다면, 아래처럼 동작되고 맙니다.

위의 P0 와 아래의 P1 AND P3 연산을 다른 블록으로 나누어 생각해야 합니다.

Page 76: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

76

다음 레더 다이어그램을 큐블록에서는 어떻게 번역하는지 보겠습니다.

P0 를 먼저 LOAD 한 뒤, 다시 새롭게 P1 을 LOAD 합니다. 레더에서 새로운 연산을 시작할 때에는 LOAD 명령으

로 시작합니다. 이때 이전 연산의 결과는 특정장소에 백업해 놓습니다. LOAD P1 이후에 P3 와 AND 연산을 합니

다.

그리고 백업해 놓은 이전상태와 현재의 상태를 서로 OR 연산합니다. 이때 사용하는 OR 연산은 기존 OR 연산과

구분할 필요가 있습니다. 그래서 블록간의 OR 연산을 의미하는 ORS 명령어를 사용합니다.

Page 77: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

77

다음은 두 개의 AND 블록이 있는 경우입니다.

이 경우는 아래와 같이 번역됩니다.

P0 OR P1 의 결과와 P3 OR P4 의 결과를 서로 블록간 AND 하는 것입니다. 이 경우에도 기존의 AND 연산

과 구분하기 위해서 ANDS 명령어가 사용됩니다.

LOAD P0OR P1

LOAD P3OR P4

ANDS

블록간 AND, OR 연산을 유저 여러분이 신경 쓸 필요는 없습니다. 큐블록 스튜디오에서 자동적으로 알아서 처리

해주기 때문입니다. 하지만 레더를 보다 깊숙이 이해하기 위해서 반드시 알아야 하는 개념입니다.

Page 78: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

78

SETOUT,

RSTOUT

SETOUT 은 입력이 있을 때 출력을 ON 하고, ON 상태를 계속 유지합니다. 반대로 RSTOUT 은 입력이 있을 때

출력을 OFF 한 뒤 OFF 상태를 계속 유지합니다.

SETOUT, RSTOUT 명령에서 사용할 수 있는 릴레이는 아래와 같습니다.

가능영역 P M F S C T D 상수

SETOUT O O O

RSTOUT O O O

위의 레더 실행결과를 타임챠트로 표시한 것입니다.

P0

P1

P5

DEMO PROGRAM 다음은 SETOUT, RSTOUT 의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력

하세요

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

Page 79: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

79

회로는 다음과 같이 구성하여 주십시오.

P1

P0

P2

CB280

5V

5V

P0 스위치를 누르면, P2 LED 가 켜집니다. 그리고 P0 스위치를 OFF 해도 P2 는 ON 상태를 유지합니다. 이후 P1

스위치를 누르면 P2 LED 가 OFF 됩니다.

Page 80: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

80

DF,

DFN

DF 는 입력조건에서 상승에지 (OFF -> ON) 상황이 발생하면 출력접점을 1 스캔시간 동안 ON 하는 명령입니다.

반대로, DFN 은 입력조건에서 하강에지 (ON -> OFF)상황이 발생하면 1 스캔시간 동안 OFF 하는 명령입니다.

DF

DFN

DF, DFN 은 심볼만으로 동작됩니다. 별도로 릴레이를 할당할 필요가 없습니다. DF, DFN 의 동작 파형은 다음과

같습니다.

P0

P1

P5

P6

1 SCAN

1 SCAN

*TinyPLC 3X 시리즈를 사용해보신 분들은 주의 깊게 보십시오. CUBLOC 에서는 더 이

상 DF, DFN 심볼 사용시 M 릴레이를 적어줄 필요가 없습니다.

Page 81: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

81

TON, TAON

입력 조건이 ON 이 되면 타이머 값이 증가되어, 설정 치에 도달하면 출력접점이 ON 됩니다. 시간 단위가 틀린 두

종류의 ON TIMER 가 있습니다.

타이머종류 분해능 최대치

TON 0.01초 655.35초

TAON 0.1초 6553.5초

TON, TAON 명령에는 2 개의 인수가 있습니다. 타이머번호는 T0~99 중 하나의 값을 지정하고, 설정 치로는 상

수 및 데이터영역 등을 사용할 수 있습니다.

가능영역 P M F S C T D 상수

설정치 O O O O

위의 LADDER 에서 START 입력이 들어오면 T0 타이머가 증가됩니다. 0.01 초마다 1 씩 증가되어 증가치가 100

(1 초경과) 이 되면 T0 접점이 ON 됩니다. TAON 을 사용한 T1 타이머의 경우에는 0.1 초마다 1 씩 증가되어 10

초가 경과되면 T1 접점이 ON 됩니다. 입력신호가 OFF 되면 타이머는 초기값으로 설정되고, 타이머 접점도 OFF

됩니다.

START

T0

1sec

TON, TAON 은 파워 ON 시 초기화되므로, 밧데리 백업 시 그 값이 유지 되지 않습니다. 밧데리 백업 시, 전원

OFF 후 다시 ON 된 상황에서 기존 값을 유지한 채 계속 타이머가 갱신되길 원한다면 KTON, KTAON 명령을 사

용하시기 바랍니다.

Page 82: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

82

DEMO PROGRAM 다음은 TON 의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요

Const Device = CB280 Usepin 0,In Usepin 2,Out Set Ladder On Do Loop

타이밍 차트를 사용해서 P0 과 T0, P2 의 상태를 체크

해 보면 왼쪽과 같이 표시됩니다.

P0 스위치를 누른 뒤 1 초 뒤에 T0 이 ON 되는 것을 볼

수 있습니다.

T0 을 입력접점으로 사용할 경우에는 TIMER 의 ON

/OFF 상태를 나타내는 접점과 동일합니다.

T0 을 P2 에 그대로 출력했으므로, T0 이 ON 되었을

때 P2 도 ON 됩니다.

Page 83: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

83

TOFF, TAOFF

입력 조건이 ON 이 되면 타이머접점은 바로 ON 됩니다. 이후 입력이 OFF 되면 타이머접점은 OFF 되지 않고, 설

정치 만큼의 시간이 경과된 뒤 OFF 됩니다. 시간 단위가 틀린 두 종류의 ON TIMER 가 있습니다.

타이머종류 분해능 최대치

TOFF 0.01초 655.35초

TAOFF 0.1초 6553.5초

TOFF, TAOFF 명령에는 2 개의 인수가 있습니다. 타이머번호는 T0~99 중 하나의 값을 지정하고, 설정치로는 상

수 및 데이터영역 등을 사용할 수 있습니다.

가능영역 P M F S C T D 상수

설정치 O O O O

위의 LADDER 에서 START 입력이 들어오면 T0 접점은 바로 ON 됩니다. 이후 START 접점이 OFF 된 뒤 타이

머가 증가됩니다. 0.01 초마다 1 씩 증가되어 증가치가 100 (1 초경과) 이 되면 T0 접점이 OFF 됩니다. TAON 을

사용한 T1 타이머의 경우에는 0.1 초마다 1 씩 증가되어 10 초가 경과되면 T1 접점이 OFF 됩니다.

START

T0

1sec

*KTOFF, KTAOFF 명령은 존재하지 않습니다. TOFF, TAOFF 명령은 파워ON 시 별도의 초기화 과정이 없기 때

문입니다.

Page 84: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

84

DEMO PROGRAM 다음은 TOFF 의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요

Const Device = CB280 Usepin 0,In Usepin 2,Out Set Ladder On Do Loop

P0 이 OFF 된 후에도 T0 이 1 초간 ON 상태를 유지합

니다.

P0

P2

CB280 5V

Page 85: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

85

DEMO PROGRAM - 플리커 프로그램 다음은 타이머를 이용해서 P2 포트를 일정한 주기로 깜박이도록 하는 레더로직 입니다.

Const Device = CB280 Usepin 0,In Usepin 2,Out Set Ladder On Do Loop

P2

CB280

Page 86: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

86

CTU

업 카운터 명령입니다. 입력이 들어오면 카운터 값을 1 증가 시킵니다. 카운터 값이 설정치와 일치하면 카운터 접

점을 ON 합니다. 리셋 입력이 들어오면 카운터 값은 0 이 됩니다.

PULSE

RESET

C0

100 pulse

CTD

다운 카운터 명령입니다. 입력이 들어오면 카운터 값을 1 감소 시킵니다. 카운터 값이 0 이 되면 카운터 접점을

ON 합니다. 리셋 입력이 들어오면 카운터 값은 설정치로 초기화 됩니다.

PULSE

RESET

C1

100 pulse

CTU, CTD 명령에서 설정치로 상수 및 데이터 영역(C,T,D)을 사용할 수 있습니다.

Page 87: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

87

DEMO PROGRAM 다음은 카운터의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

실행결과를 타이밍 차트로 볼 수 있습니다.

P0 가 5 번 ON 되었을 때, C0 가 ON 됩니다.

리셋신호인 P1 이 ON 되면 C0 이 OFF 됩니다.

Page 88: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

88

UP/DOWN COUNTER

CUBLOC 에서 별도의 업다운 카운터 명령이 준비되어 있지는 않지만 아래와 같이 입력하면 업다운 카운터를 사

용할 수 있습니다.

P0 가 UP 신호, P2 가 DOWN 신호, P1 이 RESET 신호가 됩니다. UP/DOWN 을 반복하다가 100 이 되면 C0 접점

이 ON 됩니다.

P0

P2

P1

C0COUNT

C0

Page 89: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

89

KCTU

KEEP 이 가능한 업 카운터 명령입니다. 기본적인 사항은 CTU 명령과 동일합니다. 다만, 밧데리 백업이 지원되는

큐블록 코어모듈 사용시, 전원 OFF 시 현재 상황을 기억하고 있다가, 전원 ON 후에도 지속적으로 카운트를 수행

하게 됩니다. 이에 반해 CTU 명령은 전원ON 시 초기값으로 자동 리셋 됩니다.

P0

P1

C0

100 pulse

Power off & on리셋 신호를 먼저

발생시켜 주어야 합니다

.

이 명령 사용시 최초의 카운터 값은 알 수 없는 값으로 셋팅되어 있을 수 있으므로, 카운터 리셋이 먼저 수행될

수 있도록 레더를 구성해 주어야 합니다. 즉, 최초 카운터 값 리셋에 대한 부분은 유저프로그램에서 담당해 주어

야 합니다.

KCTD

KEEP 이 가능한 다운 카운터 명령입니다. 기본적인 사항은 CTD 명령과 동일하며, KCTU 처럼 전원OFF 시 상황

을 기억하고 있다가, 전원 ON 후에도 지속적인 카운팅이 가능합니다.

* KCTU, KCTD 명령은 반드시 “밧데리 백업”이 지원되는 큐블록 코어 모듈에서만 사용하시기 바랍니다. CB220,

CB280 은 밧데리 백업이 지원되지 않는 모델입니다.

Page 90: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

90

MCS,

MCSCLR

레더를 블록단위로 나누어서 제어할 수 있는 명령입니다.

MCS (마스터 콘트롤)의 입력조건이 ON 하면 같은 번호를 가진 MCSCLR 까지 실행하고, 입력조건이 OFF 이면

실행하지 않습니다. LADDER LOGIC 중 특정블록을 ON 하거나 OFF 할 수 있는 명령입니다.

MCS번호 (0~7)

M0 가 ON 되면 MCS 0 ~MCSCLR 0 사이에 있는 LADDER LOGIC 이 동작됩니다. M0 가 OFF 이면 동작되지 않

고, P5 와 P6 출력은 OFF 상태가 됩니다.

MCS 번호는 0 에서 7 까지 사용 가능합니다. 0 부터 사용해서, 1, 2, 3 순으로 증가해야 하며, 0 번 블록 안에 1 번

블록이 있어야 하고, 1 번 블록 안에 2 번 블록이 있어야 합니다. 이런 식으로 7 번 블록까지 사용할 수 있습니다.

MCSCLR 명령은 블록을 해제하는 명령입니다. 2 번 블록을 해제 하면, 2 번 블록은 물론, 3 번 이후의 블록까지 모

두 해제됩니다. 0 번 블록을 해제하면 모든 MCS 블록이 해제됩니다.

MCS 입력조건이 OFF 일 경우 해당 블록 안에 있는 모든 출력은 OFF 되고, 타이머는 리셋 되며, 카운터는 정지됩

니다. MCS OFF 시 상황을 표로 정리하면 다음과 같습니다.

명령어 MCS가 ON일 때 MCS가 OFF일 때

OUT 정상동작 무조건 OFF

SETOUT 정상동작 MCS가 OFF되기 전 상황을 유지

RSTOUT 정상동작 MCS가 OFF되기 전 상황을 유지

타이머 정상동작 초기값으로 리셋

카운터 정상동작 MCS가 OFF되기 전 상황을 유지

기타명령 정상동작 동작안함

Page 91: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

91

다음은 MCS 명령의 중첩 사용 예입니다. 낮은 번호 안에 큰 번호의 블록이 들어가도록 해야 합니다.

*만약 중첩할 필요가 없다면 MCS 0 번만 연속적으로 사용하면 됩니다.

Page 92: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

92

DEMO PROGRAM 다음은 마스터 콘트롤의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요.

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

MCS 0 블록 안에는 “플리커 프로그램”이 들어가 있습

니다. P0 에 있는 스위치를 ON 상태로 해주어야, P2 에

연결된 LED 가 점멸하는 것을 확인할 수 있습니다. 즉

P0 이 MCS0 번 블록을 제어하는 것입니다.

P0

P2

CB280 5V

Page 93: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

93

스탭 콘트롤

스탭 콘트롤에는 S 릴레이가 사용됩니다. S 릴레이의 표기방법은 다음과 같습니다.

S7:126

조 까지 사용가능 : 0~ 15

스탭번호 까지 사용가능 : 0~ 255

스탭 콘트롤에는 “순차제어”와 “후입우선제어”가 있습니다. 순차제어란 말 그대로, 순서대로 스탭이 증가되는 것

을 의미합니다. 이를 위해 STEPSET 명령을 사용합니다.

STEPSET

동일조의 바로 전 스탭이 ON 되었을 때, 현재 스탭이 ON 되고, 이전 스탭은 OFF 됩니다. 순차적으로만 ON 되기

때문에 순차제어라고 부릅니다. 위의 예에서 동작상황을 설명하면, P1 이 ON 되면 0 조의 2 번 스탭을 ON 하려고

시도합니다. 이때 1 번 스탭이 ON 상태였다면 2 번 스탭이 ON 됩니다. 그리고 1 번 스탭은 OFF 됩니다. P2 가 ON

되면 0 조는 0 번 스탭으로 무조건 돌아갑니다. 0 번 스탭은 리셋용도로 사용합니다. 다음은 위의 LADDER 회로가

동작하는 경우를 타임차트로 표현한 것입니다.

P0

P1

P2

S0:0

S0:1

S0:2

Page 94: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

94

DEMO PROGRAM 다음은 STEPSET 의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요.

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Usepin 3,In Set Ladder On Do Loop

레더로직은 아래 그림을 보고 입력하세요!

Page 95: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

95

회로는 다음과 같이 P0, P1, P3 에는 스위치를 연결하고, P2 에는 LED 를 연결합니다.

이 프로그램을 다운로드 후 P3 스위치를 누르면 STEP 상태는 RESET 됩니다. 이 상태에서 P1 스위치를 눌러도

MCS 0 블록이 동작하지 않습니다. P0 스위치를 눌러서 STEP 1 상태로 만들어 놓은 뒤, 이 상태에서 P1 스위치를

눌러야 MCS 0 블록이 동작하고 P2 에 연결된 LED 가 점멸합니다. 이처럼 어떤 상황이 준비된 뒤, 다음상황을 허

락하는 용도로 스탭콘트롤을 사용합니다.

Page 96: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

96

STEPOUT

“후입우선”방식의 스탭제어에 대하여 설명합니다. 동일조에서 여러 개의 입력이 들어와도 가장 나중에 들어온 스

탭만 ON 되고, 나머지 스탭은 OFF 됩니다.

P1 이 ON 되면 0 조의 2 번 스탭이 ON 됩니다. P0 이 ON 되면 0 조의 1 번 스탭이 ON 됩니다. 무조건 나중에 들

어온 입력이 ON 되고 나머지는 자동적으로 OFF 됩니다. 한번 결정된 상태는 다른 입력이 있을 때까지 계속 유지

됩니다.

P0

P1

P2

S0:0

S0:1

S0:2

이 타이밍도에 의하면 0 조의 2 번 스탭이 들어온 뒤, 1 번 스탭이 나중에 들어온 것을 되어 있습니다. 1 번 스탭이

먼저 들어오고 2 번 스탭이 나중에 들어온 경우에는, 2 번 스탭이 ON 되고 나머지는 OFF 됩니다. 순서에 상관없이

무조건 나중에 들어온 것 하나만 ON 되는 상황입니다.

스탭 콘트롤은 공정처리에 사용됩니다. 1 공정, 2 공정, 3 공정이 차례대로 수행되는 회로가 필요한 경우,

STEPSET, STEPOUT 명령을 사용하면 S 릴레이를 일정한 상태로 설정할 수 있습니다. 이렇게 해서 상태가 결정

된 S 릴레이를 MCS 등과 연계하여 사용하는 방법으로 공정제어를 할 수 있습니다.

S 릴레이는 자기 보존기능을 가지고 있습니다. 다른 입력이 있기 전까지는 현재상태를 유지하게 됩니다. 또한 S

릴레이의 한 조에는 반드시 하나의 출력만 ON 상태가 됩니다.

Page 97: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

97

비교명령

두 개의 워드(16 비트), 또는 더블워드(32 비트)값을 비교해서 조건을 만족하면 접점을 ON 합니다. 총 12 개의 비

교명령이 있습니다.

비교명령 비교대상 동작설명

=, s1, s2 워드(16비트) S1 과 s2가 서로 같을 때 접점이 On됩니다.

<>, s1, s2 워드(16비트) S1 과 s2가 서로 다를 때 접점이 On 됩니다.

>, s1, s2 워드(16비트) S1 > s2일 때 접점이 On됩니다.

<, s1, s2 워드(16비트) S1 < s2일 때 접점이 On됩니다.

>=, s1, s2 워드(16비트) S1 >= s2일 때 접점이 On됩니다.

<=, s1, s2 워드(16비트) S1 <= s2일 때 접점이 On됩니다.

D=, s1, s2 더블워드(32비트) S1 과 s2가 서로 같을 때 접점이 On됩니다.

D<>, s1, s2 더블워드(32비트) S1 과 s2가 서로 다를 때 접점이 On 됩니다.

D>, s1, s2 더블워드(32비트) S1 > s2일 때 접점이 On됩니다.

D<, s1, s2 더블워드(32비트) S1 < s2일 때 접점이 On됩니다.

D>=, s1, s2 더블워드(32비트) S1 >= s2일 때 접점이 On됩니다.

D<=, s1, s2 더블워드(32비트) S1 <= s2일 때 접점이 On됩니다.

아래와 같이 여러 개의 조건을 AND, OR 접속으로 사용할 수 있습니다.

D0 = T1 이고 C0 >= 99 이면 M0 이 ON 됩니다. 또는 D1 < 100 이고 C0 >= 99 이면 M0 이 ON 됩니다. 마치 베

이직에서 IF D0 = T1 AND C0 >= 99 ….와 같은 식으로 AND, OR 로 여러 개의 조건을 나열하는 것과 같습니다.

WM 을 쓰시면 16 개의 M 릴레이를 한꺼번에 비교하실 수 있습니다. WM0 은 M0 부터 M15 까지를 의미합니다.

같은 방법으로 WP 를 쓰시면 16 개의 P 릴레이를 한꺼번에 비교하실 수 있습니다.

Page 98: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

98

DEMO PROGRAM 다음은 비교명령의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요.

Const Device = CB280 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

P2 출력은 ON 이 됩니다. F2 릴레이는 전원 ON 시 (또는 다운로드 후) 한 스캔만 ON 되는 특수 릴레이 입니다.

주로 초기화 작업을 할 때 사용합니다. 위 레더로직은 WMOV 100, D0 으로 D0 영역에 100 이 저장되고, 곧 이

어서 D0 영역에 10 을 더해서, D2 영역에 저장합니다.

비교명령으로 D2 영역이 110 인지 검사했으므로, 당연히 결과는 TRUE 가 되고, P2 접점이 ON 이 됩니다.

모니터링 상태에서 D0, D2 영

역에 들어있는 값을 볼 수 있

습니다.

Page 99: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

99

제 6 장

레더로직

응용명령어

Page 100: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

100

응용명령어란

응용명령어는 주로 데이터이동, 산술연산, 논리연산에 관련된 명령입니다. 레더로직으로도 간단한 연산 및 데이터

처리가 가능하도록 도와주는 기능입니다.

D 영역에는 16 비트 값을 저장할 수 있습니다. 주로 D 영역에 있는 값을 서로 연산하거나, 이동할 때 응용명령어

를 사용합니다. 베이직에서 처리된 결과를 D 영역에 저장해 두었다가, 응용명령어를 사용해서 타이머 값으로 사용

할 수도 있습니다.

또는, 카운터 한 값을 응용명령으로 D 영역에 카피한 뒤, 베이직에서 가져다가 쓸 수도 있습니다. 이처럼 응용명

령어는 레더의 기능을 더욱더 확장할 수 있도록 도와주는 명령입니다. 모든 응용명령어는 다음과 같은 형식으로

사용합니다.

일정한 조건이 성립 되었을 때, Funtion Relay ( ) 위에 있는 명령어를 실행합니다. 위와 같이

한다면, M0 릴레이가 ON 되었을 때, WMOV 255,D0 명령을 수행합니다.

위 명령에서의 문제점은 M0 릴레이가 ON 되어 있는 동안 계속해서 WMOV 명령을 수행하고 있다는 것입니다.

따라서 이후, D0 영역에 다른 값을 넣을 수 없습니다.

그래서, M0 릴레이가 OFF 에서 ON 으로 바뀔 때, 딱 한번만 WMOV 명령을 수행하는 것이 필요합니다. 그렇게

하기 위해서 다음과 같이 레더를 구성해 줍니다.

이렇게 하면 M0 릴레이가 OFF -> ON 되는 시점에, 한번만 WMOV 255,D0 명령이 수행되므로, 이후 다른 라인

에서 D0 영역의 값을 바꿀 수 있습니다.

Page 101: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

101

응용명령어

명령어 파라메터 설명

전 송 명 령 군

WMOV s,d 워드 데이터 전송

DWMOV s,d 더블워드 데이터전송

WXCHG s,d 워드 데이터 교환

DWXCHG s,d 더블워드 데이터 교환

FMOV s,d,n 데이터 채움 명령

GMOV s,d,n 그룹전송 명령

증 감 명 령 군

WINC d 워드 1 증가 명령

DWINC d 더블워드 1 증가 명령

WDEC d 워드 1 감소 명령

DWDEC d 더블워드 1 감소 명령

사 칙 연 산 명 령 군

WADD s1,s2,d 워드 덧셈 명령

DWADD s1,s2,d 더블워드 덧셈 명령

WSUB s1,s2,d 워드 뺄셈 명령

DWSUB s1,s2,d 더블워드 뺄셈 명령

WMUL s1,s2,d 워드 곱셈 명령

DWMUL s1,s2,d 더블워드 곱셈 명령

WDIV s1,s2,d 워드 나눗셈 명령

DWDIV s1,s2,d 더블워드 나눗셈 명령

논 리 연 산 명 령 군

WAND s1,s2,d 워드 AND 연산 명령

DWAND s1,s2,d 더블워드 AND 연산 명령

WOR s1,s2,d 워드 OR 연산 명령

DWOR s1,s2,d 더블워드 OR 연산 명령

WXOR s1,s2,d 워드 XOR 연산 명령

DWXOR s1,s2,d 더블워드 XOR 연산 명령

회 전 명 령 군

WROL d 워드 1 비트 좌 회전 명령

DWROL d 더블워드 1 비트 좌 회전 명령

WROR d 워드 1 비트 우 회전 명령

DWROR d 더블워드 1 비트 우 회전 명령

알림 LADDER 명령은 본 제품의 기능향상을 위하여 추가될 수 있습니다. 추가된 명령어는 새로운 사용설명서에 기재

될 것입니다.

Page 102: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

102

워드와 더블워드 저장방식 레더로직에서는 정수만 취급할 수 있으며, 기본적으로 16 비트 (워드)단위를 기본단위로 합니다.

1 BYTE

1 WORD

DOUBLE WORD

워드 또는 더블워드를 메모리에 저장하는 방식에는 두 가지가 있습니다. LOW BYTE 부터 저장하는 방식과,

HIGH BYTE 부터 저장하는 방식입니다. 이중 CUBLOC 에서는 LOW BYTE 부터 저장하는 방식을 채택하였습니

다.

메모리 0 번지에 1 워드 1234H 를 저장하고, 5 번지에 더블워드 12345678H 를 저장하는 경우를 그림으로 표현한

것입니다. 단, 메모리번지 하나에 1 바이트의 값이 저장되는 경우입니다.

0123456789

78563412

3412

C, T, D 영역의 경우 1 워드단위로 되어 있어, 더블워드를 기억하기 위해서 2 워드의 기억장소가 필요합니다. 다음

은 D0 에 더블워드 값인 12345678H 저장하는 경우입니다. D1 위치에 상위워드인 1234H 가 저장됩니다.

D0D1D2D3D4

56781234

Page 103: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

103

2 진수와 10 진수, 16 진수

프로그램을 작성하기 위해서는 10 진수 이외에도 2 진수, 16 진수를 사용합니다. 다음은 2 진수와 10 진수, 16 진수

와의 관계를 정리한 표입니다. 16 진수에서는 10 부터 15 까지의 수를 표시하기 위해, A~F 까지의 알파벳을 사용

합니다.

10진수 2진수 16진수

0 0000 0

1 0001 1

2 0010 2

3 0011 3

4 0100 4

5 0101 5

6 0110 6

7 0111 7

8 1000 8

9 1001 9

10 1010 A

11 1011 B

12 1100 C

13 1101 D

14 1110 E

15 1111 F

CUBLOC 의 LADDER 에서는 다음과 같은 방법으로 2 진수 및, 16 진수를 표기합니다.

2 진수 표기 방법 : 00101010B

16 진수 표기방법 : 0ABCDH

2 진수에는 맨 뒤에 B 를 붙이고, 16 진수는 H 를 붙입니다. 그리고 16 진수 ABCDH 와 같이 영문자로 시작하는

경우, 숫자라는 표시를 확실히 하기 위해 맨 앞에 0 을 붙여, 0ABCDH 라고 표기합니다. (예 : 0ABH, 0A1H,

0BCDH )

10 진수는 100, 200, 123 과 같은 식으로 표시합니다.

*BASIC 에서 16 진, 2 진을 표기하는 방법과 LADDER 에서 표기하는 방법에 다소 차이

가 있습니다. BASIC 에서는 &HAB, &B100010 과 같은 식으로 표기합니다.

Page 104: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

104

WMOV, DWMOV WMOV s, d

DWMOV s, d

WMOV 는 16 비트 데이터 전송명령으로, s 에 들어있는 값 (또는 16 비트 상수 값)을 d 로 전송합니다. DWMOV

는 32 비트 데이터를 대상으로 하는 명령으로, 동작은 WMOV 와 동일합니다.

인수의 사용가능 범위를 정리한 표입니다.

가능영역 P M F S C T D 상수

s (소스) O O O O

d (목적지) O O O

M1 입력이 들어오면 D0 영역에 100 을 저장합니다. M2 입력이 들어오면 더블워드 값인 1234H 를 D2 영역에 저

장합니다.

D0 100

D1

D2 1234H

D3 0 여기에는 0 이 저장됩니다.

D4

주의!

DWMOV 명령으로 D2 영역에 값을 저장하면, D3 영역까지 영향을 준다는 사실을 잊지 않도록 하세요!. 명령어 앞

에 DW 가 붙어있는 명령어는 Double Word 명령이기에, 32 비트영역에 영향을 주게 됩니다.

Page 105: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

105

WXCHG, DWXCHG WXCHG s, d

DWXCHG s, d

데이터 교환명령으로, s 에 들어있는 값과 d 에 들어있는 값을 서로 맞교환 합니다. WXCHG 는 1 워드를 대상으로,

DWXCHG 는 더블워드를 대상으로 명령을 수행합니다.

인수의 사용가능 범위를 정리한 표입니다.

가능영역 P M F S C T D 상수

s O O O

d O O O

M1 입력이 들어오면 D0 영역에 100 을, D1 에 123 을 저장합니다. M2 입력이 들어오면 D0 과 D1 의 내용을 서로

교환합니다. 그 결과는 다음과 같습니다.

D0 123

D1 100

D2

D3

D4

Page 106: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

106

FMOV FMOV s, d, n

s 의 값을 d 에 저장합니다. 여기까지는 WMOV 명령과 같습니다. FMOV 는 n 의 숫자만큼 계속해서 저장합니다.

일정구간을 같은 값으로 채울 수 있습니다. 주로 초기화를 하거나, 메모리 클리어를 하는 목적으로 사용합니다.

가능영역 P M F S C T D 상수

s O O O

d O O O

n O

LADDER 의 실행결과는 다음과 같습니다.

D0 100

D1 100

D2 100

D3 100

D4 100

D5 100

*n 을 너무 크게 하지 마십시오. 255 이내로 하는 것이 좋습니다.

Page 107: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

107

GMOV GMOV s, d, n

여러 개의 데이터를 한꺼번에 전송하는 그룹전송 명령입니다. 메모리의 일부분을 다른 곳으로 카피할 수 있습니

다. s 의 값을 d 로 지정된 개수 n 만큼 복사합니다. n 은 255 까지만 사용하세요

가능영역 P M F S C T D 상수

s O O O

d O O O

n O

LADDER 의 실행결과는 다음과 같습니다.

D0 12

D1 34

D2 56

D3 78

D4 90

D5

D6

D7

D8

D9

D10 12

D11 34

D12 56

D13 78

D14 90

D15

D16

Page 108: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

108

WINC, DWINC

WDEC, DWDEC WINC d

DWINC d

WDEC d

DWDEC d

d 에 있는 값을 증가 또는 감소하는 명령입니다. WINC 는 1 워드 증가, DWINC 는 더블워드 증가, WDEC 는 1 워

드 감소, DWDEC 는 더블워드 감소합니다.

가능영역 P M F S C T D 상수

d O O O

LADDER 의 실행결과는 다음과 같습니다.

D0 99

D1

D2

D3

Page 109: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

109

WADD,

DWADD WADD s1, s2, d

DWADD s1, s2, d

s1 과 s2 를 더해서 d 에 저장합니다. WADD 는 워드연산, DWADD 는 더블워드 연산을 수행합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

WSUB,

DWSUB WSUB s1, s2, d

DWSUB s1, s2, d

S1 에서 s2 를 뺀 뒤, 결과를 d 에 저장합니다. WSUB 는 워드연산, DWSUB 는 더블워드 연산을 수행합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

레더의 수행결과 결과 D1 에는 95 가 저장됩니다.

Page 110: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

110

WMUL,

DWMUL WMUL s1, s2, d

DWMUL s1, s2, d

s1 과 s2 를 곱해서 d 에 저장합니다. WMUL 는 워드끼리 연산한 뒤, 결과는 더블워드로 저장합니다. DWMUL 은

더블워드끼리 연산한 뒤 결과는 64 비트 값으로 저장합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

연산결과 D1 에는 1234H * 1234H 의 결과값인 14B5A90H 가 더블워드로 저장됩니다.

D0 1234H

D1 5A90H

D2 14BH

연산결과 D2 에는 123456H * 1234H 의 결과값인 14B60AD78H 가 64 비트로 저장됩니다.

D0 3456H

D1 0012H

D2 0AD78H

D3 4B60H

D4 1

D5 0

Page 111: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

111

WDIV,

DWDIV WDIV s1, s2, d

DWDIV s1, s2, d

S1 에서 s2 를 나눈 뒤, 몫을 d 에 저장하고, 나머지는 d+1 위치에 저장합니다. WDIV 는 워드연산, DWDIV 는 더

블워드 연산입니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

D0 1234H

D1

D2 3

D3

D4 611H

D5 1

D0 5678H

D1 1234H

D2 7

D3 0

D4 0C335H

D5 299H

D6 5

D7 0

Page 112: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

112

WOR,

DWOR WOR s1, s2, d

DWOR s1, s2, d

s1 과 s2 를 OR 연산한 뒤 결과를 d 에 저장합니다. WOR 는 워드단위 연산, DWOR 는 더블워드 단위 연산을 수행

합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

위 레더가 수행된 결과는 다음과 같습니다.

D0 1200H

D1 34H

D2 1234H

Page 113: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

113

WXOR,

DWXOR WXOR s1, s2, d

DWXOR s1, s2, d

s1 과 s2 를 XOR 연산한 뒤 결과를 d 에 저장합니다. WXOR 는 워드단위 연산, DWXOR 는 더블워드 단위 연산을

수행합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

위 레더가 수행된 결과는 다음과 같습니다.

D0 1234H

D1 0FFH

D2 12CBH

특정비트를 반전시키고자 할 때, XOR 연산을 사용합니다.

Page 114: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

114

WAND,

DWAND WAND s1, s2, d

DWAND s1, s2, d

s1 과 s2 를 AND 연산한 뒤 결과를 d 에 저장합니다. WAND 는 워드단위 연산, DWAND 는 더블워드 단위 연산을

수행합니다.

가능영역 P M F S C T D 상수

s1 O O O O

s2 O O O O

d O O O

위 레더가 수행된 결과는 다음과 같습니다.

D0 1234H

D1 0FFH

D2 34H

특정비트만 남기고자 할 때, AND 연산을 사용합니다.

Page 115: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

115

WROL,DWROL WROL d

DWROL d

지정된 번지 d 의 내용은 좌로 1 비트씩 회전합니다. WROL 은 워드단위 좌회전명령이고, DWROL 명령은 더블워

드 단위 좌회전명령입니다.

가능영역 P M F S C T D 상수

d O O O

WROL, DWROL 의 동작을 그림으로 표현한 것입니다.

D0 에 8421H 가 들어있었다고 가정할 때, 위 레더의 실행결과는 다음과 같습니다.

D0 0843H

D1

Page 116: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

116

WROR,DWROR WROR d

DWROR d

지정된 번지 d 의 내용은 우로 1 비트씩 회전합니다. WROR 은 워드단위 우회전명령이고, DWROR 명령은 더블워

드 단위 우회전명령입니다.

가능영역 P M F S C T D 상수

d O O O

WROR, DWROR 의 동작을 그림으로 표현한 것입니다.

D1 에 8421H 가 들어있었다고 가정할 때, 위 레더의 실행결과는 다음과 같습니다.

D0

D1 0C210H

Page 117: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

117

GOTO,LABEL GOTO label

LABEL label

GOTO 는 지정된 라벨로 점프하는 분기명령입니다. label 은 라벨을 선언하기 위한 명령입니다.

START 가 ON 되면 SK_1 으로 점프합니다. 아래와 같이 사용하면 조건 분기명령으로 사용할 수 있습니다.

D0=C0 상황이 되면 SK_1 으로 점프합니다.

Page 118: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

118

CALLS,SBRT,RET CALLS label

SBRT label

서브루틴과 관련된 명령군입니다. CALLS 는 서브루틴을 콜하고, SBRT 는 서브루틴의 시작위치를 알리는 선언문

입니다. RET 는 반드시 서브루틴의 맨 끝에 위치해야 합니다.

LADDER의 끝을

알리는 END

서브루틴의 종료

서브루틴의 시작지점

메인류틴의 끝에는 END가

아닌 RET가 위치해야 함

메인 프로그램

서브루틴을 작성할 때 주의사항이 있습니다. 메인 프로그램의 끝 지점에는 END 가 아

닌 RET 명령을 사용해서 “ 메인 프로그램의 끝 지점” 을 구분해 주어야 합니다.

RET 명령에는 조건을 연결할 수 없습니다. RET 명령은 무조건 복귀명령입니다.

LADDER 프로그램의 가장 끝 지점에는 “END”를 작성해 주어야 합니다.

* 서브루틴안에 다른 서브루틴을 정의할 수 없습니다.

Page 119: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

119

INTON INTON s,d

INTON 은 WMOV 와 동일한 기능을 하는 명령입니다. 단지 BASIC 쪽으로 인터럽트를 발생시킬 수 있도록 특수

릴레이 F40 을 ON 시켜 주는 동작을 동시에 수행합니다.

인수의 사용가능 범위를 정리한 표입니다.

가능영역 P M F S C T D 상수

s (소스) O O O O

d (목적지) O O O

이 명령의 사용방법에 대해서는 바로 다음 장인 “ 레더의 기능 확장” LCD 디스플레이 : 방법 3 편에서 자세히 설

명합니다.

Page 120: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

120

TND

TND 는 조건부 스캔종료명령입니다. 레더의 특정부분에서 임시로 스캔을 종료하고자 할 때 사용합니다.

P0 의 입력이 ON 이면 스캔을 종료하는 예제입니다.

서브루틴 강제종료에도 사용할 수 있습니다. 위의 예제에서 처럼 서브루틴 실행도중 서브루틴 탈출조건 (P1)이

ON 되면, 루틴을 벗어나는 명령으로 사용합니다. TND 명령이 서브루틴안에서 사용되었을 경우에는 스캔종료가

아니라 조건부 서브루틴 종료명령으로 동작하게 됩니다.

Page 121: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

121

특수릴레이

특수릴레이를 통하여 CUBLOC 의 상태나 타이밍 정보, 시스템정보 등을 알 수 있습니다. (빈칸은 사용하지 않는

특수릴레이입니다.)

특수릴레이 설명

F0 상시 OFF

F1 상시 ON

F2 최초 LADDER실행 시 1 SCAN만 On

F3

F4

F5

F6

F7

F8 10mS마다 1 SCAN만 On

F9 100mS마다 1SCAN만 On

F10

F11

F12

F13

F14

F15

F16 1스캔타임간격으로 ON/OFF를 반복

F17 2스캔타임간격으로 ON/OFF를 반복

F18 4스캔타임간격으로 ON/OFF를 반복

F19 8스캔타임간격으로 ON/OFF를 반복

F20 16스캔타임간격으로 ON/OFF를 반복

F21 32스캔타임간격으로 ON/OFF를 반복

F22 64스캔타임간격으로 ON/OFF를 반복

F23 128스캔타임간격으로 ON/OFF를 반복

F24 10mS마다 ON/OFF를 반복

F25 20mS마다 ON/OFF를 반복

F26 40mS마다 ON/OFF를 반복

F27 80mS마다 ON/OFF를 반복

F28 160mS마다 ON/OFF를 반복

F29 320mS마다 ON/OFF를 반복

F30 640mS마다 ON/OFF를 반복

F31 1.28 초마다 ON/OFF를 반복

Page 122: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

122

F32 5.12 초마다 ON/OFF를 반복

F33 10.24 초마다 ON/OFF를 반복

F34 20.48 초마다 ON/OFF를 반복

F35 40.96 초마다 ON/OFF를 반복

F36 81.92 초마다 ON/OFF를 반복

F37 163.84 초마다 ON/OFF를 반복

F38 327.68 초마다 ON/OFF를 반복

F39 655.36 초마다 ON/OFF를 반복

F40 BASIC으로 LADDERINT 발생

F41

F42

F43

F44

F45

F46

F47

* F40 에 1 을 써넣으면 BASIC 으로 인터럽트를 발생시킬 수 있습니다.

* F2 는 최초실행 시 (SET LADDER ON 실행 시점)에서 한 스캔만 ON 됩니다. 초기화 관련 처리를 할 때 사용합

니다.

*공백으로 되어 있는 특수릴레이는 사용하지 않는 특수릴레이입니다.

Page 123: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

123

DEMO PROGRAM 다음은 특수릴레이의 동작을 확인할 수 있는 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요.

Const Device = CB280 Usepin 2,Out Set Ladder On Do Loop

P2

CB280 이 프로그램을 입력한 후 실행시키면, P2 에 연결된

LED 가 대략 0.6 초 간격으로 깜박거립니다. 0.64 초 간

격으로 ON/ OFF 하고 있는 F30 특수릴레이를 그대로

출력하고 있습니다.

Page 124: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

124

Page 125: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

125

제 7 장

레더로직의

기능 확장

Page 126: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

126

베이직과의 데이터 공유

레더의 기능을 확장하기 위해서는 베이직 명령어를 사용해야 합니다. 베이직 명령으로 처리한 결과를 레더 쪽으

로 저장하거나, 반대로 레더 쪽에서 처리한 결과를 베이직 쪽으로 전달해 주어야 할 경우가 발생합니다.

“큐블록”에서는 이것을 처리하기 위해서, BASIC 에서 특정 배열변수를 사용하면 레더의 릴레이 영역을 억세스 할

수 있도록 되어 있습니다.

레더 억세스용

시스템 배열

억세스 단위 LADDER의 해당영역

_P 비트 단위 _P(0) ~ P(127) P 릴레이 영역

_M 비트 단위 _P(0) ~ P(511) M 릴레이 영역

_WP 워드단위 _WP(0) ~ _WP(7) P영역을 워드단위로 억세스

_WM 워드단위 _WM(0) ~ _WM(31) M영역을 워드단위로 억세스

_T 워드단위 _T(0) ~ _T(99) T영역 (타이머)

_C 워드단위 _C(0) ~ _C(49) C영역 (카운터)

_D 워드단위 _D(0) ~ _D(99) D영역 (데이터)

P 와 M 릴레이는 비트 단위로 억세스 되고, 나머지 C,T,D 영역은 워드 단위로 억세스 됩니다. P 와 M 영역을 워드

단위로 억세스 하려면 _WP, _WD 를 사용합니다. 예를 들어 _WP(0)은 P0 부터 P15 까지 를 1 워드로 합친 것을

의미합니다. 다음은 BASIC 에서 LADDER 데이터 영역을 억세스 하는 샘플 프로그램입니다.

FOR I = 0 TO 99 _M(I) = 0 NEXT

이 프로그램은 M0 부터 M99 까지 0 으로 클리어 하는 프로그램입니다.

예제 프로그램에서처럼 앞에 “레더억세스용 시스템 배열”을 사용하면, 레더의 릴레이 영역을 마음대로 억세스 할

수 있습니다.

Page 127: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

127

_D(0) = 1234 _D(1) = 3456 _D(2) = 100

D 영역에 어떤 값을 넣을 수도 있습니다.

IF _P(3) = 1 THEN _M(127) = 1

또는 IF 문에서 릴레이 영역을 참조해서, 다른 릴레이영역에 값을 넣을 수도 있습니다.

반대로, 레더로직에서 베이직변수의 값을 고치거나, 참조할 수는 없습니다. 그 이유는 다음 그림을 보시면 아실

수 있습니다. 이 그림은 큐블록의 내부구조 블록도 입니다. 레더에서 사용하는 데이터메모리는 양쪽에 다 연결되

어 있지만, 베이직에서 사용하는 데이터 메모리는 베이직 쪽에서만 억세스 할 수 있도록 되어 있습니다.

FLASH80KB

I/O 는 베이직과 레더에서 모두 콘트롤 할 수 있도록 되어있습니다. 레더 쪽에서 I/O 를 사용하려면 Usepin 명령을

사용해서, 사용권을 가져와야 합니다. 기본상태에서 모든 I/O 는 BASIC 쪽에서 사용권을 가지고 있습니다.

Page 128: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

128

A/D 입력

BASIC 에서 ADIN 명령어를 사용해서 A/D 입력을 처리한 뒤, 결과값만 레더영역에 저장하도록 합니다.

Const Device = CB280 Set Ladder On Input 24 Do _D(0) = Adin(0) Loop

DO 와 LOOP 사이에 있는 모든 명령어는 “큐블록”에 켜져 있는 한 계속 실행됩니다. ADIN 명령어는 A/D 변환을

수행하는 명령입니다. _D(0) = Adin(0) 이라는 명령은 A/D 채널 0 번에서 입력을 받아서 D0 영역에 저장하라는

것입니다. 따라서 레더가 실행되는 동안 A/D 채널0 의 결과는 D0 영역에 저장됩니다.

와치포인트를 사용해서 간단하게 D0 영역을 볼 수 있습

니다. 모니터링 상태를 ON 하면 와치포인트에서 지정

한 D 영역 값이 위 그림처럼 표시됩니다. (F30 특수릴레

이는 A/D 입력과는 관계없이, 최소한의 레더구성을 위

해 그려놓은 것입니다.)

왼쪽과 같이 볼륨을 사용해서, CB280 모듈의 24 번 포

트와 연결한 뒤, 볼륨을 돌려보시기 바랍니다. 화면상의

와치포인트 D0 에 표시되는 값이 변하는 것을 볼 수 있

습니다.

Page 129: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

129

DEMO PROGRAM 다음은 A/D 입력결과를 레더로직에 사용한 샘플 프로그램입니다. 베이직 부분에는 아래 소스를 입력하세요.

Const Device = CB280 Set Ladder On Input 24 Do _D(0) = Adin(0) Loop

24 번 포트에 연결된 볼륨을 돌리면, P2 에 연결된 LED

의 깜박이는 주기가 변경되는 것을 볼 수 있습니다.

모니터링 상태에서 관찰하면, A/D 변환결과가 얼마인지

알 수 있습니다. 값을 500 이내로 조정하면, LED 의 움

직임을 잘 관찰할 수 있습니다. 너무 큰 값으로 하면,

LED 의 주기가 너무 길어지기 때문입니다.

Page 130: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

130

PWM 출력

레더에서 PWM 출력을 제어할 수 있습니다. D2 영역에 어떤 값을 저장하면, BASIC 쪽에서 그 값을 PWM 채널0

으로 출력하도록 하는 방법을 사용합니다.

Const Device = CB280 Low 5 Set Ladder On Do Pwm 0,_D(2),65535 Delay 10 Loop

5 번 포트는 PWM0 번 채널입니다. 5 번포트에 LED 를

연결해두면, PWM 값에 따라서 LED 의 밝기가 변화하

는 것을 볼 수 있습니다.

D2 영역에 60000 정도의 값을 넣어두면 LED 가 밝게

됩니다. 10000 미만의 값을 넣으면 LED 밝기가 어두

워집니다.

Page 131: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

131

고속카운터 입력

BASIC 에서 측정한 고속카운터 입력을 D 영역에 저장해두면, 레더로직에서 그 값을 이용할 수 있습니다.

다음은 CB280 에서 고속카운터 채널1 을 D1 영역에 저장하는 BASIC 소스입니다.

Const Device = CB280 Input 15 Set Ladder On Do _D(1) = Count(1) Delay 10 Loop

다음은 고속카운터 채널0 을 D2 영역에 저장하는 BASIC 소스입니다.

Const Device = CB280 Input 14 Set Count0 On Set Ladder On Do _D(2) = Count(0) Delay 10 Loop

고속카운터 채널0 을 사용하기 위해서는 프로그램 첫 머리에 SET COUNT0 ON 명령을 써주어야 합니다. 고속카

운터 채널0 을 사용하면 PWM 채널0,1,2 를 사용할 수 없습니다. 이 내용은 BASIC 사용설명서에 자세하게 언급

하고 있습니다.

D2 에 있는 값을 다른 곳으로 가져가서, 레더로직의 연산 등에 사용할 수 있습니다.

Page 132: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

132

키패드 입력

키패드의 입력은 BASIC 에서 처리하고 최종결과를 레더로직으로 전달하여 사용합니다. 이 프로그램은 P2 에 연

결된 LED 의 깜박이는 주기를 키패드로부터 입력 받은 값으로 결정하도록 하는 프로그램입니다. 아래그림처럼 회

로를 구성하고 BASIC 의 KEYPAD 명령을 사용하여 키 입력을 받습니다.

Const Device = CB280 Dim B As Byte Usepin 2,Out Set Ladder On Do B = Keypad(1) If B<255 Then _D(0) = B * 10 End If Loop

Page 133: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

133

PLC 셋업마법사를 이용한 레더기능 확장

레더 기능확장을 위해 베이직 코드를 일일이 작성하지 않아도 “PLC 셋업 마법사”를 사용하면, 좀더 쉽게 사용할

수 있습니다.

A/D 입력을 사용하려면 “PLC 셋업 마법사”에서 오른쪽에 있는 “A/D Convertor”항목에서 사용하고자 하는 채널

을 체크하십시오. 그러면, 해당 채널의 A/D 입력을 D 영역으로 전달해주는 소스가 자동적으로 삽입됩니다. 만약

채널0 을 체크했다면 결과는 D10 영역에 저장됩니다.

나중에 생성된 BASIC 소스를 직접 고쳐서, 할당된 D 영역을 다른 영역으로 직접 고쳐도 됩니다. PLC 셋업마법사

에서는 각 기능별로 D 영역을 일정하게 나누어 배분해 두었습니다.

Page 134: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

134

다음은 “PLC 셋업 마법사”에서 사전에 배정해 놓은 기능별, D 영역을 정리해 놓은 표입니다.

기능 채널 D영역 설명

ADC0 D10

ADC1 D11

ADC2 D12

ADC3 D13

ADC4 D14

ADC5 D15

ADC6 D16

A/D입력

ADC7 D17

A/D입력의 결과가

해당 D영역으로

저장됩니다.

PWM0 D26

PWM1 D27

PWM2 D28

PWM3 D29

PWM4 D30

PWM출력

PWM5 D31

해당 D영역에 있는

값으로 PWM채널에

출력됩니다.

COUNT0 D38 HIGH

COUNTER COUNT1 D39

카운터입력이 D

다음은 “PLC 셋업 마법사”를 사용해서 생성된 BASIC 코드의 예입니다. AD 채널 0,1,2 를 체크하고, PWM3,4,5 를

체크한 뒤 생성한 것입니다.

Const Device = CB280 Set Ladder On Low 19 Low 20 Low 21 Countreset 1 Do Input 24 _D(10) = Adin(0) Input 25 _D(11) = Adin(1) Input 26 _D(12) = Adin(2) Input 15 _D(39) = COUNT(1) Pwm 3,_D(29),65535 Pwm 4,_D(30),65535 Pwm 5,_D(31),65535 Loop

Page 135: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

135

7 세그먼트 디스플레이

컴파일 테크놀로지에서 판매하는 7 세그먼트 디스플레이 모듈 (CSG 시리즈)를 사용하여, 간단하게 7 세그먼트 디

스플레이를 구현할 수 있습니다. 레더로직에서는 디스플레이 데이터만 BASIC 으로 넘겨주고, BASIC 에서 이 데

이터를 받아서 CSG 모듈로 전송하는 방식으로 디스플레이를 구현합니다.

CUBLOC STUDY BOARD-1 을 가지고 계신 분은 아래 사진과 같이, 연결하신 뒤 본 DEMO PROGRAM 을 실험

할 수 있습니다.

단순히 CSG 모듈을 STUDY BOARD 의 CSG 소켓에 연결한 뒤, P2 를 LED 에 연결하기 위한 점퍼 선만 추가한다

면, 아래와 같은 회로연결이 완성되는 것입니다.

Page 136: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

136

베이직에는 다음과 같은 소스를 작성해 주십시오.

CSG 가 동작할 수 있도록 SET I2C 선언을 하고, DO..LOOP 안에 CSGDEC 명령을 써서 D10 영역의 내용을 출력

합니다. 레더로직은 다음과 같이 작성하십시오. 이 프로그램을 실행시키면, LED 가 깜박거리고 T1 의 내용을

CSG 디스플레이로 확인할 수 있습니다.

Page 137: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

137

D10 영역을 CSG 디스플레이를 위한 중계영역이라고 볼 수 있습니다. 이런 식으로 레더로직에서는 표시하고 싶은

값을 D10 영역에 저장하기만 하면 됩니다.

TIPS CSG 모듈에 글자가 안나온다구? CSG 모듈 뒤에 있는 딥 스위치를 조정하여 “슬레이브 어드레스”가 일치하는 지

확인해보시기 바랍니다. 하나의 I2C 라인에 여러 개의 CSG 모듈을 연결할 수 있고, 각각의 CSG 모듈을 구분하기

위해서 “슬레이브 어드레스”를 사용합니다.

DIP 스위치 상태 슬레이브 어드레스 1 2 3

ON

-

0

1 2 3ON

1

1 2 3ON

2

1 2 3ON

3

베이직에서의 CSGDEC 0 ,_D(10) 에서 0 번이 슬레이브 어드레스를 의미하는 숫자입니다. 위의 표를 보시고, 딥

스위치를 조정하시기 바랍니다.

Page 138: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

138

LCD 디스플레이 : 방법 1

LCD 는 7 세그먼트보다 디스플레이 영역이 크기 때문에, 위치지정에 관련된 부분을 고려해 주어야 합니다. 가장

간단한 방법으로는 7 세그먼트 디스플레이 모듈에서 사용한 방법으로 표시할 수 있습니다.

CUBLOC STUDY BOARD-1 와

CLCD 모듈을 이 그림처럼 연결한다

면, 자동적으로 CUNET 포트와 CLCD

가 연결됩니다.

CUNET 포트는 CLCD 모듈과 같은 디

스플레이 소자를 연결하기 위한 포트

입니다.

CB280 의 경우 P8, P9 와 연결되므

로, 향후 이 포트는 레더 쪽에서 사용

할 수 없습니다.

P2 포트는 LED 점멸 동작을 확인하기 위해 LED 와 연결합니다. 그리고 다음 베이직 프로그램을 입력하세요.

SET DISPLAY 는 디스플레이 셋팅을 위한 선언문입니

다. 자세한 사용법은 BASIC 사용설명서를 참조하세요.

DO…LOOP 안에서 D10 영역과 D11 영역에 있는 값을

LCD 상에 표시합니다.

LCD 에 표시하기 위해 LOCATE 명령으로, 표시위치를

먼저 지정한 뒤, PRINT 명령으로 해당 값을 표시하고

있습니다.

Page 139: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

139

레더로직은 아래와 같이 입력하세요. T0 은 D10 영역으로 보내고, T1 은 D11 영역으로 보냅니다. F1 특수 릴레이

는 “상시ON”상태이므로, 계속 해서 동작하라는 뜻입니다.

CB220 과 LCD 와 연결을 위한 CUNET 회로입니다. P8, P9 번포트에 CLCD 모듈을 연결합니다.

Page 140: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

140

LCD 디스플레이 : 방법 2

LCD 는 화면이 넓기 때문에, 어떤 위치에 글자를 표시하고 싶은지, 레더로직 쪽에서 결정할 수 있도록 하는 것이

편리합니다. 다음 방법을 사용하면, LCD 상의 위치를 LADDER LOGIC 에서 결정할 수 있습니다.

우선 베이직 쪽에는 다음과 같은 소스를 입력하세요.

이 소스는 D10 부터 89 까지 읽어와 LCD 에 표시하는

프로그램입니다.

D10~D89 까지의 영역이 무조건 LCD 상에 표시된다고

말할 수 있습니다.

그래서, 프로그램 시작 전에 이 영역을 SPACE (ASCII

코드 &h20)으로 모두 채워줍니다.

이 프로그램은 20 by 4 LCD 모듈을 사용하는 것으로

가정하고 있기 때문에, LCD 전체 영역을 커버하기 위해

서는 총 80 개의 데이터 영역이 필요합니다.

따라서 D10 부터 D89 까지 사용하고 있습니다.

이 프로그램이 실행 중일 때, 레더로직에서는 LCD 표

시코멘드에는 신경 쓸 필요 없이, 단순히 D10~D89 영

역에 데이터만 기입해 주면, LCD 의 해당 위치에 표시

됩니다.

Page 141: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

141

LCD 화면에 글자를 표시하기 위해서는 ASCII 코드를 사용해 주어야 합니다. ASCII 코드는 숫자와 특수문자, 영문

자를 코드로 변환하여 사용하는 일종의 규약입니다. 아래 레더로직을 입력한 뒤 실행하면, LCD 화면에는

“ABCDE”가 표시됩니다.

이 방법을 사용해서 화면 가득히 어떤 문자를 표시하려면 일일이 ASCII 코드를 입력해 주어야 하는 번거로움이

있습니다. 그래서, 큐블록 스튜디오에서는WMOV ‘E’, D15 와 같이 문자 하나를 “어포스트로피”로 감싼 뒤 사용하

면 해당 문자를 ASCII 로 바꾸어 입력해 줍니다.

그래도, 여러 개의 문자를 표시하기에는 WMOV 명령어를 반복적으로 써주어야 하는 번거로움이 있습니다. 이 방

법은 LCD 화면에 자주 변경하는 숫자 (예를 들면 수량카운트 또는 온도표시)등을 사용할 때 사용하십시오.

LCD 화면에 어떤 문장을 표시하거나, 일정한 포맷으로 초기표시를 하고 싶다면 다음에 소개하는 “LCD 디스플레

이 3” 방법을 사용하시기 바랍니다.

Page 142: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

142

다음은 ASCII 코드 표입니다.

ASCII 코드로 영문자 A 는 &H41 이고, 숫자 0 은 &H30 입니다.

코드 문자 코드 문자 코드 문자 코드 문자

00H NUL 20H SPACE 40H @ 60H ̀

01H SOH 21H ! 41H A 61H a

02H STX 22H “ 42H B 62H b

03H ETX 23H # 43H C 63H c

04H EOT 24H $ 44H D 64H d

05H ENQ 25H % 45H E 65H e

06H ACK 26H & 46H F 66H f

07H BEL 27H ‘ 47H G 67H g

08H BS 28H ( 48H H 68H h

09H HT 29H ) 49H I 69H I

0AH LF 2AH * 4AH J 6AH j

0BH VT 2BH + 4BH K 6BH k

0CH FF 2CH , 4CH L 6CH l

0DH CR 2DH - 4DH M 6DH m

0EH SO 2EH . 4EH N 6EH n

0FH SI 2FH / 4FH O 6FH o

10H DLE 30H 0 50H P 70H p

11H DC1 31H 1 51H Q 71H q

12H DC2 32H 2 52H R 72H r

13H DC3 33H 3 53H S 73H s

14H DC4 34H 4 54H T 74H t

15H NAK 35H 5 55H U 75H u

16H SYN 36H 6 56H V 76H v

17H ETB 37H 7 57H W 77H w

18H CAN 38H 8 58H X 78H x

19H EM 39H 9 59H Y 79H y

1AH SUB 3AH : 5AH Z 7AH z

1BH ESC 3BH ; 5BH [ 7BH {

1CH FS 3CH < 5CH ₩ 7CH |

1DH GS 3DH = 5DH ] 7DH }

1EH RS 3EH > 5EH ̂ 7EH ~

1FH US 3FH ? 5FH _ 7FH DEL

Page 143: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

143

LCD 디스플레이 : 방법 3

레더 쪽에서 간단한 명령만 내리면, LCD 화면전체가 새로운 내용으로 바뀌는 방법입니다. 이 방법을 이해하려면

ON LADDERINT (레더인터럽트)에 대해서 알아야 합니다. “레더 인터럽트”는 레더에서 베이직으로 인터럽트를 발

생시켜 주는 방법입니다.

큐블록은 레더와 베이직, 서로 다른 두 개의 논리적인 프로세서가 하나의 공간에서 들어있는 것입니다. 레더 처리

기 쪽에서 베이직 처리기 쪽으로 인터럽트를 발생시켜주는 것을 “레더 인터럽트”라고 합니다.

P5

예를 들어, TIMER 가 발생시켜주는 인터럽트를 “타이머 인터럽트”라고 부릅니다. 마찬가지로 레더가 발생시켜주

는 인터럽트니까 “레더 인터럽트”라고 부릅니다.

레더로직에서 인터럽트를 발생시켜주는 것은 매우 간단합니다. “INTON”이라는 명령만 사용해 주면 됩니다.

INTON 은 실제로 WMOV 명령과 동일한 기능을 수행합니다. 여기에 한가지 더 일을 하는 것이 특수릴레이 F40

을 1 로 만들어 주는 것입니다.

특수릴레이 F40 은 레더인터럽트 플래그입니다. 이 릴레이가 ON 상태이면 BASIC 쪽에 LADDERINT 가 발생되는

것입니다.

WMOV 기능을 추가적으로 수행하는 것은 “인터럽트의 종류”를 파악하기 위해서입니다. 레더 이곳 저곳에

INTON 명령이 있는데, 각각 원하는 일이 있을 것입니다. 그것을 베이직 쪽에서 쉽게 파악하기 위해서, 서로 약속

된 데이터번지를 참조하고 그것에 맞는 일을 수행하기 위해서입니다.

P0 입력이 들어오면, D0 번지에 3 을 저장합니다. 그리고 P1 입력이 들어오면 D0 번지에 2 를 저장합니다. BASIC

에서 LADDERINT 가 발생되면, D0 번지에 있는 값을 조사해서, 어떤 원인으로 인터럽트가 발생되었는지를 알 수

있는 것입니다. (D0 번지에 2 가 들어있다면 P1 입력이 들어온 것이겠지요.)

Page 144: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

144

BASIC 에서는 이 인터럽트를 받아서 처리해주는 소스를 작성해주어야 합니다. 기본적인 골격은 다음과 같습니다.

ON LADDERINT GOSUB ABCD SET LADDER ON DO LOOP ABCD: CLS RETURN

인터럽트 발생시 메인루틴 수행을 멈추고, 인터럽트를 수행합니다. 위 소스의 경우 ABCD 루틴을 수행합니다.

ABCD 루틴 끝에는 반드시 RETURN 명령어를 두어, 인터럽트루틴의 끝을 알려주어야 합니다.

그럼, 간단한 명령 하나로 LCD 전체화면을 새로운 내용으로 바뀌게 하는 방법에 대해서 알아보겠습니다. 우선 레

더 쪽에는 다음과 같은 내용으로 구성합니다.

P1

P0

CB280

5V

5V

P0 과 P1 에는 스위치를 연결해 두십시오.각각의 스위

치 입력이 있을 때, LCD 상에 다른 내용이 표시되도록

하겠습니다.

Page 145: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

145

베이직에는 다음과 같은 소스를 작성합니다.

인터럽트가 발생되면 D0 번지의 내용을

조사해서 1 이면 위의 내용을 표시하고, 2

이면 아래의 내용을 표시합니다.

LCD 구동을 위해서 소스의 첫 부분에

SET DISPLAY 명령을 사용하였습니다.

PRINT 1 은 LOCATE 0,0 과 같은 기능을

합니다. PRINT 2 는 LOCATE 0,1 과 같은

기능을 합니다.

프로그램을 실행시키고, P0 스위치를 누르면 LCD 화면에 초기화면이 표시됩니다. P1 스위치를 누르면, 다른 형태

의 초기화면이 표시됩니다.

Page 146: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

146

레더에서 사운드발생

레더 쪽에서 간단한 명령만 내리면, 사운드가 발생되도록 해보겠습니다. 역시 ON LADDERINT 인터럽트를 이용

한 방법입니다. 레더로직에서는 사운드를 발생하는 명령이 없지만, BASIC 에서는 FREQOUT 명령을 이용하면 간

단하게 소리를 만들어 낼 수 있습니다.

다음은 베이직 소스입니다. PWM 0 번 채널

을 이용해서 소리를 발생합니다.

LOW 5 명령으로 인해 5 번 I/O 포트가

LOW 상태가 됩니다. (최초상태인 입력상태

에서 출력상태로 바꾸어 놓은 것입니다.)

5 번 I/O 포트는 PWM 0 번 채널입니다.

LADDERINT 가 발생되면, D0 영역을 조사

해서 1 이면 일정한 주파수를 FREQOUT

명령을 사용해서 PWM 0 번 채널에 출력합

니다.

DELAY 명령으로 약간의 시간을 기다린 뒤,

PWM 0 번 채널을 OFF 합니다.

같은 방법으로 D0 영역이 2 일 경우에 대한

처리도 합니다.

이 프로그램을 동작 시키기 위한 회로도는 다음과 같습

니다. 5 번 포트에 PIEZO 를 연결하고, 0 번, 1 번포트에

는 스위치를 연결합니다.

Page 147: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

147

레더로직은 다음과 같이 구성합니다.

Page 148: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

148

레더에서 복잡한 연산식 수행

실수연산 또는 SIN, COS 등의 삼각함수가 필요한 연산을 레더로직에서 수행하려면 어떻게 하면 될까요? 역시

ON LADDERINT 를 이용하면 간단하게 처리할 수 있습니다. BASIC 에서는 32 비트 실수데이터형을 사용할 수

있고, SIN, COS, LOG 와 같은 수학함수를 지원합니다.

바로 앞에서 사용한 회로를 사용해

서, P0 나 P1 에 연결된 스위치를

누르면 어떤 연산을 수행하도록 했

습니다.

P0 이 ON 되면, D2 에 있는 값의

LOG 값을 D3 에 저장합니다.

이때 주의할 점은 BASIC 에서는 실

수 연산이 되지만, 레더 쪽에서는

정수만 취급하므로, 소수점 이하가

잘려서 저장됩니다.

P1 이 ON 되면, 일정한 연산식을

수행한 뒤 결과값을 D3 에 저장하

도록 해 놓았습니다.

여기 있는 프로그램을 응용하여, 여

러 가지 연산식을 LADDER LOGIC

에서도 구현할 수 있습니다.

DEBUG 명령을 리마크로 막아놓았습니다. 앞에 어포스트로피(‘)를 제거한다면, DEBUG 명령으로 실수결과 값을

볼 수 있습니다. 물론 디버그 터미널에 표시됩니다. 이때 레더로직 쪽에서는 디버그 기능을 사용할 수 없으므로,

확인이 다 끝나셨다면, 위 소스 프로그램처럼 DEBUG 명령어를 리마크 해놓으시기 바랍니다.

맨 앞에 SET DEBUG OFF 라는 명령을 추가하셔도, 소스 전체에 있는 DEBUG 명령어는 번역되지 않습니다.

Page 149: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

149

레더로직은 다음과 같이 구성했습니다. 초기화 (F2 릴레이 사용)시에 D2 에 연산에 필요한 초기값을 저장합니다.

모니터링 상태에서 P0 또는 P1 스위치를 누르면, D3 값의 변화상태를 직접 볼 수 있습니다. 이때 베이직 쪽에 있

는 DEBUG 명령어는 비 활성화 상태이어야 합니다.

Page 150: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

150

레더 인터럽트의 메커니즘

레더로직에서 F40 특수릴레이에 1 을 써넣으면, 베이직 쪽에서 인터럽트가 발생한다는 것이 기본적인

LADDERINT 의 메커니즘입니다. 아래처럼 SETOUT 명령을 써서 F40 특수릴레이에 1 을 기입해도,

LADDERINT 는 발생됩니다.

베이직 쪽에서 인터럽트 루틴을 수행하는 동안 F40 특수 릴레이는 1 인 상태를 계속 유지하다가, RETURN 명령

어를 만나면 자동적으로 클리어 됩니다.

LADDERINT 수행 중 다른 LADDERINT 가 실행될 수 있나? 이 문제에 대해서 한번 깊게 생각해 보겠습니다.

베이직에서 LADDERINT 루틴을 수행하고 있을 때에서 레더로직은 계속 동작하고 있습니다. 이미 F40 이 1 로

되어 있는 상황이어서, 다시 F40 에 1 을 써넣는다고 해도, 중복 인터럽트는 발생되지 않습니다.

SOUNDOUT: FREQOUT 0,2000 ‘ LADDERINT 인터럽트 루틴 안에서 DELAY 200 ‘ 200 밀리 초를 DELAY 하는 동안에도 레더는 계속 수행 중입니다. PWMOFF 0 RETURN

앞에서 사용한 “레더에서 사운드 발생” 예제입니다. 사운드가 발생되는 시간을 기다려주기 위한 DELAY 명령을

수행하는 중에도 계속해서 레더로직은 10mS 간격으로 스캔 중입니다. 이 사이에 레더로직의 다른 부분에서 F40

특수 릴레이에 1 을 써넣어도 소용이 없다는 뜻입니다. 왜냐하면 이미 F40 은 1 인 상태이고, 레더인터럽트 수행

중이기 때문입니다.

결론은, LADDERINT 의 동시수행은 불가능하며, 어느 한 순간, 한 종류의 LADDERINT 만 실행될 수 있습니다.

만약 동시에 LADDERINT 발생 조건을 만족시켜서 두 개의 레더에서 F40 을 동시에 1 로 만들었다면, 어떻게 될

까요? 그럴 경우 아래쪽에 있는 LADDERINT 가 유효하게 됩니다. 다른 한쪽은 인터럽트 요구 시도자체가 무시되

는 것입니다. 이런 일을 미연에 방지하기 위해서는 F40 릴레이를 인터럽트 발생의 입력조건에 AND 시키는 방법

이 있습니다.

이렇게 하면 다른 한쪽의 LADDERINT 가

수행 중일 때에는 아예 인터럽트 발생요구

를 하지 않게 됩니다.

Page 151: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

151

제 8 장

BASIC 에서

레더로직 블록제어

Page 152: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

152

LADDER 와 BASIC 의 협동

큐블록을 사용해서, 개발에 들어가기에 앞서, 유저는 먼저 다음과 같은 고민을 하게 됩니다.

1. 레더만 사용해서 프로그램을 완성할 것인가…

2. 베이직만 사용해서 프로그램을 완성할 것인가…

3. 베이직과 레더를 모두 사용해서 프로그램을 완성할 것인가…

물론, 1,2,3 번 중 어떤 것을 선택할 것인지는 유저 여러분이 결정해야 될 사항입니다. 프로젝트의 성격을 잘 파악

하신 뒤 결정하시기 바랍니다. 1 번과 2 번의 경우 특별한 문제가 없습니다만, 3 번 “레더와 베이직을 모두사용”하

는 경우에는 어떤 언어를 MAIN 언어로 할 것인지를 또 생각해 보아야 합니다.

LADDER LOGIC 이 메인이 되는 경우

레더로 전체 프로그램을 완성하고, AD 입력이나 키패드 입력과 같은 기능을 BASIC 에서 처리하는 경우입니다. 레

더는 레더 본연의 임무인 “시퀀스처리”에만 충실하고, 레더에서 처리할 수 없는 기능을 BASIC 쪽에서 처리하게

됩니다.

BASIC 이 메인 언어가 되는 경우

베이직으로 프로그램의 전체를 완성하고, 레더 로직으로는 부분적인 제어만을 수행하는 경우입니다. 이 경우

BASIC 에서 레더로직을 블록단위로 ON/OFF 해야 하는데, 이때, 마스터 콘트롤을 사용하면 간단하게 일정한 단

위의 블록을 ON 하거나 OFF 할 수 있습니다.

If A=1 THEN _M(1) = 1

If B=1 THEN _M(1) = 0

P0

M1

P3

P2 P9

MCS 0

MCSCLR 0

이번 장에서는 BASIC 언어를 메인으로 쓰는 경우, 레더로직을 블록으로 구분하여, 블록 별로 ON 또는 OFF 하는

방법에 대해서 설명하도록 하겠습니다.

Page 153: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

153

방법 1: M 릴레이로 AND 하기

LADDER LOGIC 의 내용이 얼마 안 되는 경우에 사용할 수 있는 비교적 간단한 방법입니다. 설명을 쉽게 하기 위

해서 다음과 같은 회로와 레더로직을 구성하여 보겠습니다. LED1 과 LED2 가 서로 틀린 주기로 깜박이게 됩니다.

만약, CUBLUC STUDY BOARD-1 을 가진 분이라면, 아래와 같이 점퍼선을 연결하시면 됩니다.

베이직 쪽 소스는 다음과 같습니다.

Const Device = CB280 Usepin 0, In Usepin 2, Out Usepin 3, Out Set Ladder On

Page 154: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

154

다음 레더로직으로 실행시키면, LED1 과 LED2 가 서로 틀린 주기로 깜박이게 됩니다

여기에, 스위치를 누르면 첫 번째 플리커가 동작하고, 스위치를 OFF 하면 두 번째 플리커가 동작하도록 해보겠습

니다. 스위치의 입력은 BASIC 쪽에서 담당하고, BASIC 에서 LADDER 의 일부분을 제어하는 방법입니다.

Page 155: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

155

베이직은 다음과 같이 소스를 고쳐서 입력합니다.

포트0 의 입력상태를 보고, M0, M1 릴레이의 상태를 바

꾸어 줌으로써, 레더로직의 특정부분을 ON 하거나 OFF

할 수 있습니다.

M0 릴레이가 ON 이 되어야, 첫 번째 플리커가 동작하

게 됩니다.

M0 릴레이가 AND 조건으로 설정되어 있기 때문입니다.

Page 156: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

156

방법 2: 마스터 콘트롤로 제어하기

레더로직에는 마스터 콘트롤이라는 기능이 있습니다. 레더로직을 몇 개의 블록으로 나누어, 블록단위로 ON 하거

나 OFF 할 수 있는 기능입니다. 하나의 블록을 MCS 와 MCSCLR 명령으로 감싼 형태를 가지고 있습니다.

방법1 에서 사용한 회로도를 그대로 사용해서, 설명하도록 하겠습니다.

스위치를 누르면 첫 번째 플리커가 동작하고, 스위치를

OFF 하면 두 번째 플리커가 동작하는 기능을 합니다.

앞에서 설명한 방법 1 과 동일한 동작을 하지만, 블록

안의 내용이 많을 경우에는 이 방법이 훨씬 간편합니다.

Page 157: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

157

“마스터 콘트롤”을 사용한 레더로직에 대한 설명입니다.

MCS 펑션에 연결되어 있는 릴레이가 ON 되어야, 해당 MCS 블록 안에 있는 레더회로가 동작하게 됩니다. 동작하

지 않는 MCS 블록 안에 있는 모든 출력은 OFF 상태가 됩니다.

Page 158: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

158

방법 3: GOTO 로 제어하기

AND 접속이나 마스터콘트롤은 동작하지 않는 회로에서 출력의 상태를 강제로 OFF 해줍니다. 기계제어에서는 출

력의 ON/OFF 상태를 확실하게 해두어야 하기 때문입니다.

만약, 특정블록을 아예 스캔 하지 않도록 하도록 하고 싶다면 어떻게 할까요? 이럴 때에는 레더로직에서 GOTO

명령을 사용하면 됩니다.

이렇게 하면, 스위치가 ON 되었을 때, 첫 번째 플리커

회로는 스캔 하지 않고, SKIP 하게 됩니다.

앞에서 설명했던 AND 제어 또는 마스터콘트롤 제어방

식과 차이점이 무엇일까요?

이 방법은 해당블록을 스캔 하지 않고, 건너 뛰게 되므

로, P2 출력이 이전상태를 계속 유지하게 됩니다.

AND 제어나 마스터콘트롤에서는 P2 출력을 강제로

OFF 하게 됩니다.

이것은 P2 출력을 다른 블록에서 제어할 수 있다는 것

을 뜻하기도 합니다.

Page 159: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

159

방법 4: 레더전체를 ON/OFF 를 제어하기

아주 단순하게, 레더전체를 ON 하거나 OFF 하는 방법도 있습니다.

아래 레더로직은 P2 에 연결된 LED 를 깜박이게 하는 LED FLASH 프로그램입니다.

다음과 같이 베이직을 구성하면, 이 레더로직은 계속 동작하게 됩니다.

Const Device = CB280 Usepin 2,Out Set Ladder On Do Loop

0 번 I/O 포트에 스위치를 연결하고, 다음과 같이 베이직 프로그램을 바꾸면, 0 번 포트가 HIGH 일 때 LADDER

LOGIC 이 동작하고, LOW 일 때는 동작하지 않게 됩니다. 동작하지 않을 때, I/O 포트의 상태는 이전상태를 계속

유지하게 됩니다. (아무도 제어하지 않는 상태가 됩니다.)

Const Device = CB280 Usepin 2,Out Set Ladder On Do If In(0) = 1 Then Set Ladder Off Else Set Ladder On End If Loop

Page 160: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

160

MEMO

Page 161: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

161

제 9 장

모드버스체험

모드버스에 대한 구체적인 설명은 “BASIC 중심 사용설명서”를 참조하세요.

Page 162: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

162

MODBUS 체험

PC 와 큐블록을 연결한 상태에서 모드버스가 어떻게 동작되는지 알아보겠습니다. 실험을 위해 CUBLOC STUDY

BOARD-1 을 사용합니다. 아래와 같이 결선합니다.

0 1 2 3 4 5 6 7

0 8

LED Output A/D in Toggle In Push S/W

RS232(back)

CB280TX/RX

0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 70 1 2 3

2 번 포트를 LED 와 연결하고, STUDY BOARD 위쪽 오른편에 있는 RS232 CH1 과 CB280 RX,TX 를 점퍼로 연

결해 둡니다. 그렇게 하면, CB280 RS232 채널1 을 아래 그림처럼 CUBLOC STUDY BOARD-1 의 보드 뒷면에

있는 RS232 콘넥터로 연결됩니다.

이 사진처럼 “큐블록”에 프로그램을 다운로드 한 뒤에는 MODBUS 통신을 위해 아래쪽으로 RS232 케이블을 옮겨

Page 163: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

163

꼽아야 합니다.

회로도로 표현하면 다음과 같습니다. CB280 의 RS232 채널1 이 MAX232 를 통해, PC 와 연결됩니다.

12345678

161514131211109

테스트를 위해 CB280 에는 LED 점멸프로그램을 다운로드 하겠습니다. 다음 BASIC 소스와 레더로직을 입력한 뒤,

실행시키면 LED 가 깜박거립니다.

Const Device = CB280 Opencom 1,115200,3,80,20 Set Modbus 0,1 ‘ 모드버스를 슬레이브 ASCII 상태로 활성화합니다. 슬레이브주소는 1 번 Usepin 0,In Usepin 1,In Usepin 2,Out Set Ladder On Do Loop

LED 가 깜박거리는 것을 확인하셨으면, 이제 CUBLOC STUDIO 를 닫으세요! 모드버스 테스트를 위해 더 이상

CUBLOC STUDIO 는 필요하지 않습니다. CUBLOC STUDIO 와 CFTERM 이 동시에 열려있으면 통신포트

Page 164: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

164

OPEN 에러가 발생합니다.

PC상에는 CFTERM 이라는 프로그램을 설치합니다. www.comfile.co.kr 에 가셔서 다운로드 (큐블록 자료실)에

서 무료로 다운받으실 수 있습니다 .이 프로그램은 통신테스트 및 모드버스 테스트를 위하여 개발된 프로그램입

니다. (다운로드 및 설치방법에 대해서는 너무 일반적인 설명이라 이곳에서는 다루지 않습니다.)

CFTERM 을 실행시킨 뒤, 아래 화면에서 보이는 것과 똑같이 설정상태를 바꾸시기 바랍니다. 우선 보레이트를

115200 으로 바꾸고, “OPEN”을 누른 뒤, MODE 를 MODBUS 로 변경합니다.

그리고 WORD READ 를 선택합니다. 지금 구동중인 T0 (타이머)를 읽어보도록 하겠습니다. 5000 번지가 T0 에

해당되는 어드레스입니다. START ADDRESS 를 5000 으로 입력하세요! 길이 (LENGTH)는 1 로 입력하신 뒤

“SEND”를 눌러보세요!

이 화면하단에서처럼 수신된 값이 표시되면 MODBUS 실험 성공입니다. 수신된 포맷이 MODBUS 포맷과 일치하

는지 한번 확인해 보세요! 계속해서 SEND 버튼을 누르면 T0 값이 읽혀서 수신 포맷 사이에 표시됩니다.

Page 165: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

165

모드버스의 응용

실험만으로 모드버스가 어떻게 응용되는지 모르시겠다구요? 모드버스는 한마디로 “PLC 의 상태”를 알기 위한 통

신 방법입니다. PC 와 연결해서 큐블록의 실행상태를 모니터링 하려고 한다면, 큐블록에서 PC 의 통신요구에 무언

가 응답을 해주어야 합니다.

PC 에는 “비주얼 베이직”이나 HMI 소프트웨어로 작성한 프로그램을 사용합니다. 이 프로그램에서 “큐블록”의 상

태를 불러와 PC 화면에 표시하거나, 다른 곳을 송신할 수도 있습니다.

더 나아가, “큐블록”의 특정 릴레이를 강제로 변화시킬 수도 있습니다. MODBUS 에는 WORD WRITE, BIT

WRITE 등의 기능도 있습니다. 이 기능을 활용하면, 큐블록에 연결된 릴레이나, 모터 등을 PC 상에서 콘트롤 할

수도 있습니다.

PC 가 아닌 “터치스크린”과 “큐블록”을 연결할 수 도 있습니다. 터치스크린에서 MODBUS 프로토콜로 선택하고

CUBLOC 과 연결한 상태로 구동할 수 있게 됩니다.

이러한 응용에서 큐블록은 “슬레이브”상태로만 MODBUS 를 활용하는 것입니다.

만약, 큐블록을 “모드버스 마스터” 즉, 다른 “큐블록”이나 다른 PLC 를 제어하기 위한 MASTER 기기로 활용할

수 있을까요? 대답은 YES 입니다.

그렇게 하려면, LADDER LOGIC 만으로는 불가능합니다. BASIC 으로 MODBUS MASTER 콘트롤을 위한 프로그

램을 작성해 주어야 합니다. 이 부분에 대해서는 BASIC 중심 큐블록 사용설명서에서 다루고 있습니다.

Page 166: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

166

MEMO

Page 167: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

167

제 10 장

어플리케이션 노트

Page 168: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

168

노트 1. 자기유지 (래치)회로

레더로직 (또는 시퀀스 회로)를 배울 때, 가장 먼저 배우는 회로입니다. 이 실험을 위해 CUBLOC STUDY

BOARD-1 을 사용했습니다. 다음과 같이 회로 (결선)을 구성하세요!

START 스위치를 누르면, 모터가 돌아가고, STOP 스위치를 누르면 모터가 정지하는 상황을 가정해 본 것입니다.

모터의 동작은 P2 에 연결된 LED 로 확인할 수 있습니다.

Page 169: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

169

베이직 소스를 “PLC 마법사”로 작성해 보겠습니다. 아래 화면과 같이 PLC 마법사를 클릭한 뒤, 디바이스를

CB280 으로 바꾸고, P0, P1,P2 를 활성화 시킨 뒤, 입출력상태를 조절하세요!

다 하셨으면, 맨 밑에 있는 Replace Basic Code 를 누릅니다.

베이직 탭을 누르면 다음과 같은 베이직 소스가 자동 생성되어 있는 것을 볼 수 있습니다.

Page 170: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

170

레더로직을 입력하신 뒤, RUN 보턴을 누르면 실행됩니다.

P0 스위치를 누르면 P2 LED 에 불이 들어오고, P1 스위치를 누르면, P2 스위치에 불이 꺼집니다. 이것이 바로 자

기유지 입니다. P2 의 상태를 붙잡아 놓을 수 있다고 해서 “자기 유지”라고 합니다. 타이밍 차트로 보면 더욱 쉽게

알 수 있습니다.

레더를 보면 출력으로 사용한 P2 릴레이를 입력에서 사용한 것을 볼 수 있습니다. 이처럼 레더로직에서는 출력

릴레이를 입력으로 사용하는 것이 가능합니다. 출력 릴레이를 입력으로 사용할 경우, 출력을 상태를 가지고 있게

됩니다. 출력 상태를 변화시키지는 못하지만, 출력상태가 무엇인지는 알 수 있는 것입니다.

Page 171: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

171

노트 2. 인터록 회로

한 회로가 동작 중일 때 다른 회로의 동작을 막아주는 회로를 “인터록”회로 라고 합니다. 이 것을 설명하기 위해

2 개의 자기유지 회로가 있는 레더로직을 만들어 보겠습니다.

다음 베이직 소스를 입력하세요.

4 개의 입력과 2 개의 출력을 위해 총 6 개의 입출력 포

트에 대한 USEPIN 설정이 필요합니다.

레더로직은 똑 같은 2 개의 “자기유지”회로를 구성해 보

았습니다. 이 프로그램을 실행시키면, 두 개의 자기유지

가 동작됩니다.

Page 172: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

172

이 회로에 약간의 수정만 더 하면, “인터록”회로를 구성할 수 있습니다.

이렇게 한다면, 어느 한쪽이 동작 중일 때 다른 한쪽은 동작할 수 없는 상태가 됩니다. 이처럼, 여러 개의 회로간

에 서로조건을 추가하여 동작을 금지시키거나, 동작이 되도록 만드는 회로를 “인터록”회로라고 부릅니다.

Page 173: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

173

노트 3. 스위칭 회로

한 개의 보턴으로 한번 누르면 출력이 ON 되고, 한번 더 누르면 출력이 OFF 되는 회로입니다. 일종의 TOGGLE

동작이라고 할 수 있습니다. 다음과 같이 회로를 구성하세요.

CUBLOC STUDY BOARD-1 이 있으신 분은 다음과 같이 결선하십시오.

한번 누르면 모터가 돌아가고, 한번 더 누

르면 모터가 멈추는 상황을 생각하시면

됩니다.

Page 174: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

174

아래와 같은 레더로직을 작성하고, 실행시켜 보세요. P0 스위치를 누르면 LED 에 불이 들어오고, 다시 한 번 누르

면 LED 에 불이 꺼집니다.

이 동작을 타이밍 차트로 표현하면 다음과 같습니다.

Page 175: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

175

노트 4. 레더에서 온도읽기

레더로직에서 온도센싱을 하기 위해서는 BASIC 프로그램의 도움이 필요합니다. BASIC 프로그램에서 A/D 컨버터

를 통해, 온도센서에서 값을 읽어 들인 후, 테이블 변환을 통해 실제 온도 값으로 환산하여, D 영역에 저장합니다.

그러면, 레더에서 D 영역에 있는 값을 읽어서 원하는 처리를 하게 됩니다.

온도센서의 종류에는 열전쌍, PT100 센서, NTC, PTC 써미스터등 다양한 종류가 있습니다. 본 노트에서는 NTC

서미스터를 이용한 온도센싱 방법에 대하여 소개하겠습니다.

NTC 서미스터는 온도에 민감한 저항으로 만들어진 센서로 볼 수 있습니다. 온도에 따라 저항 값이 바뀌기 때문

에, 이를 이용하여 온도를 알아낼 수 있습니다. NTC 서미스터 중 세라믹으로 되어 있는 타입은 –20 도~130 도 정

도의 온도를 검출해 낼 수 있습니다.

마치 다이오드처럼 생긴 NTC 서미스터가 있는데, 이 센서를 사용하면 –30 도~250 도까지 온도센싱이 가능합니다.

제조사의 홈페이지를 통하여 선택한 센서의 R-T 변환 테이블 (저항-온도)를 구할 수 있습니다. 다음은 다이오드

타입 10K 오옴 NTC 서미스터의 R-T 변환 챠트와 테이블을 요약한 것입니다.

MAX(Ω)R-CEN(Ω) MIN(Ω)

R-TOL(%)

T-TOL(℃)

10

100

1,000

10,000

100,000

1,000,000

-30-20-100102030405060708090100110120130140150160170180190200210220230240250

TEMPERATURE (℃)

RE

SIS

TA

NC

E (

Ω

0.0

1.0

2.0

3.0

4.0

5.0

6.0

7.0

8.0

9.0

DSC Electronics R&D Section

R-T

OL (

%)

& T

-T

O(℃

)

만약 여러분이 온도센서를 파는 상점에 가셨다면 “다이오드 타입 10 K 오옴, NTC 서미스터”를 찾는다고 하면, 쉽

게 구할 수 있을 것입니다.

Page 176: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

176

온도 최저치 중간치 최대치

0 31260.0 32610.0 33987.7

1 29725.7 30993.7 32286.7

2 28275.6 29466.8 30680.6

3 26904.5 28023.9 29163.6

4 25607.8 26660.0 27730.3

5 24381.0 25370.2 26375.7

6 23220.0 24150.1 25094.9

7 22120.9 22995.7 23883.7

8 21080.1 21903.1 22737.7

9 20094.1 20868.5 21653.3

10 19159.9 19888.7 20626.7

11 18274.4 18960.5 19654.6

12 17434.8 18080.8 18733.8

13 16638.5 17246.9 17861.4

14 15883.1 16456.1 17034.4

15 15166.2 15706.0 16250.4

16 14485.7 14994.4 15506.9

17 13839.6 14318.9 14801.5

18 13225.9 13677.7 14132.2

19 12642.8 13068.7 13496.9

20 12088.7 12490.3 12893.6

21 11561.9 11940.6 12320.7

22 11061.0 11418.2 11776.4

23 10584.6 10921.6 11259.2

24 10131.3 10449.3 10767.5

25 9700.0 10000.0 10300.0

26 9281.3 9572.5 9864.0

챠트를 보면 저항 값과 온도 값의 변환곡선이 일정치 않음을 알 수 있습니다. 저항 값을 일정한 계산공식에 의해

온도 값으로 환산하기 쉽지 않기 때문에, 테이블에 의한 변환방식을 사용합니다. 온도센싱을 위해서 다음과 같은

회로를 사용합니다. 큐블록으로 유입되는 과전압을 차단하기 위해서 제너다이오드를 반드시 사용해야 합니다.

NTC TH.

5.1V ZENERDIODE 0.47uF CUBLOC

A/D CHANNEL 0

1Kohm.1%

회로에서 알 수 있듯이 온도센서와 1K 저항 사이에서 분압된 전압 값을 A/D 변환기로 읽어내는 방법을 온도센싱

을 수행합니다. 큐블록에는 10BIT A/D 변환기가 내장되어 있어, 0~1024 의 값으로 변환됩니다. 이 값을 온도 값

으로 변환하는 테이블을 작성하는 것이 본 어플리케이션 노트의 핵심입니다.

다음은 R-T 변환 테이블의 저항 값이 A/D 변환 후 어떤 값으로 변환되는지를 계산해 놓은 표입니다. (일부 온도

범위만 기재해 놓았습니다.)

Page 177: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

177

온도 저항 값 전압 A/D변환 값

-30 175996.6 4.971750865 1018

-29 165473.9 4.969965259 1018

-28 155643.6 4.968080404 1017

-27 146456.3 4.966091647 1017

-26 137866.4 4.963994167 1017

-25 129831.7 4.961782976 1016

-24 122313.4 4.959452909 1016

-23 115275.4 4.956998627 1015

-22 108684.3 4.954414614 1015

-21 102509.3 4.951695171 1014

-9 52288.3 4.90617073 1005

-8 49549.7 4.901087406 1004

-7 46970.5 4.895769279 1003

-6 44540.6 4.890207868 1002

-5 42250.5 4.884394522 1000

-4 40091.5 4.878320427 999

-3 38055.4 4.871976604 998

-2 36134.4 4.865353924 996

-1 34321.5 4.858443112 995

0 32610.0 4.851234752 994

1 30993.7 4.8437193 992

2 29466.8 4.835887094 990

3 28023.9 4.827728362 989

4 26660.0 4.819233234 987

5 25370.2 4.810391755 985

6 24150.1 4.801193902 983

7 22995.7 4.79162959 981

8 21903.1 4.781688696 979

9 20868.5 4.771361072 977

10 19888.7 4.760636561 975

11 18960.5 4.749505017 973

12 18080.8 4.737956327 970

13 17246.9 4.725980424 968

14 16456.1 4.713567319 965

15 15706.0 4.700707114 963

16 14994.4 4.68739003 960

17 14318.9 4.673606431 957

18 13677.7 4.659346849 954

19 13068.7 4.644602011 951

20 12490.3 4.629362861 948

21 11940.6 4.613620595 945

22 11418.2 4.597366683 942

23 10921.6 4.580592903 938

24 10449.3 4.563291365 935

25 10000.0 4.545454545 931

26 9572.5 4.527075313 927

27 9165.6 4.508146964 923

28 8778.3 4.488663246 919

29 8409.4 4.468618396 915

30 8058.1 4.448007162 911

31 7723.3 4.426824842 907

32 7404.3 4.405067304 902

33 7100.2 4.382731022 898

34 6810.2 4.359813102 893

35 6533.7 4.336311306 888

36 6269.8 4.312224084 883

37 6018.0 4.287550592 878

38 5777.7 4.262290722 873

Page 178: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

178

39 5548.3 4.236445118 868

50 3606.1 3.914475937 802

51 3472.1 3.881948015 795

52 3343.7 3.848917708 788

53 3220.8 3.815397329 781

54 3103.1 3.781399998 774

55 2990.2 3.746939622 767

56 2882.1 3.712030877 760

57 2778.4 3.676689176 753

58 2679.0 3.640930651 746

59 2583.6 3.604772114 738

81 1220.4 2.748157207 563

82 1181.9 2.7084025 555

83 1144.8 2.668747011 547

84 1109.0 2.629210536 538

85 1074.5 2.589812422 530

86 1041.3 2.550571543 522

87 1009.2 2.511506263 514

88 978.3 2.472634416 506

89 948.5 2.433973277 498

90 919.8 2.395539544 491

91 892.0 2.357349316 483

92 865.3 2.319418079 475

93 839.4 2.281760687 467

94 814.5 2.244391354 460

95 790.4 2.207323646 452

96 767.1 2.170570465 445

97 744.7 2.134144055 437

98 723.0 2.098055989 430

99 702.0 2.062317177 422

100 681.8 2.026937858 415

101 662.2 1.99192761 408

102 643.3 1.957295352 401

103 625.0 1.92304935 394

104 607.3 1.889197225 387

105 590.2 1.855745964 380

106 573.7 1.822701928 373

107 557.7 1.790070865 367

108 542.2 1.757857926 360

109 527.2 1.726067674 353

239 33.5 0.162295782 33

240 33.0 0.159800146 33

241 32.5 0.157350769 32

242 32.0 0.154946682 32

243 31.5 0.152586936 31

244 31.0 0.150270604 31

245 30.5 0.147996779 30

246 30.0 0.145764577 30

247 29.6 0.143573131 29

248 29.1 0.141421596 29

249 28.7 0.139309144 29

250 28.2 0.137234968 28

Page 179: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

179

' ' NTC THERMISTOR READ TABLE ' 10K DIODE TYPE ' With Ladder Logic Const Device = cb280 Const Integer TH_TABLE = (992,990,989,987,985,983,981,979,977,975, 973,970,968,965,963,960,957,954,951,948, 945,942,938,935,931,927,923,919,915,911, 907,902,898,893,888,883,878,873,868,862, 857,851,845,839,833,827,821,815,808,802, 795,788,781,774,767,760,753,746,738,731, 723,716,708,700,692,684,677,669,661,652, 644,636,628,620,612,604,596,587,579,571, 563,555,547,538,530,522,514,506,498,491, 483,475,467,460,452,445,437,430,422,415) Dim a As Integer,b As Integer Set Ladder on Do

b = Tadin(0) If b > 990 Or b < 400 Then _D(10) = 65535 ‘범위를 벗어날 경우에는 &hffff 를 저장 Else For a=0 To 100

If b > TH_TABLE(a) Then Exit For Next _D(10) = a ‘ 결과값을 D10 에 저장 End If Delay 500 ‘ 0.5 초마다 한번씩 갱신 Loop

A/D 변환을 위해 TADIN 라이브러리를 사용하면, 자동적으로 10 번의 A/D 변환 결과의 평균치를 리턴하기 때문

에, 좀더 정밀한 측정이 가능합니다. 본 샘플프로그램은 0~100 도까지의 측정결과만을 표시합니다. 좀더 넓은 범

위의 온도센싱을 하려면 본 소스를 적절히 바꾸어 사용하시기 바랍니다.

R-T 온도 테이블에서 A/D 변환 값을 산출해 내는 공식은 다음과 같습니다. 먼저 서미스터의 저항 값 (THR)을 가

지고 1K 옴의 저항과 5V 를 분압했을 때의 전압은 다음 공식으로 계산합니다.

5x THRV =

(1000 + THR)

V를 10 비트 분해능의 A/D변환기를 넣으면 0~1024 사이의 값으로 변환됩니다. 최종 결과값을 얻으려면 V를

204.8 과 곱해줍니다. 서미스터 제조회사에서 제공하는 R-T변환 테이블을 EXCEL에 입력한 뒤 위의 공식을 대

입한다면, 쉽게 최종 결과값을 얻을 수 있습니다. (온도센서 판매업체 홈페이지 : http://www.dscelec.co.kr , )

Page 180: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

180

레더에서는 단순히 D10 영역의 값을 비교해서, 원하는 범위에 들어갔을 때, 출력을 ON /OFF할 수 있습니다. 다

음 레더를 실행시키면

모니터링 상태에서 D10 의 값을 보면, 다음과 같습니다. (92 도 이상일 때 M1 이 ON 됩니다.)

Page 181: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

181

제 11 장

입출력 회로

Page 182: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

182

다운로드 케이블 연결

CUBLOC 을 사용하기 위해서 우선적으로 PC 와의 RS232 다운로드 케이블을 연결해야 합니다. 다운로드 케이블

은 1:1 연결을 사용하며 총 9 가닥 중 4 가닥의 신호 선만을 사용합니다.

11

22

33

44

55

66

77

88

99

MALE Type FEMALE Type

PC sideCuBLOC side

RS232 cable

PC

SOUTSINATNVSS

P0P1P2P3P4P5P6P7

123456789101112

242322212019181716151413

VINVSSRESVDDP15P14P13P12P11P10P9P8

Rx

Tx

DTR

GND

1

2

3

4

5

6

7

8

9

Page 183: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

183

PC 통신포트의 점검

간혹 PC 상의 통신포트 설정이 잘못되어 있어, CUBLOC 다운로드가 안 되는 경우가 있습니다. PC 에는 보통 1~2

개의 RS232 통신포트가 내장되어 있지만, 이 통신포트를 사용 가능한 상태로 만들어 주는 것은 유저의 몫입니다.

PC 의 RS232 통신포트를 제대로 동작시키기 위해서는 BIOS 셋업과 윈도우 드라이버설치까지 제대로 구성되어

있어야 하기 때문입니다.

우선 BIOS 상에서 RS232 통신포트 설정방법에 대하여 설명하겠습니다. 컴퓨터 부팅 시에 DEL 키를 누르면 (PC

에 따라서 다른 키를 사용하는 경우도 있음) BIOS SETUP 화면이 표시됩니다. BIOS 의 종류에 따라서 다른 화면

이 표시됩니다.

다음 화면그림을 참조하여, 마더보드상에 있는 RS232 통신포트가 Disable 상태로 되어 있지 않도록 설정하시기

바랍니다.

ROM PCI /ISA BIOS CMOS SETUP UTILITY AWARD SOFTWARE, INC

STANDARD CMOS SETUP INTERGRATED PERIPHERALS BIOS FEATURE SETUP SUPERVISOR PASSWORD CHIPSET FEATURE SETUP USER PASSWORD POWER MANAGEMENT SETUP IDE HDD AUTO DETECTION PCI CONFIGURATION SAVE & EXIT SETUP LOAD SETUP DEFATULTS EXIT WITHOUT SAVIING ESC : QUIT < > : SELECT ITEM F10 : SAVE & EXIT SETUP (SHIFT)F2 : CHANGE COLOR

ROM PCI /ISA BIOS CMOS SETUP UTILITY AWARD SOFTWARE, INC

OnBoard FDD Controller : Enable OnBoard Serial Port 1 : 3F8 / IRQ4 OnBoard Serial Port 2 : Disable OnBoard Parallel Port : 378 / IRQ7 OnBoard Parallel Mode : ECP / EPP

주변장치 셋업을 선택

보드상의 시리얼포트1을

COM1에 할당합니다.

Page 184: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

184

다음은 윈도우가 COM 포트 드라이버를 제대로 인식하고 있는지 체크해보아야 합니다. <내 컴퓨터 – 시스템 정보

표시 – 하드웨어 - 장치관리자>까지 선택하여 들어가 보면, 아래 화면이 표시됩니다. (윈도우XP 의 경우)

이 다이얼 로그 박스에서 “통신포트 (COM1)”이 표시되어 있는지 확인하시기 바랍니다. 만약 통신포트가 나와있

지 않다면 <동작>메뉴에서 <하드웨어변경사항 검색>을 눌러, COM1 포트를 추가하시기 바랍니다.

끝으로 CUBLOC STUDIO 의 “SETUP”메뉴에서 “PC 인터페이스 설정”에서 COM1 포트로 셋팅해주면 CUBLOC

통신포트 설정이 완료된 것입니다.

Page 185: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

185

모든 설정이 다 끝났다면, RS232 다운로드 케이블의 3 번 단자에서 –10V ~ -12V 정도가 나오고 있는지를 확인해

보시기 바랍니다. 간혹 케이블이 잘못되었거나, PC 내부 마더보드의 컨넥터가 연결되어 있지 않는 경우도 발생하

기 때문입니다.

Rx

Tx

DTR

GND

1

2

3

4

5

6

7

8

9

-12V

RS232 포트 셋팅은 최초 한번만 제대로 설치한다면, 이후부터는 신경 쓸 필요가 없게 됩니다.

Page 186: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

186

USB-RS232 케이블 사용

만약 PC 에 RS232 포트가 없다면 USB-RS232C 변환 케이블을 사용

하여 연결하시기 바랍니다. 아래 사진은 컴파일 테크놀로지에서 판매

하고 있는 USB-RS232C 변환케이블입니다. 이 케이블을 PC 의 USB

포트에 연결하신 뒤 디바이스 드라이버를 설치해주어야 합니다.

www.comfile.co.kr 에서 USB-

RS232 케이블 드라이버를 다운로

드 받으실 수 있습니다.

다운로드 된 파일은 ZIP 으로 압축

되어 있습니다. 압축을 풀면 USB

DRIVER 폴더가 생성됩니다.

사용하는 제품에 따라 USB 1.1 드

라이버를 설치해 주어야 하는 제품

이 있고, USB 2.0 드라이버를 설치

해 주어야 하는 제품도 있습니다.

(제품 버전에 따라 다름)

드라이버 설치가 끝나면, “내 컴퓨

터”의 “시스템 상태”에서 “디바이스

관리자”의 “Ports(COM & LPT)”를

보면 몇 번 COM 포트에 할당되었

는지 알 수 있습니다.

Page 187: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

187

이 그림의 경우에는 COM3 으로 할당되었습니다. 큐블록 스튜디오에서 PC 인터페이스 셋업을 선택하신 후, 사용

포트를 COM3 으로 조정하시면 됩니다.

여기까지 하시면 USB-RS232 케이블 사용을 위한 모든

준비가 끝난 것입니다. 이제 CUBLOC STUDIO 에서

프로그램을 작성한 뒤 실행버튼을 눌러보세요. 다운로

드가 잘 될 것입니다. 만약 다운로드가 잘 되지 않는다

면, USB 드라이버의 재설치 및 전원 통신케이블 접속

상태 등을 체크해 보시기 바랍니다. (참고적으로 USB-

RS232 케이블 사용시, 대용량 USB 저장장치를 동시

접속하면, 다운로드 시 문제가 발생될 수 있으므로 주의

하시기 바랍니다.)

*RS232-USB 케이블은 반드시 컴파일 테크놀로지㈜에

서 판매 및 권장하는 제품을 사용하시기 바랍니다. 시중

에는 검증되지 않은 방식을 사용한 컨버터 케이블이 많

이 있으며, 이러한 제품들이 큐블록과 호환성이 있는지

모두 검토되지 않았기 때문입니다.

Page 188: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

188

다운로드 시 발생되는 에러멧세지

1. RS232 통신에러입니다. 케이블상태나 전원상태, PC 의 통신 설정상태를 점검해보십시오.

케이블을 연결하지 않았거나, CUBLOC 코어모듈에 전원이 공급되지 않았을 경우, 또는 PC 상의 통신포트 설정에

이상이 있는 경우 발생하는 에러 멧세지입니다.

2. Ladder 에서 END 를 찾을 수 없습니다.

소스파일 자체를 오픈하지 않았거나, LADDER 부에서 END 명령을 작성하지 않은 경우입니다. 이 경우는 통신문

제와는 관계없는 경우입니다.

3. Ladder 컴파일 에러

LADDER 부에서 문법상의 오류 및 회로 결선상의 오류가 있는 경우입니다. 이 경우는 통신문제와는 관계없는 경

우입니다.

4. 존재하지 않는 RS232 포트입니다.

PC 상의 COM 포트 셋업에 문제가 있는 경우이거나, 존재하지 않는 COM 포트를 선택한 경우입니다. 앞에서 설명

한 BIOS 셋업상태와 윈도우 시스템에서의 COM 포트 설정상태를 점검해 보아야 합니다. 앞에서 설명한대로 설정

했는데도 불구하고 똑 같은 에러가 발생한다면 PC 전문가의 도움을 받아야 합니다. 이 에러는 CUBLOC STUDIO

에서 COM 포트를 찾지 못하는 문제이므로, CUBLOC 하드웨어 상태와는 무관한 문제입니다.

5. CB220 모듈이 아닙니다. CONST DEVICE 문에서 선언한 모듈과 다른 모듈이 연결되어 있습니다.

CONST DEVICE 선언문을 사용해서 어떤 큐블록 코어모듈을 사용 중인지를 CUBLOC STUDIO 가 알 수 있도록

해주어야 합니다. <사용 예 : CONST DEVICE = CB280 >

6. 체크섬 불일치 발생: 플레쉬 메모리의 일부가 손상되었습니다.

큐블록 코어모듈 내부에 있는 플레쉬 메모리의 일부가 손상되거나, 다운로드 중 전원의 불안이나 기타요인 등으

로 인해, 제대로 플레쉬에 기입되지 못한 경우입니다. 이 경우 다시 다운로드 하면 제대로 다운로드 될 수도 있습

니다. 반복해서 같은 에러멧세지가 발생한다면 메뉴상의 “펌웨어 다운로드”를 실행한 뒤 다시 해보시고, 그래도

안 된다면, 큐블록 코어모듈을 다른 것으로 교체하여 사용하시기 바랍니다. 큐블록 내부에 있는 플레쉬 메모리는

최대 10 만번까지 다운로드 가능하며, 그 이상 사용하였을 경우, 특정 메모리 블록이 손상될 수 있습니다.

7. 억세스 코드가 잘못되었습니다.

큐블록 내부에 있는 “슈퍼바이저”칩이 손상된 경우입니다. 이 경우에도 펌웨어 다운로드를 다시 해보시고, 그래도

안 된다면 큐블록 코어모듈을 다른 것으로 교체해야 합니다.

Page 189: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

189

큐블록 기본회로

큐블록 코어모듈이 동작하기 위해서 기본적으로 구성해주어야 하는 회로입니다. CB220 의 경우 외부에서

5.5V~12V 의 전원을 인가하면 내부적으로 5V 를 만들어 사용할 수 있습니다. 이 경우 소비전류는 100mA 이내

로 맞추어주어야 합니다.

SOUTSINATNVSS

P0P1P2P3P4P5P6P7

123456789101112

242322212019181716151413

VINVSSRESVDDP15P14P13P12P11P10P9P8

Rx

Tx

DTR

GND

1

2

3

4

5

6

7

8

9

DC5.5~12V

만약 소비전류가 100mA 를 초과하는 경우 아래그림과 같이 외부에서 5V 를 직접공급해주는 방법으로 회로를 구

성해야 합니다.

SOUTSINATNVSS

P0P1P2P3P4P5P6P7

123456789101112

242322212019181716151413

VINVSSRESVDDP15P14P13P12P11P10P9P8

Rx

Tx

DTR

GND

1

2

3

4

5

6

7

8

9

DC5V

CB280 의 경우에는 내부에 전원 레귤레이터가 없으므로, 외부에서 5V 를 공급해주어야 합니다.

Rx

Tx

DTR

GND

1

2

3

4

5

6

7

8

9

SOUTSIN

ATNVSS

P0P1P2P3P4P5P6P7P8P9

P10P11

TX1RX1

AVDDN/CP24P25P26P27P47P46P45P44P43P42P41P40

VDDVSSRESN/CP16P17P18P19P20P21P22P23P15P14P13P12

123456789

10111213141516

33343536373839404142434445464748

49505152535455565758596061626364

17181920212223242526272829303132

TTLTX1TTLRX1AVREFP48P31P30P29P28P32P33P34P35P36P37P38P39

DC5V

Page 190: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

190

입출력 회로 구성법 다음은 LED, 스위치, 볼륨 등 기초적인 소자들을 “큐블록”과 연결하는 회로입니다.

LED 연결회로 큐블록의 I/O 포트에 다음회로와 같이 LED 를 연결한 뒤, 해당 포트로 HIGH 를 출력하면 LED 가 켜집니다.

CuBLOC I/O Port330 ohm

스위치 연결회로 큐블록의 I/O 포트에 다음회로와 같이 스위치를 연결한 뒤, 해당 포트로 INPUT 상태로 만들고, 스위치를 누르면

HIGH 가 입력되고, 스위치를 누르지 않으면 LOW 가 입력됩니다.

CuBLOC I/O Port10Kohm

볼륨 연결회로 큐블록의 A/D 입력 가능한 I/O 포트에 다음회로와 같이 볼륨을 연결한 뒤, ADIN 명령으로 볼륨의 상태를 읽어올

수 있습니다.

CuBLOC I/O Port10K ohm

Page 191: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

191

큐블록 코어모듈은 기본적으로 5V 로 구동됩니다. 5V 를 초과하는 전원전압을 I/O 로 사용하고자 할 때에는 별도의

변환회로를 추가해주어야 합니다.

RELAY 출력 회로 큐블록 I/O 포트에 릴레이를 연결하는 기본회로입니다. 포토커플러를 사용하여 24V 측과 전원을 완전히 분리하였

으므로, 24V 측의 노이즈 등이 5V 측으로 전달되지 않도록 구성된 회로입니다. (LOAD 란 부하를 의미합니다.)

RELAY 출력회로는 단지 접점회로에 불과하므로, 외부에 별도의 전원을 구성해주어야 합니다.

CuBLOC I/O Port

24V +

GND 24V -

PC-18T110K

1N4148

222

RELAY

ZNR

24V

+

24V+

LOAD

NPN TR 출력 회로 NPN TR 을 포토커플러를 사용해서 5V 측 전원과 분리시켜 연결한 회로입니다.

CuBLOC I/O Port

24V +

24V -

PC-18T1

10K

4.7K

1N4148 LOAD

DC24V 입력회로 양극성 포트커플러를 사용해서 DC24V 의 입력신호가 들어오면 CUBLOC 에 HIGH 가 입력되는 회로입니다.

CuBLOC I/O Port

2.2K (1W)

270

10022K

680

47K

5V

KPC714

0.1uF

24V+ 24V

+

Page 192: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

192

AC220V 입력 회로 AC220V 를 입력하면, CUBLOC 에 HIGH 가 입력되는 회로입니다.

CuBLOC I/O Port

GND

2.2K

22K

330

50K

5V

PC-17T1

0.1uF

AC220V

47uF+

82K

A/D 입력 회로 A/D 입력을 위해서 CB280 모델은 AVDD 와 AVREF 에 5V 를 연결해 주어야 합니다. AVDD 는 ADC 회로에 전

원을 인가해주고, AVREF 는 AD 변환의 기준이 되는 전압을 알려주는 기능을 합니다. AVREF 가 5V 이면 0~5V

사이의 입력 값을 A/D 변환하고, AVREF 가 3V 이면 0~3V 사이의 입력 값을 A/D 변환합니다.

SOUTSIN

ATNVSS

P0P1P2P3P4P5P6P7P8P9

P10P11

TX1RX1

AVDDN/CP24P25P26P27P47P46P45P44P43P42P41P40

VDDVSSRESN/CP16P17P18P19P20P21P22P23P15P14P13P12

123456789

10111213141516

33343536373839404142434445464748

49505152535455565758596061626364

17181920212223242526272829303132

TTLTX1TTLRX1AVREFP48P31P30P29P28P32P33P34P35P36P37P38P39

DC5VDC5V

DC5V

CB220 모델에서는 AVDD 와 AVREF 단자가 내부적으로 5V 에 연결되어 있고, 핀 아웃에 별도로 나와 있지 않습

니다.

Page 193: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

193

다음은 가장 간단한 형태의 A/D 변환회로로, 볼륨을 사용한 A/D 변환 회로입니다. 볼륨을 돌리면 0~1023 사이의

값으로 A/D 변환을 수행합니다. 0V 일 때, 0 을, 5V 일 때 1023 을 반환합니다.

CuBLOC I/O Port10K ohm

5V

다음은 4~20mA 입력을 받는 A/D 변환회로입니다. 250 오옴의 저항을 구할 수 없을 때에는 220ohm 과 30oh 을

직렬로 연결하여 사용합니다.

CuBLOC I/O Port4~20mA

250ohm

0~10V 입력을 받는 경우에는 다음과 같이 저항2 개를 써서 분압하는 방식으로 A/D 변환을 수행합니다.

CuBLOC I/O Port0~10V

1Kohm

1Kohm

PWM 으로 D/A 변환 하는 회로 CUBLOC 에는 PWM 포트가 6 개 있습니다. 이 PWM 포트에 간단한 회로를 부착하면 D/A 변환기로 사용할 수 있

습니다.

CuBLOC PWM Port0~5VOUTPUT

47uF

10Kohm

Page 194: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

194

RS232 회로 CUBLOC 에 있는 다운로드용 RS232 포트는 +/- 12V 신호와 연결하는 포트입니다. CB220 모델의 포트 10, 11

에 있는 RS232 채널1 은 5V 신호를 입출력 하는 RS232 포트입니다.

SOUTSIN

ATNVSS

P0P1P2P3P4P5P6P7

123456789101112

242322212019181716151413

VINVSSRESVDDP15P14P13P12P11P10P9P8

+12V

+5V

-12V

GND

CB280 의 경우 RS232C 채널1 에는 5V 신호와 +/-12V 신호를 모두 사용할 수 있습니다.

SOUTSINATNVSS

P0P1P2P3P4P5P6P7P8P9

P10P11

TX1RX1

AVDDN/CP24P25P26P27P47P46P45P44P43P42P41P40

VDDVSSRESN/CP16P17P18P19P20P21P22P23P15P14P13P12

123456789

10111213141516

33343536373839404142434445464748

49505152535455565758596061626364

17181920212223242526272829303132

TTLTX1TTLRX1AVREFP48P31P30P29P28P32P33P34P35P36P37P38P39

+5V

GND

+12V

+12V

-12V

-12V

이처럼 두 종류의 RS232 신호레벨이 존재하는 이유는 다음과 같습니다. 우리들이 흔히 볼 수 있는 PC 의 RS232

포트는 +/-12V 의 RS232 신호레벨입니다. 이 신호를 5V 레벨의 신호로 바꾸기 위해서는 별도의 변환회로가 필

요합니다.

큐블록에서 다운로드포트가 +/- 12V 레벨을 직접 받을 수 있도록 한 이유는, PC 와 별도의 변환회로 없이 직접

연결할 수 있도록 하기 위해서입니다. RS232 채널1 은 PC 가 아닌 다른 장치, 예를 들면 RS422, RS485 등을 사

용하는 장치와도 연결할 수 있도록 5V 레벨의 RS232C 를 기본적으로 지원합니다.

Page 195: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

195

CB280 의 경우, 사용의 편리성을 위하여 채널1 에도 +/-12V 레벨의 RS232 신호를 추가한 것입니다. 따라서 5V

의 채널 1 과 +/-12V 의 채널 1, 둘 중 하나의 포트만 이용할 수 있으며, 어느 한쪽을 이용할 경우, 다른 한쪽은

NC (No Connection)상태로 두어야 합니다.

기본적으로 5V 레벨의 RS232 신호는 다음과 같은 회로에 의해 +/- 12V 레벨의 RS232 신호로 변환됩니다.

2

35

12345678

161514131211109

5V5V

0.1uF

CuBLOC RXCuBLOC TX

TD

RD

0.1uF

0.1uF

0.1uF

0.1uF

PCRS232CPort

MAX232 는 5V 레벨과 +/-12V 레벨을 변환해 주는 레벨 변환 칩입니다.

12345678

161514131211109

TTL INPUT

TTL OUTPUT

TTL OUTPUT

TTL INPUT

RS232C OUTPUT

RS232C INPUT

RS232C INPUT

RS232C OUTPUT

MAX232

Page 196: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

196

CUBLOC STUDY BOARD 회로도 큐블록 스터디 보드는 큐블록을 보다 쉽게 공부할 수 있도록 만든 제품입니다. 큐블록 실험 실습에 필요한 전원회

로, 통신회로, LED, 스위치, 볼륨 등을 내장하고 있으며, 브레드보드를 사용해서 납땜작업 없이 와이어 선만으로도

회로구성이 가능합니다. 그 외 ALCD, CuNET 포트 등도 내장하고 있습니다. 스터디보드는 각각의 모듈 별로 독립

된 회로로 구성되어 있어, 유저가 와이어 선으로 배선을 해주어야 제대로 된 동작을 할 수 있습니다. 다음은 큐블

록 스터디보드의 구성입니다.

PIEZO

I/O PortsContact

CuNET

(3)ALCDConnector

Bread Board

(4)CuNETJumper

Contact(LED, S/Ws)

RS232 CHANNEL 1 POWER S/WDC 9V INPUT

Download Port

(1) RS232 CH1 Contact (2) CB280 TX/RX

Contact

Reset Switch

DC 9V 입력에 DC 아답터를 연결하면, STUDY BOARD 안에 있는 5V 레귤레이터 회로에 의해서 5V 가 공급됩니

다. DC 아답터 잭은 극성에 상관없이 사용할 수 있습니다. 안정된 회로동작을 위해서 반드시 9VDC 아답터

(200mA 이상) 를 사용하시기 바랍니다.

(1) RS232 채널1 콘텍포인트 : 뒷번에 있는 RS232 연결 잭을 사용하기 위해서는 이곳에 선을 연결해 주어야 합

니다. 큐블록 코어 모델에 따라 RS232 채널1 핀의 위치가 다릅니다.

Page 197: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

197

(2) CB280 코어모듈에서 RS232 채널 1 의 RX,TX 단자입니다. 이 곳을 다음 그림처럼 연결해주는 것 만으로

CB280 에서 RS232 채널1 을 사용할 수 있습니다.

TXTX

RXRX

(3) ALCD 는 RS232 를 입력 받는 LCD 모듈입니다. ALCD 를 사용하기 위해서는 RS232 CH1 의 출력을 이곳에

연결한 뒤 사용해야 합니다.

TX

RX

ALCD

(4) CuNET 을 사용하기 위해서는 이 점퍼를 모두 SHORT 상태로 두어야 합니다. 만약 CuNET 을 사용하지 않고,

8,9 번 포트를 일반 I/O 로 사용하려면 이 점퍼를 모두 OPEN 상태로 두어야 합니다.

Page 198: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

198

다음은 CUBLOC STUDY BOARD 1 의 회로도입니다.

Page 199: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

199

CUBLOC STUDY BOARD-1 에서 와이어 선으로 배선을 한 예입니다.

이렇게 배선한다면 다음과 같은 회로가 구성된 것입니다.

Page 200: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

200

BASE BOARD 큐블록 코어 모듈을 실제 현장에 응용하기 위해서는, 산업현장에서 주로 사용하는 24V 입 출력 신호와 연결해야

합니다. 그렇게 하기 위해서 BASE BOARD 와 같은 제품이 추가로 필요합니다. BASE BOARD 에는 24V 입력, NPN

TR 출력 외에도 AD 입력, PWM 출력, HIGH-COUNTER 입력을 위한 포트가 있습니다. 또한 RS232 통신을 위한 회

로도 들어있습니다. 다음은 BASE BOARD-32M 의 회로도입니다. 이 제품에는 CB280 을 장착하여 사용할 수 있습

니다.

입출력 I/O 배치도입니다. BASE-BOARD-32M 의 경우 16 개의 입력과 12 개의 출력포트가 있습니다.

Page 201: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

201

BASE BOARD 의 입력 결선방법

DC24V 입력 쪽에는 아래 그림처럼, 스위치와 전원을 사용해서 결선합니다. DC24V 입력회로는 양방향 극성을 다

입력할 수 있습니다. 아래 그림과 같이 +극과 –극을 바꾸어 입력할 수 있습니다.

P32

P33

P34

P35

P36

P37

P38

P39

CO

M1

P32

P33

P34

P35

P36

P37

P38

P39

CO

M1

단순한 접점 신호라면, 베이스보드에 입력하는 DC24V 전원 선을 사용해서 입력 신호에 전원을 공급해 줍니다.

P32

P33

P34

P35

P36

P37

P38

P39

CO

M1

Page 202: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

202

BASE BOARD 의 출력 결선방법

BASE BOARD 는 NPN TR 출력 포트를 내장하고 있습니다. 24V 출력단자와 같이 있어, 편리하게 사용할 수 있습

니다.

BASE BOARD 의 출력포트에 RELAY8 보드 또는 SSR8 보드를 연결하여, 사용할 수 있습니다.

릴레이 보드 또는 SSR 보드를 사용하면 220V (또는 110V)를 ON /OFF 하는 회로를 구성할 수 있습니다. 큐블록

의 포트에서 HIGH 를 출력하면 RELAY (SSR)의 접점이 붙고 (CLOSE), LOW 를 출력하면 떨어집니다(OPEN).

SSR 은 무접점 릴레이 이기 때문에, 수명이 반 영구적이며, 동작소음이 발생하지 않는 대신, 교류에서만 사용할

수 있습니다. 또한 릴레이 (또는 SSR)의 정격전류/전압 안에서 사용할 수 있습니다. 자세한 스팩은 해당제품의 매

뉴얼을 참조하시기 바랍니다.

Page 203: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

203

INDEX

16 진수.................................................................................103

2 진수...................................................................................103

7 세그먼트 디스플레이..................................................135

고속카운터 입력...............................................................131

릴레이 사용현황 보기......................................................49

릴레이 제어반.....................................................................26

릴레이 표현.........................................................................56

멀티테스킹...........................................................................15

모니터링 ...............................................................................41

반도체형 ...............................................................................17

별명........................................................................................60

비교명령 ...............................................................................97

사운드발생.........................................................................146

스탭 콘트롤.........................................................................93

연산식 수행.......................................................................148

응용명령어.........................................................................100

인터록..................................................................................171

큐블록 코어모듈.................................................................24

타임차트 모니터링 ............................................................43

특수릴레이.........................................................................121

A/D 입력 .............................................................................128

ALIAS....................................................................................60

AND.......................................................................................73

ANDS ....................................................................................75

CALLS.................................................................................118

CONST DEVICE.................................................................61

CTD........................................................................................86

CTU........................................................................................86

DF...........................................................................................80

DFN........................................................................................80

DWADD..............................................................................109

DWAND..............................................................................114

DWDEC ..............................................................................108

DWDIV ...............................................................................111

DWINC................................................................................108

DWMOV.............................................................................104

DWMUL .............................................................................110

DWOR.................................................................................112

DWROL ..............................................................................115

DWROR..............................................................................116

DWSUB...............................................................................109

DWXCHG...........................................................................105

DWXOR..............................................................................113

FMOV..................................................................................106

GMOV.................................................................................107

GOTO ..................................................................................117

INTON.................................................................................119

KCTD.....................................................................................89

KCTU.....................................................................................89

LABEL ................................................................................117 LCD 디스플레이 ...............................................................138

LOAD ....................................................................................66

LOADN.................................................................................66

MCS.......................................................................................90

MCSCLR...............................................................................90

NOT .......................................................................................72

OR ..........................................................................................74

ORS........................................................................................75

OUT .......................................................................................66 PLC 셋업 마법사 ...............................................................47

PWM 출력 ..........................................................................130

RSTOUT................................................................................78

SBRT....................................................................................118

SET LADDER ON...............................................................60

SETOUT................................................................................78

STEPOUT .............................................................................96

STEPSET...............................................................................93

TAOFF...................................................................................83

TAON ....................................................................................81

TOFF......................................................................................83

TON .......................................................................................81

Usepin ....................................................................................59

Page 204: 사용자 설명서 Part 2 레더로직 중심 · 2013-08-17 · 1 basic과 ladder를 지원하는 초소형 임베디드 컴퓨터 tm 사용자 설명서 part 2 레더로직 중심

2

WADD................................................................................ 109

WAND................................................................................ 114

WDEC................................................................................. 108

WDIV.................................................................................. 111

WINC.................................................................................. 108

WMOV............................................................................... 104

WMUL................................................................................ 110

WOR ................................................................................... 112

WROL................................................................................. 115

WROR................................................................................. 116

WSUB................................................................................. 109

WXCHG............................................................................. 105

WXOR ................................................................................ 113