grbl 5轴Linux移植

#############################################################################
# Makefile for building: grbl5axis
# Project:  grbl5axis.pro
#############################################################################

MAKEFILE      = Makefile

CC            = arm-linux-gnueabihf-gcc
CXX           = arm-linux-gnueabihf-g++
DEFINES       = -DARM 
CFLAGS        = -pipe -I/zzzzzzzzzzzzzzzzz/usr/include/dbus-1.0 -I/zzzzzzzzzzzzzzzzz/usr/lib/dbus-1.0/include -I/zzzzzzzzzzzzzzzzz/usr/include/glib-2.0 -I/zzzzzzzzzzzzzzzzz/usr/lib/glib-2.0/include -g -Wall -W -fPIC $(DEFINES)
CXXFLAGS      = -pipe -g -Wall -W -fPIC $(DEFINES)
INCPATH       = -I./grbl
DEL_FILE      = rm -f
LINK          = arm-linux-gnueabihf-g++
LFLAGS        =  --sysroot=/zzzzzzzzzzzzzzzzz/usr/arm-buildroot-linux-gnueabihf/sysroot  -L/zzzzzzzzzzzzzzzzz/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib -L/zzzzzzzzzzzzzzzzz/usr/arm-buildroot-linux-gnueabihf/sysroot/lib
LIBS          = -lpthread -ldbus-glib-1 -ldbus-1 -lgobject-2.0 -lglib-2.0 
AR            = arm-linux-gnueabihf-ar cqs
SED           = sed
STRIP         = arm-linux-gnueabihf-strip

OBJECTS_DIR   = ./

SOURCES = grbl/coolant_control.c \
		grbl/eeprom.c \
		grbl/gcode.c \
		grbl/jog.c \
		grbl/limits.c \
		grbl/main.c \
		grbl/motion_control.c \
		grbl/nuts_bolts.c \
		grbl/planner.c \
		grbl/print.c \
		grbl/probe.c \
		grbl/protocol.c \
		grbl/report.c \
		grbl/serial.c \
		grbl/settings.c \
		grbl/sleep.c \
		grbl/spindle_control.c \
		grbl/stepper.c \
		grbl/system.c \
		grbl/xxxxxxxxxxx.c \
		grbl/dbuscomm.c \
		grbl/shmfifo.c 
		
OBJECTS       = coolant_control.o \
		eeprom.o \
		gcode.o \
		jog.o \
		limits.o \
		main.o \
		motion_control.o \
		nuts_bolts.o \
		planner.o \
		print.o \
		probe.o \
		protocol.o \
		report.o \
		serial.o \
		settings.o \
		sleep.o \
		spindle_control.o \
		stepper.o \
		system.o \
		xxxxxxxxxxx.o \
		dbuscomm.o \
		shmfifo.o

TARGET        = grbl5axis


first: all

$(TARGET):  $(OBJECTS)  
	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)

all: Makefile $(TARGET)

dist: distdir FORCE
	(cd `dirname $(DISTDIR)` && $(TAR) $(DISTNAME).tar $(DISTNAME) && $(COMPRESS) $(DISTNAME).tar) && $(MOVE) `dirname $(DISTDIR)`/$(DISTNAME).tar.gz . && $(DEL_FILE) -r $(DISTDIR)

clean: compiler_clean 
	-$(DEL_FILE) $(OBJECTS)


distclean: clean 
	-$(DEL_FILE) $(TARGET) 
	


####### Sub-libraries
####### Compile
compiler_clean:
coolant_control.o: grbl/coolant_control.c grbl/grbl.h \
		grbl/config.h \
		grbl/nuts_bolts.h \
		grbl/settings.h \
		grbl/system.h \
		grbl/defaults.h \
		grbl/cpu_map.h \
		grbl/planner.h \
		grbl/coolant_control.h \
		grbl/eeprom.h \
		grbl/gcode.h \
		grbl/limits.h \
		grbl/motion_control.h \
		grbl/print.h \
		grbl/probe.h \
		grbl/protocol.h \
		grbl/report.h \
		grbl/serial.h \
		grbl/spindle_control.h \
		grbl/stepper.h \
		grbl/jog.h \
		grbl/sleep.h \
		grbl/xxxxxxxxxxx.h \
		grbl/sharedata.h \
		grbl/dbuscomm.h \
		grbl/shmfifo.h
	$(CC) -c
GRBL 控制器中,将 Y 的配置更改为 X 的行为,本质上是重新映射的功能。GRBL 使用一组配置参数(通过 `$` 开头的命令设置)来定义机器的行为,包括的方向、步进率、最大速度等。要实现 Y 行为映射到 X ,需要修改以下配置: ### GRBL 配置参数 1. **步进率设置** GRBL 中每个的步进率(steps/mm)是通过配置参数 `$100`(X)、`$101`(Y)和 `$102`(Z)定义的。若要将 Y 的步进率应用到 X ,则需要将 `$100` 的值更改为原本 `$101` 的值。例如,如果 `$101` 设置为 `200`,则可以使用以下命令将 `$100` 设置为 `200`: ```bash $100=200 ``` 2. **方向设置** 每个的方向可以通过 `$3` 参数进行配置,其值是一个位掩码,用于控制的方向。X 对应第 0 位,Y 对应第 1 位,Z 对应第 2 位。如果需要让 X 的行为与 Y 一致,可以修改 `$3` 的值,将 X 的方向设置为与 Y 相同。例如,如果 Y 方向为反向(即第 1 位为 1),则可以设置 `$3` 的值为 `5`(二进制 `101`),以确保 X 和 Y 方向一致: ```bash $3=5 ``` 3. **最大速度和加速度** 如果 Y 的最大速度和加速度设置(`$110`、`$120`)与 X 不同,则需要将这些值复制到 X 对应的参数(`$110`、`$120`)中。例如,如果 Y 的最大速度为 `500`,则可以使用以下命令将 X 的最大速度设置为 `500`: ```bash $110=500 ``` 4. **禁用/启用** 如果需要完全禁用 Y ,可以通过修改 `$5` 参数来实现,该参数控制哪些被启用。X 对应第 0 位,Y 对应第 1 位,Z 对应第 2 位。如果需要禁用 Y ,可以将 `$5` 的值设置为 `1`(仅启用 X )[^1]: ```bash $5=1 ``` ### 修改步骤 1. **连接 GRBL 控制器** 使用串口通信工具(如 Arduino IDE 的串口监视器)连接到 GRBL 控制器。 2. **查询当前配置** 输入以下命令查询当前的配置参数: ```bash $$ ``` 3. **修改配置参数** 根据上述说明,修改 `$100`、`$3`、`$110`、`$120` 和 `$5` 等参数的值,以实现 Y 行为映射到 X 。 4. **保存配置** 输入以下命令保存新的配置: ```bash $$ ``` 5. **重启 GRBL 控制器** 输入以下命令重启 GRBL 控制器以应用新的配置: ```bash M30 ``` ### 示例代码 以下是一个示例代码片段,用于将 Y 的步进率和方向设置复制到 X ,并禁用 Y : ```bash $100=200 # 设置 X 的步进率为 200(假设 Y 原本为 200) $3=5 # 设置 X 和 Y 方向一致(假设 Y 方向为反向) $5=1 # 禁用 Y (仅启用 X ) $$ # 保存配置 ``` 通过上述步骤,可以将 GRBL 控制器中的 Y 配置更改为 X 的行为。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值