zoukankan      html  css  js  c++  java
  • 实时控制软件第一次作业--CNC软件系统分析

    作者:李君威U201310747

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

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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    Why does the memory usage increase when I redeploy a web application?
    lsof
    Advising controllers with the @ControllerAdvice annotation
    springMVC(一): 整体请求过程概述
    正则表达式30分钟入门教程
    Python基本语法_强制数据类型转换
    Python 正则表达式入门(初级篇)
    python实现简单爬虫功能
    在python3.3后urllib2已经不能再用,只能用urllib.request来代替
    JSON
  • 原文地址:https://www.cnblogs.com/Justin1253610681/p/6104562.html
Copyright © 2011-2022 走看看