KR100372142B1 - Crane control system and communication method having integral network - Google Patents

Crane control system and communication method having integral network Download PDF

Info

Publication number
KR100372142B1
KR100372142B1 KR1019960029504A KR19960029504A KR100372142B1 KR 100372142 B1 KR100372142 B1 KR 100372142B1 KR 1019960029504 A KR1019960029504 A KR 1019960029504A KR 19960029504 A KR19960029504 A KR 19960029504A KR 100372142 B1 KR100372142 B1 KR 100372142B1
Authority
KR
South Korea
Prior art keywords
data
central controller
mmi
network
communication
Prior art date
Application number
KR1019960029504A
Other languages
Korean (ko)
Other versions
KR980009091A (en
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 한국과학기술연구원
Priority to KR1019960029504A priority Critical patent/KR100372142B1/en
Publication of KR980009091A publication Critical patent/KR980009091A/en
Application granted granted Critical
Publication of KR100372142B1 publication Critical patent/KR100372142B1/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B66HOISTING; LIFTING; HAULING
    • B66CCRANES; LOAD-ENGAGING ELEMENTS OR DEVICES FOR CRANES, CAPSTANS, WINCHES, OR TACKLES
    • B66C13/00Other constructional features or details
    • B66C13/18Control systems or devices
    • B66C13/48Automatic control of crane drives for producing a single or repeated working cycle; Programme control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B66HOISTING; LIFTING; HAULING
    • B66CCRANES; LOAD-ENGAGING ELEMENTS OR DEVICES FOR CRANES, CAPSTANS, WINCHES, OR TACKLES
    • B66C13/00Other constructional features or details
    • B66C13/18Control systems or devices
    • B66C13/40Applications of devices for transmitting control pulses; Applications of remote control devices
    • B66C13/44Electrical transmitters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B66HOISTING; LIFTING; HAULING
    • B66CCRANES; LOAD-ENGAGING ELEMENTS OR DEVICES FOR CRANES, CAPSTANS, WINCHES, OR TACKLES
    • B66C2700/00Cranes
    • B66C2700/08Electrical assemblies or electrical control devices for cranes, winches, capstans or electrical hoists

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Programmable Controllers (AREA)

Abstract

PURPOSE: A crane control system having an integral network is provided with an MMI system communicating with a central controller. CONSTITUTION: An MMI system(100) is provided to input control program, monitor input/output signal and data. A central controller(110) analyzes the inputted control program of the MMI system to control whole system in real time. A direct input/output device(130) is connected to the central controller by a bus. A network driver(120) is connected to the central controller to drive and control network. A remote input/output device is connected to the network driver. A PLC(140) is connected to the network driver and to a motor.

Description

통합네트웍을 구비한 크레인 제어시스템 및 통신방법Crane control system and communication method with integrated network

본 발명은 크레인 제어시스템에 관한 것으로서, 특히 통합네트웍을 구비한 크레인 제어시스템 및 상기 제어시스템을 구성하고 있는 MMI시스템과 중앙제어기간의 통신방법에 관한 것이다.The present invention relates to a crane control system, and more particularly, to a crane control system having an integrated network, an MMI system constituting the control system, and a communication method for a central control period.

일반적으로 크레인(crane) 제어시스템은 운전조작실(operator cabin) 혹은 UMO/RMO(UnManned Operation/ReMote Operation)등으로부터 운전자의 조작명령에 의해 크레인 자체를 움직이는 부분인 잰터리(gantry), 콘테이너를 수평이동시키는 부분인 트롤리(trolley), 콘테이너를 들어올리는 부분인 호이스트(hoist)등 3종의 전동기 및 각종 구동장치(로프텐셔너, 스프레더조작기 등)를 적절히 제어하여 원하는 동작을 수행하는 시스템이다. 즉, 크레인 제어시스템은 적재물의 진동억지제어, 스프레더 조작 제어, 로프장력 보상기 제어 등 복잡한 전기/기계 제어시스템이 결합된 독특한 형태를 갖는다. 이러한 시스템을 자동화하기 위해서는 원거리에 위치한 각종 전기/기계 장치들의 매개변수 및 상태를 측정하는 원거리 데이터 측정기능, 공정의 진행순서에 따라 순차제어를 담당하는 기능 및 구동장치의 동작속도설정, 로프장력제어, 각종기계장치 조작등 빠른 속도의 루프제어기능을 담당하는 그룹제어(Group Control) 기능 등의 단위요소 기술개발과 전체 시스템의 통합기술이 요구된다.In general, the crane control system horizontally mounts a gantry, a container that moves the crane itself by an operator's operation command from an operator cabin or an unmanned operation / remote operation (UMO / RMO). It is a system that performs a desired operation by appropriately controlling three types of electric motors such as a trolley which is a moving part and a hoist which is a container lifting part, and various driving devices (such as a rope tensioner and a spreader manipulator). That is, the crane control system has a unique form in which complex electric / mechanical control systems such as vibration suppression control of the load, spreader operation control, and rope tension compensator control are combined. In order to automate such a system, remote data measurement function that measures parameters and status of various electric / mechanical devices located at a long distance, functions that are in charge of sequential control according to the progress of the process, operation speed setting of the driving device, rope tension control It is required to develop unit element technology such as group control function that handles high speed loop control such as operation of various machinery and integrated technology of whole system.

그런데 크레인 제어 및 자동화를 위해 개발된 종래의 시스템에서는 도 1에도시된 하부입출력장치(150,160,170) 및 하부 PLC(Programmable Logic Controller,140) 등과의 네트웍을 통한 연결시 각각 별개의 네트웍 프로토콜을 이용하여 연결해야 된다. 그리고 하부 PLC의 사다리 다이아그램(Ladder Diagram:이하 LD라 함)을 이용한 제어프로그래밍 툴(tool)과 상위 제어시스템의 기능블록 다이아그램(Functional Block Diagram:이하 FBD라 함)을 이용한 제어프로그래밍 툴 간의 상호 연관성이 결여되어 있어서 사용자가 두가지 제어프로그래밍 언어를 전부 익혀야하는 번거로움이 있다. 그렇지 않으면 각각의 프로그래밍 언어 사용자들 간의 긴밀한 협조가 반드시 필요하다는 어려움이 있다. 또한 시스템제어 및 감시에 필요한 데이터를 관리함에 있어서 각각 별도의 데이터 관리체계를 운용함으로써 시스템의 속도는 다소 빠르더라도 부가장치를 장착할 경우에 확장성 및 유연성이 결여되어 있는 단점들이 있다.However, in the conventional system developed for crane control and automation, the connection is performed using separate network protocols when connecting to the lower I / O devices 150, 160, 170 and the lower programmable logic controller (PLC) 140 shown in FIG. 1. You should. And mutual control between the control programming tool using the ladder diagram of the lower PLC (hereinafter referred to as LD) and the control programming tool using the functional block diagram of the upper control system (hereinafter referred to as FBD). Lack of relevance is a hassle for the user to learn both control programming languages. Otherwise, there is a difficulty that close cooperation between users of each programming language is necessary. In addition, in managing data required for system control and monitoring, a separate data management system is used. However, although the speed of the system is slightly faster, there is a disadvantage in that scalability and flexibility are lacking when additional devices are installed.

따라서 본 발명은 상술한 문제점을 해결하기 위해 창출된 것으로서, 연속 공정용 기계장치의 자동화 시스템의 하나인 크레인 제어시스템 개발을 위하여 네트워크 인터페이스(interface) 기술, 사용자 인터페이스 기술 및 시스템 제어기술등 복합적인 단위요소기술을 먼저 개발하고, 이를 전체 시스템으로 확장한 통합네트워크를 구비한 크레인 제어시스템(Integrated Comunication and Control System:ICCS)을 개발하였다.Therefore, the present invention has been created to solve the above problems, a complex unit such as a network interface (interface) technology, a user interface technology and a system control technology for the development of a crane control system, which is one of the automation system of the continuous process machinery We developed urea technology first, and then developed an Integrated Comunication and Control System (ICCS) with an integrated network that extended it to the entire system.

본 발명의 제1목적은 통합네트웍을 구비한 크레인 제어시스템을 제공함에 있다.It is a first object of the present invention to provide a crane control system having an integrated network.

본 발명의 제2목적은 상기 통합네트웍을 구비한 크레인 제어시스템을 구성하고 있는 구성요소 중 MMI시스템과 중앙제어기간의 데이터를 주고받고 관리하는 통신시스템을 제공함에 있다.It is a second object of the present invention to provide a communication system for exchanging and managing data of an MMI system and a central control period among components constituting a crane control system having the integrated network.

본 발명의 제3목적은 상기 통합네트웍을 구비한 크레인 제어시스템을 구성하고 있는 구성요소 중 MMI시스템과 중앙제어기간의 데이터를 송수신 방법을 제공함에 있다.A third object of the present invention is to provide a method for transmitting / receiving data of an MMI system and a central control period among components constituting the crane control system having the integrated network.

도 1은 본 발명에 따른 통합네트웍을 구비한 크레인 제어시스템의 구성을 블록도로 도시한 것이다.1 is a block diagram showing the configuration of a crane control system having an integrated network according to the present invention.

도 2는 본 발명에 따른 통합네트웍을 구비한 크레인 제어시스템의 중앙제어기와 MMI시스템간의 데이터 통신시스템의 구조를 블록도로 도시한 것이다.2 is a block diagram illustrating a structure of a data communication system between a central controller and an MMI system of a crane control system having an integrated network according to the present invention.

도 3은 본 발명에 따른 도 1 및 도 2에 도시된 통합네트웍을 구비한 크레인 제어시스템을 구성하고 있는 구성요소 중 MMI시스템과 중앙제어기간의 데이터 송수신 방법을 흐름도로 도시한 것이다.3 is a flowchart illustrating a data transmission / reception method of an MMI system and a central control period among components constituting a crane control system having an integrated network shown in FIGS. 1 and 2 according to the present invention.

도 4는 제어 프로그래밍 툴(Soft Logic Designer)의 개발환경을 도시한 것이다.4 illustrates a development environment of a control programming tool (Soft Logic Designer).

도 5는 SLD의 도큐먼트&뷰(Document&View)의 구조를 도시한 것이다.5 illustrates the structure of a Document & View of an SLD.

도 6은 SLD프로그램의 전체구조를 도시한 것이다.6 shows the overall structure of an SLD program.

도 7은 SFC 에디터를 도시한 것이다.7 shows an SFC editor.

도 8은 FBD블록의 기본구조를 도시한 것이다.8 shows the basic structure of an FBD block.

도 9는 FBD 에디터를 도시한 것이다.9 shows an FBD editor.

도 10은 SFC(Sequential Function Chart)의 일예를 도시한 것이다.10 illustrates an example of a sequential function chart (SFC).

도 11은 도 10의 SFC에 대한 페트리 네트 모델을 도시한 것이다.FIG. 11 illustrates a Petri net model for the SFC of FIG. 10.

상기 본 발명의 제1목적을 달성하기 위한, 통합네트웍을 구비한 크레인 제어시스템은 제어프로그램의 입력, 전체 시스템의 구조정의 및 각종 입출력 신호와 주요 데이터들의 모니터링과 저장을 수행하는 MMI 시스템; 상기 MMI시스템으로부터 입력되는 제어프로그램을 분석하여 전체 시스템의 실시간 제어를 담당하고, 입력된 프로그램들을 실시간 이벤트-구동 방식으로 연산하며, 각종 입출력 데이터 처리 및 주요 데이터를 관리하는 중앙제어기; 버스를 통해 상기 중앙제어기와 연결되어 있는 직접입출력장치; 상기 버스를 통해 상기 중앙제어기과 연결되고, 네트웍을 구동 및 제어하는 네트웍 드라이버; 한쪽은 상기 네트웍을 통해 상기 네트웍드라이버와 연결되고, 다른 한 쪽은 크레인의 각종 구동장치 및 센서와 연결되어, 상기 중앙제어기의 제어명령 및 상기 구동장치의 루프제어를 수행하는 하나이상의 원거리 입출력장치; 및 한쪽은 상기 네트웍을 통해 상기 네트웍드라이버와 연결되고, 다른 한쪽은 각종 전동기와 연결되어, 상기 전동기의 순차제어를 수행하는 PLC를 포함함이 바람직하다.In order to achieve the first object of the present invention, a crane control system having an integrated network includes an MMI system for inputting a control program, defining a structure of an entire system, and monitoring and storing various input / output signals and main data; A central controller that analyzes a control program input from the MMI system and takes charge of real-time control of the entire system, calculates input programs in a real-time event-driven manner, and manages various input / output data and main data; A direct input / output device connected to the central controller via a bus; A network driver connected to the central controller through the bus and driving and controlling a network; At least one remote input / output device connected to the network driver through the network and connected to various driving devices and sensors of the crane, and performing control commands of the central controller and loop control of the driving device; And one side is connected to the network driver through the network, the other side is preferably connected to a variety of motors, including a PLC to perform the sequential control of the motor.

상기 본 발명의 제2목적을 달성하기 위한, 상기 통합네트웍을 구비한 크레인제어시스템의 MMI시스템과 중앙제어기간의 데이터를 주고받고 관리하는 통신시스템은 제어프로그램을 작성 및 수정하는 제어프로그래밍툴; 상기 중앙제어기와의 데이터 송신 및 수신을 담당하는 MMI통신서버; 상기 MMI통신서버로부터 상기 중앙제어기의 데이터를 받아 저장하는 데이터베이스; 상기 MMI시스템과의 데이터 송신 및 수신을 담당하는 제어기통신서버; 상기 입출력 장치로부터의 데이터를 저장하는 실시간 데이터베이스; 상기 제어프로그래밍툴에서 작성된 프로그램을 컴파일하여 실행화일로 변환하는 트랜스레이터; 상기 트랜스레이터에서 생성된 실행화일을 실행하는 실행기; 및 상기 입출력 장치로부터의 데이터를 가져오는 데이터획득기를 포함함이 바람직하다.In order to achieve the second object of the present invention, a communication system for exchanging and managing data of a central control period with an MMI system of a crane control system having the integrated network includes a control programming tool for creating and modifying a control program; An MMI communication server in charge of data transmission and reception with the central controller; A database for receiving and storing data of the central controller from the MMI communication server; A controller communication server in charge of data transmission and reception with the MMI system; A real time database storing data from the input / output device; A translator for compiling a program written in the control programming tool and converting the program into an executable file; An executor executing an executable file generated by the translator; And a data acquirer for importing data from the input / output device.

상기 본 발명의 제3목적을 달성하기 위한, 상기 통합네트웍을 구비한 크레인제어시스템을 구성하고 있는 구성요소 중 MMI시스템과 중앙제어기간의 데이터 송수신 방법은 상기 MMI시스템이 상기 중앙제어기에게 데이터의 유효성 검사를 위한 유효키, 데이터의 종류와 통신유형을 정의하는 타입정보, 실제 전송될 데이터의 크기에 관한 정보를 포함하는 헤더데이터를 전송하는 단계; 상기 중앙제어기는 상기 헤더데이터를 받아 데이터의 유효성을 검사하는 단계; 및 상기 중앙제어기가 상기 MMI시스템으로 상기 헤더데이터에 있는 통신유형에 따라 실제 데이터를 전달받거나 요청한 데이터를 전달해주는 단계를 포함함이 바람직하다.In order to achieve the third object of the present invention, among the components constituting the crane control system having the integrated network, a data transmission / reception method of the MMI system and the central control period is provided by the MMI system to the central controller. Transmitting header data including a valid key for inspection, type information defining types of data and a communication type, and information on the size of data to be actually transmitted; The central controller receiving the header data and checking validity of the data; And transmitting, by the central controller, actual data or requested data to the MMI system according to a communication type in the header data.

이하에서 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다. 도 1은 본 발명에 따른 통합네트웍을 구비한 크레인 제어시스템의 구성을 블록도로 도시한 것으로서, 상기 크레인 제어시스템은 크게 MMI시스템, 중앙제어시스템, 하부입출력시스템의 계층적 구조를 갖는다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. 1 is a block diagram showing the configuration of a crane control system having an integrated network according to the present invention. The crane control system has a hierarchical structure of an MMI system, a central control system, and a lower I / O system.

MMI시스템(100)은 IEC(International Electrotechnical Commission) 1131-3 국제표준규격에 입각한 제어프로그램(SFC, LD, ST 등)의 입력, 전체 시스템의 구조정의 및 각종 입출럭 신호 및 주요 데이터들의 모니터링(monitoring)과 저장 등을 수행한다. 그리고 사용자의 편의성 및 확장성을 고려하여 IBM-PC 호환기종 및 한글 MS-Windows95 환경하에서 운용된다. 브이엠이버스(VME-Bus)를 이용한 실시간 중앙제어기(110)과는 이더넷(Ethernet(TCP/IP,UDP/IP))로 인터페이스되어 데이터를 공유한다.The MMI system 100 inputs control programs (SFC, LD, ST, etc.) based on the IEC (International Electrotechnical Commission) 1131-3 standard, structural definition of the entire system, and monitoring various input / output signal and main data ( monitoring and storage. It is operated under IBM-PC compatible model and Korean MS-Windows95 environment in consideration of user's convenience and extensibility. The real-time central controller 110 using VME-Bus is interfaced with Ethernet (Ethernet (TCP / IP, UDP / IP)) to share data.

중앙제어기(110)는 VME-Bus 시스템으로 구성되는데, MMI 시스템(100)으로부터 입력되는 각종 제어프로그램을 분석하여 전체 시스템의 실시간 제어를 담당하고, 입력된 프로그램들을 실시간 이벤트-구동(Event-driven) 방식으로 연산하며, 하부 시스템(140,150, 160,170)과의 네트웍 드라이버(120)를 통한 각종 입출력 데이터 처리 및 주요 데이터를 관리하는 기능을 수행한다. MMI 시스템(100)과는 이더넷으로 통신하고, 하부 시스템 예를들어 각종 센서(175), 원거리 입출력장치(150,160), PLC(140), 모터구동기(145) 등과는 동일한 프로토콜을 갖는 통신시스템을 이용해 인터페이스된다.The central controller 110 is composed of a VME-Bus system, and analyzes various control programs input from the MMI system 100 to perform real-time control of the entire system, and input the programs in real-time event-driven. It operates in a manner, and performs a function of processing various input and output data and main data through the network driver 120 with the lower system (140,150, 160,170). The MMI system 100 communicates with Ethernet and uses a communication system having the same protocol with various sensors 175, remote input / output devices 150, 160, PLC 140, motor driver 145, and the like. Interfaced.

상기 네트웍드라이버(120)는 상기 VME 버스를 통해 상기 중앙제어기(110)과 연결되고 하부네트웍(180)을 구동 및 제어하는 역할을 한다.The network driver 120 is connected to the central controller 110 through the VME bus and serves to drive and control the lower network 180.

하부 입출력 시스템은 VME 버스에 직접 연결되어 있는 직접 입출력장치(130)와 하부 네트웍을 통해 연결되는 원거리 입출력장치(150,160,170)로 구성되어 있다. 상기 직접 입출력장치(130)는 상기 VME버스를 통해 상기 중앙제어기(110)와 연결되어 상기 중앙제어기(110)의 직접적인 제어를 받는다. 또한 상기 원거리 입출력장치(150,160,170)는 한쪽은 상기 하부네트웍(180)을 통해 상기 네트웍드라이버(120)와 연결되고 다른 한 쪽은 각종 구동장치(155,165) 및 센서들(175)와 연결되어, 상기 중앙제어기(110)의 제어명령 및 상기 구동장치(155,165)의 루프제어를 수행한다. 그리고 PLC(140)는 한쪽은 네트웍(180)을 통해 상기 네트웍 드라이버(120)와 연결되고 다른 한 쪽은 각종 전동기(145)와 연결되어 상기 전동기(145)의 순차제어(sequential control)를 수행한다.The lower I / O system is composed of a direct input / output device (130) connected directly to the VME bus and remote input / output devices (150, 160, 170) connected through the lower network. The direct input / output device 130 is connected to the central controller 110 through the VME bus and is directly controlled by the central controller 110. In addition, the remote input and output device (150, 160, 170) is connected to the network driver 120 through one of the lower network 180, the other is connected to various driving devices (155, 165) and sensors 175, the center The control command of the controller 110 and the loop control of the driving devices 155 and 165 are performed. The PLC 140 is connected to the network driver 120 through one of the networks 180 and the other to the various motors 145 to perform sequential control of the motor 145. .

상기 하부 네트웍(180)은 기본적으로 RS-485의 전기적인 사양에 준하여 127개의 통신노드까지 확장할 수 있으며 전체 통신망의 길이는 트위스티드 페어선(twisted pair line)를 사용하면 1500 미터까지 연결할 수 있다. 통신을 위하여 1 패리티(parity) 비트와 NRZ-토딩된 8비트의 데이터를 동기전송하고, 한 프레임(frame)에 최대 246 데이터 바이트를 전송할 수 있다. 데이터 전송속도는 3.6Kbps에서부터 12Mbps까지 가변할 수 있다.The lower network 180 can be basically extended to 127 communication nodes according to the electrical specifications of RS-485, and the total length of the communication network can be connected up to 1500 meters using twisted pair lines. For communication, one parity bit and NRZ-toned 8-bit data may be synchronously transmitted, and a maximum of 246 data bytes may be transmitted in one frame. Data rates can vary from 3.6Kbps to 12Mbps.

도 2는 본 발명에 따른, 상기 통합네트웍을 구비한 크레인 제어시스템의 상기 중앙제어기(110)와 MMI시스템(100)간의 데이터 통신시스템의 구조를 블록도로 도시한 것으로서, 제어프로그래밍툴(200), MMI통신서버(210), 데이터베이스(220), 제어기통신서버(230), 실시간 데이터베이스(241), 트랜스레이터(translator,243), 실행기(executor, 245) 및 데이터획득기(data acqusitor, 247)로 이루어진다.2 is a block diagram showing the structure of a data communication system between the central controller 110 and the MMI system 100 of the crane control system with the integrated network according to the present invention, the control programming tool 200, It consists of MMI communication server 210, database 220, controller communication server 230, real-time database 241, translator (243), executor (245), and data acquisitor (247). .

상기 제어프로그래밍툴(200)은 제어프로그램을 작성 및 수정하는 역할을 한다. MMI통신서버(210)은 상기 중앙제어기(110)와의 데이터 송신 및 수신을 담당한다. 데이터베이스(220)은 상기 MMI통신서버(210)로부터 상기 중앙제어기(110)의 데이터를 받아 저장한다. 제어기통신서버(230)는 상기 MMI시스템(100)과의 데이터 송신 및 수신을 담당한다. 실시간 데이터베이스(241)는 상기 입출력 장치 (140,150,160, 170)로부터의 데이터를 저장한다. 트랜스레이터(translator,243)은 상기 제어프로그래밍툴(200)에서 작성된 프로그램을 컴파일(compile)하여 실행화일로 변환한다. 실행기(executor,245)는 상기 트랜스레이터(243)에서 생성된 실행화일을 실행한다. 데이터획득기(data acqusitor, 247)는 상기 입출력 장치(140,150, 160,170)로부터의 데이터를 가져온다.The control programming tool 200 serves to create and modify a control program. The MMI communication server 210 is responsible for data transmission and reception with the central controller 110. The database 220 receives and stores the data of the central controller 110 from the MMI communication server 210. The controller communication server 230 is responsible for data transmission and reception with the MMI system 100. The real time database 241 stores data from the input / output devices 140, 150, 160, and 170. The translator 243 compiles the program created by the control programming tool 200 and converts the program into an executable file. An executor 245 executes an executable file generated by the translator 243. A data acquisitor 247 retrieves data from the input / output devices 140, 150, 160, and 170.

상기 도 1 및 도 2에 도시된 본 발명의 동작을 설명하기로 한다.The operation of the present invention shown in FIG. 1 and FIG. 2 will be described.

산업용 PC를 기반으로 하는 MMI 시스템(100)과 VME 버스를 기반으로 하는 중앙제어기(110) 간의 통신은 현재 산업 표준으로 널리 사용되고 있는 이더넷을 이용한다. 통신 프로토콜은 TCP/IP를 사용하는데 이는 ISO/OSI 7계층 네트워크 구조중에서 물리층, 데이터 링크층, 네트워크 층, 트랜스포트(Transport)층을 지원하는 프로토콜로서 프로그래밍을 위한 대표적인 인터페이스로 유닉스 시스템 V(UNIX System V) 계열의 트랜스포트 계층 인터페이스(TLI)와 버클리 유닉스(BSD UNIX)계열의 소켓(socket)이 존재한다.Communication between the MMI system 100 based on an industrial PC and the central controller 110 based on the VME bus uses Ethernet, which is widely used as an industry standard. The communication protocol uses TCP / IP, which supports the physical layer, data link layer, network layer, and transport layer in the ISO / OSI 7-layer network structure. It is a representative interface for programming. V) The Transport Layer Interface (TLI) and Berkeley Unix (BSD UNIX) family of sockets exist.

도 2에 도시된 MMI 시스템(100)과 중앙제어기(110) 간에 두 개의 소켓 포트(socket port)를 이용하여 양방향 통신을 하고 있다. 즉, MMI 시스템(100)에MMI통신서버(210)가 존재하여 항시 중앙제어기(110)로부터 응용프로그램 인터페이스(application program interface:API) 함수 호출로 전송되는 데이터를 받고, 또한 중앙제어기(110)에 제어기 통신서버(230)가 존재하여 MMI 시스템(100)으로부터 API함수 호출로 전송되는 데이터를 받는다. MMI 시스템(100)에서 중앙제어기(110)로 전송되는 데이터의 종류로는 전체적인 시스템 구성에 관한 구성 데이터(configuration data)와 각종 입출력 데이터의 특성 및 타입, 실제 주소를 나타내는 입출력 특성 데이터(attribute data)와 각종 응용프로그램에서 중앙제어기(110)로 전송되는 데이터 등이다. 그리고 중앙제어기(110)에서 MMI 시스템(100)으로 전송되는 데이터는 시스템의 감시(Monitoring)를 위해 각종 입출력 접점에서 발생되는 데이터와 경보 데이터 등이 있다.Two-way communication is performed between the MMI system 100 and the central controller 110 shown in FIG. 2 using two socket ports. That is, the MMI communication server 210 is present in the MMI system 100 to always receive data transmitted from the central controller 110 through an application program interface (API) function call, and also to the central controller 110. The controller communication server 230 is present to receive data transmitted from the MMI system 100 to the API function call. Types of data transmitted from the MMI system 100 to the central controller 110 include configuration data related to the overall system configuration, characteristics and types of various input / output data, and input / output characteristic data representing actual addresses. And data transmitted to the central controller 110 from various applications. The data transmitted from the central controller 110 to the MMI system 100 includes data and alarm data generated at various input / output contacts for monitoring the system.

도 3은 본 발명에 따른, 도 1 및 도 2에 도시된 상기 통합네트웍을 구비한 크레인 제어시스템을 구성하고 있는 구성요소 중 MMI시스템(100)과 중앙제어기(110)간의 데이터 송수신 방법을 흐름도로 도시한 것으로서 이를 설명하면 다음과 같다. 본 발명에서는 MMI 시스템(100)과 중앙제어기(110) 상호 간에 전송되는 데이터의 종류와 크기가 다양하기 때문에 실제 데이터를 전송하기 전에 미리 헤더정보를 전송한다.(300단계) 헤더에는 유효성 검사를 하기 위한 유효키와 데이터의 종류와 통신 유형을 정의하는 타입 항목과 다음에 전송될 실제 데이터의 크기를 나타내는 항복으로 구성되어 있다. 전송되는 데이터의 통신 유형을 4가지로 정의하였는데, 첫째 유형은 통신 검사, 다른 태스크의 실행 등 시스템 내부에서 사용하기 위해서 예약해 놓은 유형이며, 둘째 유형은 실제 데이터를 필요치 않아 통신 헤더 정보만을 전송하는 경우에 해당하며, 셋째 유형은 헤더와 실제 데이터를 전송하는 경우이고, 넷째는 MMI 시스템(100)에서 중앙제어기(110)에 필요한 데이터를 요청하는 경우이다. 즉, 중앙제어기(110)에 데이터를 전송하거나 중앙제어기(110)에서 필요한 데이터를 얻으려고 하는 응용프로그램은 적당한 통신 유형을 타입에 채워 헤더 정보를 보내야 한다. 중앙제어기(110)에서의 제어기통신서버(230)는 MMI 시스템(100)으로부터 전송되는 데이터를 받아 해석하고 그에 상응하는 처리를 담당하는 태스크로서, 먼저 헤더 데이터를 받은 후에 데이터의 유효성을 검사하고(310단계), 데이터의 상기 네 가지 통신 유형에 따라 실제 데이터를 전달 받기도하고 요청한 데이터를 MMI 시스템으로 전달해 주기도 한다.(320단계) 제어기통신서버(230)는 항상 MMI 시스템(100)으로부터 전송되는 데이터를 받을 준비가 되어 있어야 하기때문에 헤더를 해석하여 그에 상응하는 처리를 담당하는 부분은 연기(suspend)되어서는 안되며, 연기(suspend)되는 경우는 처리부를 새로운 태스크로 생성해야 한다. 각종 입출력 디바이스(145,155,165,175)의 접점에서 발생하는 공정 데이터는 이력데이터를 관리함으로써 향후에 공정을 개선하거나 문제점을 파악하는데 중요한 데이터로 사용될 수 있다. 본 발명에서는 이러한 점을 고려하여 이력 데이터를 관리하고 있다. 상기 이력 데이터는 공정의 상황을 감시하고 제어하는데 사용된다. 공정의 감시는 별도의 감시툴(monitoring Tool)을 이용하는데 감시툴에서 사용되는 이력 데이터는 감시툴에서 데이터베이스(220)에 저장된 이력데이터를 추출하거나 MMI 시스템(100) 상의 MMI통신서버(210)로부터 OLE(Object Linking and Embedding)을 이용하여 이력 데이터를 얻어오는 방법을 사용하고 있다. 이력 데이터의 관리는 상용 데이터베이스(220)를 이용한다.3 is a flowchart illustrating a data transmission / reception method between the MMI system 100 and the central controller 110 among components constituting the crane control system with the integrated network shown in FIGS. 1 and 2 according to the present invention. As illustrated, this is described as follows. In the present invention, since the type and size of data transmitted between the MMI system 100 and the central controller 110 vary, the header information is transmitted before the actual data is transmitted (step 300). It consists of a valid key, a type item defining the type of data and a communication type, and a yield indicating the size of the actual data to be transmitted next. Four types of communication data are defined. The first type is reserved for internal use such as communication check and execution of other tasks. The second type transmits only the communication header information because no actual data is required. The third type is a case of transmitting a header and actual data, and the fourth type is a case in which the MMI system 100 requests data necessary for the central controller 110. That is, an application program that transmits data to the central controller 110 or tries to obtain necessary data from the central controller 110 should send header information by filling the appropriate communication type into a type. The controller communication server 230 in the central controller 110 is a task that receives and interprets the data transmitted from the MMI system 100 and performs a corresponding process. In step 310, the real data may be received according to the four types of communication of the data, and the requested data may be delivered to the MMI system (step 320). The controller communication server 230 always transmits data transmitted from the MMI system 100. Because it must be ready to receive the header, the part responsible for interpreting the corresponding header should not be suspended, and if it is suspended, the processing unit must be created as a new task. Process data generated at the contacts of various input / output devices 145, 155, 165, and 175 may be used as important data for improving the process or identifying problems in the future by managing history data. In the present invention, the historical data is managed in consideration of this point. The historical data is used to monitor and control the status of the process. The monitoring of the process uses a separate monitoring tool. The historical data used in the monitoring tool extracts the historical data stored in the database 220 in the monitoring tool or from the MMI communication server 210 on the MMI system 100. It uses a method of obtaining historical data using OLE (Object Linking and Embedding). Management of the historical data uses a commercial database 220.

본 발명에서 사용한 상용 데이터베이스의 기능으로는 데이터베이스(220)에 저장된 이력 데이터에 대한 보고서 편집 기능, 이력 데이터의 추출, 수정, 삭제 등의 자료처리 기능과 타 응용프로그램(예를 들어 마이크로소프트사의 엑셀)과의 데이터 연계 기능, 분산 환경에서도 이용할 수 있는 분산 데이터 베이스 기능 등을 지원하고 있다. 상기 분산 데이터베이스 기능은 데이터베이스 서버가 원거리(Remote)의 시스템에 있고 이를 접근하여 이용하는 데이터베이스 클라이언트가 근지역(Local) 시스템에 있어도 사용할 수 있는 기능이다. 또한 마이크로 시스템 사가 제안한 ODBC(Open DataBase Connectivity)라는 표준 호출레벨 인터페이스(Call level Interface:CLI)를 지원하고 있어 본 발명에서도 상기 ODBC를 이용하여 데이터베이스(220)에 이력 데이터를 저장하고 추출한다.Commercial database functions used in the present invention include a report editing function for the historical data stored in the database 220, data processing functions such as extracting, modifying, and deleting the historical data and other application programs (for example, Microsoft's Excel). It also supports data linkage function and distributed database function that can be used in distributed environment. The distributed database function is a function that can be used even when the database server is in a remote system and a database client that accesses and uses the local server is in a local system. In addition, the present invention supports a standard call level interface (CLI) called ODBC (Open DataBase Connectivity) proposed by the microsystem company. In the present invention, the data is stored and extracted in the database 220 using the ODBC.

본 발명에서 데이터베이스(220)에 저장되고 관리되는 데이터의 종류로는 전체적인 시스템 구성에 관한 구성데이터(Configuration data)와 각종 입출력 데이터의 특성 및 타입, 실제 주소를 나타내는 입출력 특성 데이터(attribute data)와 응용프로그램에서 데이터베이스에 저장하는 데이터, 그리고 각종 입출력 특성 데이터(attribute data)와 응용프로그램에서 데이터베이스(220)에 저장하는 데이터, 그리고 각종 입출력 접점에서 발생한 공정 데이터를 들 수 있다. 이러한 데이터는 적당한 데이터베이스의 레코드 형태로 저장되며 또는 레코드 형태로 추출된다. 입출력 접점에서 발생한 공정데이터는 중앙제어기(110)의 특정 태스크에서 주기적으로 통신 API 함수를 호출하여 MMI 시스템(100)으로 공정 데이터를 전송하고,MMI 시스템(100)은 MMI통신 서버(210)에서 이를 받아 OLE를 이용하여 감시툴로 데이터를 전송하고 또한 ODBC를 이용하여 공정 데이터를 데이터베이스(220)에 저장한다. 이렇게 저장된 공정데이터는 데이터베이스(220)의 각종 툴 보고서 편집, 혹은 자료처리기 등을 통해서 관리되며 SLD(Soft Logic Designer) 등과 같은 응용프로그램에서도 이력 데이터를 데이터베이스(220)로부터 독출하여 사용할 수 있다.Types of data stored and managed in the database 220 according to the present invention include configuration data related to the overall system configuration, characteristics and types of various input / output data, and input / output characteristic data representing actual addresses and applications. Data stored in a database in a program, various input / output characteristic data, data stored in a database 220 in an application program, and process data generated at various input / output contacts. This data is stored in the form of records in a suitable database or extracted in record form. The process data generated at the input / output contacts transmits process data to the MMI system 100 by periodically calling a communication API function in a specific task of the central controller 110, and the MMI system 100 transmits the process data to the MMI communication server 210. The data is transmitted to the monitoring tool using OLE, and the process data is stored in the database 220 using ODBC. The stored process data may be managed through various tool report editing or data processing of the database 220, and the historical data may be read from the database 220 and used in an application program such as a soft logic designer (SLD).

도 4는 제어프로그래밍툴(200, Soft Logic Designer: 이하 SLD라 함)의 개발환경을 도시한 것으로서, 상기 SLD(200)는 IEC1131-3에서 정의된 5가지 언어(Sequential Function Chart:SFC, Function Block Diagram:FBD, Ladder Diagram:LD, Instruction List:IL, Structured Text:ST)중 3가지(SFC, FBD, ST)를 지원한다. 상기 LD는 따로 지원하지는 않으나 상기 FBD를 이용하여 상기 LD와 같이 프로그래밍이 가능하다. 그리고 상기 SLD 에디터는 다중문서편집(MDI)이 지원되어 프로그램 작성시나 수정시 편리하게 이용할 수 있으며 그래픽 아이콘에 의한 명령어 선택으로 초보자도 쉽게 이용할 수 있도록 만들어졌다. 에디터는 각 프로그래밍 언어마다 자식(child) 윈도우로 따로 지원이 된다. 즉 상기 SFC는 SFC의 특징을 이용하는 에디터를 이용하여 프로그래밍 할 수 있으며, FBD,ST 각각 해당 언어에 맞는 아이콘과 메뉴를 이용할 수 있다. 도 5는 상기 SLD의 도큐먼트 & 뷰(Document & View)의 구조를 도시한 것으로서, MFC에서는 도큐먼트&뷰 라는 특별한 형태를 지원한다. 마우스입력, 화면 그림등 사용자 인터페이스 뷰 클래스(View Class)에서 담당하고, 데이터의 처리, 저장등은 도큐먼트 클레스(Document Class)에서 처리한다. 즉 해야할 일에 따라 클래스를 구분하므로 객체지향프로그래밍 개념을 따르는 구조라 할 수 있다. SLD에서도 이와같은 상기 도 5에 도시된 도큐먼트 & 뷰 구조를 이용하여 만들어졌다.4 is a diagram illustrating a development environment of a control programming tool (hereinafter, referred to as SLD). The SLD 200 includes five languages (Sequential Function Chart: SFC, Function Block) defined in IEC1131-3. Supports three types (SFC, FBD, ST): Diagram: FBD, Ladder Diagram: LD, Instruction List: IL, Structured Text: ST. The LD is not separately supported, but can be programmed like the LD using the FBD. In addition, the SLD editor supports multi-document editing (MDI) and can be conveniently used when writing or modifying a program. The SLD editor can be easily used even by a beginner by selecting a command by a graphic icon. The editor is supported separately as a child window for each programming language. That is, the SFC can be programmed using an editor using the characteristics of the SFC, and icons and menus corresponding to the corresponding languages can be used for each FBD and ST. FIG. 5 illustrates the structure of Document & View of the SLD, and MFC supports a special form called Document & View. It handles user interface View Class such as mouse input, screen picture, etc., and handles data processing and storage in Document Class. In other words, it classifies classes according to what they need to do, so it follows the concept of object-oriented programming. The SLD was also made using the document & view structure shown in FIG.

도 6은 상기 SLD 프로그램의 전체구조를 도시한 것이다. SFC, FBD, ST 각각의 에디터는 기본 그리기 기능이외에 객체(object)들을 선택, 복사, 삭제가 가능하다. 그러나 그루핑(grouping), 비그루핑(ungrouping)은 지원하지 않는다. 되돌리기는(undo) 한단계 레벨까지 가능하다.6 shows the overall structure of the SLD program. SFC, FBD, and ST editors can select, copy, and delete objects in addition to the basic drawing functions. However, grouping and ungrouping are not supported. You can undo up to one level.

도 7은 SFC 에디터를 도시한 것으로서, 상기 SFC에디터는 전체 화면을 n x n의 큰 블록으로 나누어 블록내에 SFC 요소(BEGIN, STEP, TRANSITION, SINGLE BRANCH, DOUBLE BRANCH, JUMP BLOCK)를 그려넣는 방식으로 되어 있다. nxn 어래이(array) 방식을 사용하는 이유는 SFC 자체가 고정된 형식을 취하고 있기 때문이며 이러한 데이터 구조가 코드를 형성하고 에디터를 구현하는데 있어 보다 많은 효율을 줄 수 있다.FIG. 7 illustrates an SFC editor in which the SFC editor divides the entire screen into large blocks of nxn and draws SFC elements (BEGIN, STEP, TRANSITION, SINGLE BRANCH, DOUBLE BRANCH, JUMP BLOCK) in the block. . The reason for using the nxn array approach is that the SFC itself is in a fixed format, and this data structure can be more efficient in shaping code and implementing editors.

도 8은 FBD블록의 기본구조를 도시한 것이며, 도 9는 FBD 에디터를 도시한 것이다. 상기 FBD 에디터는 화면의 아무 위치나 블록을 놓을 수 있는 자유스타일(Free Style)과 정해진 위치에만 블록을 놓을 수 있는 블록스타일(Block Style)의 형태가 있다. FBD는 SFC와는 달리 정해진 위치에만 블록을 놓을 수 있는 방법은 구현의 용이성은 좋으나 사용자의 용이성 측면에서는 그다지 바람직하지는 않다. 따라서 사용자의 편이성을 고려하면 자유스타일을 따라야 한다. FBD 에디터는 두가지의 장점만을 취한 중간 형태인 SFC 에디터와 같이 큰 블록이 아닌 10포인트(point) 단위로 움직이게 하였으며, 블록(제8도)과 블록(제8도)간의 연결선은 입력과 출력 포트를 지정하면 자동으로 생성되도록 하였다. 한 블록은 다음과 같이 구성된다. 100×100 포인트의 크기로 전체의 블록을 설정한다. 이 설정값을 기준으로 블록의 겹침 등을 판단한다. 한 블록이 가질 수 있는 입력과 출력의 개수는 3개로 제한한다. 3개 이상의 입력이 필요할때는 2개 이상의 블록으로 구현해야 한다. ST 에디터는 텍스트 에디터로 윈도 에디트 콘트롤을 이용하여 작성하였다. 'cut, paste, copy' 등 기본 에디터 기능은 모두 가능하다. SFC와 FBD의 각 데이터는 MFC는 제공하는 이중링크리스트 클래스(double linked list class)를 이용하여 작성된다.8 shows the basic structure of the FBD block, and FIG. 9 shows the FBD editor. The FBD editor has a free style in which a block can be placed at any position on the screen and a block style in which a block can be placed only at a predetermined position. Unlike the SFC, the FBD can be placed only at a predetermined position. However, the FBD is easy to implement, but it is not preferable from the viewpoint of user convenience. Therefore, considering the user's convenience, you should follow the free style. The FBD editor moves in 10-point increments rather than large blocks, like the intermediate SFC editor, which takes only two advantages. The connection line between the block (Figure 8) and the block (Figure 8) connects the input and output ports. If specified, it is generated automatically. One block consists of: Set the entire block to a size of 100 x 100 points. Based on this setting value, the overlapping of the blocks is determined. The number of inputs and outputs that a block can have is limited to three. When three or more inputs are required, they must be implemented in two or more blocks. The ST editor is a text editor written using the Windows Edit controls. Basic editor functions such as 'cut, paste, copy' are possible. Each data of the SFC and the FBD is created using a double linked list class provided by the MFC.

한편 시스템 전체 흐름(flow)을 기술하기 위해서는 IEC1131-3 규격에서 정의된 SFC(Sfquential Function Chart)를 이용하고, SFC내의 각 스텝을 구성하는 것들로서는 FBD(Function Block Diagram)/ST(Structured Text) 코드 등이 있다. 이러한 FBD/ST 코드 등을 이용하여 제어알고리즘(control algorithm)과 응용 프로그램(application program)을 기술하게 되고, 이들 코드들을 트랜스레이터(243)에 의해 해석된 후에 하나의 소스 프로그램(source program)을 기술하게 되고, 이들 코드들을 트랜스레이터(243)에 의해 해석된 후에 하나의 소스프로그램을 이용하는 실시간 다중처리 실행기(245)에 의해 실행된다.On the other hand, in order to describe the overall flow of the system, the SFC (Sfquential Function Chart) defined in the IEC1131-3 standard is used.Function Block Diagram (FBD) / Structured Text (STB) codes are used to configure each step in the SFC. Etc. Using such FBD / ST codes, control algorithms and application programs are described, and these codes are interpreted by the translator 243 to describe one source program. These codes are interpreted by the translator 243 and then executed by the real-time multiprocessing executor 245 using one source program.

본 발명의 전체 응용프로그램 구성은 SFC(도 6, 도 7)와 FBD(도 8, 도 9)/ST 코드로 이루어진다. 특히, 전체 흐름을 구성하는 것이 SFC(도 6, 도 7)이다. 전체 응용프로그램을 하나의 SFC 형태로 구성하고, 이를 도 10에 도시된 바와 같은 페트리 네트모델(Petri Net model)로 만든다. SFC 내부의 각 스텝(도 10의 S1∼S12번)들을 타스크로 만들고, 전체 흐름 처리는 더 높은 우선권(higher priority)을 갖는 스케쥴러(scheduler)가 천이(transition)를 기준으로 하거나, 각 타스크가 직접 토큰(token)을 전달(pass)하는 방법 두가지가 지원된다. 페트리네트 모델을 이용하게 되면 선택/동기분기(selection/simultaneous branch)에서의 천이(도 11:T1∼T11번)들에 대한 별도의 정보가 없어도 되고(Petri Net model 자체로 해결됨) 분기(branch) 내에서의 내포깊이(nest depth)에 제한을 둘 필요도 없게 된다. 단, 스케쥴러를 사용할 경우는 진행중인 타스크들에 관련된 천이들을 스캔(scan)하면서 흐름을 제어하게 되므로 이를 위해 에디터(도 7)나 코드 생성기(도 7)에서 필요한 천이리스트를 만들어 준다. 한 SFC가 스캔시간(scan time) 내에서 루프를 도는 형태로 운용되는데, 상기 스캔시간은 시스템 초기 설치시에 정해지는 것이고, 흐름(flow) 진행중에 상기 스캔시간을 초과하는 경우는 운전을 멈추고, 사용자에게 알려 프로그램을 수정하게끔 한다. 전체 스캔시간과는 별도로 사용자가 임의의 루프를 지정하여 프로그램을 구성할 수도 있다.The overall application configuration of the present invention consists of SFC (FIGS. 6 and 7) and FBD (FIGS. 8 and 9) / ST codes. In particular, it is SFC (FIG. 6, 7) which comprises the whole flow. The entire application program is configured in one SFC form, and this is made into a Petri Net model as shown in FIG. 10. Each step (No. S1 to S12 in Fig. 10) inside the SFC is tasked, and the overall flow process is performed by a scheduler having a higher priority, or by each task directly. Two ways of passing a token are supported. The PetriNet model eliminates the need for additional information about transitions in the selection / simultaneous branch (Figures 11: T1 through T11) (solved by the Petri Net model itself). There is no need to limit the nesting depth within. However, when the scheduler is used, the flow control is performed while scanning the transitions related to the ongoing tasks, thereby making the transition list required by the editor (FIG. 7) or the code generator (FIG. 7). An SFC is operated in a loop in the scan time, which is determined at the initial installation of the system, and when the flow time exceeds the scan time, the operation is stopped. Inform the user to modify the program. Apart from the total scan time, the user can configure the program by specifying an arbitrary loop.

도 10은 SFC를 이용한 흐름 제어프로그램의 예를 도시한 것이다. 이를 페트리네트 모델로 표시한 것이 도 11이다. 상기 페트리네트 모델의 첫 스텝(step)은 항상 S1(도 11)이고 초기 표시(marking)을 가지고 있다. 스텝(도 10:S1∼S12번, 도 11:S1∼S12번) 각각은 실시간 운영체계 환경에서의 타스크로 만들어지며, 트랜스레이터(243)에 의해 각 천이(도 11:T1∼T11번)에 대한 입/출력 스텝(in/out step)에 대한 정보가 데이터 구조에 저장되게 되고, 이를 이용하여 토큰 경로(token path)를 결정하게 된다. IEC1131-3 규격에 의거해서 천이조건 (transition condition)은"단일 불린 표현(a single boolean expression)"에 의해서만 만들어지고, 상기 표현에 의해 다른 변수의 값이 영향을 받아서는 안되며, 이 표현의 결과는 불린(boolean)으로만 간주되어, 이에 의해 흐름이 진행될 것인지를 결정하게 된다. 각 스텝내의 ST 코드들은 정해진 형식(format)에 따라 해당 메모리 블록에 저장되고, 각 타스크들은 스스로 실행기(executor)가 되어 메모리 블록 포인터를 따라 정해진 작업을 수행하게 된다. 이러한 단일 코드/멀티타스킹 방식은 변환(translation)시에 미리 작업의 상당부분을 처리한 상태이므로 실행 시간을 줄일 수 있고, 실행되는 타스크의 코드들이 연결리스트(linked list) 형태로 연결되어 있어 디버깅이 용이하고, 메모리 블록의 구성을 외부에서 원하는 형태로 변경하기가 용이하다. 또한 입력 변수의 개수에 따라 각 함수(function)들을 몇 개의 집단으로 분류해서 데이터 구조를 구성함으로써 불필요한 메모리의 낭비를 줄이고 코드 실행시간도 벌수 있다.10 shows an example of a flow control program using an SFC. This is represented by the Petri net model is shown in FIG. The first step of the Petri net model is always S1 (FIG. 11) and has an initial marking. Each of the steps (Fig. 10: S1 to S12, Fig. 11: S1 to S12) is made as a task in a real-time operating system environment, and for each transition (Fig. 11: T1 to T11) by the translator 243. Information about the in / out step is stored in the data structure, and the token path is determined using the information. In accordance with the IEC1131-3 standard, transition conditions are created only by "a single boolean expression," and the expression must not affect the values of other variables. Only a boolean is considered, thereby determining whether the flow will proceed. The ST codes in each step are stored in the corresponding memory block according to a predetermined format, and each task is itself an executor to perform a predetermined task along the memory block pointer. This single code / multitasking method handles much of the work in advance at the time of translation, reducing execution time and debugging the linked code in a task. This is easy, and it is easy to change the configuration of the memory block to the desired form from the outside. In addition, each function can be classified into several groups according to the number of input variables to form a data structure, thereby reducing unnecessary memory waste and increasing code execution time.

상술한 바와 같이 본 발명에 의하면, 공정 자동화를 위한 본 발명에서 개발한 시스템은 하부 입출력 장치 및 하부 PLC등 하부 시스템들과의 네트웍를 통한 연결시 하나의 통합 네트워크 프로토콜을 이용하여 연결하면 되므로 시스템의 유지, 보수 및 관리가 편리하며 비용이 절감될 수 있다.As described above, according to the present invention, the system developed in the present invention for process automation can be connected using a single integrated network protocol when connected via a network with lower systems such as a lower input / output device and a lower PLC. In addition, maintenance and management are convenient and costs can be reduced.

그리고 상위 제어시스템의 SFC/FBD/ST를 이용한 제어프로그래밍 툴이 국제표준 규격인 IEC1131-3에 의거하여 구성되어 있으므로 하부 PLC의 LD(ladder diagram)을 이용한 제어프로그래밍 툴과 동일한 방법으로 프로그래밍을 할 수 있다. 따라서 프로그램 작성자 및 사용자가 하나의 제어프로그래밍 언어만을 익히면 되므로 상당히 편리하다.And since the control programming tool using SFC / FBD / ST of the upper control system is configured in accordance with the international standard IEC1131-3, it can be programmed in the same way as the control programming tool using LD (ladder diagram) of the lower PLC. have. Therefore, it is quite convenient because program authors and users only need to learn one control programming language.

또한 시스템제어 및 감시에 필요한 데이터를 관리함에 있어서 하나의 통합된 형태의 데이터 관리체계를 이용함으로써 이에 대한 유지, 관리가 용이하며, 부수적인 장치를 쉽게 추가 장착할 수 있으므로 확장성 및 유연성이 좋다.In addition, it is easy to maintain and manage by using an integrated data management system in managing data required for system control and monitoring, and it is easy to add additional devices, so it is easy to expand and flexibility.

Claims (9)

제어프로그램의 입력, 전체 시스템의 구조정의 및 각종 입출력 신호와 주요데이터들의 모니터링과 저장을 수행하는 MMI 시스템;An MMI system for inputting a control program, defining a structure of the entire system, and monitoring and storing various input / output signals and important data; 상기 MMI시스템으로부터 입력되는 제어프로그램을 분석하여 전체 시스템의 실시간 제어를 담당하고, 입력된 프로그램들을 실시간 이벤트-구동 방식으로 연산하며, 각종 입출력 데이터 처리 및 주요 데이터를 관리하는 중앙제어기;A central controller that analyzes a control program input from the MMI system and takes charge of real-time control of the entire system, calculates input programs in a real-time event-driven manner, and manages various input / output data and main data; 버스를 통해 상기 중앙제어기와 연결되어 있는 직접입출력장치;A direct input / output device connected to the central controller via a bus; 상기 버스를 통해 상기 중앙제어기과 연결되고, 네트웍을 구동 및 제어하는 네트웍 드라이버;A network driver connected to the central controller through the bus and driving and controlling a network; 한쪽은 상기 네트웍을 통해 상기 네트웍드라이버와 연결되고, 다른 한 쪽은 크레인의 각종 구동장치 및 센서와 연결되어, 상기 중앙제어기의 제어명령 및 상기 구동장치의 루프제어를 수행하는 하나이상의 원거리 입출력장치; 및At least one remote input / output device connected to the network driver through the network and connected to various driving devices and sensors of the crane, and performing control commands of the central controller and loop control of the driving device; And 한쪽은 상기 네트웍을 통해 상기 네트웍드라이버와 연결되고, 다른 한 쪽은 각종 전동기와 연결되어, 상기 전동기의 순차제어를 수행하는 PLC를 포함함을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템.One side is connected to the network driver through the network, the other side is connected to various motors, the crane control system having an integrated network, characterized in that it comprises a PLC for performing the sequential control of the motor. 제1항에 있어서, 상기 MMI시스템과 상기 중앙제어기는The method of claim 1, wherein the MMI system and the central controller 이더넷을 통해 연결됨을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템.Crane control system with integrated network, characterized in that connected via Ethernet. 제2항에 있어서,The method of claim 2, 상기 이더넷상의 통신 프로토콜은 TCP/IP임을 특징으로하는 통합네트웍을 구비한 크레인 제어시스템.The communication protocol on the Ethernet crane control system having an integrated network, characterized in that the TCP / IP. 제1항에 있어서, 상기 네트웍드라이버의 네트웍은The network of claim 1, wherein the network driver network RS-485의 전기적 사양에 준하여 127개의 통신노드까지 확장가능하며, 통신선로는 트위스티드 페어 선임을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템.It can be extended to 127 communication nodes according to the electrical specification of RS-485, and the communication line is a crane control system with an integrated network, characterized by a twisted pair wire. 제1항에 있어서, 상기 버스는The bus of claim 1 wherein the bus is 브이엠이 버스임을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템.Crane control system with integrated network, characterized in that the bus is a bus. 제1항에 있어서, 상기 제어프로그램은The method of claim 1, wherein the control program IEC1131-3 국제표준규격에 입각한 제어프로그램임을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템.Crane control system with integrated network, characterized in that the control program based on the international standard IEC1131-3. 제1항 내지 제6항의 통합네트웍을 구비한 크레인 제어시스템의 상기 중앙제어기와 MMI시스템간의 데이터 통신시스템에 있어서,In the data communication system between the central controller and the MMI system of the crane control system having the integrated network of claim 1, 제어프로그램을 작성 및 수정하는 제어프로그래밍툴;A control programming tool for creating and modifying a control program; 상기 중앙제어기와의 데이터 송신 및 수신을 담당하는 MMI통신서버;An MMI communication server in charge of data transmission and reception with the central controller; 상기 MMI통신서버로부터 상기 중앙제어기의 데이터를 받아 저장하는 데이터베이스;A database for receiving and storing data of the central controller from the MMI communication server; 상기 MMI시스템과의 데이터 송신 및 수신을 담당하는 제어기통신서버;A controller communication server in charge of data transmission and reception with the MMI system; 상기 입출력 장치로부터의 데이터를 저장하는 실시간 데이터베이스;A real time database storing data from the input / output device; 상기 제어프로그래밍툴에서 작성된 프로그램을 컴파일하여 실행화일로 변환하는 트랜스레이터;A translator for compiling a program written in the control programming tool and converting the program into an executable file; 상기 트랜스레이터에서 생성된 실행화일을 실행하는 실행기; 및An executor executing an executable file generated by the translator; And 상기 입출력 장치로부터의 데이터를 가져오는 데이터획득기를 포함함을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템의 데이터 통신시스템.And a data acquirer for importing data from the input / output device. A data communication system of a crane control system having an integrated network. 제1항 내지 제6항의 통합네트웍을 구비한 크레인 제어시스템의 상기 중앙제어기와 MMI시스템간의 데이터 통신방법에 있어서,In the data communication method between the central controller and the MMI system of the crane control system having the integrated network of claim 1, 상기 MMI시스템이 상기 중앙제어기에게 데이터의 유효성 검사를 위한 유효키, 데이터의 종류와 통신유형을 정의하는 타입정보, 실제 전송될 데이터의 크기에 관한 정보를 포함하는 헤더데이터를 전송하는 단계;Transmitting, by the MMI system, header data including a valid key for validating data, type information defining types of data and a communication type, and information on the size of data to be actually transmitted to the central controller; 상기 중앙제어기는 상기 헤더데이터를 받아 데이터의 유효성을 검사하는 단계; 및The central controller receiving the header data and checking validity of the data; And 상기 중앙제어기가 상기 MMI시스템으로 상기 헤더데이터에 있는 통신유형에 따라 실제 데이터를 전달받거나 요청한 데이터를 전달해주는 단계를 포함함을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템의 중앙제어기와 MMI시스템간의 데이터 통신방법The central controller between the central controller and the MMI system of the crane control system having an integrated network, characterized in that it comprises the step of receiving the actual data or the requested data according to the communication type in the header data to the MMI system. Data communication method 제8항에 있어서, 상기 헤더데이터의 통신유형은The method of claim 8, wherein the communication type of the header data 통신검사, 다른 타스크의 실행등 시스템 내부에서 사용하기 위해서 예약해 놓은 유형;Types reserved for internal use by the system, such as communication checks and execution of other tasks; 실제 데이터를 필요치 않아 통신 헤더 정보만을 전송하는 유형;A type of transmitting only communication header information because no actual data is required; 헤더와 실제 데이터를 전송하는 유형; 및Type of transmitting header and actual data; And 상기 MMI시스템에서 상기 중앙제어기에 필요한 데이터를 요청하는 유형 중 하나임을 특징으로 하는 통합네트웍을 구비한 크레인 제어시스템의 중앙제어기와 MMI시스템간의 데이터 통신방법.Data communication method between the central controller and the MMI system of a crane control system having an integrated network, characterized in that the MMI system is one of a type for requesting data required for the central controller.
KR1019960029504A 1996-07-20 1996-07-20 Crane control system and communication method having integral network KR100372142B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960029504A KR100372142B1 (en) 1996-07-20 1996-07-20 Crane control system and communication method having integral network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960029504A KR100372142B1 (en) 1996-07-20 1996-07-20 Crane control system and communication method having integral network

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1019960046290A Division KR0177554B1 (en) 1996-09-07 1996-10-16 Table having the refrigerator function

Publications (2)

Publication Number Publication Date
KR980009091A KR980009091A (en) 1998-04-30
KR100372142B1 true KR100372142B1 (en) 2003-05-12

Family

ID=37416544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960029504A KR100372142B1 (en) 1996-07-20 1996-07-20 Crane control system and communication method having integral network

Country Status (1)

Country Link
KR (1) KR100372142B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030040757A (en) * 2001-11-16 2003-05-23 (주)세이브서비스 Over-current control and administration method of tower crane motor using Internet
CN101334661B (en) * 2008-05-26 2012-07-04 太原重工股份有限公司 Crane remote wireless parallelling control system and method
CN103010959A (en) * 2012-12-27 2013-04-03 三一重工股份有限公司 Bus network, control system and crane

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3737650B2 (en) * 1999-07-09 2006-01-18 株式会社東芝 Integrated controller and control system
CN108928740A (en) * 2018-09-13 2018-12-04 徐州建机工程机械有限公司 A kind of tower crane safety operation control system and method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030040757A (en) * 2001-11-16 2003-05-23 (주)세이브서비스 Over-current control and administration method of tower crane motor using Internet
CN101334661B (en) * 2008-05-26 2012-07-04 太原重工股份有限公司 Crane remote wireless parallelling control system and method
CN103010959A (en) * 2012-12-27 2013-04-03 三一重工股份有限公司 Bus network, control system and crane

Also Published As

Publication number Publication date
KR980009091A (en) 1998-04-30

Similar Documents

Publication Publication Date Title
AU2022202972B2 (en) Tools and methods for real-time dataflow programming language
CN110543144B (en) Method and system for graphically programming control robot
US7693585B2 (en) Enabling object oriented capabilities in automation systems
CN107567604A (en) It is used for the method and system of the process control of equipment in the Machine To Machine network based on OPC UA
CN106933212B (en) reconfigurable industrial robot programming control method in distributed manufacturing environment
CN111797521B (en) Three-dimensional simulation debugging and monitoring method for automatic production line
CN110612488A (en) Process map within a controller to enable real world object visibility and accessibility
CN107765629A (en) A kind of DELTA2 robot control systems based on Soft- PLC and EtherCAT buses
CN105652841A (en) Intelligent programmable logic controller
EP1701252A1 (en) Systems and methods for managing control systems through java extensions
US20120079157A1 (en) Development of functional modules using a module bus
US11294356B2 (en) Production control system
KR102280440B1 (en) Method for generating the Asset Administration Shell(AAS) in a smart manufacturing system
KR100372142B1 (en) Crane control system and communication method having integral network
US20060259157A1 (en) Device and method for programming and/or executing programs for industrial automation systems
US20040015844A1 (en) Programming station generating a program in single language and automation equipment using such a program
US20230103137A1 (en) Engineering System and Method for Configuring and Parameterizing Field Bus Subscribers
CN116643542A (en) Oil field station digital twin process configuration method, system and device based on low-code development platform
CN104965497B (en) Online creation data quickly generates and management method and system
GB2345360A (en) Programming programmable controllers
Dehof et al. An approach for modelling communication networks in industrial control systems
Grüner et al. An approach for interconnection and unification of state models in discrete manufacturing
CN117313188B (en) M language-based production system discrete event simulation optimization method and system
CN114691117B (en) Edge controller software rapid development method
Schmidt et al. AutomationML in a Nutshell AutomationML eV Office

Legal Events

Date Code Title Description
N231 Notification of change of applicant
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: 20080102

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee