HAL Configuration
INIファイルLinuxCNCの実行に必要なINIファイルは、stepconfで作成したパラレルポート用として使用していたものをPaspberry Pi用に変更しています。
Latency-Testを実行してジッタを確認することが基本ですが、適当な過負荷をどうすればよいのか思いつかず、他に何もしないでlatency-testだけを実行して見たところ、[EMCMOT]セクションのBASE_PERIODオプションは、50μSくらいまでは設定できそうです。しかし、実際にLinuxCNCを実行すると、DISPLAYに関する処理に問題がでるようで、Unexpected realtime delayが発生してしまったり、大きめのファイルを開くと表示の途中で止まってしまったり、関係ありそうなオプションを変更してもうまく動作しないので色々試した結果、100μSとしています。
作成しておいたrpi-my-mill.halは、[HAL]セクションのHALFILEオプションで指定します。[EMC]セクションのMACHINEオプションにrpi-my-millとありますが、これは単なる名称です。
ホームスイッチについては、共用する場合の例がマニュアルには見つからず少々悩みました。各軸の[AXIS_n]セクションの、HOME_IS_SHAREDオプションを1に設定しスイッチが閉じている時のHommingはエラーとなるようにします。これをやらないと、ある軸のスイッチが閉じている状態で他の軸のHommingが実行された場合にスイッチの開閉を検出できないため異常な動作になってしまいます。さらに、軸共通のホームスイッチ入力を使用する場合の設定として[AXIS_n]セクションのHOME_OFFSETオプションを使用してホーム位置を少し移動させることでHomming動作を実行した軸のスイッチはオープンになるようにしています。これは、HOMEオプションでも同じことが可能かと思います。
変更しませんでしたが、いくつかのセクションにあるCYCLE_TIMEオプションなどのタイミングに関係するものは調整の必要があるのかもしれないし、パフォーマンスの向上が望めるのかもしれません。
INIファイルは以下の通りです。