Hardware and software platforms for an industrial robot controller

Hardware and Software Platforms for Industrial Robot Controllers

Aug. 2008

Gyoung Hwan Kim. Ph.D.

gyounghkim@open-robotics.com

 Questions

  • State-of-art robot controllers ?
  • Design concept ?
  • Internals of robot controllers?
  • Next robot controller ?

Robot Programming

  • AL: Stanford Univ., 1981
  • VAL: Unimation, 1980
  • PAL: Purdue Univ., 1981
  • “Robot Manipulators”, R. P. Paul, 1981
  • RCCL: Purdue Univ., 1983
  • Multi-RCCL: JPL, McGill Univ., 1990
    Dead research areaNote that Samsung’s robot language is based on VAL.

Robot Control

  • Kinematics-based control: independent joint control
  • Dynamics-based control: ~1990
  • Direct drive arms
  • Flexible robot control
    Matured research area

State-of-art Robot Controller ?

Robot Controller Developed

Robot Controller developed for SCARA and transfer robots

Design Concept ?

Internals of Robot Controllers ?

Robot Controller Structure

Servo Controller Structures

  • Type 1. Drive interface board + 1-axis drives
  • Type 2. Servo board + “IPM + DC-link”s
  • Type 3. Servo board + IPMs + DC-link
    Note that 1-axis drive = servo processor + IPM + DC-link circuit.

 

Type 1. Servo Controller

  • High-power applications.
  • Conventional control scheme.
  • Commercial 1-axis drives.

Type 1 Drive Interface Board
(developed and tested)

  • TI TMS320F2812 DSP for linear interpolation.
  • FPGA for binary rate multiplication and encoder pulse counters.
  • 6 channel incremental encoder inputs (electrically isolated).
  • 6 channel pulse outs for 1-axis drives (electrically isolated).

 

Type 2. Servo Controller

  • High-power applications.
  • Flexible control schemes.

Type 3. Servo Controller

  • Low-power applications.
  • Flexible control schemes.

Type 3 Servo Board

  • The most powerful , flexible and advanced servo controller used in commercial industrial robot controllers.
  • Software –only implementation of position, velocity, and current control.
  • 1KHz current loop and 0.5 kHz position and control loop.
  • DSP load is less than 30%.

Type 3 IPM
(Intelligent Power Module)

Type 3 DC-Link Circuit

Robot Controller Structure

Main Processor Board

  • Hardware: X86 motherboard + PCI boards
  • Software: Real-time Linux (RTAI)

CPU Board
(off-the-shelf product)

  • Compact size and low power consumption: Mini-ITX board with an 1GHz VIA CPU.
  • 3 PCI board using a riser card.

Riser Card for 3 PCI Slots

 PCI Boards

  • High speed 4-port serial board: two RS232 ports and two RS422 ports.
  • CC-link PCI board: TI TMS320C2812 DSP with a dual-port memory.
  • RTAI RTDM drive driver for the serial board and Linux device driver for the CC-link board are also developed.

Four-port Serial PCI Board

CC-Link PCI Board

Profibus PCI Board

Parallel I/O board

  • Intelligent parallel I/O board – TI TMS320F2812 DSP.
  • Electrically isolated 24 inputs and 24 outputs.

Main-to-Servo Interface

  • Main processor to servo controller interface:
    – electrically isolated.
    – high-speed (2.5M bps) serial interface – RS422.

Tested Configurations

  • One SCARA robot + one X-Y robot.
  • Three X-Y robots.
  • One transfer robot with one driving axis.

SCARA + X-Y robots

LCD Transfer Robot with a Driving Axis

Next Robot Controllers ?

  • For larger robots, a drive interface board is developed.
  • If needed, RCCL can be used.

Conclusion

  • A flexible robot controller is developed and tested with SCARA robots and transfer robots.

산업용 로봇 제어의 뒷이야기

산업용 로봇의 초창기에 제어 분야의 많은 사람들이 산업용 로봇에 관심을 보였다.  그 당시에는 많은 제어 이론 중 하나를 골라 다른 사람 보다 먼저 로봇에 적용하기만 해도 논문이 학술지에 실릴 수 있었기 때문에, 로봇 학술지가 제어 이론의 “슈퍼마켓” 분위기 였다고 말할 수 있다.   

plant의 보다 정확한 model를 구할 수 있으면, 제어기의 성능 향상을 가져 올 거라는 믿음을 가지고 많은 사람들이 robot의 dynamic model를 구하려는 연구에 뛰어 들었다. 이러한 연구를 가장 먼저 시작한 사람 중 하나가  J. Y. S. Luh 교수이다.

J. Y. S. Luh는 Purdue University 교수로 재직 당시 Richard Paul을 Purdue University로 데려 왔다. Purdue University로 이끌었다고 영어로 표현하던 데, 당시 robotics가 독립된 학문 분야가 아니었기 때문에 Richard Paul이 Stanford University에서 박사 학위를 받고 학교로 가기가 쉽지 않았을 것이라 추측된다. 참고로  manipulator에 computer를 연결한 최초의 (실질적으로) 사람이 Richard Paul이고, robotics 분야에서 최초로 박사 학위를 받은 사람이라고 생각한다. 물론 robotics 분야를 어떻게 정의하는 지에 따라 최초의 기준은 달라질 수 있다.   

robot의 forward/inverse dynamic model를 구하면서 당면했던 문제는 계산 시간이였다. CPU의 computing power가 충분하지 않았기 때문에,  곱셈 수가 작은 inverse dynamics equations의 계산 algorithms을 구하려 하였다. C. S. G. Lee (개인적으로 내 박사학위 지도교수이기도 하다)는 이러한 계산의 lower bound를 구하여 IEEE follow가 되었다.

forward/inverse dynamics 계산식을 구한 후에 이를 realtime으로 계산하여 실제 control에 적용해 보고자 하였다. transputer도 시도되었으며, multiple CPU baords를 가진 VMEbus 또는 Multibus systems으로 robot controller를 구성해 보는 것이 당시 hot research topic이였다. 또한 dynamic model의 symbol derivation과 실제 실험을 통해  robot의 dynamic parameters를 구하려는 연구 역시 진행되었다.

많은 사람들이 노력한 결과,  dynamics-based realtime control algorithms을 (industrial) robot controller에 구현할 수 있게 되었다. 그 실험 결과는 불행하게도 kinematic-based control (independent joint control) 방식에 비해 우월한 성능 향상을 보이지 않았다. 높은 기어 감속비와 비교적 낮은 joint velocity와 acceleration를 가진 산업용 로봇의 경우,  robot dynamics의 영향을  그다지 크지 받지 않게 된다.

연구는 계속 진행되어야 하기 때문에,  이제 dyamics-based control algorithms을 적용할 수 있는 robot arm을 제작해 보고자 시도하였다. 이런 이유로 등장한 것이 direct drive arm이다. 감속 기어를 제거하면 원하는 joint torque를 발생시키기 위해 대용량의 motor가 필요하고 이에 따라 joint의 weight 역시 증가하게 된다. 따라서 중력의 영향을 받지 않는 first axis를 제외한 다른 axis에  direct drive 방식을 적용할 수 없었다. 

이 때 중력의 영향을 받지 않으며, rigid body를 요구하지 않는 robot 응용이 등장하였다. NASA는 space shuttle에 canadaarm이라 불리우는 robot arm을 장착하여 활용하려 하였으며,  산하 연구기관인 JPL에 많은 연구비를 지원하였다. 이에 따라 flexible manipulator라는 연구 topic이 생겼으며,  (flexible) robot arm의 vibration 문제가 관찰되어 이에 대한 연구 역시 활발하게 이루어졌다.

NASA가 robot 관련 연구비 지원을 중단하고, 미국의 제조업 회사들이 공장을 해외로 이전함에 따라 산업용 로봇에 대한 연구가 미국에서  점차 사라지게 되었다.    

과거 robot control 분야에서 다양한 연구가 진행되었으며 그 결과 상당한 양의  연구 결과가 이미 축적되어 있다고 할 수 있다. 그러나, 대부분의 로봇 제어 관련 연구는  인터넷 등장 이전에 이루어졌으며  학술 논문, 학위 논문, 련구 보고서, 특허 등의 형태로 존재한다.  따라서  인터넷 검색을 통해 충분한 정보를 얻기  어려울 수도 있다.