基于μC/OS Ⅱ的三维打印机的控制系统研究

发布者:rnm888最新更新时间:2014-03-18 来源: elecfans关键字:μCOSⅡ  三维打印机  控制系统 手机看文章 扫描二维码
随时随地手机看文章

  凭借μC/OS Ⅱ灵活的任务间通信的能力,采用消息邮箱Mbox从数据生成任务中将打印数据传送给打印任务。在不同任务中,将暂时不需要工作的任务挂起,而将需要工作的任务恢复运行,圆满地实现了三维打印的快速、精确控制。

  0 引言

  三维打印制造是近年来快速制造领域的热点技术之一,根据本小组的研究,采用μC/OSⅡ操作系统开发三维打印机,能够将打印机的各项工作分解为不同的任务,每个任务完成特定的一些工作,从程序模块的划分上,任务明确,层次清晰。其中关键是不同任务之间的同步与通信,凭借μC/OS Ⅱ系统灵活的任务间通信的能力,经过精心设计和调试,圆满地实现了任务间的通信。使各个任务协调一致、有条不紊的工作,实现了三维打印的快速、精确控制。

  1 三维打印原理与控制系统简介

  三维打印机的打印头固定在一个确定的高度上,打印的零件处在打印头下面的工作台上,对零件从最底层往上进行逐层打印,打印完一层,工作台下移一层,再打印零件的上一层。工作台上下移动称为Z 向移动,由一个控制Z 向运动的电机驱动,在打印一个零件时,有两个送丝电机,一个送粗丝,用于基础骨架打印,另一个送细丝,用于零件精细部分的打印。打印前在PC计算机上对零件进行三维打印的数据处理,将零件分为若干层,每层厚度为Δh,每层按照最优方向划分为若干紧密相邻的剖面线,打印机打印的就是这些剖面线。打印确定的一层时,打印头的运动是一个二维平面运动,每一条线的打印,都是由X 方向的驱动电机和Y 方向的驱动电机协同工作,完成一条线的打印。这样逐条线打印直到打印完本层的所有线条,就完成了本层的打印。这样,共需要X 向、Y 向、Z 向3个电机及2个送丝电机共计5个电机的实时控制,才能实现三维打印。因此三维打印可以视为一个五轴联动系统。

  对其控制系统研究的结果是,采用目前ARM 最新版本V7架构的ARM Cortex M3作为主控器的CPU是很好的一个选择。这里选用的就是基于ARM Cortex M3 内核的由意法半导体出品的STM32F103VE6T,该MCU 为32 位,主频72 MHz,内含512 KB的FLASH闪存,可以存放多达512 KB 的程序代码,有64 KB RAM,8 个多功能定时器。片内其他资源丰富,其速度和资源能很好地满足三维打印机的控制要求。选用了5个通用定时器分别作为X、Y、Z 方向运动电机和2个送丝电机的控制器,选用定时器T6作为每条线段打印的总时间定时器。在对几种嵌入式操作系统进行比较后,选用了实时性最好、代码量最小、功能强大的μC/OS Ⅱ系统。在Keil集成仿真平台上完成了软件与硬件系统的设计开发与调试。

  2 三维打印任务划分

  所有需要在打印之前就完成的工作,全部放在初始化部分完成,例如I/O 口的初始化、串行通信初始化、LCD显示器初始化、打印控制所需的6个定时器的初始化、打印头初始位置确定、打印头预热、打印模式设置等。

  打印过程中的工作划分为四个用户任务,具体内容见表1.

  三维打印用户任务

  再加上两个系统任务--空闲任务OSIdleTask()和统计任务OSStatTask(),一共有6个任务在系统中运行。

  3 三维打印任务间的通信

  μC/OS Ⅱ任务间通信的方法有多种,这里采用消息邮箱Mbox进行数据传送,采用若干全局变量作为工作状态标志和任务握手信号。在初始化结束后,执行了操作系统启动函数OSStar(t )后,系统就开始了任务调度与管理。

  任务1是触摸屏操作任务,其优先级最高。任务调度一开始,就会运行该任务。在该任务中对触摸屏进行两次数据读取,判断有没有屏幕操作,有屏幕操作的话,其位置在何处,是一个什么操作,再转向对应的程序进行处理。然后通过调用OSTaskSuspend(1)函数自行挂起。再次激活该任务是通过系统时钟节拍中断服务函数OSTickISR()[6],激活方法是在该函数中调用OSTa-skResume(1)即可。这样在时钟节拍中断函数退出后,由于任务1优先级最高而得到运行。由于点击屏幕操作的时间通常大于100 ms,因此系统时钟节拍中断函数的频率设置为200次/s.这样的频率足以捕获每次触摸屏操作。并且能够满足三维打印任务调度的所有实时需求。[page]

  任务2是LCD 显示任务,其优先级为次高,其激活与挂起的方法与任务1不同,而是在需要显示时,由需求的任务通过调用OSTaskResume(2)激活,显示字符送给显示器后,任务2通过调用OSTaskSuspend(2)函数自行挂起。

  打印过程的程序框图如图1所示。

  打印过程的程序框图

  在任务3 获得CPU 的使用权时,在其中进行SD 卡数据读取与数据处理,生成一条打印线的控制数据,生成的数据通过消息邮箱MboxPost()发出,然后任务3通过调用OSTaskSuspend(3)函数自行挂起。其后任务4获得CPU 的使用权,在其中通过调用OSMboxPend()取得任务3所生成的那些数据,之后将这些数据送给控制各个电机运动的各个定时器,启动这些定时器开始工作,实际上就是启动了那些电机,从而启动了打印头的运动。然后通过调用OSTaskResume(3)函数将任务3恢复为就绪态,之后任务4通过调用OSTaskSuspend(4)函数自行挂起。而打印工作在几个定时器的控制下继续进行。同时任务3由于其较高的优先级,会获得CPU的使用权,从而进行下一个线段的数据生成。数据生成占用时间很短,数据生成后又通过OSMboxPos(t )发出。

  然后任务3 通过调用OSTaskSuspend(3)函数又自行挂起。这时任务3和任务4都处于挂起状态。此时本条线段的打印还在进行,系统运行空闲任务OSIdleTask()和统计任务OSStatTask()。

  直到本线段打印完成后,负责打印总时间的定时器T6 定时时间到,程序执行会进入T6 的中断服务程序。

  在该中断服务程序内,先停止各电机的运转,也就是停止打印头的运动和送丝运动。然后又开始下一条线段的打印。周而复始,直到打印完本层。再打印下一层。

  直到所有层打印完成。

  4 结语

  凭借μC/OS Ⅱ系统强大的多任务调度与管理能力,通过任务间的通信,实现了多任务实时操作,数据生成工作与打印工作同时进行,实现了三维打印的快速精确控制,提高了CPU的工作效率。

关键字:μCOSⅡ  三维打印机  控制系统 引用地址:基于μC/OS Ⅱ的三维打印机的控制系统研究

上一篇:利用ARM MCU设计激光电源控制系统
下一篇:基于DM8168的视频智能分析系统的设计方案

推荐阅读最新更新时间:2024-03-16 13:38

为电动超级赛车设计控制系统
  "CompactRIO可以让电动赛车像普通汽车一样运行。"   – Robert Repas, Racing Green Endurance   The Challenge:   人们一般认为,电动车行驶速度较低,且无法远距离行驶。环保持久赛车(Racing Green Endurance)团队创造了最新款的赛车Radical SRZero。他们希望在推动电动车技术发展的同时,这款赛车能成为世界上最具驾驶乐趣的可替代能源汽车。   The Solution:   Radical SRZero是在Radical Sportscars SR8底盘的基础上改进的大功率电动车。它的后轮上的轮毂马达可以为更多电池腾出空间,并且
[测试测量]
LED全彩灯光控制系统的实现
背景 LED作为一种新型光源,以其低供电电压,低功耗,长寿命,无辐射的特点,在许多场合得到应用,随着近年来其亮度的不断提高,特别是超高亮LED的 出现,发光二极管得到了广泛的应用,从传统的仅作室内仪表信号指示,逐步发展到应用于交通信号灯、汽车信号灯、背光源、室内外大屏幕显示,以及目前正向照 明领域的深入。目前LED在照明领域的应用主要还集中在灯饰照明中。LED本身的致光特性,使其具有易控制,频闪快的特点,由此可以利用嵌入式微处理器, 按PWM(占空比)方式独立控制R(红),G(绿),B(蓝)发光灰度,从而实现全彩效果的LED灯光控制技术。由于采用超高亮LED的装饰照明灯具,其 亮度已达到要求,且它在寿命,功耗,控制花样等方面和霓
[电源管理]
LED全彩灯光<font color='red'>控制系统</font>的实现
基于51单片机的音频交换控制系统设计
1、引言   小型会议系统或语音群聊系统是由多路音频电路组成的.为了使通话井然有序,需要通过音频交换电路来控制各路音频信号的输出。音频交换电路主要用于完成语音信号的切换。以实现同频终端的话音通信。经对可靠性、经济性、兼容性和供货情况进行多方面的综合考虑,该控制系统选用了AT89S52型单片机和交换控制矩阵器件MT8816AE。其中,AT89S52型单片机具有实用,价廉,功耗小,速度快,体积小,功能强等优点:MT8816AE是CMOS单片集成电路,具有功耗小,可靠性高等特点。 2、控制系统组成和电路设计   图1给出整个系统组成框图。它由主控计算机、音频交换电路、终端设备等组成。其工作原理是:在主控计算机捕获终端的工作频率后。向
[单片机]
基于51单片机的音频交换<font color='red'>控制系统</font>设计
CPU卡应用方案和密码管理技术
一、端到端的安全性 在整个读卡的过程中,LEGIC提供的CPU卡应用方案,不单从最前端的卡片上为数据保密,到最终把读取的数据从读卡器发出去的过程中,都有非常严密的保护。图1是卡片到数据在空中的传输,到读卡器收集数据,到读卡器把数据传输的一个点对点的数据安全示意图。 图1 1、卡片内的数据保护 该CPU卡独有的MTSC(主令牌系统)是一个密钥管理系统。而每个令牌内都存有一个密钥基因。保护数据的密钥是由密钥基因加上卡片的UID号,通过运算程式,在卡片初始化的过程中而产生的。所以卡片经过初始化后,就建立了 一卡一密 和 一扇一密 来保护扇段内的数据。采用的加密方法,除了通用的DES、3DES、SHA-1之外,也有新的CPU卡应
[单片机]
CPU卡应用方案和密码管理技术
基于CAN总线的城市客车信息集成控制系统
1 引言   随着电子技术的不断发展,汽车电子技术也迅速的发展了起来,汽车上各种电子控制单元的数目也不断地增加,连接导线显著增多,因而提高控制单元间通信的可靠性和降低导线成本已成为迫切需要解决的问题。在20世纪80年代,以研发和生产汽车电子产品著称的德国bosch 公司针对此问题开发了can总线协议,这种多主网络协议,它的基础是无破坏性仲裁机制,使得总线能以最高优先权访问报文而没有任何延时。can作为标准车载网络技术,其在汽车网络化应用的进程中起着桥梁和纽带的作用,将城市客车信息集成采集提高到一个新的层次。    2 城市客车信息集成控制系统概述   城市客车信息集成控制系统是建立在汽车网络控制技术的基础上,从控制对象分,可
[工业控制]
基于CAN总线的城市客车信息集成<font color='red'>控制系统</font>
PROFIBUS-DP网络在皮带输送控制系统中的应用
0 前言   PROFIBUS现场总线是一种国际化、开放式异步通讯标准,于1996年被批准为国际标准,符合IEC61158标准的现场总线。它有三种规格:PROFIBUS— DP、PROFIBUS— FMS、PROFIBUS— PA。PROFIBUS—DP是一种高速低成本通讯,主要应用于现场设备级,传输介质为屏蔽双绞线(EIARS485),波特率从9600bps到12Mbps,组成PROFIBUS工业现场总线控制系统。   随着控制、计算机通信、网络技术的发展,自动化系统结构正发生巨大的变化。通过现场总线技术实现三电(电气,仪表,计算机)集成,将基础自动化控制网络、过程和管理控制系统连接在一起,是目前自动控制领域的发展方向。   皮
[嵌入式]
LonWorks在反应罐自动温度控制系统中的应用
一. 概述:   1999年7月,某生物制剂有限责任公司有一套反应罐自动温度控制系统项目需要进行研制开发,用户指定要求采用LonWorks技术并在北京、上海联系了几家LonWorks设备厂商进行方案设计和报价,我单位以系统方案合理、质量可靠、价格低赢得该项目。      二. 系统构成:   系统共有48个反应罐和3条冷媒管线自动恒压供液控制。系统总的输入点有268个,输出点有150个,总的系统网络通信变量有1800个。   1.一类控制对象模块配置:    一类控制对象有48个反应罐,采用MA2125控制模块,每个模块分别控制:    PT100温度输入 4点    开关量输入(光电隔离) 6点    继电器输出(AC220V 1
[嵌入式]
远程显示控制系统在地面雷达中的实现
摘要:远程显控系统作为一种新型的监视控制技术已经广泛应用于电信、交通、金融、智能小区等领域,其设计方案及实现方法多种多样。与远程监控系统相比,本文提供的解决方案更适合地面雷达无人值守要求。在雷达整机设计初期,将本地监控与远程显控从软、硬件方面加以融合设计。该解决方案具有系统结构灵活、传输方式多样的特点,适用于多种型号的地面雷达,并为民用领域的远程控制系统提供了一种新的设计思路。 关键词:远程显控系统;融合设计;图像传输;雷达 1 引言 随着自动控制技术、计算机技术、通信技术、工业COTS技术的快速发展,电信、交通、金融、智能小区等领域根据自身的需求,针对各自特定的环境和设备进行远程监控已成为一种趋势。与国际上在环境与设备集
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved