KR20200144038A - 산업용 적재로봇 제어 시스템 - Google Patents
산업용 적재로봇 제어 시스템 Download PDFInfo
- Publication number
- KR20200144038A KR20200144038A KR1020190133362A KR20190133362A KR20200144038A KR 20200144038 A KR20200144038 A KR 20200144038A KR 1020190133362 A KR1020190133362 A KR 1020190133362A KR 20190133362 A KR20190133362 A KR 20190133362A KR 20200144038 A KR20200144038 A KR 20200144038A
- Authority
- KR
- South Korea
- Prior art keywords
- manipulator
- process controller
- robot
- manager terminal
- controller
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G57/00—Stacking of articles
- B65G57/02—Stacking of articles by adding to the top of the stack
- B65G57/03—Stacking of articles by adding to the top of the stack from above
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G2814/00—Indexing codes relating to loading or unloading articles or bulk materials
- B65G2814/03—Loading or unloading means
- B65G2814/0301—General arrangements
- B65G2814/0304—Stacking devices
- B65G2814/0305—Adding to the top
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Manipulator (AREA)
Abstract
본 발명은 매니퓰레이터의 동작에 대한 위치, 전체 동작에 대한 순서 등을 PLC 기반의 공정 컨트롤러에서 통합하여 프로그래밍할 수 있는 산업용 적재로봇 제어 시스템에 관한 것이다.
본 발명에 따른 산업용 적재로봇 제어 시스템은 매니퓰레이터의 작동을 제어하는 로봇 컨트롤러와 관리자 단말 사이에 산업용 PLC 기반의 공정 컨트롤러가 배치되고, 공정 컨트롤러에서 제품설정연산, 매니퓰레이터의 동작에 대한 위치연산, 동작순서 연산, 기동 및 정지 판별, 안전기준 판별을 수행하고, 관리자 단말에서 공정 컨트롤러로 작업 명령이 입력되면, 공정 컨트롤러가 연산을 통해 로봇 동작 지령을 로봇 컨트롤러로 전달하고, 로봇 컨트롤러가 로봇 동작 지령에 따라 매니퓰레이터의 동작을 제어하며, 매니퓰레이터의 동작에 따른 매니퓰레이터의 센서 신호가 공정 컨트롤러로 입력되어, 공정 컨트롤러가 매니퓰레이터의 동작 완료를 확인한 후, 다음 동작을 연산하고, 연산에 따른 동작 지령을 로봇 컨트롤러로 전달하게 되는 것을 특징으로 한다.
본 발명에 따른 산업용 적재로봇 제어 시스템은 매니퓰레이터의 작동을 제어하는 로봇 컨트롤러와 관리자 단말 사이에 산업용 PLC 기반의 공정 컨트롤러가 배치되고, 공정 컨트롤러에서 제품설정연산, 매니퓰레이터의 동작에 대한 위치연산, 동작순서 연산, 기동 및 정지 판별, 안전기준 판별을 수행하고, 관리자 단말에서 공정 컨트롤러로 작업 명령이 입력되면, 공정 컨트롤러가 연산을 통해 로봇 동작 지령을 로봇 컨트롤러로 전달하고, 로봇 컨트롤러가 로봇 동작 지령에 따라 매니퓰레이터의 동작을 제어하며, 매니퓰레이터의 동작에 따른 매니퓰레이터의 센서 신호가 공정 컨트롤러로 입력되어, 공정 컨트롤러가 매니퓰레이터의 동작 완료를 확인한 후, 다음 동작을 연산하고, 연산에 따른 동작 지령을 로봇 컨트롤러로 전달하게 되는 것을 특징으로 한다.
Description
본 발명은 상품 적재를 용이하게 수행할 수 있도록 하는 산업용 적재로봇 제어 시스템에 관한 것으로서, 보다 상세하게는 매니퓰레이터의 동작에 대한 위치, 전체 동작에 대한 순서 등을 PLC 기반의 공정 컨트롤러에서 통합하여 프로그래밍할 수 있는 산업용 적재로봇 제어 시스템에 관한 것이다.
최근, 제품의 계획, 설계 및 생산준비에서부터 생산의 제어, 관리 및 운용 등을 자동화시키는 산업자동화(Industrial Automation)가 광범위하게 진행되고 있다.
산업자동화는 일반적으로 공장자동화(Factory Automation) 및 생산자동화(Production Automation)와 혼용되어 사용되고 있으며, 생산라인 비용절감 및 생산성 향상을 위해 산업자동화 기기 또한, 지속적으로 발전되어 오고 있는 실정이다.
이렇게, 산업자동화 기기가 지속적으로 발전되어 오고, IT 기술과 융복합화 되면서 제어기, 센서 및 구동기 등을 종합 시스템으로 통합하여 관리하려는 움직임으로 이어지고 있다.
이와 관련된 시스템이 바로 산업자동화 시스템인데, 산업자동화 시스템에는 산업용 로봇, 머신비전, 산업용 PC, PLC(Programmable Logic Controller), 공장자동화용 센서 등이 포함될 수 있다.
여기서, 인더스트리 4.0 시대를 맞이하여 스마트화가 중요시되면서, 산업용 로봇 및 PLC의 중요성이 더더욱 증대되고 있다.
기존에는 산업용 로봇 컨트롤러에 프로그래밍을 하여 산업용 로봇을 제어해 왔었는데, 이러한 방식은 산업용 로봇 제조사 및 산업용 로봇 동작의 변경에 대응하여 산업용 로봇 컨트롤러에 다시 프로그래밍을 해야만 하는 문제점을 초래하였다.
따라서, 이러한 문제점을 해결하기 위해 산업용 로봇 동작에 대한 위치, 전체 동작에 대한 순서 등을 PLC 기반 제어기에 통합 프로그래밍함으로써 산업용 로봇 제조사나 산업용 로봇 동작이 변경되더라도 간단한 조치를 통해 산업용 로봇 전체의 제어를 수행할 수 있도록 하는 기법에 대한 연구가 필요하다.
따라서, 본 발명의 목적은 매니퓰레이터의 동작에 대한 위치, 전체 동작에 대한 순서 등을 PLC 기반의 공정 컨트롤러에서 통합하여 프로그래밍함으로써, PLC기반의 공정 컨트롤러가 연산 작업 및 프로그래밍의 주체가 되어, 제조사 또는 모델에 상관없이 어떠한 매니퓰레이터와 매니퓰레이터용 로봇 컨트롤러로 교체하여도 전체 작업 프로그래밍을 다시 할 필요가 없으며, 제품 단종 등으로 인한 애로 사항을 없앨 수 있고, 제품 선택을 다양화할 수 있는 산업용 적재로봇 제어 시스템을 제공하는 것이다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 산업용 적재로봇 제어 시스템의 일례는 매니퓰레이터의 작동을 제어하는 로봇 컨트롤러와 관리자 단말 사이에 산업용 PLC 기반의 공정 컨트롤러가 배치되고, 공정 컨트롤러에서 제품설정연산, 매니퓰레이터의 동작에 대한 위치연산, 동작순서 연산, 기동 및 정지 판별, 및 안전기준 판별을 수행하고, 관리자 단말에서 공정 컨트롤러로 작업 명령이 입력되면, 공정 컨트롤러가 연산을 통해 로봇 동작 지령을 로봇 컨트롤러로 전달하고, 로봇 컨트롤러가 로봇 동작 지령에 따라 매니퓰레이터의 동작을 제어하며, 매니퓰레이터의 동작에 따른 매니퓰레이터의 센서 신호가 공정 컨트롤러로 입력되어, 공정 컨트롤러가 매니퓰레이터의 동작 완료를 확인한 후, 다음 동작을 연산하고, 연산에 따른 동작 지령을 로봇 컨트롤러로 전달하게 되는 것을 특징으로 한다.
본 발명에 따른 산업용 적재로봇 제어 시스템는 PLC기반의 공정 컨트롤러가 연산 작업 및 프로그래밍의 주체가 되어, 제조사 또는 모델에 상관없이 어떠한 매니퓰레이터와 매니퓰레이터용 로봇 컨트롤러로 교체하여도 전체 작업 프로그래밍을 다시 할 필요가 없으며, 제품 단종 등으로 인한 애로 사항을 없앨 수 있고, 제품 선택을 다양화할 수 있는 효과가 있다.
도 1은 본 발명에 따른 산업용 적재로봇 제어 시스템을 도시한 블록도
도 2는 PLC 기반의 공정 컨트롤러를 도시한 블록도
도 3은 본 발명에 따른 산업용 적재로봇 제어 시스템의 동작을 제어하기 위한 방법을 도시한 순서도
도 2는 PLC 기반의 공정 컨트롤러를 도시한 블록도
도 3은 본 발명에 따른 산업용 적재로봇 제어 시스템의 동작을 제어하기 위한 방법을 도시한 순서도
이하, 본 발명에 따른 실시예를 첨부 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1을 참조하면, 본 발명에 따른 산업용 적재로봇 제어 시스템은 매니퓰레이터(150)의 작동을 제어하는 로봇 컨트롤러(140)와 관리자 단말(130 ; 예를 들어, PC) 사이에 산업용 PLC 기반의 공정 컨트롤러(110)가 배치되고, 공정 컨트롤러(110)에서 제품설정연산, 매니퓰레이터의 동작에 대한 위치연산, 동작순서 연산, 기동 및 정지 판별, 및 안전기준 판별을 수행하고, 관리자 단말(130)에서 공정 컨트롤러(110)로 작업 명령이 입력되면, 공정 컨트롤러(110)가 연산을 통해 로봇 동작 지령을 로봇 컨트롤러(140)로 전달하고, 로봇 컨트롤러(140)가 로봇 동작 지령에 따라 매니퓰레이터(150)의 동작을 제어하며, 매니퓰레이터(150)의 동작에 따른 매니퓰레이터의 센서 신호가 공정 컨트롤러(110)로 입력되어, 공정 컨트롤러(110)가 매니퓰레이터(150)의 동작 완료를 확인한 후, 다음 동작을 연산하고, 연산에 따른 동작 지령을 로봇 컨트롤러(140)로 전달하게 된다.
여기서, PLC(Programmable Logic Controller)란 산업 플랜트의 자동 제어 및 감시에 사용하는 제어 장치를 의미하는 것으로 디지털 또는 아날로그 입출력 모듈을 통하여 로직, 시퀀싱, 타이밍, 카운팅, 연산과 같은 특수한 기능을 수행하기 위하여 프로그램 가능한 메모리를 사용하고 여러 종류의 기계나 프로세서를 제어하는 디지털 동작의 전자장치를 의미한다.
상기와 같이 구성된 본 발명에 따른 산업용 적재로봇 제어 시스템은 산업용 PLC기반의 공정 컨트롤러(110)가 연산 작업 및 프로그래밍의 주체가 되어, 매니퓰레이터(150)와 로봇 컨트롤러(140)가 패키지로 판매되어도, 제조사 또는 모델에 상관없이 어떠한 매니퓰레이터(150)와 매니퓰레이터용 로봇 컨트롤러(140)로 교체하여도 전체 작업 프로그래밍을 다시 할 필요가 없으며, 제품 단종 등으로 인한 애로 사항을 없앨 수 있고, 제품 선택을 다양화할 수 있는 장점이 있다.
도 2를 참조하면, 상기 공정 컨트롤러(110)는 상관 계수 저장부(111), 요청부(112), 인증 확인부(113) 및 제어부(114)를 포함한다.
상기 상관 계수 저장부(111)에는 관리자 인증에 사용하기 위한 기설정된(predetermined) 상관 계수(Correlation Coefficient)에 대한 정보가 저장되어 있다.
여기서, 상관 계수란 2개의 연속형 변수 간의 연관성에 대한 측도를 의미하는 것으로 하기의 수학식 1에 따라 연산될 수 있다.
여기서, R은 변수 x와 변수 y의 n개 자료 (x1, y1), ..., (xn, yn)에서의 상관 계수, 는 x1, ..., xn의 평균, 는 y1, ..., yn의 평균을 의미한다. 보통, 이 1에 가까울수록 두 변수의 값들은 직선 가까이에 위치하여 두 변수 간의 선형적인 연관성은 커진다고 볼 수 있고, R=0일 때 두 변수 간의 선형적인 연관성은 없다고 볼 수 있다.
상기 요청부(112)는 관리자 단말(130)로부터 매니퓰레이터(150)를 제어하기 위한 제1 제어명령이 수신되면, n(n은 2이상의 자연수)개의 랜덤 값들을 랜덤하게 생성하고, 상기 n개의 랜덤 값들을 관리자 단말(130)로 전송하면서, 관리자 단말(130)로 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들의 전송을 요청한다.
예컨대, 상기 제1 제어명령을 '제어명령 1'이라고 하고, 'n=5'라고 가정하자. 관리자 단말(130)로부터 매니퓰레이터(150)를 제어하기 위한 상기 제1 제어명령인 '제어명령 1'이 공정 컨트롤러(110)에 수신되면, 요청부(112)는 5개의 랜덤 값들 '2, 2, 3, 4, 5'를 랜덤하게 생성하고, 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5'를 관리자 단말(130)로 전송하면서, 관리자 단말(130)로 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5'에 대응되는 5개의 피드백 값들의 전송을 요청할 수 있다.
상기 인증 확인부(113)는 관리자 단말(130)로부터 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들로 n개의 제1 피드백 값들(상기 n개의 제1 피드백 값들은 상기 n개의 랜덤 값들과의 상관 계수가 관리자 단말(130)에 기 저장되어 있는 상기 기설정된 상관 계수로 연산되도록 생성된 값들임)이 수신되면, 상기 n개의 제1 피드백 값들과 상기 n개의 랜덤 값들 간의 제1 상관 계수를 연산하고, 상기 제1 상관 계수가 상기 기설정된 상관 계수로 연산되는지 확인함으로써, 관리자 단말(130)에 대한 인증을 완료한다.
예컨대, 'n=5'라고 하고, 상기 5개의 랜덤 값들을 '2, 2, 3, 4, 5'라고 하며, 상기 기설정된 상관 계수를 'R1'이라고 가정하자. 관리자 단말(130)로부터 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5'에 대응되는 5개의 피드백 값들로 5개의 제1 피드백 값들이 공정 컨트롤러(110)에 수신되면, 인증 확인부(113)는 상기 5개의 제1 피드백 값들과 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5' 간의 제1 상관 계수를 연산하고, 상기 제1 상관 계수가 상기 기설정된 상관 계수인 'R1'으로 연산되는지 확인함으로써, 관리자 단말(130)에 대한 인증을 완료할 수 있다.
이때, 본 발명의 일실시예에 따르면, 관리자 단말(130)은 상기 기설정된 상관 계수를 메모리 상에 저장하고 있고, 공정 컨트롤러(110)로부터 상기 n개의 랜덤 값들이 수신되면, 상기 n개의 랜덤 값들과의 상관 계수가 상기 메모리 상에 저장되어 있는 상기 기설정된 상관 계수로 연산되는 상기 n개의 제1 피드백 값들을 랜덤하게 생성하여 공정 컨트롤러(110)로 전송할 수 있다.
예컨대, 상기 메모리 상에 저장되어 있는 상기 기설정된 상관 계수를 'R1'이라고 하고, 공정 컨트롤러(110)로부터 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5'가 관리자 단말(130)에 수신되었다고 하는 경우, 관리자 단말(130)은 상기 5개의 랜덤 값들 '2, 2, 3, 4, 5'와의 상관 계수가 상기 메모리 상에 저장되어 있는 상기 기설정된 상관 계수인 'R1'으로 연산되는 상기 5개의 제1 피드백 값들을 랜덤하게 생성하여 공정 컨트롤러(110)로 전송할 수 있다.
상기 제어부(114)는 관리자 단말(130)에 대한 인증이 완료되면, 상기 제1 제어명령을 기초로 매니퓰레이터(150)의 제어를 수행한 후 관리자 단말(130)로 매니퓰레이터(150)의 제어에 대한 수행 완료 메시지를 전송한다.
예컨대, 상기 제1 제어명령을 '제어명령 1'이라고 가정하자. 관리자 단말(130)에 대한 인증이 완료되면, 제어부(114)는 상기 제1 제어명령인 '제어명령 1'을 기초로 매니퓰레이터(150)의 제어를 수행한 후 관리자 단말(130)로 매니퓰레이터(150)의 제어에 대한 수행 완료 메시지를 전송할 수 있다.
즉, 공정 컨트롤러(110)는 관리자 단말(130)로부터 매니퓰레이터(150)를 제어하기 위한 제1 제어명령이 수신되면, n개의 랜덤 값들을 랜덤하게 생성하고, 상기 n개의 랜덤 값들을 관리자 단말(130)로 전송하면서, 관리자 단말(130)로 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들의 전송을 요청한 후 관리자 단말(130)로부터 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들로 n개의 제1 피드백 값들이 수신되면, 상기 n개의 제1 피드백 값들과 상기 n개의 랜덤 값들 간의 제1 상관 계수를 연산하고, 상기 제1 상관 계수가 기설정된 상관 계수로 연산되는지 확인하여 관리자 단말(130)에 대한 인증을 완료한 후 관리자 단말(130)에 대한 인증이 완료되면, 상기 제1 제어명령을 기초로 매니퓰레이터(150)의 제어를 수행함으로써, 관리자로 하여금 상품을 용이하게 적재할 수 있도록 지원할 수 있다.
한편, 상기 제어부(114)는 관리자 단말(130)에 대한 인증이 완료되지 않으면, 상기 제1 제어명령을 기초로 매니퓰레이터(150)의 제어를 수행하지 않은 후 관리자 단말(130)로 매니퓰레이터(150)의 제어에 대한 수행 실패 메시지를 전송할 수 있다.
예를 들어, 상기 제1 제어명령을 '제어명령 1'이라고 가정하고, 관리자 단말(130)에 대한 인증이 완료되지 않으면, 제어부(114)는 상기 제1 제어명령인 '제어명령 1'을 기초로 매니퓰레이터(150)의 제어를 수행하지 않은 후 관리자 단말(130)로 매니퓰레이터(150)의 제어에 대한 수행 실패 메시지를 전송할 수 있다.
상기 공정 컨트롤러(110)는 행렬 저장부(115), 신드롬 생성부(116), 피드백 요청부(117), 검증용 신드롬 생성부(118), 인증부(119) 및 전송부(120)를 더 포함한다.
상기 행렬 저장부(115)에는 관리자 인증에 사용하기 위한 t(t는 자연수임) 비트의 코드에 대한 오류 정정 능력을 갖는 기설정된 생성행렬에 대응되는 패리티 검사 행렬이 저장되어 있다.
상기 패리티 검사 행렬은 데이터 전송측이 소정의 생성행렬을 기반으로 인코딩된 코드워드(codeword)를 데이터 수신측으로 전송하였을 때, 데이터 수신측이 수신한 데이터에 에러가 발생하였는지 여부를 검증하기 위한 행렬로, k x n(k와 n은 자연수로 n은 k보다 큰 수임) 크기의 생성행렬 G가 존재한다고 하고, 상기 생성행렬 G에 대응하는 패리티 검사 행렬을 'H'라고 하는 경우, 상기 패리티 검사 행렬 H의 크기는 (n-k) x n의 크기이며, 상기 생성행렬 G와의 관계에서 하기의 수학식 2와 같은 특성이 존재한다.
여기서, HT는 상기 패리티 검사 행렬의 전치 행렬을 의미한다.
만약, 데이터 전송측이 생성행렬 G를 이용해서 코드워드 c를 생성하여 데이터 수신측으로 전송함에 따라 데이터 수신측에 수신된 데이터를 'r'이라고 하고, 상기 데이터 r에 에러가 발생하지 않았다고 하는 경우, 상기 데이터 r에 대해서는 패리티 검사 행렬 H와의 관계에서 하기의 수학식 3과 같은 특성이 존재한다.
하지만, 데이터 전송측이 전송한 코드워드 c에 에러 e가 발생하였다고 한다면, 데이터 수신측이 수신한 상기 데이터 r은 'ce'가 될 것이고, 이로 인해 패리티 검사 행렬 H와 상기 데이터 r 사이에는 하기의 수학식 4와 같은 특성을 가지게 된다.
상기 수학식 4에서의 연산과 같이, 데이터 수신측에서는 패리티 검사 행렬을 이용해서 데이터 수신측에 수신된 데이터에 에러가 존재하는지 여부를 검출할 수 있다. 이때, 상기 수학식 4에서 'S'를 신드롬(Syndrome)이라고 하며, 데이터 수신측에서는 패리티 검사 행렬 H를 기초로 상기 신드롬을 연산한 후 를 만족하는 e를 찾아내기 위한 신드롬 디코딩(Syndrome Decoding)을 수행함으로써, 수신된 데이터 r에 포함된 에러 e를 찾아낼 수 있다.
신드롬 생성부(116)는 관리자 단말(130)로부터 매니퓰레이터(150)에 대한 상태 정보 요청이 수신되면, 해밍 무게(Hamming Weight)가 t인 에러 코드를 랜덤하게 생성하고, 상기 에러 코드와 상기 패리티 검사 행렬을 기초로 상기 에러 코드에 대한 신드롬(Syndrome)을 생성한다.
여기서, 해밍 무게란 '0'과 '1'로 구성된 코드 값들의 집합에서 '1'이라는 코드 값의 개수를 의미한다.
그리고, 신드롬 생성부(116)는 하기의 수학식 5에 기초하여 상기 에러 코드에 대한 신드롬을 생성할 수 있다.
여기서, e는 해밍 무게가 t인 에러 코드, S는 신드롬을 의미한다.
상기 피드백 요청부(117)는 상기 에러 코드를 관리자 단말(130)에 전송함과 동시에 관리자 단말(130)에 대해 상기 에러 코드가 에러로 삽입된 코드워드(codeword)의 피드백 요청을 전송한다.
이때, 상기 관리자 단말(130)은 메모리 상에 상기 기설정된 생성행렬을 저장하고 있고, 공정 컨트롤러(110)로부터 상기 에러 코드와 상기 피드백 요청이 수신되면, 상기 에러 코드의 해밍 무게가 t인지 여부를 확인하고, 상기 에러 코드의 해밍 무게가 t인 것으로 확인되면, 랜덤 코드를 랜덤하게 생성하고, 상기 메모리 상에 저장되어 있는 상기 기설정된 생성행렬을 기초로 상기 랜덤 코드를 인코딩하여 제1 코드워드를 생성하며, 상기 제1 코드워드에 상기 에러 코드를 에러로 삽입하여 피드백 코드를 생성한 후 상기 피드백 코드를 공정 컨트롤러(110)로 전송할 수 있다.
관련해서, 상기 공정 컨트롤러(110)로부터 수신된 상기 에러 코드를 'e'라고 할 경우, 관리자 단말(130)은 상기 에러 코드 e의 해밍 무게가 t인지 여부를 먼저 확인할 수 있다.
상기 에러 코드 e의 해밍 무게가 t인 것으로 확인되면, 관리자 단말(130)은 상기 에러 코드 e가 공정 컨트롤러(110)로부터 정상적으로 생성되어 전송된 코드인 것으로 확인하고, 소정의 랜덤 코드를 랜덤하게 생성한 후 메모리에 저장되어 있는 상기 기설정된 생성행렬을 기초로 상기 랜덤 코드를 인코딩하여 제1 코드워드를 생성할 수 있다.
관련해서, 상기 기설정된 생성행렬을 k x n 크기의 생성행렬 G라고 하는 경우, 관리자 단말(130)은 k비트의 크기를 갖는 랜덤 코드를 랜덤하게 생성한 후 상기 생성행렬 G를 이용하여 하기의 수학식 6의 연산에 따라 상기 제1 코드워드를 생성할 수 있다.
여기서, c는 상기 제1 코드워드, r은 상기 랜덤 코드를 의미한다.
이렇게, 상기 제1 코드워드 c가 생성되면, 관리자 단말(130)은 하기의 수학식 7의 연산에 따라 상기 제1 코드워드 c에 상기 에러 코드 e를 에러로 삽입하여 피드백 코드를 생성할 수 있다.
여기서, p는 상기 피드백 코드를 의미한다.
이렇게, 상기 피드백 코드 p가 생성되면, 관리자 단말(130)은 상기 피드백 코드를 공정 컨트롤러(110)로 전송할 수 있다.
이때, 검증용 신드롬 생성부(118)는 관리자 단말(130)로부터 관리자 단말(130)에서 생성된 제1 코드워드(상기 제1 코드워드는 관리자 단말(130)에서 생성된 랜덤 코드가 관리자 단말(130)에 기 저장되어 있는 상기 기설정된 생성행렬을 기초로 인코딩되어 생성된 코드워드임)에 상기 에러 코드가 에러로 삽입된 피드백 코드가 수신되면, 상기 패리티 검사 행렬을 기초로 상기 피드백 코드로부터 검증용 신드롬을 생성한다.
관련해서, 상기 피드백 코드가 상기 수학식 7의 연산에 따라 생성된 p라고 하는 경우, 검증용 신드롬 생성부(118)는 하기의 수학식 8의 연산에 기초하여 상기 검증용 신드롬을 생성할 수 있다.
여기서, Sc는 상기 검증용 신드롬을 의미한다.
상기 인증부(119)는 상기 에러 코드에 대한 신드롬과 상기 검증용 신드롬을 비교하여 양 신드롬이 서로 일치하는 것으로 확인되는 경우, 관리자 단말(130)에 대한 인증을 완료한다.
또한, 상기 인증부(119)는 상기 수학식 5에 따라 연산된 상기 에러 코드에 대한 신드롬 S와 상기 수학식 8에 따라 연산된 상기 검증용 신드롬 Sc가 서로 일치하는 것으로 확인되는 경우, 관리자 단말(130)에 대한 인증을 완료할 수 있다.
상기 수학식 5에 따라 연산된 상기 에러 코드에 대한 신드롬 S와 상기 수학식 8에 따라 연산된 상기 검증용 신드롬 Sc가 서로 일치한다는 것은 관리자 단말(130)이 공정 컨트롤러(110)에 저장되어 있는 패리티 검사 행렬에 대응하는 t이하의 오류 정정 능력을 갖춘 생성행렬을 통해 생성된 코드워드에 대해 공정 컨트롤러(110)가 발급한 해밍 무게가 t인 에러 코드를 에러로 삽입하여 생성한 피드백 코드를 공정 컨트롤러(110)로 피드백하였다는 의미로 볼 수 있다.
이에 대해서는 하기의 수학식 9의 연산에 의해 증명할 수 있다.
상기 관리자 단말(130)이 공정 컨트롤러(110)에 저장되어 있는 패리티 검사 행렬에 대응하는 t이하의 오류 정정 능력을 갖춘 생성행렬을 통해 코드워드를 생성한 후 상기 생성된 코드워드에 대해 공정 컨트롤러(110)가 발급한 해밍 무게가 t인 에러 코드를 에러로 삽입하여 피드백 코드를 생성하였다고 하는 경우, 상기 검증용 신드롬 Sc는 상기 수학식 9의 연산에 따라 로 연산될 것이고, 는 상기 수학식 5에서 나타낸 상기 에러 코드에 대한 신드롬 S와 동일해 진다.
이로 인해, 인증부(119)는 상기 수학식 5에 따라 연산된 상기 에러 코드에 대한 신드롬 S와 상기 수학식 8에 따라 연산된 상기 검증용 신드롬 Sc가 서로 일치하는 것으로 확인되는 경우, 관리자 단말(130)이 등록된 정상 서버인 것으로 인증할 수 있다.
이렇게, 관리자 단말(130)에 대한 인증이 완료되면, 전송부(120)는 매니퓰레이터용 로봇 컨트롤러(150)로부터 매니퓰레이터(150)의 상태 정보를 획득하여 관리자 단말(130)로 전송할 수 있다.
도 3을 참조하면, 상기 공정 컨트롤러(110)의 관리자 인증 방법은 다음과 같다.
단계(S210)에서는 관리자 인증에 사용하기 위한 기설정된 상관 계수에 대한 정보가 저장되어 있는 상관 계수 저장부를 유지한다.
단계(S220)에서는 관리자 단말(130)로부터 매니퓰레이터(150)를 제어하기 위한 제1 제어명령이 수신되면, n(n은 2이상의 자연수)개의 랜덤 값들을 랜덤하게 생성하고, 상기 n개의 랜덤 값들을 상기 관리자 단말로 전송하면서, 상기 관리자 단말로 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들의 전송을 요청한다.
단계(S230)에서는 상기 관리자 단말로부터 상기 n개의 랜덤 값들에 대응되는 n개의 피드백 값들로 n개의 제1 피드백 값들(상기 n개의 제1 피드백 값들은 상기 n개의 랜덤 값들과의 상관 계수가 상기 관리자 단말에 기 저장되어 있는 상기 기설정된 상관 계수로 연산되도록 생성된 값들임)이 수신되면, 상기 n개의 제1 피드백 값들과 상기 n개의 랜덤 값들 간의 제1 상관 계수를 연산하고, 상기 제1 상관 계수가 상기 기설정된 상관 계수로 연산되는지 확인함으로써, 상기 관리자 단말에 대한 인증을 완료한다.
단계(S240)에서는 상기 관리자 단말에 대한 인증이 완료되면, 상기 제1 제어명령을 기초로 상기 매니퓰레이터의 제어를 수행한 후 상기 관리자 단말로 상기 매니퓰레이터의 제어에 대한 수행 완료 메시지를 전송한다.
이때, 상기 관리자 단말(130)은 상기 기설정된 상관 계수를 메모리 상에 저장하고 있고, 상기 공정 컨트롤러(110)로부터 상기 n개의 랜덤 값들이 수신되면, 상기 n개의 랜덤 값들과의 상관 계수가 상기 메모리 상에 저장되어 있는 상기 기설정된 상관 계수로 연산되는 상기 n개의 제1 피드백 값들을 랜덤하게 생성하여 상기 공정 컨트롤러(110)로 전송할 수 있다.
또한, 단계(S240)에서는 상기 관리자 단말에 대한 인증이 완료되지 않으면, 상기 제1 제어명령을 기초로 상기 매니퓰레이터의 제어를 수행하지 않은 후 상기 관리자 단말로 상기 매니퓰레이터의 제어에 대한 수행 실패 메시지를 전송할 수 있다.
또한, 공정 컨트롤러(110)의 관리자 인증 방법은 관리자 인증에 사용하기 위한 t(t는 자연수임) 비트의 코드에 대한 오류 정정 능력을 갖는 기설정된 생성행렬에 대응되는 패리티 검사 행렬이 저장되어 있는 행렬 저장부를 유지하는 단계, 상기 관리자 단말로부터 상기 매니퓰레이터에 대한 상태 정보 요청이 수신되면, 해밍 무게가 t인 에러 코드를 랜덤하게 생성하고, 상기 에러 코드와 상기 패리티 검사 행렬을 기초로 상기 에러 코드에 대한 신드롬을 생성하는 단계, 상기 에러 코드를 상기 관리자 단말에 전송함과 동시에 상기 관리자 단말에 대해 상기 에러 코드가 에러로 삽입된 코드워드의 피드백 요청을 전송하는 단계, 상기 관리자 단말로부터 상기 관리자 단말에서 생성된 제1 코드워드(상기 제1 코드워드는 상기 관리자 단말에서 생성된 랜덤 코드가 상기 관리자 단말에 기 저장되어 있는 상기 기설정된 생성행렬을 기초로 인코딩되어 생성된 코드워드임)에 상기 에러 코드가 에러로 삽입된 피드백 코드가 수신되면, 상기 패리티 검사 행렬을 기초로 상기 피드백 코드로부터 검증용 신드롬을 생성하는 단계, 상기 에러 코드에 대한 신드롬과 상기 검증용 신드롬을 비교하여 양 신드롬이 서로 일치하는 것으로 확인되는 경우, 상기 관리자 단말에 대한 인증을 완료하는 단계 및 상기 관리자 단말에 대한 인증이 완료되면, 상기 매니퓰레이터용 로봇 컨트롤러로부터 상기 매니퓰레이터의 상태 정보를 획득하여 상기 관리자 단말로 전송하는 단계를 더 포함할 수 있다.
이때, 상기 관리자 단말은 메모리 상에 상기 기설정된 생성행렬을 저장하고 있고, 상기 공정 컨트롤러(110)로부터 상기 에러 코드와 상기 피드백 요청이 수신되면, 상기 에러 코드의 해밍 무게가 t인지 여부를 확인하고, 상기 에러 코드의 해밍 무게가 t인 것으로 확인되면, 상기 랜덤 코드를 랜덤하게 생성하고, 상기 메모리 상에 저장되어 있는 상기 기설정된 생성행렬을 기초로 상기 랜덤 코드를 인코딩하여 상기 제1 코드워드를 생성하며, 상기 제1 코드워드에 상기 에러 코드를 에러로 삽입하여 상기 피드백 코드를 생성한 후 상기 피드백 코드를 공정 컨트롤러(110)로 전송할 수 있다.
이상, 도 3을 참조하여, 공정 컨트롤러(110)의 관리자 인증 방법에 대해 설명하였다. 여기서, 공정 컨트롤러(110)의 관리자 인증 방법은 도 2를 이용하여 설명한 공정 컨트롤러(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명에 따른 공정 컨트롤러(110)의 관리자 인증 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명에 따른 공정 컨트롤러(110)의 관리자 인증 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 공정 컨트롤러(110)
111: 상관 계수 저장부 112: 요청부
113: 인증 확인부 114: 제어부
115: 행렬 저장부 116: 신드롬 생성부
117: 피드백 요청부 118: 검증용 신드롬 생성부
119: 인증부 120: 전송부
130: 관리자 단말 140: 로봇 컨트롤러
150 ; 매니퓰레이터
111: 상관 계수 저장부 112: 요청부
113: 인증 확인부 114: 제어부
115: 행렬 저장부 116: 신드롬 생성부
117: 피드백 요청부 118: 검증용 신드롬 생성부
119: 인증부 120: 전송부
130: 관리자 단말 140: 로봇 컨트롤러
150 ; 매니퓰레이터
Claims (1)
- 매니퓰레이터의 작동을 제어하는 로봇 컨트롤러와 관리자 단말 사이에 산업용 PLC 기반의 공정 컨트롤러가 배치되고, 공정 컨트롤러에서 제품설정연산, 매니퓰레이터의 동작에 대한 위치연산, 동작순서 연산, 기동 및 정지 판별, 및 안전기준 판별을 수행하고, 관리자 단말에서 공정 컨트롤러로 작업 명령이 입력되면, 공정 컨트롤러가 연산을 통해 로봇 동작 지령을 로봇 컨트롤러로 전달하고, 로봇 컨트롤러가 로봇 동작 지령에 따라 매니퓰레이터의 동작을 제어하며, 매니퓰레이터의 동작에 따른 매니퓰레이터의 센서 신호가 공정 컨트롤러로 입력되어, 공정 컨트롤러가 매니퓰레이터의 동작 완료를 확인한 후, 다음 동작을 연산하고, 연산에 따른 동작 지령을 로봇 컨트롤러로 전달하게 되는 것을 특징으로 하는 산업용 적재로봇 제어 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190133362A KR20200144038A (ko) | 2019-10-25 | 2019-10-25 | 산업용 적재로봇 제어 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190133362A KR20200144038A (ko) | 2019-10-25 | 2019-10-25 | 산업용 적재로봇 제어 시스템 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190071859A Division KR102049957B1 (ko) | 2019-06-17 | 2019-06-17 | 산업용 적재로봇 제어 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20200144038A true KR20200144038A (ko) | 2020-12-28 |
Family
ID=74086893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190133362A KR20200144038A (ko) | 2019-10-25 | 2019-10-25 | 산업용 적재로봇 제어 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20200144038A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230014575A (ko) * | 2021-07-21 | 2023-01-30 | (주) 포원시스템 | 원단 로봇의 그리퍼 시스템 및 그립 제어방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101229911B1 (ko) | 2011-05-24 | 2013-02-05 | 주식회사 서보산전 | 로봇 암의 전체 동작을 제어하는 상위 제어기와 로봇암의 다관절 구동용 메인 컨트롤러 간의 통신 방법 |
KR20170100028A (ko) | 2015-02-05 | 2017-09-01 | 쿠카 로보테르 게엠베하 | 적어도 2개의 매니퓰레이터의 협력된 제어를 위한 매니퓰레이터 시스템 |
KR101798652B1 (ko) | 2009-05-29 | 2017-11-16 | 쿠카 레보라토리즈 게엠베하 | 매니퓰레이터를 제어하기 위한 방법 및 장치 |
-
2019
- 2019-10-25 KR KR1020190133362A patent/KR20200144038A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101798652B1 (ko) | 2009-05-29 | 2017-11-16 | 쿠카 레보라토리즈 게엠베하 | 매니퓰레이터를 제어하기 위한 방법 및 장치 |
KR101229911B1 (ko) | 2011-05-24 | 2013-02-05 | 주식회사 서보산전 | 로봇 암의 전체 동작을 제어하는 상위 제어기와 로봇암의 다관절 구동용 메인 컨트롤러 간의 통신 방법 |
KR20170100028A (ko) | 2015-02-05 | 2017-09-01 | 쿠카 로보테르 게엠베하 | 적어도 2개의 매니퓰레이터의 협력된 제어를 위한 매니퓰레이터 시스템 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230014575A (ko) * | 2021-07-21 | 2023-01-30 | (주) 포원시스템 | 원단 로봇의 그리퍼 시스템 및 그립 제어방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102163047B (zh) | 学习控制机器人 | |
US11000949B2 (en) | Robot for controlling learning in view of operation in production line, and method of controlling the same | |
JP5522926B2 (ja) | 工作機械の運転方法および装置 | |
CN101088071B (zh) | 用于电子设备的安全参数设置的方法和装置 | |
CN102245356B (zh) | 用于生产中优化用于组装的机器人的参数的方法和系统 | |
CN109648569B (zh) | 一种机器人交互协同方法及装置 | |
CN108572609B (zh) | 控制装置、记录媒体以及控制系统 | |
US7027880B2 (en) | Safety controller providing rapid recovery of safety program data | |
KR101132358B1 (ko) | 다중 피엘씨 시뮬레이션 시스템 | |
JP2009123209A6 (ja) | 工作機械の運転方法および装置 | |
KR102049957B1 (ko) | 산업용 적재로봇 제어 시스템 | |
KR102124312B1 (ko) | 컨트롤러 및 반송 시스템 | |
JP2022504328A (ja) | アドレス障害を検出するためのシステム、方法、及び装置 | |
US10095512B2 (en) | Program development support device, non-transitory storage medium storing thereon computer-readable program development support program, and program development support method | |
US20130053996A1 (en) | Method of programming recipe through gui and media recording the same | |
KR20200144038A (ko) | 산업용 적재로봇 제어 시스템 | |
US20200096962A1 (en) | Field Device and Method for Parameterizing the Field Device | |
JP2016505183A5 (ko) | ||
JP2010141654A (ja) | フィールド通信システムおよびフィールド通信方法 | |
CN113220345A (zh) | 一种指令块的处理方法、装置、设备及存储介质 | |
WO2021005691A1 (ja) | 制御装置、プログラム監視方法及びプログラム | |
WO2020136842A1 (ja) | データ収集装置、方法、及びプログラム | |
TW202414133A (zh) | 攜帶型操作裝置、機械系統及攜帶型操作裝置之記憶體控制程式 | |
KR101484911B1 (ko) | 안전성을 높인 로봇 제어 시스템 및 방법 | |
CN117331350A (zh) | 用于控制过程设施的装置和方法以及过程控制系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E601 | Decision to refuse application |