nyaru
#1
メカキネアート用モーション作成ソフト
メカキネアートとは
キネティックアートとは動きのあるアート作品のことです。
ここではモーター等を使いメカ要素を加えたものをメカキネティックアート、メカキネと呼んでいます。
経緯
CNCマシンとして加工用に経路を作りモーターを動かすだけでなく、アート用としてモーターを制御し各種動きつけたい、難しいコマンド等を覚えることなくモーションを作りたいという意見があり、そのためのソフトを試作してみました。
モーション生成の方法の概略
モーションを各モーター位置を記録したキーフレームの集合として考えます。
制御基板に繋がった各モーターをソフトにて動かし、位置を保存します。
全てのキーフレームを打ち終わった後はそれらを変換しNCファイルにし制御基板へと送信します。
そのため、基本的にはモーションを作成するためにGコードを触ることなく、モーターの位置だけ調整するということになります。
ソフトで作成したモーションの例
ソフトの公開
ビルドしたもの(現在windowsのみ)
ソースコード
nyaru
#3
1.Duet側で必要な設定
1.1 Duetのconfig
config.g (5.1 KB)
6HC子基板時config.g (88 バイト)
1.2 configの設定値
configファイルにて以下の設定が最低限必要です。
- IPアドレスの設定 M552(KASソフトでは192.168.0.56がデフォルト設定)
- http通信の有効化M586
- 軸の設定M569、M584
- ホーミングなしの移動許可 M564 S0 H0
また、環境に応じてconfigに以下の設定をする必要があります。
- モーターの移動量関連 M92, M350
- モーターの駆動関連 M203, M201
- モーターの移動制限関連 M203
- モーターの電流値関連 M906
トリガーを使用する場合は以下のように設定する必要があります。
- ピン定義 M950 J◯ C”io◯.in”
- トリガー定義 M581 P◯ T◯
なお、Tパラメータは2以上にしてください(T0,T1は非常停止系で既に定義されています)
Duet Mainboard 6HCを子基板として使用する場合は子基板configに以下の設定値が必要です。
1.3 外部トリガーの配線
スイッチにピン定義で設定した入力ピンとGNDをつなぎます。
スイッチのタイプがNOかNCによって上のピン定義が変わります。
NCの場合はM950にC”!io1.in”のようにピン名に!をつけます。NOの場合はつけません。
2.KASソフトでの設定
2.1 設定の流れ
KASの設定は基本的にdefault_setting.json(resources/bin内)を書き換えることとなります。
一部の設定は設定パネルで変更できますが、現時点では変更された設定は起動時には読み込まれないため、起動時に読み込まれるようにするには設定パネルで設定変更→設定保存→設定ファイルをdefault_setting.jsonとして保存する必要があります。
[image]
2.2 設定値
基本的にユーザーによって変更が必要な部分は上記の設定パネルで変更できますが、制御基板の数を変更する場合や、出力NCデータをループさせたい場合などは直接default_setting.jsonを変更する必要があります。
出力NCデータをループ: “is_enable_ncfile_loop”: false → true
スライダーで座標操作時の上限下限値:“max_move_range”、“min_move_range”
コントローラーパネルでのジョグ移動の単位:“default_jog_move_unit”
3.モーション生成の流れ
- 基板の電源を入れる
- (念のためWEBUIでアクセスできることを確認する)
- WEBUIでジョブのところにmkasフォルダ作っておく
- アプリフォルダのresources/binフォルダにncフォルダを作成しておく or default_setting.jsonの"save_nc_path_on_pc_directory": "./nc"を”./”に変更(一時的処置)
- アプリを起動する。基板にアクセスできていることを確認。
- Animatorパネルに移り、下部のモーター位置調整で各モーターを移動させ、希望の位置へ移動させる。
- 上部のキーフレーム操作の部分から移動方法を選択し、キーフレームをセット
- 4,5を繰り返す
- モーションデータができたら念のためキーフレームデータ保存ボタンでキーフレームを保存
- 送信先からトリガーか通常モーションかを選び、モーションデータ送信ボタンを押す。
- ファイルが送信され実行される。