3D打印3D文件转换GCODE怎么转换成SLICER

本节介绍了首字母的定义 定义嘚数字nnn代表。 数字可以是整数也可以包含一个小数点,根据上下文 例如X坐标可以是整数(X175)或小数(X17.62),而试图选择挤出数2.76将毫无意義

这个值作为一个十进制整数*字符命令后追加值。

RepRap固件期望行数每行增加1如果不发生,它是标记为错误但你可以使用的M110(见下文)偅置计数。

该的RepRap固件存储这些命令在一个环形缓冲区内部执行 这意味着虽然一个命令被确认了且下一个就会被发送但没有(明显)的延遲。 反过来这意味着线段序列会被划分但两个之间没有延时。 当这些缓冲命令被收到,它就被确认和在本地存储了 如果本地缓冲区已满,这个确认就延迟直到缓冲区空间可以存储。 这就是如何实现流量控制

在这种情况下快速移动到X = 12毫米。 事实上 RepRap固件快速控制动作(見下面的G1)使用的是完全相同的代码。 (区别来自一些旧机床如果不是在一条直线轴驱动时移动速度更快。他们G0允许任何空间中的运动以尽可能快地到达目的地。)

在一条直线上从目前的(XY)点移动到点(90.6,13.8)挤出材料现在开始移动到22.4毫米的长度。

RepRap与材料进给都做絀了反应 因此:

将设置为1500毫米/分钟的进给率,那么进给速度会根据上面的去移动 但

将设置为1500毫米/分钟的进给速度,然后根据上述加速箌进给3000毫米/分钟 挤压将加速沿X,Y运动所以一切都保持同步。

RepRap只是以另一个变量(如X,YZ和E)进行线性插值去处理进给率。 这给了加速和减速的方式以确保同时移动和大量材料是正确地挤在所有点上。

第一个例子显示了如何获得一个恒定的速度运动 第二个是如何加速或减速。 从而

会首先加速然后从3000毫米/分钟减速至1500毫米/分钟。

挤出机倒退一个给定的数量(例如以减少其内部的压力,同时空气在流動以便它不会滴下),只需使用G1发送小于目前的挤压长度的E值

这将导致RepRap机器移动回其x,y和Z原点的限位开关被称为“归位”的过程。 先加速很快到达那里 但是,当它到达后会慢慢地(1毫米)在每个方向移动然后向后移动缓慢停止。 这将确保更精确的定位

如果添加唑标,则刚指定的坐标轴将被清零 从而

将使X和Y轴都为零,但没有Z轴的它的实际坐标值将被忽略。

下面的命令没有缓冲 当收到它存储嘚信息,但它未被主机确定直到缓冲区耗尽,然后命令才被执行 因此,主机在这个命令时将暂停直到它执行。 这些命令和任何可能哏随他们 之间的的短暂停都不影响机器的性能

在这种状态下暂停200毫秒不工作。 在延时时的机器状态(例如其挤出机的温度)仍然会被保留和控制

G20:设置单位为英寸

从现在开始单位是英寸。

G21:设置单位为毫米

从现在开始单位是毫米 (这是的RepRap默认。)

从现在起所有的坐標是绝对的,相对的机器的原点 (这是的RepRap默认。)

G91 :设置相对定位

从现在起所有的坐标是相对最后一个位置的。

G92 :定义当前位置

允许編程的绝对零点通过重置当前位置为指定的值。 这将设置机器的X坐标为10和挤出坐标为90 没有物理运动发生。

若没有指定坐标的G92将重置所囿轴为零

RepRap机器完成其缓冲区中留下任何动作,然后关闭 所有的电动机和加热器关闭。 它可以由主控制器上按下复位按钮重新启动 也鈳看到M112。

M17的:使能/加速 全部步进电机

M18的:禁止所有的步进电机

禁用步进电机允许轴的自由移动。

SD卡的根3D文件转换夹中的所有3D文件转换列絀了串口 排成一行就像这样:

后面的逗号是可选的。 注意:3D文件转换名是返回大写的但当发送到M23命令(下同),他们必须是小写

SD卡初始化。 如果SD卡装入机接通时默认情况下会出现这种情况。 SD卡必须初始化来对其他SD功能工作

SD卡被释放,并可以拿出来

filename.gco指定的3D文件转換(支持8.3命名约定,即主3D文件转换名只能是八个或以下英文字符而扩展名只能是三个英文字符的形式)被选择并准备打印

开始打印从M23命囹选择的3D文件转换。

在M23命令选择的3D文件转换的当前位置暂停打印

M27:报告SD打印状态

M28 :开始写入到SD卡

filename.gco指定的3D文件转换被创建(或覆盖,如果咜存在)在SD卡上发送到本机的所有后续命令被写入该3D文件转换。

M29 :停止向SD卡写入

M28命令打开的3D文件转换被关闭发送到本机的所有后续命囹正常执行。

如果您的RepRap机器可以退出部分已建成了床此命令执行退出循环。 这通常涉及到冷却床然后执行一系列动作,把打印的部分迻开 X,Y和Z的位置在这个周期结束时是不确定的(虽然他们可以发现使用的M114命令)

还可以看下面的M240和M241。

RepRap机器如果是从自己的储存器建立┅个3D文件转换如本地的SD卡3D文件转换(而不是从一台主机传输的3D文件转换),这又回到开头的3D文件转换并重新运行它。 因此举例来说,如果你的RepRap是 能够从构建的床弹出 的部分你可以将它设置循环印刷,它将一直运行 谨慎使用

2. 原料耗尽(如果您的RepRap设立检测),

3. 当有一個错误(如加热器故障)

M42 :用尽材料时停止

如果您的RepRap可以检测其材料用完,当这种情况发生时这会决定它的运行状况 X和Y轴归零(但Z没囿),然后会关闭所有电机和加热器 你必须按复位来激活机器。 换句话说遇到这情况它会自动执行M0的命令。

M43 :用尽材料时等待

如果您嘚RepRap可以检测其材料用完当这种情况发生时这会决定它的运行状况。X和Y轴归零(但Z没有)然后会关闭所有电机和加热器,除了热的床上仍保持温度 机器在这种状态下仍然响应G和M代码的命令。

从待机模式打开ATX电源到全面运作模式

,是自动处理电源开/关所以这是多余的。

关闭ATX电源 对应M80的。

M82 :设置挤出绝对模式

使挤出机挤出为绝对位置

M83:设置挤出机相对模式

使挤出机挤出为相对位置。

M84:停止机器的空轉

停止所有轴和挤出机上的空转 在某些情况下导致空转产生的恼人噪音,可以通过禁用来停止 请注意,在打印过程中禁用空转会有質量问题。

M92:设置轴的步进单位

允许轴的步进单位的编程直到电子复位为指定轴。 非常有用的校准

M101:正向启动挤出机1

过时的。  用在旧風格的DC挤出机上

M102:逆向启动挤出机1

M103:将所有挤出机关闭

已过时。 使用在旧风格的DC挤出机上

M104:设置挤出机温度(快速)

设置当前的挤出機的温度至190oC和立即返回给主机控制( 在此之前,挤出机温度已达到) 也看到M109的。

M105:获得挤出机温度

请求到当前的挤出机摄氏温度并返回箌主机例如,发送到响应此命令的主机的数据行像

开启冷却风扇(半速) 可选参数“S”声明的PWM值(0-255)

关闭冷却风扇(如果有的话)。

M108:设置挤出机速度

设置挤出机马达的速度 (当前的固件已过时,看到M113型)

M109:设置挤出机温度

目前挤出机的温度设定到190oC并在向主机发送一個确认的值之前等待它到达 事实上的RepRap固件等待一段时间后挤出机温度已达到稳定 - 通常大约40秒。 这可以在编译固件时通过配置3D文件转换中嘚参数去改变的 看到M104和M116。

M110的:设置当前行号

当前行号设置为123 因此预期此命令后的下一行,将是124

M111:设置调试级别

设置调试信息传回主機的级别到6级的水平。 这级别是的三位的OR(比值比):

因此6表示发送信息和错误,但不呼应(重复)命令 (这是的RepRap默认。)

正在进行嘚任何举动立即终止然后RepRap停工。 所有的电动机和加热器关闭清除缓冲区。 它可以由主控制器上按下复位按钮重新启动 看到M0。

设置当湔选定的挤出机的PWM 就其本身而言,该命令设置RepRap对挤出机的控制器板上的电位计设置为当前选定的挤出机的步进电机的PWM 随着一个S字段:

咜使PWM设置为S值(70%)。 M113 S0关闭挤出机直到收到其它M113 S0以外的指令。

M114:获得当前位置

这使RepRap机器报告其当前的XY,Z和E坐标到主机

例如,机器返囙一个字符串如:

M115:获取固件版本和功能

请求当前微控制器的固件版本和能力,作为关键的细节返回到主机:该值由空格分隔换行符終止。

等待所有的温度和缓慢变化的其他变量都到达设定值 看到M109的。

这将使RepRap机在这些轴最后碰到原点时同步报告XY,Z和E (不是mm)到主机 这就是说,当你零XX的坐标在碰到X轴的限位定档时会被记录, 这个值应该是0 但是,如果机器已经偏离那么就不会是。 这个命令允许伱测量和诊断等问题 (E被列入完整性,通常不会有限位定挡)

M代码是为未来的打样。目前无固件或hostware的支持。 它结合M115的关键字特点一起使用

M119:获得限位定挡的状态

返回当前X,YZ轴限位开关配置的状态。 应注意任何“反向限位定挡”的设置才可以确认本机已正确理解endstops。

打开挤出机的阀(如果有)并等待500毫秒。

关闭挤出机的阀门(如果有)并等待400毫秒。

M128:设置挤出压力的PWM

通过PWM值(0~255)控制内部挤出压仂 S255是全压。

M129:关闭挤出机压力

除了挤出机压力设置为0你可以把压力完全关闭。 P100等待100毫秒。

M140:床温(快速)

床的温度设定到55℃和立即返回控制到主机上( 在此之前床温度已达到)。

室的温度设定到30°C 并立即返回控制到主机上(在此之前温度已达到)。

设置在床的保壓至1 bar

保持压力是在bar。 对于硬件的开关控制保压为零时,关闭当压力大于零,打开保压

M143:最大的加热头温度

设置加热头最高温度到2750C

當加热头温度超过此值,采取相应措施例如紧急停止。 这是为了防止热伤害

M160:混合材料的数量

设置目前挤出机可以处理的指定的材料數目N。 默认值是1

当N> = 2,那么控制挤出E就需要N +1的值由空格分隔:

第二行,直接移动到点(90.613.8)挤出22.4毫米长丝。移动到最后的混合比例为0.1:0.1:0.1:0.7

苐四行没有物理效果,但将开始下一步以1:0:0:0为配比的动作

M203:记录Z的调整

这记录了Z偏移RepRap的微控制器的永久性内存的调整,它一直有效直到下┅次设置即使关闭了电源。 如果第一层离床太近你需要将床向下移动,所以Z值将是负数 如果在第一层喷嘴离床太远要升高床,Z值是囸的 最大调整+ /-1.27毫米。

M226:G代码启动暂停

如果暂停按钮被按下以同样的方式启动暂停。

M227:使能自动反向和做准备

M228:禁用自动反向和准备

M229:使能自动反向和作准备

P和S是挤出机螺杆的旋转

M230:禁用/启用等待温度变化

S1禁用S0使能等待温度变化

M240:开始输送带马达

允许输送带开始reprap的一部汾大规模生产

M241:停止输送带马达

用来冷却零件/加热床,便于打印后零件的取出

选择挤出机1号 挤出机的编号从0开始。

建议的EEPRO(电可擦只读存储器)M配置代码

简述:每个RepRap的物理参数有部分应该是可保存也很容易配置的如挤压步进/毫米,各项最大值等这些参数目前都固件的玳码里,使用户调整时能修改重新编译固件。 这些配置可以存储在单片机的EEPROM中并通过一些M代码修改。  

RepRap机器到主机的回复

所有的通信都茬可打印的ASCII字符 消息发送回主计算机是通过换行符终止:

ok表示无检测到任何错误。

rs表示重发随后被重新发送行号。

!!表示已检测到硬件故障 RepRap机器发送此消息后会立即停机。

T 和 B的值是当前选定的挤出机和床的温度只在响应M105时才能发送。 如果不存在这样的温度(如挤出机在室温下工作没有传感器),然后返回值低于绝对零度(-273℃)

C:表示跟随的坐标。 这些都是X:Y:等的值 这些仅响应M114和M117才发送。

RepRap也可鉯发送行:

/ /这行是 调试或其他的信息 它可以在任何时间发送。

这样的行会在前面加上/ /

当机器一旦启动起来主机会在发其它前发送字符串

这不应该被替换或增加。 (见上文M115)

除了RepRap发送到主机的起始行,其它每行都有两个字符的前缀(okrs,!!或/ /)。

从主机发送到控制器发送的烸一行G代码 都在发送 无锁定通信的下一行 前返回ok 这使操作很慢,通常的USB-TTL转换器和主机的操作系统驱动程序也可能有大量的延迟通常为10毫秒。










为了正常运行的固件您必须适当的配置固件中的变量,然后上传固件到Arduino该值存储在 _init.pde3D文件转换中。 例子版本在 _init.pde.dist中

这个变量存储移动X轴1英寸需要步进多少。 如果你想你的机器是准确的你需要尽可能设置准确。 有两种方法来设置它:

1. 移动和测量 – 直接用笔或标記并绘制1000步的线 测量出总长再计算出每步是多少英寸。

2. 计算步长 - 这是首选方式 它根据传动装置比较容易计算步长。

找出TPI(每英寸螺纹) 例如,1/4“-20螺纹杆是指每英寸有20个螺纹(即20圈= 1英寸)简单地采取这一数字乘以运行的步数。400步进电机(转1圈为400步),它会昰每英寸8000步

1. 找到驱动滑轮的周长。(例如:2.75“)

这个变量上移动X轴1毫米要转几步 你可以独立计算出它,或用上述数量(英寸的)除以25.4(1英寸=25.4毫米)

这个变量存储在RPM(每分钟转速)步进的最高速度。 这是很重要的因为它决定以最快的速度移动的步进。如果伱不确定合适的速度就 用低速启动工作。

这个变量存储每一转的步数 这参数在电机数据表会有说明

如果用半步进模式步进,则步数为兩倍 同样,如果使用microstepper来驱动则要乘以对应的系数。

这些变量作为上述变量是相同的

这些定义的G0命令使用的最大进给速度。 毫米/分钟嘚进给

Arduino固件等待串口命令,当遇到换行符或者没有读到更多的字符后开始处理命令

通过G代码固件来控制机器有几种方式:

§ 你可以编寫自己定义的主机软件发送命令,

§ 使用的RepRap主机软件发送命令

§ 使用已经捆绑发送命令的处理程序。

我要回帖

更多关于 3D文件转换 的文章

 

随机推荐