長らくレーザー加工機はLaserWeb4とSmoothieWareとMKS SBASEの組み合わせで動かしていたが、SmoothieWareはCNC-2020でも使っているので、grbl-LPCに替えてみることにした。
github.com
grbl-LPCはバイナリを使用せず、git cloneしてソースからのビルドで実装した。
ソースの変更箇所は次の通り。
- grblフォルダ内のconfig.h
// Define board type for pin map and default settings. //#define CPU_MAP_SMOOTHIEBOARD // Smoothieboard (NXP LPC1769 MCU) #define CPU_MAP_MKS_SBASE // MKS SBASE Board (NXP LPC1768 MCU) // Define machine type for machine specific defaults #define DEFAULTS_GENERIC //#define DEFAULTS_K40 //#define ENABLE_SAFETY_DOOR_INPUT_PIN // Default disabled. Uncomment to enable.
- grblフォルダ内のdefaults.h
#ifdef DEFAULTS_GENERIC の各$パラメータを入れ込むのと、ホーミング順序を追記した。
#define HOMING_CYCLE_0 (1<<Z_AXIS) #define HOMING_CYCLE_1 (1<<X_AXIS) #define HOMING_CYCLE_2 (1<<Y_AXIS)
ソース修正後はmakeするとfirmware.binが生成されるので、SDカードにコピーしてSBASEを起動させるだけである。
動作確認後のラスター焼きをしたが、結果は以下の通り。
下の段がパワー0〜80%、F2000で実行
上の段がパワー0〜50%、F6000で実行
電流計では出力がリニアに増減して可変しているのが分かるが、MDF上はそれほど階調が現れたりしないのは従来通り。