欢迎来到天天文库
浏览记录
ID:18063937
大小:18.60 KB
页数:8页
时间:2018-09-13
《嵌入式数控系统软件总体设计研究》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、嵌入式数控系统软件总体设计研究 摘要:随着计算机和微电子技术的飞速发展,嵌入式系统作为计算机应用的一个重要领域,己深入到社会的方方面面。本文在ARM9硬件平台的基础上,加强操作系统的实时性,设计满足数控磨床加工需求的软件系统。 关键词:嵌入式芯片;软件设计 一、嵌入式软件开发方式 绝大多数的Linux或软件开发都是以native方式进行的,即本机开发、调试,本机的方式。这种方式通常不适合于嵌入式系统的软件开发,因为对于嵌入式系统的开发,没有足资源在本机(即板子上系统)运行开发工具和调试工具。通常
2、的嵌入式系统的软件开发采用交叉编译调试的方式。简单的说,交叉编译就是在一个平台上生成另一个平台上的可执行代码,如在x86的PC机上生成ARM平台的可执行代码。 交叉编译调试环境建立在宿主机(即一台PC机)上,对应的开发板叫做目标板。开发时使用宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码,(这种可执行并不能在宿主机上执行,而只能在目标板上执行。)然后把可执行文件下载到目标机上运行。交叉开发技术己成为嵌入式软件开发的主要方式。其开发步骤如下:在宿主机平台上面编写程序代码;)使宿主机与目标机连接,如使用
3、交叉网线;使用交叉编译器等工具编译、连接应用程序,生成可执行代码;目标机挂载(mount)宿主机的方式(或将可执行代码下载到目标机):开发人员使用交叉调试器进行调试;如果程序调试没有发现异常,则转至第(10)步;调试程序时发现错误,则利用交叉调试器定位错误;修改错误代码;重复(3)—(9)步;将目标机程序固化至目标机上。 二、数控系统软件任务研究 控软件的功能大致可分为两种,一种是控制功能,另一种是管理功能。其中,管理功能包括信息的输入功能、输出输入输出的处理功能、显示功能和诊断功能,控制功能包括译
4、码功能、刀具补偿功能、速度控制功能、和位置控制功能。 从任务的特征来看,与通用实时系统相比,数控系统有以下特点: 数控系统是一个混合任务系统,其任务按是否具有实时性要求和周期性要求可分为:实时周期性任务、实时突发性任务和非实时任务。实时周期性任务是指严格以定长时间间隔定时触发,并且在规定的时间内必须完成处理的任务。在数控系统中主要指加工过程中的插补控制、位置控制、数据采样等需快速响应的机床逻辑状态;实时突发性任务的发生是时间的随机函数,要求有很高的实时性,它包括机床紧急停止、系统故障中断等;非实时性
5、任务是指实时性要求很低的任务,如:人机界面监控,这类任务对于机床运行和加工质量的影响较小,其主要作用是让操作者了解机床运行状况,增强机床的易操作性。 任务之间具有相关性。数控系统的实时任务除了自身的时限要求以外,任务之间通常也不是完全独立的,一般存在时序约束、资源约束等约束关系。 系统在某一确定时刻的并发任务数量不多,与通用实时操作系统不同,数控系统的功能单一,因此调度程序几乎不需要处理较大数量的并发任务。三、需求分析 数控控制系统通过良好的人机交互界面,完成显示工作状态、操作人员进行参数设定等任务,
6、主要有以下几个方面的综合要求: 系统界面要求:图形用户界面可以实时显示加工状态、当前时间、开机时间、加工时间、各个轴的坐标位置,正在运行的关键G代码程序段等信息; 系统功能要求:操作人员可以在符合国际标准的条件下,无需了解嵌入式数控系统的专用编程代码,直接使用符合国际标准的G代码和M代码,即可编制数控程序; 系统的运行要求:操作人员可以根据需要点击触摸屏和键盘或机床面板按钮,随时监控数控系统的工作状态;还可以通过参数设置实现对电机的控制,如电机的启停,正反转等等; 异常处理要求:在正常生产条件下,每天运
7、行16小时,数控系统的无故障率P(t)≥99%,这要求其MTBF值(数控系统的平均无故障时间,是衡量可靠性的重要指标)大于3万时;在硬件不受损坏的情况下,系统软件要有较强的容错能力。 未来可能提出的扩展要求:如能实现远程的联网控制、故障自诊断等、加工仿真、重要数据的备份、中英文界面切换等。 把上述提出的直观需求转化为具体的软件功能需求,即为: 完成电机的启动,制动和换向控制,实现加工过程中的主轴、近给速度实时调整。实现六轴的高精度联动,并通过插补,完成工件的加工、磨削;在能够满足一定精度的前提下,实现自由
8、曲线的粗插补和精插补; 图形用户界面要求:实现参数的图形菜单输入,加工过程的仿真,并实时显示加工图形和各轴坐标值,用户可以通过触摸屏和键盘进行参数设置,实现对电机的控制;实现伺服信号、开关量信号、和辅助信号的宏指令控制,且符合G代码和M代码功能定义; 实现各功能电路的PLC控制,包括机床面板功能实现、主轴的起停、自动润滑控制以及过载、超载、碰撞、掉电等紧急情况的处理; 为了方便用
此文档下载收益归作者所有