作者:李君威U201310747

一、该系统有哪些强实时功能需求?需要对哪些实时事件进行实时响应,对允许的实时延迟的数量级进行估计。

答:在数控系统中,位置控制、插补计算、紧急控制等严格实时性任务需要利用实时时钟(最小周期为4ms甚至更低)来完成实时任务的处理。另外还有坐标显示、图形显示、数据预处理等软实时任务。

二、如果你是软件设计者,要实现这些实时功能,要设计几个实时任务?

答:①坐标显示线程:在控制面板中,可实时显示X、Y、Z三个运动轴的坐标;②图形显示线程:图形显示线程的用于在动态仿真面板中执行二维或三维图形绘制的指令;③IO状态控制线程:此线程用于检测由系统输入的各个离散量,以及从数控程序得到的指令来输出机床各离散量的状态。④数据预处理线程:数据预处理线程主要负责完成编码形式转换、刀具长度补偿、刀具半径补偿和公英制转换等运动控制数据预处理函数的执行。⑤运动控制线程:此线程主要用于运动控制器执行数控代码函数的运行。负责向缓冲器输入运动控制命令,清空缓冲器和打开关闭缓冲器等操作。⑥紧急控制线程:此线程处理一些需机床立即做出反映的事件,如机床的急停等。它的优先级最高 。

三、这几个实时任务是时间触发的还是事件触发的,如果是时间触发的,周期大约是多少?

答:时间触发:坐标显示线程、图形显示线程、数据预处理线程、运动控制线程;

事件触发:IO状态控制线程、紧急控制线程。

坐标显示线程、图形显示线程、数据预处理线程的触发周期约为10ms;运动控制线程的触发              周期约为4ms。

四、这几个实时任务之间是相互独立还是存在着一定的依赖关系?分析这种依赖关系。

答:存在着一定的依赖关系。数据预处理线程的运算结果是运动控制线程的输入,而运动控制线程决定着IO状态,紧急控制线程能以最高优先级停止运动控制线程。

五、这几个实时任务之间是否都需要使用一些共享的硬件资源?列出这种依赖性。

答:这几个实时任务都共用系统的运行内存,一般采取的是分时间块的轮询占用方式,而紧急控制线程等是以中断方式进入内存RAM。

实时控制软件第一次作业--CNC软件系统分析的更多相关文章

  1. 实时控制软件设计作业_01——汽车ABS系统分析

    制动防抱死系统(antilock brake system)简称ABS.作用就是在汽车制动时,自动控制制动器制动力的大小,使车轮不被抱死,处于边滚边滑(滑移率在20%左右)的状态,以保证车轮与地面的附 ...

  2. UML与软件建模:第一次作业(UML用例图绘制)

    uml第一次作业: 用例图是什么? 用例图我感觉就是把网站中各个用户的动作分解一下,再用rational rose软件把图画出来. 画例图主要分为三个步骤:a 确定系统角色  b 确定用例  c 对用 ...

  3. 《实时控制软件设计》之Github提交作业步骤

    在掌握GIT/GITHUB基本操作后,接下来把第一次的编程作业提交到 https://github.com/RTCSD15/HOMEWORK1 ,把第二次的编程作业提交到https://github. ...

  4. C 语言学习 第一次作业总结

    第一次的作业是冯老师布置的练习题,需要在pta平台上完成.我这边看不到结果,但是透过冯老师给出的截图,同学们都还是认真的去做的.同时,我这边也布置了一个持续 3 周的作业:熟悉 git 的使用.因为后 ...

  5. 2015级软工实践k班第一次作业-准备

    第一次作业-准备······ 几篇文章阅读下来发现一个事实,还是要有明确的目标,清楚自己需要做什么最为重要.然后根据目标确定需要为之所做的准备工作,考研也好,工作也罢,都是服务于自己的目标. 问题答应 ...

  6. java第一次作业0

    lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...

  7. 17秋 SDN课程 第一次作业

    SDN第一次作业 你会选择作 网络编程 方向的程序员吗?为什么? 有可能.原因如下: 1.我的研究与网络密切相关: 2.SDN侧重软件实现,自然涉及socket等网络编程知识,属于基本功: 3.市场. ...

  8. 《实时控制软件设计》之Automation Studio开发环境

    Automation Studio是贝加莱公司的控制软件开发平台,软件可运行在贝加莱的基于PC的控制器上,基于Automation Studio我们可构建一个完整的控制软件构建.测试和仿真运行平台.本 ...

  9. c语言第一次作业1

    第一次作业 一 你对软件工程或者计算机科学与技术专业的了解是什么? 软件工程是一门研究用工程化方法构建和维护有效的,实用的和高质量的软件的学科,涉及程序语言设计,数据库,软件开发工具,系统平台,设计模 ...

随机推荐

  1. UITextView/UITextField检测并过滤Emoji表情符号

    UITextView/UITextField检测并过滤Emoji表情符号 本人在开发过程中遇到过这种情况,服务器端不支持Emoji表情,因此要求客户端在上传用户输入时,不能包含Emoji表情.在客户端 ...

  2. JavaScript HTML DOM 事件

    JavaScript HTML DOM 事件 HTML DOM 使 JavaScript 有能力对 HTML 事件做出反应. 实例 Mouse Over Me 对事件做出反应 我们可以在事件发生时执行 ...

  3. 342. Power of Four

    题目: Given an integer (signed 32 bits), write a function to check whether it is a power of 4. Example ...

  4. linxu 挂载分区

    1. 添加新硬盘 设置 -> Storage -> SATA控制器->右击,选择“添加虚拟硬盘” 然后,根据需求创建合适的硬盘 2. 重启虚拟机 查看现有系统的磁盘空间 sudo f ...

  5. apache 设置404页面

    这几天用xampp搭建了一套环境,后来发现在网页访问出现404的时候xampp显示的内容不安全,把apache.php还有一些其它的版本都会显示 出来,所以想自己设置一个404的页面,在网上找了一些资 ...

  6. 第一个程序点亮一个LED灯

    #include <reg52.h> // 引用52包文件 可以理解为命名空间 sbit P1_0 = P1^0;   // 定义P1管脚0 void main()             ...

  7. django笔记1

    最近在博客园看来越来越多的关于python的文章,我看到时感觉特别的好,因为我也是一个特别喜欢python这门语言,喜欢python的简洁.干净,简洁而不失强大. 最近在学习django的Model模 ...

  8. sql的执行顺序

    sql的一般执行顺序(8)SELECT (9)DISTINCT (11)<Top Num> <select list>(1)FROM [left_table](3)<jo ...

  9. program_options禁止命令行短参数

    典型的 boost program_options的用法如下: #include <boost/program_options.hpp> using namespace boost::pr ...

  10. [BZOJ 1042] [HAOI2008] 硬币购物 【DP + 容斥】

    题目链接:BZOJ - 1042 题目分析 首先 Orz Hzwer ,代码题解都是看的他的 blog. 这道题首先使用DP预处理,先求出,在不考虑每种硬币个数的限制的情况下,每个钱数有多少种拼凑方案 ...