JP2001322078A - Robot control device - Google Patents

Robot control device

Info

Publication number
JP2001322078A
JP2001322078A JP2000141153A JP2000141153A JP2001322078A JP 2001322078 A JP2001322078 A JP 2001322078A JP 2000141153 A JP2000141153 A JP 2000141153A JP 2000141153 A JP2000141153 A JP 2000141153A JP 2001322078 A JP2001322078 A JP 2001322078A
Authority
JP
Japan
Prior art keywords
motor
fpga
robot
control
control device
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2000141153A
Other languages
Japanese (ja)
Inventor
Kazue Sumiya
和重 角谷
Shinya Kataoka
信哉 片岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2000141153A priority Critical patent/JP2001322078A/en
Publication of JP2001322078A publication Critical patent/JP2001322078A/en
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To easily realize hardware constitution corresponding to a desired application, at a low cost only by changing the program of an FPGA 26 according to a purpose. SOLUTION: This control device 10 is provided with a voltage driving circuit 38 for driving by applying driving voltage to a motor 32 for actuating the operating parts of a robot; a first programmable device 26 (such as an FPGA) for supplying the voltage driving circuit 38 with a control signal; and a sensor interface 36 for feeding a detection signal from the motor 32 back to the first programmable device 26. The control device 10 is further provided with a microcontroller 16 for reloading the program of the first FPGA 26; a communication interface 20 for incorporating external data into the controller 16 via a communication terminal 18; and a second FPGA 22 for executing an application program in cooperation with the first FPGA 26.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】この発明はロボットの制御装置に
関し、特にたとえばハードウエア論理回路を繰り返し変
更可能なプログラマブルデバイスを用いて希望する動き
やアプリケーションに応じたハードウエア構成を提供す
るロボットの制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a robot controller, and more particularly to a robot controller which provides a hardware configuration according to a desired motion or application by using a programmable device capable of repeatedly changing a hardware logic circuit. About.

【0002】[0002]

【従来の技術】例えば、複数個のアクチュエータを組み
合わせて目的とする動作(作業、行動、ジェスチャー、
顔面表情など)を実現する、例えばパーソナルロボット
のコントローラは、その目的とする動作に応じた特有の
コントローラやセンサインタフェースおよびアクチュエ
ータ駆動回路などが必要である。
2. Description of the Related Art For example, a desired operation (work, action, gesture,
For example, a controller of a personal robot that realizes a facial expression or the like requires a specific controller, a sensor interface, an actuator drive circuit, and the like corresponding to the intended operation.

【0003】従って、実現したいロボットの動作が大き
く変わると、その動作を制御するコントローラは対応不
能となり、殆ど全ての構成要素を変更しなければ目的と
する動作が実現できないことになる。
Therefore, if the operation of the robot to be realized is greatly changed, a controller for controlling the operation becomes incompatible, and the intended operation cannot be realized unless almost all the components are changed.

【0004】[0004]

【発明が解決しようとする課題】そこで、ロボットのコ
ントローラに汎用性を持たせるために、アクチュエータ
駆動回路に必要な制御モード、例えば、トルク制御、速
度制御、位置制御などを全てサポートしようとすると、
この駆動回路は大規模化してコスト的に割高となる。ま
た、このようなハード面の問題を回避するためにソフト
ウェアサーボを実現しようとすれば、コントロールする
アクチュエータの個数が多くなれば、それに伴い上位の
プロセッサの演算能力が要求されることになり、高価な
高速演算プロセッサを必要とすることになる。
Therefore, in order to make the controller of the robot versatile, all control modes required for the actuator drive circuit, such as torque control, speed control, and position control, are to be supported.
This drive circuit becomes large-scale and is costly. In order to realize software servo in order to avoid such a hardware problem, if the number of actuators to be controlled is increased, the computing power of a higher-order processor is required, which increases the cost. Therefore, a high-speed arithmetic processor is required.

【0005】この発明は、上述の問題を解決するため
に、安価にして目的とする動きやアプリケーションに応
じたハードウエアを容易に構成し得る、ロボットの制御
装置を提供することである。
An object of the present invention is to provide a robot control apparatus which can easily configure hardware corresponding to a target motion or application at a low cost in order to solve the above-mentioned problems.

【0006】[0006]

【課題を解決するための手段】この発明は、ロボットの
動作部分に設けられるモータ、このモータに駆動電圧を
付与するドライバ、およびこのドライバに制御信号を与
えるためのハードウエア構成をプログラムによって変更
可能な第1プログラマブルコントローラを備える、ロボ
ットの制御装置である。
According to the present invention, a motor provided in an operating portion of a robot, a driver for applying a drive voltage to the motor, and a hardware configuration for providing a control signal to the driver can be changed by a program. A control device for a robot including a first programmable controller.

【0007】[0007]

【作用】ロボットの動作部分を作動するモータのドライ
バは、第1プログラマブルコントローラのプログラムを
変更することにより、電圧制御や電流制御を簡単に設定
でき、その結果、目的に応じてモータのトルク制御や速
度制御等の変更が容易となる。
The driver of the motor that operates the operation part of the robot can easily set the voltage control and the current control by changing the program of the first programmable controller. As a result, the motor torque control and the motor control can be performed according to the purpose. Changes in speed control and the like become easy.

【0008】[0008]

【発明の効果】この発明によれば、例えば、プログラマ
ブルコントローラのハードウエア構成を変更するだけ
で、大規模な回路や高速演算プロセッサを用いることな
く、ロボットのアクチュエータを駆動するモータをその
アクチュエータに要求される制御方法または態様で制御
できる。
According to the present invention, for example, a motor for driving an actuator of a robot is required for the actuator only by changing the hardware configuration of the programmable controller without using a large-scale circuit or a high-speed arithmetic processor. It can be controlled by the control method or mode performed.

【0009】この発明の上述の目的,その他の目的,特
徴及び利点は、図面を参照して以下に行う実施例の詳細
な説明により一層明らかとなろう。
The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the accompanying drawings.

【0010】[0010]

【実施例】図1はこの発明の一実施例である汎用パーソ
ナルロボットの制御装置10のハードウエア構成を示す
回路ブロック図である。
FIG. 1 is a circuit block diagram showing a hardware configuration of a control device 10 of a general-purpose personal robot according to an embodiment of the present invention.

【0011】図1において、この制御装置10は、上位
の演算能力を備えたメインコントロールボード12と複
数の外部接続ボード14,14、…を含む。
In FIG. 1, the control device 10 includes a main control board 12 having a higher-level computing capability and a plurality of external connection boards 14, 14,...

【0012】メインコントロールボード12はマイクロ
コンピュータを含むマイクロコントローラ16、パソコ
ンなどの外部機器やネットワークあるいは携帯電話など
のパーソナル通信端末18との接続を可能にする通信イ
ンタフェース20、複数の外部接続ボード14とバス接
続されておりかつマイクロコントローラ16からコンフ
ィグレーションにより内部論理演算回路を書き換え可能
なプログラマブルデバイス22およびマイクロコントロ
ーラ16と接続されるメモリ24を搭載している。
The main control board 12 includes a microcontroller 16 including a microcomputer, a communication interface 20 for enabling connection with an external device such as a personal computer, a network or a personal communication terminal 18 such as a mobile phone, and a plurality of external connection boards 14. A programmable device 22 which is connected to a bus and whose internal logical operation circuit can be rewritten by a configuration from the microcontroller 16 and a memory 24 connected to the microcontroller 16 are mounted.

【0013】プログラマブルデバイス22は、例えば内
部のアーキテックチャーがSRAM構造をとるFPGA
(Field Programmable Gate Array)などで、製品とし
ては、ALTERA社やXILINX社などから入手可能である。
The programmable device 22 is, for example, an FPGA whose internal architecture has an SRAM structure.
(Field Programmable Gate Array) and other products are available from ALTERA and XILINX.

【0014】また、メモリ24はマイクロコントローラ
16のプログラムやFPGA22のコンフィグレーショ
ンに必要なデータを格納しておくためのフラッシュメモ
リ等の不揮発性メモリ部とマイクロコントローラ16が
プログラムの実行時に用いるデータを格納するためのR
AM部とから構成される。
A memory 24 stores a nonvolatile memory section such as a flash memory for storing a program of the microcontroller 16 and data necessary for the configuration of the FPGA 22, and stores data used when the microcontroller 16 executes the program. R to do
And an AM unit.

【0015】メインコントロールボード12とバス接続
された各外部接続ボード14にはプログラマブルデバイ
スとしてのFPGA26が搭載されており、このFPG
A26の内部論理演算回路は専用制御信号バス28から
送られるコンフィグレーションデータに従って構成され
る。
Each external connection board 14 bus-connected to the main control board 12 has an FPGA 26 as a programmable device mounted thereon.
The internal logical operation circuit of A26 is configured according to the configuration data sent from the dedicated control signal bus.

【0016】また、メインコントロールボード12およ
び各外部接続ボード14に搭載されるFPGA22およ
び26を相互に接続する接続バス30にはデータ、制御
信号および電源ラインが含まれる。
A connection bus 30 interconnecting the FPGAs 22 and 26 mounted on the main control board 12 and the external connection boards 14 includes data, control signals and power supply lines.

【0017】外部接続ボード14には、例えば汎用パー
ソナルロボット(図示せず)の各動作部分を作動するモ
ータ32,32、32に接続されたエンコーダ34や減
速機等を介した最終段での変位を計測するためのポテン
ショメータ、その他力センサ等デジタルパルスやアナロ
グ電圧信号を取り込み可能な汎用のセンサインタフェー
ス36が搭載され、このセンサインタフェース36より
FPGA26に制御信号が取り込まれる。
The external connection board 14 has a displacement at the final stage via an encoder 34 connected to the motors 32, 32, 32, and a speed reducer, etc., which operate respective operation parts of a general-purpose personal robot (not shown). A general-purpose sensor interface 36 capable of capturing a digital pulse or an analog voltage signal, such as a potentiometer for measuring the force, a force sensor, or the like, is mounted. A control signal is captured by the FPGA 26 from the sensor interface 36.

【0018】各モータ32とFPGA26の間には、こ
のFPGA26からの指令値に従い各モータ32に印加
する電圧を制御する電圧駆動回路(ドライバ)38,3
8,38が夫々接続されている。この電圧駆動回路38
は、例えば、FPGA26から所定の周波数(16kH
z程度)でスイッチングを繰り返し、一周期内のデュー
ティー(電圧がかかるON状態と電圧がかからないOF
F状態の比率)をコントロールするPWM制御などを用
いる。
Between each motor 32 and the FPGA 26, voltage driving circuits (drivers) 38, 3 for controlling a voltage applied to each motor 32 according to a command value from the FPGA 26.
8, 38 are connected respectively. This voltage drive circuit 38
Is a predetermined frequency (16 kHz) from the FPGA 26, for example.
Switching is repeated at about z) and the duty within one cycle (ON state where voltage is applied and OF where voltage is not applied)
PWM control for controlling the F state ratio) is used.

【0019】外部接続ボード14は、図1に点線および
実線で示されるバス構成をとることで、アプリケーショ
ンで使用するモータ32の個数に合わせて、同じ構成の
ボードを複数接続することが可能である。この場合、ボ
ードを識別するIDは、基板上にジャンパーピンを設け
たり、FPGA26のコンフィグレーションデータに直
接書き込んだりすることでその設定が可能である。
The external connection board 14 has a bus configuration shown by a dotted line and a solid line in FIG. 1 so that a plurality of boards having the same configuration can be connected according to the number of motors 32 used in the application. . In this case, the ID for identifying the board can be set by providing a jumper pin on the board or directly writing the configuration data of the FPGA 26.

【0020】また、外部接続ボード14は、モータ駆動
用の同じ構成のボードだけでなく、アプリケーションの
必要に応じて、画像入出力ボード、音声入出力ボード等
も接続可能である。
The external connection board 14 can be connected not only to a board having the same configuration for driving the motor, but also to an image input / output board, a sound input / output board, and the like as required by the application.

【0021】次に、図2に示す動作フローチャートに従
って、図1に示すハードウエアのコンフィグレーション
について説明する。
Next, the configuration of the hardware shown in FIG. 1 will be described with reference to the operation flowchart shown in FIG.

【0022】先ず、電源の投入後、あるいはリセットに
よりスタートし、ステップS1ではメインコントロール
ボード12に搭載したメモリ24上にあるハードウエア
のコンフィグレーションの変更が必要か否かをマイクロ
コントローラ16により判断する。もし“YES”で変
更が必要であれば、ステップS3で各種通信インタフェ
ース20を介して通信端末18よりマイクロコントロー
ラ16を経由して更新データをメモリ24上にダウンロ
ードする。このデータは、前述のフラッシュメモリ等の
不揮発性メモリ部にダウンロードすることで、次回電源
投入時にハードウエアの変更が必要なければ、ダウンロ
ードなしにそのデータでFPGA22のコンフィグレー
ションが可能になる(ステップS1で“NO”の場
合)。
First, the operation is started after the power is turned on or by a reset. In step S1, the microcontroller 16 determines whether or not the hardware configuration on the memory 24 mounted on the main control board 12 needs to be changed. . If a change is required in "YES", the update data is downloaded to the memory 24 from the communication terminal 18 via the microcontroller 16 via the various communication interfaces 20 in step S3. This data is downloaded to a non-volatile memory unit such as the above-mentioned flash memory, so that the configuration of the FPGA 22 can be performed without downloading if no hardware change is required at the next power-on (step S1). And “NO”).

【0023】そして、ステップS3でダウンロード終了
あるいは予め不揮発性メモリ部に格納されていたデータ
によりFPGA22のコンフィグレーション準備が完了
すると、ステップS5でメインコントロールボード12
上のFPGA22より順に専用制御信号バス28を用い
てコンフィグレーションを行う。
Then, in step S3, when the download is completed or when the preparation for the configuration of the FPGA 22 is completed by the data previously stored in the nonvolatile memory unit, the main control board 12
Configuration is performed using the dedicated control signal bus 28 in order from the upper FPGA 22.

【0024】ステップS5でコンフィグレーションが完
了しハードウエア構成が決定すると、ステップS7で通
常のマイコン機器と同様にハードウエアに依存するソフ
トウエア部の初期化を行い、その後ステップS9でハー
ドウエアに応じたアプリケーションソフトのプログラム
を実行する。
When the configuration is completed in step S5 and the hardware configuration is determined, in step S7 initialization of the software part depending on the hardware is performed in the same manner as in a normal microcomputer device, and then in step S9, the initialization is performed according to the hardware. Execute the application software program.

【0025】なお、FPGA用のコンフィグレーション
データは、必ずしも1つである必要はなく、不揮発性メ
モリ部上に複数のコンフィグレーションデータを置いて
おくことも可能であり、コンフィグレーションに用いる
データを選択的に用いることもできる。
The configuration data for the FPGA need not always be one, and a plurality of configuration data can be stored in the non-volatile memory unit. Can also be used.

【0026】また、アプリケーションソフトのプログラ
ムの実行時にでもハードウエアの変更は可能であり、例
えばステップS11においてアプリケーション上で変更
の要求があれば、ステップS3に戻り別のデータをダウ
ンロードするか、メモリ24上から別のデータでコンフ
ィグレーションを行う。
The hardware can be changed even when the application software program is executed. For example, if there is a request for change on the application in step S11, the flow returns to step S3 to download another data, Configure with different data from above.

【0027】なお、外部接続ボード14に搭載されてい
るFPGA26におけるハードウエアのコンフィグレー
ションを行う動作フローチャートも図2と同様につきそ
の説明を省略する。
An operation flowchart for configuring hardware in the FPGA 26 mounted on the external connection board 14 is the same as that in FIG. 2 and the description thereof is omitted.

【0028】次に図3〜図6に基づいて、具体的なハー
ドウエアコンフィグレーションの異なる実施形態を説明
する。この実施形態はいずれもモータの制御モードに関
するものである。このモータは、例えば汎用パーソナル
ロボットの複数の動作部分を作動するのに利用される。 1)モータ32を使ったアプリケーションが、モータ3
2が出力するトルクを利用するトルク制御の場合:この
場合、モータ32の出力トルクは、モータ32のトルク
定数を用いて簡易的にモータ電流に比例する値として計
算できる。この時、各モータ軸のハードウエアは、外部
接続ボード14上で、図3に示すような構成をとること
ができる。
Next, different embodiments of the specific hardware configuration will be described with reference to FIGS. This embodiment relates to a control mode of the motor. This motor is used, for example, to operate a plurality of operating parts of a general-purpose personal robot. 1) The application using the motor 32 is the motor 3
In the case of torque control using the torque output from the motor 2: In this case, the output torque of the motor 32 can be simply calculated as a value proportional to the motor current using the torque constant of the motor 32. At this time, the hardware of each motor shaft can be configured on the external connection board 14 as shown in FIG.

【0029】すなわち、電圧駆動回路38よりモータ3
2に流れる電流を検出する電流センサ40は、通常、電
流値に比例した電圧値を出力するため、この電圧値をA
D変換器42でデジタルの離散値としてサンプリングす
ることでコンフィグレーションされたFPGA26の論
理演算回路に入力することができる。
That is, the motor 3
2 normally outputs a voltage value proportional to the current value.
By sampling as a digital discrete value by the D converter 42, it can be input to the configured logic operation circuit of the FPGA 26.

【0030】電流センサ40およびAD変換器42は、
モータコントロールに必要な汎用のセンサインタフェー
ス36として予め外部接続ボード14に実装されてい
る。
The current sensor 40 and the AD converter 42
It is mounted on the external connection board 14 in advance as a general-purpose sensor interface 36 necessary for motor control.

【0031】FPGA26は、メインコントロールボー
ド12に搭載される上位コントローラで演算された各時
刻における必要トルク(トルク定数を基に計算された電
流値)を設定するための参照値レジスタ44、この参照
値レジスタ44から与えられる参照値とAD変換器42
から出力される電流値との差分を演算する差分演算回路
46およびこの演算回路46からの演算結果に予め設定
されている比例ゲインを乗じる比例ゲイン器48を含む
構成で、この比例ゲイン器48から出力される比例ゲイ
ンを乗じた値を電圧指令値としてモータ32の電圧駆動
回路38に入力する。
The FPGA 26 has a reference value register 44 for setting a required torque (a current value calculated based on a torque constant) at each time calculated by a host controller mounted on the main control board 12. Reference value provided from register 44 and AD converter 42
From a current value output from the arithmetic circuit 46 and a proportional gain unit 48 for multiplying a calculation result from the arithmetic circuit 46 by a preset proportional gain. The value multiplied by the output proportional gain is input to the voltage drive circuit 38 of the motor 32 as a voltage command value.

【0032】電圧指令値は、具体的には前述したような
PWM信号を出力する。これら一連の演算を制御周期毎
に実行する。制御周期は、例えば10kHz程度で実行
可能とすると、比例ゲイン器48で乗算する比例ゲイン
を十分に大きくとり電流(トルク)制御が可能である。
The voltage command value outputs a PWM signal as described above. These series of calculations are executed for each control cycle. Assuming that the control cycle can be executed at, for example, about 10 kHz, the proportional gain to be multiplied by the proportional gain unit 48 is set to be sufficiently large to control the current (torque).

【0033】なお、このアプリケーションにおいては、
外部接続ボード14上のFPGA26は、図3に示す構
成をとるような論理演算回路にコンフィグレーションさ
れるとよい。 2)アプリケーションに要求されるモータ32のコント
ロールが速度制御の場合:この場合においてもモータ3
2の制御性を良くするために電流駆動回路50には、図
3において一点線で囲まれる回路構成をそのまま流用す
ることとし、FPGA26のコンフィグレーションとし
ては、さらに図4に示すような論理演算回路が付加され
ている。
In this application,
The FPGA 26 on the external connection board 14 may be configured as a logical operation circuit having the configuration shown in FIG. 2) When the control of the motor 32 required for the application is speed control: In this case as well, the motor 3
In order to improve the controllability of the circuit 2, the circuit configuration enclosed by the dashed line in FIG. 3 is used as it is for the current drive circuit 50. The configuration of the FPGA 26 is further changed as shown in FIG. Is added.

【0034】外部接続ボード14のセンサインタフェー
ス36にエンコーダ信号を接続可能なポートが設けてあ
り、このアプリケーションでは、その信号から回転角度
をパルスカウント値とし計数可能なエンコーダカウンタ
52をFPGA26内に構成する。
The sensor interface 36 of the external connection board 14 is provided with a port capable of connecting an encoder signal. In this application, an encoder counter 52 capable of counting a rotation angle from the signal into a pulse count value is configured in the FPGA 26. .

【0035】この回転角度を微分器54により時間微分
することである時刻におけるモータ32の回転速度とす
る。具体的には、速度制御周期内に変化したカウント値
と既知であるエンコーダ34の分解能および制御周期よ
り、回転速度が演算可能である。そして、FPGA26
は、メインコントロールボード12に搭載される上位コ
ントローラで演算された各時刻においてモータ32に必
要な回転速度を格納する参照値レジスタ56、このレジ
スタ56からの参照値と微分器54から得られた現在の
回転速度との差分を演算する差分演算回路58およびそ
の誤差出力値を入力として演算結果を参照電流値として
電流駆動回路50に出力するPI(比例積分)制御器6
0をさらに含む構成としている。
The rotational angle of the motor 32 at the time when the differentiator 54 differentiates the time with respect to time is defined as the rotational speed. Specifically, the rotation speed can be calculated from the count value changed during the speed control cycle and the known resolution and control cycle of the encoder 34. And the FPGA 26
The reference value register 56 stores the rotation speed required for the motor 32 at each time calculated by the upper controller mounted on the main control board 12, the reference value from this register 56 and the current value obtained from the differentiator 54. And a PI (proportional-integral) controller 6 which receives the error output value as an input and outputs the operation result as a reference current value to the current drive circuit 50.
0 is further included.

【0036】この参照電流値は、前述の図3で示した点
線で囲まれる電流駆動回路50の参照値レジスタ44に
設定される。
This reference current value is set in the reference value register 44 of the current drive circuit 50 surrounded by the dotted line shown in FIG.

【0037】以上説明した一連の演算および演算結果に
よる電流参照値の更新を制御周期毎に実行する。制御周
期は、例えば4kHz程度で安定な速度制御が可能であ
る。
The above-described series of calculations and updating of the current reference value based on the calculation results are executed for each control cycle. The control cycle is, for example, about 4 kHz, and stable speed control is possible.

【0038】また、上位コントローラとしてのメインコ
ントロールボード12での演算が比較的簡単な場合は、
FPGA26内の論理演算回路の負荷を分散するため
に、外部接続ボード14上のFPGA26は、図3の構
成のままとし、上位コントローラ12上のFPGA22
に、図4の電流駆動回路50、エンコーダカウンタ52
を除く演算部を構成してもよい。 3)図5に示すアプリケーションは、モータ32の位置
制御(モータの回転角制御)を行う場合で、以下に説明
する。
When the operation by the main control board 12 as the upper controller is relatively simple,
In order to distribute the load of the logic operation circuit in the FPGA 26, the FPGA 26 on the external connection board 14 is kept in the configuration of FIG.
The current drive circuit 50 and the encoder counter 52 shown in FIG.
May be configured. 3) The application shown in FIG. 5 is for controlling the position of the motor 32 (rotation angle control of the motor), and will be described below.

【0039】この場合、外部接続ボード14上のFPG
A26内の構成は、図4と同様である。上位コントロー
ラ、すなわちメインコントロールボード12のFPGA
22は、外部接続ボード14上のエンコーダカウンタ5
2で計測されたカウンタ値を接続バス30を介してアッ
プデートし、モータ32の回転角度を得る。
In this case, the FPG on the external connection board 14
The configuration in A26 is the same as that in FIG. Host controller, that is, FPGA of main control board 12
22 is an encoder counter 5 on the external connection board 14
The counter value measured in step 2 is updated via the connection bus 30 to obtain the rotation angle of the motor 32.

【0040】PFGA22は、アプリケーションプログ
ラムによりメインコントロールボード12のマイクロコ
ントローラ16で演算された回転角度参照値を格納する
回転角度参照値レジスタ62、この参照値レジスタ62
の参照値とエンコーダカウンタ52より得た現在の回転
角度との差分を求める差分演算回路64、この演算回路
64より出力される誤差値に比例ゲインを乗算しする比
例制御器66を含む構成とし、各モータ32の各速度参
照値を演算する。
The PFGA 22 has a rotation angle reference value register 62 for storing a rotation angle reference value calculated by the microcontroller 16 of the main control board 12 by an application program.
And a proportional operation controller 66 for multiplying an error value output from the operation circuit 64 by a proportional gain, Each speed reference value of each motor 32 is calculated.

【0041】以上の演算と各速度参照値の更新は、位置
制御周期毎に行う。また、位置制御周期は、例えば50
0Hz程度にとるとよい。 4)図6に示すアプリケーションは、図5と同様にモー
タ32の位置制御の構成を示すが、位置検出器として
は、モータ回転軸から減速機68を介して減速された最
終出力軸に設けられたポテンショメータ70を用いる。
The above calculation and updating of each speed reference value are performed for each position control cycle. The position control cycle is, for example, 50
It may be set to about 0 Hz. 4) The application shown in FIG. 6 shows the configuration of the position control of the motor 32 as in FIG. 5, but the position detector is provided on the final output shaft decelerated from the motor rotation shaft via the speed reducer 68. The potentiometer 70 is used.

【0042】ポテンショメータ70の出力は、最終段の
回転角度に応じた電圧値が得られ、センサインタフェー
ス36のAD変換器42に入力される。この変換値は、
デジタル値としてFPGA26に入力される。なお、F
PGA26の論理演算回路としては、図4で示すモータ
32の速度制御と同じ構成をとっているのでその説明は
省略する。
As the output of the potentiometer 70, a voltage value corresponding to the rotation angle of the final stage is obtained and input to the AD converter 42 of the sensor interface 36. This conversion value is
It is input to the FPGA 26 as a digital value. Note that F
The logic operation circuit of the PGA 26 has the same configuration as the speed control of the motor 32 shown in FIG.

【0043】ここで外部接続ボード14には、1枚のカ
ード上で以上の構成を複数軸搭載することも可能であ
り、その組み合わせを選択することもできる。
Here, the external connection board 14 can be equipped with a plurality of axes of the above configuration on one card, and a combination thereof can be selected.

【0044】また、上位コントローラ(メインコントロ
ールボード)12上のFPGA22は、マイクロコント
ローラ16でのプログラムを高速に演算するために、ア
プリケーションに応じて制御周期毎に繰り返されるよう
な一連の固定演算をハードウエア化するためのデバイス
でもある。また、外部接続バス30を介して接続された
複数の外部接続ボード14に対してもマイクロコントロ
ーラ16とは独立にセンサ値のアップデートや参照値の
更新を一定の周期毎に行っている。
The FPGA 22 on the host controller (main control board) 12 executes a series of fixed arithmetic operations which are repeated every control cycle according to the application in order to execute the program in the microcontroller 16 at high speed. It is also a device for hardware. In addition, for a plurality of external connection boards 14 connected via the external connection bus 30, the update of the sensor value and the update of the reference value are performed at regular intervals independently of the microcontroller 16.

【0045】以上説明したように、この発明は、ハード
ウエアとしては、例えば図1に示す汎用的な構成で、ア
プリケーションに要求されるモータの制御モード、すな
わちトルク制御や速度制御等に応じて、FPGAのプロ
グラムを変更することにより目的とするアプリケーショ
ンに特化したハードウエア構成を容易に実現できる。
As described above, according to the present invention, as the hardware, for example, the general-purpose configuration shown in FIG. 1 is used, and according to the motor control mode required for the application, that is, the torque control and the speed control, etc. By changing the program of the FPGA, a hardware configuration specialized for a target application can be easily realized.

【0046】なお、この発明は、上述の実施例に限定さ
れるものではなく、発明の要旨を変更しない範囲で種々
の変形が可能である。
The present invention is not limited to the above-described embodiment, and various modifications can be made without changing the gist of the present invention.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明の一実施例であるパーソナルロボット
の制御装置のハードウエア構成を示す回路ブロック図で
ある。
FIG. 1 is a circuit block diagram illustrating a hardware configuration of a control device for a personal robot according to an embodiment of the present invention.

【図2】図1に示すハードウエアのコンフィグレーショ
ンを行うための動作フローチャートである。
FIG. 2 is an operation flowchart for performing configuration of the hardware shown in FIG. 1;

【図3】パーソナルロボットの動作部分を作動するモー
タのトルク制御を行う回路ブロック図である。
FIG. 3 is a circuit block diagram for performing torque control of a motor that operates an operation part of the personal robot.

【図4】パーソナルロボットの動作部分を作動するモー
タの速度制御を行う回路ブロック図である。
FIG. 4 is a circuit block diagram for controlling the speed of a motor that operates an operation part of the personal robot.

【図5】パーソナルロボットの動作部分を作動するモー
タの位置制御(回転角度制御)を行う回路ブロック図で
ある。
FIG. 5 is a circuit block diagram for performing position control (rotation angle control) of a motor that operates an operation part of the personal robot.

【図6】図5に相当するモータの位置制御を行う他の実
施例を示す回路ブロック図である。
FIG. 6 is a circuit block diagram showing another embodiment for performing position control of the motor corresponding to FIG. 5;

【符号の説明】[Explanation of symbols]

10 …ロボットの制御装置 12 …メインコントロールボード 14 …外部接続ボード 16 …マイクロコントローラ 18 …通信端末 20 …通信インタフェース 22、26 …プログラマブルデバイス(FPGA) 24 …メモリ 28、30 …接続バス 32 …モータ 36 …センサインタフェース 38 …電圧駆動回路(ドライバ) DESCRIPTION OF SYMBOLS 10 ... Robot control device 12 ... Main control board 14 ... External connection board 16 ... Microcontroller 18 ... Communication terminal 20 ... Communication interface 22, 26 ... Programmable device (FPGA) 24 ... Memory 28, 30 ... Connection bus 32 ... Motor 36 … Sensor interface 38… Voltage drive circuit (driver)

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】ロボットの動作部分に設けられるモータ、 前記モータに駆動電圧を付与するドライバ、および前記
ドライバに制御信号を与えるためのハードウエア構成を
プログラムによって変更可能な第1プログラマブルコン
トローラを備える、ロボットの制御装置。
1. A motor provided in an operation part of a robot, a driver for applying a drive voltage to the motor, and a first programmable controller capable of changing a hardware configuration for providing a control signal to the driver by a program. Robot control device.
【請求項2】前記第1プログラマブルコントローラのプ
ログラムをコンフィグレーションデータにより書換える
書換え手段をさらに備える、請求項1記載のロボットの
制御装置。
2. The control device for a robot according to claim 1, further comprising rewriting means for rewriting a program of said first programmable controller based on configuration data.
【請求項3】前記書換え手段には外部データの取込み手
段が接続されている、請求項2記載のロボットの制御装
置。
3. The control device for a robot according to claim 2, wherein said rewriting means is connected to means for taking in external data.
【請求項4】前記第1プログラマブルコントローラと協
働して前記書換え手段により書換えられたアプリケーシ
ョンプログラムを実行する第2プログラマブルコントロ
ーラをさらに備える、請求項2または3記載のロボット
の制御装置。
4. The robot controller according to claim 2, further comprising a second programmable controller that executes the application program rewritten by the rewriting means in cooperation with the first programmable controller.
【請求項5】前記第1プログラマブルコントローラは前
記モータにより駆動される前記動作部分のトルク、速度
あるいは位置に基づく検出信号をフィードバックして前
記制御信号を調整するセンサインタフェース手段をさら
に備える、請求項1ないし4のいずれかに記載のロボッ
トの制御装置。
5. The sensor according to claim 1, wherein said first programmable controller further comprises a sensor interface means for adjusting the control signal by feeding back a detection signal based on torque, speed or position of said operating part driven by said motor. 5. The control device for a robot according to any one of items 4 to 4.
JP2000141153A 2000-05-15 2000-05-15 Robot control device Pending JP2001322078A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000141153A JP2001322078A (en) 2000-05-15 2000-05-15 Robot control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000141153A JP2001322078A (en) 2000-05-15 2000-05-15 Robot control device

Publications (1)

Publication Number Publication Date
JP2001322078A true JP2001322078A (en) 2001-11-20

Family

ID=18648312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000141153A Pending JP2001322078A (en) 2000-05-15 2000-05-15 Robot control device

Country Status (1)

Country Link
JP (1) JP2001322078A (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100762366B1 (en) 2005-12-30 2007-10-01 삼성중공업 주식회사 System for controlling a robot by using a Field Programmable Gate Array device
US20070236584A1 (en) * 2006-04-07 2007-10-11 Cinegest, Inc. Portable high capacity digital data storage device
CN100409558C (en) * 2006-09-15 2008-08-06 合肥工业大学 DC motor controller based on FPGA
WO2009064125A2 (en) * 2007-11-14 2009-05-22 Samsung Heavy Ind. Co., Ltd. Embedded robot control system
JP2011079123A (en) * 2009-09-22 2011-04-21 Gm Global Technology Operations Inc Integrated high-speed torque control system for robotic joint
JP2012190413A (en) * 2011-03-14 2012-10-04 Denso Wave Inc Controller for robot
CN102819256A (en) * 2012-09-07 2012-12-12 中南大学 Foot type robot state sensing system
CN103262405A (en) * 2010-10-22 2013-08-21 三星重工业株式会社 Control system that is reconfigurable during operation, and method therefor
JP2014050935A (en) * 2012-09-10 2014-03-20 Seiko Epson Corp Robot control device, robot, and robot system
JP2015124835A (en) * 2013-12-26 2015-07-06 東ソー株式会社 Solenoid valve drive circuit
US10095201B2 (en) 2009-11-11 2018-10-09 Samsung Heavy Ind. Co., Ltd. Reconfigurable control system for controlling a target apparatus, and method for reconfiguration during operation of the control system
CN108983691A (en) * 2017-06-05 2018-12-11 北京镁伽机器人科技有限公司 Printed circuit board, robot, control parts of motion, system and method
WO2021124432A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100762366B1 (en) 2005-12-30 2007-10-01 삼성중공업 주식회사 System for controlling a robot by using a Field Programmable Gate Array device
US8170402B2 (en) * 2006-04-07 2012-05-01 Cinegest, Inc. Portable high capacity digital data storage device
US20070236584A1 (en) * 2006-04-07 2007-10-11 Cinegest, Inc. Portable high capacity digital data storage device
CN100409558C (en) * 2006-09-15 2008-08-06 合肥工业大学 DC motor controller based on FPGA
JP2011504144A (en) * 2007-11-14 2011-02-03 サムスン ヘヴィ インダストリーズ カンパニー リミテッド Embedded robot control system
KR100945884B1 (en) 2007-11-14 2010-03-05 삼성중공업 주식회사 Embedded robot control system
US9086694B2 (en) 2007-11-14 2015-07-21 Samsung Heavy Ind. Co., Ltd. Embedded robot control system
WO2009064125A3 (en) * 2007-11-14 2009-07-16 Samsung Heavy Ind Embedded robot control system
WO2009064125A2 (en) * 2007-11-14 2009-05-22 Samsung Heavy Ind. Co., Ltd. Embedded robot control system
JP2011079123A (en) * 2009-09-22 2011-04-21 Gm Global Technology Operations Inc Integrated high-speed torque control system for robotic joint
US8442684B2 (en) 2009-09-22 2013-05-14 GM Global Technology Operations LLC Integrated high-speed torque control system for a robotic joint
US10095201B2 (en) 2009-11-11 2018-10-09 Samsung Heavy Ind. Co., Ltd. Reconfigurable control system for controlling a target apparatus, and method for reconfiguration during operation of the control system
CN103262405A (en) * 2010-10-22 2013-08-21 三星重工业株式会社 Control system that is reconfigurable during operation, and method therefor
JP2014500644A (en) * 2010-10-22 2014-01-09 サムスン ヘビー インダストリーズ カンパニー リミテッド Control system and method reconfigurable during operation
JP2012190413A (en) * 2011-03-14 2012-10-04 Denso Wave Inc Controller for robot
CN102819256A (en) * 2012-09-07 2012-12-12 中南大学 Foot type robot state sensing system
JP2014050935A (en) * 2012-09-10 2014-03-20 Seiko Epson Corp Robot control device, robot, and robot system
JP2015124835A (en) * 2013-12-26 2015-07-06 東ソー株式会社 Solenoid valve drive circuit
CN108983691A (en) * 2017-06-05 2018-12-11 北京镁伽机器人科技有限公司 Printed circuit board, robot, control parts of motion, system and method
CN108983691B (en) * 2017-06-05 2020-02-28 北京镁伽机器人科技有限公司 Printed circuit board, robot, motion control component, system and method
WO2021124432A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board
WO2021125262A1 (en) * 2019-12-17 2021-06-24 ヤマハ発動機株式会社 Automatic control board

Similar Documents

Publication Publication Date Title
JP2001322078A (en) Robot control device
DE102004050434A1 (en) Hardware-based configurable motion control device and method
JP2013518733A (en) Robot system control method and apparatus
JP2002014707A (en) I/o unit and programmable controller
JP6323685B2 (en) Programmable controller
CN1702580A (en) Numerical controller
JP4045379B2 (en) Motion control module function switching device
JPS58222357A (en) Debug system of drive control program
JPH063441Y2 (en) Differential output circuit for actuator drive
JPH02148302A (en) Setting display operating board
JP2001074623A (en) Testing device control method and testing device
JP2003150261A (en) Dumper force applying operation controller
JP2003052189A (en) Method for control information communication between motor driver and controller, and the motor driver, and system
JPS61218380A (en) Controller of motor
JPH0469099A (en) Multi-shaft pulse motor controller
JP2004110700A (en) Servo driver and its gain adjustment method
JP2000060182A (en) Controller for motor-driven actuator
JP2021182844A (en) Motor control circuit, motor drive control device, and control method of motor control circuit
JPH05324051A (en) Robot system and control managing method
JP4129713B2 (en) Control apparatus for performing program debugging using simulation and control method therefor
JPH04355682A (en) Positioning device
JPS61114309A (en) Controller of multi-shaft robot
CN111262484A (en) Stepping motor control method based on linux high-precision timer and system and device thereof
JPH06197577A (en) Controller
JPH06110553A (en) Positioning controller for motor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060104

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060425