株式会社新興技術研究所 熊谷会長様のご好意による「生産性向上とメカトロニクス技術講座」の 34 回目、第 4 章「フレキシビリティが面白いインフォメーションカム」の 5 回目です。
当月は「ソフトウエアカムのタイマー動作」と「ソフトウエアカム曲線の部分使用」について紹介します。
世界で活躍するソフトウエアカム
ソフトウエアカムのタイマー動作
コンピュータ内でのタイマーは言うまでもなく次のような動作となります。

例えば、タイムデータを取り込んで、プログラム上でそのタイムデータから1を引き算し、結果がゼロになったかどうかをチェックして、まだであればもう一回 1 を差引くという「デクリメント動作」のループを繰り返して、最後に丁度ゼロになったら、次の 1パルスを出力し、同時に次のタイムデータを取り込む・・・というような動作を、ここでは1000パルス分(表 4-1 の場合は 50 パルス分)繰り返すことになります。(最も簡単なプログラムの例を図 4-11 に示します)
勿論このデクリメント動作はコンピュータの処理速度やプログラムの作り方によって一回のループ動作に要する時間\(TL\)
が大きく変わります。
表 4-1 の右端の列は一回の「デクリメント動作」が\(TL=0.02ms\)を要すると仮定して上述のように50パルスを1秒で出力する\(\Delta Ti\)の実時間にするためのデクリメント回数です。この場合全体のデクリメント回数の総数は50,000となり0.02msずつなので全体で1秒となっています。
これがソフトウエアカムの「実駆動タイムデータ」になるわけです。
表 4-2 N=1000 パルスの Sin カーブ速度特性を実現するソフトウエアカムのタイムデータ例のうち、最初の 30 パルス(左表)、中央の 30 パルス(右表上)、最後の 30 パルス(右表下)を示す
パルス
番号\(i\) |
変位\(S (mm)\)0.1 | 無次元
時刻\(Ti\) |
無次元
時間間隔\(\Delta Ti\) |
速度\(v\) | デクリメント
係数\(TL (ms)\)0.02 |
0 | 0 | 0 | 0 | 0 | 0 |
1 | 0.10 | 0.020135 | 0.020135 | 4.90 | 1,007 |
2 | 0.20 | 0.028480 | 0.008345 | 11.98 | 417 |
3 | 0.30 | 0.034887 | 0.006407 | 15.61 | 320 |
4 | 0.40 | 0.040290 | 0.005404 | 18.51 | 270 |
5 | 0.50 | 0.045053 | 0.004763 | 20.99 | 238 |
6 | 0.60 | 0.049362 | 0.004308 | 23.21 | 215 |
7 | 0.70 | 0.053326 | 0.003964 | 25.23 | 198 |
8 | 0.80 | 0.057017 | 0.003691 | 27.09 | 185 |
9 | 0.90 | 0.060486 | 0.003469 | 28.83 | 173 |
10 | 1.00 | 0.063769 | 0.003283 | 30.46 | 164 |
11 | 1.10 | 0.066892 | 0.003124 | 32.01 | 156 |
12 | 1.20 | 0.069878 | 0.002986 | 33.49 | 149 |
13 | 1.30 | 0.072744 | 0.002866 | 34.90 | 143 |
14 | 1.40 | 0.075503 | 0.002759 | 36.25 | 138 |
15 | 1.50 | 0.078166 | 0.002663 | 37.55 | 133 |
16 | 1.60 | 0.080743 | 0.002577 | 38.80 | 129 |
17 | 1.70 | 0.083242 | 0.002499 | 40.02 | 125 |
18 | 1.80 | 0.085670 | 0.002428 | 41.19 | 121 |
19 | 1.90 | 0.088032 | 0.002362 | 42.33 | 118 |
20 | 2.00 | 0.090334 | 0.002302 | 43.44 | 115 |
21 | 2.10 | 0.092581 | 0.002246 | 44.51 | 112 |
22 | 2.20 | 0.094776 | 0.002195 | 45.56 | 110 |
23 | 2.30 | 0.096922 | 0.002146 | 46.59 | 107 |
24 | 2.40 | 0.099024 | 0.002101 | 47.59 | 105 |
25 | 2.50 | 0.101083 | 0.002059 | 48.57 | 103 |
26 | 2.60 | 0.103102 | 0.002019 | 49.52 | 101 |
27 | 2.70 | 0.105084 | 0.001982 | 50.46 | 99 |
28 | 2.80 | 0.107030 | 0.001947 | 51.37 | 97 |
29 | 2.90 | 0.108943 | 0.001913 | 52.27 | 96 |
30 | 3.00 | 0.110825 | 0.001881 | 53.10 | 94 |
速度特性が正確に Sin カーブなので最初の30パルスのタイムデータを逆順にすると最後の30パルスのタイムデータと同じになる。

表 4-2 は、上記の通り全体を 1000 パルスで駆動する Sin カーブ特性のソフトウエアカムの一連のデータのうち、最初の 30 パルス、中間の 30 パルス、最後の 30 パルスの部分だけを抜粋したものです。
配置は表 4-1 と同様で左端から、パルス番号、パルス出力時刻(無次元)、パルス出力時間間隔(無次元)で、右端がデクリメント一回につき 0.02ms かかるとした場合の「実駆動タイムデータ」です。
1000 パルス分のタイムデータから逆に算定した速度特性と変位特性は図 4-12 の通りで Sin カーブの特性がよく表れています。(算定は Excel の VBA などにより比較的簡単にできます)

ソフトウエアカム曲線の部分使用
ソフトウエアカムの大きな利点として「品種切換えの容易化によるフレキシビリティ」を挙げましたが、もう一つ、「ストローク変更のフレキシビリティ」もあります。
表 4-2 に 1000 パルス分全部のデータが掲載されていると想像してください。
これに従ってそのままパルス出力すると、ストロークは丁度 100mm でツールは 100mm 駆動されます。
これに対し、ストロークを 220mm とすることを考えてみます。
システム構成は図 4-10B の通り、ステッピングモータと送りねじだけなので、パルスさえ与えればストロークは自由になります。
そこで、例えば最初の 500 パルスを表 4-2 の 1 から 500 パルスに従って出力し、501 から 1700 パルスまでデクリメント数 32 の最高速のまま走らせ、1701 パルスから 2200 パルスまでは再び表 4-2 の 501 パルスから 1000 パルスまでのタイムデータに沿って駆動すれば、最初の 50mm で加速、その後の 120mm を最高速で走り、最後の 50mm で次第に減速して停止する「末端減速特性で 220mm 走行する一軸のロボットシステム」になるわけです。
つまり、全体のパルス数を任意に指定することで、システムのストロークはいかようにでも設定できる「ストローク変更のフレキシビリティ」を持っているのです。(ストロークが小さすぎる場合は別の工夫が必要です)
現在世界中のロボットシステムの大部分がこの考え方で、例えば[スタート→増速時]と[減速→停止時]には変形正弦曲線や変形台形曲線などで加速/減速し、中間は最高速で走る、といった駆動方式を採用しているのです。
図 4-13 は、この駆動方式による一軸ロボットの駆動速度特性の一例です。
立上りと立下り部分が変形正弦曲線によるもので、中間の水平直線部分は変形正弦曲線の最高速で等速走行しています。
全体のストロークの大小によってこの水平部分の長さが変わるだけで、変形正弦曲線特性部分は常に一定の末端減速特性を実現します。

現在、直交座標型ロボットだけでなく、円筒座標型、多関節型など多くの種類のロボットにこの考え方のソフトウエアカムによる末端減速手法が適用され、世界中で稼働しているのです。
さて、以前、2 巧妙性実現の手段群のうち 2-4 で述べた「メカニカルカムの使用目的別分類と機能」を思い出してください。
メカニカルカムの使用目的・機能を分類してみると:
( 1 )巧妙性模倣型カム
( 2 )Point to Point 型カム
( 3 )数式実現型カム
( 4 )動作拡大・縮小型カム
のようになります、と述べました。
これらのうち、上述したソフトウエアカムの作成手法は、数式表現できるものが対象で、( 1 )の「巧妙性模倣型カム」のように数式表現のできない動作はこの手法ではうまくいきそうもありません。
一見、巧妙性模倣と思われるティーチング手法がありますが、その大部分は動作途中の通過点を記憶させるもので、通過点から次の通過点までは上述の数式表現可能な末端減速特性で動作し、本当の巧妙性作業の実現にはなっていないと言えます。
ではどうすれば巧妙性模倣のソフトウエアカムができるでしょうか?
ここで改めて「ピクチャーカム」が登場することになります。
以前述べた通り、巧妙性動作を模倣するのはピクチャーカムが便利でした。
したがってピクチャーカムからうまくソフトウエアカムを作れれば、本当の巧妙性を持たせたソフトウエアカムになる可能性がありそうです。
次回はピクチャーカムとソフトウエアカムとの関連について述べます。
株式会社新興技術研究所 熊谷 卓 による「生産性向上とメカトロニクス技術講座」は、クリエイティブ・コモンズ
表示 – 非営利 – 継承 2.1 ライセンスの下に提供されています。
Creative Commons Attribution-NonCommercial-ShareAlike 2.1 Japan License
- 2021年1月
- 2020年12月
- 2020年11月
- 2020年10月
- 2020年9月
- 2020年8月
- 2020年7月
- 2020年6月
- 2020年5月
- 2020年4月
- 2020年3月
- 2020年2月
- 2020年1月
- 2019年12月
- 2019年11月
- 2019年10月
- 2019年9月
- 2019年8月
- 2019年7月
- 2019年6月
- 2019年5月
- 2019年4月
- 2019年3月
- 2019年2月
- 2019年1月
- 2018年12月
- 2018年11月
- 2018年10月
- 2018年9月
- 2018年8月
- 2018年7月
- 2018年6月
- 2018年5月
- 2018年4月
- 2018年3月
- 2018年2月
- 2018年1月
- 2017年12月
- 2017年11月
- 2017年10月
- 2017年9月
- 2017年8月
- 2017年7月
- 2017年6月
- 2017年5月
- 2017年4月
- 2017年3月
- 2017年2月
- 2017年1月
- 2016年12月
- 2016年11月
- 2016年10月
- 2016年9月
- 2016年8月
- 2016年7月
- 2016年6月
- 2016年5月
- 2016年4月
- 2016年3月
- 2016年2月
- 2016年1月
- 2015年12月
- 2015年11月
- 2015年10月
- 2015年9月
- 2015年8月
- 2015年7月
- 2015年6月
- 2015年5月
- 2015年4月
- 2015年3月
- 2015年2月
- 2015年1月
- 2014年12月
- 2014年11月
- 2014年10月
- 2014年9月
- 2014年8月
- 2014年7月
- 2014年6月
- 2014年5月
- 2014年4月
- 2014年3月
- 2014年2月
- 2014年1月
- 2013年12月
- 2013年11月
- 2013年10月
- 2013年9月
- 2013年8月
- 2013年7月
- 2013年6月
- 2013年5月
- 2013年4月
- 2013年3月
- 2013年2月
- 2013年1月
- 2012年12月
- 2012年11月
- 2012年10月
- 2012年9月
- 2012年8月
- 2012年7月
- 2012年6月
- 2012年5月
- 2012年4月
- 2012年3月
- 2012年2月
- 2012年1月
- 2011年12月
- 2011年11月
- 2011年10月
- 2011年9月
- 2011年8月
- 2011年7月
- 2011年6月
- 2011年5月
- 2011年4月
- 2011年3月
- 2011年2月
- 2011年1月
- 2010年12月
- 2010年11月
- 2010年10月
- 2010年9月
- 2010年8月
- 2010年7月
- 2010年6月
- 2010年5月
- 2010年4月
- 2010年3月
- 2010年2月
- 2010年1月
- 2009年12月