【3D打印机控制系统软件设计案例3000字】_第1页
【3D打印机控制系统软件设计案例3000字】_第2页
【3D打印机控制系统软件设计案例3000字】_第3页
【3D打印机控制系统软件设计案例3000字】_第4页
【3D打印机控制系统软件设计案例3000字】_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

D打印机控制系统软件设计案例目录TOC\o"1-3"\h\u271601.1Exynos4412核心板软件设计 1110551.2STM32控制器程序 1192081.3并联机构3D打印机运动学分析 2175561.3.1并联机构运动学正解分析 313711.4步进电机控制算法 4206561.5Bresenham算法 71.1Exynos4412核心板软件设计控制系统的主程序在Exynos4412核心板和STM32分别在核心板执行Linux操作系统,通过控制100MEthernet模块和无线信号模块,完成打印模型的在线下载功能,通过CuraEgine切片引擎完成打印模型的切片作业,最后通过USB模块向STM32传送打印数据。STM32经由USB模块接收印刷数据,控制步进电机和温度控制模块,完成印刷作业,经由USB模块将实时印刷数据传送至Exynos4412核心板核心板最后通过显示模块将实时打印数据显示在液晶画面上。Linux系统构建分为u-boot移植,kernel裁剪和跟文件系统制作。下面分别介绍每一部分的简要操作。在将电源接通核心板后,在执行Linuxkernel之前,系统首先执行加载指南程序。这个启动是u-boot。U-boot为kernel提供了良好的运行环境。首先将u-boot源码包通过SSH软件发送到Ubuntu虚拟机,执行解压缩命令,并在解压后的目录下执行以下三条命令:makedistcleanmakesbc8600_configMake以上3个命令负责生成可移植的U-boot文件。执行后,在U-boot的解压缩目录下,发现已经创建的u-boot.bin文件。U-boot.bin可以通过串行助手直接写入Exynos4412的核心板。kernel是操作系统的内核,是操作系统运行过程中核心部分,在操作系统运行之前,kernel完成系统配置后,调用文件系统运行,kernel裁剪就是对ARM板进行“量体裁衣”,即根据3D打印机控制系统的实际功能需要,对kernel内核进行重新配置。使Linux更好地支持ARM板上已经固化的硬件资源。1.2STM32控制器程序在基于ARM的3D打印控制系统中,STM32接收从Exynos4412核心板发送的打印数据,当STM32执行上电复位时,首先进行系统的初始化,完成时钟、中断向量等的配置保证系统进入正常工作状态。。当系统进入正常操作状态时,系统初始化每个模块,主要包括GPIO、系统时钟和定时器的布置操作。初始化完成后,主程序成为待机模式,等待从Exynos4412核心板发送打印命令,在接收到打印命令的情况下,主程序分析在Exynos4412核心板接收到的G-Code代码从STM32开始电机复位,加热光圈头,当温度达到G-Code指定的温度要求时,系统会按照G-Code的打印坐标驱动步进电机进行动作。在打印过程中,系统被定制器中断后,计时器中断服务子程序以完成打印数据的实时控制,并且经由USB模块将打印的实时数据传送到Exynos4412核心板。STM32主程序工作流程图如图4-1所示。图4-1STM32主程序工作流程图1.3并联机构3D打印机运动学分析基于一般FDM技术的3D打印机有各种类型。一般来说,是Catesian运动机构的3D印刷装置,其沿X、Y、Z的3个正交轴终端致动器的运动方向在各自的方向上有独立的电机驱动。打印头部沿着X轴和Z轴移动,动作平台沿Y方向滑动。Catesian系统的优点是构造简单,不存在复杂的运动学计算,因此容易获得高定位精度。但是,Catesian结构的运动部件之间属于串联结构,设备的动作惯性大。相反,并联机构的三角型打印机使用3个刚性臂约束平台在三维空间进行平移运动,3个组的驱动电动机相互并联连接,因此容易获得更高的速度。同时运动惯性低,三组从动臂以静态平台为中心分布着120°对称。电机通过皮带或丝杠单独控制滑轮的动作。这个机构的构建稳定性更好,组装更容易。1.3.1并联机构运动学正解分析在对Delta并联机构进行运动学反解分析的基础上,本节将对并联机构进行运动学正解分析。这是分析打印机运动平台的位移、速度、加速度等各项参数进行分析的基础,在此基础上可对机构作出运动学分析、动力学分析和系统的稳定性分析[39-40]。令整理得:(4-1)式中ci=l²-a1²-b1²-d1²,i=1,2,3。由上式得:(4-2)设:则:(4-3)将(4-3)带入(4-1)得:(4-4)整理得:(4-5)将(4-5)带入(4-3)中得:(4-6)式(4-5)即为并联机构的运动学正解。1.4步进电机控制算法3D打印机的整体运动控制系统主要包括挤出机的运动和XYZ的3轴位移,均由步进电机完成,将3D打印机的线位移运动转换为步进电机的角位移运动以此来控制步进电机的旋转角度来控制3D打印机的动作的功能。因此,3D打印机的运动精度和印刷精度由步进电机的控制精度决定。1.1.1步进电机加减速算法步进电机低速运转时的扭矩较大,高速运转时的扭矩较小,步进电机的动作频率一般比启动频率高,因此步进马电机的高速运转需要一定的加减速控制。步进电机的减速计算方法多种多样,目前步进电机的速度控制方法主要有3种。线性加减速算法、指数曲线算法、S型曲线加减速算法。与指数曲线加减速算法和直线加减速算法相比,S型曲线算法不适用于高速定位,虽然实现得更加复杂,但控制精度更好,在步进电机启动时可以有效避免步进现象因为可以实现更高的控制精度,所以这里使用S型加减速算法来控制步进电机。S型加减速曲线如图4-6所示。图4-6步进电机S型加减速曲线在图4-6中,给定以下参数,步进电机运行过程中的指针位置S,运行的初速度v0,以及运行时间T。表示加加速度,表示加速度,示速度,表示位移。以S型加减速曲线模型为基础,设数学表达式如下:(4-6)式(4-6)中过渡点对应的速度值为:(4-7)式(4-17)中过渡点所对应的位移为:其中:t是系统运行时间,tk是各阶段过渡点的时间坐标,τk是以各阶段起始点为时间零点,t为时间终点的运行时间,Tk是各阶段的时间,v1~v6是各阶段过渡点对应的速度,S1~S6是各阶段过渡点对应的位移,则可以推导出:S型曲线加减速算法一共有7个阶段,分别为:加加速阶段,匀加速阶段,减加速阶段,匀速阶段,加减速阶段,匀减速阶段,减减速阶段,我们可以通过计算当前位置与目标位置的距离差ΔS,设置运行时间,根据指针位置、运行的初始速度和运行时间计算S型曲线模型。一般来说,步进电机的动作周期在100ms以内,根据步进电机的动作参数,合理调整各阶段的加速度、速度及运转时间,改变电机的速度和力矩,合理地使步进电机工作。3.5Bresenham算法在运动过程中,由于涉及大量浮点运算,为了加快计算速度,使用Bresenham算法进行路径运算,以避免在打印过程中出现卡顿等现象。图4-7直线Bresenham算法线性Bresenham算法采用了广泛的线性扫描转换方法,通过将直线上各个点的坐标作为整数进行插值,大大降低计算量,提高计算速度。利用平台的各行和各列的像素的中心点构建虚拟网格线,按从直线的起点到终点的顺序计算与各垂直网格线的交点,从误差项的符号决定接近该交点的像素。计算直线Bresenham算法如图3-7所示。在图4-7中,直线BC为挤出头的理论移动轨迹,取图上任意一点M(Xi,Yi)作为挤出头的初始位置,则挤出头的下一点可能为A(Xi+1,Yi)或者D(Xi+1,Yi+1),这取决于Yi+1和Yi中哪个点距离Y点更近,即d1和d2的大小。直线方程为:则下一步的理论位置的垂直位置偏差分别为:以和作为偏差判别函数:(4-8)若F≥0,则Yi比Yi+1更接近于理论轨迹,于是则向X轴发送一个正向脉冲;若F≤0,则Yi+1比Yi更接近于理论轨迹,于是则向X轴和Y轴分别发送一个正向脉冲。由(3-18)可得任意一点M(Xi,Yi)的偏差判别式为:若F(XYii)≥0,则下一点为(Xi+1,Yi),其偏差判别式为:若F(XYii)<0,则下一点为(Xi+1,Yi+1),其偏差判别式为:令di=Δx*F(XYi,i)作为偏差判别式,因为Δ≥x0,则:若di≥0,则下一点为(Xi+1,Yi),偏差判别式更新为:若di<0,则下一点为(Xi+1,Yi+1)偏差判别式更新为:偏差判别式的初始值:此时Bresenham算法对直线BC进行插值运算。插补运算的步骤如下所示:首先计算初始值,初始位置X、Y、偏差判别式及插值完成所需的步数move_step[x]=−X2X1;确定绘图点(X1,Y1)和d的正负。如果d<0的话(X1,Y1)更新为(X1+1,Y1+1),d更新为,move_step[x]减去1;否

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论