KR100628450B1 - 프로그래머블 컨트롤러 - Google Patents

프로그래머블 컨트롤러 Download PDF

Info

Publication number
KR100628450B1
KR100628450B1 KR1020047008828A KR20047008828A KR100628450B1 KR 100628450 B1 KR100628450 B1 KR 100628450B1 KR 1020047008828 A KR1020047008828 A KR 1020047008828A KR 20047008828 A KR20047008828 A KR 20047008828A KR 100628450 B1 KR100628450 B1 KR 100628450B1
Authority
KR
South Korea
Prior art keywords
serial port
state
protocol
communication
command
Prior art date
Application number
KR1020047008828A
Other languages
English (en)
Other versions
KR20050013527A (ko
Inventor
후카쓰노리야스
Original Assignee
미쓰비시덴키 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미쓰비시덴키 가부시키가이샤 filed Critical 미쓰비시덴키 가부시키가이샤
Publication of KR20050013527A publication Critical patent/KR20050013527A/ko
Application granted granted Critical
Publication of KR100628450B1 publication Critical patent/KR100628450B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Programmable Controllers (AREA)
  • Communication Control (AREA)

Abstract

하나 이상의 시리얼 통신용의 시리얼 포트(6)를 구비한 프로그래머블 컨트롤러에 있어서, 상기 시리얼 포트(6)를 상대 기기의 사양에 맞춰서 통신을 하는 범용 통신 프로토콜이 처리 가능한 제1 상태, 고정화된 사양에 따라 통신을 하는 컴퓨터 링크 전용 프로토콜이 처리 가능한 제2 상태 및 아이들 상태의 3개의 상태로 각각 달리 적절히 사용하는 스위칭 수단을 구비하고, 상기 스위칭 수단은 상기 시리얼 포트(6)가 아이들 상태일 때에는 범용 통신 프로토콜용 프로그램 중의 시리얼 포트(6)를 초기화하는 명령에 의해 시리얼 포트(6)를 상기 제1 상태로 스위칭하고, 외부 기기로부터 상기 컴퓨터 링크 전용 프로토콜을 사용한 통신을 개시하기 위한 신호를 상기 시리얼 포트(6)가 수신한 경우에는 시리얼 포트를 상기 제2 상태로 스위칭하며, 상기 시리얼 포트(6)가 제1 상태일 때에는 상기 범용 통신 프로토콜용의 프로그램중의 시리얼 포토(6)를 닫는 명령에 의해 시리얼 포트(6)를 아이들 상태로 스위칭하고, 상기 시리얼 포트(6)가 제2 상태일 때에는 상기 컴퓨터 링크 전용 프로토콜을 사용한 외부 기기와의 통신이 완료된 후에 시리얼 포트(6)를 아이들 상태로 스위칭 한다.
시리얼 통신, 시리얼 포트, 프로그래머블 컨트롤러, 범용 통신 프로토콜

Description

프로그래머블 컨트롤러 {PROGRAMMABLE CONTROLLER}
본 발명은 범용 통신 프로토콜 기능과 컴퓨터 링크 전용 프로토콜 기능을 적절히 사용 할 수 있는 시리얼 포트를 구비한 프로그래머블 컨트롤러에 관한 것이다.
일반적으로, 프로그래머블 컨트롤러에 요구되는 시리얼 통신에는 컴퓨터 링크 전용 프로토콜과 범용 통신 프로토콜이 있다. 컴퓨터 링크 전용 프로토콜은 엑세스하는 메시지가 헤더와 애플리케이션 데이터로 구성된 것으로 고정화되어 있고, 프로그래머블 컨트롤러는 상대 기기(계측기나 퍼스널 컴퓨터 등)로부터 보내져 오는 고정화된 명령에 따라 데이터 송수신을 하고 있기 때문에 사용자 프로그램을 필요로 하지 않는 프로토콜이다. 이 때문에, 컴퓨터 링크 전용 프로토콜은 프로그래머블 컨트롤러에 사용자 프로그램을 작성하지 않고 컴퓨터 등의 상대 기기로부터 프로그래머블 컨트롤러의 디바이스 데이터나 사용자 프로그램의 판독/기록을 하는 것이나 프로그래머블 컨트롤러 설비의 상태를 감시하는 것이 가능하게 되어 있다.
한편, 범용 통신 프로토콜은 상대 기기의 사양에 맞춘 임의의 메시지 포맷으로 데이터 통신을 할 수 있기 때문에 프로그래머블 컨트롤러 및 다른 시리얼 포트를 구비한 상대 기기의 통신을 가능하게 하고 있다. 이 때문에, 프로그래머블 컨 트롤러 및 다른 시리얼 포트를 구비한 상대 기기가 통신을 하기 위해서는 통신 상대 기기에 맞춘 통신제어용 시퀀스 프로그램을 작성 할 필요가 있다.
종래, 프로그래머블 컨트롤러에 시리얼 포트를 다수 설치하면 코스트가 높아지고, 프로그래머블 컨트롤러 자체도 크게 되어 버리는 문제가 있었다. 이 때문에, 프로그래머블 컨트롤러는 컴퓨터 링크 전용 프로토콜과 범용 통신 프로토콜 중 어느 하나의 기능을 구비하는 것이었다.
일본국 특허 제3234240호 공보에 기재된 프로그래머블 컨트롤러에 의하면, 컴퓨터 링크 전용 프로토콜과 범용 통신 프로토콜 양쪽의 기능을 사용할 수 있도록 프로그래머블 컨트롤러 내에 시리얼 포트를 상대방 또는 목적에 따라 각각 달리 적절히 사용하기 위한 파라미터를 기록하는 파라미터 영역을 설치하고 있다.
그리고, 이 파라미터 영역에 범용 통신 기능과 컴퓨터 링크 기능의 어느 하나를 선택 설정하는 파라미터를 설정하고, 이것에 의해 시리얼 포트의 통신제어 기능을 전환하고 있다.
일본국 특개2002-157014호 공보에 기재된 프로그래머블 표시기에 의하면, 프로그래머블 표시기가 퍼스널 컴퓨터와 통신을 하는 통신모드와, 프로그래머블 표시기가 PLC와 통신을 하는 통신모드를 전환하기 위하여, 프로그래머블 표시기가 통신모드를 전환하기 위한 통신 미들웨어(middleware)를 구비하고 있다.
그리고, 프로그래머블 표시기 내의 시리얼 포트에 접속된 퍼스널 컴퓨터로부터의 설정신호에 의해, 통신 미들웨어가 통신모드를 전환하고 있다.
그러나, 일본국 특허 제3234240호 공보에 기재된 프로그래머블 컨트롤러에서 는, 새롭게 설치한 파라미터 영역에 의해 용도를 설정하면, 설정된 내용으로 용도가 고정적으로 한정되어 버리고, 시리얼 포트의 용도를 동적으로 전환할 수 없었다. 이 때문에, 시리얼 포트의 통신 제어처리를 전환함으로써, 컴퓨터 링크 기능과 범용 통신 기능 모두를 사용 할 수 없다는 문제가 있었다.
또, 일본국 특개2002-157014호 공보에 기재된 프로그래머블 컨트롤러에서는 미들웨어 자신에 의해 통신제어 방식을 변경 할 수 없고 퍼스널 컴퓨터의 조작에 의해 프로그래머블 표시기의 통신 제어방식 전환을 위해 프로그래머블 표시기와는 별도로 퍼스널 컴퓨터가 필요하다는 문제가 있었다.
본 발명은 상기 문제를 감안한 것으로, 프로그래머블 컨트롤러 자신에 의해 범용 통신 프로토콜 기능과 전용 시퀀스를 사용한 컴퓨터 링크 전용 프로토콜 기능 중 어느 하나를 수시로 선택 설정 가능한 프로그래머블 컨트롤러를 제공하는 것을 목적으로 한다.
본 발명에 관한 프로그래머블 컨트롤러는 하나 이상의 시리얼 통신용의 시리얼 포트를 구비한 프로그래머블 컨트롤러로서, 상기 시리얼 포트를 상대 기기의 사양에 맞춰서 통신을 하는 범용 통신 프로토콜이 처리 가능한 제1 상태, 고정화된 사양에 따라 통신을 하는 컴퓨터 링크 전용 프로토콜이 처리 가능한 제2 상태, 및 아이들(idle) 상태의 3개의 상태로 구별하여 처리하는 스위칭 수단을 구비하고, 상기 스위칭 수단은 상기 시리얼 포트가 아이들 상태일 때에는 범용 통신 프로토콜용 프로그램 중의 시리얼 포트를 초기화하는 명령에 의해 시리얼 포트를 상기 제1 상 태로 스위칭하고, 외부 기기로부터 상기 컴퓨터 링크 전용 프로토콜을 사용한 통신을 개시하기 위한 신호를 상기 시리얼 포트가 수신한 경우에는 시리얼 포트를 상기 제2 상태로 스위칭 하며, 상기 시리얼 포트가 제1 상태일 때에는 상기 범용 통신 프로토콜용 프로그램 중의 시리얼 포트를 닫는 명령에 의해 시리얼 포트를 아이들 상태로 스위칭하고, 상기 시리얼 포트가 제2 상태일 때에는 상기 컴퓨터 링크 전용 프로토콜을 사용한 외부 기기와의 통신이 완료된 후에 시리얼 포트를 아이들 상태로 스위칭 하는 것을 특징으로 한다.
본 발명에 의하면, 프로그래머블 컨트롤러의 시리얼 포트가 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능 중 어느 하나를 적절히 사용하기 위한 스위칭 수단을 구비하고 있으므로, 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능을 적절히 사용하기 위한 파라미터를 일일이 설정할 필요가 없게 된다.
도 1은 본 발명에 따른 실시예의 프로그래머블 컨트롤러의 회로구성을 나타내는 도면이다.
도 2는 시리얼 포트(6)를 초기화하는 명령을 나타내는 래더(ladder) 프로그램이다.
도 3은 시리얼 포트(6)를 사용한 범용 통신에서의 송신명령을 나타내는 래더 프로그램이다.
도 4는 시리얼 포트(6)을 사용한 범용 통신에서의 수신명령을 나타내는 래더 프로그램이다.
도 5는 시리얼 포트(6)의 사용을 종료하는 명령의 래더 프로그램이다.
도 6은 포트넘버를 지정하여 시리얼 포트(6)를 초기화하는 명령을 나타내는 래더 프로그램이다.
도 7은 상태 SQ 기억 영역에 기억된 상태 시퀀스의 천이 내용을 나타내는 상태 천이도이다.
도 8은 컴퓨터 링크 전용 프로토콜에서 사용하는 통신 프레임의 한 예를 나타낸 도면이다.
도 9는 범용 통신 프로토콜의 명령 실행 시의 처리순서를 나타낸 플로차트이다.
이하에, 본 발명에 관한 프로그래머블 컨트롤러의 실시예를 도면에 따라 상세하게 설명한다. 또한, 본 발명은 본 실시예에 한정되는 것은 아니다.
도 1은 본 발명에 관한 프로그래머블 컨트롤러의 회로구성을 나타내는 도면이다. 도 1에서, 프로그래머블 컨트롤러는 CPU(1), ROM(2), RAM(3), 사용자 프로그램 메모리부(4), I/O 인터페이스부(5), 하나 또는 복수의 시리얼 포트(6)로 이루어지고, 시리얼 포트(6)는 컴퓨터(9)나 외부 기기(10)와 시리얼 케이블(11)에 의해 전기적으로 접속되어 있다. 또한, 하나의 외부 기기(10) 등에 대하여 하나의 시리얼 포트(6)가 접속되어 있는 것으로 한다.
CPU(1)는 프로그래머블 컨트롤러 전체의 신호처리를 하는 것이고, ROM(2)은 시스템 프로그램 등의 후술하는 컴퓨터 링크 전용 프로토콜이나 후술하는 범용 통신 프로토콜 등의 실시 처리순서를 기억하고 있다.
RAM(3)은 워크 영역이나 시퀀스 프로그램의 동작을 규정하는 파라미터를 기억하고 있다. 또, RAM(3)은 통신 시의 수신데이터를 일시적으로 기억하는 수신데이터 기억 영역(30)과, 통신 시의 송신데이터를 일시적으로 기억하는 송신데이터기억 영역(31)을 구비하고 있다. 또, RAM(3)은 통신 시에 사용하는 명령의 파라미터를 인수(argument)로서 기억하기 위한 디바이스 메모리(32)를 구비하고 있다. 여기서 디바이스 메모리(32)는 프로그래머블 컨트롤러의 사용자가 사용자 프로그램 메모리부(4)에 기억된 사용자 프로그램에서 자유롭게 사용할 수 있는 메모리이고, 프로그램 연산에 의해 일시적으로 발생한 데이터나 히스토리컬 트랜드 데이터 등을 기억하고 있다. 또, RAM(3) 내에는 시리얼 포트(6)의 사용상황을 나타내는 상태 시퀀스를 기억하는 상태 SQ 기억 영역(33)를 구비하고 있다.
사용자 프로그램 메모리부(4)는 시리얼 포트(6)의 범용 통신 프로토콜과 전용순서에 의한 컴퓨터 링크 전용 프로토콜을 적절히 사용하기 위한 사용자 프로그램을 기억하고 있다. 여기서, 컴퓨터 링크 전용 프로토콜은 액세스하는 메시지가 헤더와 애플리케이션 데이터로 구성된 것으로 고정화되어 있고, 프로그래머블 컨트롤러는 상대 기기(계측기나 퍼스널 컴퓨터 등)로부터 보내져오는 고정화 된 명령에 따라 데이터 송수신을 하고 있기 때문에 사용자 프로그램을 필요로 하지 않는 프로토콜이다. 한편, 범용 통신 프로토콜은 상대 기기의 사양에 맞춘 임의의 메시지 포맷으로 데이터 통신을 할 수 있는 것이며, 프로그래머블 컨트롤러 및 다른 시리 얼 포트를 구비한 상대 기기의 통신을 가능하게 하는 프로토콜이다.
I/O 인터페이스부(5)는 CPU(1), ROM(2), RAM(3), 사용자 프로그램 메모리부(4)와 기타의 주변회로를 접속하고 있다.
또, CPU(1), ROM(2), RAM(3), 사용자 프로그램 메모리부(4) I/O 인터페이스부(5)는 각각 신호선(7)으로 전기적으로 접속되어 있고, 서로 신호의 수수를 할 수 있는 구성으로 되어 있다.
시리얼 포트(6)는 시리얼 케이블(11)을 통하여 컴퓨터(9)나 외부 기기(10)와 접속되어 있고, 프로그래머블 컨트롤러와 컴퓨터(9)나 외부 기기(10)의 사이에서 여러 가지의 정보를 교환하는 것이다. 또, 시리얼 포트(6)와 I/O 인터페이스부(5)는 신호선(8)에 의해 전기적으로 접속되어 있으며, 서로 신호를 교환할 수 있는 구성으로 되어 있다. 또, 시리얼 포트(6)는 컴퓨터(9)나 외부 기기(10) 사이에서 실행되는 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 통신과 범용 통신 프로토콜의 스위칭을 가능하게 하는 제어기능을 구비하고 있다.
다음에, 사용자 프로그램 메모리부(4)에 기억되어 있는 범용 통신 프로토콜용의 래더 프로그램에 대하여 설명한다. 도 2는 시리얼 포트(6)를 초기화하는 명령을 나타내는 래더 프로그램이다. 도 2에서, M0는 OPEN명령의 기동신호이다. 기동신호(MO)의 ON에 의해 OPEN명령이 실행되고, 시리얼 포트(6)를 사용하는 선언이 실행된다.
도 3은 시리얼 포트(6)를 사용한 범용 통신에서의 송신명령의 래더 프로그램이다. 도 3에서, M1은 송신명령의 기동신호이고, 인수 디바이스 S1과 인수디바이 스 S2는 RAM(3) 내에 존재하는 디바이스 메모리(32) 공간 내의 임의의 디바이스 번호이다. 가동신호(M1)의 ON에서 OUTPUT명령이 실행되고 인수디바이스의 S1 이후에 기억된 데이터를 인수디바이스 S2에 기억된 데이터수의 수만큼 시리얼 포트(6)를 통하여 컴퓨터(9)나 외부 기기(10)에 송신한다(데이터 출력을 한다). 여기서, 범용 통신 프로토콜을 사용하여 외부 기기(10) 등과 통신을 할 때에 시리얼 포트(6)가 송신하는 송신데이터는 송신데이터 기억 영역(31)에 일시적으로 기억된 후, 외부 기기(10)로 송신되는 것으로 한다.
도 4는 시리얼 포트(6)를 사용한 범용 통신에서의 수신명령의 래더 프로그램이다. 도 4에서 M2는 수신명령의 기동신호이고 인수디바이스 D1과 인수디바이스 D2는 RAM(3) 내에 존재하는 디바이스 메모리(32) 공간 내의 임의의 디바이스 번호이다. 기동신호(M2)의 ON으로 INPUT명령이 실행되고, 시리얼 포트(6)를 통하여 컴퓨터(9)나 외부 기기(10)로부터 수신한 데이터를 인수디바이스 D1 이후의 디바이스 메모리(32)에 기억하고 수신된 데이터 수를 인수디바이스의 D2에 기억한다. 여기서, 범용 통신 프로트콜을 사용하여 외부 기기(10) 등과 통신을 할 때에 시리얼 포트(6)가 수신하는 수신 데이터는 수신데이터 기억 영역(30)에 일시적으로 기억된 후, 외부 기기(10)로 송신되는 것으로 한다.
도 5는 시리얼 포트(6)의 사용을 종료하는 명령을 나타내는 래더 프로그램이다. 도 5에서, M3은 CLOSE명령의 기동신호이다. 기동신호(M3)의 ON에 의해 CLOSE 명령이 실행되고, 시리얼 포트(6)의 점유가 해방된다.
또한, 본 실시예에서는 프로그래머블 컨트롤러의 시리얼 포트(6)가 하나로 구성되어 있는 경우의 래더 프로그램에 대하여 설명하였으나, 프로그래머블 컨트롤러의 시리얼 포트(6)가 복수로 구성되어 있는 경우에서도 시리얼 포트(6)의 포트넘버를 지정하는 인수를 래더 프로그램에 부가함으로써 복수의 시리얼 포트(6) 중에서 소망의 시리얼 포트(6)을 선택하여 범용 통신 프로토콜을 사용한 통신을 하는 것이 가능하게 된다.
도 6은 포트넘버를 지정하여 시리얼 포트(6)를 초기화하는 명령을 나타내는 래더 프로그램이다. 포트넘버를 지정하는 인수디바이스를 PN으로 하면 예컨대 「OPEN PN」에 의해 포트넘버를 지정한 OPEN 명령을 실행하는 것이 가능하게 된다. 마찬가지로 「OUTPUT PN S1 S2」에 의해 포트넘버를 지정한 OUT PUT명령을 실행할 수 있고, 「INPUT PN D1 D2」에 의해 포트넘버를 지정한 INPUT명령을 실행하는 것이 가능하게 된다. 또, 「CLOSE PN」에 의해 포트넘버를 지정한 CLOSE명령을 실행하는 것이 가능하게 된다.
도 7은 상태 SQ 기억 영역(33)에 기억된 상태 시퀀스의 천이 내용을 나타내는 상태천이도이다. 도 7에서, 시퀀스 값이 "0"인 경우는 시리얼 포트(6)가 아무 것도 사용되고 있지 않는 아이들 상태를 나타내고 있다. 또, 시퀀스 값 "1"은 프로그래머블 컨트롤러가 범용 통신 프로토콜을 사용하여 무엇인가를 처리 중이고, 시리얼 포트(6)가 범용 통신 프로토콜 기능을 사용 중인 것을 나타내고 있다. 또, 시퀀스 값 "2"는 프로그래머블 컨트롤러가 컴퓨터 링크 전용 프로토콜로 처리 중이고 시리얼 포트(6)가 컴퓨터 링크 전용 프로토콜 기능을 사용 중인 것을 나타내고 있다.
시리얼 포트(6)를 사용하지 않을 때, 시퀀스 값은 항상 아이들 상태에서 "0"을 나타내고 있다. 이 상태로부터 도 2에 나타낸 OPEN 명령을 실행하면, 시리얼 포트(6)가 범용 통신 프로토콜을 사용한다는 선언이 되고, 시리얼 포트(6)는 범용 통신 프로토콜 사용 중에 천이되며, 시퀀스 값이 "1"로 된다. 이 상태로 된 후, 시리얼 포트(6)는 OUTPUT 명령과 INPUT명령의 실행이 가능하게 된다. 시퀀스 값이 "1"이고 시리얼 포트(6)가 범용 통신 프로토콜을 사용 중인 경우에, 도 5에서 나타낸 CLOSE명령이 실행되면 시리얼 포트(6)는 아이들 상태로 천이하고 시퀀스 값이 "0"으로 된다. 이 CLOSE명령의 실행에 의해 시리얼 포트(6)는 범용 통신 프로토콜에 의한 점유로부터 해방되는 것으로 된다.
또한, 시퀀스 값이 "1"인 상태에서는 시리얼 포트(6)는 외부 기기로부터의 컴퓨터 링크 전용 프로토콜에서의 사용명령을 접수하지 않도록 한다. 가령, 시퀀스 값이 "1"인 상태에서 시리얼 포트(6)에 대하여 외부 기기로부터 컴퓨터 링크 전용 프로토콜에서의 사용명령이 된 경우, 외부 기기(10)에 대하여 시리얼 포트(6)는 컴퓨터 링크 전용 프로토콜에 의해 사용 가능한 상태는 아닌 것을 전달한다. 이에 따라 외부 기기는 시리얼 포트(6)가 컴퓨터 링크 전용 프로토콜로 사용 할 수 없는 상태인 것을 인식하는 것이 가능하게 된다. 또, 이 때 시리얼 포트(6)의 초기화 내용이 다르기 때문에 시리얼 포트(6)의 초기설정과 시퀀스상태(시리얼포트(6)의 용도)는 변경시키지 않도록 한다.
도 8은 컴퓨터 링크 전용 프로토콜에서 사용하는 통신프레임의 한 예를 나타낸 도면이다. 도 8에서의 통신프레임은 통신프레임의 선두에 붙여진 헤더와 애플 리케이션 데이터로 구성되어 있다. 본 실시예에서는 상대측에 대한 응답요구를 의미하는 ENQ(O5H: Enquiry), DLE 이후의 캐릭터의 의미를 변경하는 DLE(10H: Date Link Escape), 통신프레임의 선두를 의미하는 STX(O2H:Start of Text), 통신프레임의 종료를 의미하는 ETX(O3H: End of Text)의 캐릭터를 사용한다. 그리고, 컴퓨터(9)나 외부 기기(10)는 이들을 사용하는 사용자의 사양에 의해 통신프레임의 선두는 여러 가지이므로, ENQ+F9H, ENQ+F8H, DLE+STX의 3개 모두를 통신프레임의 선두를 나타내는 예약어로서 정의한다.
도 7에서, 시리얼 포트(6)의 시퀀스 값이 "0"의 아이들 상태인 경우에 시리얼 포트(6)가 컴퓨터(9)나 외부 기기(10)로부터 ENQ+F9H, ENQ+F8H 또는 DLE+STX의 통신프레임을 수신하면 시리얼 포트(8)는 컴퓨터 링크 전용 프로토콜 사용 중의 상태로 천이하고 시퀴스 값이 "2"로 된다. 이 상태에서, 시리얼 포트(6)는 전용순서를 사용한 컴퓨터 링트전용 프로토콜을 사용하는 것이 가능하게 된다. 그리고, 컴퓨터 링크 전용 프로토콜의 처리 완료 후에 시리얼 포트(6)는 아이들 상태로 천이하며 시퀀스 값이 "0"으로 된다.
또한, 시퀀스 값이 "2"인 상태에서는 시리얼 포트(6)는 시리얼 포트(6)의 OPEN명령, CLOSE명령, 범용 통신 프로토콜의 송수신 명령을 접수하지 않도록 한다. 가령, 시퀀스 값이 "2"인 상태에서, 시리얼 포트(6)에 대하여 OPEN명령, CLOSE명령, 범용 통신 프로토콜의 송수신 명령이 실행된 경우, 사용자에 대하여 시리얼 포트(6)는 범용 통신 프로토콜 기능이 유효하지 않은 것을 전달한다. 이에 따라, 사용자는 시리얼 포트(6)가 범용 통신 프로토콜 기능으로 사용 할 수 없는 상태인 것 을 인식하는 것이 가능하게 된다. 또, 시퀀스 값이 "2"인 경우에는 시리얼 포트(6)의 초기화 내용이 다르기 때문에 시리얼 포트(6)의 초기설정과 시퀀스 상태(시리얼 포트(6)의 용도)는 변경시키지 않도록 한다.
도 9는 범용 통신 프로토콜의 명령 실행 시의 처리순서를 나타낸 플로차트이다. 우선, 사용자로부터 시리얼포트(6)로 시리얼 포트(6)의 OPEN명령, CLOSE명령, 범용 통신 프로토콜의 송수신 명령이 있었는지 여부의 확인을 한다(스텝 S 100). 이들의 명령이 실행되어 있지 않는 경우에는 상태 시퀀스를 변경하지 않고 이들의 명령이 실행된 경우는 그 명령이 OPEN명령인지 여부의 확인을 한다(스텝 S 101). 시리얼 포트(6)에 OPEN명령이 실행된 경우, 현재의 시퀀스 값이 "0"인지 여부의 확인을 한다(스텝 S 102). 스퀸스 값이 "0"이 아닌 경우에는 시리얼 포트(6)는 이미 사용 중이기 때문에 사용자에게 시리얼포트(6)는 사용 중인 것을 전달하여 OPEN명령의 처리를 하지 않은 채 처리를 종료한다. 여기서, 시리얼 포트(6)가 사용 중인 경우에는 시리얼 포트(6)의 초기화 내용이 다르게 되어 있을 가능성이 있기 때문에 시리얼 포트(6)의 초기설정과 시퀀스상태(시리얼 포트(6)의 용도)는 변경시키지 않는다. 한편, 스텝 S 102에서, 시퀀스 값이 "0"이라고 판단된 경우에는 시리얼 포트(6)의 시퀀스 값을 "1"(범용 통신 프로토콜 처리중)로 변경하여 시리얼 포트(6)의 점유를 선언하고(스텝 S 103), 시리얼 포트(6)의 초기화를 하여(스텝 S 104) 처리를 종료한다. 이에 따라, 범용 통신 프로토콜 기능에 의한 시리얼 포트(6)로의 송수신 명령이 실행 가능하게 된다.
또, 스텝 S 101에서 시리얼 포트(6)로의 명령이 OPEN명령이 아니라고 판단된 경우에는 시리얼 포트(6)로의 명령이 CLOSE명령인지 여부를 판단한다(스텝 S 105). 시리얼 포트(6)로의 명령이 CLOSE명령이라고 판단된 경우에는 현재의 시리얼 포트(6)의 시퀀스 값이 "1"인지 여부의 판단을 한다(스텝 S 106). 그리고, 시리얼 포트(6)의 시퀀스 값이 "1"인 경우에 한하여 시퀀스 값을 "0"(아이들 상태)으로 변경하고(스텝 S 107) 시리얼 포트(6)의 범용 통신 프로토콜 기능에 의한 점유상태를 해방하여 처리를 종료한다.
한편, 스텝 S 106에서, 시퀀스 값이 "1"이 아니고, "2'라고 판단된 경우, 사용자에게 시리얼 포트(6)는 컴퓨터 링크 전용 프로토콜로 사용중인 것을 전달하여 CLOSE명령의 처리를 하지 않고 처리를 종료한다. 여기서, 시리얼 포트(6)가 사용중인 경우에는 시리얼 포트(6)의 초기화 내용이 다르게 되어 있을 가능성이 있기 때문에 시리얼 포트(6)의 초기설정과 시퀀스상태(시리얼포트(6)의 용도)는 변경시키 않는다. 또한, 스텝 S 103에서, 시퀀스 값이 "1"이 아니고 "0'이라고 판단된 경우에는 시리얼 포트(6)는 아이들 상태이며 그대로 처리를 종료한다.
또, 스텝 S 105에서 시리얼 포트(6)로의 명령이 CLOSE명령이 아니라고 판단된 경우, 이 명령은 범용 통신 프로토콜의 송수신 명령이기 때문에 각 명령 개별의 처리를 하여(스텝 S 108) 처리를 종료한다. 또한 송수신 명령을 실행할 때에는 시퀀스 값이 "1"인 것을 확인하는 것으로 하고 시퀀스 값이 "1"이 아닌 경우에는 사용자에게 범용 통신 프로토콜을 사용할 수 없는 상태인 것을 통지하며 송수신 명령의 처리를 실행하지 않고 처리를 종료한다. 여기서, 시퀀스 값이 "1"이 아닌 경우에는 시리얼 포트(6)의 초기화 내용이 다르게 되어 있을 가능성이 있기 때문에 시 리얼 포트(6)의 초기설정과 시퀀스 상태(시리얼 포트(6)의 용도)는 변경시키지 않는 것으로 한다.
이와 같이, 사용자로부터 시리얼 포트(6)로 시리얼 포트(6)의 OPEN명령, CLOSE명령, 범용 통신 프로토콜의 송수신 명령이 이루어질 때 마다 각각의 명령을 판별하여 처리를 진행하여 간다.
이와 같이, 본 실시예에서는 프로그래머블 컨트롤러 자신으로 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능 중 어느 하나를 수시 선택 가능하게 하였으므로, 이들 양쪽의 기능을 각각 적절히 사용하기 위한 파라미터를 일일이 설정하는 일없이 간단한 구성으로 양쪽의 기능을 수시로 적절히 사용하는 것이 가능하게 된다.
또, 시리얼 포트(6)를 범용 통신 프로토콜 기능 또는 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능으로 스위칭 할 때에 시리얼 포트(6)가 사용중인 기능을 확인하여 다른 기능으로 사용중인 경우에는 시리얼 포트(6)의 설정을 변경하지 않는 것으로 하였으므로, 안정된 상태에서 범용 통신 프로토콜 기능 또는 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능을 각각 달리 적절히 사용하는 것이 가능하게 된다.
이상 설명한 바와 같이, 본 발명에 의하면 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능 중 어느 하나를 각각 적절히 사용하기 위한 스위칭 수단을 구비하고 있으므로, 이들 양쪽의 기능을 각각 적절히 사용하기 위한 피라미터를 일일이 설정하지 않고 사용자의 요구에 따라 수시로 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능 각각의 적절한 사용을 간단한 구성으로 할 수 있는 효과를 이룬다.
이상과 같이 본 발명에 관한 프로그래머블 컨트롤러는 시리얼 포트를 구비한 프로그래머블 컨트롤러에 유용하고, 특히 범용 통신 프로토콜 기능과 전용순서를 사용한 컴퓨터 링크 전용 프로토콜 기능의 양쪽을 필요로 하는 프로그래머블 컨트롤러에 적합하다.

Claims (4)

  1. 하나 이상의 시리얼 통신용 시리얼 포트를 구비한 프로그래머블 컨트롤러에 있어서,
    상대 기기의 사양에 맞춰서 통신을 하는 범용 통신 프로토콜이 처리 가능한 제1 상태, 고정화된 사양에 따라 통신을 하는 컴퓨터 링크 전용 프로토콜이 처리 가능한 제2 상태, 및 아이들 상태의 3개의 상태 중 어느 하나의 상태로 상기 시리얼 포트를 스위칭하는 스위칭 수단을 구비하고,
    상기 스위칭 수단은,
    상기 시리얼 포트가 아이들 상태인 때에는, 범용통신 프로토콜용 프로그램 중의 시리얼 포트를 초기화하는 명령에 따라 상기 시리얼 포트를 상기 제1 상태로 스위칭하고, 외부 기기로부터 상기 컴퓨터 링크 전용 프로토콜을 사용한 통신을 개시하기 위한 신호를 수신한 경우에는 상기 시리얼 포트를 상기 제2 상태로 스위칭하며,
    상기 시리얼 포트가 제1 상태인 때에는, 상기 범용 통신 프로토콜용 프로그램 중의 시리얼 포트를 닫는 명령에 따라 상기 시리얼 포트를 아이들 상태로 스위칭하고,
    상기 시리얼 포트가 제2 상태인 때에는, 상기 컴퓨터 링크 전용 프로토콜을 사용하는 외부 기기와의 통신이 완료된 후에 상기 시리얼 포트를 아이들 상태로 스위칭하며,
    상기 시리얼 포트가 제2 상태인 때에 상기 범용 통신 프로토콜용 프로그램 중의 시리얼 포트를 초기화하는 명령이 출력된 경우에는, 상기 시리얼 포트를 초기화하는 명령을 내린 사용자에게 범용 통신 프로토콜로 통신이 될 수 없는 상태인 것을 통지하는 동시에 상기 시리얼 포트의 설정을 변경하지 않고,
    상기 시리얼 포트가 제1 상태인 때에 외부 기기로부터 상기 컴퓨터 링크 전용 프로토콜을 사용한 통신을 개시하기 위한 신호를 수신한 경우에는, 상기 외부 기기에 상기 컴퓨터 링크 전용 프로토콜로 통신이 될 수 없는 상태인 것을 통지하는 동시에 상기 시리얼 포트의 설정을 변경하지 않는 것을 특징으로 하는 프로그래머블 컨트롤러.
  2. 제1항에 있어서,
    상기 시리얼 포트가 복수인 경우, 상기 시리얼 포트를 초기화하는 명령 및 상기 시리얼 포트를 닫는 명령에는 상기 시리얼 포트의 포트번호를 지정하는 정보가 포함되어 있는 것을 특징으로 하는 프로그래머블 컨트롤러.
  3. 삭제
  4. 삭제
KR1020047008828A 2003-05-28 2003-05-28 프로그래머블 컨트롤러 KR100628450B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2003/006697 WO2004107698A1 (ja) 2003-05-28 2003-05-28 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
KR20050013527A KR20050013527A (ko) 2005-02-04
KR100628450B1 true KR100628450B1 (ko) 2006-09-26

Family

ID=32089061

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047008828A KR100628450B1 (ko) 2003-05-28 2003-05-28 프로그래머블 컨트롤러

Country Status (6)

Country Link
US (1) US7797461B2 (ko)
JP (1) JP4252572B2 (ko)
KR (1) KR100628450B1 (ko)
DE (1) DE10393401B4 (ko)
GB (1) GB2405500B (ko)
WO (1) WO2004107698A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4507125B2 (ja) * 2007-09-10 2010-07-21 三菱電機株式会社 プログラマブルコントローラ
JP6509071B2 (ja) * 2015-08-12 2019-05-08 アズビル株式会社 エンジニアリングツール
CN107393594A (zh) * 2017-07-27 2017-11-24 郑州云海信息技术有限公司 一种多核固态硬盘调试方法及系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0678506B2 (ja) 1989-05-27 1994-10-05 東リ株式会社 床タイル用接着剤
JP3234240B2 (ja) * 1991-01-28 2001-12-04 松下電工株式会社 プログラマブルコントローラのシリアルポートの制御方式
KR20000039643A (ko) 1998-12-15 2000-07-05 홍종만 마이크로컨트롤러의 비동기 직렬 통신 방법
IL130540A (en) * 1999-06-17 2003-07-31 Tadiran Telecom Business Syste System having a port with two operating modes
US6625640B1 (en) 1999-09-01 2003-09-23 Inventec Corporation Modem having embedded network transmission protocols
JP2001160823A (ja) * 1999-12-02 2001-06-12 Hitachi Cable Ltd モデム共有装置
US6826195B1 (en) * 1999-12-28 2004-11-30 Bigband Networks Bas, Inc. System and process for high-availability, direct, flexible and scalable switching of data packets in broadband networks
US6539030B1 (en) * 2000-02-07 2003-03-25 Qualcomm Incorporated Method and apparatus for providing configurable layers and protocols in a communications system
JP4147372B2 (ja) 2000-11-22 2008-09-10 オムロン株式会社 プログラマブル表示器およびその制御方法
US7116682B1 (en) * 2001-03-19 2006-10-03 Cisco Technology, Inc. Methods and apparatus for dynamic bandwidth adjustment
US6609185B1 (en) * 2001-05-17 2003-08-19 Emc Corporation Data storage system having majority gate filter

Also Published As

Publication number Publication date
GB0405040D0 (en) 2004-04-07
US20060064511A1 (en) 2006-03-23
GB2405500B (en) 2006-03-15
WO2004107698A1 (ja) 2004-12-09
US7797461B2 (en) 2010-09-14
DE10393401B4 (de) 2007-07-26
DE10393401T5 (de) 2005-10-20
JPWO2004107698A1 (ja) 2006-07-20
KR20050013527A (ko) 2005-02-04
JP4252572B2 (ja) 2009-04-08
GB2405500A (en) 2005-03-02

Similar Documents

Publication Publication Date Title
US4309755A (en) Computer input/output arrangement for enabling a simultaneous read/write data transfer
EP1548607B1 (en) Method of providing a microcontroller having an N-bit data bus width and a number of pins being equal or less than N
KR100628450B1 (ko) 프로그래머블 컨트롤러
KR100787054B1 (ko) I2c 통신을 이용한 공통 어드레스를 가지는 부품의 제어장치
US6665757B1 (en) Communication interface having a master activating/deactivating a first signal with a clock signal after a predetermined time after a slave activating/deactivating the first signal
KR100605804B1 (ko) 휴대용 단말기의 표시문자 폰트 변경 장치 및 그 방법
JPH02171948A (ja) プログラマブル出力ポート
JPH08202207A (ja) オプション機器接続状態検知装置
JP5165336B2 (ja) 接続通信機器
JP3801484B2 (ja) カード型無線伝送機器の初期調整方法
KR100962306B1 (ko) 임베디드 시스템의 양방향 데이터 통신장치 및 그 방법
KR100287784B1 (ko) 데이터통신용인터페이스회로
KR100262864B1 (ko) Plc의 통신 프로토콜
KR100219529B1 (ko) 마이크로 콘트롤러
JPS6111863A (ja) マイクロコンピユ−タシステム
JPH0713917A (ja) 構成変更システム
JP2007004430A (ja) ポートモード制御装置
JP2006011795A (ja) ポートモード制御装置
JPS5985541A (ja) コンソ−ル装置
JPH04313177A (ja) タイムレコーダ
JPH0358112A (ja) データ処理装置
KR20030064522A (ko) Pld를 이용한 단방향 제어신호의 여러 방향으로의출력방법
JPH09297732A (ja) シリアルi/o
JPH04271434A (ja) プログラマブルコントローラの割込み入力モジュール
JPS63250757A (ja) 入出力インタフエ−ス装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120907

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130903

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140901

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150820

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160818

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee