KR101821032B1 - 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램 - Google Patents

프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램 Download PDF

Info

Publication number
KR101821032B1
KR101821032B1 KR1020157034855A KR20157034855A KR101821032B1 KR 101821032 B1 KR101821032 B1 KR 101821032B1 KR 1020157034855 A KR1020157034855 A KR 1020157034855A KR 20157034855 A KR20157034855 A KR 20157034855A KR 101821032 B1 KR101821032 B1 KR 101821032B1
Authority
KR
South Korea
Prior art keywords
database
instruction
data
access
command
Prior art date
Application number
KR1020157034855A
Other languages
English (en)
Other versions
KR20160006738A (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 KR20160006738A publication Critical patent/KR20160006738A/ko
Application granted granted Critical
Publication of KR101821032B1 publication Critical patent/KR101821032B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13004Programming the plc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13041Display ladder or logic diagram, mnemonics, switch between two display
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15064MMU, memory management unit
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2241Real time database, each processor stores in local memory used variables

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

프로그래머블 컨트롤러(10)는 유저 프로그램 중의 복수의 명령을 차례대로 실행하는 명령 실행 수단과, 상기 명령 실행 수단으로의 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납부(13)와, 상기 명령 중에 상기 데이터베이스로의 액세스용 명령이 포함되는 경우에, 상기 액세스용 명령을 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 수단과, 상기 데이터베이스 격납부(13) 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 데이터를 취득하는 데이터베이스 관리 수단을 구비한다.

Description

프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램{PROGRAMMABLE CONTROLLER AND PERIPHERAL DEVICE THEREOF, AND PROGRAM FOR ACCESSING TABLE DATA OF PROGRAMMABLE CONTROLLER}
본 발명은 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램에 관한 것이다.
프로그래머블 컨트롤러는 유저에 의해서 작성된 시퀀스 프로그램에 따라, 내부에 가지는 디바이스 데이터를 리드/라이트한다. 이것에 의해서, 예를 들어, 프로그래머블 컨트롤러에 접속된 릴레이, 스위치, 센서 등의 입력 장치의 상태 취득이 행해지고, 또 액츄에이터, 밸브 등의 출력 장치의 제어가 행해진다. 디바이스 데이터에는, 예를 들어 생산품의 사이즈와 색 등의 레시피 데이터(recipe data)와, 생산품마다의 생산 개수, 불량품 개수 등의 실적 데이터도 격납되어 있다. 그 때문에, 운용자는, 입출력 장치의 제어에 필요한 데이터를, 레시피 데이터로부터 취득하도록 시퀀스 프로그램을 작성함으로써, 생산품의 변경을 유연하게 행할 수 있다. 또, 제어 결과를, 실적 데이터로서 격납하도록 시퀀스 프로그램을 작성하면, 생산에 따른 부재의 재고 관리 등을 용이하게 행할 수도 있다.
레시피 데이터나 실적 데이터 등의 데이터는, 상위(上位)의 계산기 시스템이 취급하기 쉽도록, CSV(Comma Separated Values)로 대표되는 2차원의 데이터 테이블(이하, 「테이블」이라고 함) 형식으로 프로그래머블 컨트롤러 내에 보존되는 것이 일반적이다. 프로그래머블 컨트롤러가 이들 데이터에 액세스하기 위해서는, 이들 데이터를 디바이스 메모리상에 판독하지 않으면 안 된다. 테이블 내의 요소인 테이블 데이터(레시피 데이터나 실적 데이터 등)를 고유하게 특정하기 위해서는, 테이블의 행(Column) 번호와 열(Row) 번호를 지정하면 된다. 그러나 디바이스 메모리에는 행과 열과 같은 개념이 없고 테이블 데이터가 디바이스 메모리상에 연속적으로 배치되어 있기 때문에, 프로그래머블 컨트롤러가 디바이스 메모리상의 디바이스 데이터에 액세스할 때에는, 디바이스 어드레스를 계산하지 않으면 안 된다.
이에, 종래에는, 프로그래머블 컨트롤러에서도, 1차원의 데이터를 2차원의 테이블의 데이터로서 취급할 수 있는 기술이 제안되어 있다(예를 들어, 특허 문헌 1). 여기에서는, 먼저, 테이블 식별 번호, 테이블 행수, 테이블 열수 및 테이블의 선두 디바이스 어드레스(head device address)를 가지는 테이블 정의 명령을 테이블마다 정의한다. 그 다음으로, 2차원의 테이블의 데이터상에서의 행 번호 및 열 번호를 인수로서 이용하고, 판독 대상의 요소를 지정하는 테이블 요소 판독 명령에 의해서, 1차원의 데이터로부터 요소를 추출한다. 이때, 판독 대상의 요소의 디바이스 어드레스는, 테이블 정의 명령의 선두 디바이스 어드레스 및 테이블 열수와, 테이블 요소 판독 명령의 행 번호 및 열 번호를 이용하여 디바이스 메모리상에서의 판독 대상 요소의 디바이스 어드레스를 산출한다.
특허 문헌 1: 일본국 특개 2010-198132호 공보
그렇지만, 특허 문헌 1에 기재된 프로그래머블 컨트롤러에서는, 테이블 데이터 중의 판독 대상 요소를 판독하는 경우에, 테이블 데이터를 디바이스 메모리상에 판독하는 공정과, 디바이스 메모리상에서 판독 대상 요소를 검색하는 공정의 2개의 공정이 필요했다. 그 때문에, 판독 대상 요소를 검색하는데 시간이 걸린다고 하는 문제점이 있었다. 또, 디바이스 메모리는, 테이블 데이터를 판독할 수 있는 만큼의 기억 용량을 가지고 있을 필요가 있어, 프로그래머블 컨트롤러의 제조 코스트가 증가하는 요인이 되고 있었다.
본 발명은 상기를 감안하여 이루어진 것으로, 데이터베이스로부터 데이터를 판독할 때, 종래에 비해서 데이터베이스로부터의 판독의 공정수를 줄일 수 있는 프로그래머블 컨트롤러와 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램을 얻는 것을 목적으로 한다. 또, 그러한 프로그래머블 컨트롤러의 프로그램을 프로그래밍할 수 있는 주변 장치를 얻는 것도 목적으로 한다.
상기 목적을 달성하기 위해, 본 발명에 따른 프로그래머블 컨트롤러는, 유저 프로그램 중의 복수의 명령을 차례대로 실행하는 명령 실행 수단과, 상기 명령 실행 수단으로의 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납 수단과, 상기 명령 중에 상기 데이터베이스로의 액세스용 명령이 포함되는 경우에, 상기 액세스용 명령을 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 수단과, 상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 데이터를 취득하는 데이터베이스 관리 수단을 구구비하는 것을 특징으로 한다.
본 발명에 의하면, 데이터베이스 쿼리용 명령 생성 수단에 의해서, 데이터베이스로의 액세스용 명령이 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환되고, 데이터베이스 관리 수단에 의해서, 데이터베이스 격납 수단 중의 데이터베이스에 액세스하여, 데이터베이스 쿼리용 명령으로 지정되는 데이터가 취득되고, END 명령 처리 수단에 의해서, 유저 프로그램 중의 END 명령 처리시에, 취득된 데이터가 유저 데이터 기억 수단의 액세스용 명령으로 지정되는 어드레스에 기입되므로, 프로그래머블 컨트롤러에서 데이터베이스로부터 데이터를 판독할 때, 종래에 비해서 데이터베이스로부터의 판독의 공정수를 줄일 수 있다고 하는 효과를 가진다.
도 1은 실시 형태 1에 의한 프로그래머블 컨트롤러의 기능 구성을 모식적으로 나타내는 블록도이다.
도 2는 프로그램 기억부의 구성을 모식적으로 나타내는 도면이다.
도 3은 데이터베이스의 일례를 나타내는 도면이다.
도 4는 DB_OPEN 명령의 내용의 일례를 나타내는 도면이다.
도 5는 DB_SELECT 명령의 내용의 일례를 나타내는 도면이다.
도 6은 DB_CLOSE 명령의 내용의 일례를 나타내는 도면이다.
도 7은 래더 프로그램(ladder program)에 있어서의 데이터베이스 판독 지시의 일례를 나타내는 도면이다.
도 8은 프로그래머블 컨트롤러의 전체 처리의 절차의 일례를 나타내는 순서도이다.
도 9는 데이터베이스 액세스용 명령의 실행 처리의 절차의 일례를 나타내는 순서도이다.
도 10은 데이터베이스 액세스용 명령의 처리의 모습을 모식적으로 나타내는 도면이다.
도 11은 데이터베이스 액세스용 명령으로부터 데이터베이스 쿼리용 명령의 생성 처리의 일례를 나타내는 도면이다.
도 12는 END 처리시의 완료 확인 처리의 절차의 일례를 나타내는 순서도이다.
도 13은 실시 형태 2에 의한 프로그래머블 컨트롤러의 기능 구성을 모식적으로 나타내는 블록도이다.
도 14는 실시 형태 2에 의한 데이터베이스 액세스용 설정 정보의 내용의 일례를 나타내는 도면이다.
도 15는 실시 형태 2에 의한 데이터베이스 판독 지시의 유저 프로그램의 일례를 나타내는 도면이다.
도 16은 데이터베이스 액세스용 설정 정보로부터 데이터베이스 쿼리용 명령을 생성할 때의 명령 변환 정보의 일례를 나타내는 도면이다.
도 17은 네트워크에 접속된 다른 프로그래머블 컨트롤러로부터 데이터를 판독하는 경우의 모습을 모식적으로 나타내는 도면이다.
도 18은 엔지니어링 툴의 기능 구성의 일례를 모식적으로 나타내는 블록도이다.
이하에 첨부 도면을 참조하여, 본 발명에 따른 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램의 바람직한 실시 형태를 상세하게 설명한다. 또한, 이들 실시 형태에 의해 본 발명이 한정되는 것은 아니다.
실시 형태 1.
도 1은 실시 형태 1에 의한 프로그래머블 컨트롤러의 기능 구성을 모식적으로 나타내는 블록도이다. 프로그래머블 컨트롤러(10)는 유저 프로그램 기억부(11)와, 유저 데이터 기억 수단인 유저 데이터 기억부(12)와, 데이터베이스 격납 수단인 데이터베이스 격납부(13)와, 시스템 프로그램 기억부(14)와, 연산부(15)와, 시스템 데이터 기억 수단인 시스템 데이터 기억부(16)를 구비한다.
유저 프로그램 기억부(11)는 프로그래머블 컨트롤러(10)가 실행하는 래더 프로그램 등의 유저 프로그램을 기억한다. 도 2는 프로그램 기억부의 구성을 모식적으로 나타내는 도면이다. 유저 프로그램(111)은 복수의 명령(111-1, 111-2, …, 111-E)의 집합이다. 이 명령(111-1, 111-2, …, 111-E) 중에, 데이터베이스에 액세스하는 데이터베이스 액세스용 명령이 포함되어 있는 것으로 한다. 명령에는, 프로그램 실행 처리를 실행하는 통상의 명령(111-1, 111-2, …)과, 유저 프로그램(111)의 최후에 실행되는 END 명령(111-E)이 있다. 또한, 데이터베이스 액세스용 명령에 대해서는, 후술한다. 유저 프로그램 기억부(11)는 ROM(Read Only Memory) 또는 EEPROM(Electrically Erasable ROM) 등의 불휘발성 기억장치에 의해서 구성된다.
유저 데이터 기억부(12)는 유저 프로그램의 실행시에 사용되는 데이터를 기억하는 디바이스 메모리이다. 유저 데이터 기억부(12)는 데이터베이스 액세스용 명령의 실행시에 필요한 검색 조건 등을 격납하는 검색 조건 격납 영역(121)과, 유저 프로그램을 실행할 때에 일시적으로 데이터를 저장하는 영역인 저장 영역(122)을 가진다. 검색 조건 격납 영역(121)에는, 취득하는 데이터를 가지는 데이터베이스의 격납 위치와, 취득하는 데이터의 검색 조건이 격납된다. 이 검색 조건은 유저에 의해서 도시되지 않은 엔지니어링 툴을 통해서 미리 설정된다. 이들의 격납 위치와 검색 조건은, 후술하는 데이터베이스 액세스용 명령의 인수가 되는 것이다. 저장 영역(122)에는, 데이터베이스 쿼리용 명령의 실행 결과가 격납된다. 유저 데이터 기억부(12)로서, DRAM(Dynamic Random Access Memory) 또는 SRAM(Static RAM) 등을 이용할 수 있다.
데이터베이스 격납부(13)는, 예를 들어 생산품의 사이즈와 색 등의 레시피 데이터와, 생산품마다의 생산 개수, 불량품 개수와 같은 실적 데이터 등의 데이터베이스를 격납한다. 데이터베이스는 2차원적인 테이블 데이터에 의해서 구성된다. 도 3은 데이터베이스의 일례를 나타내는 도면이다. 여기에서는, 제품의 종류마다 사이즈를 규정한 제품 사이즈 테이블을 예시하고 있다. 열 0에는 제품을 식별하는 제품 번호가 격납되고, 열 1~3에는 각각 제품의 길이, 폭, 높이가 격납되어 있다. 행 0~행 4에는, 각 제품의 레코드가 격납된다. 데이터베이스 격납부(13)는 2차 기억장치로서, 플래쉬 메모리나 하드 디스크 등의 불휘발성 기억장치에 의해서 구성된다.
시스템 프로그램 기억부(14)는, 연산부(15)가 실행하는 시스템 프로그램, 이른바 펌웨어를 기억한다. 시스템 프로그램으로서, 유저 프로그램 중의 통상의 명령을 실행하는 명령 실행 프로그램, 유저 프로그램 중의 데이터베이스 액세스용 명령을, 데이터베이스 격납부(13) 중의 데이터에 연산부(15)가 액세스 가능한 형식의 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 프로그램, 데이터베이스 쿼리용 명령에 기초하여 데이터베이스 격납부(13)에 액세스하는 데이터베이스 관리 프로그램, 및 유저 프로그램 중의 END 명령을 실행하는 END 명령 처리 프로그램 등을 들 수 있다. 시스템 프로그램 기억부(14)는 ROM 또는 EEPROM 등의 불휘발성 기억장치에 의해서 구성된다.
명령 실행 프로그램은, 연산부(15)에, 유저 프로그램 기억부(11)에 기억되는 유저 프로그램(111)을 순차 해석하여, 실행시키는 프로그램이다. 구체적으로는, 유저 프로그램(111) 중에 포함되는 최초의 명령(111-1)에서부터 차례대로 실행하여, 최후인 END 명령(111-E)의 직전의 명령까지를 실행시킨다. 또, 유저 프로그램(111) 중에 데이터베이스 액세스용 명령이 있는 경우에는, 그 처리를 데이터베이스 쿼리용 명령 생성 프로그램에 건네준다.
데이터베이스 쿼리용 명령 생성 프로그램은 유저 프로그램 기억부(11)의 유저 프로그램(111) 중에 데이터베이스 액세스용 명령이 있는 경우에, 연산부(15)에, 유저 프로그램(예를 들어 래더 프로그램) 형식으로 기술되어 있는 데이터베이스 액세스용 명령으로부터, 데이터베이스 쿼리 언어로 기술되어 있는 데이터베이스 쿼리용 명령을 생성시키는 프로그램이다. 데이터베이스 쿼리 언어는, 예를 들어 SQL이다. 또, 데이터베이스 쿼리용 명령은 데이터베이스 관리 프로그램의 실행시에 실제로 데이터베이스에 액세스할 때의 커멘드이며, 구체적으로는 SQL의 커멘드이다. 생성한 데이터베이스 쿼리용 명령은, 시스템 데이터 기억부(16)에 기억된다.
데이터베이스 관리 프로그램은, 연산부(15)에, 시스템 데이터 기억부(16)의 데이터베이스 쿼리용 명령 격납 영역(161)에 기억된 데이터베이스 쿼리용 명령을 판독시키고 해석시키고, 실행시키는 프로그램이다. 구체적으로는, 데이터베이스 쿼리용 명령을 판독하고, 데이터베이스 격납부(13)의 데이터베이스로부터 목적으로 하는 데이터(요소)를 직접 추출한다.
END 명령 처리 프로그램은, 연산부(15)에, 시스템 프로그램 기억부에 기억되어 있는 유저 프로그램 중의 최후인 END 명령(111-E)을 실행시키는 프로그램이다. END 명령(111-E)은 퍼스널 컴퓨터 또는 외부 기기와의 사이의 통신 처리와, 데이터베이스 관리 프로그램에 의한 데이터베이스 쿼리용 명령을 실행한 결과의 취득 처리를 포함하는 통상의 명령의 실행 이외의 처리를 행한다. 데이터베이스 쿼리용 명령을 실행한 결과의 취득 처리에서는, 데이터베이스 관리 프로그램에 의해서 추출된 데이터를, 유저 데이터 기억부(12)의 저장 영역(122) 중의 데이터베이스 액세스용 명령으로 지정된 위치에 기입한다.
연산부(15)는 시스템 프로그램 기억부(14) 중에 격납되는 시스템 프로그램(펌웨어)을 실행한다. 또한, 명령 실행 수단은 명령 실행 프로그램을 실행 중인 연산부(15)에 대응하고, 데이터베이스 쿼리용 명령 생성 수단은 데이터베이스 쿼리용 명령 생성 프로그램을 실행 중인 연산부(15)에 대응하고, 데이터베이스 관리 수단은 데이터베이스 관리 프로그램을 실행 중인 연산부(15)에 대응하고, END 명령 처리 수단은 END 명령 처리 프로그램을 실행 중인 연산부(15)에 대응하고 있다.
시스템 데이터 기억부(16)는 펌웨어가 일시적으로 데이터를 두는 워크메모리(work memory)이다. 여기에서는, 연산부(15)에 의해서 생성된 데이터베이스 쿼리용 명령이 일시적으로 기억된다. 시스템 데이터 기억부(16)로서, DRAM 또는 SRAM 등을 이용할 수 있다.
이러한 구성의 프로그래머블 컨트롤러는, CPU(Central Processing Unit), ROM, 주기억장치, 2차 기억장치, 네트워크 유닛을 가진다. 그리고 연산부(15)로 실행하는 기능을 프로그램에 기술하고, 그 프로그램을 시스템 프로그램 기억부(14)에 기억하고, CPU로 그 프로그램을 실행함으로써, 상기 구성의 프로그래머블 컨트롤러를 얻을 수 있다.
이 실시 형태 1에서는, 프로그래머블 컨트롤러(10)는 데이터베이스 격납부(13)의 데이터베이스 중의 목적으로 하는 데이터에 직접 액세스하여 취득하고, 그 결과를 유저 데이터 기억부(12)의 저장 영역(122)에 격납한다. 여기서, 이러한 처리를 실현하는 데이터베이스 액세스용 명령이, 래더 프로그램(유저 프로그램)으로 정의되어 있다. 여기에서는, DB_OPEN 명령, DB_SELECT 명령, DB_CLOSE 명령의 3개의 명령을 정의한다.
(1) DB_OPEN 명령
도 4는 DB_OPEN 명령의 내용의 일례를 나타내는 도면이며, (a)는 DB_OPEN 명령의 구조의 일례를 나타내는 도면이고, (b)는 DB_OPEN 명령의 일례를 나타내는 도면이고, (c)는 디바이스 메모리와 DB_OPEN 명령의 인수 사이의 관계를 모식적으로 나타내는 도면이다. DB_OPEN 명령은 데이터베이스 격납부(13) 중의 조작 대상인 데이터베이스를 열기 위한 명령이다. 도 4 (a)에 도시되는 것처럼, DB_OPEN 명령은, 3개의 인수 A1~A3을 포함한다. 인수 A1로는, 조작 대상(오픈 대상)인 데이터베이스가 지정되고, 인수 A2로는, 오픈 대상의 데이터베이스를 식별하는 데이터베이스 식별자가 지정되고, 인수 A3로는, 오픈 처리가 완료된 것을 나타내는 디바이스가 지정된다.
인수 A1, A2로서, 도 4 (b)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 디바이스(어드레스)를 지정할 수 있다. 예를 들어, 인수 A1, A2에는, 유저 데이터 기억부(12) 중의 디바이스(어드레스)가 입력되고, 그 디바이스에 오픈 대상의 데이터베이스의 정보가 격납된다. 도 4 (c)를 참조하면, 예를 들어, 디바이스 D1000~D1003에는, 데이터베이스 격납부(13)를 가지는 기기(프로그래머블 컨트롤러)의 IP(Internet Protocol) 어드레스 「127.0.0.1」의 값이 입력되고, 디바이스 D1004~D1006에는, 데이터베이스 격납부(13) 중의 오픈 대상의 데이터베이스명 「MyDB」가 입력된다. 또, 인수 A3에는, 오픈 대상의 데이터베이스의 오픈 처리가 완료되면 온되는 완료 디바이스 M0가 설정된다.
(2) DB_SELECT 명령
도 5는 DB_SELECT 명령의 내용의 일례를 나타내는 도면이며, (a)는 DB_SELECT 명령의 구조의 일례를 나타내는 도면이고, (b)는 DB_SELECT 명령의 일례를 나타내는 도면이고, (c)는 디바이스 메모리와 DB_SELECT 명령의 인수 사이의 관계를 모식적으로 나타내는 도면이다. DB_SELECT 명령은 DB_OPEN 명령으로 오픈된 데이터베이스 중에서 원하는 데이터를 취출(取出)하기 위한 명령이다. 도 5 (a)에 도시되는 것처럼, DB_SELECT 명령은 5개의 인수 B1~B5를 포함한다. 인수 B1로는, 조작 대상의 데이터베이스를 지정하는 데이터베이스 식별자가 지정되고, 인수 B2로는, 조작 대상 데이터베이스 내의 조작 대상의 테이블 중으로부터 판독하는 레코드를 특정하기 위한 조건이 지정되고, 인수 B3로는, 인수 B2로 지정된 레코드 중으로부터 판독하는 필드가 지정되고, 인수 B4로는, 인수 B2, B3로 판독한 데이터의 격납 위치가 지정되고, 인수 B5로는, 판독 처리가 완료된 것을 나타내는 디바이스가 지정된다.
인수 B1~B4로서, 도 5 (b)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 디바이스(어드레스)를 지정할 수 있다. 인수 B1은 DB_OPEN 명령의 인수 A2로 지정된 데이터베이스 식별자와 같다. 인수 B2에는, 조작 대상 데이터베이스 중의 판독 대상 테이블과 판독 대상 레코드를 포함하는 판독 대상 레코드 지정 정보가 기억되어 있는 유저 데이터 기억부(12) 중의 디바이스가 지정된다. 이 예에서는, 판독 대상 레코드 지정 정보는, 도 5 (c)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 「D1200~D1205」에 격납되는 조작 대상 테이블명인 「제품 사이즈」와, 「D1206~D1210」에 격납되는 조건 필드명인 「제품 번호」와, 「D1211~D1212」에 격납되는 조건인 「=」과, 「D1213」에 격납되는 조건의 값인 「3」을 포함한다. 즉, 제품 사이즈 테이블 중의 제품 번호가 「3」인 레코드를 추출하기 위한 조건이 격납되어 있다.
인수 B3에는, 인수 B2로 지정되는 레코드 중의 취득하는 필드수와 필드명을 포함하는 판독 필드 지정 정보가 격납되는 유저 데이터 기억부(12) 중의 디바이스가 지정된다. 이 예에서는, 판독 필드 지정 정보는, 도 5 (c)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 「D0」에 격납되는 필드수인 「2」와, 「D1~D3」에 격납되는 필드명 1인 「길이」와, 「D4~D6」에 격납되는 필드명 2인 「높이」를 포함한다. 즉, 제품 사이즈 테이블 중의 제품 번호가 「3」인 레코드로부터, 「길이」와「높이」와 같은 2개의 필드명에 대응하는 데이터를 추출하기 위한 조건이 격납되어 있다.
인수 B4는, 인수 B2, B3으로 지정되고, 판독된 데이터를 격납하는 유저 데이터 기억부(12) 중의 위치를 지정한다. 이 예에서는, 도 5 (c)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 「D100」에, 판독한 레코드수를 나타내는 「1」이 지정되고, 「D101」에, 인수 B3으로 지정된 필드명 1에 대응하는 판독 데이터 1 「9000」이 격납되고, 「D102」에, 인수 B3으로 지정된 필드명 2에 대응하는 판독 데이터 2 「700」이 격납된다. 또, 인수 B5에는, 조작 대상의 데이터베이스로부터의 판독 처리가 완료되면 온되는 완료 디바이스 M1이 설정된다.
(3) DB_CLOSE 명령
도 6은 DB_CLOSE 명령의 내용의 일례를 나타내는 도면이며, (a)는 DB_CLOSE 명령의 구조의 일례를 나타내는 도면이고, (b)는 DB_CLOSE 명령의 일례를 나타내는 도면이다. DB_CLOSE 명령은 데이터베이스 격납부(13) 중의 조작 대상인 데이터베이스를 닫기 위한 명령이다. 도 6 (a)에 도시되는 것처럼, DB_CLOSE 명령은, 1개의 인수 C1를 포함한다. 인수 C1로는, 클로우즈 대상의 데이터베이스를 지정하는 데이터베이스 식별자가 지정된다. 이 데이터베이스 식별자는, DB_OPEN 명령의 인수 A2나 DB_SELECT 명령의 인수 B1로 지정된 데이터베이스 식별자와 같다. 인수 C1로서, 도 6 (b)에 도시되는 것처럼, 유저 데이터 기억부(12) 중의 디바이스(어드레스)를 지정할 수 있다.
이들 3개의 데이터베이스 액세스용 명령을 사용하여, 데이터베이스 격납부(13)로의 액세스를 지시하는 명령이 래더 프로그램에 기입된다. 도 7은 래더 프로그램에 있어서의 데이터베이스 판독 지시의 일례를 나타내는 도면이다. 이 래더 프로그램의 동작의 개요에 대해서 설명한다.
먼저, 데이터베이스 판독의 지시가 되면(스텝 S11), 먼저 DB_OPEN 명령이 실행된다(스텝 S12). 도 4에서 도시한 것처럼, 유저 데이터 기억부(12) 중의 각 디바이스로부터, IP 어드레스가 「127.0.0.1」인 기기의 「MyDB」라고 하는 이름의 데이터베이스를 연다. 그리고 조작 대상의 데이터베이스의 오픈 처리가 완료되면, 디바이스 「M0」를 온으로 한다.
디바이스 「M0」가 온이 되면, 다음의 DB_SELECT 명령이 실행된다(스텝 S13). 이 DB_SELECT 명령에서는, 유저 데이터 기억부(12) 중의 각 디바이스로부터 「제품 사이즈 테이블」의 「제품 번호」가 「3」인 레코드로부터 「길이」와「높이」에 대응하는 데이터를 판독하는 처리를 행한다. 그리고 판독 처리가 완료되면, 디바이스 「M1」을 온으로 한다.
디바이스 「M0」와「M1」이 함께 온이 되면, 다음의 DB_CLOSE 명령이 실행된다(스텝 S14). 이 DB_CLOSE 명령에서는, 조작 대상의 데이터베이스인 「MyDB」라고 하는 이름의 데이터베이스가 닫히게 된다. 이상에 의해서, 데이터베이스로의 액세스 처리가 종료된다.
다음으로, 이러한 프로그래머블 컨트롤러(10)의 동작 처리에 대해서 설명한다. 도 8은 프로그래머블 컨트롤러의 전체 처리의 절차의 일례를 나타내는 순서도이다. 먼저, 프로그래머블 컨트롤러(10)의 연산부(15)는 유저 프로그램 기억부(11)에 기억되어 있는 유저 프로그램(111) 중의 통상의 명령을 실행하는 프로그램 실행 처리를 행한다(스텝 S31). 여기에서는, 도 2에 도시되는 유저 프로그램(111) 중의 명령(111-1)에서부터 END 명령(111-E)의 전의 명령까지가 차례대로 실행된다.
연산부(15)는 유저 프로그램(111) 중의 END 명령(111-E)의 전까지의 통상의 명령을 실행하면, END 명령 처리 프로그램에 기초하여, END 명령(111-E)에 의한 END 처리를 실행한다(스텝 S32). END 처리는 프로그래머블 컨트롤러(10)에 통신회선을 통해서 접속되는 퍼스널 컴퓨터 또는 외부 기기와의 사이의 통신과, 통상의 명령의 실행 이외의 처리를 행한다.
END 처리가 종료되면, 다시 스텝 S31로 돌아가서, 유저 프로그램(111)의 명령(111-1)에서부터 차례대로 연산부(15)에 의해서 처리가 실행된다. 이와 같이, 프로그래머블 컨트롤러(10)에서는, 유저 프로그램(111) 중의 명령(111-1~111-E)이 차례대로, 반복하여 실행되게 된다.
여기서, 스텝 S31의 프로그램 실행 처리에서, 데이터베이스 액세스용 명령을 검출했을 경우에는, 데이터베이스 액세스용 명령의 실행 처리를 실행한다. 도 9는 데이터베이스 액세스용 명령의 실행 처리의 절차의 일례를 나타내는 순서도이고, 도 10은 데이터베이스 액세스용 명령의 처리의 모습을 모식적으로 나타내는 도면이고, 도 11은 데이터베이스 액세스용 명령으로부터 데이터베이스 쿼리용 명령의 생성 처리의 일례를 나타내는 도면이다.
도 9의 데이터베이스 액세스용 명령의 실행 처리는, 도 8의 스텝 S31의 프로그램 실행 처리 중에, 연산부(15)가, 데이터베이스 액세스용 명령을 검출하여, 데이터베이스 쿼리용 명령 생성 프로그램에 검출한 데이터베이스 액세스용 명령을 건네줌으로써, 실행된다. 연산부(15)는 데이터베이스 쿼리용 명령 생성 프로그램에 기초하여, 대상의 데이터베이스의 오픈 처리를 행하여, 취득한 데이터베이스 액세스용 명령(DB_SELECT 명령) 중의 인수로부터 SQL의 생성에 필요한 정보를 취득한다(스텝 S51).
여기에서는, DB_SELECT 명령의 인수 B2, B3을 참조하여, 조작 대상이 되는 데이터베이스로부터 조작 대상 테이블과, 조작 대상 테이블 중의 레코드와, 조작 대상 레코드 중으로부터 추출하는 필드를 추출한다. 도 5의 예에 도시되는 것처럼, 이들 조건은, 유저 데이터 기억부(12)의 인수 B2, B3으로 지정되는 어드레스에 격납되어 있다.
그 다음으로, 연산부(15)는 취득한 정보로부터 데이터베이스 쿼리용 명령(SQL문)을 생성한다(스텝 S52). 도 11 (a)는, 도 5 (b)의 래더 프로그램에 있어서의 데이터베이스 액세스용 명령으로부터 생성된 SQL문이다. SQL문은, SELECT구, FROM구 및 WHERE구를 가지고, 각각의 구에 인수가 설정된다. 데이터베이스 액세스용 명령으로부터의 SQL문의 생성은, 데이터베이스 액세스용 명령의 인수와 SQL문의 인수를 대응지은 명령 변환 정보에 기초하여 행해진다. 도 11 (b)는 명령 변환 정보의 일례를 나타내는 도면이다. 이 명령 변환 정보에서는, SQL문의 인수가, 유저 데이터 기억부(12)의 디바이스를 이용하여 정의된다. 이것에 의해서, 도 5 (b)에 도시되는 데이터베이스 액세스용 명령으로부터 SQL문(데이터베이스 쿼리용 명령)을 생성하는 것이 가능하게 된다. 또한, 이것은 일례이며, SQL문의 종류에 따라 명령 변환 정보를 준비해 두면 좋다.
그 다음으로, 연산부(15)는 생성한 SQL문을 시스템 데이터 기억부(16)의 데이터베이스 쿼리용 명령 격납 영역(161)에 격납한다(스텝 S53).
그 후, 연산부(15)는 데이터베이스 관리 프로그램에 기초하여, 데이터베이스 액세스용 명령인 DB_SELECT 명령의 인수 B1로 지정된 데이터베이스에 대해서, 생성한 SQL문을 발행한다(스텝 S54). 이것에 의해서, 연산부(15)는, SQL문에 따라서, 데이터베이스 격납부(13) 중의 지정된 데이터베이스에 직접 액세스하여, 목적으로 하는 데이터를 취득한다. 이상에 의해서, 데이터베이스 액세스용 명령의 실행 처리가 종료되고, 도 8의 스텝 S31로 처리가 돌아간다.
일반적으로, 프로그래머블 컨트롤러(10)의 실행 처리에 대해서, 데이터베이스의 처리는 늦기 때문에, 데이터베이스 액세스용 명령의 실행 처리는, SQL을 발행한 후에, 데이터베이스의 처리 결과를 기다리지 않고 처리를 완료한다. 그리고 이 데이터베이스의 처리 결과의 완료 확인은 END 처리에서 행한다.
이에, 도 8의 스텝 S32의 END 처리에서, SQL을 발행했을 때의 완료 확인 처리에 대해서 설명한다. 도 12는 END 처리시의 완료 확인 처리의 절차의 일례를 나타내는 순서도이다.
먼저, 연산부(15)는 SQL을 발행 완료했는지 여부를 판정한다(스텝 S71). SQL을 발행 완료하지 않은 경우(스텝 S71에서 No인 경우)에는, SQL을 발행하고 있지 않고, 완료 확인을 할 필요가 없기 때문에, 처리가 종료된다.
또, SQL을 발행 완료한 경우(스텝 S71에서 Yes인 경우)에는, 발행한 SQL의 처리가 완료되었는지 여부를 판정한다(스텝 S72). 발행한 SQL의 처리가 미완료인 경우(스텝 S72에서 No인 경우)에는, 아무것도 처리를 행하지 않고, 완료 확인 처리가 종료된다. 이 경우에는, 다음 번의 END 처리시에 재확인이 행해진다.
한편, 발행한 SQL의 처리가 완료됐을 경우(스텝 S72에서 Yes인 경우)에는, 연산부(15)는 취득한 SQL의 결과를, DB_SELECT 명령의 인수 B4로 지정되는 유저 데이터 기억부(12) 중의 위치에 격납한다(스텝 S73). 그 후, 연산부(15)는 DB_SELECT 명령의 인수 B5로 지정되는 완료 디바이스를 ON으로 하고(스텝 S74), 대상의 데이터베이스의 클로우즈 처리가 행해진다. 이상에 의해서, END 처리시의 완료 확인 처리가 종료된다.
또한, 상기의 예에서는, 데이터베이스로부터의 데이터의 판독를 행하는 데이터베이스 액세스용 명령에 대해서 설명했지만, 본 발명이 이것으로 한정되는 것은 아니다. 예를 들어, 데이터베이스로의 데이터의 추가, 변경 또는 삭제 등의 데이터의 기입을 행하는 명령을 정의하는 것도 가능하다. 이러한 데이터베이스의 기입 명령은, 인수로서, 조작 대상의 데이터베이스를 지정하는 데이터베이스 식별자(데이터베이스 지정 정보)와, 조작 대상 데이터베이스 내의 데이터를 추가하는 테이블명과, 조작 대상 테이블 중의 데이터를 기입하고 싶은 필드명과, 기입하고 싶은 데이터의 내용을 적어도 포함한다. 이와 같이, 데이터베이스 액세스용 명령은, 데이터베이스 중에 격납되는 데이터의 판독 또는 기입과 같은, 데이터베이스로의 액세스를 행하기 위한 명령이다.
실시 형태 1에서는, 래더 프로그램에서 사용되는 데이터베이스 액세스용 명령을 정의하고, 데이터베이스 액세스용 명령으로 지정되는 인수와 SQL문의 인수를 대응지어 두고, 유저 프로그램 중에 데이터베이스 액세스용 명령이 있는 경우에는, 상기 대응지음에 기초하여 데이터베이스 액세스용 명령으로부터 SQL문을 생성하여, SQL을 발행한다. 이것에 의해서, 프로그래머블 컨트롤러(10)에서는, 2차 기억장치인 데이터베이스 격납부(13) 중의 2차원적인 구조의 데이터베이스를, 종래와 같이 1차원적인 구조의 유저 데이터 기억부(12)에 전개(展開)하는 일 없이, 직접 데이터베이스에 액세스하여 원하는 데이터를 취득할 수 있다. 그 결과, 데이터베이스로부터의 데이터의 취득을 1개의 공정으로 행할 수 있어, 데이터의 취득을 종래에 비해서 빨리 할 수 있다고 하는 효과를 가진다.
또, 데이터베이스를 유저 데이터 기억부(12)에 전개할 필요가 없으므로, 유저 데이터 기억부(12)를 데이터베이스의 사이즈를 고려한 용량으로 할 필요가 없다. 즉, 데이터베이스 격납부(13)로부터 유저 데이터 기억부(12)에 판독하는 데이터는, 처리에 필요한 최소한의 데이터로 감소된다. 그 결과, 유저 데이터 기억부(12)의 용량(사용량)을 종래에 비해서 작게 할 수 있다고 하는 효과도 가진다.
추가로, 프로그래머블 컨트롤러(10)에서 필요한 데이터를 취득할 때 데이터베이스를 활용함으로써, 2차원 구조의 데이터베이스를 1차원 구조의 유저 데이터 기억부(12)에 전개했을 때의 데이터의 격납 장소(어드레스)를 래더 프로그램상에서 계산할 필요가 없다. 그 결과, 프로그래밍이 용이하게 된다고 하는 효과를 가진다. 이에 더하여, 데이터베이스의 데이터 구조가 변경되었을 경우에도, 같은 필드의 데이터를 취득하는 경우에는, 유저 프로그램에 작성한 데이터베이스 액세스용 명령을 변경할 필요가 없다.
또, 유저 프로그램에 전용의 명령을 정의함으로써, 프로그래머블 컨트롤러(10)로부터 데이터베이스에 액세스할 수 있어, SQL 등의 데이터베이스 특유의 언어를 모르는 프로그래머블 컨트롤러(10)의 유저라도, 데이터베이스 중의 데이터를 이용한 프로그램을 작성할 수 있다고 하는 효과를 가진다.
실시 형태 2.
실시 형태 1에서는, 데이터베이스 액세스용 명령을 정의하고, 유저 프로그램(래더 프로그램)에 편입(incorporate)하여 사용하는 경우를 나타냈다. 이 실시 형태 2에서는, 데이터베이스 액세스용 명령 대신에, 데이터베이스 조작 설정 정보를 정의하고, 데이터베이스 판독 지시가 실행되는 경우에, 데이터베이스 조작 설정 정보를 판독하여 실시 형태 1과 마찬가지의 처리를 행하는 경우에 대해서 설명한다.
도 13은 실시 형태 2에 의한 프로그래머블 컨트롤러의 기능 구성을 모식적으로 나타내는 블록도이다. 이 프로그래머블 컨트롤러(10)는, 유저 프로그램 기억부(11)의 유저 프로그램에는 데이터베이스 액세스용 명령이 포함되지 않고, 시스템 데이터 기억부(16)에 데이터베이스 쿼리용 명령 격납 영역(161)에 더하여, 데이터베이스 액세스용 설정 정보를 격납하는 데이터베이스 액세스용 설정 정보 격납 영역(162)이 포함된다는 점이 실시 형태 1과 다른 점이다. 또, 연산부(15)는 유저 프로그램(래더 프로그램)의 데이터베이스 판독 지시가 온이 되면, 데이터베이스 액세스용 설정 정보(162A)에 기초하여, 데이터베이스 쿼리용 명령을 작성한다.
도 14는 실시 형태 2에 의한 데이터베이스 액세스용 설정 정보의 내용의 일례를 나타내는 도면이다. 데이터베이스 액세스용 설정 정보(162A)는 대상 데이터베이스와, 대상 테이블과, 필드명과 디바이스의 관계와, 판독 조건과, 실행 트리거를 설정 항목으로서 가진다.
대상 데이터베이스는 조작 대상이 되는 데이터베이스를 지정한다. 예를 들어, 조작 대상이 되는 데이터베이스가 격납되어 있는 기기(프로그래머블 컨트롤러)의 어드레스(IP 어드레스)와, 그 IP 어드레스로 지정되는 기기 중의 데이터베이스명을 지정한다. 대상 테이블은 대상 데이터베이스 중의 조작 대상이 되는 테이블을 지정한다.
필드명과 디바이스의 관계는, 대상 테이블 중으로부터 취득하는 데이터의 필드명과, 취득한 데이터의 유저 데이터 기억부(12) 중에서의 격납 위치를 지정한다. 판독 조건은, 대상 테이블로부터 판독하는 대상의 행(레코드)을 지정한다. 실행 트리거는, 판독한 데이터를 유저 데이터 기억부(12)에 격납하는 타이밍을 지정한다.
즉, 「대상 데이터베이스」항목의 IP 어드레스와 데이터베이스명으로 조작 대상의 데이터베이스가 특정되고, 「대상 테이블」항목의 테이블명으로 데이터베이스 중의 조작 대상의 테이블이 특정된다. 또, 「판독 조건」항목의 필드명으로 특정되는 레코드로부터, 「필드명과 디바이스의 관계」항목의 필드명으로 특정되는 데이터가 판독되는 데이터가 되고, 이 데이터가 필드명과 디바이스의 관계로 지정되는 디바이스 메모리 중의 디바이스에 격납되게 된다. 그리고 이 데이터가 판독되는 타이밍은 「실행 트리거」항목 중의 트리거 디바이스가 온이 되었을 때이다.
도 15는 실시 형태 2에 의한 데이터베이스 판독 지시의 유저 프로그램의 일례를 나타내는 도면이다. 이 유저 프로그램은, 데이터베이스 판독 지시가 온이 되면(스텝 S91), 제품 테이블의 제품 번호를 나타내는 「K3」을 유저 데이터 기억부(12)의 「D1212」에 격납하는 처리(스텝 S92)와, 디바이스 「M0」의 비트를 온으로 하는 처리(스텝 S93)가 실행되는 것을 나타내고 있다.
이것에 의해서, 연산부(15)는, 데이터베이스 액세스용 설정 정보(162A)에 설정된 조건에 따라서, 데이터베이스 쿼리용 명령을 생성하여, 시스템 데이터 기억부(16)에 기억한다. 도 16은 데이터베이스 액세스용 설정 정보로부터 데이터베이스 쿼리용 명령을 생성할 때의 명령 변환 정보의 일례를 나타내는 도면이다. 이 도면에 도시되는 것처럼, 명령 변환 정보에서는, SQL문의 인수가, 데이터베이스 액세스용 설정 정보(162A)의 내용을 이용하여 정의된다. 연산부(15)는, 이것에 의해서 도 11 (a)에 도시되는 SQL문을 생성한다.
또한, 도 14의 데이터베이스 액세스용 설정 정보(162A)의 예에서는, 「대상 데이터베이스」항목은, 자(自)프로그래머블 컨트롤러(10)를 지정하는 경우를 나타내고 있지만, 프로그래머블 컨트롤러(10)는 통상 네트워크를 통해서 접속되기 때문에, 다른 프로그래머블 컨트롤러(10)(또는 기기)의 데이터베이스 격납부(13) 중의 데이터베이스로부터 데이터를 취득하는 것도 가능하다.
도 17은 네트워크에 접속된 다른 프로그래머블 컨트롤러로부터 데이터를 판독하는 경우의 모습을 모식적으로 나타내는 도면이다. 도 17 (a)는 프로그래머블 컨트롤러(10A, 10B)가 네트워크(30)에 접속된 시스템 구성을 모식적으로 나타내고 있다. 여기에서는, 데이터베이스 격납부(13A)를 가지고, IP 어드레스가 「192.168.1.1」의 프로그래머블 컨트롤러(10A)와, IP 어드레스가 「192.168.1.2」의 프로그래머블 컨트롤러(10B)가 네트워크(30)를 통해서 접속되어 있다. 여기서, 프로그래머블 컨트롤러(10B)에는, 도 17 (b)에 도시되는 것처럼, 데이터베이스 액세스용 설정 정보(152B)의 「대상 데이터베이스」의 항목에서, 프로그래머블 컨트롤러(10A)의 IP 어드레스와 데이터베이스명이 설정된다. 그 결과, 도 17 (c)에 도시되는 유저 프로그램이 판독되면, 프로그래머블 컨트롤러(10A)의 데이터베이스 격납부(13A) 중의 데이터베이스에 액세스하여, 그 데이터를 취득할 수 있다.
실시 형태 2에서는, 데이터베이스 액세스용 설정 정보에 데이터베이스로의 액세스 조건을 설정하고, 유저 프로그램을 실행할 때, 데이터베이스 판독 지시가 온 상태가 되면, 연산부(15)가 데이터베이스 액세스용 설정 정보에 기초하여 데이터베이스 쿼리용 명령을 생성한다. 그리고 연산부(15)는, 생성된 데이터베이스 쿼리용 명령에 따라서 데이터베이스에 액세스하도록 했다. 이것에 의해서, 실시 형태 1과 같이, 데이터베이스로의 액세스 명령을 래더 프로그램에서 정의하는 일이 없으므로, 프로그래머블 컨트롤러(10)의 유저에게 있어서, 데이터베이스로의 액세스의 설정이 용이하게 된다고 하는 효과를, 실시 형태 1의 효과에 더하여 가진다.
또, 취득하는 데이터의 조건을 데이터베이스 액세스용 설정 정보로 지정할 수 있으므로, 실시 형태 1과 같이 유저 데이터 기억부(12)에 대상 데이터의 취득 조건을 격납할 필요가 없다. 그 결과, 실시 형태 1에 비해서 추가로 유저 데이터 기억부(12)를 소용량화할 수 있다고 하는 효과도 가진다.
또한, 실시 형태 2에서는, 데이터베이스로부터의 데이터의 판독의 경우를 예로 들었지만, 데이터베이스로의 데이터의 추가, 변경 또는 삭제를 행하는 기입인 경우에도, 데이터베이스 액세스용 설정 정보에 기입에 대한 조건을 설정함으로써, 이 데이터베이스 액세스용 설정 정보에 기초하여 데이터베이스 쿼리용 명령을 생성할 수 있다.
실시 형태 3.
실시 형태 3에서는, 실시 형태 1에서 유저 프로그램을 설정하거나 실시 형태 2에서 데이터베이스 액세스용 설정 정보를 설정하거나 하는 엔지니어링 툴에 대해서 설명한다.
도 18은 엔지니어링 툴의 기능 구성의 일례를 모식적으로 나타내는 블록도이다. 엔지니어링 툴(50)은 통신부(51)와, 입력부(52)와, 표시부(53)와, 프로그램 작성 화면 표시 처리부(54)와, 디바이스 메모리 설정 화면 표시 처리부(55)와, 설정 정보 설정 화면 표시 처리부(56)와, 설정부(57)와, 이들 각 처리부를 제어하는 제어부(58)를 구비한다.
통신부(51)는 프로그래머블 컨트롤러(10)와의 사이에서 통신을 행한다. 입력부(52)는 키보드 또는 포인팅 디바이스 등의 유저와의 사이의 입력 인터페이스이다. 입력부(52)는, 예를 들어 프로그래머블 컨트롤러(10)에 설정하는 데이터베이스 액세스용 명령 또는 데이터베이스 액세스용 설정 정보의 입력을 접수한다. 표시부(53)는 액정 표시 장치 등의 유저에 대해서 정보를 표시하는 장치이다.
프로그램 작성 화면 표시 처리부(54)는 유저 프로그램 작성 화면을 표시부(53)에 표시하는 기능을 가진다. 유저 프로그램으로서 래더 프로그램을 이용하는 경우에는, 래더 프로그램을 작성하는 환경을 유저에 대해서 제시한다. 유저 프로그램으로서, 실시 형태 1에서 제시한 데이터베이스 액세스용 명령을 사용하는 경우에는, 데이터베이스 액세스용 명령을 유저 프로그램 작성 화면에서 사용 가능한 상태가 된다.
디바이스 메모리 설정 화면 표시 처리부(55)는, 디바이스 메모리 설정 화면을 표시부(53)에 표시하는 기능을 가진다. 유저 데이터 기억부(12)에는, 상기한 것처럼 판독하는 데이터베이스의 격납 위치, 데이터베이스 중으로부터 판독하는 데이터의 조건, 및 데이터베이스로부터 판독한 데이터 등이 격납된다. 디바이스 메모리 설정 화면은, 이들 정보를 디바이스 메모리의 어느 어드레스에 격납할지 등의 설정을 행하기 위한 설정 화면이다.
설정 정보 설정 화면 표시 처리부(56)는, 데이터베이스 액세스용 설정 정보 설정 화면을 표시부(53)에 표시하는 기능을 가진다. 실시 형태 2와 같이, 데이터베이스 액세스용 설정 정보를 이용하여 데이터베이스로의 액세스를 행하는 경우에는, 예를 들어 도 14에 도시되는 것 같은 데이터베이스 액세스용 설정 정보의 설정 화면을 표시부(53)에 표시한다.
설정부(57)는 프로그램 작성 화면 표시 처리부(54), 디바이스 메모리 설정 화면 표시 처리부(55) 또는 설정 정보 설정 화면 표시 처리부(56)에서 유저에 의해서, 입력부(52)를 통해서 설정(입력)되고, 확정된 내용을, 통신부(51)를 통해서 프로그래머블 컨트롤러(10)에 설정한다.
이 실시 형태 3에서는, 프로그램 작성 화면 표시 처리부(54), 디바이스 메모리 설정 화면 표시 처리부(55) 및 설정 정보 설정 화면 표시 처리부(56)에서 유저에 대해서 유저 프로그램, 디바이스 메모리 및 데이터베이스 액세스용 설정 정보를 설정하기 위한 화면을 유저에 대해서 표시하고, 각각의 화면에 설정된 내용을 설정부(57)로 프로그래머블 컨트롤러(10)에 설정하도록 했다. 이것에 의해서, 프로그래머블 컨트롤러(10)가 데이터베이스 격납부(13) 중의 데이터베이스에 직접 액세스하여 원하는 데이터를 얻을 수 있는 데이터베이스 액세스용 명령 또는 데이터베이스 액세스용 설정 정보를 작성하여, 프로그래머블 컨트롤러(10)에 설정할 수 있다고 하는 효과를 가진다.
또한, 상술한 프로그래머블 컨트롤러(10)에서의 데이터베이스 액세스용 명령을 포함하는 유저 프로그램에 있어서의 데이터베이스로부터의 판독 방법, 또는 데이터베이스 액세스용 설정에 기초한 데이터베이스로부터의 판독 방법은, 그 처리 절차를 격납한 프로그램으로서 구성할 수 있다. 그리고 이 프로그램을 상기한 프로그래머블 컨트롤러(10)에서 실행시킴으로써 실현할 수 있다. 또, 이 프로그램은 하드 디스크, SSD(Solid State Drive), 플로피(등록상표) 디스크, CD(Compact Disk)-ROM, MO(Magneto-Optical disk), DVD(Digital Versatile Disk 또는 Digital Video Disk) 등의 컴퓨터로 독해 가능한 기록 매체에 기록된다. 이 경우, 프로그래머블 컨트롤러(10)에 의해서 기록 매체로부터 판독되도록 해도 좋고, 프로그래머블 컨트롤러(10)에 접속된 엔지니어링 툴(50) 등의 정보 처리 단말로 기록 매체로부터 판독되고, 그것을 네트워크를 통해서 프로그래머블 컨트롤러(10)에 인스톨하여 프로그래머블 컨트롤러(10)에 의해서 판독되도록 해도 좋다. 또, 이 프로그램은 인터넷 등의 네트워크(통신회선)를 통해서 배포할 수도 있다.
[산업상의 이용 가능성]
이상과 같이, 본 발명에 따른 프로그래머블 컨트롤러는, 2차 기억장치에 기억되는 데이터베이스로부터 데이터를 판독하여 처리를 행하는 프로그래머블 컨트롤러에 유용하다.
10, 10A, 10B: 프로그래머블 컨트롤러,
11: 유저 프로그램 기억부,
12: 유저 데이터 기억부, 13, 13A: 데이터베이스 격납부,
14: 시스템 프로그램 기억부, 15: 연산부,
16: 시스템 데이터 기억부, 30: 네트워크,
50: 엔지니어링 툴, 51: 통신부,
52: 입력부, 53: 표시부,
54: 프로그램 작성 화면 표시 처리부,
55: 디바이스 메모리 설정 화면 표시 처리부,
56: 설정 정보 설정 화면 표시 처리부,
57: 설정부, 58: 제어부,
121: 검색 조건 격납 영역, 122: 저장 영역,
152B: 데이터베이스 액세스용 설정 정보,
161: 데이터베이스 쿼리용 명령 격납 영역,
162: 데이터베이스 액세스용 설정 정보 격납 영역.

Claims (16)

  1. 유저 프로그램 중의 최후인 END 명령 이외의 복수의 명령을 차례대로 실행하고, END 명령 처리 수단에 의한 상기 END 명령의 실행 후에 다시 상기 유저 프로그램 중의 상기 복수의 명령을 차례대로 실행하는 명령 실행 수단과,
    상기 명령 실행 수단으로의 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납 수단과,
    상기 명령 중에 상기 데이터베이스로의 액세스용 명령이 포함되는 경우에, 상기 액세스용 명령을 데이터베이스 쿼리 언어(database query language)에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 수단과,
    상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 데이터를 취득하는 데이터베이스 관리 수단과,
    상기 명령 실행 수단에 의한 상기 유저 프로그램 중의 상기 복수의 명령의 실행 후에, 상기 데이터베이스 쿼리용 명령을 실행한 결과의 취득 처리를 포함하는 상기 END 명령을 실행하는 END 명령 처리 수단을 구비하고,
    상기 END 명령 처리 수단은, 발행된 상기 데이터베이스 쿼리용 명령에 대응하는 처리가 완료됐을 경우에는, 상기 데이터베이스 관리 수단으로 취득된 상기 데이터를 유저 데이터 기억 수단의 상기 데이터베이스로의 상기 액세스용 명령으로 지정되는 어드레스에 기입 완료 확인 처리를 행하고, 발행된 상기 데이터베이스 쿼리용 명령에 대응하는 처리가 완료되어 있지 않은 경우에는, 다음의 END 명령의 실행시에 상기 완료 확인 처리를 행하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  2. 청구항 1에 있어서,
    상기 액세스용 명령은, 상기 데이터베이스 격납 수단 중의 상기 데이터베이스를 지정하는 데이터베이스 지정 정보 및 상기 데이터베이스 중의 테이블명을 포함하는 액세스 대상 지정 조건을 인수로서 포함하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  3. 청구항 2에 있어서,
    상기 액세스용 명령은, 상기 데이터베이스 중에서 원하는 데이터를 취득하는 명령이고, 인수로서, 상기 액세스 대상 지정 조건으로 검색한 결과를 격납하는 격납 위치를 추가로 포함하고,
    상기 액세스 대상 지정 조건은, 상기 테이블 내에서 취득하는 데이터의 필드를 포함하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  4. 청구항 2에 있어서,
    상기 액세스용 명령은, 상기 데이터베이스 중에 데이터를 기입하는 명령이고, 인수로서, 기입하고 싶은 상기 데이터를 추가로 포함하고,
    상기 액세스 대상 지정 조건은, 상기 테이블 내에서 상기 데이터를 기입하고 싶은 필드를 포함하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  5. 청구항 2에 있어서,
    상기 액세스 대상 지정 조건의 각각은, 상기 유저 데이터 기억 수단의 소정의 위치에 격납되고,
    상기 인수는, 상기 액세스 대상 지정 조건의 상기 유저 데이터 기억 수단 내에서의 격납 위치로서 표현되는 것을 특징으로 하는 프로그래머블 컨트롤러.
  6. 청구항 2에 있어서,
    상기 데이터베이스 쿼리용 명령 생성 수단은, 상기 액세스용 명령의 인수를 상기 데이터베이스 쿼리용 명령의 인수와 대응지어진 명령 변환 정보에 기초하여 상기 액세스용 명령으로부터 상기 데이터베이스 쿼리용 명령을 생성하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  7. 유저 프로그램 중의 복수의 명령을 차례대로 실행하는 명령 실행 수단과,
    상기 명령 실행 수단으로의 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납 수단과,
    상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 포함되는 데이터를 취득하는 조건이 규정되는 데이터베이스 액세스용 설정 정보를 기억하는 시스템 데이터 기억 수단과,
    상기 명령 중에 데이터베이스로의 액세스 지시가 있는 경우에, 상기 시스템 데이터 기억 수단 중의 상기 데이터베이스 액세스용 설정 정보를 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 수단과,
    상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 데이터로 액세스하는 데이터베이스 관리 수단을 구비하고,
    상기 데이터베이스 액세스용 설정 정보는, 상기 데이터베이스 격납 수단 중의 상기 데이터베이스를 지정하는 데이터베이스 지정 정보 및 상기 데이터베이스 중의 테이블명을 포함하는 액세스 대상 지정 조건을 포함하고,
    상기 데이터베이스 쿼리용 명령 생성 수단은, 상기 데이터베이스 액세스용 설정 정보에 포함되는 정보를, 상기 데이터베이스 쿼리용 명령의 인수와 대응지어진 명령 변환 정보에 기초하여 상기 데이터베이스 액세스용 설정 정보로부터 상기 데이터베이스 쿼리용 명령을 생성하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  8. 청구항 7에 있어서,
    상기 데이터베이스 액세스용 설정 정보는, 상기 데이터베이스 중으로부터 원하는 데이터를 취득하는 명령을 실행시키는 정보이고, 상기 액세스 대상 지정 조건으로 검색한 결과를 격납하는 격납 위치를 추가로 포함하고,
    상기 액세스 대상 지정 조건은, 상기 테이블 내에서 취득하는 데이터의 필드를 포함하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  9. 청구항 8에 있어서,
    상기 데이터베이스 쿼리용 명령 생성 수단은, 상기 데이터베이스 액세스용 설정 정보의 상기 액세스 대상 지정 조건과 상기 격납 위치를, 상기 데이터베이스 쿼리용 명령의 인수와 대응지어진 명령 변환 정보에 기초하여 상기 데이터베이스 액세스용 설정 정보로부터 상기 데이터베이스 쿼리용 명령을 생성하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  10. 청구항 7에 있어서,
    상기 데이터베이스 액세스용 설정 정보는, 상기 데이터베이스 중에 데이터를 기입하는 명령을 실행시키는 정보이고, 기입하고 싶은 상기 데이터를 추가로 포함하고,
    상기 액세스 대상 지정 조건은, 상기 테이블 내에서 상기 데이터를 기입하고 싶은 필드를 포함하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  11. 청구항 10에 있어서,
    상기 데이터베이스 쿼리용 명령 생성 수단은, 상기 데이터베이스 액세스용 설정 정보의 상기 액세스 대상 지정 조건과 상기 기입하고 싶은 데이터를, 상기 데이터베이스 쿼리용 명령의 인수와 대응지어진 명령 변환 정보에 기초하여 상기 데이터베이스 액세스용 설정 정보로부터 상기 데이터베이스 쿼리용 명령을 생성하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  12. 청구항 7에 있어서,
    상기 프로그래머블 컨트롤러는, 네트워크를 통해서 데이터베이스를 가지는 다른 프로그래머블 컨트롤러와 접속되고,
    상기 데이터베이스 지정 정보에는, 네트워크를 통해서 접속되는 상기 다른 프로그래머블 컨트롤러의 상기 데이터베이스 격납 수단 중의 상기 데이터베이스를 지정 가능한 것을 특징으로 하는 프로그래머블 컨트롤러.
  13. 유저 데이터 기억 수단과, 통상의 명령의 실행 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납 수단을 구비하고, 유저 프로그램 중의 최초의 통상의 명령에서부터 최후에 기술된 END 명령까지를 차례대로 반복하여 실행하는 프로그래머블 컨트롤러로, 상기 통상의 명령의 실행 처리에 상기 데이터베이스로 액세스하는 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램을 격납하는 기억 매체로서,
    상기 프로그래머블 컨트롤러에,
    상기 통상의 명령 중에 상기 데이터베이스로의 액세스용 명령이 포함되는 경우에, 상기 액세스용 명령을 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 절차와,
    상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 상기 데이터베이스 중의 데이터에 액세스 하여 소정의 처리를 행하는 데이터베이스 관리 절차와,
    상기 데이터베이스 쿼리용 명령을 실행한 결과의 취득 처리를 포함하는 END 명령을 실행하는 END 명령 처리 절차를 실행시키고,
    상기 END 명령 처리 절차에서는, 발행된 상기 데이터베이스 쿼리용 명령에 대응하는 처리가 완료됐을 경우에는, 상기 데이터베이스 관리 절차로 취득된 상기 데이터를 상기 유저 데이터 기억 수단의 상기 데이터베이스로의 상기 액세스용 명령으로 지정되는 어드레스에 기입 완료 확인 처리를 행하고, 발행된 상기 데이터베이스 쿼리용 명령에 대응하는 처리가 완료되어 있지 않은 경우에는, 다음의 END 명령의 실행시에 상기 완료 확인 처리를 행하는 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램을 격납하는 것을 특징으로 하는 기억 매체.
  14. 유저 데이터 기억 수단과, 통상의 명령의 실행 처리에 사용되는 데이터를 표 형식으로 유지하는 데이터베이스를 격납하는 데이터베이스 격납 수단과, 상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 포함되는 데이터를 취득하는 조건이 규정되는 데이터베이스 액세스용 설정 정보를 기억하는 시스템 데이터 기억 수단을 구비하고, 유저 프로그램 중의 최초의 통상의 명령에서부터 최후에 기술된 END 명령까지를 차례대로 반복하여 실행하는 프로그래머블 컨트롤러로, 상기 통상의 명령의 실행 처리에 상기 데이터베이스로 액세스하는 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램을 격납하는 기억 매체로서,
    상기 프로그래머블 컨트롤러에,
    상기 통상의 명령 중에 데이터베이스 액세스 지시가 있는 경우에, 상기 시스템 데이터 기억 수단 중의 상기 데이터베이스 액세스용 설정 정보를 데이터베이스 쿼리 언어에 의한 데이터베이스 쿼리용 명령으로 변환하는 데이터베이스 쿼리용 명령 생성 절차와,
    상기 데이터베이스 격납 수단 중의 상기 데이터베이스에 액세스하여, 상기 데이터베이스 쿼리용 명령으로 지정되는 데이터에 액세스하여 소정의 처리를 실행하는 데이터베이스 관리 절차를 실행시키고,
    상기 데이터베이스 액세스용 설정 정보는, 상기 데이터베이스 격납 수단 중의 상기 데이터베이스를 지정하는 데이터베이스 지정 정보 및 상기 데이터베이스 중의 테이블명을 포함하는 액세스 대상 지정 조건을 포함하고,
    상기 데이터베이스 쿼리용 명령 생성 절차에서는, 상기 데이터베이스 액세스용 설정 정보에 포함되는 정보를, 상기 데이터베이스 쿼리용 명령의 인수와 대응지어진 명령 변환 정보에 기초하여 상기 데이터베이스 액세스용 설정 정보로부터 상기 데이터베이스 쿼리용 명령을 생성하는 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램을 격납하는 것을 특징으로 하는 기억 매체.
  15. 삭제
  16. 삭제
KR1020157034855A 2013-05-17 2013-05-17 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램 KR101821032B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/063855 WO2014184962A1 (ja) 2013-05-17 2013-05-17 プログラマブルコントローラとその周辺装置、およびプログラマブルコントローラのテーブルデータアクセスプログラム

Publications (2)

Publication Number Publication Date
KR20160006738A KR20160006738A (ko) 2016-01-19
KR101821032B1 true KR101821032B1 (ko) 2018-01-22

Family

ID=51031279

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157034855A KR101821032B1 (ko) 2013-05-17 2013-05-17 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램

Country Status (7)

Country Link
US (1) US9841744B2 (ko)
JP (1) JP5518266B1 (ko)
KR (1) KR101821032B1 (ko)
CN (1) CN105209986B (ko)
DE (1) DE112013006971T5 (ko)
TW (1) TWI509377B (ko)
WO (1) WO2014184962A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112014003082B4 (de) * 2014-06-02 2017-05-18 Mitsubishi Electric Corporation Programmierbares Steuerungssystem, programmierbare Steuerung, Programmanzeigevorrichtung und Programmanzeigeverfahren
JP5951123B2 (ja) * 2014-07-14 2016-07-13 三菱電機株式会社 制御装置
JP6366843B2 (ja) * 2015-07-10 2018-08-01 三菱電機株式会社 データ取得装置、データ取得方法及びデータ取得プログラム
JP6627571B2 (ja) * 2016-02-26 2020-01-08 オムロン株式会社 プログラマブルコントローラ、プログラマブルコントローラの制御方法、プログラマブルコントローラの制御プログラム
JP6370503B1 (ja) * 2017-04-17 2018-08-08 三菱電機株式会社 プログラム作成装置
JP6720994B2 (ja) 2018-03-15 2020-07-08 オムロン株式会社 制御システム、コントローラ、および制御方法
JP6737298B2 (ja) 2018-03-15 2020-08-05 オムロン株式会社 コントローラ、制御方法、および制御プログラム
CN108763536B (zh) 2018-05-31 2020-04-14 阿里巴巴集团控股有限公司 数据库访问方法及装置
JP7180158B2 (ja) * 2018-07-13 2022-11-30 オムロン株式会社 プログラム開発装置、およびコントローラ
KR102150335B1 (ko) * 2019-01-17 2020-09-01 주식회사 쓰리데이즈 데이터베이스 관리 시스템
JP7044086B2 (ja) 2019-03-15 2022-03-30 オムロン株式会社 制御システム、制御方法、および制御プログラム
CN112233498B (zh) * 2020-10-14 2023-01-06 烟台鼎钰电子科技有限公司 一种表格式可编程显示控制器
CN112327744B (zh) * 2020-11-20 2021-10-22 深圳市海浦蒙特科技有限公司 用于可编程逻辑控制器的梯形图与指令表互相转换方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002023812A (ja) 2000-07-05 2002-01-25 Mitsubishi Materials Corp 自動制御システムおよび自動制御方法
JP2009086863A (ja) 2007-09-28 2009-04-23 Koyo Electronics Ind Co Ltd フロントエンドサーバ機能内蔵プログラマブルコントローラ

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH103303A (ja) 1996-06-14 1998-01-06 Mitsubishi Electric Corp インターフェース装置
JP2000267703A (ja) 1999-03-15 2000-09-29 Omron Corp プログラマブルコントローラ
JP3155253B2 (ja) 1999-06-29 2001-04-09 株式会社デジタル データ転送システム、データ転送方法およびデータ転送のためのプログラムが記録された記録媒体
JP4694843B2 (ja) * 2002-09-30 2011-06-08 東京エレクトロン株式会社 半導体製作プロセスの監視とコンロトールのための装置
US7467018B1 (en) * 2002-11-18 2008-12-16 Rockwell Automation Technologies, Inc. Embedded database systems and methods in an industrial controller environment
JP2004280664A (ja) * 2003-03-18 2004-10-07 Yaskawa Electric Corp ビット演算装置
JP4244677B2 (ja) 2003-03-31 2009-03-25 三菱電機株式会社 Faコントローラ
JP2007080286A (ja) 2006-11-13 2007-03-29 Omron Corp データ収集装置
US7835806B2 (en) * 2007-01-29 2010-11-16 Rockwell Automation Technologies, Inc. Method for indirect access to controller data using name stored in string tag
JP4895036B2 (ja) 2007-05-14 2012-03-14 横河電機株式会社 分散型制御装置
JPWO2008146477A1 (ja) 2007-05-29 2010-08-19 光洋電子工業株式会社 通信機能を有するplc
JP5197431B2 (ja) 2009-02-23 2013-05-15 三菱電機株式会社 プログラマブルコントローラ
JP2010250584A (ja) 2009-04-16 2010-11-04 Koyo Electronics Ind Co Ltd プログラマブル/ロジック&rfidコントローラ
CN102193922B (zh) * 2010-03-04 2013-07-24 杭州华三通信技术有限公司 一种对数据库进行访问的方法和装置
JP5549556B2 (ja) * 2010-11-16 2014-07-16 富士電機株式会社 データ収集システム、データ収集システムの異常要因判定方法
US9128479B2 (en) * 2011-11-11 2015-09-08 Rockwell Automation Technologies, Inc. Automation control and monitoring system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002023812A (ja) 2000-07-05 2002-01-25 Mitsubishi Materials Corp 自動制御システムおよび自動制御方法
JP2009086863A (ja) 2007-09-28 2009-04-23 Koyo Electronics Ind Co Ltd フロントエンドサーバ機能内蔵プログラマブルコントローラ

Also Published As

Publication number Publication date
CN105209986B (zh) 2017-03-08
DE112013006971T5 (de) 2016-02-18
CN105209986A (zh) 2015-12-30
KR20160006738A (ko) 2016-01-19
TWI509377B (zh) 2015-11-21
US9841744B2 (en) 2017-12-12
WO2014184962A1 (ja) 2014-11-20
JPWO2014184962A1 (ja) 2017-02-23
JP5518266B1 (ja) 2014-06-11
US20160098028A1 (en) 2016-04-07
TW201445267A (zh) 2014-12-01

Similar Documents

Publication Publication Date Title
KR101821032B1 (ko) 프로그래머블 컨트롤러와 그 주변 장치, 및 프로그래머블 컨트롤러의 테이블 데이터 액세스 프로그램
US20070005582A1 (en) Building of database queries from graphical operations
WO2014064819A1 (ja) システム構築支援ツール及びシステム
JP6065008B2 (ja) 制御装置
TWI448858B (zh) 記入設定裝置、記入設定方法以及記錄媒體
KR20170073604A (ko) 데이터 미리보기를 통한 작업 작성 기법
JP3963174B2 (ja) 表示・編集装置及び表示方法並びにプログラム
JP5762601B1 (ja) プログラム編集装置、方法、およびプログラム
US8001552B1 (en) Model merger using an export map
JP6370503B1 (ja) プログラム作成装置
EP3009900B1 (en) Dynamic recommendation of elements suitable for use in an engineering configuration
US8813002B2 (en) Circuit board design support program, design support method, and design support apparatus
CN104903852A (zh) 项目数据创建装置
CN113238750A (zh) 一种病例表单设计器及目标表单界面生成方法
KR101886986B1 (ko) 엔지니어링 툴 프로그램 및 엔지니어링 툴
KR102243708B1 (ko) Hmi 시스템의 편집 툴 갱신 방법
JP5296724B2 (ja) 画面表示データ編集装置及び画面表示データ編集プログラム
JP7481283B2 (ja) メタデータ管理装置、データ管理システムおよびデータ再現方法
JP2010198132A (ja) プログラマブルコントローラ
JP7021401B1 (ja) ロギング支援装置、ロギングシステム、ロギング支援方法及びプログラム
JP4634958B2 (ja) プラントデータ処理装置とその実現用コンピュータプログラム
JP2008140278A (ja) 情報分析手順の共有・再利用方式
JP2002342079A (ja) 制御プログラム作成装置
JP6553461B2 (ja) 既存システム処理仕様抽出装置
JPH0785079A (ja) 情報ファイルの管理装置

Legal Events

Date Code Title Description
A201 Request for examination
GRNT Written decision to grant