实时控制软件第一次作业--CNC软件系统分析
作者:李君威U201310747
一、该系统有哪些强实时功能需求?需要对哪些实时事件进行实时响应,对允许的实时延迟的数量级进行估计。
答:在数控系统中,位置控制、插补计算、紧急控制等严格实时性任务需要利用实时时钟(最小周期为4ms甚至更低)来完成实时任务的处理。另外还有坐标显示、图形显示、数据预处理等软实时任务。
二、如果你是软件设计者,要实现这些实时功能,要设计几个实时任务?
答:①坐标显示线程:在控制面板中,可实时显示X、Y、Z三个运动轴的坐标;②图形显示线程:图形显示线程的用于在动态仿真面板中执行二维或三维图形绘制的指令;③IO状态控制线程:此线程用于检测由系统输入的各个离散量,以及从数控程序得到的指令来输出机床各离散量的状态。④数据预处理线程:数据预处理线程主要负责完成编码形式转换、刀具长度补偿、刀具半径补偿和公英制转换等运动控制数据预处理函数的执行。⑤运动控制线程:此线程主要用于运动控制器执行数控代码函数的运行。负责向缓冲器输入运动控制命令,清空缓冲器和打开关闭缓冲器等操作。⑥紧急控制线程:此线程处理一些需机床立即做出反映的事件,如机床的急停等。它的优先级最高 。
三、这几个实时任务是时间触发的还是事件触发的,如果是时间触发的,周期大约是多少?
答:时间触发:坐标显示线程、图形显示线程、数据预处理线程、运动控制线程;
事件触发:IO状态控制线程、紧急控制线程。
坐标显示线程、图形显示线程、数据预处理线程的触发周期约为10ms;运动控制线程的触发 周期约为4ms。
四、这几个实时任务之间是相互独立还是存在着一定的依赖关系?分析这种依赖关系。
答:存在着一定的依赖关系。数据预处理线程的运算结果是运动控制线程的输入,而运动控制线程决定着IO状态,紧急控制线程能以最高优先级停止运动控制线程。
五、这几个实时任务之间是否都需要使用一些共享的硬件资源?列出这种依赖性。
答:这几个实时任务都共用系统的运行内存,一般采取的是分时间块的轮询占用方式,而紧急控制线程等是以中断方式进入内存RAM。
实时控制软件第一次作业--CNC软件系统分析的更多相关文章
- 实时控制软件设计作业_01——汽车ABS系统分析
制动防抱死系统(antilock brake system)简称ABS.作用就是在汽车制动时,自动控制制动器制动力的大小,使车轮不被抱死,处于边滚边滑(滑移率在20%左右)的状态,以保证车轮与地面的附 ...
- UML与软件建模:第一次作业(UML用例图绘制)
uml第一次作业: 用例图是什么? 用例图我感觉就是把网站中各个用户的动作分解一下,再用rational rose软件把图画出来. 画例图主要分为三个步骤:a 确定系统角色 b 确定用例 c 对用 ...
- 《实时控制软件设计》之Github提交作业步骤
在掌握GIT/GITHUB基本操作后,接下来把第一次的编程作业提交到 https://github.com/RTCSD15/HOMEWORK1 ,把第二次的编程作业提交到https://github. ...
- C 语言学习 第一次作业总结
第一次的作业是冯老师布置的练习题,需要在pta平台上完成.我这边看不到结果,但是透过冯老师给出的截图,同学们都还是认真的去做的.同时,我这边也布置了一个持续 3 周的作业:熟悉 git 的使用.因为后 ...
- 2015级软工实践k班第一次作业-准备
第一次作业-准备······ 几篇文章阅读下来发现一个事实,还是要有明确的目标,清楚自己需要做什么最为重要.然后根据目标确定需要为之所做的准备工作,考研也好,工作也罢,都是服务于自己的目标. 问题答应 ...
- java第一次作业0
lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...
- 17秋 SDN课程 第一次作业
SDN第一次作业 你会选择作 网络编程 方向的程序员吗?为什么? 有可能.原因如下: 1.我的研究与网络密切相关: 2.SDN侧重软件实现,自然涉及socket等网络编程知识,属于基本功: 3.市场. ...
- 《实时控制软件设计》之Automation Studio开发环境
Automation Studio是贝加莱公司的控制软件开发平台,软件可运行在贝加莱的基于PC的控制器上,基于Automation Studio我们可构建一个完整的控制软件构建.测试和仿真运行平台.本 ...
- c语言第一次作业1
第一次作业 一 你对软件工程或者计算机科学与技术专业的了解是什么? 软件工程是一门研究用工程化方法构建和维护有效的,实用的和高质量的软件的学科,涉及程序语言设计,数据库,软件开发工具,系统平台,设计模 ...
随机推荐
- 借用Toad 生成表空间的使用量图示
图示产生方法 图示(tablespace uage)如下
- Alljoyn 概述(3)
开发工具 • scons:一个 Python写的自动化构建工具,是对 gnu make 改进的替代工具 • D-Feet:一个D-Bus调试工具 • C++ Code Generator Tool ( ...
- XCODE6 提交至 App Store
新到一个公司,以前的苹果开发人员离职,临时接手他的苹果代码,需要修改并上线到APP STORE. xcode6.0升级到最新的6.1后, 发现各种坑 1. 路径配置不对, 这个是个人习惯问题,之前的 ...
- iOS中JavaScript和OC交互
转载自:http://www.devzeng.com/blog/ios-uiwebview-interaction-with-javascript.html 还可参考的文章:http://blog.c ...
- 让div 实现 input效果
<div class="arcils-info" c /> .arcils-info { border: none; width: 100%; font-size: 1 ...
- spring + maven +testng 测试常见依赖包问题
java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方法:添加缺少的jar包:commons-coll ...
- Java学习----HashMap原理
1.HashMap的数据结构 数组的特点是:寻址容易,插入和删除困难:而链表的特点是:寻址困难,插入和删除容易.那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的, ...
- 在winform中调用js文件并输出结果
在winform中调用js文件并输出结果默认分类 2007-10-19 16:35:06 阅读25 评论0 字号:大中小 由于项目需要在winform中调一个强大的js,所以把这个tip记录在此: 1 ...
- C# winform DataGridView操作 (转)
C# DataGridView控件动态添加新行 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时.可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行.假如 ...
- 假金币问题-PKUacm1029-ACM
假金币 “Gold Bar”银行收到可靠消息:在前次的N 个金币中有一枚重量不同的假金币(其他金币的重量都相同).经济危机之后他们只有一台天平可用.用这台天平,可以称量出左边托盘中的物体是轻于.重于或 ...