テンプレート用のホーミング設定ファイルをソフト説明のトピックに置いてみました。
参考になれば幸いです。
ありがとうございます!早速活用させていただきます!!
自動演奏装置に童謡を使う場合、著作権がどうなるのかJASRACに質問したところ、回答がありました。
結果として、制作するにあたり、1曲あたり使用料として18000円+消費税を支払えば、問題なさそうなので、最初に考えていたとおり、おもちゃのチャチャチャを演奏するようにしたいと思います。
質問
おもちゃのチャチャチャややぎさんゆうびんのような童謡を鉄琴で自動演奏するカラクリ人形を制作して、出来上がった作品をSNSにアップしたり、展示ホールなとで展示した場合、童謡の曲の使用についてどのような手続きが必要になるか教えていただけますか?
回答内容(1)
いつも大変お世話になっております。
ご提示を頂きました2曲はJASRAC管理楽曲となります。
以下、①鉄琴で自動演奏するカラクリ人形制作に関する【録音】
②SNSなどにアップする【配信】③展示する際の【演奏】の3点に分けてご案内申し上げます。
①【録音】
本件では、人形が鉄琴で演奏するプログラムで、特殊オルゴールと評価します。
この場合、1曲18,000円+消費税となります。
お手続きの概要は以下です。
https://www.jasrac.or.jp/info/create/index.html
②【配信】
SNSへの動画アップロードについて
SNS等、配信プラットフォーム(PF)での弊社管理楽曲の利用については、
原則的にPF運営者様にお手続きをお願いしております。
ただし、各PFのご契約の有無についての開示はいたしかねますので、
PF運営者様までご利用の可否についてご確認をいただきますようお願いいたします。
なお、ご契約がある旨公表の同意をいただいている、
下記1つ目のページに記載のあるサービスであれば、
一定の範囲内でのご利用であれば弊社へ個別にお手続きをいただくことなく、
動画のアップロードが可能です。
詳細について下記2つ目のページ内のフローチャートをご確認ください。
・利用許諾契約を締結しているUGCサービスの一覧
・YouTubeなどの動画投稿(共有)サービスでの音楽利用
③【演奏】
入場料がなく、営利性がなく、出演者に対価が支払われない場合を除き、
展示で音楽を演奏することについてお手続きが必要となります。
詳細は当該展示会場を管轄するJASRAC支部までお問合せください。
https://www.jasrac.or.jp/info/local_a.html
以上、ご回答申し上げます。
今後とも当協会の著作権管理業務にご理解・ご協力を賜りますようお願い申し上げます。
おもちゃのチャチャチャが自動演奏できるようになりました。
おかげさまでリミットスイッチの設定も完了し、
WEBUIからホーミングができるようになりました。
現状ではWEBUIでホーミングをして、メカキネソフトウェアで演奏を実行していますが
展示会等でお客さんが押しボタンを押すと、
まずホーミングをして、それから演奏が始まるようにしたいと
考えています。
そのためにはどのようにすればよいのでしょうか?
何卒よろしくお願いいたします。
こんにちは。
トリガーに関しては説明が全然足りていなくてすみません。該当トピックには順次説明を追加していきます。
- 押しボタンを押すとモーションが始まる
- モーションの最初にホーミングを追加する
の2つに分けて説明します。
押しボタンを押すとモーションが始まるようにする
これは説明文中にある外部トリガーというものになります。
この外部トリガーはDuet基板のconfigにこの端子を使うよと定義する必要があります。
それらの例が以下です。
- ピン定義 M950 J0 C”io1.in” → io1のinピンを入力0(J0)として使います
- トリガー定義 M581 P0 T2 → 入力0(P0)にトリガー2番(T2)を割り振ります
テンプレートのconfigには;
でコメントアウトされています。
IO0、IO1、IO5、IO6にそれぞれトリガー番号2,3,4,5を振るというものです。
IO0や1はリミットスイッチで埋まっていると思うのでIO5,6とかが空いているようであれば、該当2行の行頭の;を消せば有効化されます。
トリガーが有効化され、トリガー用の入力ピンに繋がるスイッチが押されるとconfigが置いてあるフォルダのtrigger〇.gというファイルが実行されるようになります。
メカキネソフトでこのtrigger〇.gとして保存するにはモーションデータ送信時の送信先をTrigger◯ Motionと指定すれば良いです。
そうすると、前述のconfigで定義したピンに繋がっているスイッチが押されたときに作成したモーションが再生されるようになります。
モーションの最初にホーミングを追加する
これは今のメカキネソフトではアクションとして追加できるようにしていなかったので、現時点ではメカキネソフト単体ではできません。
なので前述のtrigger◯.gを少しだけ編集する必要があります。
前述の方法でモーションを送っている場合、WEBUIあるいはSDカード内を見るとconfig.gとかがいるsystemのところにtrigger◯.gがいます
このファイルを開いて一番先頭にホーミング用のコマンドを追加します。
ホーミング用のコマンドの例は以下の通りでG28単品で使うか、G28にXYZなどの軸名をつけて使います。
例1 G28 ;homeall.gを実行
例2 G28 XZ ;XZのモーターをホーミング(homex.gとhomez.gを実行)
G28のコマンドの記入が終わり保存すれば、トリガーされたときにまずホーミングからスタートされるようになります。
ありがとうございます!!明日、早速試してみます!!
おかげさまでかなり良いところまで進みましたが
一点、上手くいきません。
押しボタンを押すと、演奏用のtrigger2.gが実行されるようになりました。
そこでtrigger2.gの先頭にG28のコマンドを追加し保存しました。
それで押しボタンを押すとホーミングはされるのですが、
演奏が始まりません。ホーミングだけで終わってしまいます。
G28を消すと演奏はされます。
ホーミングから演奏までされるには、どのような設定変更が
必要になるのでしょうか?
うーん。こちらではホーミング後もtriggerの中身は継続されますね
ちなみにこんな感じの最小のtrigger◯.gを作って確認しています。(WEBUIのコンソールにメッセージがでます)
M118 P0 S"トリガーされました。Home前" L2 ;メッセージ表示
G28 X ;Xホーミング
M118 P0 S"トリガーされました。Home後" L2 ;メッセージ表示
可能性としてですが
- ホーミングでエラーが起きていて失敗している可能性
- トリガーのボタンを押した際にWEBUIのコンソールに何かエラーが出ていないか確認してみてください。
- G28とだけ書いて実行している場合、homeall.gのファイルが実行されています。ただ先日配布したhomeall.gはXYZの3モーターをホーミングする内容なので、もしかしたらマシンと内容が合致していないかもしれません。
その場合はhomeall.gの中身を編集 or trigger.gにはG28 XY
のようにホーミング軸を指定することで解消する気がします。
あやしいのはホーミングをしたあとに
G28
Error: Failed to enable endstops
というエラーがでることです。
とりあえずホーミングはきちんとできているので
これまで無視していました。
僕のhomeall.gはこのようになっています。
; homeall.g
; すべてのホーミング動作を定義
G91 ; 相対座標移動
G1 H1 X-1500 Y-1500 Z-1500 F1500 ; 送り速度F1500で早めに動く。スイッチに当たるまでXYZマイナス方向に1500移動
G1 H2 X20 Y67 Z66 F1500 ; XYZプラス方向に戻す
G90 ; 絶対座標移動に戻す
G92 X0 Y0 Z0 ; 現在位置をX0 Y0 Z0とする
G28 XYZのようにホーミング軸を指定するとホーミングと演奏が続いて実行されましたh。
その場合、ひとつの軸ずつホーミングが行われるので時間がかかってしまいます。
homeall.gだと3つの軸のホーミングが同時に行われるのでG28でいけると理想です。
使ってない軸とかが悪さしているのかなという気が若干しますが、少しこの辺の仕様等確認してみます。
とりあえずとしてはhomeall.gの中身を丸々triggerの先頭にG28の代わりとしてコピペすれば希望の動作になりそうな気がします。
(せっかくホーミングコマンドがあるので、それを使いたいところではありますが・・・)
追加で試してもらいたいのですが、
homeall.gの最後のG92を
G92 X0 Y0 Z0 A0 B0 C0
にしてみたらどうでしょうか。
たぶんですが、使っていないABC軸のhomingファイルも実行されてリミットスイッチが見つからないよと言ってるので、使っていないけどhomeallで他の軸も原点設定してやれば回避できそうな気がします
↑これで解決しました!!!
どうもありがとうございます!!
良かったです!
以前アップロードしたhomeall.gのファイルは修正して差し替えておくことにします。ありがとうございます
おかげさまで、とても良い感じになりました!!
二つ質問があります。
新しく買ったノートパソコンからメカキネを動かそうとしたときに、WEBUIとDUET3は接続できていて、メカキネソフトウェアもDUET3を認識しているのですが、メカキネソフトウェアからtrigger2へモーションデータを送信しても、DUET3のtrigger2.gが更新されませんでした。元々使っていたPCに接続しなおすと、正常に動作します。この現象の対策があれば教えてください。
もう一点、スタートボタンを続けて2回押すと2回演奏が始まるのですが、演奏中にボタンを押しても無効にする方法はありますでしょうか?
作品の動画です。↓
作品素晴らしいです!載せてくださりありがとうございます!
今は少し検証できない環境にいるため、以下は全て憶測での回答になります。
こちらの問題ですが、良ければ環境(windowsの種類とか)を教えて頂けると幸いです。こちらでも似たような環境を用意して確認してみたいと思います。
おそらく過去にあったこの辺のトラブルと同じかもしれません。
もし可能であれば、新PCに上記トピックのASP .NET Coreランタイム、.NET Runtimeを入れてみて様子を見てもらえたらと思います。
メカキネソフトを作った環境をやや複雑にしたせいで、この辺のトラブルの原因が分かりづらくなってしまっています。すみません。
こちらですが、似た検証を以前した気がするんですがちょっと結果を失念してしまいました。
duetのconfigにてM581
にてトリガーの定義をしていると思うのですが、その行にR2
(SDカードからファイルを実行していない時にのみトリガーを受付するオプション)を付けると改善するかもしれません。(例M581 T2 P1 R2
)
https://docs.duet3d.com/User_manual/Reference/Gcodes#m581-configure-external-trigger
もしこれで対応できなかった場合、モーションのあるtrigger〇.gのファイルをgcodeフォルダに移し、新しいtrigger.gにはM32 trigger〇.gとかだけ記載して、トリガーファイルからNCファイルを実行させるようにバイパスしたらいけるかなぁという気がしますが、完全に未確認です。
https://docs.duet3d.com/User_manual/Reference/Gcodes#m32-select-file-and-start-sd-print
以上、確認できないので全部ふわふわな回答になるのですが、ご参考になれば。
確認できるようになったらこちらでも確認したいと思います
どうもありがとうございます!
以下のようになっております。
あと、このPCではUSB-LAN変換ケーブルを使用しています。
エディション | Windows 11 Pro |
---|---|
バージョン | 22H2 |
インストール日 | 2024/01/29 |
OS ビルド | 22621.3155 |
エクスペリエンス | Windows Feature Experience Pack 1000.22684.1000.0 |
デバイス名 | DESKTOP-55TMOLA |
---|---|
プロセッサ | Intel(R) Core™ i5-8350U CPU @ 1.70GHz 1.90 GHz |
実装 RAM | 8.00 GB (7.86 GB 使用可能) |
デバイス ID | B3AEF1C4-7ABA-4C61-9ED5-5EE5CD7FDBC6 |
プロダクト ID | 00330-80000-00000-AA916 |
システムの種類 | 64 ビット オペレーティング システム、x64 ベース プロセッサ |
ペンとタッチ | このディスプレイでは、ペン入力とタッチ入力は利用できません |
両方ともインストールしましたが、変化はありませんでした。
なお、スタートボタンについては、一回だけ押しても
2度演奏されることがあるのでチャタリングの対策も必要になりそうです。
もしハードウェアでチャタリング防止回路を追加する場合、
実態配線図を教えていただけないでしょうか?
こちらで用意してみたWin11の環境ではメカキネソフトはモーション送信&実行可能でした。
ただ、いくつかセットアップを忘れており1回目は失敗してしまったので、もしかしたらautomatamakerさんもセットアップが抜けているのかもしれません。
以下の通り、アプリフォルダのresources/binフォルダにncフォルダがないことが原因でした。
失敗したときにメカキネソフトのDebugのところを見ると保存場所が見つからなくて保存できなかった。みたいなものがでています。
もしかしたら違うエラーで引っかかっているのかもしれませんが、その場合は同様にエラーが出ている可能性があるのでお知らせください。
24/02/27 15:12:50: Board:0 NC file output error : Could not find a part of the path 'C:\Users\kyano\Downloads\MKAS_v0.16\MKAS_v0.16\resources\bin\nc\out0.nc'.
24/02/27 15:12:50: Can NOT Send NC File
Could not find a part of the path 'C:\Users\kyano\Downloads\MKAS_v0.16\MKAS_v0.16\resources\bin\nc\out0.nc'.
これらすべて含めてソフト側で処理すべきなんですが、ちょっと手が回っていないので今後修正していきたいと思います。
こちら確認してみました。
configを少し変更した上で、トリガーのファイル内でモーションを実行していたのをトリガーを起点に別ファイルのモーションを呼び出しという形にすることで何度押しても最初の1回だけが有効となるようになりました。
流れを簡単に説明します。
-
config.gのトリガーを定義しているM581の行に
R2
を書き加えます。(例:M581 P1 T6 R2)
R2はファイルを実行していないときだけトリガーを受け付けるオプションです。
-
WEBUIにてSystemに入っているtrigger2.gをJobsに移動(ダウンロードして再アップロード)。
画像ではtrigger6.gになっています。
-
Systemに残っているtrigger2.gを開き(ない場合は新規作成)、以下の1行だけに内容を書き換えます。
M32 trigger2.g ;Gcodesフォルダ内のファイル実行
- スイッチを押して動作確認
これらの編集により、何もしていない時しかスイッチの入力を受け付れず、スイッチを連打しても1回しか実行されないようになります。
一連の作業はメカキネソフト側で対応するように変更したいと思います。
今は申し訳ないですが、手作業にてお願いいたします。
おそらく、上記の対応でチャタリングによる複数回入力も防げると思うので、お試しください!