design and implementation of a high power robot distributed … · 2016-10-11 · design and...

6
Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive Multithreaded Processor (D-RMTP) Takuma Shirai * , Kohei Osawa , Hiroyuki Chishiro , Nobuyuki Yamasaki and Masayuki Inaba * * Department of Mechano-Informatics, University of Tokyo, Japan Department of Information and Computer Science, Keio University, Japan Graduate School of Industrial Technology, Advanced Institute of Industrial Technology, Japan Abstract— The robotics field provides with many typical applications of Cyber-Physical Systems (CPS). Robots are ex- pected to be deployed in a wide variety of applications including life supporting work or disaster response and therefore they need to follow strict safety and dependability constraints. In order to create robots with high utility, safety and dependability, research has focused both on creating mechanically safe systems and safe control laws. Throughout the present work, we use the embedded real- time processor D-RMTP as a motor controller to attain high responsiveness on a high power robot. D-RMTP has a hardware mechanism to support hard real-time processing, which enables lower-jitter and lower-overhead processing compared with con- ventional software based real-time execution (Real-Time Task). Responsive Task, a real-time execution mechanism based on D-RMTP, has also been proposed in recent works. In this paper, we have evaluated the effects of the low- jitter and low-overhead performance of Responsive Task on a distributed robot control system. The result of the experiment showed that Responsive Task resulted in improving the control cycle speed and the responsiveness of the controller. I. INTRODUCTION The Robotics field provides with many typical examples of Cyber-Physical Systems (CPS)[1]. In recent years, the improvement of computer system performance has enlarged the domain of applications that can be addressed by robots. Furthermore, since the recent introduction of ISO13482, an international safety standard for life support robots released in 2014, robots are expected to work even closer to humans than before. Therefore, it becomes of prime importance to develop mechanisms and controllers which fulfill the require- ments of this safety standard. More notably, the standard now allows the use of a safety mechanism with a digital controller which has been thoroughly tested and approved, and which has been restricted before to mechanically safe systems only. This opens the door to utilize a life support robot as a commercial product, which was more difficult due to these safety problems. It is imperative to develop high-precision and high-speed sensing technologies when we address issues of safety and dependability of robotics control systems. Such improved sensing also allows the robot to perform increasingly more complex tasks because of its ability to move their manip- ulators quickly and with more dexterity. This has been the case for our human-like robot HRP3L-JSK[2] and JAXON[3] developed in previous works which can show fast and high response to external forces, high acceleration when foots are Fig. 1. High Power Humanoid Leg, HRP3L-JSK[2] put in contact with ground or objects in the environment (See Fig.1). Yamasaki developed an embedded real-time processor, Responsive Multithreaded Processor (RMTP)[4], and a real- time communication link, Responsive Link[5], which have proven strong potential for real-time distributed robot control systems applicability. Additionally, Watanabe et al. devel- oped a low-latency real-time execution mechanism for hard real-time task which works on RMTP, named Responsive Task, and evaluated its basic performances in a recent study[6]. This evaluation has only considered the case of simple mathematical operations and hence performances on an actual task including data transmission with an outer device and an actuator controller have still to be verified. In this paper, we first introduce our distributed control system which is composed of multiple networked controllers. This distributed system can be flexibly configured according to the physical body structure of robots. We then apply the Responsive Task and verify its performance in the case of a motor control task. Finally we evaluate the system as a whole and ensure that real-time execution and responsiveness are correctly implemented on each of our control nodes and enforced in the distributed control system. II. REQUIREMENTS A. Duty Cycle Execution cycles of a robot controller are commonly set to 1[msec] cycle (1000Hz). This value is conventional for embedded robot control systems which can control a joint angle with adequate accuracy and do not cause a deadline miss during a task execution. However, faster cycles become required in order to improve precision and responsiveness

Upload: others

Post on 26-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

Design and Implementation of A High Power Robot Distributed Control

System on Dependable Responsive Multithreaded Processor (D-RMTP)

Takuma Shirai∗, Kohei Osawa†, Hiroyuki Chishiro‡, Nobuyuki Yamasaki† and Masayuki Inaba∗

∗Department of Mechano-Informatics, University of Tokyo, Japan†Department of Information and Computer Science, Keio University, Japan

‡Graduate School of Industrial Technology, Advanced Institute of Industrial Technology, Japan

Abstract— The robotics field provides with many typicalapplications of Cyber-Physical Systems (CPS). Robots are ex-pected to be deployed in a wide variety of applications includinglife supporting work or disaster response and therefore theyneed to follow strict safety and dependability constraints. Inorder to create robots with high utility, safety and dependability,research has focused both on creating mechanically safe systemsand safe control laws.

Throughout the present work, we use the embedded real-time processor D-RMTP as a motor controller to attain highresponsiveness on a high power robot. D-RMTP has a hardwaremechanism to support hard real-time processing, which enableslower-jitter and lower-overhead processing compared with con-ventional software based real-time execution (Real-Time Task).Responsive Task, a real-time execution mechanism based onD-RMTP, has also been proposed in recent works.

In this paper, we have evaluated the effects of the low-jitter and low-overhead performance of Responsive Task on adistributed robot control system. The result of the experimentshowed that Responsive Task resulted in improving the controlcycle speed and the responsiveness of the controller.

I. INTRODUCTION

The Robotics field provides with many typical examples

of Cyber-Physical Systems (CPS)[1]. In recent years, the

improvement of computer system performance has enlarged

the domain of applications that can be addressed by robots.

Furthermore, since the recent introduction of ISO13482, an

international safety standard for life support robots released

in 2014, robots are expected to work even closer to humans

than before. Therefore, it becomes of prime importance to

develop mechanisms and controllers which fulfill the require-

ments of this safety standard. More notably, the standard

now allows the use of a safety mechanism with a digital

controller which has been thoroughly tested and approved,

and which has been restricted before to mechanically safe

systems only. This opens the door to utilize a life support

robot as a commercial product, which was more difficult due

to these safety problems.

It is imperative to develop high-precision and high-speed

sensing technologies when we address issues of safety and

dependability of robotics control systems. Such improved

sensing also allows the robot to perform increasingly more

complex tasks because of its ability to move their manip-

ulators quickly and with more dexterity. This has been the

case for our human-like robot HRP3L-JSK[2] and JAXON[3]

developed in previous works which can show fast and high

response to external forces, high acceleration when foots are

Fig. 1. High Power Humanoid Leg, HRP3L-JSK[2]

put in contact with ground or objects in the environment (See

Fig.1).

Yamasaki developed an embedded real-time processor,

Responsive Multithreaded Processor (RMTP)[4], and a real-

time communication link, Responsive Link[5], which have

proven strong potential for real-time distributed robot control

systems applicability. Additionally, Watanabe et al. devel-

oped a low-latency real-time execution mechanism for hard

real-time task which works on RMTP, named Responsive

Task, and evaluated its basic performances in a recent

study[6]. This evaluation has only considered the case of

simple mathematical operations and hence performances on

an actual task including data transmission with an outer

device and an actuator controller have still to be verified.

In this paper, we first introduce our distributed control

system which is composed of multiple networked controllers.

This distributed system can be flexibly configured according

to the physical body structure of robots. We then apply the

Responsive Task and verify its performance in the case of

a motor control task. Finally we evaluate the system as a

whole and ensure that real-time execution and responsiveness

are correctly implemented on each of our control nodes and

enforced in the distributed control system.

II. REQUIREMENTS

A. Duty Cycle

Execution cycles of a robot controller are commonly set

to 1[msec] cycle (1000Hz). This value is conventional for

embedded robot control systems which can control a joint

angle with adequate accuracy and do not cause a deadline

miss during a task execution. However, faster cycles become

required in order to improve precision and responsiveness

Page 2: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

Frequency[Hz]10

110

210

310

410

510

610

7

Gain

[dB

]

-200

-150

-100

-50

0

DC motor PI control Frequency Responce

AngleTorque

Fig. 2. Bode plot of DC motor PI controller with angle feedback (or torquefeedback).

further as the demand for power, speed and safety of actuator

augments. In general, increasing the speed of a control cycle

and then increasing feedback gain have good effects on

responsiveness. Fig.2 indicates the bode plot of a motor

controller with angle feedback or torque feedback, which

is calculated by using simple DC motor dynamics model

described as below.

Jmθ̈ = Kti+ τin (1)

Lmi̇+K−1

vθ̇ +Ri = Vin (2)

where θ is motor angle, i is current, Vin is input voltage,

τin is input torque, and [Jm, Kt, Lm, Kv , R] are physical

parameters of motor (parameters are set to be the same value

of the motor used for HRP3L-JSK[2]). This bode plot figures

out that the commonly used duty cycle 1000Hz is enough

speed to control the joint angle, but not for torque control

with large room for improvement. Therefore, improving the

duty cycle of the main controller from 1000Hz dramatically

is one of our targets. However in the case of resource

restricted embedded systems, the increase of duty cycle may

lead to cause a deadline miss and timing jitter which will

conversely affect and ultimately hinder control performance.

B. Network Speed And Latency

Distributed control system is often applied for internal

architecture of human-like robots. Controllers in the system

are connected with each other by internal communication

links such as Ethernet, CAN, I2C and UART. However,

using these ordinary links is getting more difficult because

the increase of control duty cycle consequently raises the

number of packets per unit time. Therefore, high-speed and

low-latency communication links must be implemented in

the control system when considering to increase the duty

cycle of controllers.

C. Jitter

The effect of jitter on the control systems appears as

sensor noise due to sampling timing jitter and performance

deterioration due to control timing jitter. The effect on a

cyclic task is depicted in Fig.3. The real-time cyclic task is

fundamentally scheduled to complete between a release time

and a deadline. By sampling the input signal at shifted timing

from an assumed ideal sampling timing as presented in Fig.3,

the measured input signal trajectory shows differences from

the true trajectory. The same logic applies to the output

Input Signal

Ideal Timing

Actual Timing

T

Sampled Data IdealActual

Time

Time

Release Time Deadline

Sampling Cycle

with Jitter

Fig. 3. Effect of jitter on a cyclic real-time task.

trajectory from the controller. Such output includes noise

which further adds to the ideal values.

Many research works have analyzed the effect of sampling

timing jitter which adds as noise on the top of measured

sensor values. Da[7] computed the effect of the input power

and the timing jitter power on Signal-to-Noise Ratio (SNR).

This work has indicated that if we would like to increase

the SNR of the measured sensor value, the variation of jitter

must be suppressed.

In addition, Skaf[8] evaluated the effect of the control tim-

ing jitter on a feedback controller based on Linear Quadratic

Regulator (LQR). The LQR is a basic controller usually

applied for robot control systems. The evaluation of Skaf

revealed that the percentage of jitter to the control period ∆

T

restricts the upper bound of the evaluated value of LQR. This

evaluation also reported that the evaluated value of LQR on

the system where maximally 20% timing jitter exists gets

worse by about 5% compared to a nominal system, and

also over 25% on the system where a maximum 50% of

timing jitter exists. According to this work, it can be said

that the timing jitter on a control system should be ideally

0 or restricted to less than 20% at the worst case scenario.

The control period of a conventional robot control system

is usually 1–2[msec], therefore, it can be said that there is

enough margin in the system where 100–200[µsec] jitter is

existing. However, when creating a cyclic task with 100–

200[µsec] cycle, the desirable jitter value can be less than

10–20[µsec]. This point becomes more important in the case

of a distributed control system where network latency also

exists due to the overhead in transmitting and receiving data.

This latency generates further timing jitter which also has

adverse effects on a feedback controller[9].

III. ABOUT D-RMTP

A. Dependable Responsive Multithreaded Processor

Dependable Responsive Multithreaded Processor (D-

RMTP) is an embedded processor developed by Yamasaki

and Suito[4][10] and designed to be applied to distributed

real-time systems. The processor has a mechanism to execute

parallel real-time multithreaded processing in hardware. It

is also composed of Responsive Link[5] designed for real-

time communication between distributed control nodes. Re-

Page 3: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

Time

Task 0

Task 1

Task 2

Task 3

Low Priority

High Priority

Task 4

Task 5

Task 6

Task 7

System

Release Time

Deadline

Fig. 4. Real-time execution on RMT PU (from [4]). Eight tasks withpriority value are executed in parallel. A higher priority task can accesshardware resources on the processor in advance to meet its scheduleddeadline.

TABLE I

COMPARISON OF RESPONSIVE TASK AND REAL-TIME TASK

Responsive Task Real-Time Task

Method Hardware (using D-RMTPutilities)

Software (using softwarescheduler)

Overhead less than 1[µsec] (not de-pending on # of tasks)

more than 13[µsec] (de-pending on # of tasks)

Jitter quite low depend on # of tasks, CPUusage, scheduling policy

Usability limited # of executabletasks

not restricted

sponsive Multithreaded Processing Unit (RMT PU), a core

processor inside the D-RMTP chip, has eight logical cores,

which enables to run eight tasks in parallel. Priority values

can be set for each task, then RMT PU can assign arithmetic

units according to real-time requirements of each task. RMT

PU has also a dedicated context cache mechanism to store the

information of registers during a context switch. A context

switch occurs when switching between tasks run in parallel

by a user program.

All these functions significantly reduce the overhead of a

conventional real-time multithread processing through soft-

ware, therefore, a good real-time performance such as a

short real-time execution cycle and low-jitter characteristics

can be attained by this mechanism. An example of par-

allel eight tasks processing with priority on RMT PU is

depicted in Fig.4. In addition to these functions, D-RMTP

is implemented as a System-on-a-Chip (SoC) to be a small

single chip device which is equipped with other peripheral

interfaces such as DDR SDRAM I/Fs, DMAC, UART and

pulse counter.

B. Responsive Task

Responsive Task[6] is a low-latency real-time execution

mechanism developed by Watanabe et al. Responsive Task is

designed to be waked up by interruptions including processor

timer which each logical core is equipped with. When the

processor timer triggers an interruption, the corresponding

active task starts immediately with only one clock latency,

which is a dedicated mechanism of RMT PU (Fig.5). Be-

cause the active task associated with the logical core can

be only one task for each core, Responsive Task must

occupy one of the eight logical cores by one task only. This

mechanism eliminates the overheads such as releasing a task,

scheduler processing and the context switch to the next task,

Release Time Deadline

Responsive

Task 0

Scheduler

Kernel

Real-Time

Task 0

Real-Time

Task 1

return from interrupt

- return from interrupt

- release real-time tasks

- schedule real-time tasks

- perform context switch

Fig. 5. Example of real-time execution of Responsive Task and Real-TimeTask. Responsive Task occupies one core, and immediately wakes up on aninterrupt. Real-Time Task is managed by the scheduler and is dispatchedafter making a scheduler decision.

and which are caused by using a usual software based real-

time scheduler. Owing to this mechanism, Responsive Task

can execute a process with low-jitter in even shorter periods

than that of a real-time multi-task execution through a

software based real-time scheduler. In this paper, we call the

real-time multi-task execution mechanism with the software

based real-time scheduler Real-Time Task as opposed to

Responsive Task we use throughout this paper.

According to the research by Watanabe et al., the overhead

of Responsive Task is about 1[µsec] regardless of the number

of tasks, whereas Real-Time Task shows 13[µsec] overhead

depending on the number of tasks. Moreover, Watanabe

et al. also reported that the release jitter of Responsive

Task is 0.04% in average, and 1.8% at maximum when

processing simple calculation tasks and 0.4% in average

and 3.2% at maximum when processing a task including

multiple memory access. 10µsec cycle execution is available

through Responsive Task. As described in II-C, the desirable

jitter value is less than 10–20[µsec] when the task cycle

is 5k–10k[Hz]. This means that Responsive Task can meet

the jitter value requirements even when its control duty

cycle is increased from current 1kHz. Note that because

Responsive Task occupies the logical cores, the maximum

number of parallel executable tasks is limited by the number

of these logical cores. Therefore, a task with a higher real-

time requirement has to be configured to have higher priority

in order to be assigned the hardware resources in priority and

avoid conflicts with other tasks. The summary of comparison

of Responsive Task and Real-Time Task is shown in TableI.

C. D-RMTP 20mm SiP Board

D-RMTP 20mm SiP (Fig.6) is a System-in-a-Package

(SiP) in which a D-RMTP SoC and necessary devices for

an embedded controller such as a Power module, SDRAM

and FLASH ROM are packed. D-RMTP 20mm SiP board has

also been developed and is equipped with some connectors

for I/Os between D-RMTP 20mm SiP and FPGA (Xilinx,

XC6SLX150) to enable further system extension. In this

paper, we use this D-RMTP 20mm SiP board as a main

actuator controller to develop a real-time control system for

high power robots. The main memories of this board are

Page 4: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

39mm

26mm

SDRAMD-RMTP SoC

FLASH ROM

D-RMTP 20mm SiP Board

Fig. 6. D-RMTP 20mm SiP board (photograph from [10]).

FET Board

Water Block

Active Optical Fiber

Port

RMTP-02D Control Board D-RMTP 20mm SiP Board

(on back side)

Fig. 7. RMTP-02D control board assembled with a FET board, a waterblock module and a D-RMTP 20mm SiP board.

64kB SRAM and 64MB SDRAM. The CPU clock frequency

is 45MHz, which can be configured through a user program.

IV. SYSTEM DESIGN

A. High Power Motor Driver

RMTP-02D control board is designed based on a high

power motor driver for a humanoid robot developed by Urata

et al.[11][12] by adding new functions such as an optical

communication interface to enable fast data transmission

under electrically noisy environment in the robot body and

extendable connectors to attach a D-RMTP 20mm SiP Board.

RMTP-02D control board utilizes a vector controller for a

brushless DC motor (BLDC motor) implemented in FPGA

logic also developed by Urata et al.[12]. The assembled

motor driver module of RMTP-02D control board and a

high power FET thick copper board can perform large torque

outputs and fast motion that exceeds that of a human joint.

The assembled module is depicted in Fig.7. This motor driver

module can supply 50[A] (continuous) and 200[A] (peak)

with 80[V] input voltage. The motor driver module can drive

one motor at a time.

B. High Reactive Robot Control System

The overall structure of our control system has three

control layers as depicted in Fig.8.

The top layer control system is based on a commonly

used x86 computer. We designed this control system to

have a compatibility with the existing system used for

JAXON[3]. The main control PC has two types of real-time

communication interfaces that communicate with actuator

boards and sensor modules at a lower control layer. One is

our custom serial interface and the other is EtherCAT. These

two interfaces are selectable and both interfaces can transmit

and receive data at 1kHz cycle.

In addition, we developed a middle layer controller that

bridges data from the bottom layer controller to the top

layer controller. This board also has functions such as a

Main Control

Computer

・Joint Angle Sequencer

・Real-Time Interface

Top Layer

500Hz-1000Hz

Bottom Layer

5000Hz

Interface Bridge (+ Data Logger)

・D-RMTP(Servo Control)

- Low-Jitter, Low-Latency Feedback

・RMTP-02D

- High Speed Link

- Three Phase Inverter

- Sensor Interfaces

...

・Traffic Control

・Data Buffer

・Packet Capture

Whole Body Controller

(HRPSYS[3])

Distributed Motor Controllers

Middle Layer

1000Hz-5000Hz

- EtherCAT

- Custom Serial Interface

(100Mbps, 1kHz)

(20Mbps, 1kHz)

Fig. 8. Distributed robot control system by using RMTP-02D control boardand D-RMTP.

D-RMTP FPGA

Thread Status Monitor Task(1Hz)

Vector ControllerIq target

Id target

Temperature Estimation Task(100Hz)

Servo Control Task(1k-5kHz)

Scheduler (only for Real-Time Task)

PD Controller

Data Receiver

Error Checker

Limiter

Data Transmitter

Actu

ato

r S

tatu

s

✁current,✁target

Iqtarget,Idtarget

Distributed

Shared

Memory

Functional

Protocol

Block

Hi-S

peed

Tra

nsce

ive

r

High-Speed Link Core

Sensor Data Register

32bit D

ata

Bu

s

32bit D

ata

Bu

s

✁target

mode

✁current

Iq,Id

✁current

✁target

P gain

D gain

Fig. 9. Motor control system and data flows inside the D-RMTP and theFPGA on RMTP-02D control board.

network hub to connect multiple channels and a data buffer.

Furthermore, an embedded Linux system is running on the

board, where data logger and error detecting applications

are implemented. A high-speed communication mechanism

with RMTP-02D control board on the bottom layer is im-

plemented through the Active Optical Fiber which supports

a high-speed transceiver.

The bottom layer controller consists of some RMTP-02D

control boards. Each board has two Active Optical Fiber

ports, and by daisy chain connection, the required number

of controller boards for a target robot can be connected in

single network. The block diagram of the motor servo task

we developed in RMTP-02D control board with Responsive

Task and Real-Time Task is depicted in Fig.9. The inputs of

the controller, such as the current joint angle (an encoder

counter value) and the target joint angle and controller

parameters, are obtained from FPGA on RMTP-02D control

board through the High-Speed Link Core. This High-Speed

Link has an ability to transmit and receive at 2.5Gbps. For

the time being, a motor core temperature estimation task and

a thread status monitoring task which computes statistics on

each thread are also executed.

Page 5: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

TABLE II

CONFIGURATIONS OF THE EXPERIMENT

Label Execution Mechanism Period P Gain D Gain

A Responsive Task 1000Hz 1200 1000

B Responsive Task 5000Hz 2000 1000

C Real-Time Task 1000Hz 960 1000

D Real-Time Task 2000Hz 880 1000

V. EVALUATIONS

In order to evaluate the effect of Responsive Task on

the performance of the motor servo task, we conducted an

experiment that measures the trajectories of step response

by using a single joint test bed. The single joint test bed

is depicted in Fig.10. This test bed is actuated by a 200W

BLDC motor manufactured by MAXON, which is the same

product used for HRP3L-JSK and JAXON. The structure of

this test bed is simply composed of a 3.75:1 low gear ratio

reduction pulley and a single bar link, therefore, losses due

to reduction pulley and vibration caused by the stiffness of

the joint can be ignored.

In this experiment we gave a circular trajectory which

spans 360◦ during 0.100[sec] as a target angle. This target

trajectory is generated by a joint angle sequencer running on

the main control PC at 500Hz cycle using the minimum jerk

interpolation method. The target angle is then transmitted

to D-RMTP through the real-time interface at every period

of the control cycle. In addition, this rotational angle is

equivalent to about 5.6◦ in an actual robot angle with 240:1

reduction ratio, and the maximum joint angular velocity on

the trajectory is about 1/10 of the maximum angular speed

capability of the motor driver. Therefore, the target trajectory

has enough margin from the output power perspective.

The motor servo task is implemented through a PD con-

troller, and this task needs about 31.2µsec processing time

in average on the D-RMTP running with a 45MHz clock.

We logged and compared the response trajectory on four

configurations presented in TableII. The execution cycle of

motor servo task and the real-time execution mechanism

(Responsive Task or Real-Time Task) was combined in these

configurations. Since the scheduler must be called more

frequently than the shortest period of the tasks processed

on Real-Time Task, an increase in the cycle of the tasks

results in an even bigger increase in the scheduler overhead.

For this reason, the practical maximum cycle of the motor

servo task reaches 2000Hz with Real-Time Task under this

experiment. In addition, the PD controller parameters, the

P gain and the D gain, were tuned to minimize time until

stabilization and oscillations (TableII). When higher gain

value than the value on TableII was applied, the joint angle

controller got difficulty in stabilizing after joint movement.

Also, the time constant Ts of a low-pass filter which is

used during calculation of the D term has been adjusted to

Ts = 0.001 for each control cycle.

A. Results

The joint angle trajectories of the step response gathered

from experiments are shown in Fig.11. We adjusted the time

offset of each trajectory so as to align the leading edges of

Fig. 10. Test instrument witha single bar link.

time[sec]0 0.1 0.2 0.3 0.4

angl

e[de

g]

0

100

200

300

400Joint Angle

Target1000Hz-resp-01-105000Hz-resp-01-101000Hz-rt-01-102000Hz-rt-01-10

Fig. 11. Trajectories of a joint angle.

time[sec]0.1 0.105 0.11 0.115 0.12

angl

e[de

g]

-10

0

10

20

30

40

50Joint Angle

Target1000Hz-resp-01-105000Hz-resp-01-101000Hz-rt-01-102000Hz-rt-01-10

time[sec]0.18 0.19 0.2 0.21 0.22

angl

e[de

g]

350

352

354

356

358

360

362

364

366

368

370Joint Angle

Target1000Hz-resp-01-105000Hz-resp-01-101000Hz-rt-01-102000Hz-rt-01-10

Fig. 12. Trajectories of a joint angle (Showing leading edge area on theleft and the settling area on the right).

TABLE III

WORST CASE ERROR OF THE JOINT ANGLE FOR EACH TRIAL

A B C D

overshoot[deg] 9.69 4.94 6.57 13.05

max error[deg] -42.52 -26.92 -53.32 -46.08

TABLE IV

AVERAGE MANHATTAN DISTANCES OF JOINT ANGLE TRAJECTORIES

A:1000Hz(resp) B:5000Hz(resp) C:1000Hz(RT) D:2000Hz(RT)

0.2008 0.0639 0.0873 1.7911

each target joint angle trajectory on 0.100[sec]. The left part

of Fig.12 shows an enlarged view near the leading edge of

Fig.11 and the right part of Fig.12 shows the settling area of

the same figure. Also, Fig.13 shows the error angle trajectory

of the target joint angle and the current joint angle.

TableIII shows the worst case value of the overshoot

and the maximum value of the error angle at the leading

edge during 10 times trial for each experiment configuration.

The configuration B shows 4.94◦ of overshoot and −26.92◦

of maximum error angle. This is the best performance of

overshoot and maximum error among all 4 configurations.

We then evaluated the variation of the joint angle trajec-

tories in 10 experiments and between each configuration.

Throughout this experiment, we used the Manhattan distance

of trajectories as an evaluation index since each trajectory

had a similar curve. The Manhattan distance reflects the

difference of trajectory shape and the phase shift of the

trajectory. TableIV shows the results of calculating the aver-

age Manhattan distance from the average trajectory for each

configuration. The variation of trajectories was less than 1◦

for the configuration A,B and C, and only the configuration

D showed a large variation.

Page 6: Design and Implementation of A High Power Robot Distributed … · 2016-10-11 · Design and Implementation of A High Power Robot Distributed Control System on Dependable Responsive

time[sec]0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4

erro

r an

gle[

deg]

-60

-40

-20

0

20Joint Angle Error

1000Hz-resp5000Hz-resp1000Hz-rt2000Hz-rt

Fig. 13. Trajectories of joint angle error.

B. Discussion

The experiment results showed that the configuration B

was obviously the best configuration with significant dif-

ference than others in accuracy and the repetitive precision

of the control. The value of P gain can be considered to

be predominant for the error value at leading edge, where

the quick increase of target current value is effective in

order to follow the changing target joint angle. In general,

increasing the speed of control cycle prevents oscillating

when increasing the value of P gain, and then improves the

responsiveness to quick change in input values.

On the other hand, the configuration D showed that the

variation throughout the 10 times experiments was about

1.8◦ in average when converted to joint angle variation.

This variation is particularly large compared with other

configurations. The scheduler is also frequently called, at

more than 2000Hz, when we use Real-Time Task with

2000Hz cycle configuration. In this case, the overhead due

to the scheduler relatively increases the CPU usage, which in

turn causes important timing jitter during the servo task. We

think this is the reason why configuration D did not improve

the performance or even got worse when considering the

repetitive precision of servo control. This was observed de-

spite the increase of the value of P gain thanks to the in turn

increase of the control cycle compared with configuration C.

In the light of the discussion above, Responsive Task,

which held apparent repetitive precision with 5000Hz cycle

execution and even improved the accuracy of control through

the increase of the speed of control cycle, has provided with

superior results in comparison with Real-Time Task.

VI. CONCLUSIONS

In this paper, we designed and developed a real-time

distributed control system for a high power robot using

D-RMTP and Responsive Task. We developed RMTP-02D

control board to drive high power motors using D-RMTP,

and then composed a distributed robot control system which

implements a high speed communication network which can

connect to an existing upper layer robot control system.

The experiment showed that Responsive Task provides with

improved results in terms of responsiveness and precision of

a high speed servo motor control. This was due to its low-

jitter and low-overhead superior performance. The control

law used in experiments was a PD control which has small

calculation amount and does not require important CPU

resources. Still, results have proved that the improvement of

the real-time mechanism for a cyclic task has the potential

to improve the performance of a control system to a great

effect.

In the future, we would like to work on improving the

control law itself in order to achieve even higher control

performance for the system as a whole. A high responsive

force controller with a wide controllable bandwidth, and

which enables the robot manipulator to act as a safe arm with

flexibility comparable to springs and damper based systems,

could be challenging to implement on Responsive Task.

ACKNOWLEDGMENT

This research was supported by Japan Science and Tech-

nology (JST)’s CREST project for “Fundamental Technolo-

gies for Dependable VLSI System”.

REFERENCES

[1] E. A. Lee, “Cyber Physical Systems: Design Challenges,” inProceedings of the 11th IEEE International Symposium on

Object/Component/Service-Oriented Real-Time Distributed Comput-

ing, May 2008, pp. 363–369.[2] J. Urata, Y. Nakanishi, K. Okada, and M. Inaba, “Design of High

Torque and High Speed Leg Module for High Power Humanoid,”in Proceedings of the 2010 IEEE/RSJ International Conference on

Intelligent Robots and Systems, Oct. 2010, pp. 4497–4502.[3] Y. Kakiuchi, K. Kojima, E. Kuroiwa, S. Noda, M. Murooka, I. Kuma-

gai, R. Ueda, F. Sugai, S. Nozawa, K. Okada, and M. Inaba, “Devel-opment of Humanoid Robot System for Disaster Response ThroughTeam NEDO-JSK’s Approach to DARPA Robotics Challenge Finals,”in Proceedings of the 15th IEEE-RAS International Conference on

Humanoid Robots, Nov. 2015, pp. 805–810.[4] N. Yamasaki, “Responsive Multithreaded Processor for Distributed

Real-Time Systems,” Journal of Robotics and Mechatronics, vol. 17,no. 2, pp. 130–141, Feb. 2005.

[5] ——, “Responsive Link for Distributed Real-Time Processing,” inProceedings of the 10th International Workshop on Innovative Ar-

chitecture for Future Generation High-Performance Processors and

Systems, Jan. 2007, pp. 20–29.[6] H. Watanabe, K. Mizotani, Y. Hatori, H. Chishiro, and N. Yamasaki,

“A Low Latency Real-Time Execution with Interrupt Wake-up Struc-ture,” in Proceedings of the Embedded System Symposium 2015, Oct.2015, pp. 74–83, (in Japanese).

[7] N. D. Dalt, M. Harteneck, C. Sandner, and A. Wiesbauer, “On theJitter Requirements of the Sampling Clock for Analog-to-Digital Con-verters,” IEEE Transactions on Circuits and Systems I: Fundamental

Theory and Applications, vol. 49, no. 9, pp. 1354–1360, Sep. 2002.[8] J. Skaf and S. Boyd, “Analysis and Synthesis of State-Feedback

Controllers with Timing Jitter,” IEEE Transactions on Automatic

Control, vol. 54, no. 3, pp. 652–657, Mar. 2009.[9] A. Y. Bhave and B. H. Krogh, “Performance Bounds on State-

Feedback Controllers with Network Delay,” in Proceedings of the 47th

IEEE Conference on Decision and Control, Dec. 2008, pp. 4608–4613.[10] K. Suito, R. Ueda, K. Fujii, T. Kogo, H. Matsutani, and N. Yamasaki,

“The Dependable Responsive Multithreaded Processor for DistributedReal-Time Systems,” IEEE Micro, vol. 32, no. 6, pp. 52–61, Dec.2012.

[11] J. Urata, T. Hirose, Y. Namiki, Y. Nakanishi, I. Mizuuchi, andM. Inaba, “Thermal Control of Electrical Motors for High-Power Hu-manoid Robots,” in Proceedings of the 2008 IEEE/RSJ International

Conference on Intelligent Robots and Systems, Sep. 2008, pp. 2047–2052.

[12] N. Ito, J. Urata, Y. Nakanishi, K. Okada, and M. Inaba, “Developmentof Very Small High Output Motor Driver for Realizing ForcefulMusculoskeletal Humanoids,” in Proceedings of the 10th IEEE-RAS

International Conference on Humanoid Robots, Dec. 2010, pp. 385–390.