C#Form

コーディング

モーションのブレンド 軸を止めない動作

ある位置を経由するモーション動作を行う場合は、ブレンド補間機能を使用します。  コーディングの注意点は、中継させる移動命令もStartLinearIntplPos関数で移動させる必要があります。 Motion.StartPos関数の移動中に...
コーディング

軸指令モードの切替方法

装置を制御する上で位置制御以外の動作を行いたいことがあります。 ここでは制御モードの切り替えをご紹介します。 現在の指令モードの確認方法 WMX3 Consoleアプリでをクリックしてください。 現在の軸の指令状態は画面のCommand M...
コーディング

トリガーイベント イベントの複合動作を実現

トリガーイベントとは  ある条件に従ってモーションを実行させる機能として「イベント」がありますが、その判定条件を7個まで拡張できる機能が「トリガーイベント」になります。 大まかな動きは、イベント単位では判定条件の成立でフラグを立ていきます。...
コーディング

Windowsスレッドで操作パネルの判定

ボタンコントロールのクリックイベント内で軸のモーション動作を行うと移動が完了するまでUIが固まってしまいます。だんまり停止しないように別スレッドで動作させる方法はこちらの記事、画面が固まらないための非同期処理を参照してください。 物理スイッ...
コーディング

WMX トリガーモーションによる軸制御

指定されたトリガー条件が満たされるまで、次のモーション指令の実行を遅らせる機能になります。具体的には、移動中の軸が指定の状態になった時に、別の軸を動かすことができます。 生産タクトを短縮する時などに力を発揮します。 トリガーモーションに指定...
コーディング

WMX イベントによるモーションコントロール

Windows上のスレッドでリアルタイムの動作を実現するための一つとして、WMXのイベント機能があります。このイベントは指定した条件が満たされたときに、特定の動作を実行する機能になります。 イベントの入力で使用できる条件 コアモーションの入...
コーディング

WMX サーボアラームを監視する方法

サーボアラームには、過負荷や位置偏差異常、速度異常などのアラームが起こることがあります。  アラームが起こると軸の移動が完了せず、装置がなぜ止まっているのかが直感的にわかりません。そのため使用者にアラーム表示を行うと親切です。 ユーザーにア...
コーディング

C# 非同期処理 フリーズしたと思わせないために 

ボタンを押したときにU/Iが固まる対策です。 Windowsフォームのボタンクリックイベントでモーション動作を行うと、画面が固まってしまします。そのため動作は別スレッドで処理をさせる方法が必要となります。 非同期処理のシンプルなコードの描き...
コーディング

EtherCAT機器接続確認 トラブル時の早期検出

装置立ち上げ時、配線を変更したタイミングで、LANケーブルを抜くことがあります。 ここではケーブル異常を検出するコードをご紹介します。 接続個数で判定する方法 EtherCATに接続している機器の個数をカウントする事が出来ます。 想定してい...
コーディング

WMX APIバッファー Windowsでリアルタイムモーション制御

装置をリアルタイムで動作させるために必要になる機能です。 軸移動やタイマー関数を先にAPIバッファに格納することにより、通信サイクルの精度のタイミングで順次関数を実行することができます。 コードの書き方 関数をAPIバッファに追加するには、...