KR20090044131A - Robot controller - Google Patents

Robot controller Download PDF

Info

Publication number
KR20090044131A
KR20090044131A KR1020070110070A KR20070110070A KR20090044131A KR 20090044131 A KR20090044131 A KR 20090044131A KR 1020070110070 A KR1020070110070 A KR 1020070110070A KR 20070110070 A KR20070110070 A KR 20070110070A KR 20090044131 A KR20090044131 A KR 20090044131A
Authority
KR
South Korea
Prior art keywords
dual
arm robot
robot
real
board
Prior art date
Application number
KR1020070110070A
Other languages
Korean (ko)
Other versions
KR100919115B1 (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 한국기계연구원
Priority to KR1020070110070A priority Critical patent/KR100919115B1/en
Publication of KR20090044131A publication Critical patent/KR20090044131A/en
Application granted granted Critical
Publication of KR100919115B1 publication Critical patent/KR100919115B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/06Control stands, e.g. consoles, switchboards
    • 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
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Numerical Control (AREA)

Abstract

본 발명은 통신수단에 의해 메인 호스트와 연결되어 모터 AMP를 갖는 듀얼 암 로봇을 제어하는 로봇 제어장치에 관한 것이다.The present invention relates to a robot control device connected to a main host by a communication means to control a dual arm robot having a motor AMP.

이를 위해 본 발명은 상기 듀얼 암 로봇의 기구학 연산을 담당하는 Window XP기반 OLP(Off-line programming)를 갖는 PC와; 상기 PC 내부에 구비되며 듀얼 암 로봇의 모터 AMP에 연결되어 모션 제어를 수행하는 모션보드를 포함하되, 상기 PC는 Dual core CPU(듀얼 코어 중앙처리장치)로 구성되며, Window XP의 기구학 연산의 실시간성을 확보하기 위해 RTX(Real Time Extension)를 더 구비하는 것이 특징이다.To this end, the present invention is a PC having a Window XP-based OLP (Off-line Programming) responsible for the kinematic operation of the dual-arm robot; A motion board provided inside the PC and connected to the motor AMP of the dual arm robot to perform motion control, wherein the PC is configured of a dual core CPU (dual core central processing unit), and performs real-time operation of kinematic operations of Window XP. It is characterized by further having a Real Time Extension (RTX) to secure the castle.

제어기, RTX, 로봇, ZMP 보드, 모듈 Controller, RTX, Robot, ZMP Board, Module

Description

듀얼 암 로봇 제어장치{Robot Controller}Dual Arm Robot Controller {Robot Controller}

본 발명은 통신수단에 의해 메인 호스트와 연결되어 모터 AMP를 갖는 듀얼 암 로봇을 제어하는 로봇 제어장치에 관한 것으로, 보다 상세하게는 상기 듀얼 암 로봇의 기구학 연산을 담당하는 Window XP기반 OLP(Off-line programming)를 갖는 PC와; 상기 PC 내부에 구비되며 듀얼 암 로봇의 모터 AMP에 연결되어 모션 제어를 수행하는 모션보드를 포함하되, 상기 PC는 Dual core CPU(듀얼 코어 중앙처리장치)로 구성되며, Window XP의 기구학 연산의 실시간성을 확보하기 위해 RTX(Real Time Extension)를 더 구비하는 것을 특징으로 하는 듀얼 암 로봇 제어장치에 관한 것이다.The present invention relates to a robot control device connected to a main host by a communication means to control a dual arm robot having a motor AMP, and more specifically, Window XP-based OLP (Off-) in charge of kinematic calculation of the dual arm robot. a PC having line programming; A motion board provided inside the PC and connected to the motor AMP of the dual arm robot to perform motion control, wherein the PC is configured of a dual core CPU (dual core central processing unit), and performs real-time operation of kinematic operations of Window XP. The present invention relates to a dual arm robot control apparatus, further comprising a Real Time Extension (RTX) to secure the performance.

듀얼암 로봇의 제어를 위해서는 제어기가 많은 기능을 동시에 가지고 있어야 한다. 이러한 필요한 모든 기능을 포함할 경우 로봇제어기 전체의 가격이 상승할 수 밖에 없다. 따라서 사용자의 필요에 따라서 제어기의 기능의 일부만 판매하는 것이 가능해야 하며 이러한 이유로 기능별로 제어기를 구성하는 하는 것이 효과적이다. 이를 위해서는 다양한 방법이 존재할 수 있겠으나 본 발명에서는 개발이 용이하고 또한 상기의 목적이 만족될 수 있는 제어장치의 개발방법을 기술한다.In order to control the dual arm robot, the controller must have many functions at the same time. Including all these necessary functions increases the price of the entire robot controller. Therefore, it is possible to sell only a part of the functions of the controller according to the user's needs, and for this reason, it is effective to configure the controller for each function. To this end, various methods may exist, but the present invention describes a method of developing a control apparatus that is easy to develop and the above object can be satisfied.

본 발명의 목적은 듀얼 암 로봇을 제어하기 위한 구성이 최적화된 제어장치를 구축하여 듀얼 로봇의 신뢰성 및 안정성을 확보하는 듀얼 암 로봇 제어장치를 제공하는 데 있다. An object of the present invention is to provide a dual arm robot control device to ensure the reliability and stability of the dual robot by building a control device optimized for the configuration of the dual arm robot.

상기와 같은 본 발명의 목적은 통신수단에 의해 메인 호스트와 연결되어 모터 AMP를 갖는 듀얼 암 로봇을 제어하는 로봇 제어장치에 있어서, 상기 듀얼 암 로봇의 기구학 연산을 담당하는 Window XP기반 OLP(Off-line programming)를 갖는 PC와, 상기 PC 내부에 구비되며 듀얼 암 로봇의 모터 AMP에 연결되어 모션 제어를 수행하는 모션보드를 포함하되, 상기 PC는 Dual core CPU(듀얼 코어 중앙처리장치)로 구성되며, Window XP의 기구학 연산의 실시간성을 확보하기 위해 RTX(Real Time Extension)를 더 구비하는 것을 특징으로 하는 듀얼 암 로봇 제어장치에 의해 달성된다.An object of the present invention as described above is a robot control device connected to the main host by a communication means to control a dual arm robot having a motor AMP, Window XP-based OLP (Off- a PC having a line programming, and a motion board provided in the PC and connected to a motor AMP of a dual arm robot to perform motion control, wherein the PC is configured of a dual core CPU. It is achieved by a dual arm robot controller further comprising a Real Time Extension (RTX) to secure the real-time of kinematic operations of Window XP.

이와 같은 본 발명에 의하면 로봇 제어 장치의 오동작에 의한 파손을 방지하는 효과가 있어 신뢰성 및 안정성을 갖게되며 A/S의 단순화로 인한 경제적 파급효과를 갖게 된다. According to the present invention as described above has the effect of preventing damage caused by the malfunction of the robot control device has a reliability and stability, and has an economic ripple effect due to the simplification of A / S.

이하에서는 양호한 실시예를 도시한 첨부 도면과 관련하여 본 발명을 상세하게 설명한다. 도 1은 본 발명의 일실시예에 따른 듀얼 암 로봇 제어장치가 포함된 듀얼 암 로봇 제어시스템의 전체 구성도로써, 통신수단에 의해 메인 호스트와 연결되어 듀얼 암을 갖는 양팔 로봇을 제어하는 로봇 제어장치에 있어서, 상기 듀얼 암 로봇의 기구학 연산을 담당하는 Window XP기반 OLP(Open License Program)를 갖는 PC와, 상기 PC 내부에 구비되며 듀얼 암 로봇의 모션 제어를 수행하는 모션보드를 포함하여 구성된다.The invention will now be described in detail with reference to the accompanying drawings, in which preferred embodiments are shown. 1 is an overall configuration diagram of a dual arm robot control system including a dual arm robot control apparatus according to an embodiment of the present invention, the robot control is connected to the main host by a communication means to control a two-arm robot having a dual arm An apparatus, comprising: a PC having a Window XP-based Open License Program (OLP) that is responsible for kinematic operations of the dual arm robot, and a motion board provided inside the PC to perform motion control of the dual arm robot. .

여기서, 상기 PC는 Dual core CPU(듀얼 코어 중앙처리장치)로 구성되며, Window XP의 기구학 연산의 실시간성을 확보하기 위해 RTX(Real Time Extension)를 더 구비한다.Here, the PC is configured with a dual core CPU (dual core central processing unit), and further comprises a Real Time Extension (RTX) to secure the real-time of kinematic calculation of Windows XP.

이와 같이 구성된 본 발명은 IMB PC를 기반으로 하고 있으며 운영체제는 Windows XP가 사용된다. 또한, 본 발명은 앞서 개시한 바와 같이 PC에는 실시간성을 만족시키기 위하여 Real Time Extension(RTX)가 더 구비되며, 로봇 구동 모터의 AMP에 직접 연결하여 토크(Torque)지령을 직접 전달한다. 한편, 본 발명은 로봇의 제어를 위한 가장 하위레벨의 제어엔진을 모두 포함하고 있으며 도 1의 상위의 3개의 제어기(Offline System, Vision Controller, Tele-operation Controller)와 CAN 또는 RS232C로 연결되어 통신을 수행한다. The present invention thus constructed is based on an IMB PC and the operating system is Windows XP. In addition, as described above, the PC further includes a Real Time Extension (RTX) for satisfying real-time, and directly connects to the AMP of the robot driving motor to directly transmit a torque command. Meanwhile, the present invention includes all the lowest level control engines for controlling the robot and is connected to three controllers (Offline System, Vision Controller, Tele-operation Controller) of FIG. 1 by CAN or RS232C to communicate. Perform.

OLP(Off-line programming)은 로봇과 작업 환경을 PC에서 3차원 그래픽을 이용하여 구현한 후 교시에서 성능평가까지의 일련의 과정을 수행할 수 있다. 또한, OLP는 기존의 온라인 프로그래밍의 단점을 보완할 뿐만 아니라 FMS(Flexilbe Manufacturing System) 체계에 대응하며, 시간과 비용의 절감, 충돌 검색 및 회피, 로봇의 오동작에 의한 안전사고의 위험성까지 배제하는 공장자동화의 핵심 구성요소 중 하나이다.OLP (Off-line Programming) can implement a series of processes from teaching to performance evaluation after implementing robots and working environment using 3D graphics on PC. In addition, OLP not only compensates for the shortcomings of the existing online programming, but also responds to the FMS (Flexilbe Manufacturing System) system, and saves time and money, detects and avoids collisions, and eliminates the risk of safety accidents caused by robot malfunction. It is one of the key components of automation.

이러한 OLP는 Adpet Technology의 Cimstation, Robot Simulation의 WORKSPACE, Deneb Robotics의 IGRIP, Technomatix Technolo-gies의 ROBCAD, Dassault Systems의 CATIA-Robotics 등이 있으며 국내 상용 OLP인 큐빅테크의 V-Robot, 실험용으로 개발된 부산대학교의 POLPS, 인하대학교의 INHA-OLP 등이 있다.These OLPs include Cimstation of Adpet Technology, WORKSPACE of Robot Simulation, IGRIP of Deneb Robotics, ROBCAD of Technomatix Technolo-gies, CATIA-Robotics of Dassault Systems, etc. POLPS of the university, INHA-OLP of Inha University.

이들 중 상용 OLP 시스템은 다양한 기능과 우수한 사용자 인터페이스를 제공하지만 WORKSPACE와 V-Robot 등을 제외한 대부분의 제품들이 워크스테이션 환경에서만 실행되며 고가인 관계로 아직까지 보편화되지 못하고 있다. Among them, commercial OLP system provides various functions and excellent user interface, but most products except WORKSPACE and V-Robot are only run in workstation environment and are not widely available yet.

<모션보드의 선정><Selection of Motion Board>

모션보드는 범용의 모션(Motion) 제어보드로서 듀얼 암 로봇과 같은 매우 독특한 기구학적 구조를 처리하는데 적합하다. 또한, 제어알고리즘에 관련된 부분에는 게인 튜닝을 할 수 있는 장점이 있다. 이러한 이유로 본 발명에서 사용되는 모션보드는 시장에서 널리 활용되고 있어서 그 신뢰성이 검증된 모션보드 가운데서 MEI ZEP board를 사용한다. 이는 보드 한 장으로 최대 32축까지의 제어가 가능하고, 축당 제어비용(제어기비용/축수)가 매우 저렴하며, 프로세서(Processor)가 매우 빠르고(Motorola MPC8245 466Mhz CPU), RTX용 드라이버(Driver)가 공급되기 때문이다.The motion board is a general-purpose motion control board suitable for processing very unique kinematic structures such as dual arm robots. In addition, there is an advantage that the gain tuning can be performed in the part related to the control algorithm. For this reason, the motion board used in the present invention is widely used in the market and uses MEI ZEP board among the motion boards whose reliability has been verified. It is possible to control up to 32 axes with one board, very low control cost per controller (controller cost / axis), very fast processor (Motorola MPC8245 466Mhz CPU), and driver for RTX. Because it is supplied.

MEI ZEP board의 싱크넷 모션 컨트롤러(SynqNet Motion Controller)의 가장 큰 특징은 모터 AMP와 모션보드 사이의 결선이 도 2에 도시된 바와 같이 단지 디지탈 통신 라인으로만 연결되기 때문에 배선이 간결할 뿐만 아니라 노이즈에 매우 강하다는 것이다. 일반적인 아날로그 결선일 경우 주위의 전기장의 영향을 받아서 오작동할 소지가 있다. 그러나 MEI ZEP board의 경우에는 도 2에 도시된 바와 같이 디지탈 통신(SyncNet)이 사용되기 때문에 노이즈의 영향을 거의 받지 않는다. 통신(SyncNet)의 또하나의 장점은 배선의 간결함에 있다. 도 2의 Out -> In으로의 화살표는 바로 통신(SyncNet) 배선을 의미한다. 이른바 Daisy Chain이라 불리는 형태의 결선이 이루어지기 때문에 아날로그 결선에 비해서 극단적으로 배선이 간단하게 된다는 것을 알 수 있다. 이것은 단순히 배선의 간략화만을 의미하지 않으며 로봇제어기의 신뢰성 및 A/S의 단순화를 의미하므로 궁극적으로 경제적 효과를 기대할 수 있다. 이와 같은 MEI ZEP board의 디지탈 통신의 경우 노이즈에 매우 강하다는 장점을 가지고 있으나 통신속도의 증가에 한계가 있다는 것이 가장 큰 단점이다. 그러나 통신(SyncNet)의 경우 100 Base-T의 LAN을 기본으로 하고 있는 프로토콜이기 때문에 MEI ZEP board는 최대 48Khz의 샘플링 레이트(Sampling Rate)로 클로우즈 룹(Closed Loop)을 형성할 수 있다. 32축을 동시에 제어하는 경우에도 4Khz의 샘플링 레이트로 클로우즈 룹을 형성하는 것이 가능하다. 현재 모션보드와 모터 AMP와의 디지탈 통신 수단으로 사용되고 있는 프로토콜은 SyncNet이외에도 Ethernet, FireWire(IEEE1394), SERCOS, CAN 등이 있는데 이 가운데 FireWire와 Ethernet 만이 SyscNet과 동등 혹은 그 이상의 통신속도를 가지고 있다. 그러나 이 들은 사이클 타임 레잇턴시(Cycle Time Latency)가 SyncNet에 비해서 매우 크기 때문에 고속 실시간 통신에 있어서 SyncNet보다 좋지 못한 성능을 보인다. The biggest feature of the SynqNet Motion Controller of the MEI ZEP board is that the wiring between the motor AMP and the motion board is only connected to the digital communication line as shown in FIG. It is very strong. In the case of a general analog connection, there is a possibility of malfunction due to the influence of the surrounding electric field. However, the MEI ZEP board is hardly affected by noise because digital communication (SyncNet) is used as shown in FIG. 2. Another advantage of SyncNet is its simplicity of wiring. The arrow from Out to In in FIG. 2 means communication (SyncNet) wiring. So called Daisy Chain, the wiring is made, so it can be seen that the wiring is extremely simple compared to the analog wiring. This does not only mean wiring simplification, but also means reliability of robot controller and simplification of after-sales service, and ultimately economic effect can be expected. Digital communication of the MEI ZEP board has the advantage of being very resistant to noise, but the biggest disadvantage is that there is a limit to increase the communication speed. However, in case of communication (SyncNet) based on 100 Base-T LAN, MEI ZEP board can form closed loop with sampling rate of up to 48Khz. Even when controlling 32 axes simultaneously, it is possible to form a closed loop at a sampling rate of 4Khz. In addition to SyncNet, Ethernet, FireWire (IEEE1394), SERCOS, and CAN are used as digital communication means between motion board and motor AMP. Among them, only FireWire and Ethernet have the same or higher communication speed than SyscNet. However, they exhibit poorer performance than SyncNet for high-speed real-time communications because the cycle time latency is much larger than SyncNet.

한편, 본 발명의 모션보드를 MEI ZEP board에 한정하는 또 다른 이유는 SynqNet 통신의 강인함에 있다. 즉, 어떤 이유로 SynqNet 통신 결선의 일부가 끊어지거나 작동불가 상태에 있을 때도 모션보드는 여전히 정상작동을 하게 된다. 이는 SynqNet이 2 Path Network을 사용하기 때문에 가능한 것이다. On the other hand, another reason for limiting the motion board of the present invention to the MEI ZEP board is the strength of SynqNet communication. That is, if for some reason some of the SynqNet communication wiring is broken or inoperable, the motion board will still function normally. This is possible because SynqNet uses a two path network.

도 3에 도시된 바와 같이 Node 0 ~ 2를 제어할 경우 SyncNet 연결은 컨트롤러(Controller) -> Node 0 -> Node 1 -> Node 2의 SyncNet연결 이외에도 컨트롤러(Controller) -> Node 2 -> Node 1 -> Node 1의 연결이 추가로 구성된다. SyncNet Network가 적상적으로 작동되고 있을 경우는 이들 듀얼 링(Dual Ring)가운데 하나의 링(Ring)이 임의로 선택되어 Networking이 이루어진다. 그러나 케이블의 일부가 단선이 된 경우 오류를 자동으로 인식하여 사용이 가능한 링(Ring)을 선택하고 통신을 계속 수행한다. 결국 일부가 단선이 된 경우에도 제어는 정상적으로 이루어지는 것이다. 이른바 Fault Tolerance기능은 로봇 제어장치로서의 신뢰성에도 큰 이점으로 작용하게 된다. 로봇의 운전중에 일부의 결선이 불량이 된 경우에도 로봇이 크게 오작동하여 큰 피해를 내기 전에 또 다른 통신 링(Ring)으로 통신이 옮겨가서 로봇을 안전하게 Stop 하도록 하는 것이 가능하기 때문이다.As shown in FIG. 3, when controlling Node 0 to 2, SyncNet connection is not only controller-> Node 0-> Node 1-> Node 2 but also SyncNet connection of Controller-> Node 2-> Node 1 -> Node 1's connection is further configured. When the SyncNet Network is operating properly, one of these Dual Rings is arbitrarily selected for networking. However, if a part of the cable is broken, the error is automatically recognized and the available ring is selected and communication continues. As a result, control is normally performed even when a part is disconnected. The so-called Fault Tolerance function also has a great advantage in reliability as a robot controller. This is because even if some wiring is defective during the operation of the robot, it is possible to safely stop the robot by transferring the communication to another communication ring before the robot malfunctions and causes great damage.

MEI ZEP board는 일반적인 모터 AMP는 사용할 수 없다. 일반적인 모터 AMP는 ±10V의 아날로그 입력과 A,B,Z상의 엔코더(Encoder) 출력을 제공하거나 혹은 플러스 신호를 통해 위치명령을 받아들이는 경우가 대부분이다. 그러나 MEI ZEP board 의 경우에는 SyncNet 프로토콜을 지원하는 모터 AMP에만 적용이 가능하다. 따라서, 주요 모터 AMP 생산업체에서 SyncNet 프로토콜을 지원하는지의 여부는 매우 중요하다. SyncNet 프로토콜을 지원하는 모터 AMP공급업체는 Gawasaki, Sanyo, Panasonic 사 등이 있다. MEI ZEP board cannot use general motor AMP. Typical motor AMPs provide ± 10V analog inputs and encoder outputs on A, B and Z, or accept position commands via a plus signal. However, in case of MEI ZEP board, it is applicable only to motor AMP that supports SyncNet protocol. Therefore, whether the major motor AMP manufacturers support the SyncNet protocol is very important. Motor AMP suppliers that support the SyncNet protocol include Gawasaki, Sanyo, and Panasonic.

<실시간 운영체제의 선정><Selection of real-time operating system>

일반적으로 범용의 DSP보드를 사용하여 제어를 하는 경우는 DSP 보드가 독자적인 실시간 운영체계를 갖기 때문에 사용자가 실시간 제어에 관해서 고민할 필요가 없다. 그러나 범용의 DSP 보드는 로봇 제어장치로 사용하기에는 곤란한 부분이 많다. 따라서 로봇제어 전용의 DSP보드를 별도로 개발하거나 PC와 범용 모션보드를 함께 사용하여 로봇 제어 장치를 구성하여야 하는데 후자의 경우가 더 많은 확장성을 갖는다. 다만 후자의 로봇 제어 장치의 경우에는 탑재된 OS(Operaiting System)의 안정성이 매우 중요한데, 일반인들이 가장 익숙한 운영체계는 Microsoft사의 Windows XP이다. 그러나 Windows XP는 아래와 같은 이유로 로봇 제어 장치의 운영체계로는 적합하지 않다.In general, in case of controlling by using general-purpose DSP board, users do not have to worry about real-time control because DSP board has its own real-time operating system. However, general purpose DSP boards are difficult to use as robot controllers. Therefore, the robot control device must be developed by developing a DSP board exclusively for robot control or by using a PC and a general-purpose motion board. The latter has more expandability. However, in the case of the latter robot control device, the stability of the mounted OS (Operaiting System) is very important. The most familiar operating system is Microsoft's Windows XP. However, Windows XP is not suitable as an operating system for robot control devices for the following reasons.

① 안정성이 확보되지 않는다 : Windows XP는 일반인들의 작업을 위해서 만들어진 OS이기 때문에 주로 멀티미디어 작업등의 제어와는 전혀 관련 없는 복잡한 작업을 수행할 수 있도록 되어 있다. 따라서 소스코드가 복잡하고 결국 종종 안정성에 문제를 일으키게 된다. 일예로는 운영체계의 숏다운(Shutdown)현상이다. 갑자기 운영체게가 문제를 일으켜서 PC가 숏다운 되면, PC상에서 동작하고 있던 모든 프로그램들은 제어성을 상실하게 되므로 로봇의 동작은 예측불가능한 상태가 된다.① Stability is not secured: Because Windows XP is an OS designed for the general public, it is able to perform complex tasks that are not related to the control of multimedia tasks. As a result, the source code is complex and often leads to stability problems. One example is the shutdown of the operating system. If the operating system suddenly causes a problem and the PC is shut down, all the programs running on the PC lose control and the robot's operation becomes unpredictable.

② 실시간 연산이 보장되지 않는다 : Windows XP는 일반 사용자용으로 개발되어 있기 때문에 실시간 연산은 전혀 고려되어 있지 않다. 오히려 효과적인 자료 처리를 위하여 이벤터 드라이븐(Event Driven) 방식의 OS로 만들어져 있어서 사용자의 요구가 프리오리티(Priority)에 따라서 연기되는 경우가 허다하다. 따라서 사용자의 요청 즉시 연산이 수행되어야 하는 제어프로그램의 수행에는 적합하지 못하다.2. Real-time operation is not guaranteed: Since Windows XP is developed for general users, real-time operation is not considered at all. Rather, it is made of Event Driven OS for effective data processing, so user's request is often delayed according to Priority. Therefore, it is not suitable for the execution of the control program in which the operation should be performed immediately upon user's request.

그러나 많은 일반 사용자들이 익숙하게 사용하고 있다는 점과 이미 많은 응용프로그램들이 개발되어 있어서 원하는 프로그램을 구매하여 설치하는 것만으로도 매우 많은 일을 할 수 있다는 것이 최대의 장점이다. 이것은 유닉스(Unix) 혹은 리눅스(Linux)에 대해서 큰 장점임에 틀림없다. 이 때문에 본 발명에서는 로봇 제어 장치의 운영체제로 Windows XP를 사용한다. 그러나 이를 위해서는 실시간성을 충족시켜줄 솔루션(Solution)을 필요로 한다.However, the biggest advantage is that many users are familiar with it and many applications are already developed, so you can do a lot of work simply by purchasing and installing the desired program. This must be a big advantage for Unix or Linux. For this reason, in this invention, Windows XP is used as an operating system of a robot control apparatus. However, this requires a solution to meet real-time.

이를 위하여 Windows XP와 함께 아덴스(Ardence) 사의 Windows XP용의 Real Time Extension(RTX)를 사용한다. RTX는 Windows XP의 커널이 실시간성을 보장하고 있지 않으므로, 실시간성이 보장될 수 있는 일종의 확장커널을 추가한다. 기존의 윈도우즈 응용 프로그램은 윈도우즈의 커널에 의존해서 작업을 진행하므로 아무런 영향을 받지 않는다. 그러나 실시간성이 요구되는 프로그램의 경우에는 RTX에 의해 확장된 실시간 커널에 작업을 요청함으로써 연산의 실시간성을 보장받을 수 있다. 이로써 Windows XP의 실시간성은 해결될 수 있으나 Windows XP의 불안정성을 극복 할 문제가 남아 있다. 그러나 RTX는 이 문제도 해결해 주고 있다. 즉 Windows XP는 숏다운이 발생될 때 이를 각 응용프로그램에 알리기 위해 이벤트(EVENT)를 발생시키는데 이 이벤트(EVENT)를 RTX가 가로채에서 Windows XP는 종료되더라도 RTX 커널에서 동작하고 있는 응용프로그램은 정상적으로 동작될 수 있도록 해준다. 따라서 제어프로그램은 갑작스러운 프로그램 종료를 피하고, 숏다운 발생시에 안전하게 롭소을 홈 포지션(Home Position)으로 이동한 다음 PC가 종료되도록 할 수 있으므로 로봇 운전중에 OS의 불안정성으로 발생할 수 있는 문제들을 막을 수 있다. To do this, use Real Time Extension (RTX) for Windows XP from Ardence. RTX adds a kind of extension kernel that can guarantee real-time since the kernel of Windows XP does not guarantee real-time. Existing Windows applications are not affected because they rely on the Windows kernel. However, in the case of a program that requires real time, the real time of the operation can be guaranteed by requesting a task to the real time kernel extended by RTX. This can solve the real-time performance of Windows XP, but there remains a problem to overcome the instability of Windows XP. But RTX also solves this problem. In other words, Windows XP generates an event (EVENT) to notify each application when a shortdown occurs. Even if Windows XP is shut down while RTX is intercepted, the application running on the RTX kernel is normally operated. Allow it to work. Therefore, the control program avoids abrupt program termination and can safely move Robso to Home Position and shut down the PC in case of short down, thus preventing problems caused by OS instability during robot operation. .

도 4는 RTX가 Windows XP의 커널을 확장해서 실시간성을 보장해주는 내용을 나타내고 있다. 윈도우즈 응용프로그램과 제어프로그램이 서로 다른 커널(윈도우즈의 커널과 RTX의 커널)에서 프로그램들이 동작하고 있으므로 이 프로그램간에는 서로 데이터를 교환하기가 곤란하다. RTX는 IPC(Inter-Process Communication) 기능을 제공함으로써 이러한 문제를 해결할 수 있도록 해주고 있다.4 shows the RTX to extend the Windows XP kernel to ensure real-time. Since programs are running in different kernels (Windows kernel and RTX kernel), it is difficult to exchange data between them. RTX helps solve this problem by providing inter-process communication (IPC).

아덴스(Ardene) 사에서 RTX의 기본적인 성능 중 Event와 인터럽트(Interrupt)의 레잇턴시(Latency)에 관한 내용을 살펴보면 Windows 2000과 Windows XP의 경우 Latency가 최대 5000us 까지 있을 수 있으나 RTX 6.0의 경우에느 최대 약 1.5us(Event), 21us(Event)의 Latency가 발생하는 것으로 보고하고 있다. 마이크로소프트에서 개발된 실시간 운영체제인 Windows CE의 경우는 10us, 26us의 Latency 결과를 보인다고 보고하고 있다. 그러나 실제 측정결과 Windows XP에서 사용자가 동영상을 갑자기 실행시키는 경우, 혹은 파일 Read/Write를 수행하는 경우 RTX의 인터럽트 레잇턴시(Interrupt Latency)는 보고된 값보다 더 큰 경우 가 있었으며 이를 해결해야할 필요가 있다. 이를 위해서 듀얼 CPU가 설치된 산업용 PC를 사용하기로 하였다. Single CPU system에서 RTX는 비록 실시간 커널을 설치하더라도 CPU를 독점하지 못한다. 이것은 Windows 응용 프로그램이 동작되어야 하기 때문에 그렇다. 그러나 두개 이상의 CPU가 설치된 경우는 이러한 문제가 완전히 해결된다. 즉 듀얼 CPU의 경우 한개의 사용자의 옵션에 따라서 한개의 CPU는 Windows XP에서 독점적으로 사용하고, 나머지 한개의 CPU는 RTX가 독점적으로 사용하는 것이 가능해 진다. 도 5는 CPU의 개수에 대한 RTX의 점유상태를 가능한 모든 경우에 대해서 보여주고 있다.When Ardenne examines the basic performance of RTX, the latency of event and interrupt can be up to 5000us in Windows 2000 and Windows XP, but in case of RTX 6.0 It is reported that a maximum of 1.5us (Event) and 21us (Event) occurs. Windows CE, a real-time operating system developed by Microsoft, reports a 10us and 26us latency result. However, the actual measurement result shows that when the user suddenly runs the video in Windows XP, or when performing a file read / write, the interrupt latency of RTX is larger than the reported value and needs to be solved. have. To do this, I decided to use an industrial PC with dual CPUs. In a single CPU system, RTX does not monopolize the CPU even if you install a real-time kernel. This is because Windows applications must run. However, if more than one CPU is installed, this problem is completely solved. In the case of dual CPUs, one CPU can be used exclusively in Windows XP, and the other CPU can be used exclusively by RTX, depending on the user's option. Fig. 5 shows in all possible cases the occupied state of the RTX with respect to the number of CPUs.

도 1은 본 발명의 일실시예에 따른 듀얼 암 로봇 제어장치가 포함된 듀얼 암 로봇 제어시스템의 전체 구성도이고,1 is an overall configuration diagram of a dual arm robot control system including a dual arm robot control apparatus according to an embodiment of the present invention,

도 2는 듀얼 암 로봇에 구성된 모터 AMP와 본 발명의 일실시예인 듀얼 암 로봇 제어장치의 디지털배선(SynqNet)을 나타낸 도면이고,2 is a diagram illustrating a digital wiring (SynqNet) of a motor AMP configured in a dual arm robot and a dual arm robot controller according to an embodiment of the present invention.

도 3은 SyncNet의 Fault Tolerance Mechanism을 나타낸 도면이고,3 is a diagram illustrating Fault Tolerance Mechanism of SyncNet,

도 4는 Real Time Extension(RTX)의 개념도이고,4 is a conceptual diagram of Real Time Extension (RTX),

도 5는 Single CPU, Multiple CPU의 경우에 대한 RTX의 기능을 나타낸 도면이고,5 is a diagram showing the function of the RTX for the case of Single CPU, Multiple CPU,

Claims (6)

통신수단에 의해 메인 호스트와 연결되어 모터 AMP를 갖는 듀얼 암 로봇을 제어하는 로봇 제어장치에 있어서,In the robot control device connected to the main host by a communication means for controlling a dual arm robot having a motor AMP, 상기 듀얼 암 로봇의 기구학 연산을 담당하는 Window XP기반 OLP(Off-line programming)를 갖는 PC와; A PC having Window XP-based OLP (Off-line Programming), which is responsible for the kinematic operation of the dual arm robot; 상기 PC 내부에 구비되며 듀얼 암 로봇의 모터 AMP에 연결되어 모션 제어를 수행하는 모션보드를 포함하되,Includes a motion board provided in the PC and connected to the motor AMP of the dual arm robot to perform a motion control, 상기 PC는 Dual core CPU(듀얼 코어 중앙처리장치)로 구성되며, Window XP의 기구학 연산의 실시간성을 확보하기 위해 RTX(Real Time Extension)를 더 구비하는 것을 특징으로 하는 듀얼 암 로봇 제어장치.The PC is composed of a dual core CPU (dual core central processing unit), Dual arm robot control device, characterized in that further comprises a Real Time Extension (RTX) to secure the real-time of kinematic calculation of Windows XP. 제 1항에 있어서,The method of claim 1, 상기 PC의 Dual core CPU 중 하나의 CPU는 OLP 및 Window XP에 할당되고, 다른 하나의 CPU는 RTX에 할당되는 것이 특징인 듀얼 암 로봇 제어장치.One CPU of the dual core CPU of the PC is assigned to the OLP and Window XP, the other CPU is characterized in that the dual-arm robot controller. 제 2항에 있어서,The method of claim 2, 상기 모션보드는 OLP 및 Window XP에 할당된 CPU의 기구학 및 보간 알고리즘 의 실시간 연산 및 모션보드의 제어알고리즘의 실시간 연산을 위하여 상기 PC의 타이머의 시간을 기준으로 하고 모션보드에서 타이머가 인터럽트되면 다시 PC에 인터럽트를 발생하는 기구학 알고리즘이 포함된 Host task(호스트 테스크)가 실행되도록 하는 것을 특징으로 하는 듀얼 암 로봇 제어장치.The motion board is based on the time of the timer of the PC for the real-time calculation of the kinematics and interpolation algorithm of the CPU assigned to OLP and Window XP and the control algorithm of the motion board. A dual arm robot controller, wherein a host task including a kinematic algorithm for generating an interrupt is executed. 제 1항에 있어서,The method of claim 1, 상기 통신수단은 RS232(직렬 인터페이스), CAN(Controller Area Network), LAN(Local Area Network) 중 어느 하나인 것을 특징으로 하는 듀얼 암 로봇 제어장치.The communication means is a dual-arm robot control apparatus, characterized in that any one of RS232 (serial interface), CAN (Controller Area Network), LAN (Local Area Network). 제 1항에 있어서,The method of claim 1, 상기 모션보드는 MEI ZMP board인 것을 특징으로 하는 듀얼 암 로봇 제어장치.The motion board is a dual arm robot control device, characterized in that the MEI ZMP board. 제 1항에 있어서, The method of claim 1, 상기 모터 AMP는 SyncNet 프로토콜을 지원하는 모터 AMP인 것을 특징으로 하는 듀얼 암 로봇 제어장치.The motor AMP is a dual arm robot control device, characterized in that the motor AMP supporting the SyncNet protocol.
KR1020070110070A 2007-10-31 2007-10-31 Robot Controller KR100919115B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070110070A KR100919115B1 (en) 2007-10-31 2007-10-31 Robot Controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070110070A KR100919115B1 (en) 2007-10-31 2007-10-31 Robot Controller

Publications (2)

Publication Number Publication Date
KR20090044131A true KR20090044131A (en) 2009-05-07
KR100919115B1 KR100919115B1 (en) 2009-09-25

Family

ID=40854740

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070110070A KR100919115B1 (en) 2007-10-31 2007-10-31 Robot Controller

Country Status (1)

Country Link
KR (1) KR100919115B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101502152B1 (en) * 2013-06-21 2015-03-13 한국기계연구원 method of controlling posture for dual-arm robot
CN113726226A (en) * 2021-08-03 2021-11-30 九江精密测试技术研究所 Combined control system of combined rotary table

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02411A (en) * 1987-11-19 1990-01-05 Takeda Chem Ind Ltd Food for cooking with microwave oven
DE19740775A1 (en) * 1997-09-17 1999-03-18 Focke & Co Control system for especially palletizing systems with robots
JP2006107050A (en) 2004-10-04 2006-04-20 Fanuc Ltd Cooperative operation controller for a plurality of robots

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101502152B1 (en) * 2013-06-21 2015-03-13 한국기계연구원 method of controlling posture for dual-arm robot
CN113726226A (en) * 2021-08-03 2021-11-30 九江精密测试技术研究所 Combined control system of combined rotary table
CN113726226B (en) * 2021-08-03 2024-05-17 九江精密测试技术研究所 Combined control system of combined turntable

Also Published As

Publication number Publication date
KR100919115B1 (en) 2009-09-25

Similar Documents

Publication Publication Date Title
CA2306901C (en) Robot control apparatus and control method
CN108942932B (en) Industrial robot control system and method based on EtherCAT bus
EP2372478B1 (en) Motor driving system and motor controller
RU2273874C2 (en) Method for operating technical plant and system for controlling operation process of technical plant
KR100945884B1 (en) Embedded robot control system
Thramboulidis Development of distributed industrial control applications: The CORFU framework
CN109471435B (en) Multi-heterogeneous mobile robot control system
US4962338A (en) Universal robot control board configuration
Gu et al. Design of a distributed multiaxis motion control system using the IEEE-1394 bus
KR100919115B1 (en) Robot Controller
Delgado et al. An EtherCAT-based real-time motion control system in mobile robot application
CN106945045B (en) communication method and system for robot control based on ROS and OROCOS
Petersson et al. Dca: A distributed control architecture for robotics
CN113631328B (en) Scalable safety system for robotic systems
US10754320B2 (en) Method and apparatus for integrating an external motion planner with an industrial controller
CN2836349Y (en) Universal industrial protocol Ethernet adapter
Krah et al. Lean and fast fieldbus based safety functionality for drives in automation
CN112792812A (en) Robot control device and robot system
CN112068500A (en) Control system
Robertz et al. Industrial robot motion control with real-time Java and EtherCAT
Gu et al. Control system design of 6-DOFs serial manipulator based on real-time ethernet
Dong et al. A simple and effective emulation tool interface development for tricept application
Liu et al. The developmental design of the intelligent slave station based on the profibus-DP fieldbus
Wruetz et al. A wireless multi-robot network approach for industry 4.0 using RoBO2L
Hace et al. The open CNC controller for a cutting machine

Legal Events

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

Payment date: 20130621

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140605

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150609

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160620

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170621

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee