CN114953465B - 一种基于Marlin固件的3D打印方法 - Google Patents

一种基于Marlin固件的3D打印方法 Download PDF

Info

Publication number
CN114953465B
CN114953465B CN202210540489.6A CN202210540489A CN114953465B CN 114953465 B CN114953465 B CN 114953465B CN 202210540489 A CN202210540489 A CN 202210540489A CN 114953465 B CN114953465 B CN 114953465B
Authority
CN
China
Prior art keywords
printing
axis
setting
front panel
printing equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210540489.6A
Other languages
English (en)
Other versions
CN114953465A (zh
Inventor
郑富中
李仲豪
王彪
蒋世奇
黄丹平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu University of Information Technology
Sichuan University of Science and Engineering
Original Assignee
Chengdu University of Information Technology
Sichuan University of Science and Engineering
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu University of Information Technology, Sichuan University of Science and Engineering filed Critical Chengdu University of Information Technology
Priority to CN202210540489.6A priority Critical patent/CN114953465B/zh
Publication of CN114953465A publication Critical patent/CN114953465A/zh
Application granted granted Critical
Publication of CN114953465B publication Critical patent/CN114953465B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/30Auxiliary operations or equipment
    • B29C64/386Data acquisition or data processing for additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B29WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
    • B29CSHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
    • B29C64/00Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
    • B29C64/10Processes of additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y10/00Processes of additive manufacturing
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y50/00Data acquisition or data processing for additive manufacturing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Chemical & Material Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Materials Engineering (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Optics & Photonics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本发明属于3D打印技术领域,具体涉及一种基于Marlin固件的3D打印方法,在Labview可视化编程环境下,利用已有的开源Marlin固件及其Labview驱动程序构建3D打印系统。实现对打印机硬件,包括四个电机、两个加热装置、一个风扇的控制,包括两个热传感器的数据采集,以及三个限位开关的状态信息获取;实现根据所设采样频率实时显示温度变化曲线;实现直接调用Gcode文件实施3D打印并实时显示打印头的平面运动轨迹。

Description

一种基于Marlin固件的3D打印方法
技术领域
本发明属于3D打印技术领域,具体涉及一种基于Marlin固件的3D打印方法。
背景技术
自3D打印的提出,主流的打印机固件主要是Sprinter和Marlin固件。Sprinter固件是最早开发的3D打印机固件,而Marlin固件和Repetier-firmware固件都是由其衍生而来;一般用户在使用Marlin固件的时候只需要改变一下Configuration.h文件中的一些参数即可,非常方便。因此在这两者中,Marlin固件的使用更加广泛,很多打印机控制软件都兼容Marlin固件,而Sprinter固件已经无人维护,使用人数也越来越少。Marlin固件优点:
(1)预加速功能;可以减少拐角处耗材的堆积,曲线打印更加的平滑;
(2)支持圆弧,可以得到最平滑的圆弧,减少串口通信量;
(3)温度多重采样,降低噪声干扰,采样16次计算平均温度;
(4)自动调节温度,可以随着实际情况改变打印速度;
(5)支持脱机打印,可以直接读取G码文件,不必是根目录下的文件。
Labview是一种程序开发环境,类似于C和BASIC开发环境,但是Labview与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而Labview使用的是图形化编辑的G语言编写程序,产生的程序是框图的形式。
随着科技的发展和普及,3D打印机已经成为大众常见的一种产品,技术人员也开发出了各种各样的功能,比如三维采集装置平台、三轴写字机和三轴雕刻机。但是在开发这些功能时,采用的是传统编程环境与数据采集卡(或者是运动控制卡)相结合的方法。在传统的编程环境中,对于新手来说,无论是界面或者是后台程序,难度均相对较大;而采用Labview则有上手容易和开发速度快的优点,但与Labview配套的数据采集卡(或者运动控制卡)价格昂贵,成本较高。从目前公开的资料来看,为数不多的利用Labview来开发3D打印系统的相关研究机构都采用这种方式。
发明内容
本发明拟提供一种基于Marlin固件的3D打印方法,实现直接调用Gcode文件实施3D打印并实现显示打印头的平面运动轨迹。
为解决上述技术问题,本发明采用的技术方案如下:
一种基于Marlin固件的3D打印方法,包括以下步骤:
步骤1:启动3D打印系统,并对3D打印系统进行初始化;
步骤2:建立上位机与3D打印设备之间的通信,完成对3D打印设备的初始化;
步骤3:设置3D打印设备的启动参数,对3D打印设备进行三维坐标系下X轴和Y轴方向的移定性测试;
步骤4:通过手动控制3D打印设备的打印头在三维坐标系下的X轴、Y轴和Z轴方向上的移动步进值、移动速度以及复位,并设置打印时各部件的参数;
步骤5:运行步骤3中所设置的启动参数,并在前面板上图形化显示3D打印设备所采集到的数据;
步骤6:运行打印文件,开始进行打印。
优选的,所述步骤1包括以下步骤:
步骤1.1:确定与3D打印设备相连的串口,并保存确定的串口;
步骤1.2:根据3D打印设备的设计极限,输入三维坐标系下X轴、Y轴和Z轴三个方向下的位移最大值,确定被打印物体的最大体积。
优选的,所述步骤2包括以下步骤:
步骤2.1:设置3D打印设备的打印头相对于复位原点的移动距离和移动速度,分别在三维坐标系下的X轴和Y轴方向上按照设置的参数作往复运动;
步骤2.2:前面板基于传感器的检测信息获取打印头相对于复位原点之间的距离,并在前面板上实时显示。
优选的,所述步骤3包括以下步骤:
步骤3.1:在前面板上设置打印头、热床和3D打印设备工作空间的温度;
步骤3.2:在前面板上设置风扇转速,调节3D打印设备工作空间的温度;
步骤3.3:在前面板上设置打印头的移动速度和单步移动距离,分别对X-Y平面和Z轴方向进行复位,或进行三维总复位;并手动控制X-Y平面上八个方向以及Z轴的两个方向的移动,并基于出料量设置挤出头的挤出与回退。
优选的,所述步骤4包括以下步骤:
步骤4.1:前面板获取3D打印设备上的所有限位开关的状态,并以LED灯的形式显示限位开关的状态;
步骤4.2:通过前面板设置温度采样频率,并在前面板上图形化显示温度变化曲线。
优选的,所述步骤5包括以下步骤:
步骤5.1:通过文档储存路径调用Gcode文件,运行Gcode文件,并在前面板上实时显示Gcode代码;
步骤5.2:打印头进行走位,且在前面板上通过平面图显示打印头行走轨迹。
优选的,所述步骤1中对3D打印设备初始化:对准备状态显示标签页中的按键显示为Start,并清空温度显示图表,设定3D打印设备的打印头轨迹显示图表的显示范围;并判断3D打印设备是否为自动初始化,若为假,则进入设置标签页,输出空队列,同时通过标签参考号取出设置标签页的文本来与“Setting”文件对比,相等时退出对比循环,若有错误则输出错误;若自动初始化为真,则将“initialize”和空字符串连接后放入队列再输出队列供下一步的步骤使用,若存在错误,则输出错误。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1.由于本发明在建立硬件结构成熟的开源Marlin固件的基础上,具有功能全面和成本低廉的特点,同时自主开发的Labview驱动程序对各个功能模块已形成子VI和控件,可单独进行调用,功能强大,有效提高开发速度。
2.由于本发明采用Labview可视化图形编程的G语言,具有并行运行的属性,各个循环之间可实时互通信息,有效利用计算机资源,增强了系统的实时性,一定程度上消除了打印头走不到位的情况。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为本发明的控制流程图。
图2为本发明的后面板程序结构图。
图3为本发明的系统初始化程序框图。
图4为本发明的系统初始化程序流程图。
图5为本发明的发送循环中3D打印机-值改变事件的程序框图。
图6为本发明的发送循环中3D打印机-值改变事件的实现流程图。
图7为本发明中更新3D打印机事件的程序框图。
图8为本发明的接收循环中更新3D打印机的实现流程图。
图9为本发明的发送循环中保存-值改变事件的程序框图。
图10为本发明的发送循环中保存-值改变事件的实现流程图。
图11为本发明的接收循环中保存事件的程序框图。
图12为本发明的接收循环中保存事件的实现流程图。
图13为本发明的发送循环中删除-值改变事件的程序框图。
图14为本发明的发送循环中删除-值改变事件的实现流程图。
图15为本发明的接收循环中删除事件的程序框图。
图16为本发明的接收循环中删除事件的实现流程图。
图17为本发明的发送循环中初始化-值改变事件的陈序框图。
图18为本发明的发送循环中初始化-值改变事件的实现流程图。
图19为本发明的接收循环中初始化事件的程序框图。
图20为本发明的接收循环中初始化事件的实现流程图。
图21为本发明的接收循环中训练事件的程序框图。
图22为本发明的接收循环中训练事件的实现流程图。
图23为本发明的发送循环中开始训练-值改变事件的程序框图。
图24为本发明的发送循环中-值改变事件的实现流程图。
图25为本发明的接收循环中开始训练事件的程序框图。
图26为本发明的接收循环中开始训练事件的实现流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面结合附图1和附图26对本发明的实施例作详细描述;
一种基于Marlin固件的3D打印方法,包括以下步骤:
步骤1:启动3D打印系统,并对3D打印系统进行初始化;
所述步骤1包括以下步骤:
步骤1.1:确定与3D打印设备相连的串口,并保存确定的串口;
步骤1.2:根据3D打印设备的设计极限,输入三维坐标系下X轴、Y轴和Z轴三个方向下的位移最大值,确定被打印物体的最大体积。
步骤2:建立上位机与3D打印设备之间的通信,完成对3D打印设备的初始化;
所述步骤2包括以下步骤:
步骤2.1:设置3D打印设备的打印头相对于复位原点的移动距离和移动速度,分别在三维坐标系下的X轴和Y轴方向上按照设置的参数作往复运动;
步骤2.2:前面板基于传感器的检测信息获取打印头相对于复位原点之间的距离,并在前面板上实时显示。
步骤3:设置3D打印设备的启动参数,对3D打印设备进行三维坐标系下X轴和Y轴方向的移定性测试;
所述步骤3包括以下步骤:
步骤3.1:在前面板上设置打印头、热床和3D打印设备工作空间的温度;
步骤3.2:在前面板上设置风扇转速,调节3D打印设备工作空间的温度;
步骤3.3:在前面板上设置打印头的移动速度和单步移动距离,分别对X-Y平面和Z轴方向进行复位,或进行三维总复位;并手动控制X-Y平面上八个方向以及Z轴的两个方向的移动,挤出头的挤出与回退。
步骤4:通过手动控制3D打印设备的打印头在三维坐标系下的X轴、Y轴和Z轴方向上的移动步进值、移动速度以及复位,并设置打印时各部件的参数;
所述步骤4包括以下步骤:
步骤4.1:前面板获取3D打印设备上的所有限位开关的状态,并以LED灯的形式显示限位开关的状态;
步骤4.2:通过前面板设置温度采样频率,并在前面板上图形化显示温度变化曲线。
步骤5:运行步骤3中所设置的启动参数,并在前面板上图形化显示3D打印设备所采集到的数据;
所述步骤5包括以下步骤:
步骤5.1:通过文档储存路径调用Gcode文件,运行Gcode文件,并在前面板上实时显示Gcode代码;
步骤5.2:打印头进行走位,且在前面板上通过平面图显示打印头行走轨迹。
步骤6:运行打印文件,开始进行打印。
参见附图2所示,本发明还包括发送循环、计时循环和接收循环,两个上述循环之间通过标签页中标签的值实现信息互通,循环包含相对独立的事件来完成不同的任务。
所述发送循环中包含的事件任务有:超时(Timeout)、初始化-值改变(“Initialize”:ValueChange)、禁用步进电机-值改变(“Disable steppers”: ValueChange)、风扇控制-值改变(“Fan control”: Value Change)、温度控制-值改变(“Nozzletemp”, “Bed temp”, “Chamber temp”: Value Change)、监控数据-值改变(“Monitordata”: Value Change)、方向控制-值改变(“Y+”, “X+”, “X+Y-”, “Y-”, “X-Y+”, “XY+”,“X-”,“XY-”, “Z+”, “Z-”, “Extrude”, “Retract”: Value Change)、复位控制-值改变(“Home XY”, “Home Z”, “Home all”: Value Change)、调用Gcode-值改变(“Gcodefile”: Value Change)、运行Gcode-值改变(“Start Gcode”: Value Change)、暂停Gcode-值改变(“Pause Gcode”: Value Change)、停止Gcode-值改变(“Stop Gcode”: ValueChange)、开始训练-值改变(“Start torture”: Value Change)、3D打印机-值改变(“3Dprinter”: Value Change)、保存-值改变(“Save”: Value Change)、删除-值改变(“Delete”: Value Change)、面板关闭-值改变(Panel Close);
所述接收循环中包含的事件任务有:默认(Default)、初始化(“initialize”)、更新打印机(“update_printer”)、保存(“save”)、删除(“delete”)、移动(“move”)、禁用步进电机(“disable_steppers”)、复位(“home”)、设置温度(“set_temp”)、设置风扇(“set_fan”)、请求数据(“request_data”)、加载gcode(“load_gcode”)、运行gcode(“run_gcode”)、暂停gcode(“pause_gcode”)、停止gcode(“stop_gcode”)、完成gcode(“finish_gocde”)、开始训练(“start_torture”)、训练(“torture”)、停止训练(“stop_torture”)、关闭(“close”);
所述计时循环本身有四个参数分别是:时钟源:1000kHz(Timing source)、周期:1000ms(Period)、优先:100(Priority)、处理器:-2(Processor),内容有一个可以更新周期的控件来调整周期,还有一个获取监控数据(“Monitor data”)页文本的属性节点,用获取的文本来判断进入默认(Default)和停止(“Stop”)事件中的某一个事件。
通过对以上循环中的事件的组合应用,再加上3D打印设备的初始化和3D打印设备的关闭来完成图1中所示的前面板流程,具体如下:
所述步骤1中对3D打印设备初始化:对准备状态显示标签页中的按键显示为Start,并清空温度显示图表,设定3D打印设备的打印头轨迹显示图表的显示范围;并判断3D打印设备是否为自动初始化,若为假,则进入设置标签页,输出空队列,同时通过标签参考号取出设置标签页的文本来与“Setting”文件对比,相等时退出对比循环,若有错误则输出错误;若自动初始化为真,则将“initialize”和空字符串连接后放入队列再输出队列供下一步的步骤使用,若存在错误,则输出错误。
所述标签页中的内容设置包括基本参数的设置、保存、删除和基本参数初始化;
基本参数的设置、保存和删除:发送循环中的3D打印机-值改变事件,同时将新字符串送入发送循环中供下次循环使用,如图5和图6所示,通过前面板设置标签页的3Dprinter空间中输入或选择已有打印机名称,设置完成后,连接在update_printer字符串后,加入总队列后发送给接收循环;接收循环接收接收循环接收到队列后经过出列和解绑出消息,消息验证正确且在无错的情况下进入更新打印机事件,如图7和图8所示,从束中解绑出数据变量再转换成字符串,此字符串传送给两路,一路用来将选择的端口,在由参考数验证的组态数据所指定的段中,写到COM port关键字后,然后显示端口的同时,与接收循环中的值对经并输出布尔值,与接收循环中的初始化布尔值相与后显示结果,另一路同样在由参考数验证的组态数据所指定的段中,循环写入X_max、Y_max、X_max关键字,写循环输出关键字后的值,组成索引数组,分别用用显示X、Y、Z的值,显示X方向上的最大最小值,显示X、Y图上的最大最小值,同时从写循环中输出参考号,获取段名,再输出参考数到接收循环,显示打印机名;点击前面板设置标签页的Save按键,进入发送循环中的保存-值改变事件,同时将字符串又送回发送循环,如图9和图10所示,将发送循环中的字符串捆绑在save后形成束,接着加入总队列并发送给接收循环;接收循环接收到队列后经过出列和解绑出消息,消息验证正确且在无错的情况下进入保存事件,如图11和图12所示,把消息按名称解绑并转换为字符串,作为由来自接收循环的参考数验证的组态数据,用它来指定段,并将前面板设置标签页选择的串口号写到关键字COM port后,然后写入指定段中,同时送出参考数;又在下一个参考数验证的组态数据所指定段中,依次将X-Y-Z方向上的三个双精度数写到X_max、Y_max、Z_max关键字后,然后输出参考数到接收循环;进入保存事件的同时会出现对话框询问是否重新初始化端口,如果选是则将initialize字符串与刚进入保存事件是转换的字符串捆绑,最后放入队列,输出错误并重新进行初始化,如果选否则直接输出错误;当前面板设置标签页的删除图标被按下,发送循环中的删除-值改变事件产生,同时将字符串送回发送循环,如图13和图14所示,发送循环中的字符串捆绑在delete后形成束,接着加入总队列并发送给接收循环;接收循环经过消息确认进入删除事件,如图15和图16所示,按名称解绑束得到变体数据,再将变体数据转换为VI可识别的字符串,移出参考号验证的组态数据中的字符串,通过参考号获得另一个段名,显示段中另一个打印机名,同时输出参考号;
基本参数初始化:当前面板设置标签页的Initialize按键被按下,发送循环中的初始化-值改变事件产生,同时将initialize字符串放回发送循环供下次循环使用,如图17和图18所示,将发送循环中的字符串捆绑在initialize后形成束,接着加入发送循环中的队列,最后将新产生的队列发送到接收循环中;接收循环将出列的消息经过消确认进入初始化事件,如图19和图20所示,同时有三路信息进入,分别是来自于接收循环的资源名、参考数和出列的束,出列的束经过按名称解绑束得到变体数据再转换为VI可识别的字符串,再判断此字符串或路径是否为空,若为空则给打印机控件的属性赋刚转换的字符串,否则将第二路信息通过参考数获得段名后得到的索引数组中的值赋给打印机控件属性,调用已存储的字符串,同时把获取段名得到的字符串也赋给打印机控件的字符串属性,获取段名后若数组不为空,可直接为读取COM port关键字后的值提供输出参考数,然后调用Marlin固件初始化控件进行固件的初始化,同时将错误状态读出并取反后返回接收循环,最后输出资源名,清空对应的错误,若有错误显示错误,如果数组为空,则显示没有打印机被设置的提示语,然后输出标签数组,循环对比到标签为setting时,停止循环对比,改变setting标签的状态,最后清空对应的错误,若有错误显示错误,同时输出参考数,将第一路接收到的资源名直接输出。
本发明还包括对标签页的内容进行稳定性测试(Torture testing),具体包括:具体包括:训练参数的设定、显示和开始训练,设定打印头或热床的移动速度和离原点距离后,打印头在三维坐标系的X轴和Y轴方向上进行往复动动,同时数字显示其位置。
训练参数的设定与显示:经过消息确认进入训练事件,如图21和图22所示,判断是否有错误,若有循环等待,若没有则判断训练X轴或Y轴,进一步判断座标值是否为零,若为0则显示最大值,若不为零,则显示实际值,同时判断是否初始化,如果没有,则输出反方向的值并显示,如果已初始化,则输出正方向上的值并显示,再将此距离值跟在速度值后形成束输出,再进一步判断是束为测试模式,若是则等待200ms,并输出资源名,若不是则调用Marlin驱动移动控件,最后将有关torture的字符串束加入队列,同时输出资源名;
开始训练:当稳定性测试标签页中的Start按键按下,进入开始训练-值改变事件,如图23和图24所示,从事件框的CtlRef参数中取文本判断是否为Start,如果是则将start_torture束加在消息队列后,控件上转而显示为“Stop”,同时输出队列到接收循环,如果否则将stop_torture束加在消息队列后,控件上显示为“Start”, 同时输出队列到接收循环;接收循环经过消息确认后进入开始训练事件,如图25和图26所示,先判断是否为测试模式,如果是则直接将有关torture的字符串束加入队列,同时输出资源名,如果不是测试模式则判断是否已初始化,如果没初始化则弹出消息,同时按键显示为“start”,如果已初始化,则判断选择了X轴还是Y轴,然后按相同的方式把三个座标轴的值按顺序放入X-Y-Z捆绑成的束中,调用Marlin驱动复位控件,接着调用Marlin驱动按绝对路径定位控件,再调用Marlin驱动移动控件按X-Y-Z构成的束中的数值移动,最后将有关torture的字符串束加入队列,同时输出资源名。
本发明在Labview可视化编程环境下,利用已有的开源Marlin固件及其Labview驱动程序构建3D打印系统。实现对打印机硬件,包括四个电机、两个加热装置、一个风扇的控制,包括两个热传感器的数据采集,以及三个限位开关的状态信息获取;实现根据所设采样频率实时显示温度变化曲线;实现直接调用Gcode文件实施3D打印并实时显示打印头的平面运动轨迹。
以上所述实施例仅表达了本申请的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请技术方案构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。

Claims (9)

1.一种基于Marlin固件的3D打印方法,其特征在于,包括以下步骤:
步骤1:启动3D打印系统,并对3D打印系统进行初始化;
步骤2:建立上位机与3D打印设备之间的通信,完成对3D打印设备的初始化;
步骤3:设置3D打印设备的启动参数,对3D打印设备进行三维坐标系下X轴和Y轴方向的移定性测试;
步骤4:通过手动控制3D打印设备的打印头在三维坐标系下的X轴、Y轴和Z轴方向上的移动步进值、移动速度以及复位,并设置打印时各部件的参数;
步骤5:运行步骤3中所设置的启动参数,并在前面板上图形化显示3D打印设备所采集到的数据;
步骤6:运行打印文件,开始进行打印;
还包括发送循环、计时循环和接收循环,两个上述循环之间通过标签页中标签的值实现信息互通,循环包含相对独立的事件来完成不同的任务。
2.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述步骤1包括以下步骤:
步骤1.1:确定与3D打印设备相连的串口,并保存确定的串口;
步骤1.2:根据3D打印设备的设计极限,输入三维坐标系下X轴、Y轴和Z轴三个方向下的位移最大值,确定被打印物体的最大体积。
3.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述步骤2包括以下步骤:
步骤2.1:设置3D打印设备的打印头相对于复位原点的移动距离和移动速度,分别在三维坐标系下的X轴和Y轴方向上按照设置的参数作往复运动;
步骤2.2:前面板基于传感器的检测信息获取打印头相对于复位原点之间的距离,并在前面板上实时显示。
4.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述步骤3包括以下步骤:
步骤3.1:在前面板上设置打印头、热床和3D打印设备工作空间的温度;
步骤3.2:在前面板上设置风扇转速,调节3D打印设备工作空间的温度;
步骤3.3:在前面板上设置打印头的移动速度和单步移动距离,分别对X-Y平面和Z轴方向进行复位,或进行三维总复位;并手动控制X-Y平面上八个方向以及Z轴的两个方向的移动,并基于出料量设置挤出头的挤出与回退。
5.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述步骤4包括以下步骤:
步骤4.1:前面板获取3D打印设备上的所有限位开关的状态,并以LED灯的形式显示限位开关的状态;
步骤4.2:通过前面板设置温度采样频率,并在前面板上图形化显示温度变化曲线。
6.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述步骤5包括以下步骤:
步骤5.1:通过文档储存路径调用Gcode文件,运行Gcode文件,并在前面板上实时显示Gcode代码;
步骤5.2:打印头进行走位,且在前面板上通过平面图显示打印头行走轨迹。
7.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,3D打印设备初始化:对准备状态显示标签页中的按键显示为Start,并清空温度显示图表,设定3D打印设备的打印头轨迹显示图表的显示范围;并判断3D打印设备是否为自动初始化,若为假,则进入设置标签页,输出空队列,同时通过标签参考号取出设置标签页的文本来与“Setting”文件对比,相等时退出对比循环,若有错误则输出错误;若自动初始化为真,则将“initialize”和空字符串连接后放入队列再输出队列供下一步的步骤使用,若存在错误,则输出错误。
8.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,所述标签页中的内容设置包括基本参数的设置、保存、删除和基本参数初始化。
9.根据权利要求1所述的一种基于Marlin固件的3D打印方法,其特征在于,还包括对标签页的内容进行稳定性测试,具体包括:训练参数的设定、显示和开始训练,设定打印头或热床的移动速度和离原点距离后,打印头在三维坐标系的X轴和Y轴方向上进行往复动动,同时数字显示其位置。
CN202210540489.6A 2022-05-17 2022-05-17 一种基于Marlin固件的3D打印方法 Active CN114953465B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210540489.6A CN114953465B (zh) 2022-05-17 2022-05-17 一种基于Marlin固件的3D打印方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210540489.6A CN114953465B (zh) 2022-05-17 2022-05-17 一种基于Marlin固件的3D打印方法

Publications (2)

Publication Number Publication Date
CN114953465A CN114953465A (zh) 2022-08-30
CN114953465B true CN114953465B (zh) 2023-04-21

Family

ID=82982997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210540489.6A Active CN114953465B (zh) 2022-05-17 2022-05-17 一种基于Marlin固件的3D打印方法

Country Status (1)

Country Link
CN (1) CN114953465B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019071110A (ja) * 2019-01-09 2019-05-09 ブラザー工業株式会社 情報処理プログラム、情報処理装置および情報処理装置の制御方法
GB202102334D0 (en) * 2021-02-19 2021-04-07 Jaguar Land Rover Ltd Control system and method
CN114840462A (zh) * 2022-05-17 2022-08-02 成都信息工程大学 一种基于Labview的3D控制驱动方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU5328300A (en) * 1999-06-07 2000-12-28 Board Of Regents, The University Of Texas System A production system and method for producing fluids from a well
US6866581B2 (en) * 1999-09-24 2005-03-15 Igt Video gaming apparatus for wagering with universal computerized controller and I/O interface for unique architecture
US7496465B2 (en) * 2006-07-07 2009-02-24 Honeywell International Inc. Apparatus and method for actuator performance monitoring in a process control system
WO2009126953A2 (en) * 2008-04-11 2009-10-15 Physcient, Inc. Methods and devices to decrease tissue trauma during surgery
US10543671B2 (en) * 2010-08-09 2020-01-28 Decopac, Inc. Three-dimensional decorating system for edible items
US9907332B2 (en) * 2010-08-09 2018-03-06 Decopac, Inc. Decorating system for edible items
JP2012078919A (ja) * 2010-09-30 2012-04-19 Oki Data Corp プリンタシミュレータシステム
DE102011103948A1 (de) * 2011-06-06 2012-12-06 B. Braun Melsungen Ag Biopassivierende Beschichtung von Gefäßprothesen mit Nitrocarbonsäuren enthaltenden Phospholipiden
JP6241219B2 (ja) * 2013-07-30 2017-12-06 セイコーエプソン株式会社 印刷装置
JP6367560B2 (ja) * 2014-01-20 2018-08-01 ローランドディー.ジー.株式会社 三次元造形装置および三次元造形方法
CN204309269U (zh) * 2014-09-01 2015-05-06 北京紫晶立方科技有限公司 连续打印辅助装置及具有该装置的3d打印机
WO2016178977A1 (en) * 2015-05-01 2016-11-10 Jay Lee System and method for additive manufacturing using spherical coordinates
US20170057170A1 (en) * 2015-08-28 2017-03-02 Intel IP Corporation Facilitating intelligent calibration and efficeint performance of three-dimensional printers
CN105619822A (zh) * 2016-03-15 2016-06-01 东华大学 一种3d打印机运动控制系统及方法
US20180260088A1 (en) * 2017-03-10 2018-09-13 Shapeways, Inc. Systems and methods for 3d scripting language for manipulation of existing 3d model data
US20190055104A1 (en) * 2017-08-17 2019-02-21 RoboGardens LLC System and method for nonintrusive detection of 3d filament jams and runout
CN108608639B (zh) * 2017-11-02 2020-07-24 常熟理工学院 基于虚拟仪器的3d打印系统
CN108127765A (zh) * 2018-02-09 2018-06-08 华北理工大学 基于labview的陶瓷材料3D打印机运动控制系统
CN108638516A (zh) * 2018-04-09 2018-10-12 南京理工大学 一种基于Qt的3D打印控制系统及其通讯方法
JP7445928B2 (ja) * 2018-05-07 2024-03-08 ストロング フォース アイオーティ ポートフォリオ 2016,エルエルシー 産業用のモノのインターネットを利用した解析及びメンテナンスのための機械信号のデータ収集、学習、ストリーミングのための方法並びにシステム
CN110039774B (zh) * 2019-05-24 2023-09-12 杭州捷诺飞生物科技股份有限公司 3d打印机及其打印方法
CN110989945B (zh) * 2019-12-02 2023-05-02 暨南大学 基于物联网的3d远程打印控制系统及控制方法
US20210208567A1 (en) * 2020-01-07 2021-07-08 GE Precision Healthcare LLC Methods and systems for using three-dimensional (3d) model cuts based on anatomy for three-dimensional (3d) printing
CN113290852B (zh) * 2021-05-21 2023-04-25 珠海赛纳三维科技有限公司 三维物体成型方法及装置、存储介质、计算机设备
CN215943714U (zh) * 2021-07-28 2022-03-04 深圳市圳顺科技有限公司 基于嵌入式Linux系统的3D打印机监控系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019071110A (ja) * 2019-01-09 2019-05-09 ブラザー工業株式会社 情報処理プログラム、情報処理装置および情報処理装置の制御方法
GB202102334D0 (en) * 2021-02-19 2021-04-07 Jaguar Land Rover Ltd Control system and method
CN114840462A (zh) * 2022-05-17 2022-08-02 成都信息工程大学 一种基于Labview的3D控制驱动方法

Also Published As

Publication number Publication date
CN114953465A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
US6295051B1 (en) Intelligent boundless computer mouse system
US20060037008A1 (en) Implementation of packet-based communications in a reconfigurable hardware element
CN111866160B (zh) 多机控制方法、装置、设备及存储介质
CN110784538B (zh) 家电设备配置文件生成方法、装置、家电设备和存储介质
US20060184819A1 (en) Cluster computer middleware, cluster computer simulator, cluster computer application, and application development supporting method
CN108574580A (zh) 实时仿真通信系统和方法
CN113954104B (zh) 并联机器人的多线程控制器
CN111625949B (zh) 一种仿真引擎系统、仿真处理方法、设备和介质
CN110460653A (zh) 自动驾驶车辆数据传输的方法及装置
CN114978925B (zh) 一种物模型创建方法及系统
CN111765018A (zh) 一种火箭发动机火炬点火控制方法
CN114953465B (zh) 一种基于Marlin固件的3D打印方法
CN114818362A (zh) 一种多fmu模型联合仿真推进方法及系统
KR19990048443A (ko) 알피씨 기반 분산처리 프로그램의 통신 이벤트/메시지 추적 방법
CN112214416B (zh) 调试小程序的方法、装置、电子设备和存储介质
EP3761127A1 (en) Display device, screen generation method, and screen generation program
CN114840462B (zh) 一种基于Labview的3D控制驱动方法
CN111142445A (zh) 多场景通用的边缘视觉运动控制系统及方法
CN115826505A (zh) 一种基于同步实时以太网的多轴电液伺服从站控制系统
CN112737436B (zh) 一种基于dma的步进电机脉冲输出控制方法
CN114968196A (zh) 基于codesys软件的开发平台架构
CN112630795A (zh) 一种基于2d激光雷达的三维点云数据合成系统
JP4362594B2 (ja) 疑似乱数発生機構における状態遷移解析方法及び装置並びに周期長計測装置
CN113450438A (zh) 基于动作捕捉的虚拟人物驱动方法、装置及计算机设备
CN212906219U (zh) 主动式补光设备、3dof手柄、vr设备及追踪系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant