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

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

Info

Publication number
KR20120119217A
KR20120119217A KR1020127022062A KR20127022062A KR20120119217A KR 20120119217 A KR20120119217 A KR 20120119217A KR 1020127022062 A KR1020127022062 A KR 1020127022062A KR 20127022062 A KR20127022062 A KR 20127022062A KR 20120119217 A KR20120119217 A KR 20120119217A
Authority
KR
South Korea
Prior art keywords
key data
plc
user program
storage unit
key
Prior art date
Application number
KR1020127022062A
Other languages
English (en)
Other versions
KR101440707B1 (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 KR20120119217A publication Critical patent/KR20120119217A/ko
Application granted granted Critical
Publication of KR101440707B1 publication Critical patent/KR101440707B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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
    • 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/13195Protected programs, running these programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

유저 프로그램(12)에 기초하여 산업용 기기를 제어하는 PLC(1)에 있어서, 제1 키 데이터(11)를 기억하는 액세스 프로텍트된 착탈 가능한 제1 기억부(10)와, 상기 유저 프로그램(12)을 제2 키 데이터(13)과 대응시켜서 기억하는 제2 기억부(15)와, 전원이 투입되었을 때, 자 PLC(1)의 기동 처리를 실행하는 기동 처리부(31)를 구비하고, 상기 기동 처리부(31)는 자 PLC(1)에 장착되어 있는 상기 제1 기억부(10)가 기억하는 제1 키 데이터(11)와 상기 제2 기억부(15)에 기억되어 있는 유저 프로그램(12)에 대응지어져 있는 제2 키 데이터(13)를 독출하고, 상기 독출된 두 개의 키 데이터의 조합에 기초하여 상기 기동 처리를 속행할지 상기 기동 처리를 정지하고 이상 처리를 실행할지를 결정하는 기동 처리 정지 결정부(34)를 구비한다.

Description

프로그래머블 컨트롤러 및 프로그래밍 장치{PROGRAMMABLE CONTROLLER AND PROGRAMMING DEVICE}
본 발명은 유저 프로그램에 기초하여 산업용 기기를 제어하는 프로그래머블 컨트롤러(이하, 간단하게 PLC) 및 상기 유저 프로그램을 작성하는 프로그래밍 장치에 관한 것이다.
PLC는 PLC 메이커에 의해 출하된 후, 장치 메이커에 의해서 산업용 기기에 편입(incorporate)되어, 앤드 유저(end user)의 공장에서 설치된다. PLC에 산업용 기기의 제어를 실행시키기 위한 유저 프로그램은, 장치 메이커에 의해서 프로그래밍 장치를 이용해 작성되어 PLC에 기입된다. 일반적으로, 편입 대상의 산업용 기기가 기술적으로 세련된 동작을 실행할 수 있도록 유저 프로그램은 장치 메이커에 의해서 다양한 기술적인 고안이 이루어지고 있다. 유저 프로그램의 성능(performance)은 장치 메이커가 앤드 유저에게 제공하는 산업용 기기 혹은 그 산업용 기기에 편입된 PLC의 제품적 가치를 좌우한다.
그렇지만, 앤드 유저나 앤드 유저 이외의 타인이 이 유저 프로그램을 PLC로부터 독출하여 복제하고, 복제한 유저 프로그램을 빈 PLC에 편입하면, 동등한 제어를 행하는 PLC를 어려움없이 몇 대라도 작성할 수 있다. 이것은, 장치 메이커의 정당한 이익의 향수(享受)를 방해한다. 따라서 PLC에는 동등한 제어를 행하는 PLC를 부정하게 복제하는 것을 방지하는 구조를 구비하는 것이 요망되고 있다.
예를 들면, 특허 문헌 1에는, 범용 비교 명령의 제1 오퍼랜드(operand)에 하드웨어 고유 데이터가 출현하는 입출력 메모리의 소정 어드레스를 세트하고, 제2 오퍼랜드에는 보호 대상 프로그램 부분을 동작시키고 싶은 PLC의 하드웨어 고유 데이터를 세트하여, 이 범용 비교 명령의 실행 결과를 입력 조건으로서 보호 대상 프로그램 부분을 실행 가능하게 하는 기술이 개시되어 있다. 이 기술에 의하면, 장치 메이커가 제1 오퍼랜드로서의 어드레스를 결정하고, 또한 이 어드레스를 비공개로 함으로써, 장치 메이커가 작성한 유저 프로그램을 장치 메이커가 준비한 특정의 PLC로만 실행할 수 있도록 할 수 있다.
[특허 문헌 1] 일본국 특개 2009-70144호 공보
한편, 앤드 유저측에서는, PLC가 고장났을 때, 고장난 PLC를 예비 PLC로 교환하고, 가능한 한 신속히 산업용 기기를 재가동시키고 싶다고 하는 요망이 있다. 그렇지만, 상기 특허 문헌 1의 기술에 의하면, 고장난 PLC와 동일한 어드레스에 동일한 하드웨어 고유 데이터를 세팅한 PLC로만 고장난 PLC의 유저 프로그램을 동작시킬 수 있기 때문에, PLC마다 예비 PLC를 준비해 두던지, 아니면 장치 메이커에 연락하여 교환용 PLC를 입수해 놓아야만 하여, 앤드 유저에 대한 보수성이 나쁘다고 하는 문제가 있었다.
또, 특허 문헌 1의 기술 외에, 부정 카피를 막기 위해서 PLC로부터의 유저 프로그램의 독출 권한을 패스워드로 관리하는 경우도 생각할 수 있지만, 이 기술에 의하면, 패스워드가 앤드 유저로부터 누설된 경우에는 부정 카피를 막을 수 없고, 그렇다고 해서, 앤드 유저가 패스워드 관리를 엄격하게 하면 보수성을 희생되어 버린다.
본 발명은 상기를 감안하여 이루어진 것으로, 가급적으로 높은 보수성을 구비하고, 또한 부정한 장치 복제를 막을 수 있는 PLC 및 프로그래밍 장치를 얻는 것을 목적으로 한다.
상술한 과제를 해결하여 목적을 달성하기 위해서, 본 발명은 유저 프로그램에 기초하여 산업용 기기를 제어하는 프로그래머블 컨트롤러에 있어서, 제1 키 데이터를 기억하는 액세스 프로텍트된(protected from access) 착탈 가능한 제1 기억부와, 상기 유저 프로그램을 제2 키 데이터와 대응지어 기억하는 제2 기억부와, 전원이 투입되었을 때, 자 PLC의 기동 처리를 실행하는 기동 처리부를 구비하고, 상기 기동 처리부는 자 PLC에 장착되어 있는 상기 제1 기억부가 기억하는 제1 키 데이터와 상기 제2 기억부에 기억되어 있는 유저 프로그램에 대응지어져 있는 제2 키 데이터를 독출하고, 상기 독출된 두 개의 키 데이터의 조합(照合)에 기초하여 상기 기동 처리를 속행(續行)할지 상기 기동 처리를 정지하고 이상 처리를 실행할지를 결정하는 기동 처리 정지 결정부를 구비하는 것을 특징으로 하는 프로그래머블 컨트롤러를 특징으로 한다.
본 발명에 의하면, 가급적으로 높은 보수성을 구비하고, 또한 부정한 장치 복제를 막을 수 있다고 하는 효과를 달성한다.
도 1은 부정한 PLC 복제를 막을 수 있는 상태를 설명하는 도면이다.
도 2는 높은 보수성을 가지는 것을 설명하는 도면이다.
도 3은 본 발명의 실시 형태의 PLC의 하드웨어 구성을 설명하는 도면이다.
도 4는 본 발명의 실시 형태의 PLC의 기능 구성을 설명하는 도면이다.
도 5는 본 발명의 실시 형태의 프로그래밍 장치의 하드웨어 구성을 설명하는 도면이다.
도 6은 본 발명의 실시 형태의 프로그래밍 장치의 기능 구성을 설명하는 도면이다.
도 7은 제1 키 데이터 설정 처리를 설명하는 순서도이다.
도 8은 제2 키 데이터 설정 처리를 설명하는 순서도이다.
도 9는 PLC 기동 처리를 설명하는 순서도이다.
이하에, 본 발명에 관한 프로그래머블 컨트롤러 및 프로그래밍 장치의 실시 형태를 도면에 기초하여 상세하게 설명한다. 또한, 이 실시 형태에 의해 이 발명이 한정되는 것은 아니다.
실시 형태.
본 발명의 실시 형태에서는 높은 보수성을 구비하고 또한 부정한 PLC 복제를 막을 수 있도록 하기 위해서, PLC는 앤드 유저에게는 비공개로 되고, 또한 앤드 유저에 의한 액세스가 금지된 제1 키 데이터를 기억하는 키 기억 장치가 장착되어, 제1 키 데이터에 대응하는 제2 키 데이터가 대응지어진 유저 프로그램을 기억하고, 제1 키 데이터와 제2 키 데이터의 조합 결과가 OK가 아니면 자 PLC의 기동 처리가 완료되지 않도록 구성되어 있다. 우선, 이해를 돕기 위해서, 본 발명의 실시 형태의 특징을 개요적으로 설명한다. 또한, 이하에서는, 제1 키 데이터와 제2 키 데이터가 동일할 경우, 조합 결과 OK로 판정되는 것으로 설명한다.
도 1은 본 발명의 실시 형태에 의해서 부정한 PLC 복제를 막을 수 있는 상태를 설명하는 도면이다. 여기에서는, 장치 메이커가 준비한 PLC(PLC(1a))로부터 유저 프로그램(12)을 독출하고, 독출된 유저 프로그램(12)을 빈 PLC(PLC(1b))에 기입함으로써, PLC(1b)가 PLC(1a)와 동등한 제어를 시키는 것으로 되어 있는 경우에 대해서 설명한다. PLC(1a) 및 PLC(1b)(이하 PLC(1)로 총칭함)에는, 착탈 가능하고 또한 앤드 유저는 액세스 할 수 없는 구조를 구비한 기억 장치인 키 기억 장치(10)가 장착되어 있다. 장치 메이커는, 미리, PLC(1a)의 키 기억 장치(10)에는 앤드 유저에게는 비공개 데이터인 제1 키 데이터(11)를 기입해 두고, 유저 프로그램(12)에는 제1 키 데이터(11)와 동일한 값의 데이터인 제2 키 데이터(13)를 내장시켜 둔다.
PLC(1)는 전원이 투입되면, PLC(1) 자신이 구비하는 기억 영역의 체크 등을 포함하는 PLC 기동 처리의 일환으로서, 제1 키 데이터(11)와 제2 키 데이터(13)를 조합하여, 양쪽이 일치하는지 여부를 판정한다. PLC(1)는 양쪽의 키 데이터가 일치한 경우, PLC 기동 처리를 끝까지 실행하여 유저 프로그램을 기동하는 것이 가능한 상태로 이행한다. 이 상태에서 RUN 지시가 입력되면, PLC(1)는 유저 프로그램(12)을 기동한다. PLC(1)는 제1 키 데이터(11)와 제2 키 데이터(13)가 일치하지 않은 경우, PLC 기동 처리를 정지한다.
도 1의 경우, 유저 프로그램(12)의 카피원인 PLC(1a)는 제1 키 데이터(11)와 제2 키 데이터(13)가 일치(조합 결과 OK)가 되어, PLC 기동 처리가 무사하게 완료되어 유저 프로그램(12)을 기동할 수 있는 상태가 된다. 한편, 유저 프로그램(12)의 카피처인 PLC(1b)는 PLC(1a)에 장착되어 있던 키 기억 장치(10)가 장착되는 일 없이 전원이 투입되면, 제1 키 데이터(11)와 제2 키 데이터(13)가 조합 불일치(조합 결과 NG)가 되어, PLC 기동 처리를 정지하고, 유저 프로그램(12)을 기동할 수 있는 상태로는 이행하지 않는다.
또한, 제1 키 데이터(11)와 제2 키 데이터(13)의 조합을, RUN 지시가 입력된 타이밍에 실행하거나 특허 문헌 1에 개시되어 있는 기술처럼 유저 프로그램(12)이 기동된 후에 실행하는 구성도 생각할 수 있지만, 본 발명의 실시 형태에서는, 리버스 엔지니어링(reverse engineering)에 의해서 제1 키 데이터(11)와 제2 키 데이터(13)가 해독되는 것을 곤란하게 하기 위해서, 상기한 것처럼 PLC 기동 처리중에 조합을 행하도록 하고 있다.
또, 특허 문헌 1에 개시되어 있는 기술과 같이, 유저 프로그램(12)에 키 데이터를 조합하기 위한 범용 비교 명령을 포함하도록 구성되어 있으면, 이 범용 비교 명령을 삭제함으로써 복제된 유저 프로그램(12)을 부정 사용할 수 있지만, 본 발명의 실시 형태에서는, 유저 프로그램(12)에 기초하여 키 데이터의 조합을 행할 수 있는 구성으로 되어 있지 않기 때문에, 제2 키 데이터(13)가 내장되어 있는 위치가 판명되어 그 제2 키 데이터(13)가 삭제된다 하더라도, 조합 결과 NG가 되므로, 유저 프로그램(12)의 부정한 사용을 막을 수 있다.
이와 같이, 본 발명의 실시 형태에 의하면, 장치 메이커가 준비한 키 기억 장치(10)가 없으면 유저 프로그램(12)을 실행할 수 없기 때문에, 동일한 제어를 실행하는 PLC(1)가 몇 대로 복제되는 것을 막을 수 있다.
도 2는 본 발명의 실시 형태가 높은 보수성을 가지는 것을 설명하는 도면이다. 여기에서는, 앤드 유저가 PLC(1a)를 PLC(1b)로 교환하는 경우에 대해서 설명한다. 우선, 도 2(a)에 도시된 바와 같이, 앤드 유저는 PLC(1a)로부터 제1 키 데이터(11)를 기억하는 키 기억 장치(10)를 빼내고(remove), 프로그래밍 장치(이하, 프로그래밍 툴(2))를 이용하여 PLC(1a)에 편입되어 있는 유저 프로그램(12)을 제2 키 데이터(13)와 함께 독출한다. 그리고 앤드 유저는, 도 2(b)에 도시된 바와 같이, PLC(1b)에 PLC(1a)로부터 빼낸 기억 장치(10)를 장착하고, 독출한 유저 프로그램(12)을 프로그래밍 툴(2)을 이용하고 PLC(1b)에 기입한다. 그리고 앤드 유저가 PLC(1b)의 전원을 투입하면, PLC(1b)는 제1 키 데이터(11)와 제2 키 데이터(13)를 조합한다. 제1 키 데이터(11) 및 제2 키 데이터(13)는 각각 PLC(1a)에 기억되어 있던 것과 같으므로, 조합 결과 OK가 되어, PLC(1b)는 PLC 기동 처리를 완료하여 유저 프로그램(12)의 기동을 행할 수 있는 상태가 된다.
이와 같이, 본 발명의 실시 형태에 의하면, 키 기억 장치(10)를 교체함(replace)과 아울러 유저 프로그램(12)을 카피하면 다른 PLC(1)에 동일한 제어를 실행시킬 수 있으므로, PLC(1)가 고장났을 때 등에 있어서, 앤드 유저는 단시간에 PLC(1)를 교환할 수 있다. 또, 교환용으로서 준비되는 PLC(1b)는, 특허 문헌 1에 개시되어 있는 기술과 같이 장치 메이커에 의해서 미리 하드웨어 고유 데이터가 소정 어드레스에 세트된 것(즉 장치 메이커에 의해서 전용으로 준비된 것)일 필요가 없고, 본 발명의 실시 형태가 적용된 구성을 구비하는 것이면 어떠한 PLC(1)여도 좋다. 예를 들면, 앤드 유저는 각각 다른 제어를 실행하는 복수의 PLC(1)를 사용하는 경우가 있다. 그 경우에도, 예비 PLC(1)를 1개 준비해 두면, 복수의 PLC(1) 중 어느 PLC(1)가 고장 나더라도 예비 PLC(1)와 교환할 수 있다. 또, 앤드 유저는 패스워드 입력을 행하는 일 없이 간단하게 PLC(1)를 교환할 수 있다. 이와 같이, 본 발명의 실시 형태는, 앤드 유저에 있어서의 보수성이 높은 것으로 되어 있다.
도 3은 상기 설명한 PLC(1)의 하드웨어 구성을 설명하는 도면이다. 도시된 바와 같이, PLC(1)는 CPU(Central Processing Unit, 14)와, EEPROM(Electrically Erasable Programmable Read Only Memory, 15)와, SRAM(Static Random Access Memory, 16)과, 통신 인터페이스 I/F(17)와, 키 기억 장치 I/F(18)를 구비하고 있다. CPU(14), EEPROM(15), SRAM(16), 통신 I/F(17), 및 키 기억 장치 I/F(18)는 각각 버스를 통하여 서로 접속되어 있다.
키 기억 장치 I/F(18)는 전술된 키 기억 장치(10)에 액세스하기 위한 인터페이스이다. PLC(1)는 장착된 키 기억 장치(10)가 기억하는 제1 키 데이터(11)에 키 기억 장치 I/F(18)를 통하여 액세스한다.
또한, 상술한 것처럼, 키 기억 장치(10)가 기억하고 있는 제1 키 데이터(11)는 앤드 유저가 판독 기입할 수 없게 되어 있다. 이를 위한 구조로서 여기에서는, 키 기억 장치(10)의 액세스는 앤드 유저에 대해서는 비공개인 전용 통신 프로토콜(전송로의 물리 조건, 전달, 상대의 특정, 정보 표현 중 적어도 하나가 전용 설계된 통신 프로토콜)을 이용하여 행하도록 구성되어 있는 것으로 한다.
EEPROM(15)는 제2 키 데이터(13)가 내장된 유저 프로그램(12)과 PLC(1)의 시스템 프로그램인 펌 웨어(19)를 기억하고 있다.
SRAM(16)에는 펌 웨어 전개 영역, 유저 프로그램 전개 영역, 디바이스 데이터 기억 영역이 확보되어 있다. 펌 웨어(19)는 EEPROM(15)로부터 독출되어 SRAM(16)의 펌 웨어 전개 영역에 전개되고, CPU(14)는 SRAM(16)에 전개된 펌 웨어(19)에 기초하여 PLC(1)의 상기한 PLC 기동 처리를 포함하는 기본 동작을 실행한다. CPU(14)는 PLC 기동 처리를 완료한 후, 조작자로부터의 RUN 지시가 도시하지 않은 입력 인터페이스나 프로그래머블 표시기를 통하여 입력되면, 유저 프로그램(12)을 기동한다(유저 프로그램 기동 처리). 구체적으로는, CPU(14)는 유저 프로그램 기동 처리로서, EEPROM(15)로부터 독출하여 SRAM(16)의 유저 프로그램 전개 영역에 전개하고, 전개된 유저 프로그램(12)을 기동한다. CPU(14)는 유저 프로그램 기동 처리에 의해서 기동된 유저 프로그램(12)에 의한 제어에 기초하여 산업용 기기를 제어하기 위한 디바이스 데이터를 생성하고, 생성한 디바이스 데이터를 SRAM(16)의 디바이스 데이터 기억 영역에 격납한다.
통신 I/F(17)는 프로그래밍 툴(2)과의 사이에 통신을 실행하기 위한 통신 인터페이스이다.
도 4는 펌 웨어(19)가 CPU(14)에 의해 실행되는 것에 의해서 실현되는 PLC(1)의 기능의 구성을 설명하는 도면이다. 도시된 것처럼, PLC(1)는 PLC 기동 처리를 실행하는 PLC 기동 처리부(31)와 유저 프로그램 기동 처리를 실행하는 유저 프로그램 실행부(32)를 구비하고 있다. PLC 기동 처리부(31)는, 추가로, 상기한 전용 통신 프로토콜을 이용해서 키 기억 장치(10)에 액세스하여 제1 키 데이터(11)를 독출하는 제1 키 데이터 독출부(33)와, 제1 키 데이터 독출부(33)가 독출된 제1 키 데이터(11)와 유저 프로그램(12)에 내장되어 있는 제2 키 데이터(13)를 조합하여 조합 결과에 기초하여 PLC 기동 처리를 속행할지 PLC 기동 처리를 정지하고 이상 처리를 실행할지를 결정하는 키 데이터 조합부(34)를 구비하고 있다.
또한, 이상 처리란 PLC(1)를 강제 종료하는 것이어도 좋고, PLC 기동 처리를 정지한 후, 프로그래머블 표시기 등에 조작자에 대한 경고를 출력하는 것이어도 좋다.
도 5는 프로그래밍 툴(2)의 하드웨어 구성을 설명하는 도면이다. 도시된 바와 같이, 프로그래밍 툴(2)은 CPU(21), ROM(22), RAM(23), 입력부(24), 표시부(25), 및 통신 I/F(26)를 구비한 통상의 컴퓨터와 동일한 구성으로 되어 있다. CPU(21), ROM(22), RAM(23), 입력부(24), 표시부(25), 및 통신 I/F(26)는 각각 버스를 통하여 서로 접속되어 있다.
CPU(21)는 후술하는 프로그래밍 툴(2)의 기능을 실현하기 위한 컴퓨터 프로그램인 프로그래밍 툴 프로그램(27)을 실행한다. 표시부(25)는 액정 모니터 등의 표시 장치이며, CPU(21)로부터의 지시에 기초하여 조작 화면 등의 조작자에 대한 출력 정보를 표시한다. 입력부(24)는 마우스나 키보드를 구비하여 구성되고, 조작자로부터의 프로그래밍 툴(2)의 조작이 입력된다. 입력부(24)에 입력된 조작 정보는 CPU(21)에 보내진다. 통신 I/F(26)는 PLC(1)와의 사이의 통신을 실행하기 위한 통신 인터페이스이다.
프로그래밍 툴 프로그램(27)은 ROM(22)에 격납되어 있고, 버스 라인을 통하여 RAM(23)에 로드된다. CPU(21)는 RAM(23) 내에 로드된 프로그래밍 툴 프로그램(27)을 실행한다.
또한, 프로그래밍 툴 프로그램(27)은 디스크(DISK) 등의 기억 장치에 격납해 두어도 좋다. 또, 프로그래밍 툴 프로그램(27)은 디스크 등의 기억 장치에 로드해도 괜찮다. 또, 프로그래밍 툴 프로그램(27)을 인터넷 등의 네트워크에 접속된 컴퓨터 상에 격납하고, 네트워크 경유로 다운 로드시키는 것으로 제공 또는 배포하도록 구성해도 좋다. 또, 프로그래밍 툴(2)로 실행되는 프로그래밍 툴 프로그램(27)을 인터넷 등의 네트워크 경유로 제공 또는 배포하도록 구성해도 좋다. 또, 프로그래밍 툴 프로그램(27)을 ROM(22) 등에 미리 편입하여 프로그래밍 툴(2)에 제공하도록 구성해도 괜찮다.
도 6은 프로그래밍 툴 프로그램(27)을 CPU(21)가 실행함으로써 실현되는 프로그래밍 툴(2)의 기능의 구성을 설명하는 도면이다.
도 6에 도시된 바와 같이, 프로그래밍 툴(2)은 조작자에 의한 조작에 기초하여 유저 프로그램(12)을 작성하거나 작성한 유저 프로그램(12)을 PLC(1)가 구비하는 EEPROM(15)에 기입하거나, EEPROM(15)에 기입되어 있는 유저 프로그램(12)을 독출하는 유저 프로그램 설정부(41)를 구비하고 있다. 여기서, 유저 프로그램 설정부(41)는 작성된 유저 프로그램(12)에 제2 키 데이터(13)를 넣는 제2 키 데이터 설정부(42)를 더 구비하고 있다.
또, 프로그래밍 툴(2)은 전용 통신 프로토콜을 이용하여 키 기억 장치(10)에 액세스하여 제1 키 데이터(11)를 판독 기입하는 제1 키 데이터 설정부(43)와, 제1 키 데이터 설정부(43)의 조작자에 의한 사용을 제한하는(허가/불허가하는) 기능 제한부(44)를 구비하고 있다. 기능 제한부(44)에 의한 제한 방식으로서는, 여기에서는 패스워드로서의 액세스 대상의 키 기억 장치(10)가 기억하고 있는 제1 키 데이터(11)의 입력을 요구하고, 입력된 패스워드가 키 기억 장치(10)가 기억하고 있는 제1 키 데이터(11)와 합치(合致)한 경우에 제1 키 데이터 설정부(43)의 사용을 허가하는 패스워드 인증 방식을 채용한다. 이와 같은 패스워드 인증 방식에 의해서, 키 기억 장치(10)에 액세스할 수 있는 조작자를, 제1 키 데이터(11)를 기입한 조작자(즉 장치 메이커)로만 한정할 수 있다.
다음으로, 본 발명의 실시 형태의 PLC(1) 및 프로그래밍 툴(2)의 동작을 설명한다. 도 7은 장치 메이커의 조작자에 의해서 프로그래밍 툴(2)이 조작되어 제1 키 데이터(11)가 설정되는 동작(제1 키 데이터 설정 처리)을 설명하는 순서도이다. 또한, 여기에서는, 제1 키 데이터 설정 처리는 키 기억 장치(10)가 장착된 PLC(1)와 프로그래밍 툴(2)이 접속된 상태로 실행되는 것으로 한다.
기능 제한부(44)가 기동되어 제1 키 데이터 설정 처리가 개시되면, 도 7에 도시된 바와 같이, 기능 제한부(44)는 패스워드로서의 제1 키 데이터(11)의 입력을 수신한다(스텝 S1). 이어, 기능 제한부(44)는 제1 키 데이터 설정부(43)를 통하여 PLC(1)에 장착된 키 기억 장치(10)에 액세스하여 키 기억 장치(10)가 기억하는 제1 키 데이터(11)를 독출하여, 입력된 제1 키 데이터(11)와 독출된 제1 키 데이터(11)가 합치하는지 여부를 판정한다(스텝 S2).
양쪽의 제1 키 데이터(11)가 합치하지 않은 경우(스텝 S2, "아니오"), 기능 제한부(44)는 조작자에 의한 키 기억 장치(10)로의 액세스를 불허가로 하고(스텝 S3), 제1 키 데이터 설정 처리를 종료한다. 양쪽의 제1 키 데이터(11)가 합치한 경우(스텝 S2, "예"), 기능 제한부(44)는 조작자에 의한 키 기억 장치(10)로의 액세스를 허가, 즉 제1 키 데이터 설정부(43)의 조작을 허가한다(스텝 S4).
그리고 제1 키 데이터 설정부(43)는 조작자로부터의 새로운 설정치로서의 제1 키 데이터(11)의 입력을 수신하면(스텝 S5), 입력된 제1 키 데이터(11)의 설정치로 키 기억 장치(10)가 기억하는 제1 키 데이터(11)를 덮어 쓰고(스텝 S6), 제1 키 데이터 설정 처리를 종료한다.
또한, 제1 키 데이터(11)가 미설정의 키 기억 장치(10)에 제1 키 데이터(11)를 설정하는 경우는, 스텝 S1 ~ 스텝 S4와 같은 패스워드 인증을 거치는 일 없이 제1 키 데이터(11)를 설정할 수 있도록 해도 좋다. 그 경우, 기능 제한부(44)가 스텝 S1의 전에 제1 키 데이터(11)가 미설정인지 여부를 판정하여, 미설정인 경우, 스텝 S5로 이행하고, 미설정이 아닌 경우, 스텝 S1로 이행하도록 하면 좋다.
또, PLC 메이커는 키 기억 장치(10)에 초기치로서의 제1 키 데이터(11)가 설정된 상태로 장치 메이커에게 출하하고, 장치 메이커는 스텝 S1에 있어서 PLC 메이커로부터 확인받은 초기치를 입력함으로써 패스워드 인증을 클리어하도록 해도 좋다.
도 8은 장치 메이커의 조작자에 의해서 프로그래밍 툴(2)이 조작되어 제2 키 데이터(13)가 설정되는 동작(제2 키 데이터 설정 처리)을 설명하는 순서도이다. 또한, 제2 키 데이터는 프로그래밍 툴(2)이 PLC(1)에 접속되어 EEPROM(15)에 격납되어 있는 상태의 유저 프로그램(12)에 직접 설정되도록 해도 상관없고, 프로그래밍 툴(2)이 PLC(1)에 접속되지 않고, 프로그래밍 툴(2)의 RAM(23)의 데이터 격납 영역이나 도시하지 않은 외부 기억 장치에 격납되어 있는 상태의 유저 프로그램(12)에 설정되도록 해도 상관없다.
도 8에 도시된 바와 같이, 유저 프로그램 설정부(41) 중 제2 키 데이터 설정부(42)가 기동되어 제2 키 데이터 설정 처리가 스타트하면, 우선, 제2 키 데이터 설정부(42)는 조작자로부터의 제2 키 데이터(13)의 설정치의 입력을 수신한다(스텝 S11). 이어, 제2 키 데이터 설정부(42)는 입력된 제2 키 데이터(13)의 설정치를 유저 프로그램(12)에 내장시키고(스텝 S12), 제2 키 데이터 설정 처리를 종료한다.
여기서, 유저 프로그램(12)에 있어서의 제2 키 데이터(13)의 내장 개소(embedding place)는 앤드 유저에게는 비공개로 해둔다. 또, 제2 키 데이터 설정부(42)는 유저 프로그램(12)에 난독화 처리를 실시함으로써, 제2 키 데이터(13)의 내장 개소의 특정을 곤란하게 하도록 해도 좋다. 제2 키 데이터(13)의 내장 개소의 특정을 곤란하게 함으로써, PLC(1)의 부정한 복제를 보다 곤란하게 하는 효과를 얻을 수 있다.
다음으로, 도 9는 PLC 기동 처리를 설명하는 순서도이다. 도시된 바와 같이, PLC(1)의 전원이 투입되어 PLC 기동 처리가 스타트하면, 우선, PLC 기동 처리부(31)에 의해서, 펌 웨어(19)가 SRAM(16)에 확보되어 있는 펌 웨어 전개 영역에 전개된다(스텝 S21). 스텝 S21 이후, CPU(14)는 SRAM(16)상에 전개된 펌 웨어(19)에 기초하여 동작한다.
그리고 PLC 기동 처리의 일환으로서, 제1 키 데이터 독출부(33)는 PLC(1)에 장착되어 있는 키 기억 장치(10)로부터 제1 키 데이터(11)를 독출한다(스텝 S22). 그리고 키 데이터 조합부(34)는 유저 프로그램(12)에 내장되어 있는 제2 키 데이터(13)를 독출한다(스텝 S23). 그리고 키 데이터 조합부(34)는 제1 키 데이터 독출부(33)가 독출된 제1 키 데이터(11)와 유저 프로그램(12)에 내장되어 있던 제2 키 데이터(13)가 합치하는지 여부를 판정한다(스텝 S24).
제1 키 데이터(11)와 제2 키 데이터(13)가 합치하지 않은 경우(스텝 S24, "아니오"), PLC 기동 처리부(31)는 PLC 기동 처리를 정지하고, 이상 처리를 실행한다(스텝 S25).
한편, 제1 키 데이터(11)와 제2 키 데이터(13)가 합치한 경우(스텝 S24, "예"), PLC 기동 처리부(31)는 그대로 PLC 기동 처리를 속행하여(스텝 S26), PLC 기동 처리를 완료한다.
또한, 이상의 설명에 있어서는, 키 데이터 조합부(34)는 제1 키 데이터(11)와 제2 키 데이터(13)가 동일한 경우에 조합 결과 OK로 한다고 설명했지만, 키 데이터 조합부(34)에 소정의 변환 알고리즘을 구비하고, 키 데이터 조합부(34)가 그 변환 알고리즘을 적용하여 한쪽 또는 양쪽의 키 데이터를 변환하고, 그 변환 알고리즘 적용 후의 키 데이터가 서로 일치하는 경우에 조합 OK로 하도록 해도 좋다.
또, 기능 제한부(44)는 액세스 대상의 키 기억 장치(10)가 기억하고 있는 제1 키 데이터(11)를 패스워드로서 제1 키 데이터 설정부(43)의 사용을 허가/불허가 하는 것으로 설명했지만, 기능 제한부(44)가 사용하는 패스워드는 제1 키 데이터(11)에만 한정하지 않는다. 예를 들면, 키 기억 장치(10)에 제1 키 데이터(11)와 다른 패스워드로서 사용되는 데이터를 기억시켜 두고, 기능 제한부(44)는 액세스 대상의 키 기억 장치(10)가 기억하고 있는 상기 데이터의 입력을 수신하도록 해도 좋다. 또, 상기 데이터와 제1 키 데이터(11)의 편성을, 조합에 이용하는 패스워드로서 사용되도록 해도 좋다.
또, 제1 키 데이터 설정 처리는 키 기억 장치(10)가 장착된 PLC(1)와 프로그래밍 툴(2)이 접속된 상태로 실행된다고 설명했지만, 프로그래밍 툴(2)에도 키 기억 장치 I/F가 구비되어, 그 키 기억 장치 I/F를 통하여 제1 키 데이터 설정 처리가 실행되도록 구성해도 좋다. 또한, 키 기억 장치 I/F는 USB 메모리여도 좋고, 전용 설계된 하드웨어여도 좋다.
이와 같이, 본 발명의 실시 형태에 의하면, PLC(1)는 전원이 투입되었을 때, 자 PLC에 장착되어 있는 액세스 프로텍트된 착탈 가능한 키 기억 장치(10)가 기억하는 제1 키 데이터(11)와 EEPROM(15)이 기억하는 유저 프로그램(12)에 대응지어져 있는 제2 키 데이터(13)를 독출하고, 독출된 제1 키 데이터(11)와 제2 키 데이터(13)를 조합하고, 조합 결과에 기초하여 PLC 기동 처리를 속행할지 PLC 기동 처리를 정지하고 이상 처리를 실행할지를 결정하도록 했으므로, 가급적으로 높은 보수성을 구비하고, 또한 부정한 장치 복제를 막을 수 있는 PLC를 얻을 수 있다.
또, 프로그래밍 툴(2)은 키 기억 장치(10)에 기억되어 있는 제1 키 데이터(11)를 판독 기입하는 제1 키 데이터 설정부(43)와, 유저에 의한 제1 키 데이터 설정부(43)의 조작을 허가/불허가하는 기능 제한부(44)와, 유저에 의한 제2 키 데이터(13)의 입력을 수신하여 상기 수신된 제2 키 데이터(13)를 유저 프로그램(12)에 대응시키는 제2 키 데이터 설정부(42)를 구비하도록 구성했으므로, 장치 메이커 이외의 유저가 제1 키 데이터를 설정하는 것이 곤란하여, PLC(1)의 부정한 장치 복제를 막을 수 있다.
[산업상의 이용 가능성]
이상과 같이, 본 발명에 관한 PLC와 프로그래밍 장치는 유저 프로그램에 기초하여 산업용 기기를 제어하는 PLC 및 상기 유저 프로그램을 작성하는 프로그래밍 장치에 바람직하게 적용된다.
1: PLC
2: 프로그래밍 툴
10: 키 기억 장치
11: 제1 키 데이터
12: 유저 프로그램
13: 제2 키 데이터
14: CPU
15: EEPROM
16: SRAM
17: 통신 I/F
18: 키 기억 장치 I/F
19: 펌 웨어
21: CPU
22: ROM
23: RAM
24: 입력부
25: 표시부
26: 통신 I/F
27: 프로그래밍 툴 프로그램
31: PLC 기동 처리부
32: 유저 프로그램 실행부
33: 제 1 키 데이터 독출부
34: 키 데이터 조합부
41: 유저 프로그램 설정부
42: 제2 키 데이터 설정부
43: 제 1 키 데이터 설정부
44: 기능 제한부

Claims (10)

  1. 유저 프로그램에 기초하여 산업용 기기를 제어하는 프로그래머블 컨트롤러(PLC)에 있어서,
    제1 키 데이터를 기억하는 액세스 프로텍트(protected from access)된 착탈 가능한 제1 기억부와,
    상기 유저 프로그램을 제2 키 데이터와 대응지어 기억하는 제2 기억부와,
    전원이 투입되었을 때, 자 PLC의 기동 처리를 실행하는 기동 처리부를 구비하고,
    상기 기동 처리부는
    자 PLC에 장착되어 있는 상기 제1 기억부가 기억하는 제1 키 데이터와 상기 제2 기억부에 기억되어 있는 유저 프로그램에 대응지어져 있는 제2 키 데이터를 독출하고, 상기 독출된 두 개의 키 데이터의 조합(照合)에 기초하여 상기 기동 처리를 속행(續行)할지 상기 기동 처리를 정지하고 이상 처리를 실행할지를 결정하는 기동 처리 정지 결정부를 구비하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  2. 청구항 1에 있어서,
    상기 기동 처리 정지 결정부는 상기 독출된 두 개의 키 데이터가 일치했을 때, 상기 기동 처리를 속행하는 것을 결정하고, 상기 독출된 두 개의 키 데이터가 일치하지 않았을 때, 상기 기동 처리를 정지하고 이상 처리를 실행하는 것을 결정하는 것을 특징으로 하는 프로그래머블 컨트롤러.
  3. 청구항 1에 있어서,
    상기 제1 기억부는 액세스에 전용 통신 프로토콜을 필요로 함으로써 액세스 프로텍트되고 있는 것을 특징으로 하는 프로그래머블 컨트롤러.
  4. 청구항 1에 있어서,
    상기 제2 키 데이터는 상기 유저 프로그램에 내장되어 상기 제2 기억부에 기억되어 있음으로써 상기 유저 프로그램과 대응지어져 있는 것을 특징으로 하는 프로그래머블 컨트롤러.
  5. 청구항 4에 있어서,
    상기 제2 키 데이터가 내장된 유저 프로그램은 난독화되어 있는 것을 특징으로 하는 프로그래머블 컨트롤러.
  6. 청구항 1에 기재된 PLC로 실행되는 유저 프로그램을 작성하는 프로그래밍 장치로서,
    상기 제1 기억부에 기억되어 있는 상기 제1 키 데이터를 판독 기입하는 제1 키 데이터 설정부와,
    유저에 의한 상기 제1 키 데이터 설정부의 조작을 허가/불허가하는 기능 제한부와,
    상기 유저에 의한 제2 키 데이터의 입력을 수신하고, 상기 수신한 제2 키 데이터를 상기 작성한 유저 프로그램에 대응시키는 제2 키 데이터 설정부를 구비하는 것을 특징으로 하는 프로그래밍 장치.
  7. 청구항 6에 있어서,
    상기 기능 제한부는 상기 유저가 상기 제1 기억부에 기억되어 있는 제1 키 데이터를 갱신할 때, 상기 유저로부터의 패스워드의 입력을 수신하고, 상기 수신한 패스워드에 기초하여 상기 제1 키 데이터 설정부의 조작을 허가/불허가하는 것을 특징으로 하는 프로그래밍 장치.
  8. 청구항 7에 있어서,
    상기 기능 제한부는 상기 수신한 패스워드와 상기 제1 기억부에 기억되어 있는 제1 키 데이터가 일치하는지 여부를 판정하고, 상기 수신한 패스워드와 상기 제1 기억부에 기억되어 있는 제1 키 데이터가 일치했을 때, 상기 제1 키 데이터 설정부의 조작을 허가하고, 상기 수신한 패스워드와 상기 제1 기억부에 기억되어 있는 제1 키 데이터가 일치하지 않았을 때, 상기 제1 키 데이터 설정부의 조작을 허가하지 않는 것을 특징으로 하는 프로그래밍 장치.
  9. 청구항 6에 있어서,
    상기 제2 키 데이터 설정부는 상기 수신한 제2 키 데이터를 상기 작성한 유저 데이터에 내장함으로써 상기 수신한 제2 키 데이터를 상기 작성한 유저 프로그램에 대응시키는 것을 특징으로 하는 프로그래밍 장치.
  10. 청구항 9에 있어서,
    상기 제2 키 데이터 설정부는 상기 수신한 제2 키 데이터에 대응지어진 유저 프로그램을 난독화하는 것을 특징으로 하는 프로그래머블 컨트롤러.
KR1020127022062A 2010-02-12 2010-02-12 프로그래머블 컨트롤러 KR101440707B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/052081 WO2011099146A1 (ja) 2010-02-12 2010-02-12 プログラマブルコントローラおよびプログラミング装置

Publications (2)

Publication Number Publication Date
KR20120119217A true KR20120119217A (ko) 2012-10-30
KR101440707B1 KR101440707B1 (ko) 2014-09-17

Family

ID=44367449

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127022062A KR101440707B1 (ko) 2010-02-12 2010-02-12 프로그래머블 컨트롤러

Country Status (7)

Country Link
US (1) US20120310379A1 (ko)
JP (1) JP5414812B2 (ko)
KR (1) KR101440707B1 (ko)
CN (1) CN102763046B (ko)
DE (1) DE112010005256T5 (ko)
TW (1) TWI437391B (ko)
WO (1) WO2011099146A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311460B2 (en) * 2011-03-15 2016-04-12 Omron Corporation Programmable controller system, tool device, tool program, storage medium, and programmable controller
JP5786386B2 (ja) * 2011-03-15 2015-09-30 オムロン株式会社 プログラマブルコントローラシステム、ツール装置、ツール用プログラム及び記録媒体並びにプログラマブルコントローラ
KR20140071413A (ko) * 2011-09-09 2014-06-11 미쓰비시덴키 가부시키가이샤 프로그래머블 표시기
KR101888382B1 (ko) * 2011-12-16 2018-09-21 삼성전자 주식회사 복수 키 활용 지원 저장 장치
JP2017506377A (ja) * 2013-12-20 2017-03-02 ウエスチングハウス・エレクトリック・カンパニー・エルエルシー 産業用制御システムを防護するためのシステムおよび方法
CN109765838B (zh) * 2019-03-04 2020-12-15 杭州电子科技大学 可编程逻辑控制器组态文件的生成方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2544099B2 (ja) * 1985-03-09 1996-10-16 株式会社 メルコ コンピユ−タプログラムの盗用防止装置
JPS61206036A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd 述語論理型言語処理方式
JPH06110512A (ja) * 1992-09-25 1994-04-22 Matsushita Electric Works Ltd プログラマブルコントローラ
JPH06222815A (ja) * 1993-01-26 1994-08-12 Matsushita Electric Works Ltd プログラマブルコントローラ
US6237103B1 (en) * 1998-09-30 2001-05-22 International Business Machines Corporation Power sequencing in a data processing system
US7110580B2 (en) * 2000-05-19 2006-09-19 Nextgenid, Inc. Distributed biometric access control method and apparatus
JP4319793B2 (ja) * 2001-07-05 2009-08-26 株式会社シーメディア 不正防止方法及び不正防止プログラム
JP3526293B2 (ja) * 2001-11-30 2004-05-10 三菱電機株式会社 プログラマブルコントローラ
GB2385156B (en) * 2002-02-06 2005-08-10 Inventec Corp Automatic storage and retrieval system and method
JP4366130B2 (ja) * 2003-07-17 2009-11-18 株式会社リコー ソフトウェア違法コピー防止システム
US8335920B2 (en) * 2005-07-14 2012-12-18 Imation Corp. Recovery of data access for a locked secure storage device
JP4851182B2 (ja) * 2005-12-28 2012-01-11 ルネサスエレクトロニクス株式会社 マイクロコンピュータ、マイクロコンピュータに対するプログラム書込み方法、及び書込み処理システム
EP1982245B1 (en) * 2006-02-10 2014-04-02 Siemens Aktiengesellschaft Security key with instructions
CN101034427A (zh) * 2006-03-09 2007-09-12 环隆电气股份有限公司 保护软件使用权的方法及电脑可读取的记录媒体
CA2655555A1 (en) * 2006-06-19 2007-12-27 Liquid Computing Corporation Methods, systems and protocols for application to application communications
CN101005361B (zh) * 2007-01-22 2010-11-03 北京飞天诚信科技有限公司 一种服务器端软件保护方法及系统
CN101329658B (zh) * 2007-06-21 2012-12-05 西门子(中国)有限公司 加密、解密方法,及应用所述方法的plc系统
CN100576227C (zh) * 2007-07-10 2009-12-30 侯同济 一种软件加密注册防盗版方法
US8185941B2 (en) * 2007-07-31 2012-05-22 Hewlett-Packard Development Company, L.P. System and method of tamper-resistant control
JP2009070144A (ja) 2007-09-13 2009-04-02 Omron Corp Plcにおけるプログラミング方法
US20110105222A1 (en) * 2008-06-23 2011-05-05 Gagner Mark B Managing wagering game content
US8516237B2 (en) * 2010-01-12 2013-08-20 Oracle America, Inc. Method and system for providing information to a subsequent operating system

Also Published As

Publication number Publication date
US20120310379A1 (en) 2012-12-06
CN102763046A (zh) 2012-10-31
JPWO2011099146A1 (ja) 2013-06-13
DE112010005256T5 (de) 2013-05-02
CN102763046B (zh) 2015-12-16
WO2011099146A1 (ja) 2011-08-18
KR101440707B1 (ko) 2014-09-17
JP5414812B2 (ja) 2014-02-12
TW201128333A (en) 2011-08-16
TWI437391B (zh) 2014-05-11

Similar Documents

Publication Publication Date Title
US8707423B2 (en) Programmable display device, and control system
JP5419776B2 (ja) 半導体装置及びデータ処理方法
KR20120119217A (ko) 프로그래머블 컨트롤러
JP6585072B2 (ja) 不揮発性メモリ又はセキュア素子へのデータの読み込みを安全に行うこと
JP2015028803A (ja) プログラミング装置、および、プログラマブルコントローラシステム
JP2007122695A (ja) プログラマブル・コントローラ・システム
JP2015056161A (ja) 制御装置、セキュリティー管理システム及びセキュリティー管理方法
JP2006221274A (ja) 車両用電子制御装置および制御プログラムの書換え方法
JP4501781B2 (ja) プログラマブルコントローラ
JP5759827B2 (ja) メモリシステム、情報処理装置、メモリ装置、およびメモリシステムの動作方法
JP4229896B2 (ja) 書き換え可能な不揮発性メモリ、電子機器、書き換え可能な不揮発性メモリの書き換え方法、及び書き換えプログラム
JP5886173B2 (ja) プログラマブルコントローラ
JP5304366B2 (ja) 記憶媒体ユニット,及び、記憶媒体自動消去システム
JP5761880B2 (ja) 自動車
WO2020235172A1 (ja) 制御装置、データ不能化プログラム、および制御システム
JP5603993B2 (ja) 電装ユニット及びデータ処理方法
JP2013125457A (ja) 情報処理装置、記憶装置の使用の制限を解除する解除方法及びプログラム
JP2019028972A (ja) 記憶装置、ステータス管理方法、及びステータス管理プログラム
JP2012043228A (ja) Pac及びそれを備えたpacシステム
JP4953316B2 (ja) 記憶装置および情報処理システム
JP2007128172A (ja) プログラマブル・コントローラ
JP6138636B2 (ja) プログラマブルコントローラ、プログラミング装置、およびそれらのシステム
CN114091008A (zh) 用于对控制设备进行安全更新的方法
JP2017068622A (ja) ライセンス管理システムおよびライセンス管理方法
JP2005038261A (ja) プログラマブルコントローラシステムおよびプログラム開発支援装置

Legal Events

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

Payment date: 20170823

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180816

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190819

Year of fee payment: 6