工業音楽 shuplana's diary

CNCを中心としたワンボードマイコン~パソコン周辺

LinuxCNC 活用のプラン

GUIのアプリ群をリモートで実行する記事があり、GUIを分離した構成も紹介されていたりしますので、別の機会にまとめたいと思います。

なぜ一方をリモートで実行したいかというと、

  • リアルタイム処理に専念し機械制御のみを行うPCと、GUIアプリ群で画面表示に専念するPCに分散し、それぞれ目的に適したカスタマイズ、アップグレードができるようにする。

上記の目的のためです。

 

そのため、起動OSで仮想化マシンに別OSとして稼働させた中で動作させるのは目的に反します。リアルタイムOS仮想マシン内で動かした際のその環境に起因する負荷が読めない、そしてそれを解決する手間も読めないからです。

 

LinuxCNCのブロック・ダイアグラムから。最近のダイアグラムは、Remote GUIも加えられていますね。

f:id:shuplana:20170504093338p:plain

 

【1】ステップ1

 

普通にLinuxCNCを動かそうとすれば、LinuxCNCが要求するハード、LinuxのPC1機でLinuxCNCを稼働させることになります。

f:id:shuplana:20170504093355p:plain

【2】ステップ2

目的のPC2機構成で、機械制御とGUIを分離します。

LinuxのPC2機でLinuxCNCを稼働させることになります。

f:id:shuplana:20170504093402p:plain

 

【3】ステップ3

 

機械制御部をBeagleBoneBlackに置き換えます。小さいこと、リアルタイム性に優れているだろうとの読みです。

BeagleBoneBlackのチップにはPRUという、リアルタイム処理に優れたユニットが含まれていて、これを活用したLinuxCNCの派生、MachineKitが供給されています。

RemoteGUI も、GPUを積んだPCで稼働させる想定です。

できれはGPUを積んだWindows機に移植したいです。GPUを積んだ専用のLinuxクライアント機は他に使い道がなくなるのでWindows機にしたいです。

 

f:id:shuplana:20170504093411p:plain

 

BeagleBoneBlackのCNC用Capeは、XylotexさんのDB25出力するCapeを購入済みだったのですが、Xylotexさんは路線を変更して、Stepper Motor Driverを駆動する信号を出せるCapeしかなくなっています。

しかしながら、よくよく考えてみれば、今となっては大掛かりなプリンタケーブルのDB25より、プリンターケーブル~Breakout基板まで省略できてしまうCapeなので、とても省スペース、省部品となりますので、このCapeを買いなおそうかと思っています。

上記の構想で進めていきます。