KR20170024125A - 입출력 제어장치, 입출력 제어 방법, 및 프로그램 - Google Patents
입출력 제어장치, 입출력 제어 방법, 및 프로그램 Download PDFInfo
- Publication number
- KR20170024125A KR20170024125A KR1020177004669A KR20177004669A KR20170024125A KR 20170024125 A KR20170024125 A KR 20170024125A KR 1020177004669 A KR1020177004669 A KR 1020177004669A KR 20177004669 A KR20177004669 A KR 20177004669A KR 20170024125 A KR20170024125 A KR 20170024125A
- Authority
- KR
- South Korea
- Prior art keywords
- circuit
- output
- selector
- bus
- signal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/054—Input/output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/11—Plc I-O input output
- G05B2219/1131—I-O connected to a bus
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13187—Checking validity of data
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Programmable Controllers (AREA)
Abstract
본 발명에 따른 입출력 제어장치(10)는 입력 인터페이스(15)에 접속하는 버스(25)와, 버스(25)에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 버스(25)의 신호를 출력하는 복수의 회로 셀렉터(112)와, 회로 셀렉터(112)마다 대응해서 마련되어, 회로 셀렉터(112)로부터 신호가 입력되면 논리 연산을 행하여, 연산 결과를 나타내는 신호를 버스(25)로 출력하는 복수의 논리 회로와, 버스(25)에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 버스(25)의 신호를 출력 인터페이스(16)로 출력하는 출력 셀렉터(119)와, 복수의 회로 셀렉터(112)와 출력 셀렉터(119)의 동작의 순서에 기초하여, 복수의 회로 셀렉터(112) 또는 출력 셀렉터(119)를 유효 또는 무효로 하는 연산부(12)를 구비한다.
Description
본 발명은 프로그래머블 로직 컨트롤러의 입출력 제어를 행하는 입출력 제어장치, 입출력 제어 방법, 및 입출력 제어를 실행시키는 프로그램에 관한 것이다.
일반적인 프로그래머블 로직 컨트롤러는, 마이크로 프로세서를 내장하고, 각종 액츄에이터나 표시 기기 등의 전자 부하가 접속되며, 조작 스위치나 각종 센서 등으로부터의 입력 신호에 나타내어진 전자 부하의 동작 상태와 메모리에 격납되어 있는 시퀀스 프로그램에 따라서, 전자 부하의 구동 제어를 행한다.
종래의 프로그래머블 로직 컨트롤러는, 고속 입출력 처리를 행하기 위한 집적회로 소자와 입출력 인터페이스 회로를 탑재한 특수 유닛을 병용하고 있다. 당해 특수 유닛은 입출력 제어장치로서 동작하고, 당해 특수 유닛에 탑재된 집적회로 소자는, 프로그램 메모리 내의 특수 명령의 내용에 의해서 동작 사양이 결정되는 파라미터 메모리와 논리 회로부를 구비하고, 당해 논리 회로부를 구성하는 가역(可逆) 카운터는, 고속 입력 처리와 고속 출력 처리를 위해서 겸용되고 있다(예를 들면, 특허 문헌 1 참조).
종래의 프로그래머블 로직 컨트롤러에 있어서, 특수 유닛(이하, 입출력 제어장치라고 함)은 프로그래머블 로직 컨트롤러로 실현할 수 있는 다양한 기능 중 임의의 기능을 실행하는 것이기 때문에, 유저가 소정의 기능을 용이하게 사용할 수 있어 당해 기능을 효과적으로 실행할 수 있는 반면, 당해 특수 유닛의 기능을 수정하거나 설정되어 있지 않은 기능을 추가하거나 할 수 없다고 하는 과제가 있었다.
본 발명은 상기를 감안하여 이루어진 것으로서, 취급이 용이하고 다양한 기능을 실현할 수 있는 프로그래머블 로직 컨트롤러의 입출력 제어장치, 입출력 제어 방법, 및 프로그램을 얻는 것을 목적으로 한다.
본 발명에 따른 입출력 제어장치는, 외부로부터 신호가 입력되는 입력 인터페이스에 접속하는 버스와, 버스에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 버스의 신호를 출력하고, 무효인 경우에 버스의 신호를 출력하지 않는 복수의 회로 셀렉터와, 회로 셀렉터마다 대응해서 마련되어, 회로 셀렉터로부터 신호가 입력되면 논리 연산을 행하여, 연산 결과를 나타내는 신호를 버스로 출력하는 복수의 논리 회로와, 버스에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 버스의 신호를 출력 인터페이스로 출력하고, 무효인 경우에 버스의 신호를 출력 인터페이스로 출력하지 않는 출력 셀렉터와, 복수의 회로 셀렉터와 출력 셀렉터의 동작의 순서에 기초하여, 복수의 회로 셀렉터 또는 출력 셀렉터를 유효 또는 무효로 하는 연산부를 구비한다.
본 발명에 따른 입출력 제어 방법은, 외부로부터 신호가 입력되는 입력 인터페이스에 접속하는 버스로의 신호의 입력을 접수하는 입력 스텝과, 버스에 접속하는 복수의 회로 셀렉터 중, 임의의 회로 셀렉터를 유효로 하여, 당해 회로 셀렉터에 버스의 신호를 출력시키는 회로 선택 스텝과, 회로 셀렉터마다 대응해서 마련되는 복수의 논리 회로 중, 회로 셀렉터로부터 신호가 입력된 논리 회로에 논리 연산을 행하게 하여 버스로 신호를 출력시키는 연산 스텝과, 버스에 접속하는 출력 셀렉터를 유효로 하여, 당해 출력 셀렉터에 버스의 신호를 출력 인터페이스로 출력시키는 출력 스텝을 구비한다.
본 발명에 따른 프로그램은, 입력 인터페이스로부터 입력된 신호에 따라 소정의 동작을 실행하여, 출력 인터페이스로부터 신호를 출력하는 입출력 제어장치에 인스톨되는 프로그램에 있어서, 입력 인터페이스에 접속하는 버스에 신호가 입력된 경우, 버스에 접속하는 복수의 회로 셀렉터 중, 임의의 회로 셀렉터를 유효로 하여, 당해 회로 셀렉터에 버스의 신호를 출력시키는 회로 선택 스텝과, 회로 셀렉터마다 대응해서 마련되는 복수의 논리 회로 중, 회로 셀렉터로부터 신호가 입력된 논리 회로에 논리 연산을 행하게 하여 버스로 신호를 출력시키는 연산 스텝과, 버스에 접속하는 출력 셀렉터를 유효로 하여, 당해 출력 셀렉터에 버스의 신호를 출력 인터페이스로 출력시키는 출력 스텝을 입출력 제어장치의 연산부에 실행시킨다.
본 발명에 의하면, 취급이 용이하고 다양한 기능을 실현할 수 있는 프로그래머블 로직 컨트롤러의 입출력 제어장치, 입출력 제어 방법 및 프로그램을 제공할 수 있다.
도 1은 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러의 구성을 나타내는 블록도이다.
도 2는 실시 형태 1의 입출력 제어장치의 범용 로직부에 있어서의 신호선의 접속 상태를 나타내는 블록도이다.
도 3은 실시 형태 1에 있어서의 입출력 제어장치의 기억부의 구성을 나타내는 개념도이다.
도 4는 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러가 유저 프로그램을 실행할 때의 동작의 절차를 나타내는 순서도이다.
도 5는 실시 형태 1에 있어서 유저가 미리 범용 로직부의 동작을 설정하는 절차를 나타내는 순서도이다.
도 2는 실시 형태 1의 입출력 제어장치의 범용 로직부에 있어서의 신호선의 접속 상태를 나타내는 블록도이다.
도 3은 실시 형태 1에 있어서의 입출력 제어장치의 기억부의 구성을 나타내는 개념도이다.
도 4는 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러가 유저 프로그램을 실행할 때의 동작의 절차를 나타내는 순서도이다.
도 5는 실시 형태 1에 있어서 유저가 미리 범용 로직부의 동작을 설정하는 절차를 나타내는 순서도이다.
실시 형태 1.
도 1은 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러의 구성을 나타내는 블록도이다. 도 1을 이용하여, 실시 형태 1에 있어서의 입출력 제어장치를 구비한 프로그래머블 로직 컨트롤러에 대해서 설명한다. 또한, 본 발명은 이 실시 형태 1에 의해 한정되는 것은 아니다.
[프로그래머블 로직 컨트롤러(1)의 구성]
실시 형태 1에 있어서, 프로그래머블 로직 컨트롤러(1)는 접속 케이블(2)을 통해서 주변장치(3)와 접속한다. 또, 프로그래머블 로직 컨트롤러(1)는 개폐 센서(4) 및 전자 부하(5)와 접속한다.
개폐 센서(4)는 예를 들면, 모터에 장착되어 모터의 회전 각도를 검출하는 로터리 인코더 등의 인코더이다. 전자 부하(5)는 예를 들면, 전자 밸브 등의 밸브나 모터 등이다.
또, 프로그래머블 로직 컨트롤러(1)는 입출력 제어장치(10)와 CPU 장치(20)를 구비한다.
[입출력 제어장치(10)의 구성]
입출력 제어장치(10)는 범용 로직부(11), 연산부(12), 기억부(13), 통신 인터페이스부(14), 외부 입력 인터페이스부(15) 및 외부 출력 인터페이스부(16)를 구비한다.
범용 로직부(11)는 후술하는 것처럼 복수의 회로 셀렉터와 복수의 회로 소자를 구비하고, 유저 오리지널의 동작 설정에 대응하기 위한 다양한 기능을 제공한다.
연산부(12)는 입출력 제어장치(10)의 전체의 동작을 제어하는 중앙 처리장치(CPU)이다. 또, 연산부(12)는 후술하는 것처럼, 각 셀렉터의 동작의 순서를 나타내는 동작 데이터에 기초하여, 각 셀렉터의 동작 설정을 유효 또는 무효로 함과 아울러, 각 회로 소자의 동작을 나타내는 설정 파라미터에 따른 논리 연산을 각 회로 소자에 행하게 한다. 각 셀렉터의 동작 데이터와 각 회로 소자의 설정 파라미터는, 후술하는 것처럼, 미리 설정된 것이다.
기억부(13)는 RAM 등의 메모리로서, 연산부(12)가 범용 로직부(11)의 동작을 제어하기 위한 데이터를 기억한다. 기억부(13)는 후술하는 대로, 각 셀렉터의 동작의 순서를 나타내는 동작 데이터와, 각 회로 소자의 동작을 나타내는 설정 파라미터와, 동작 상태 플래그와, 측정 데이터를 기억한다.
통신 인터페이스부(14)는 CPU 장치(20)와의 사이에서 통신을 행하기 위한 인터페이스이다.
외부 입력 인터페이스부(15)는 범용 로직부(11)와 개폐 센서(4)에 접속하여, 개폐 센서(4)로부터 신호를 수신함과 아울러 개폐 센서(4)로부터의 신호에 대응하는 신호를 범용 로직부(11)에 출력한다. 외부 출력 인터페이스부(16)는 범용 로직부(11)와 전자 부하(5)에 접속하여, 범용 로직부(11)로부터의 신호를 수신함과 아울러 범용 로직부(11)로부터의 신호에 대응하는 신호를 전자 부하(5)에 출력한다.
입출력 제어장치(10)의 범용 로직부(11)는, 회로 전환 버스(111), 회로 셀렉터(112a, 112b, 112c, 112d, 112e, 112f), 필터(113), 논리 게이트(114), 카운터(115), 비교기(116), 연산기(117), 클록(118), 출력 셀렉터(119) 및 동작 설정 버스(120)를 가진다.
또한, 이하에 있어서, 회로 셀렉터(112a, 112b, 112c, 112d, 112e, 112f)를 일괄하여 회로 셀렉터(112)라고도 칭한다. 또, 필터(113), 논리 게이트(114), 카운터(115), 비교기(116), 연산기(117) 및 클록(118)을, 일괄하여 회로 소자라고도 칭한다. 또, 논리 회로란 실시 형태 1에 있어서 회로 소자이다.
회로 전환 버스(111)에는 외부 입력 인터페이스부(15), 회로 셀렉터(112), 회로 소자 및 출력 셀렉터(119)가 접속된다.
회로 셀렉터(112)는 파라미터가 설정되고, 설정된 파라미터에 따라 신호의 출력의 가부(可否)를 제어한다. 즉, 회로 셀렉터(112)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 회로 소자로 출력한다. 동작 설정이 무효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 회로 소자로 출력하지 않는다.
각 회로 소자는 회로 셀렉터(112)마다 대응해서 마련되어, 회로 셀렉터(112)로부터 신호가 입력되면 미리 설정된 파라미터에 따른 논리 연산을 행하여, 회로 전환 버스(111)로 신호를 출력한다.
출력 셀렉터(119)는 파라미터가 설정되고, 설정된 파라미터에 따라 신호의 출력의 가부를 제어한다. 즉, 출력 셀렉터(119)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)에 출력한다. 동작 설정이 무효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)로 출력하지 않는다.
또한, 회로 소자마다 마련된 회로 셀렉터(112) 및 출력 셀렉터(119)를, 일괄하여 각 셀렉터라고도 칭한다.
동작 설정 버스(120)에는 연산부(12), 기억부(13), 통신 인터페이스부(14), 회로 셀렉터(112), 각 회로 소자 및 출력 셀렉터(119)가 접속된다. 연산부(12)는 기억부(13)에 기억되어 있는 각 셀렉터의 동작 데이터를, 동작 설정 버스(120)를 통해서 회로 셀렉터(112) 및 출력 셀렉터(119)로 송신하여, 각 셀렉터의 파라미터를 설정 또는 변경한다. 또, 연산부(12)는 기억부(13)에 기억되어 있는 각 회로 소자의 설정 파라미터를, 동작 설정 버스(120)를 통해서 각 회로 소자로 송신하여, 각 회로 소자의 파라미터를 설정 또는 변경한다.
범용 로직부(11)는 개폐 센서(4)로부터 외부 입력 인터페이스부(15)를 통해서 신호가 입력되면, 상술한 바와 같이 회로 셀렉터(112), 각 회로 소자, 출력 셀렉터(119)를 제어하여 논리 연산을 행하여, 외부 출력 인터페이스부(16)를 통해서 전자 부하(5)로 신호를 출력한다.
[CPU 장치(20)의 구성]
CPU 장치(20)는 연산부(21)와, 기억부(22)와, 주변장치 인터페이스부(23)와, 통신 인터페이스부(24)를 구비한다.
연산부(21)는 CPU 장치(20)의 전체의 동작을 제어하는 중앙 처리장치(CPU)이다. 또, 연산부(21)는 유저 프로그램과 유저 프로그램의 실행에 이용되는 데이터에 기초하여, 프로그래머블 로직 컨트롤러(1)에 접속되는 전자 부하(5)를 제어한다. 여기서, 유저 프로그램이란, 프로그래머블 로직 컨트롤러(1)가 제어 대상으로 하는 전자 부하(5)를 제어하기 위한 프로그램이고, 예를 들면 래더 프로그램이나 C언어 프로그램 등이다.
기억부(22)는 예를 들면 ROM 등의 메모리이고, 연산부(21)가 전자 부하(5)를 제어하기 위한 데이터를 기억한다. 기억부(22)는 후술하는 대로, 유저 프로그램과, 유저 프로그램의 실행에 이용되는 데이터와, 유저 프로그램의 실행 결과의 데이터를 기억한다.
주변장치 인터페이스부(23)는 주변장치(3)와의 사이에서 통신을 행하기 위한 인터페이스이다. 통신 인터페이스부(24)는 입출력 제어장치(10)와의 사이에서 통신을 행하기 위한 인터페이스이다.
장치간 버스(25)는 입출력 제어장치(10)의 통신 인터페이스부(14)와 CPU 장치(20)의 통신 인터페이스부(24)를 접속한다. 입출력 제어장치(10)와 CPU 장치(20)는, 통신 인터페이스부(14), 장치간 버스(25) 및 통신 인터페이스부(24)를 통해서 접속한다.
연산부(21)는 기억부(22)에 기억된 유저 프로그램을 읽어내어 실행한다. 또, 연산부(21)는 읽어낸 유저 프로그램의 내용을, 통신 인터페이스부(24) 및 통신 인터페이스부(14)를 통해서, 입출력 제어장치(10)의 기억부(13)에 기억시킨다. 입출력 제어장치(10)의 연산부(12)는, 전개(展開)된 유저 프로그램의 내용에 기초하여, 당해 유저 프로그램에 있어서 지령된 동작을 입출력 제어장치(10)에 실행시키기 위해서, 기억부(13)에 기억된 각 회로 소자의 동작을 나타내는 설정 파라미터를 설정 또는 변경한다.
연산부(21)는 기억부(22)에 기억된 유저 프로그램의 실행, 유저 프로그램의 실행에 이용하는 데이터의 기억부(22)로부터의 읽어냄, 및 유저 프로그램의 실행 결과의 기억부(22)로의 기입을, 소정의 제어 주기마다 반복하여 행한다. CPU 장치(20)의 연산부(21)는 유저 프로그램의 실행에 이용하는 데이터를 읽어낼 때, 입출력 제어장치(10)의 기억부(13)로부터, 각 회로 소자의 동작의 설정과, 범용 로직부(11)의 제어 결과의 데이터를 취득한다. 각 회로 소자의 동작의 설정은, 예를 들면, 카운터(115)의 카운트 허가 지령이나 카운트값의 리셋 지령 등이고, 제어 결과의 데이터는 카운터(115)의 카운트값 등이다.
또한, 프로그래머블 로직 컨트롤러(1)는 입출력 제어장치(10)와 CPU 장치(20)에 더하여, 기능을 확장하기 위해서 추가의 장치를 구비해도 된다. 이 장치의 예로서, 예를 들면, 서보 앰프를 제어함으로써 다축(多軸)의 위치 제어를 실현하는 모션 컨트롤러 장치나, CPU 장치(20)로부터의 지령에 기초하여 온도 제어 신호를 출력하는 온도 컨트롤러 장치 등이 있다. 이들 각 장치도, 장치간 버스(25)를 통해서 서로 접속된다.
[주변장치(3)의 구성]
주변장치(3)는 프로그램 설정부(31)와, 동작 데이터 설정부(32)와, 외부 통신 인터페이스부(33)를 구비한다.
프로그램 설정부(31)는 유저의 조작을 접수하는 그래피컬 유저 인터페이스(GUI)이다. 프로그램 설정부(31)는 유저의 조작에 의해, 프로그래머블 로직 컨트롤러(1)에 대한 유저 프로그램을 작성한다. 프로그램 설정부(31)는 작성한 유저 프로그램을, 외부 통신 인터페이스부(33) 및 접속 케이블(2)을 통해서 프로그래머블 로직 컨트롤러(1)로 출력하여, CPU 장치(20)의 기억부(22)에 기억시킨다.
또, 프로그램 설정부(31)는 프로그래머블 로직 컨트롤러(1)로부터 출력된 각종 데이터를, 표시 화면에 표시하여 감시한다.
동작 데이터 설정부(32)는 유저의 조작을 접수하는 그래피컬 유저 인터페이스(GUI)이다. 동작 데이터 설정부(32)는 유저의 조작에 의해, 범용 로직부(11)의 각 회로 소자의 파라미터를 나타내는 설정 파라미터를 설정한다. 또, 동작 데이터 설정부(32)는 유저의 조작에 의해, 범용 로직부(11)의 각 셀렉터의 동작의 순서를 나타내는 동작 데이터를 설정한다.
동작 데이터 설정부(32)는 범용 로직부(11)의 각 회로 소자의 설정 파라미터와 각 셀렉터의 동작 데이터를, 외부 통신 인터페이스부(33) 및 접속 케이블(2)을 통해서 프로그래머블 로직 컨트롤러(1)로 출력하여, 주변장치 인터페이스부(23), 통신 인터페이스부(24), 장치간 버스(25) 및 통신 인터페이스부(14)를 통해서 입출력 제어장치(10)의 기억부(13)에 기억시킨다. 또, 동작 데이터 설정부(32)는 범용 로직부(11)의 동작을 시뮬레이션하기 위한 기능을 구비한다.
프로그램 설정부(31)와 동작 데이터 설정부(32)는, 프로그래밍 툴이나 범용 회로 블록 설정 툴이 격납된 프로그램을 주변장치(3)에 인스톨함으로써, 주변장치(3) 내에 마련된다. 또한, 프로그램 설정부(31)와 동작 데이터 설정부(32)는, 주변장치(3) 내에 연산부나 기억부 등을 마련함으로써, 하드웨어적으로 실현되어도 된다.
[범용 로직부(11)의 구성]
도 2는 실시 형태 1의 입출력 제어장치의 범용 로직부(11)에 있어서의 신호선의 접속 상태를 나타내는 블록도이다. 또한, 도 2에 있어서는, 설명의 편의상, 범용 로직부(11)가 필터(113)와, 논리 게이트(114)와, 카운터(115)를 회로 소자로서 구비하는 구성을 나타내고 있지만, 도 1에 도시하는 비교기(116), 연산기(117), 클록(118)이나, 그 외의 회로 소자를 구비해도 된다.
외부 입력 인터페이스부(15)는 2개의 입력 포트(151a, 151b)를 가지고, 외부 출력 인터페이스부(16)는 2개의 출력 포트(161a, 161b)를 가진다. 또한, 도 2에 있어서는, 설명의 편의상, 외부로부터의 입력을 입력 포트(151a, 151b)의 2점으로 하고, 외부로의 출력을 출력 포트(161a, 161b)의 2점으로 하고 있지만, 입력 포트 또는 출력 포트는 3점 이상으로 해도 상관없다.
또한, 도 2의 출력 셀렉터(119a, 119b)에 대해서는, 도 1에 있어서는 일괄하여 출력 셀렉터(119)로 하고 있다.
외부 입력 인터페이스부(15)는 외부로부터 입력 포트(151a)에 입력된 신호, 또는 외부로부터 입력 포트(151b)에 입력된 신호 중, 어느 일방을 회로 전환 버스(111)에 입력한다. 회로 전환 버스(111)에 입력된 신호의 출력처는, 회로 셀렉터(112a, 112b, 112c)에 의해 결정한다. 즉, 회로 전환 버스(111)의 신호는, 회로 셀렉터(112a)가 유효인 경우에는 필터(113)에 출력되고, 회로 셀렉터(112b)가 유효인 경우에는 논리 게이트(114)에 출력되며, 회로 셀렉터(112c)가 유효인 경우에는 카운터(115)에 출력된다.
각 회로 소자는 회로 셀렉터(112)로부터 신호가 입력되면, 미리 설정된 각 회로 소자의 파라미터에 따른 연산을 실행한 후, 회로 전환 버스(111)에 신호를 출력한다. 또, 회로 전환 버스(111)에 출력된 신호는 회로 전환 버스(111)를 통해서 재차 회로 셀렉터(112a, 112b, 112c)에 출력된다. 이때, 셀렉터(112a, 112b, 112c)의 유효와 무효를 전환함으로써, 재차 임의의 회로 소자에 신호를 출력할 수 있다.
임의의 회로 소자가 소정의 연산을 실행한 후, 출력 셀렉터(119a) 또는 출력 셀렉터(119b)를 유효로 설정함으로써, 외부 출력 인터페이스부(16)는 출력 포트(161a) 또는 출력 포트(161b)를 통해서 외부에 신호를 출력한다.
실시 형태 1의 범용 로직부(11)에 있어서, 외부 입력 인터페이스부(15), 회로 셀렉터(112), 각 회로 소자 및 출력 셀렉터(119)는, 회로 전환 버스(111)에 접속하고 있다. 그리고 회로 셀렉터(112) 및 출력 셀렉터(119)의 유효와 무효를 임의로 변경함으로써, 각 회로 소자에 임의의 순서로 논리 연산을 실행시킬 수 있다. 이때, 회로 셀렉터(112) 및 출력 셀렉터(119)의 유효와 무효를 변경하지 않고 같은 회로 소자에 재차 신호를 입력하여, 재차 논리 연산을 실행시킬 수도 있다. 또, 회로 셀렉터(112) 및 출력 셀렉터(119)의 유효와 무효를 임의로 변경함으로써, 하나의 회로 소자가 논리 연산을 실행하고, 다른 회로 소자가 논리 연산을 실행한 후, 재차 하나의 회로 소자에 논리 연산을 실행시킬 수도 있다.
[기억부(13)의 구성]
도 3은 실시 형태 1에 있어서의 입출력 제어장치의 기억부의 구성을 나타내는 개념도이다. 도 3을 이용하여, 실시 형태 1에 있어서의 입출력 제어장치(10)의 기억부(13)의 구성에 대해 설명한다.
동작 상태 플래그는 동작 개시나 동작 변경 등, 입출력 제어장치(10)의 상태를 나타내는 플래그이다. 기억부(13)는 파라미터 설정부(31) 또는 CPU 장치(20)로부터 동작 개시 지령이나 동작 변경 지령이 입력된 경우에, 동작 개시나 동작 변경을 나타내는 플래그를 동작 상태 플래그로서 기억한다. 또, 기억부(13)는 입출력 제어장치(10)의 동작의 완료 통지나 동작의 설정 변경 완료 통지 등이 연산부(12)로부터 입력된 경우에, 동작의 완료나 설정 변경 완료를 나타내는 플래그를 동작 상태 플래그로서 기억한다. 연산부(12)는 기억부(13)에 기억된 동작 상태 플래그에 기초하여, 동작의 완료나 설정 변경 완료를 CPU 장치(20)로 통지한다. CPU 장치(20)는 통지된 동작의 완료나 설정 변경 완료 등의 입출력 제어장치(10)의 상태를 기억부(22)에 기억한다.
측정 데이터는 프로그래머블 로직 컨트롤러(1)가 유저 프로그램을 실행했을 때, 입출력 제어장치(10)가 취득하거나 연산하여 얻어진 데이터이며, 예를 들면, 전자 부하(5)로부터 입력된 신호의 주파수, 전자 부하(5)로서 접속된 모터의 회전 속도 등이다. 기억부(13)는 입출력 제어장치(10)가 취득하거나 연산하여 얻어진 데이터를 측정 데이터로서 기억한다. 연산부(12)는 기억부(13)에 기억된 측정 데이터에 기초하여, 입출력 제어장치(10)에 의해 취득 또는 연산된 데이터를 CPU 장치(20)로 통지하여, 기억부(22)에 기억시킨다. 주변장치(3)의 파라미터 설정부(31)는, 기억부(22)가 기억하고 있는 입출력 제어장치(10)에 의해 취득 또는 연산된 데이터를 감시할 수 있다.
설정 파라미터는 각 회로 소자의 파라미터를 나타내고, 예를 들면, 범용 로직부(11)의 필터(113)의 특성 데이터, 카운터(115)의 동작 모드 등이다. 연산부(12)는 기억부(13)에 기억된 각 회로 소자의 파라미터를 CPU 장치(20)로 통지하여, CPU 장치(20)의 기억부(22)에 기억시킨다. CPU 장치(20)는 기억부(22)가 기억하고 있는 각 회로 소자의 파라미터를 감시하거나, 변경하거나 한다. 또, 주변장치(3)의 파라미터 설정부(31) 또는 동작 데이터 설정부(32)도, 기억부(22)가 기억하고 있는 각 회로 소자의 파라미터를 감시 또는 변경할 수 있다.
동작 데이터는 범용 로직부(11)에 소정의 논리 연산을 실행시키기 위한 데이터이며, 즉, 회로 셀렉터(112) 및 출력 셀렉터(119)의 동작 설정에 대해서, 유효와 무효를 전환하는 순서를 나타내는 데이터이다. 유저가 동작 데이터 설정부(32)에 각 셀렉터의 동작 데이터를 입력했을 경우, 동작 데이터 설정부(32)는 각 셀렉터의 동작 데이터를 출력하여, 기억부(13)에 동작 데이터로서 기억시킨다. 연산부(12)는 기억부(13)에 기억된 동작 데이터를, 회로 셀렉터(112) 및 출력 셀렉터(119)로 송신하여, 각 셀렉터의 동작 설정의 내용을 나타내는 파라미터를 설정 또는 변경한다. 각 셀렉터는 동작 설정이 유효인 것을 나타내는 파라미터 또는 동작 설정이 무효인 것을 나타내는 파라미터가 설정된다. 이것에 의해 유저는, 입출력 제어장치(10)가 고속 입출력 제어를 실행하기 위해서 필요한 각종 기능을, 용이하게 범용 로직부(11)에 행하게 할 수 있다.
[범용 로직부(11)의 동작의 설정 절차]
도 4는 실시 형태 1에 있어서, 범용 로직부의 동작을 유저가 미리 설정하는 절차를 나타내는 순서도이다. 도 4를 이용하여, 범용 로직부(11)의 동작을 설정하여 유저가 요구하는 각종 기능을 실현하는 방법에 대해 설명한다.
스텝 S1에 있어서, 주변장치(3)의 동작 데이터 설정부(32)는 회로 셀렉터(112) 또는 출력 셀렉터(119)의 동작 데이터를 설정하는 지령이 입력되었는지 여부를 판단한다. 유저에 의해 셀렉터의 동작 데이터를 설정하는 지령이 입력된 경우, 동작 데이터 설정부(32)는, 스텝 S2에 있어서, 입력 내용에 따라서 셀렉터의 동작 데이터를 설정 또는 변경한다. 또, 주변장치(3)는 설정 또는 변경 후의 셀렉터의 동작 데이터를 외부 통신 인터페이스부(33)로부터 출력하여, 접속 케이블(2), 주변장치 인터페이스부(23), 통신 인터페이스부(24), 장치간 버스(25) 및 통신 인터페이스부(14)를 통해서 입출력 제어장치(10)의 기억부(13)에 기억시킨다.
스텝 S1에 있어서, 유저에 의해 셀렉터의 동작 데이터를 설정하는 지령이 입력되어 있지 않은 경우, 스텝 S3으로 진행한다.
스텝 S3에 있어서, 주변장치(3)의 동작 데이터 설정부(32)는 회로 소자의 파라미터를 설정하는 지령이 입력되었는지 여부를 판단한다. 유저에 의해 회로 소자의 파라미터를 설정하는 지령이 입력된 경우, 동작 데이터 설정부(32)는 스텝 S4에 있어서, 입력 내용에 따라서 회로 소자의 파라미터를 설정 또는 변경한다. 또, 주변장치(3)는 설정 또는 변경 후의 회로 소자의 파라미터를 외부 통신 인터페이스부(33)로부터 출력하여, 접속 케이블(2), 주변장치 인터페이스부(23), 통신 인터페이스부(24), 장치간 버스(25) 및 통신 인터페이스부(14)를 통해서 입출력 제어장치(10)의 기억부(13)에 기억시킨다.
스텝 S3에 있어서, 유저에 의해 회로 소자의 파라미터를 설정하는 지령이 입력되어 있지 않은 경우, 스텝 S5로 진행한다.
스텝 S5에 있어서, 주변장치(3)의 동작 데이터 설정부(32)는 범용 로직부(11)의 동작의 설정을 종료하는 지령이 입력되었는지 여부를 판단한다. 범용 로직부(11)의 동작의 설정을 종료하는 지령이 입력되어 있지 않은 경우, 스텝 S1로 돌아간다. 범용 로직부(11)의 동작의 설정을 종료하는 지령이 입력된 경우, 설정을 종료한다.
[유저 프로그램의 실행 절차]
도 5는 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러가 유저 프로그램을 실행할 때의 동작의 절차를 나타내는 순서도이다. 도 5를 이용하여, 프로그래머블 로직 컨트롤러(1)가 유저 프로그램을 실행할 때의 동작을 설명한다.
스텝 S11에 있어서, 주변장치(3)는 프로그램 설정부(31)가 작성한 유저 프로그램을 외부 통신 인터페이스부(33)로부터 출력하여, 접속 케이블(2), 주변장치 인터페이스부(23)를 통해서 CPU 장치(20)의 기억부(22)에 기억시킨다. CPU 장치(20)의 연산부(21)는 기억부(22)에 기억된 유저 프로그램을 실행하여, 입출력 제어장치(10)에 소정의 동작을 행하게 함으로써, 입출력 제어장치(10)에 접속된 전자 부하(5)를 제어한다. 이때, 입출력 제어장치(10)의 연산부(12)는 CPU 장치(20)의 연산부(21)로부터 지령된 소정의 동작을 실행하기 위해서, 범용 로직부(11)에 소정의 논리 연산을 실행시킨다.
범용 로직부(11)에 소정의 논리 연산을 실행시키기 위한 동작에 대해서, 도 1, 도 2를 이용하여 설명한다. 예를 들면, 도 2에 있어서, 입력 포트(151a)로부터 입력된 신호를, 필터(113), 논리 게이트(114), 카운터(115)의 순서로 입력하고, 출력 포트(161b)로부터 출력하는 경우에 대해 설명한다.
도 5의 스텝 S12에 있어서, 입출력 제어장치(10)의 연산부(12)는 외부의 개폐 센서(4) 등으로부터 신호가 입력되었는지 여부를 판단한다. 외부의 개폐 센서(4) 등으로부터 신호가 입력되었다고 판단했을 경우, 연산부(12)는 입력된 신호에 대해, 범용 로직부(11)에 소정의 논리 연산을 실행시킨다. 상기의 예의 경우, 개폐 센서(4)로부터 신호가 입력된 후, 도 2에 도시하는 입력 포트(151a)는, 개폐 센서(4)로부터 입력된 신호를 회로 전환 버스(111)로 출력한다.
도 5의 스텝 S13에 있어서, 입출력 제어장치(10)의 연산부(12)는, 기억부(13)에 기억된 동작 데이터에 따라 회로 셀렉터(112)의 파라미터를 변경한다. 상기의 예의 경우, 연산부(12)는 기억부(13)에 기억된 동작 데이터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 회로 셀렉터(112a)의 파라미터의 설정을 변경한다. 이것에 의해, 회로 셀렉터(112a)는 유효로 설정되어, 신호를 출력한다.
도 5의 스텝 S14에 있어서, 입출력 제어장치(10)의 연산부(12)는 기억부(13)에 기억된 설정 파라미터에 따라 각 회로 소자의 파라미터를 변경한다. 상기의 예의 경우, 연산부(12)는 기억부(13)에 기억된 설정 파라미터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 필터(113)의 파라미터를 설정한다. 필터(113)는 이 파라미터에 기초하여, 입력된 신호에 대해서 논리 연산을 실행하여, 연산 결과를 신호로서 출력한다.
도 5의 스텝 S15에 있어서, 입출력 제어장치(10)의 연산부(12)는 기억부(13)에 기억된 동작 데이터의 다음의 지령이, 출력 셀렉터(119)의 동작 설정을 유효로 하는 지령인지 여부를 판단한다. 출력 셀렉터(119)의 동작 설정을 유효로 하는 지령은, 범용 로직부(11)의 회로 소자의 연산 결과를 외부에 출력하는 지령인 것을 의미한다. 상기의 예의 경우, 범용 로직부(11)의 카운터(115)가 소정의 논리 연산을 실행하고 있지 않아, 아직 신호를 외부에 출력하지 않기 때문에, No로 판단되어, 스텝 S13으로 돌아간다.
도 5의 스텝 S13에 있어서, 연산부(12)는 기억부(13)에 기억된 동작 데이터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 회로 셀렉터(112a)와 회로 셀렉터(112b)의 파라미터의 설정을 변경한다. 이것에 의해, 회로 셀렉터(112a)는 무효로 설정되어 회로 전환 버스(111)의 신호를 필터(113)에 출력하지 않고, 회로 셀렉터(112b)는 유효로 설정되어 회로 전환 버스(111)의 신호를 논리 게이트(114)에 출력한다.
도 5의 스텝 S14에 있어서, 연산부(12)는 기억부(13)에 기억된 설정 파라미터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 논리 게이트(114)의 파라미터를 설정한다. 논리 게이트(114)는 이 파라미터에 기초하여, 입력된 신호에 대해서 논리 연산을 실행하여, 연산 결과를 신호로서 출력한다.
재차의 스텝 S15에 있어서, 범용 로직부(11)의 카운터(115)가 소정의 논리 연산을 실행하고 있지 않아, 아직 신호를 외부에 출력하지 않기 때문에, 재차 No로 판단되어, 스텝 S13으로 돌아간다.
도 5의 스텝 S13에 있어서, 연산부(12)는 기억부(13)에 기억된 동작 데이터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 회로 셀렉터(112b)와 회로 셀렉터(112c)의 파라미터의 설정을 변경한다. 이것에 의해, 회로 셀렉터(112b)는 무효로 설정되어 회로 전환 버스(111)의 신호를 논리 게이트(114)에 출력하지 않고, 회로 셀렉터(112c)는 유효로 설정되어 회로 전환 버스(111)의 신호를 카운터(115)에 출력한다.
도 5의 스텝 S14에 있어서, 연산부(12)는 기억부(13)에 기억된 설정 파라미터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 카운터(115)의 파라미터를 설정한다. 카운터(115)는 이 파라미터에 기초하여, 입력된 신호에 대해서 논리 연산을 실행하여, 연산 결과를 신호로서 회로 전환 버스(111)에 출력한다.
도 5의 스텝 S15에 있어서, 기억부(13)에 기억된 동작 데이터의 다음의 지령이 출력 셀렉터(119)의 동작 설정을 유효로 하는 지령인 경우, 연산부(12)는 범용 로직부(11)의 회로 소자의 연산 결과를 외부에 출력하는 지령이라고 판단하여, 스텝 S16으로 진행한다.
도 5의 스텝 S16에 있어서, 입출력 제어장치(10)의 연산부(12)는 기억부(13)에 기억된 동작 데이터에 따라 출력 셀렉터(119)의 파라미터를 변경한다. 상기의 예의 경우, 연산부(12)는 기억부(13)에 기억된 동작 데이터에 기초하여, 도 1에 도시하는 동작 설정 버스(120)를 통해서 범용 로직부(10)의 회로 셀렉터(112c)와 출력 셀렉터(119b)의 파라미터의 설정을 변경한다. 이것에 의해, 회로 셀렉터(112c)는 무효로 설정되어 회로 전환 버스(111)의 신호를 카운터(115)에 출력하지 않고, 출력 셀렉터(119b)는 유효로 설정되어 회로 전환 버스(111)의 신호를 출력 포트(161b)에 출력한다. 도 2에 도시하는 출력 포트(161b)는, 출력 셀렉터(119b)로부터 받은 신호를 외부에 출력한다.
도 5의 스텝 S17에 있어서, CPU 장치(20)의 연산부(21)는 유저 프로그램의 실행이 완료되었는지 여부를 판단한다. 유저 프로그램의 실행이 완료되어 있지 않은 경우, 스텝 S12로 돌아간다. 유저 프로그램의 실행이 완료되었을 경우, 프로그래머블 로직 컨트롤러(1)는 동작을 종료한다.
이와 같이 하여, 범용 로직부(11)는 입력 포트(151a)로부터 입력된 신호에 대해서 필터(113), 논리 게이트(114), 카운터(115)의 순서로 논리 연산을 실행시켜, 출력 포트(161b)로부터 출력할 수 있다.
또한, 실시 형태 1에 있어서의 범용 로직부(11)는, 도 2에 있어서, 회로 소자로서 필터(113), 논리 게이트(114) 및 카운터(115)만을 도시했지만, 도 1에 도시하는 비교기(116), 연산기(117), 클록(118) 중 어느 것, 또는 모두를 구비해도 된다. 이 경우, 이들 회로 소자에 대응한 회로 셀렉터(112)와 이것에 부수(付隨)하는 회로 전환 버스(111)를 통해서 신호를 입력함으로써, 이들 회로 소자의 논리 연산을 추가할 수 있다.
또, 그 외의 회로 소자와 대응하는 회로 셀렉터(112), 회로 전환 버스(111)를 추가로 구비하고, 각 회로 소자를 자유로운 조합으로 사용함으로써, 실시 형태 1의 범용 로직부(11)는, 다양한 유저 오리지널의 유닛 동작 모드에 대응하는 것이 가능해진다.
이상에 있어서 설명했던 대로, 실시 형태 1에 있어서의 프로그래머블 로직 컨트롤러(1)의 입출력 제어장치(10)는, 회로 셀렉터(112) 및 출력 셀렉터(119)의 유효와 무효를 임의로 변경함으로써, 각 회로 소자에 임의의 순서로 논리 연산을 실행시킬 수 있기 때문에, 유저는 입출력 제어장치(10)가 고속 입출력 제어를 실행하기 위해서 필요한 각종 기능을, 용이하게 범용 로직부(11)에 행하게 할 수 있다. 실시 형태 1의 범용 로직부(11)는 펄스 카운트, 주파수 측정, 고정밀도 타이머, PWM 출력, 타이밍 생성 등 고속 입출력 제어에 요구되는 각종 기능을 실현할 수 있다.
또, 범용 로직부(11)의 각 셀렉터의 동작 데이터와 각 회로 소자의 파라미터를 변경하는 것만으로 다양한 제어를 실현하기 때문에, 회로 소자의 내부 회로를 재기입(rewrite)하여 회로 소자의 기능을 바꿀 필요가 없어, 유저의 설계 공정수를 삭감할 수 있다. 각 셀렉터의 동작 데이터와 각 회로 소자의 파라미터를 변경하여 각종의 기능에 대해 검증한 후의 범용 로직부(11)를 사용하기 때문에, 메이커의 제품 품질을 담보할 수 있다.
추가로, 래더 프로그램 등의 소프트웨어 로직으로는 대응할 수 없는 ㎲ 오더의 고속이면서 또한 제어 타이밍이 안정된 입출력 제어가 가능해지기 때문에, 종래는 전용의 하드웨어 로직을 실장한 마이크로컴퓨터 보드 등으로 밖에 실현할 수 없었던 고속 입출력 제어가, 범용의 프로그래머블 로직 컨트롤러로 용이하게 실현할 수 있게 된다.
또한, 실시 형태 1에 있어서, 동작 데이터는 회로 셀렉터(112) 및 출력 셀렉터(119)의 동작 설정에 대해서, 유효와 무효를 전환하는 순서를 나타내는 데이터라고 했다. 또, 실시 형태 1에 있어서의 입출력 제어장치(10)의 연산부(12)는, 도 5의 스텝 S15에 있어서, 기억부(13)에 기억된 동작 데이터의 다음의 지령이, 출력 셀렉터(119)의 동작 설정을 유효로 하는 지령인지 여부를 판단하여, 출력 셀렉터(119)의 동작 설정을 유효로 하는 지령인 경우, 도 5의 스텝 S16에 있어서, 기억부(13)에 기억된 동작 데이터에 따라 출력 셀렉터(119)의 파라미터를 변경하는 것으로 했지만, 이것으로 한정되는 것은 아니다.
예를 들면, 기억부(13)에 기억된 동작 데이터에는, 회로 셀렉터(112)의 동작 설정을 변경하는 순서만이 기재되어 있고, 연산부(12)는 기억부(13)에 기억된 동작 데이터에 기초하여, 회로 셀렉터(112)의 파라미터를 변경하는 것으로 해도 된다. 이 경우, 연산부(12)는 도 5의 스텝 S15에 있어서, 기억부(13)에 기억된 동작 데이터에 기초하여 범용 로직부(11)의 회로 소자가 소정의 논리 연산을 실행했다고 판단하면, 도 5의 스텝 S16에 있어서, 출력 셀렉터(119)의 파라미터를 변경하여, 전자 부하(5)로 신호를 출력시킨다. 이러한 경우에 있어서도, 실시 형태 1에 있어서의 상술한 효과를 달성할 수 있다.
또, 실시 형태 1에 있어서, 회로 셀렉터(112)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 회로 소자로 출력하고, 동작 설정이 무효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 회로 소자로 출력하지 않는다고 했다. 마찬가지로, 출력 셀렉터(119)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)로 출력하고, 동작 설정이 무효인 것을 나타내는 파라미터가 설정되었을 경우에는, 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)로 출력하지 않는다고 했다. 그러나 실시 형태 1에 있어서의 회로 셀렉터(112)와 출력 셀렉터(119)는, 이것으로 한정되는 것은 아니다.
예를 들면, 회로 셀렉터(112)와 출력 셀렉터(119)는, 동작 설정이 유효인 것을 나타내는 파라미터만이 설정되는 것으로 해도 된다. 이 경우, 회로 셀렉터(112)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되면 회로 전환 버스(111)의 신호를 회로 소자로 출력하고, 출력 셀렉터(119)는 동작 설정이 유효인 것을 나타내는 파라미터가 설정되면 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)로 출력한다.
한편, 동작 설정이 유효인 것을 나타내는 파라미터가 설정되어 있지 않으면, 즉 어떠한 설정도 되어 있지 않으면, 회로 셀렉터(112)는 동작 설정이 무효가 되어, 회로 전환 버스(111)의 신호를 회로 소자로 출력하지 않는다. 마찬가지로, 동작 설정이 유효인 것을 나타내는 파라미터가 설정되어 있지 않으면, 즉 어떠한 설정도 되어 있지 않으면, 출력 셀렉터(119)는 동작 설정이 무효가 되어, 회로 전환 버스(111)의 신호를 외부 출력 인터페이스부(16)로 출력하지 않는다. 이러한 경우에 있어서도, 실시 형태 1에 있어서의 상술한 효과를 달성할 수 있다.
1: 프로그래머블 로직 컨트롤러,
10: 입출력 제어장치,
11: 범용 로직부, 12: 연산부,
13: 기억부, 15: 외부 입력 인터페이스부,
16: 외부 출력 인터페이스부, 111: 회로 전환 버스,
112, 112a, 112b, 112c, 112d, 112e, 112f: 회로 셀렉터,
113: 필터, 114: 논리 게이트,
115: 카운터, 116: 비교기,
117: 연산기, 118: 클록,
119, 119a, 119b: 출력 셀렉터, 20: CPU 장치,
3: 주변장치, 31: 파라미터 설정부,
32: 동작 데이터 설정부.
11: 범용 로직부, 12: 연산부,
13: 기억부, 15: 외부 입력 인터페이스부,
16: 외부 출력 인터페이스부, 111: 회로 전환 버스,
112, 112a, 112b, 112c, 112d, 112e, 112f: 회로 셀렉터,
113: 필터, 114: 논리 게이트,
115: 카운터, 116: 비교기,
117: 연산기, 118: 클록,
119, 119a, 119b: 출력 셀렉터, 20: CPU 장치,
3: 주변장치, 31: 파라미터 설정부,
32: 동작 데이터 설정부.
Claims (10)
- 외부로부터 신호가 입력되는 입력 인터페이스에 접속하는 버스와,
상기 버스에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 상기 버스의 신호를 출력하고, 무효인 경우에 상기 버스의 신호를 출력하지 않는 복수의 회로 셀렉터와,
상기 회로 셀렉터마다 대응해서 마련되어, 상기 회로 셀렉터로부터 신호가 입력되면 논리 연산을 행하여, 연산 결과를 나타내는 신호를 상기 버스로 출력하는 복수의 논리 회로와,
상기 버스에 접속하고, 동작의 유효 또는 무효가 설정되어, 유효인 경우에 상기 버스의 신호를 출력 인터페이스로 출력하고, 무효인 경우에 상기 버스의 신호를 상기 출력 인터페이스로 출력하지 않는 출력 셀렉터와,
상기 복수의 회로 셀렉터와 상기 출력 셀렉터의 동작의 순서에 기초하여, 상기 복수의 회로 셀렉터 또는 상기 출력 셀렉터를 유효 또는 무효로 하는 연산부를 구비한 것을 특징으로 하는 입출력 제어장치. - 청구항 1에 있어서,
상기 연산부는 상기 입력 인터페이스 또는 상기 복수의 논리 회로로부터 상기 버스에 신호가 입력된 경우, 상기 복수의 회로 셀렉터와 상기 출력 셀렉터의 동작의 순서를 나타내는 데이터에 기초하여, 상기 복수의 회로 셀렉터 및 상기 출력 셀렉터를 유효 또는 무효로 하는 것을 특징으로 하는 입출력 제어장치. - 청구항 1에 있어서,
상기 연산부와 접속되어, 상기 데이터를 설정하는 데이터 설정부를 추가로 구비하는 것을 특징으로 하는 입출력 제어장치. - 청구항 1에 있어서,
상기 연산부와 접속되어, 상기 논리 회로가 논리 연산을 행하기 위해서 이용하는 파라미터를 상기 논리 회로에 설정하는 파라미터 설정부를 추가로 구비한 것을 특징으로 하는 입출력 제어장치. - 외부로부터 신호가 입력되는 입력 인터페이스에 접속하는 버스로의 신호의 입력을 접수하는 입력 스텝과,
상기 버스에 접속하는 복수의 회로 셀렉터 중, 임의의 회로 셀렉터를 유효로 하여, 당해 회로 셀렉터에 상기 버스의 신호를 출력시키는 회로 선택 스텝과,
상기 회로 셀렉터마다 대응해서 마련되는 복수의 논리 회로 중, 상기 회로 셀렉터로부터 신호가 입력된 논리 회로에 논리 연산을 행하게 하여 상기 버스로 신호를 출력시키는 연산 스텝과,
상기 버스에 접속하는 출력 셀렉터를 유효로 하여, 당해 출력 셀렉터에 상기 버스의 신호를 출력 인터페이스로 출력시키는 출력 스텝을 구비한 것을 특징으로 하는 입출력 제어 방법. - 청구항 5에 있어서,
상기 복수의 회로 셀렉터와 상기 출력 셀렉터의 동작의 순서를 나타내는 데이터를 설정하는 동작 데이터 설정 스텝을 추가로 구비하고,
상기 회로 선택 스텝은, 상기 동작 데이터 설정 스텝에 있어서 설정된 상기 데이터에 기초하여, 상기 회로 셀렉터를 유효 또는 무효로 하고,
상기 출력 스텝은, 상기 동작 데이터 설정 스텝에 있어서 설정된 상기 데이터에 기초하여, 상기 출력 셀렉터를 유효 또는 무효로 하는 것을 특징으로 하는 입출력 제어 방법. - 청구항 5에 있어서,
파라미터를 상기 논리 회로에 설정하는 파라미터 설정 스텝을 추가로 구비하고,
상기 연산 스텝은 상기 파라미터 설정 스텝에 있어서 설정된 상기 파라미터에 따른 논리 연산을 상기 논리 회로에 행하게 하는 것을 특징으로 하는 입출력 제어 방법. - 입력 인터페이스로부터 입력된 신호에 따라 소정의 동작을 실행하여, 출력 인터페이스로부터 신호를 출력하는 입출력 제어장치에 인스톨되는 프로그램에 있어서,
상기 입력 인터페이스에 접속하는 버스에 신호가 입력된 경우, 상기 버스에 접속하는 복수의 회로 셀렉터 중, 임의의 회로 셀렉터를 유효로 하여, 당해 회로 셀렉터에 상기 버스의 신호를 출력시키는 회로 선택 스텝과,
상기 회로 셀렉터마다 대응해서 마련되는 복수의 논리 회로 중, 상기 회로 셀렉터로부터 신호가 입력된 논리 회로에 논리 연산을 행하게 하여 상기 버스로 신호를 출력시키는 연산 스텝과,
상기 버스에 접속하는 출력 셀렉터를 유효로 하여, 당해 출력 셀렉터에 상기 버스의 신호를 상기 출력 인터페이스로 출력시키는 출력 스텝을,
상기 입출력 제어장치의 연산부에 실행시키는 것을 특징으로 하는 프로그램. - 청구항 8에 있어서,
상기 복수의 회로 셀렉터와 상기 출력 셀렉터의 동작의 순서를 나타내는 데이터를 설정하는 동작 데이터 설정 스텝을 추가로 구비하고
상기 회로 선택 스텝은, 상기 동작 데이터 설정 스텝에 있어서 설정된 상기 데이터에 기초하여, 상기 회로 셀렉터를 유효 또는 무효로 하고,
상기 출력 스텝은, 상기 동작 데이터 설정 스텝에 있어서 설정된 상기 데이터에 기초하여, 상기 출력 셀렉터를 유효 또는 무효로 하는 것을 특징으로 하는 프로그램. - 청구항 8에 있어서,
파라미터를 상기 논리 회로에 설정하는 파라미터 설정 스텝을 추가로 구비하고,
상기 연산 스텝은, 상기 파라미터 설정 스텝에 있어서 설정된 상기 파라미터에 따른 논리 연산을 상기 논리 회로에 행하게 하는 것을 특징으로 하는 프로그램.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/004673 WO2016038645A1 (ja) | 2014-09-11 | 2014-09-11 | 入出力制御装置、入出力制御方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170024125A true KR20170024125A (ko) | 2017-03-06 |
KR101781323B1 KR101781323B1 (ko) | 2017-09-22 |
Family
ID=55458438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177004669A KR101781323B1 (ko) | 2014-09-11 | 2014-09-11 | 입출력 제어장치, 입출력 제어 방법, 및 프로그램 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9971332B2 (ko) |
JP (1) | JP6176407B2 (ko) |
KR (1) | KR101781323B1 (ko) |
CN (1) | CN106662853B (ko) |
DE (1) | DE112014006947T5 (ko) |
WO (1) | WO2016038645A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10175673B2 (en) | 2015-04-06 | 2019-01-08 | Mitsubishi Electric Corporation | Programmable controller system |
WO2021192347A1 (ja) * | 2020-03-25 | 2021-09-30 | 京セラ株式会社 | インターフェイス回路及び熱履歴制御方法 |
CN115061534A (zh) * | 2022-05-09 | 2022-09-16 | 厉雷刚 | 无时钟异步电路、数据同步输出的方法、设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009069864A (ja) | 2007-09-10 | 2009-04-02 | Mitsubishi Electric Corp | プログラマブルコントローラ |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3849765A (en) * | 1971-11-30 | 1974-11-19 | Matsushita Electric Ind Co Ltd | Programmable logic controller |
US5237652A (en) * | 1990-11-30 | 1993-08-17 | Mcmanus Kirby L | Programming system for programmable logic controller |
JP2921259B2 (ja) | 1992-05-28 | 1999-07-19 | 富士電機株式会社 | 多分岐命令の処理方式 |
JPH0869355A (ja) | 1994-08-26 | 1996-03-12 | Matsushita Electric Works Ltd | アナログ/デジタル変換装置 |
JPH0876820A (ja) * | 1994-09-05 | 1996-03-22 | Hitachi Ltd | プロセス入出力制御装置 |
US5754823A (en) | 1995-02-23 | 1998-05-19 | Datalogic, Inc. | Configurable I/O system using logic state arrays |
US6058448A (en) * | 1995-12-19 | 2000-05-02 | Micron Technology, Inc. | Circuit for preventing bus contention |
KR100202706B1 (ko) * | 1996-10-05 | 1999-06-15 | 이종수 | 피엘씨 리모트 시스템의 기동시간 동기화 및 비상상태 출력 제어방법 |
JPH10240315A (ja) * | 1997-03-03 | 1998-09-11 | Star Tec:Kk | プログラマブルロジック調節器 |
US6028809A (en) * | 1997-06-20 | 2000-02-22 | Altera Corporation | Programmable logic device incorporating a tristateable logic array block |
US6107825A (en) * | 1997-10-16 | 2000-08-22 | Altera Corporation | Input/output circuitry for programmable logic devices |
US7200448B2 (en) * | 2001-11-27 | 2007-04-03 | Rockwell Automation Technologies, Inc. | System and method for function block execution order generation |
TW594454B (en) * | 2003-03-27 | 2004-06-21 | Delta Electronics Inc | Expander of automated apparatus and its interface control chip |
JP2005275938A (ja) | 2004-03-25 | 2005-10-06 | Toshiba Corp | コントローラシステムおよびメカトロニクス機器用コントローラ |
EP1632825B1 (en) * | 2004-09-03 | 2008-10-29 | Derek Ward | Improvements in or relating to programmable logic controller and related electronic devices |
JP4450737B2 (ja) | 2005-01-11 | 2010-04-14 | 富士通株式会社 | 半導体集積回路 |
EP2228698B1 (en) * | 2005-03-14 | 2012-06-27 | Omron Corporation | Programmable controller system |
JP4793589B2 (ja) | 2007-06-13 | 2011-10-12 | オムロン株式会社 | 安全リモートi/oターミナル |
CN102084306B (zh) * | 2008-07-03 | 2014-07-16 | 贝利莫控股公司 | 用于hvac系统的执行器和用于操作该执行器的方法 |
AT509310B1 (de) * | 2009-12-16 | 2015-10-15 | Bachmann Gmbh | Verfahren zum betrieb einer speicherprogrammierbaren steuerung (sps) mit dezentraler, autonomer ablaufsteuerung |
JP5424486B2 (ja) * | 2010-02-18 | 2014-02-26 | ルネサスエレクトロニクス株式会社 | 半導体集積回路 |
US10303149B2 (en) * | 2015-01-28 | 2019-05-28 | Mitsubishi Electric Corporation | Intelligent function unit and programmable logic controller system |
-
2014
- 2014-09-11 CN CN201480081523.1A patent/CN106662853B/zh active Active
- 2014-09-11 KR KR1020177004669A patent/KR101781323B1/ko active IP Right Grant
- 2014-09-11 US US15/501,268 patent/US9971332B2/en active Active
- 2014-09-11 JP JP2016546539A patent/JP6176407B2/ja active Active
- 2014-09-11 WO PCT/JP2014/004673 patent/WO2016038645A1/ja active Application Filing
- 2014-09-11 DE DE112014006947.7T patent/DE112014006947T5/de active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009069864A (ja) | 2007-09-10 | 2009-04-02 | Mitsubishi Electric Corp | プログラマブルコントローラ |
Also Published As
Publication number | Publication date |
---|---|
US20170220020A1 (en) | 2017-08-03 |
WO2016038645A1 (ja) | 2016-03-17 |
US9971332B2 (en) | 2018-05-15 |
JP6176407B2 (ja) | 2017-08-09 |
DE112014006947T5 (de) | 2017-05-24 |
CN106662853A (zh) | 2017-05-10 |
KR101781323B1 (ko) | 2017-09-22 |
JPWO2016038645A1 (ja) | 2017-04-27 |
CN106662853B (zh) | 2018-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102056350B1 (ko) | 인텔리전트 기능 유닛 및 프로그래머블 로직 컨트롤러 시스템 | |
KR101781323B1 (ko) | 입출력 제어장치, 입출력 제어 방법, 및 프로그램 | |
ES2562153A1 (es) | Sistema y método de configuración de hardware de instrumentos programables de control, test y medida | |
JP2019126895A5 (ko) | ||
JP6005222B2 (ja) | デバッグインターフェースを部分的にイネーブルするための装置 | |
JP2014144524A (ja) | ロボットプログラムによりシミュレーションを行うシミュレーション装置 | |
US20100070260A1 (en) | Verification device, verifying apparatus and verification system | |
US10146200B2 (en) | Apparatus and method for updating operating system in programmable logic controller | |
JP5566473B2 (ja) | システム設計装置 | |
KR101913919B1 (ko) | 프로그래머블 컨트롤러 시스템, 프로그래머블 컨트롤러 및 표시 장치 | |
JP6191625B2 (ja) | インバータ制御装置およびその周辺装置 | |
JP2011108008A (ja) | Hmi画面自動生成方法 | |
Bedi et al. | Monitoring and controlling of industrial crane using programmable logic controllers | |
JP2007241744A (ja) | モーションコントローラとその指令方法 | |
JP2010079356A (ja) | プログラマブルコントローラ | |
US20180196908A1 (en) | Hardware-configurable logic unit and microcontroller having such a hardware-configurable logic unit | |
JP6146277B2 (ja) | インバータ制御装置およびその周辺装置 | |
JP2002014707A (ja) | I/oユニット及びプログラマブルコントローラ | |
KR20160106987A (ko) | Scada를 이용한 plc/hmi 통합 시스템 | |
Duma et al. | Towards a rapid control prototyping toolbox for the stellaris lm3s8000 microcontrollers | |
JP2014052670A (ja) | プログラマブルコントローラ、プログラム作成支援装置及びプログラム | |
JP2009223668A (ja) | ハードウェアロジック部を有するplc | |
JP2020028723A5 (ko) | ||
JP2011113200A (ja) | ラダープログラムにおけるオーバーライド設定状態のモニタ方法 | |
JP2018176340A (ja) | 産業用ロボットの制御システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |