KR20230140536A - 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템 - Google Patents

산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템 Download PDF

Info

Publication number
KR20230140536A
KR20230140536A KR1020230038669A KR20230038669A KR20230140536A KR 20230140536 A KR20230140536 A KR 20230140536A KR 1020230038669 A KR1020230038669 A KR 1020230038669A KR 20230038669 A KR20230038669 A KR 20230038669A KR 20230140536 A KR20230140536 A KR 20230140536A
Authority
KR
South Korea
Prior art keywords
joint
robot
set point
control
robot arm
Prior art date
Application number
KR1020230038669A
Other languages
English (en)
Inventor
루크 졸리
Original Assignee
스또블리 파베르쥬
스또블리 파베르쥬
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 스또블리 파베르쥬, 스또블리 파베르쥬 filed Critical 스또블리 파베르쥬
Publication of KR20230140536A publication Critical patent/KR20230140536A/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/087Controls for manipulators by means of sensing devices, e.g. viewing or touching devices for sensing other physical parameters, e.g. electrical or chemical properties
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • B25J18/02Arms extensible
    • B25J18/04Arms extensible rotatable
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • B25J9/126Rotary actuators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • B25J18/007Arms the end effector rotating around a fixed point
    • 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/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • 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/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39194Compensation gravity
    • 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/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39322Force and position control
    • 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/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39338Impedance control, also mechanical
    • 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/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42123Position loop then force, current loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Manipulator (AREA)

Abstract

산업 로봇의 시스템 및 하이브리드 위치 힘 제어 프로세스
산업 로봇를 제어하는 본 프로세스는,
중앙 유닛에 의해 구현된 모듈에서, 타깃 궤적 및 동작 모드에 따라 관절력 및 속도를 정의하는 시간-종속 복합 설정점을 계산하는 단계(S104),
중앙 유닛에 의해 구현된 모듈에서, 계산된 복합 설정점이 적용되어야 하는 방향을 정의하는 로봇 아암의 원하는 거동을 설명하는 거동 행렬을 계산하는 단계(S106),
보조 유닛에 의해 구현된 모듈에서, 축 제어기 모듈을 제어하기 위한 관절력 설정점을 계산하는 단계(S108),
보조 유닛에 의해 구현된 축 제어기 모듈에서, 관절력 설정점에 따라 전력 유닛에 대한 제어 설정점을 계산하는 단계(S110)로 구성되는 단계들을 포함한다.

Description

산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템{SYSTEMS AND HYBRID POSITION FORCE CONTROL PROCESSES OF AN INDUSTRIAL ROBOT}
본 발명은 산업 로봇에 관한 것으로, 더욱 구체적으로 수동으로 안내될 수 있는 산업 로봇을 제어하기 위한 시스템 및 프로세스에 관한 것이다.
로봇 아암과 같은 산업 로봇은 작업자가 로봇에 직접 작용할 수 있는 작업자 직접 협업 애플리케이션에서 점점 더 많이 사용되고 있다. 이러한 것은 예를 들어, 특히 외과 애플리케이션 또는 특정 산업 제조 프로세스의 경우이다.
작업자는 예를 들어, 로봇 아암의 일부를 조작하고 이동시켜 로봇에 직접 작용한다. 이러한 모션은 로봇의 센서에 의해 검출된다. 이러한 피드백에 따라, 로봇 제어 시스템은 그에 따라 로봇 모터로 송신되는 설정점을 수정하여, 예를 들어, 작업자가 선택한 위치로 로봇 아암을 가져오거나 유지하거나, 작업자에 의해 로봇의 수동 움직임을 수반한다.
일반적으로, 로봇의 "수동" 안내 성능은 로봇이 이동될 수 있는 용이성(투명성), 작업자의 작용 하에서 탄성의 부재(강성) 그리고 로봇이 프로그래밍에 의해 또는 사용자에 의해 부과된 제한 위치에 도달할 때 평가되는 안정성과 같은 다양한 기준에 의해 측정될 수 있다.
현재 이용 가능하고 알려진 로봇 제어 솔루션 중 어느 것도 종종 조정하기 어려운 3개의 기준을 충족하는 결과를 달성할 수 없다.
실제로, 실시 중에, 만족스러운 강성과 투명성을 가진 로봇은 불충분한 안정성을 가질 것인데, 그 이유는 로봇이 작업자의 작용 하에 영향을 미치는 환경의 강성 요소와 접촉할 때 바운싱(bouncing)되기 때문이다.
따라서, 로봇이 적어도 부분적으로 수동으로 안내되어야 할 때 개선된 성능으로 안내를 사용하는 산업 로봇을 제어하기 위한 시스템 및 프로세스가 필요하다.
이를 위해, 본 발명은 산업 로봇용 제어 프로세스에 관한 것으로, 로봇은,
이동 축 주위 또는 이동 축을 따라 로봇 아암의 다른 부분에 대해 로봇 아암의 부분을 각각 이동시키는 경향이 있는 적어도 2개의 전기 액추에이터를 포함하는 다축(multi-axis) 로봇 아암으로서, 각각의 전기 액추에이터는 대응하는 액추에이터의 관절 위치를 측정하도록 구성된 센서와 연관되는, 다축 로봇 아암,
로봇 아암의 단부에 배치된 이펙터(effector),
로봇 제어 시스템을 포함하고, 로봇 제어 시스템은,
중앙 유닛,
전력 유닛을 제어하기 위해 설정점을 생성하는 경향이 있는 전류 제어 루프를 포함하는 축 제어기 모듈을 구현하는 전력 유닛을 제어하도록 구성된 보조 유닛,
전기 액추에이터에 적절한 전류를 공급하는 경향이 있는 전력 유닛,
전기 액추에이터와 연관된 센서로부터의 측정치를 수신 및 송신하도록 구성된 데이터 취득 인터페이스,
중앙 유닛, 보조 유닛 및 데이터 취득 인터페이스를 연결하고 데이터 버스를 포함하는 통신 링크를 포함하고,
제어 프로세스는,
중앙 유닛에 의해 구현된 모듈에서, 타깃 궤적 및 동작 모드에 따라 관절력 및 속도를 정의하는 시간-종속 복합 설정점을 계산하는 단계,
중앙 유닛에 의해 구현된 모듈에서, 계산된 복합 설정점이 적용되어야 하는 방향을 정의하는 로봇 아암의 원하는 거동을 설명하는 거동 행렬을 계산하는 단계,
보조 유닛에 의해 구현된 관절 임피던스 제어기 모듈에서, 상기 이전에 계산된 복합 설정점 및 상기 거동 행렬에 따라 축 제어기 모듈을 제어하기 위한 관절력 설정점을 계산하는 단계,
보조 유닛에 의해 구현된 축 제어기 모듈에서, 관절력 설정점에 따라 상기 전력 유닛에 대한 제어 설정점을 계산하는 단계를 포함한다.
일부 실시예에서, 전력 유닛은 상기 전기 액추에이터의 위상 전류를 측정하기 위한 센서를 포함하고, 제어 설정점의 계산은 전류 제어기 루프에 의해 구현되고, 상기 전기 액추에이터의 위상 전류의 측정치에 또한 의존한다.
일부 실시예에서, 관절력 설정점의 계산은 관절 위치에서 균일한 내부 상태의 시간 도함수의 계산을 포함하고, 이러한 계산은 상기 이전에 계산된 복합 설정점, 상기 거동 행렬, 측정된 관절 위치, 측정된 관절 위치로부터 도출된 관절 속도 및 내부 상태에 따라 수행된다.
일부 실시예에서, 축 제어기 모듈을 제어하기 위한 관절력 설정점은 관절 위치와 내부 상태 사이의 차이를 조정하는 제어 함수로부터 계산되고, 내부 상태는 내부 상태의 상기 시간 도함수를 적분함으로써 결정된다.
일부 실시예에서, 중앙 유닛은 제1 주파수로 복합 설정점 및 거동 행렬을 재계산하고, 보조 유닛은 제1 주파수보다 높은 제2 주파수로 축 제어기 모듈을 제어하기 위한 관절력 설정점을 재계산한다.
일부 실시예에서, 제2 주파수는 제1 주파수보다 2배 내지 20배 더 높고, 바람직하게는 제1 주파수보다 5배 내지 10배 더 높으며, 더 바람직하게는 제1 주파수보다 8배 더 높다.
일부 실시예에서, 보조 유닛은 500 Hz 내지 20 kHz, 바람직하게는 5 kHz 내지 12 kHz, 바람직하게는 8 kHz에서 선택된 주파수로 축 제어기 모듈을 제어하기 위한 관절력 설정점을 계산한다.
일부 실시예에서, 축 제어기 모듈은 관절력 설정점에 따라 전력 유닛에 대한 제어 설정점을 계산할 때 힘 센서에 의해 측정된 힘을 고려한다.
일부 실시예에서, 중앙 유닛은 이펙터의 중량을 계산하는 중력 보상기 및 관절 위치로부터 변환 행렬을 계산하는 카티션(Cartesian) 관절 변환기를 구현하고, 로봇 아암의 단부에 장착된 힘 센서에 의해 측정된 힘을 고려하기 위해 이펙터의 중량 및 변환 행렬을 축 제어기 모듈로 송신한다.
일부 실시예에서, 중앙 유닛은 이펙터의 중량을 계산하는 중력 보상기 및 관절 위치로부터 변환 행렬을 계산하는 카티션 관절 변환기를 구현하고, 로봇 아암의 단부에 장착된 힘 센서에 의해 측정된 힘을 고려하기 위해 이펙터의 중량 및 변환 행렬을 제1 주파수에서 축 제어기 모듈로 송신한다.
일부 실시예에서, 통신 링크는 중앙 유닛이 주기적으로 데이터 버스를 통해 통신 프레임을 송신하도록 구성되고, 축 제어기 모듈 및 힘 센서는 프레임의 통과 동안 데이터 프레임의 데이터를 판독 또는 추가하도록 구성되고, 데이터 프레임은 각각의 통신 사이틀의 끝에서 중앙 유닛으로 피드백된다.
다른 양태에 따르면, 본 발명은 산업 로봇용 제어 시스템에 관한 것으로, 로봇은,
이동 축 주위 또는 이동 축을 따라 로봇 아암의 다른 부분에 대해 로봇 아암의 부분을 각각 이동시키는 경향이 있는 적어도 2개의 전기 액추에이터를 포함하는 다축 로봇 아암으로서, 각각의 전기 액추에이터는 대응하는 액추에이터의 관절 위치를 측정하도록 구성된 센서와 연관되는, 다축 로봇 아암,
로봇 아암의 단부에 배치된 이펙터,
로봇 제어 시스템을 포함하고, 로봇 제어 시스템은,
중앙 유닛,
전력 유닛을 제어하기 위해 설정점을 생성하는 경향이 있는 전류 제어 루프를 포함하는 축 제어기 모듈을 구현하는 전력 유닛을 제어하도록 구성된 보조 유닛,
전기 액추에이터에 적절한 전류를 공급하는 경향이 있는 전력 유닛,
전기 액추에이터와 연관된 센서로부터의 측정치를 수신 및 송신하도록 구성된 데이터 취득 인터페이스,
중앙 유닛, 보조 유닛 및 데이터 취득 인터페이스를 연결하고 데이터 버스를 포함하는 통신 링크를 포함하고,
중앙 유닛은 타깃 궤적 및 선택된 동작 모드에 따라 관절력 및 속도를 정의하는 시간-종속 복합 설정점을 계산하고, 계산된 복합 설정점이 적용되어야 하는 방향을 정의하는 로봇 아암의 원하는 거동을 설명하는 거동 행렬을 계산하도록 구성된 모듈을 사용하고,
보조 유닛은 상기 이전에 계산된 복합 설정점 및 상기 거동 행렬에 따라 축 제어기 모듈을 제어하기 위한 관절력 설정점을 계산하도록 구성된 관절 임피던스 제어 모듈 및 관절력 설정점에 따라 전력 유닛을 제어하기 위한 설정점을 계산하도록 구성된 축 제어기 모듈을 사용한다.
다른 양태에 따르면, 본 발명은 이러한 제어 시스템을 포함하고, 설명된 제어 프로세스를 구현하도록 적응된 산업 로봇에 관한 것이다.
본 발명은 단지 예로서 주어지고 첨부된 도면을 참조하여 이루어진 이하의 설명에 비추어 더 잘 이해될 것이며 그의 다른 이점은 보다 명확하게 나타날 것이다.
도 1은 일 실시예에 따라 본 발명에 따른 산업 로봇을 구조적 블록으로 개략적으로 도시한다.
도 2는 도 1에 도시된 실시예에 따라 도 1에 도시된 산업 로봇의 기능 블록도이다.
도 3은 본 발명에 따른 제어 시스템을 예시하는 합성 블록도이다.
도 4는 로봇 유닛 사이의 데이터 통신을 예시하는 블록도이다.
도 5는 부하 및 속도 루프의 상세 사항을 도시하는 기능도이다.
도 6은 본 발명에 따른 산업 로봇을 제어하기 위한 프로세스를 개략적으로 도시한다.
도 1은 산업 로봇(2)의 예를 도시한다.
로봇(2)은 다축 로봇 아암(4)을 포함한다. 로봇 아암(4)은 회전 축에 대해 쌍으로 관절 연결된 예를 들어, 복수의 세그먼트를 포함한다.
로봇 아암(4)은 로봇 아암(4)의 단부에 배치되는 제어 가능한 도구와 같은 이펙터(6)를 포함할 수 있다.
로봇 아암(4)은 도 1에 도시된 예에서 M1, M2, M3, M4, M5 및 M6으로 표기된(그리고 이하 M1 내지 M6으로 표기) 복수의 전기 액추에이터를 포함한다. 각각의 전기 액추에이터는 회전 축 중 하나와 같은 이동 축 주위의 로봇 아암(4)의 다른 부분에 대해 로봇 아암(4)의 일부를 회전 또는 병진시키는 경향이 있다.
각각의 전기 액추에이터(M1 내지 M6)는 동기식 브러시리스 전기 모터 또는 임의의 다른 적절한 전기 모터와 같은 전기 모터를 포함한다.
로봇(2)은 도 1에 도시된 예에서 C1, C2, C3, C4, C5 및 C6으로 표기된(이하, C1 내지 C6으로 표기) 복수의 센서를 추가로 포함한다.
각각의 전기 액추에이터 M1 내지 M6은 센서 C1 내지 C6과 연관된다. 각각의 센서 C1 내지 C6은 전기 액추에이터의 관절 위치를 측정하도록 구성된다. 센서 C1 내지 C6은 예를 들어, 회전 인코더와 같은 각도 센서이다. 관절 위치는 예를 들어, 관절의 각도 위치에 대응한다.
바람직하게는, 로봇(2)은 6-축 로봇이다. 따라서, 로봇 아암(4)은 6 자유도를 갖고 6개의 전기 액추에이터 M1 내지 M6 및 6개의 센서 C1 내지 C6을 포함한다.
로봇(2)은 제어 시스템(8)을 추가로 포함한다.
도 1, 2 및 5에 도시된 실시예에서, 제어 시스템(8)은,
- 중앙 유닛(5),
- 보조 유닛(7) 및
- 6 개의 전력 유닛(15)을 포함한다.
본 설명에서 정의되는 바와 같이, "관절의(articular)"라는 용어는 로봇 아암(4)의 각각의 관절의 (각도) 위치 또는 로봇의 각각의 액추에이터 M1 내지 M6의 현재 (각도) 위치를 지칭한다. "관절력"이라는 표현은 로봇 아암의 각각의 관절 또는 각각의 액추에이터 M1 내지 M6 상에서 제어되는 힘을 지칭한다.
통상적으로, 공간 위치는 카티션(Cartesian) 공간 또는 관절 공간에서 정의되며, 여기서 로봇 아암의 각각의 관절의 관절 위치가 표현된다.
설명에서, "힘"이라는 용어는 기계적 힘 또는 토크를 지칭한다.
중앙 유닛(5)은 데이터 버스(18), 특히 필드 버스와 같은 데이터 링크를 통해 보조 유닛(7)과 통신한다.
실제로, 보조 유닛(7)은 전기 도전체(16)를 통해 액추에이터 M1 내지 M6에 적절한 전류를 전달하는 전력 유닛(15)에 전기적으로 연결된다.
전력 유닛(15)은 전원에 커플링된 제어 가능한 스위치를 포함하는 디바이스이며 전력 유닛 제어 설정점이라고 하는 스위치로부터의 제어 신호에 따라 모터 위상의 전류를 생성하는 경향이 있다. 디바이스는 모터의 위상 전류를 측정하기 위한 센서를 포함한다. 이러한 전류 측정치는 피드백을 통해 전력 유닛의 제어 가능한 스위치의 제어를 적응시키기 위해 제어 전류 루프(62)로 송신된다.
제어 시스템(8)은 전자 카드와 같은 데이터 취득 인터페이스(14)를 추가로 포함한다. 데이터 취득 인터페이스(14)는 센서 C1 내지 C6에 연결되고 센서 C1 내지 C6에 의해 측정된 데이터를 수신하도록 구성된다.
센서 C1 내지 C6은 예를 들어, EnDat 프로토콜 또는 동등한 프로토콜과 같은 산업용 통신 프로토콜과 호환되는 통신 링크에 의해 취득 인터페이스(14)에 연결된다.
데이터 취득 인터페이스(14)는 데이터 버스(18), 특히 필드 버스와 같은 데이터 링크에 의해 중앙 프로세싱 유닛(5) 및 보조 유닛(7)에 연결된다.
바람직하게는, 데이터 버스(18)는 EtherCAT(Ethernet for Control Automation Technology) 통신 프로토콜과 호환 가능하다.
제어 시스템(8)의 구성 요소는 유리하게는 제어 캐비넷에서 함께 그룹화될 수 있다. 대안적으로, 데이터 취득 인터페이스(14)는 액추에이터 M1 내지 M6 및 센서 C1 내지 C6과 같이 로봇 아암에 배치될 수 있다. 중앙 유닛(5), 보조 유닛(7) 및 전력 유닛(15)은 도 1에서 점선으로 도시된 제어 캐비넷(35)에 배치될 수 있다.
선택적으로, 로봇 아암(4) 사이에 배치된 다축 힘 센서(20)는 데이터 버스(18)를 통해 중앙 유닛(5) 및 보조 유닛(7)에 연결될 수 있다.
바람직하게는, 다축 힘 센서(20)는 로봇 아암(4)의 단부와 이펙터(6) 사이에 배치된다. 바람직하게는, 다축 힘 센서(20)는 적어도 6개의 측정 디바이스, 예를 들어, 테스트 몸체에 견고하게 부착된 피에조(piezo)-저항 스트레인 게이지로 구성된다. 정규 카티션 기준 시스템과 반드시 정렬되지는 않는 디바이스의 기하학적 배열은 동일하게 생성하는 측정의 선형 조합에 의해 완전한 스크류를 재구성하는 데 사용될 수 있다. 다축 힘 센서(20)는 다차원 외력 Fs를 제공하도록 구성된다.
그러나, 다양한 변형에서, 로봇 아암에 가해지는 외력은 액추에이터의 전류를 측정함으로써 결정될 수 있다. 다축 힘 센서(20)의 기능은 제어 시스템(8)에 의해 전자적으로 구현된 분석 모듈에 의해 대체될 수 있다.
데이터 버스(18)는 중앙 유닛(5), 보조 유닛(7), 데이터 취득 인터페이스(14) 및 다축 힘 센서(20)와 같은 상이한 장비가 동기화하여 또는 주기적으로 송신된 데이터 프레임을 순환시킴으로써 통신할 수 있게 한다.
바람직하게는, 통신은 일방향으로 수행되지만, 교차 통신을 가능하게 한다.
중앙 유닛(CPU)은 예를 들어, 데이터 버스 상에서 "마스터"로서의 역할을 하고 연결된 다른 장비는 "슬레이브"로서의 역할을 한다. "슬레이브" 장비는 각각의 데이터 프레임에 포함된 데이터를 판독하고 데이터 프레임의 통과 동안 데이터 프레임에 데이터를 추가할 수 있으며, 데이터 프레임은 각각의 통신 사이클의 끝에서 중앙 유닛으로 피드백된다.
도 4에 예시된 바와 같이, 중앙 프로세싱 유닛(5)은 데이터 취득 인터페이스(14)에 먼저 도달하는 데이터 프레임(30)을 송신한다. 데이터 취득 인터페이스(14)는 액추에이터 M1 내지 M6의 관절 위치 qr과 같은 데이터로 데이터 프레임(30)을 완성한다. 그 후, 데이터 프레임은 다축 힘 센서(20)에 도달한다. 다축 힘 센서(20)는 측정된 다차원 외력 Fs로 데이터 프레임을 완성한다. 그 후, 데이터 프레임(30)은 전기 액추에이터 M1 내지 M6의 관절 위치 qr 및 방금 데이터 프레임(30)에 기입된 측정된 다차원 외력 Fs를 판독할 수 있는 보조 유닛(7)에 도달한다. 그 후, 데이터 프레임(30)은 전기 액추에이터 M1 내지 M6의 관절 위치 qr 및 측정된 다차원 외력 Fs를 판독할 수 있는 중앙 유닛(5)에 도달한다.
변형에서, 중앙 프로세싱 유닛(5)은 상이한 주파수에서 주기적 통신을 구현할 수 있다. 높은 주파수로 송신되는 특정 데이터 프레임(30)은 전기 액추에이터 M1 내지 M6의 관절 위치 qr을 전달하는 데 전용될 수 있는 반면, 낮은 주파수로 송신되는 특정 데이터 프레임(30)은 측정된 다차원 외력 Fs를 전달하는 데 전용될 수 있다. 따라서, 개시점 및 종점으로서 본원에서 중앙 프로세싱 유닛(5)인 "마스터" 노드를 갖는 통신 루프가 형성된다.
EtherCAT(EtherCAT Automation Protocol) 프로토콜은 중앙 유닛(5), 데이터 취득 인터페이스(14), 다축 힘 센서(20) 및 보조 유닛(7)을 연속적으로 연결하는 통신 루프를 따라 데이터 프레임이 이동하는 단방향 통신을 구현하는 데 사용될 수 있다. 또한, EtherCAT 프로토콜은 교차 통신을 허용하며, 즉, 슬레이브가 통신 루프에서 동일한 것 뒤에 배치된 다른 슬레이브에 의해 동일한 통신 주기에서 판독될 데이터를 송신할 수 있는 가능성을 허용한다.
변형에서, 중앙 유닛(5), 보조 유닛(7), 데이터 취득 인터페이스(14) 및 다축 힘 센서(20)는 상이한 데이터 버스를 통해 쌍으로 통신할 수 있다. 보다 구체적으로, 다축 힘 센서(20)는 이하에서 더 상세히 설명되는 축 제어기 모듈(12)과 직접 통신할 수 있다. 즉, 중앙 유닛(5), 보조 유닛(7) 및 데이터 취득 인터페이스(14)를 연결하는 통신 링크는 상이한 특성의 복수의 데이터 버스를 포함할 수 있다.
도 3은 로봇(2)이 제어 시스템(8)에 의해 제어되는 방식을 특정한다. 도 3에서, 로봇(2)의 제어 기능은 단순화된 블록도(40)에 의해 표현되며, 본 발명의 이해에 필수적인 기능만이 예시되고 상세히 설명된다.
제어 시스템(8)은 애플리케이션 프로그램 실행 모듈(모듈(42)), 궤적 생성기(모듈(44)) 및 임피던스 관리자(모듈(46))를 구현한다.
애플리케이션 프로그램 실행 모듈(42)은 예를 들어, 비동기식 제어의 형태로 궤적 생성기(44)에 명령을 어드레싱한다.
애플리케이션 프로그램 실행 모듈(42)은 또한 임피던스 관리자(46)에 대한 적절한 동작 모드를 선택하기 위해 사용될 수 있다. 위치 제어 하의 동작 모드, 예를 들어, 힘 제어 하의 동작 모드, 또는 힘 제어 및 위치 제어를 혼합한 하이브리드 동작 모드 또는 임피던스 제어 하의 동작 모드가 선택될 수 있다.
애플리케이션 프로그램 실행 모듈(42)은 또한 상태 정보를 사용자에게 반환할 수 있다.
궤적 생성기(44)는 높은-레벨의 명령(예를 들어, 공간에서 주어진 목적지까지 직선으로 이동하라는 명령)을 수신하고, 예를 들어, 로봇 아암(4)과 연관된 카이네매틱(kinematic) 모델을 적용하고, 적절한 경우 감속 기어 및 임의의 기계적 커플링과 같은 기계적 제약을 고려함으로써 명령을 연속적인 관절 또는 카티션 위치로 변환한다.
궤적 생성기(44)는 또한 유사한 방식으로 (한 값에서 다른 값으로 점진적으로 변화하는 주어진 방향에서의 힘과 같은) 힘 궤적을 생성할 수 있다. 바람직하게는, 위치와 힘 궤적은 동기화된다.
임피던스 관리자(46)는 로봇에 정의된 거동을 제공하기 위해, 예를 들어, 카티션 공간에서의 궤적을 따르기 위해 관절 제어를 생성한다.
이러한 제어는 바람직하게는 애플리케이션 프로그램 실행 모듈(42)에 의해 공급되는 동작 모드 정보를 사용하여 생성되지만, 무엇보다도 또한 (위치 및 속도와 같은) 이동 설정점 및/또는 동기식 힘 설정점에 따라, 그리고 이하 더욱 상세하게 설명되는 qmv로 표기되는 수량에 따라 생성된다.
임피던스 관리자(46)에 의해 생성된 관절 제어는 "u"로 표기되는 복합 힘 및/또는 속도 설정점 및 Y로 표기되는 거동 행렬을 포함한다. Y는 예를 들어, n 차원의 정사각 행렬이고 u는 n 차원의 벡터이며, n은 로봇의 모터 개수이다. 거동 행렬 Y는 복합 설정점 u가 적용되어야 하는 방향을 정의하는 로봇 아암의 원하는 거동을 설명한다. 거동 행렬의 계수는 시간-종속 함수일 수 있다. 마찬가지로, 복합 설정점 u는 시간에 따를 수 있다.
변형에서, 복합 설정점 u는 2개의 별개의 변수로 분리될 수 있으며, 한편으로는 속도 설정점이고 다른 한편으로는 힘 설정점이다. 그러나, 동일한 것을 단일 변수로 그룹화하는 것은 물리적 구현에서 구성 요소 간의 데이터 교환을 제한한다.
본 설명에서, "임피던스"라는 용어는 로봇 아암(4)의 기계적 임피던스를 지칭한다. 사실, 제어 방법의 목적 중 하나는 로봇 아암(4)이 외부 힘을 받을 때, 예를 들어, 로봇 아암이 장애물을 만나거나 사용자가 (예를 들어, 로봇을 수동으로 안내하기 위해) 로봇 아암에 수동 힘을 가할 때 로봇 아암(4)의 거동 및 반응을 제어하는 것이다.
로봇의 기계적 임피던스는 외부의 기계적 힘에 대한 로봇 아암(4)의 반응을 특징화한다. 제로(또는 거의 제로) 임피던스는 로봇에 힘을 가하려고 시도하는 즉시 로봇이 자유롭게 움직이는 것을 의미한다. 무한(또는 매우 큰) 임피던스는 인가된 외력에 관계없이 로봇 아암이 정지 상태를 유지함을 의미한다. 로봇의 임피던스는 예를 들어, 특정 방향에서는 매우 높은 임피던스를 선택하고 다른 방향에서는 낮은 임피던스를 선택함으로써, 공간에서의 상이한 방향에 대해 상이하게 선택될 수 있다.
일반적으로, 로봇의 제어 시스템(8)은 타깃 궤적 및 선택된 동작 모드에 따라 관절력 및 속도를 정의하는 시간-종속 복합 설정점 u를 계산하고, 계산된 복합 설정점 u가 적용되어야 하는 방향을 정의하는 로봇 아암의 원하는 거동을 설명하는 거동 행렬 Y를 계산하도록 구성된다. 이러한 계산은 주기적으로 반복될 수 있다.
제어 시스템은 복합 설정점 u 및 임피던스 관리자(46)에 의해 생성된 거동 행렬 Y뿐만 아니라 센서 C1 내지 C6으로부터 획득된 로봇의 관절 위치 및 속도(각각 qr로 표기)를 수신하는 관절 임피던스 제어기(모듈(48))를 추가로 포함한다.
이러한 정보에 기초하여, 관절 임피던스 제어기(48)는 로봇이 임피던스 관리자에 의해 생성된 거동 행렬 Y 및 복합 설정점 u에 의해 정의된 거동을 따르도록 관절력 설정점("τ"로 표기)을 생성하도록 구성된다. 또한, 관절 임피던스 제어기(48)는 계산 목적으로 사용될 내부 및 가상 관절 위치 설정점에 비교될 수 있는 내부 상태에 대응하는 수량 qmv를 생성 및/또는 업데이트한다.
제어 시스템(8)은 최종적으로 축 제어기 모듈(12)을 포함한다.
축 제어기 모듈(12)은 인가된 힘이 관절 임피던스 제어기(48)로부터 수신된 관절력 설정점 τ를 따르도록 액추에이터를 제어하는 하나 또는 복수의 제어 루프를 구현한다. 축 제어기 모듈(12)은 힘 및 속도 제어를 제공하고 로봇(4) 및 이펙터(6)의 중력 보상을 고려할 수 있는 전류 루프 제어 설정점 τcmd를 생성하는 힘 및 속도 루프(61)를 포함한다. 관절 속도 은 예를 들어, 로봇의 위치 qr의 수치 미분에 의해 획득된다. 실제로, 로봇의 위치 및 관절 속도(qr 및 )뿐만 아니라 모든 관절력은 상이한 관절 또는 액추에이터에 대응하는 계수의 벡터 형태를 가질 수 있다.
요약하면, 로봇 제어 시스템은 관절 위치에서 균일한 내부 상태 qmv의 시간 도함수 및 축 제어기 모듈을 제어하기 위한 관절력 설정점 τ를 계산하도록 구성되며, 이러한 계산은 이전에 계산된 상기 복합 설정점 u, 상기 거동 행렬 Y, 상기 측정된 관절 위치 qr, 측정된 관절 위치 qr로부터 도출된 관절 속도 및 내부 상태 qmv에 따라 수행된다.
로봇(2)은 사용자로부터 오는 제어 및 명령을 취득하고 로봇(2)의 내부 상태 및/또는 동작 파라미터에 대한 정보와 같은 정보를 사용자에게 표시하거나 송신하기 위한 인간-기계 인터페이스(HMI: human-machine interface)(52)를 유리하게 포함한다.
로봇의 제어 시스템(8)은 모듈(42, 44, 46 및 48)의 기능을 통합하는 계산 모듈(10)을 구현한다. 계산 모듈(10)은 축 제어기 모듈(12)을 제어하기 위한 관절력 설정점 τ를 생성하는 경향이 있다. 축 제어기 모듈(12)은 모터 M1 내지 M6에 적절한 전류를 전달하는 전력 유닛(15)에 대한 제어 설정점을 생성하는 경향이 있다.
도 2는 계산 모듈(10) 및 축 제어기 모듈(12)이 구현되는 방식을 설명한다. 중앙 유닛(5) 및 보조 유닛(7)은 각각 프로그래밍 가능한 마이크로제어기 또는 마이크로프로세서와 같은 적어도 하나의 프로세서를 포함하며, 이는 명령이 프로세서에 의해 실행될 때 로봇을 제어하기 위한 프로세스를 구현하도록 의도된 실행 가능한 명령 및/또는 소프트웨어 코드를 포함하는 컴퓨터 메모리에 커플링된다.
중앙 프로세싱 유닛(5)은 모듈(42, 44 및 46)의 기능을 동작시키는 경향이 있다. 중앙 프로세싱 유닛(5)은 데이터 버스(18)를 통해 복합 설정점 u 및 거동 행렬 Y를 통해 보조 유닛(7)과 통신한다.
보조 유닛(7)은 모듈(48)의 기능, 즉, 관절력 설정점 τ를 계산하고 이를 힘 및 속도 제어 루프(61) 및 전류 제어 루프(62)를 구현하는 축 제어기 모듈(12)로 송신하는 관절 임피던스 제어기의 기능을 동작시키는 경향이 있다.
보조 유닛(7)은 또한 축 제어기 모듈(12)의 기능을 동작시키는 경향이 있으며, 즉, 보조 유닛(7)은 축 제어기 모듈(12)을 구현하므로 힘 및 속도 제어 루프(61) 및 전류 제어 루프(62)를 구현한다. 보조 유닛(7)은 6개의 전력 유닛(15)에 연결되어 전력 유닛 제어 설정점을 6개의 전력 유닛(15)에 송신한다. 도 2의 명확성을 위해, 6개의 전력 유닛 중 2개만이 도시되어 있다.
관절력 서보(servo)-제어는 더 이상 상세하게 설명되지 않은 공지된 일반적인 제어 전략에 따라 축 제어기 모듈(12)에 의해 구현될 수 있으며, 본질적인 것은 로봇의 각각의 관절에 가해지는 힘이 계산된 관절력 설정점 τ를 잘 준수한다는 것이다.
실제로, 액추에이터 M1 내지 M6 각각의 전류 서보-제어에 기초하여 로봇의 힘 서보-제어를 사용하는 것이 유리하게 가능하며, 전류 서보-제어는 액추에이터 M1 내지 M6과 연관된 센서 C1 내지 C6으로부터의 각도 위치 정보 및 전력 유닛(15)의 전류의 측정치에 따라 각각의 액추에이터 M1 내지 M6에 대해 전류 루프(62)에 의해 수행된다.
많은 경우에, 힘 및 속도 루프(61)에 의해 제공되는 힘 서보-제어는 로봇 아암의 중력 및 마찰을 보상하는 것을 목적으로 하는 보정을 추가로 포함할 수 있으며, 마찰에 대한 보정은 관절에 대해 결정된 회전 속도로부터 각각의 관절에 대해 계산되고, 중력은 로봇 아암(4)의 동적 모델 및 관절 위치로부터 각각의 관절에 대해 계산된다.
특정 경우에, 다축 힘 센서(20)가 사용될 때, 다축 힘 센서(20)에 의해 측정된 힘 및/또는 토크에 따라 서보-제어 전략에 대한 보정이 이루어진다. 다축 힘 센서가 로봇 아암의 단부에 장착되는지 여부에 따라 또는 복수의 힘 센서가 로봇 아암(4)의 각각의 관절과 연관되는지 여부에 따라 상이한 보정 전략이 구현될 수 있다.
다축 힘 센서(20)가 로봇 아암의 단부와 이펙터(6) 사이에 배치되면, 계산 모듈(10)은 이펙터의 중량 Fg를 계산하는 중력 보상기(43)를 포함한다. 이펙터의 중량 Fg는 다축 힘 센서(20)의 기준 프레임에 표현된 이펙터(6)의 무게의 힘 스크류를 나타내는 벡터이다. 동일한 것이 로봇이 가진 도구의 파라미터(질량, 무게 중심 위치), 로봇 아암의 기하학적 모델 및 측정된 관절 위치 qr로부터 계산된다. 이펙터의 중량 Fg는 제어에서 이펙터의 중량을 고려하지 않고 이펙터(6)에 가해진 힘만을 고려하기 위해 힘 및 속도 루프(61)에서 다축 힘 센서(20)의 측정치에서 감산된다. 계산 모듈(10)은 변환 행렬 Tf를 계산하는 관절 카티션 변환기(47)를 추가로 포함한다. 관절 변환 행렬 Tf는 카티션 공간에서 표현되는 다차원 외력 Fs를 관절 공간에서 표현되는 데이터로 변환하는 행렬이다. 이며, 여기서 Jf는 다축 힘 센서(20) 중심의 카티션 속도를 로봇(2)의 관절 속도에 연결하는 로봇의 야코비안(Jacobian) 행렬이고 Tc는 로봇 베이스의 좌표계에서 동일한 것을 표현하기 위해 힘 센서의 좌표에 초기에 표현되는 다축 힘 센서(20)의 측정치를 변환하는 데 사용되는 행렬이다. Jf 및 Tc는 관절 위치 qr로부터 계산된다.
관절 변환 행렬 Tf와 이펙터의 중량 Fg는 힘 및 속도 루프(61)로 송신된다.
선택된 실시예에서 그리고 도 4에 예시된 바와 같이, 관절 변환 행렬 Tf 및 이펙터의 중량 Fg는 중력 보상기(43) 및 관절 카티션 변환기(47)를 구현하는 중앙 유닛(5)으로부터 오는 데이터 프레임(30)을 통해 힘 및 속도 루프(61)로 송신된다. 힘 및 속도 루프(61)는 보조 유닛(7)에 의해 구현된다.
전류 루프 제어 설정점 τcmd의 계산에서, 힘 및 속도 루프(61)는 이하의 공식에서 주어지는 바와 같이 동일한 것을 관절 영역으로 변환하기 위해 이펙터 중량을 무시하고 변환 행렬 Tf를 결과에 적용하기 위해 다차원 외력 Fs로부터 이펙터 중량 Fg를 감산한다.
[수학식 1]
대안적으로, 힘 및 속도 루프(61)는 먼저 관절 변환 행렬 Tf를 이펙터 중량 Fg 및 다차원 외력 Fs에 적용한 다음 감산을 수행할 수 있다.
도 5에 예시된 유리한 구현에 따르면, 다축 힘 센서(20)의 존재 하에 관절력 설정점 τ의 보정은 로봇 아암(4)에 제공된 관절력 설정점을 보정하는, 각각 Gf 및 Gv로 표기되는 2개의 힘 및 속도 보정기와 중력에 대한 보상을 연관시킴으로써 수행될 수 있다. 힘 보정기 Gf는 예를 들어, 적분 제어기이며, 속도 보정기 Gv는 비례 제어기이다.
본 발명의 선택된 실시예에서, 중력 보상기(43) 및 관절 카티션 변환기(47)는 중앙 유닛(5)에서 구현된다. 관절 변환 행렬 Tf 및 이펙터의 중량 Fg는 링크 버스(18)에 의해 보조 유닛(7)에서 구현되는 힘 및 속도 루프(61)로 송신된다.
이러한 구현은 보조 유닛(7)에서 구현되는 모든 계산이 관절 좌표에서 수행될 수 있도록 하기 때문에 유리하다. 이러한 계산은 (모듈(43, 47 및 46)에서 이루어진 계산과 달리) 상대적으로 간단하다. 이러한 방식으로, 임피던스 제어기(48)와 힘 및 속도 루프(61)는 더 높은 주파수에서 계산될 수 있다. 또한, 많은 알려진 솔루션은 중앙 유닛이 위치, 속도 또는 액추에이터를 제어하도록 의도된 힘 설정점을 계산하도록 힘 센서(20)에 의해 측정된 힘이 중앙 유닛으로 반환될 것을 필요로 하여, 힘 제어 루프에서 더 많은 지연으로 이어지고, 이는 로봇이 적어도 부분적으로 수동으로 안내되어야 할 때 더 낮은 정확도와 더 낮은 성능을 초래한다.
도 3에서 볼 수 있는 바와 같이, 관절 임피던스 제어기(48)는 해상도 모듈(70) 및 디스플레이 모듈(64)을 포함한다. 해상도 모듈(70)은 관절력 설정점 τ를 계산하고 계산된 관절력 설정점 τ를 축 제어기 모듈(12)로 송신하도록 구성된다. 이러한 계산은 이전에 계산된 복합 설정점 u, 이전에 계산된 거동 행렬 Y, 측정된 관절 위치 qr, 측정된 관절 위치 qr로부터 도출된 관절 속도 및 이전에 계산된 내부 상태 qmv에 따라 수행된다.
특히, 축 제어기 모듈(12)을 제어하는 데 사용되는 관절력 설정점 τ는 (관절 임피던스 제어기(48)를 참조하여 이전에 정의된) 내부 상태 qmv와 관절 위치 qr 사이의 차이를 제어하는 제어 함수로부터 계산된다.
해상도 모듈(70)은 이전에 계산된 복합 설정점 u, 이전에 계산된 거동 행렬 Y, 관절 위치 qr, 관절 속도 및 이전에 계산된 내부 상태 qmv에 따라 내부 상태의 도함수 를 계산한다.
적분 모듈(64)은 내부 상태의 시간 도함수 를 적분함으로써 내부 상태 qmv를 결정한다. 해상도 모듈(70)은 예를 들어, 이전 계산 사이클에서 이미 알려져 있고 메모리에 저장된 시간 도함수 의 값을 사용한다.
바람직하게는, 제어 기능은 비례-적분-미분 제어기(PID 제어기)이다.
유리하게는, 관절력 설정점 τ 및 내부 상태의 시간 도함수 는 이하의 미분 식의 시스템의 해이다.
[수학식 2]
여기서 qmv는 상기 내부 상태에 대응하는 함수이고, 는 내부 상태의 시간 도함수이고, τ는 여기에서 벡터의 형태로 제시되는 관절력 설정점이며, Y는 거동 행렬이고 u는 상기 힘 또는 위치 설정점이다.
식에서, Kp, Ki 및 Kd는 이득 행렬이다. 실제로, 이득 Kp, Ki 및 Kd는 PID 제어기의 파라미터를 설정하는 데 사용되는 이득이다. Kp, Ki 및 Kd는 예를 들어, 각각 비례, 적분 및 미분 이득에 대응한다. Kp와 Ki는 적절한 경우 제로 행렬이 될 수 있다.
이러한 시스템에서, 예를 들어, 제2 식은 위치 qmv 상의 로봇의 관절 위치 qr의 비례 적분 미분(PID) 서보-제어를 수행한다. 제1 식은 내부 상태 qmv로 표현되는 가상 위치의 변화를 정의한다.
구현의 제1 예에 따르면, 관절 임피던스 제어는 이하의 식의 시스템을 충족하는 제어기에 의해 수행될 수 있다.
[수학식 3]
여기서 γ는 거동 행렬 Y를 계산하는 데 사용되는 중간 변수이며, 중간 변수 γ는 내부 상태 qmv, 관절 위치 qr 및 관절 속도 로부터 계산된다.
임피던스 제어기의 제1 구현은 거동 행렬 Y가 대칭이기 때문에 일부 계수만 데이터 버스(18) 상에서 송신될 필요가 있으므로 특히 유리하며, 이는 통신 시간을 추가로 감소시킨다.
제2 구현 예에 따르면, 관절 임피던스 제어는 이하의 식의 시스템을 충족하는 제어기에 의해 수행될 수 있다.
[수학식 4]
여기서 γ는 위에서 설명한 중간 변수이고 P는 거동 행렬 Y와 유사한 거동 행렬이며, 행렬 P는 이하의 공식에 의해 거동 행렬 Y로부터 정의된다.
[수학식 5]
여기서 "I"는 항등 행렬을 나타낸다.
임피던스 제어기의 양쪽 구현에서, PID 서보-제어 이외의 다른 유형의 서보-제어를 사용할 수 있다. 예를 들어, 중간 변수 γ는 이하와 같이 정의될 수 있으며, 이는 관절 위치 qr과 내부 상태 qmv 사이의 차이에 대한 디지털 필터 ef의 적용에 대응한다.
[수학식 6]
여기서 필터는 이하의 공식으로 주어진다.
[수학식 7]
여기서 F(p)는 라플라스(Laplace) 변환을 나타내고 "p"는 라플라스 변수이다.
이제 로봇(2)의 상이한 동작 모드에서 관절 임피던스 제어의 동작 예가 설명될 것이다.
제1 동작 모드에서, 로봇(2)은 위치 제어하에 동작한다. 로봇 아암(4)은 위치에 대해 서보-제어되며, 로봇 아암(4)에 가해지는 외력과는 독립적으로 생성된(예를 들어, 모듈(44)에 의해 생성된) 관절 궤적을 따라야 한다. 궤적은 예를 들어, 시간 종속 관절 위치 qd 및 그 도함수 에 의해 정의된다.
이러한 경우에, 임피던스 관리자(48)는 제로 거동 행렬 Y를 정의한다. 즉, 거동 행렬 Y의 계수는 모두 제로이다. 대안적으로, 위의 내용은 위에서 설명한 임피던스 제어기의 두 번째 구현에서 P를 항등 행렬과 동일하게 정의하는 것에 해당한다.
임피던스 관리자(48)는 또한 복합 설정점 u가 이하의 형태를 갖도록 요구한다.
[수학식 8]
여기서, 파라미터 T는 엄격하게 양의 값을 갖는 시간 상수이다.
이 경우, 제어 시스템이 충족되는 미분 식의 시스템은 이하와 같이 재작성될 수 있다.
[수학식 9]
이에 의해, 각도 위치 qr은 가상 위치 qmv에 의해 서보-제어되고 그 지속 시간이 시간 상수 T에 의해 결정되는 천이 상황 후에, 그리고 이득 Kp, Ki 및 Kd에 대해 선택된 값에 따르는 정확도로 관절 위치 qd에 의해 정의된 궤적을 따를 것이다.
내부 상태 qmv는 모든 관절 방향에서 복합 설정점 u에서 정의된 속도 설정점을 따른다.
제2 동작 모드에서, 로봇(2)은 수동 제어 하에 동작한다. 예를 들어, 로봇이 궤적 생성기(44)에 의해 제공된 사전 결정된 관절 설정점 τd를 따르도록 로봇의 관절력을 제어하는 것이 바람직할 수 있다. 설정점이 로봇의 어느 지점에 가해지는 힘 스크류 fd에 의해 특정되면, 등가 관절 설정점은 이하의 공식에 의해 주어진다.
[수학식 10]
여기서 J는 힘의 인가 지점에 대응하는 로봇의 야코비안 행렬을 표기하고, 지수 "T"는 행렬의 전치를 표기한다.
예를 들어, 사용자가 간단한 수동 움직임으로 로봇 아암을 완전히 제어할 수 있도록 로봇 아암을 자유롭게 두기를 원할 때, 이러한 동작 모드는 유용하다.
이러한 경우에, 임피던스 관리자(46)는 거동 행렬 Y = Kd -1(또는 등가적으로, 임피던스 제어기의 제2 구현에 대해 P = 0) 및 복합 설정점 u = Kd -1τd를 정의한다. 제어 시스템에 의해 충족되는 미분 식의 시스템은 이하와 같이 재작성될 수 있다.
[수학식 11]
실제로, 제1 식은 사전 결정된 관절 설정점 τd가 일정할 때 가상 각도 위치 qmv와 각도 위치 qr 사이의 차이가 0을 향해 수렴한다는 것을 말한다.
실제로, PID 제어기의 이득은 미리 결정된 관절 설정점 τd가 일정하지 않은 경우에도 내부 상태 qmv가 실제 각도 위치 qr과 같다고 근사하기에 충분히 높은 값을 갖는다. 즉, 내부 상태 qmv는 모든 관절 방향에서 로봇 아암(4)의 측정된 관절 위치 qr을 따른다.
제2 식은 로봇 아암(4)으로 송신된 관절력 설정점이 로봇 아암(4)의 위치와 독립적으로 사전 결정된 관절 설정점 τd에 대응함을 나타낸다.
제3 동작 모드에서, 로봇(2)은 힘 제어와 위치 제어 모두를 결합한 하이브리드 모드에서 동작한다. 로봇 아암(4)은 특정 방향으로 제어된 힘을 가하는 동안 사전 정의된 궤적을 따라야 한다.
이러한 동작 모드는 사전 정의된 궤적을 따르면서 손으로("핸드가이딩(handguiding)") 로봇 아암을 안내할 수 있기를 원하는 경우 유용하다. 특히, 이러한 방식으로, 예를 들어,
- 병진 또는 회전에서 로봇 아암(4)의 수동 안내만을 허가함으로써,
- 또는 로봇 아암의 세그먼트의 관절을 해제하면서 고정된 위치에서 로봇 아암(4)의 단부를 잠그는 것에 의해,
- 또는 대안적으로 로봇 아암(4)의 단부를 자유롭게 두지만 로봇 아암(4)의 관절의 전부 또는 일부를 잠금으로써,
로봇 아암(4)의 특정 자유도를 잠그는 것이 가능하다.
이러한 잠금을 수행하기 위해, 액추에이터 M1 내지 M6의 전부 또는 일부는 사용자가 가하는 수동력에 반대되는 힘을 가한다.
이러한 동작 모드는 또한 로봇이 로봇 아암(4)에 의해 운반되는 이펙터(6)에 의해 기계 부품을 성형하기 위한 산업 프로세스에서 사용될 때 유용할 수 있으며, 그 동안 이펙터(6)는 예를 들어, 부품의 샌딩(sanding), 디버링(deburring), 조립 또는 윤곽선 따라가기 및 많은 다른 예에서 기계 부품과 직접 접촉하게 된다.
마지막으로, 이러한 동작 모드는 로봇 아암이 힘 피드백으로 원격으로 제어될 때 또는 예를 들어, 기계 부품의 제조 프로세스 동안 복수의 산업 로봇이 동일한 물체를 조작하기 위해 협력해야 할 때 유용할 수 있다.
하이브리드 동작 모드의 제1 예는 "볼 조인트(ball joint)" 제약이 있는 동작과 관련될 수 있으며, 여기서 로봇의 단부는 주어진 지점 (xd, yd, zd)에 유지되고 배향은 자유로운 것이 바람직하다. 또한, 로봇의 단부의 배향을 자유롭게 움직일 수 있는 것이 바람직하므로 회전점 주위의 모멘트 (mx, my, mz)가 0으로 유지되어야 한다.
이러한 경우에, 임피던스 관리자(46)는 이하와 같이 복합 설정점 u 및 거동 행렬 Y를 계산한다.
[수학식 12]
여기서 Jmv는 내부 상태 qmv로부터 계산된 로봇의 야코비안 행렬이고 는 내부 상태에 대응하는 카티션 위치이다.
내부 상태 qmv는 거동 행렬 Y에 의해 정의된 모든 힘-제어 방향, 즉, 로봇의 단부의 배향 변화에 대응하는 방향을 따라 측정된 관절 위치 qr을 따른다. 반면, 내부 상태 qmv는 거동 행렬 Y에 의해 정의된 속도-제어 방향, 즉, 로봇 단부의 병진에 대응하는 방향으로 복합 설정점 u에 정의된 속도 설정점을 따른다.
하이브리드 동작 모드의 제2 예가 이제 설명될 것이다. 이러한 동작 모드에서, 로봇은 고정된 배향으로 평면 (x,y)의 궤적을 따른다. (x,y) 평면에 직교하는 z 방향을 따라, 로봇은 시간-종속적인 힘을 가한다. 이러한 하이브리드 동작 모드는 예를 들어, 완전 자동 동작에서 예를 들어, 표면 샌딩을 위해 유용할 수 있다.
제2 하이브리드 동작 모드에서, 궤적 생성기(44)는 평면(x,y)에서 원하는 궤적을 정의하는 설정점 xd(t) 및 yd(t)뿐만 아니라 방향 z를 따른 원하는 힘의 값 fz,d(t)도 생성하고, 이를 임피던스 관리자(46)로 송신한다.
임피던스 관리자(46)는 이하와 같이 거동 행렬 Y 및 복합 설정점 u를 계산한다.
[수학식 13]
여기서 Jmv는 내부 상태로부터 계산된 로봇의 야코비안 행렬을 나타내고, qmv, x(qmv) 및 y(qmv)는 내부 상태 qmv에 대응하는 터미널 구성 요소의 카티션 위치의 (x,y) 평면 좌표이고, rx(qmv), ry(qmv), rz(qmv)는 내부 qmv에 대응하는 터미널 구성 요소의 각도 좌표를 나타낸다.
내부 상태 qmv는 거동 행렬 Y에 의해 정의된 모든 힘-제어 방향을 따라, 즉, 방향 z에 대응하는 관절 방향을 따라 측정된 관절 위치 qr을 따른다. 한편, 내부 상태 qmv는 거동 행렬 Y에 의해 정의된 속도-제어 방향, 즉, 모든 다른 관절 방향에서 복합 설정점 u에 정의된 속도 설정점을 따른다.
설명된 3개의 동작 모드에서, 내부 상태 qmv는 거동 행렬 Y에 의해 정의된 힘-제어 방향을 따라 측정된 관절 위치 qr을 따르고, 거동 행렬 Y에 의해 정의된 속도-제어 방향을 따라 복합 설정점 u에서 정의된 속도 설정점을 따른다.
제4 "임피던스 제어" 동작 모드에서, 로봇은 마치 로봇이 스프링 Kcart 및 댐퍼 Bcart에 의해 궤적 pd를 따라 지점에 연결된 것처럼 거동해야 한다. 벡터 pd는 궤적의 카티션 좌표(위치 및 배향)를 포함한다. 연관된 속도는 vd로 표기된다.
이러한 경우에, 임피던스 관리자(46)는 이하와 같이 거동 행렬 Y 및 복합 설정점 u를 정의한다.
[수학식 14]
여기서 pmv는 내부 상태 qmv와 로봇의 기하학적 모델로부터 계산된 카티션 좌표(위치 및 배향)의 벡터이다. 예를 들어 스프링 Kcart 및 댐퍼 Bcart의 특성이 여기에서 행렬 형태로 제공된다.
설명된 모든 동작 모드에 대해, 임피던스 관리자(46)는 애플리케이션 프로그램 실행 모듈(42) 및 궤적 생성기(44)로부터 수신된 제어에 따라 거동 행렬 Y 및 복합 설정점 u를 생성한다.
도 1, 도 2 및 도 3으로 돌아가서, 제어 시스템(8)에 의한 임피던스 제어 구현의 양태가 이제 설명될 것이다.
상술한 바와 같이, 애플리케이션 프로그램 실행 모듈(42), 궤적 생성기(44) 및 임피던스 관리자(46)는 중앙 유닛(5)에 의해 유리하게 구현된다.
관절 임피던스 제어기(48) 및 축 제어기 모듈(12)은 보조 유닛(7)에 의해 구현된다.
임피던스 제어를 구현하는 데 필요한 계산은 시간이 지남에 따라 주기적으로 수행된다.
특히 유리한 방식으로, 중앙 프로세싱 유닛(5)은 F1으로 표기되는 제1 계산 주파수로 복합 설정점 u 및 거동 행렬 Y를 주기적으로 재계산하도록 구성된다.
관절력 설정점 τ는 제1 주파수 F1보다 높은 F2로 표기되는 제2 계산 주파수로 보조 유닛에서 주기적으로 재계산된다.
제2 주파수 F2는 예를 들어, 제1 주파수 F1보다 2배 내지 20배 더 높다. 바람직하게는, 제2 주파수 F2는 제1 주파수 F1보다 5배 내지 10배 더 높다. 또한 바람직하게는, 제2 주파수 F2는 제1 주파수(F1)보다 8배 더 높다.
위의 내용은 관절 임피던스 제어기(48)가 보조 유닛(7)에 의해 구현될 때 특히 유리하다.
실제로, 관절 임피던스 제어기는 상대적으로 제한된 수의 간단한 산술 연산만 사용하면 된다. 따라서 동일하게 고주파에서 동작할 수 있다. 이러한 방식으로, 높은 이득 Kp, Ki 및 Kd를 가질 수 있으며, 이는 위치-제어 방향을 따라 우수한 강성과 우수한 정밀도를 획득하는 데 사용될 수 있다. 더 복잡한 기하학적 계산은 중앙 유닛(5)에서 구현된다.
또한, 중앙 유닛(5)과 별도로 보조 제어기(7)에서 임피던스 제어를 구현하는 것은 단일 프로세서가 상이한 액추에이터 M1 내지 M6을 제어하기 때문에 성능 이득을 제공한다. 센서와 액추에이터에 최대한 가까이 있게 함으로써, 이러한 방식으로 서보-제어의 지연을 줄일 수 있으므로 결과적으로 더 나은 성능을 획득할 수 있다. 보조 유닛(7)의 단일 프로세서에서 임피던스 제어 및 축 제어기 모듈(12)을 구현하면 통신 지연이 없기 때문에 성능을 향상시킨다.
예시적인 목적을 위해 주어진 예에 따르면, 복합 설정점 u 및 거동 행렬 Y는 중앙 유닛(5)에 의해 계산되고 1 밀리초마다, 즉 1000 Hz의 주파수로 보조 유닛(7)으로 전달된다. 그 후 이러한 제어의 각각의 구성 요소는 제2 주파수 F2로, 예를 들어, 8 KHz의 주파수로 수행되는 각각의 계산 사이클에 대한 값을 획득하기 위해 선형 보간된다.
보다 일반적으로, 본 발명의 구현의 다른 유리한 양태는 내부 상태 qmv의 적분을 포함하여 임피던스 제어기(48)에 의해 수행되는 모든 계산이 관절 좌표에서 수행된다는 사실에 있다. 이러한 방식으로, 계산 리소스 측면에서 비용이 많이 드는 기하학적 변환을 구현할 필요가 없다. 각각의 계산 사이클 동안 임피던스 제어와 관련된 계산을 수행하는 데 필요한 시간을 줄이는 것은 더 높은 이득 Kp, Ki, Kd로 이어지고, 특히 위치-제어 방향을 따라 더 나은 정확도를 얻을 수 있다.
임피던스 제어 프로세스는 로봇이 힘 제어 모드, 또는 위치 제어 모드 또는 하이브리드 모드 또는 임피던스 제어 모드에서 작동하든지간에, 선택된 동작 모드가 무엇이든 효과적으로 동작하는 데 사용될 수 있다. 이득 계수 Kp, Ki 및 Kd의 값은 동작 모드와 독립적으로 한 번에 그리고 전체에 대해 설정될 수 있다.
특히 유리한 방식으로, 중앙 유닛(5)은 관절 변환 행렬 Tf 및 이펙터 Fg의 중량을 F3으로 표기되고 제2 주파수 F2보다 낮은 제3 계산 주파수로 주기적으로 재계산하도록 구성된다. 제2 주파수 F2는 예를 들어, 제3 주파수 F3보다 2배 내지 20배 더 높다. 바람직하게는, 제2 주파수 F2는 제3 주파수 F3보다 5배 내지 10배 더 높다. 더욱 바람직하게는, 제2 주파수 F2는 제3 주파수 F3보다 8배 더 높다. 제1 주파수 F1과 동일한 제3 주파수 F3을 선택함으로써, 중앙 프로세싱 유닛(5)은 동일한 데이터 프레임(30)에 관절 변환 행렬 Tf, 이펙터의 중량 Fg, 거동 행렬 Y 및 복합 설정점 u를 배치할 수 있다. 관절 변환 행렬 Tf 및 이펙터의 중량 Fg는 전류 루프 제어 τcmd의 각각의 계산 사이클에 대한 값을 획득하기 위해 선형 보간될 수 있다.
본 발명에 의해, 로봇이 적어도 부분적으로 손으로 안내되어야 할 때 로봇의 안내가 개선된다.
특정 실시예는 다른 실시예와 독립적으로 구현될 수 있다.
도 6은 본 발명에 따른 동작 프로세스의 구현의 개략적인 예를 도시한다. 변형에서, 단계는 상이한 순서로 실행될 수 있다. 일부 단계는 생략될 수 있다. 설명된 예는 다른 실시예에서 다른 단계가 설명된 단계와 공동으로 및/또는 순차적으로 구현되는 것을 방해하지 않는다.
프로세스는 단계 S100에서, 특히 수동 또는 하이브리드 안내 모드에서 로봇 제어 프로그램의 시작과 함께 개시된다. 이러한 단계 동안, 선택된 동작 모드에 따라, 궤적이 제어 시스템(8)에 의해 취득되거나 정의될 수 있다.
병행하여, 사용자는 단계 S102 동안, 손으로 힘 또는 모션을 부과하기 위하여 로봇 아암(4)을 조작할 수 있다.
단계 S104 동안, 제어 시스템(8)은 중앙 유닛(5)에 의해 구현된 임피던스 관리자(46)에서 타깃 궤적 및 동작 모드에 따라 관절력 및 속도를 정의하는 복합 설정점 u를 계산한다.
단계 S106 동안, 제어 시스템(8)은 중앙 유닛(5)에 의해 구현된 임피던스 관리자(46)에서 동작 모드에 따라 거동 행렬 Y를 계산한다.
단계 S108 동안, 제어 시스템(8)은 보조 유닛(7)에 의해 구현된 임피던스 제어기(48)에서, 관절력 설정점 τ 및 상기 내부 상태 qmv의 시간 도함수 를 계산하며, 계산은 이전에 계산된 상기 복합 설정점 u, 거동 행렬 Y, 측정된 관절 위치 qr, 측정된 관절 위치로부터 도출된 관절 속도 및 내부 상태에 따라 수행된다.
위에 표현한 바와 같이, 축 제어기 모듈(12)을 제어하기 위한 관절력 설정점은 (내부 상태 qmv의 상기 시간 도함수 를 참조하여 이전에 정의된) 내부 상태 qmv와 관절 위치 qr 사이의 차이를 조정하는 제어 함수로부터 계산된다.
단계 S110 동안, 제어 시스템(8)은 관절력 설정점 τ에 따라 전력 유닛(15)의 제어 설정점을 계산한다. 추가로, 전력 유닛(15)의 제어 설정점의 계산은 또한 액추에이터의 위상 전류의 측정치 및 측정된 관절 위치 qr에 따르는데, 동일한 것이 전류 제어 루프를 포함하며, 즉 계산이 전류 측정치와 전류 설정점 사이의 차이를 고려하기 때문이다.
유리하게는, 전력 유닛(15)에 대한 제어 설정점을 계산할 때, 로봇에 인가된 외력이 예를 들어, 로봇 아암(4)에 수동적인 힘을 가하는 사용자에 의해 고려된다.
본 발명은 회전을 수행하기 위해 관절 연결된 로봇 아암으로 설명되었다. 본 발명은 서로에 대해 병진하는 요소를 포함하는 로봇에 적용 가능하다.
위에 언급한 실시예 및 변형은 새로운 실시예를 생성하기 위해 서로 조합될 수 있다.

Claims (13)

  1. 산업 로봇(2)용 제어 프로세스로서,
    상기 로봇은,
    ■ 이동 축 주위 또는 상기 이동 축을 따라 로봇 아암의 다른 부분에 대해 상기 로봇 아암의 하나의 부분을 각각 이동시키는 경향이 있는 적어도 2개의 전기 액추에이터(M1,..., M6)를 포함하는 다축(multi-axis) 로봇 아암(4)으로서, 각각의 전기 액추에이터는 대응하는 액추에이터의 관절 위치(qr)를 측정하도록 구성된 센서(C1,..., C6)와 연관되는, 다축 로봇 아암(4),
    ■ 상기 로봇 아암의 단부에 배치된 이펙터(effector)(6),
    ■ 로봇 제어 시스템(8)을 포함하고, 상기 로봇 제어 시스템(8)은,
    a. 중앙 유닛(5),
    b. 전력 유닛들을 제어하기 위해 설정점들을 생성하는 경향이 있는 전류 제어 루프들(62)을 포함하는 축 제어기 모듈(12)을 구현하는 상기 전력 유닛들(15)을 제어하도록 구성된 보조 유닛(7),
    c. 상기 전기 액추에이터들(M1,..., M6)에 적절한 전류를 공급하는 경향이 있는 전력 유닛들(15),
    d. 상기 전기 액추에이터들(M1,..., M6)과 연관된 상기 센서들(C1,..., C6)로부터의 측정치들을 수신 및 송신하도록 구성된 데이터 취득 인터페이스(14),
    e. 상기 중앙 유닛(5), 상기 보조 유닛(7) 및 상기 데이터 취득 인터페이스(14)를 연결하고 데이터 버스(18)를 포함하는 통신 링크를 포함하고,
    상기 제어 프로세스는,
    ■ 상기 중앙 유닛(5)에 의해 구현된 모듈들에서, 타깃 궤적 및 동작 모드에 따라 관절력들 및 속도들을 정의하는 시간-종속 복합 설정점(u)을 계산하는 단계(S104),
    ■ 상기 중앙 유닛(5)에 의해 구현된 모듈들에서, 상기 계산된 복합 설정점이 적용되어야 하는 방향들을 정의하는 상기 로봇 아암의 원하는 거동을 설명하는 거동 행렬(Y)을 계산하는 단계(S106),
    ■ 상기 보조 유닛(7)에 의해 구현된 관절 임피던스 제어기 모듈(48)에서, 이전에 계산된 상기 복합 설정점(u) 및 상기 거동 행렬(Y)에 따라 상기 축 제어기 모듈을 제어하기 위한 관절력 설정점(τ)을 계산하는 단계(S108),
    ■ 상기 보조 유닛(7)에 의해 구현된 상기 축 제어기 모듈(12)에서, 상기 관절력 설정점(τ)에 따라 상기 전력 유닛들(15)에 대한 상기 제어 설정점들을 계산하는 단계(S110)를 포함하는, 제어 프로세스.
  2. 제1항에 있어서,
    상기 전력 유닛들(15)은 상기 전기 액추에이터들(M1,..., M6)의 위상 전류들을 측정하기 위한 센서들을 포함하고, 상기 제어 설정점들의 상기 계산(S110)은 상기 전류 제어기 루프(62)에 의해 구현되고, 상기 전기 액추에이터들의 상기 위상 전류들의 측정치들에 추가로 의존하는, 제어 프로세스.
  3. 제1항 또는 제2항에 있어서,
    상기 관절력 설정점 τ의 상기 계산은 관절 위치에서 내부 상태 qmv의 시간 도함수 의 계산을 포함하고, 이러한 계산은 이전에 계산된 상기 복합 설정점(u), 상기 거동 행렬(Y), 상기 측정된 관절 위치들 qr, 상기 측정된 관절 위치들 qr로부터 도출된 관절 속도들 및 내부 상태(qmv)에 따라 수행되는, 제어 프로세스.
  4. 제3항에 있어서,
    상기 축 제어기 모듈을 제어하기 위한 상기 관절력 설정점(τ)은 상기 관절 위치(qr)와 상기 내부 상태(qmv) 사이의 차이를 조정하는 제어 함수로부터 계산되고, 상기 내부 상태는 상기 내부 상태의 상기 시간 도함수()를 적분함으로써 결정되는, 제어 프로세스.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 중앙 유닛(5)은 제1 주파수(F1)로 상기 복합 설정점(u) 및 상기 거동 행렬(Y)을 재계산하고, 상기 보조 유닛(7)은 상기 제1 주파수보다 높은 제2 주파수(F2)로 상기 축 제어기 모듈(12)을 제어하기 위한 상기 관절력 설정점(τ)을 재계산하는, 제어 프로세스.
  6. 제5항에 있어서,
    상기 제2 주파수(F2)는 상기 제1 주파수(F1)보다 2배 내지 20배 더 높고, 바람직하게는 상기 제1 주파수(F1)보다 5배 내지 10배 더 높으며, 더 바람직하게는 상기 제1 주파수(F1)보다 8배 더 높은, 제어 프로세스.
  7. 제5항에 있어서,
    상기 보조 유닛(7)은 500 Hz 내지 20 kHz, 바람직하게는 5 kHz 내지 12 kHz, 바람직하게는 8 KHz에서 선택된 주파수(F2)로 상기 축 제어기 모듈(12)을 제어하기 위한 상기 관절력 설정점들(τ)을 계산하는, 제어 프로세스.
  8. 제7항에 있어서,
    상기 축 제어기 모듈(12)은 상기 관절력 설정점(τ)에 따라 상기 전력 유닛들(15)에 대한 상기 제어 설정점들을 계산할 때 힘 센서(20)에 의해 측정된 힘들(Fs)을 고려하는, 제어 프로세스.
  9. 제8항에 있어서,
    상기 중앙 유닛(5)은 상기 이펙터의 중량(Fg)을 계산하는 중력 보상기(43) 및 상기 관절 위치들(qr)로부터 변환 행렬(Tf)을 계산하는 카티션(Cartesian) 관절 변환기를 사용하고, 상기 로봇 아암(4)의 상기 단부에 장착된 힘 센서(20)에 의해 측정된 힘들(Fs)을 고려하기 위해 상기 이펙터의 상기 중량(Fg) 및 상기 변환 행렬(Tf)을 상기 축 제어기 모듈(12)로 송신하는, 제어 프로세스.
  10. 제9항에 있어서,
    상기 중앙 유닛(5)은 상기 이펙터의 상기 중량(Fg)을 계산하는 중력 보상기(43) 및 상기 관절 위치들(qr)로부터 상기 변환 행렬(Tf)을 계산하는 카티션 관절 변환기를 사용하고, 상기 로봇 아암(4)의 상기 단부에 장착된 힘 센서(20)에 의해 측정된 힘들(Fs)을 고려하기 위해 상기 이펙터의 상기 중량(Fg) 및 상기 변환 행렬(Tf)을 상기 제1 주파수(F1)에서 상기 축 제어기 모듈(12)로 송신하는, 제어 프로세스.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서,
    상기 통신 링크는 상기 중앙 유닛(5)이 주기적으로 상기 데이터 버스(18)를 통해 통신 프레임들을 송신하도록 구성되고, 상기 축 제어기 모듈들 및 상기 힘 센서는 상기 프레임의 통과 동안 데이터 프레임의 데이터를 판독 또는 추가하도록 구성되고, 상기 데이터 프레임은 각각의 통신 사이틀의 끝에서 상기 중앙 유닛으로 피드백되는, 제어 프로세스.
  12. 산업 로봇 제어 시스템(2)으로서,
    상기 로봇은,
    ■ 이동 축 주위 또는 상기 이동 축을 따라 로봇 아암의 다른 부분에 대해 상기 로봇 아암의 하나의 부분을 각각 이동시키는 경향이 있는 적어도 2개의 전기 액추에이터(M1,..., M6)를 포함하는 다축 로봇 아암(4)으로서, 각각의 전기 액추에이터는 대응하는 액추에이터의 관절 위치(qr)를 측정하도록 구성된 센서(C1,..., C6)와 연관되는, 다축 로봇 아암(4),
    ■ 상기 로봇 아암의 단부에 배치된 이펙터(6),
    ■ 로봇 제어 시스템(8)을 포함하고, 상기 로봇 제어 시스템(8)은,
    a. 중앙 유닛(5),
    b. 전력 유닛들을 제어하기 위해 설정점들을 생성하는 경향이 있는 전류 제어 루프들(62)을 포함하는 축 제어기 모듈(12)을 구현하는 상기 전력 유닛들(15)을 제어하도록 구성된 보조 유닛(7),
    c. 상기 전기 액추에이터들(M1,..., M6)에 적절한 전류를 공급하는 경향이 있는 전력 유닛들(15),
    d. 상기 전기 액추에이터들(M1,..., M6)과 연관된 상기 센서들(C1,..., C6)로부터의 측정치들을 수신 및 송신하도록 구성된 데이터 취득 인터페이스(14),
    e. 상기 중앙 유닛(5), 상기 보조 유닛(7) 및 상기 데이터 취득 인터페이스(14)를 연결하고 데이터 버스(18)를 포함하는 통신 링크를 포함하고,
    상기 시스템은,
    ■ 상기 중앙 유닛(5)이 타깃 궤적 및 선택된 동작 모드에 따라 관절력들 및 속도들을 정의하는 시간-종속 복합 설정점(u)을 계산하고, 계산된 복합 설정점이 적용되어야 하는 방향들을 정의하는 상기 로봇 아암의 원하는 거동을 설명하는 거동 행렬(Y)을 계산하도록 구성된 모듈들을 구현하고,
    ■ 상기 보조 유닛(7)이 이전에 계산된 상기 복합 설정점(u) 및 상기 거동 행렬에 따라 상기 축 제어기 모듈을 제어하기 위한 관절력 설정점(τ)을 계산하도록 구성된 관절 임피던스 제어기 모듈(48) 및 상기 관절력 설정점(τ)에 따라 상기 전력 유닛들(15)을 제어하기 위한 상기 설정점들을 계산하도록 구성된 상기 축 제어기 모듈(12)을 구현하는 것을 특징으로 하는, 제어 시스템.
  13. 제12항에 따른 제어 시스템을 포함하고, 제1항 내지 제11항 중 어느 한 항에 따른 제어 프로세스를 구현하도록 구성된, 산업 로봇.
KR1020230038669A 2022-03-25 2023-03-24 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템 KR20230140536A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2202705 2022-03-25
FR2202705A FR3133930A1 (fr) 2022-03-25 2022-03-25 Systèmes et procédés de commande hybride position force d’un robot industriel

Publications (1)

Publication Number Publication Date
KR20230140536A true KR20230140536A (ko) 2023-10-06

Family

ID=82319995

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230038669A KR20230140536A (ko) 2022-03-25 2023-03-24 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템

Country Status (5)

Country Link
US (1) US20230302643A1 (ko)
EP (1) EP4249181A1 (ko)
KR (1) KR20230140536A (ko)
CN (1) CN116803629A (ko)
FR (1) FR3133930A1 (ko)

Also Published As

Publication number Publication date
CN116803629A (zh) 2023-09-26
FR3133930A1 (fr) 2023-09-29
US20230302643A1 (en) 2023-09-28
EP4249181A1 (fr) 2023-09-27

Similar Documents

Publication Publication Date Title
CN111136633B (zh) 针对时变时延下柔性主-从机器人系统的全状态控制方法
JP7556920B2 (ja) 機械システムの制御方法,機械システム用コントローラ,ロボットマニピュレータ,および非一時的なコンピュータ可読記憶媒体
US20200282558A1 (en) System and method for controlling a robot with torque-controllable actuators
CN110035871B (zh) 用于指示机器人的系统和方法
JP5774223B2 (ja) ロボット制御装置およびロボット制御方法
US4621332A (en) Method and apparatus for controlling a robot utilizing force, position, velocity, spring constant, mass coefficient, and viscosity coefficient
CN106945043A (zh) 一种主从式遥操作手术机器人多臂协同控制系统
JP2001157975A (ja) ロボットの制御装置
CN112417755A (zh) 一种主从式手术机器人轨迹预测控制方法
US7676440B2 (en) Neuromorphic motion controller for controlling a joint using winner take all
CN114290147B (zh) 基于双工业机器人协作的汽车轮毂打磨系统及其方法
Hace et al. Bilateral teleoperation by sliding mode control and reaction force observer
CN106426163A (zh) 电动机的控制装置
CN108791560B (zh) 一种可协同调控多足机器人的单腿操作和机体平移的遥操作系统及控制方法
Ferretti et al. Impedance control for industrial robots
KR20230140536A (ko) 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템
KR20230139346A (ko) 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템
KR20230139347A (ko) 산업 로봇의 하이브리드 위치 힘 제어 프로세스 및 시스템
CN113580136B (zh) 一种带机械臂的四足机器人控制方法与系统
Carignan et al. Manipulator impedance accuracy in position-based impedance control implementations
Duan et al. Design of Robot Control System for Knee Joint Replacement Surgery Based on STM32
Winkler et al. Novel joint space force guidance algorithm with laboratory robot system
Wu et al. End-Effector Impedance Control of Robotic Arm Based on Enhanced Neural Network RBF-PID-PSO
CN117901086A (zh) 增强现实机器人的无线遥操作方法及系统
Purwanto et al. Position-velocity-based trajectory control for manipulator and its application to visual tracking system