我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:小鱼儿主页 > 调度模块 >

分布式IPC工业配电测控的多任务调度管理系统的设计

归档日期:07-24       文本归类:调度模块      文章编辑:爱尚语录

  随着科技的不断发展,配电网络自动化和工业测控技术也随之发展迅猛,对系统的实时性、可靠性和多功能性要求也越来越高。而高校测控专业实验设备模块单一、功能简单,远远落后于现代控制技术的发展。针对高校测控专业实际需求,研究和设计了一套分布式IPC工业配控系统,由1台上位机和8台下位机构成。各下位机能够根据需要对多路模拟量、量进行检测和控制。上位机可以发出指令和任何一台与之相连的下位机进行通信,收集各下位机传送来的模拟量和开关量信息,进行相关的分析、汇总、报表生成等处理,并对各下位机子系统进行监控和宏观调度。多任务调度管理是系统设计的重点和难点,本文将重点叙述其调度管理过程。

  下位机主要模拟配电测控系统运行,可实现多路模拟量、开关量的采集、存储、显示以及与上位机的通信。同时,为了丰富以后实验系统的教学和实验内容,还特意增加了2个具有典型代表性的工业控制环节:直流电动机子系统的控制和模拟的温度测控子系统。因此,下位机是一个较为复杂的测控子系统,普通的单片机功能简单,很难胜任,为此选用了控制功能强大的研华IPC-610工业控制计算机,配装了2块PC-6313多功能模入/模出板卡。每块PC-6313板卡有24路开入/开出、32路单端模拟量输入/16路双端输入、3个定时器/计数器、2路模拟量输出,结构紧凑、功能齐全,性价比高,配接相应的传感器和执行机构即可完成所有的功能,下位机系统框图如图1所示。IPC-610底板可扩展性强,有近20个ISA插槽和PCI插槽,可随时方便系统的升级。

  工业测控系统最重要的是稳定性,DOS系统比Windows系统稳定性强且占用内存小,非常适应工业系统需要。为此,本系统采用DOS操作系统,编程语言采用C语言。下位机模拟的是配电测控系统运行,有多道任务程序,同时要求运行速度快、稳定性强,是一个复杂的多任务实时系统。多任务实时调度过程的分析和设计是下位机系统运行的关键。

  下位机配电测控系统,共有19个任务程序和1个简化的、初级的多任务实时操作系统MROS,构成了一个多任务实时测控系统[4]。各个任务程序的名称及其功能如下:

  stepping( ):每500 ms采集温度测控子系统的温度值,根据温度偏差,控制步进电动机正/反转。

  motor( ):每250 ms采集1次直流电动机的转速,控制直流电动机按设定值运行。

  pmotor( ):根据直流电动机的转速,绘制直流电动机的动态运行曲线。

  Kg( ):把采集的开关量填入电站的电气主接线图中,完成开关量在图中的动态显示。

  tad( ):把采集的模拟量填入电站的电气主接线图中,完成模拟量在图中的动态显示。

  Stepmotor( ):步进电动机升降速全过程控制,动态绘制升降速全过程。

  Slaver( ):从机和主机的通信任务。将本机的64路模拟量和16路开关量以及温度测控子系统的数据上传给上位机进行显示。

  Subtime( ):北京时间动态显示。屏幕上各个画面正上方中均有北京时间。

  19个任务要求占用硬件资源的关系十分复杂,表述如下:所有任务均要求占用CPU,而CPU只有1个;不同的任务要求占用不同的外设资源,多个任务可能要求占用同一外设;各任务之间存在横向联系;多个任务在宏观上的并发操作;多任务实时操作系统MROS的主要功能就是协调以上各种关系,有效地管理分配各种资源。

  标准的MROS一般包括CPU管理、外设管理、中断管理、存储器管理和文件管理等,占用内存空间较大,CPU的运行速度较慢。下位机测控系统具有如下特点:

  (2)人机联系任务虽然是随机的,但任务的内容是固定的,操作人员只是通过键盘调用一些编制就绪的程序而不修改程序本身。

  对于这样一个系统,若采用标准的MROS,将占用较多内存空间和CPU的运行时间,降低系统资源的利用率和系统的实时性。因此,本系统采用了一种与硬件资源和测控对象相适应的简化的、初级的MROS,保留了标准MROS的核心功能。即CPU管理、外设管理和中断管理,其主要工作如下:

  任务调度的主要职能,一是根据任务调度算法分配CPU,即实现某个时间或事件驱动的任务切换;二是从任务收回CPU。

  按照任务的优先级是否可以动态地改变,调度算法可以分为:静态调度和动态调度。

  按照调度过程是否允许采用抢先方式,调度算法可以分为:抢先调度方式和非抢先调度方式。非抢先调度方式在满足高优先级别任务的时限方面比抢先调度方式要差一些,但是它实现起来简单,时间确定性好,并且避免了因为资源共享而引起的互斥,实际应用较广。

  本系统设计时,按照多任务实时操作的基本原则来编写任务程序,通过硬件配合,可使每个任务都在几十个微秒内完成。因此,可采用静态调度方式设计图1所示的IPC系统。但某些任务的优先级别可以局部改变;若采用非抢先调度方式,可把1个功能分解为若干个可以在1 μs到几十微秒内完成的程序段,以改善实时性。

  为了描述和控制进程的运行,系统为每个进程定义了一个数据结构——进程控制块(PCB)。PCB主要包括:进程标识符、进程当前状态、进程队列指针、程序开始地址、进程优先级、CPU现场保护区、通信信息、家族联系、占有资源清单等。

  为了简化问题,本系统按一定的原则编制每一个任务程序,使得每一个任务程序都在规定的时间内执行完毕,即每一个任务程序在执行完后才交还CPU的使用权,因此,在本系统所设计的MROS中,就只使用PCB中的“进程当前状态”这一个概念。

  “tick”信号是MROS在运行过程中需要的基本的、最小的定时单位。在图1所示的系统中,“tick”由PC-6313板卡的定时/计数器8253产生。当系统初始化时,使PC-6313 1#板卡8253的 T2 OUT2每1 ms输出1个脉冲,把这个脉冲信号作为中断请求信号加在IRQ3上,每1次中断即产生1个“tick”,在IRQ3的中断服务程序进行与时间相关的操作。

  在单CPU系统中,不可能有真正意义上的并行操作,所有任务只能遵循调度策略,串行地占用CPU,即:宏观上在同一时段内多个程序的同时执行,而微观上则是多个任务的交替执行。整个测控系统必须遵循的设计原则如下:

  (1)快速的任务调度和切换。调度程序本身必须是低开销,本系统编写的实时调度程序,占用CPU的执行时间小于1μs。调度所需的“tick”是通过定时器/计数器模板上的8253产生的,可以根据需求确定调度精度,从几百微秒到若干毫秒。

  (2)在设计测控电路和编制各个实时任务程序时,应注意任何任务都不能加重CPU的负担,它只能在接收控制信号和调节命令后,就脱离CPU的“关注”而独立运行,直到新的控制信号和调节命令到来后又在新的条件下“独立”运行。

  (5) t键和d键均把subd1( )推入就绪队列。在subd1( )的执行过程中,如果发现是t键,则把kg( )推入就绪队列;如果发现是d键,则把tad( )推入就绪队列。

  (6) kg( )、tad( )、mnxs( )、kgxs( )在各自运行过程中,又把自己推入就绪队列,CPU不断对它们提供运行机会,在没有其他按键操作的情况下,pmotorf1总是等于1,即一直允许绘制直流电动机运行曲线 ms运行motor( )时,pmotor( )都可以被设置为就绪状态。pmotor( )每运行1次,就在屏幕上显示1次直流电动机的当前速度值。

  (7) 下位机串行口中断一直处于开放状态,若主机要求和该下位机通信,则把slaver( )推入就绪状态。Slaver( )运行时,将指定的数据传送给上位机。由于采用智能通信模块,下位机只需把指定的数据传送给智能通信模块即可,其后,由通信模块将数据传送给主机。串行通信的速度很快,可满足系统实时性的要求。

  下位机软件系统结构示意图如图3所示。软件系统由三大块子系统构成:图3(a)为初始化及任务调度,是系统的管理层负责任务调度;图3(b)为任务程序集合,它们在管理层的调度下实现各种功能;图3(c)为中断服务程序,是简化MROS的组成部分。可以据此画出更详细的软件系统流程图并编写相应的程序。

  本文对目前高校测控实验仪功能单一,对测控系统的可靠性、实时性等不能很好地模拟等问题,研究和设计了一套配电测控模拟实验台,由上下位机系统构成。下位机以工控机为核心,配装简化的多任务实时操作系统,能够对16路开关量、64路模拟量及多个键盘任务进行实时检测和控制,并能够和上位机进行定时通信,将收集数据及时传送给上位机,进行汇总、分析和报表打印等。重点分析了下位机的实时多任务之间的关系,调度过程原理及简化的多任务实时操作系统的设计。

  中国硬件创新大赛网络培训会—技术培训篇如果你就干这行,毫无疑问你不能错过这次直播;如果不是,可能你不一定喜欢单片机,也不

  说起我从认识学习使用C51 单片机到现在有两年多,时间不长,菜鸟一只。从用TOP151 烧写AT89....

  第一步:先退出KEIL,运行STC-ISP V6.31( 或更高版本), 在右侧的【Keil 仿真设....

  我想用labview做一个上位机软件监控下位机(单片机)的参数并控制,我想用网线通过modbus的方式进行通讯,而且是多台通讯 类似主...

  众所周知在各类功放中D类功放以其极高的效率著称,因此更符合绿色革命的潮流,也因此D类功放越来越引起各....

  最近这几天,和几位朋友谈起工业互联网的发展趋势。我突然发现:过去并没有认真地考虑这些问题。我一直觉得....

  目前,构成交换机设计体系的几种常用可行技术分别如下: 1.通用CPU 通用CPU的优点是功能易扩展,理论上可以实...

  我们经常需要查看CPU和内存占用率,否则一旦存在情况很快就会有IDC(或客户)找上门,Linux上查看资源使用情况有多种命令...

  早在上世纪六十年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多的提及。其在通信、电子、自动...

  请问一下,我的整个板子由几个模块构成,然后想用单片机控制几个模块是否上电,除了用MOS管控制外,有没有现有的芯片可以用?...

  求PIC单片机控制SIM900A模块收发短信的方法,最好有电路图与代码~...

  如题!我最担心的是怕程序跑飞造成误操作 ,弄伤人就不好了!大家觉得把程序编写的严谨性除外其他的有必要担心没有?...

  功能强大,“有效速度高”可以超过兆字节每秒、可以传输音视频或高速采集数据 的 适合普通单片机的“单片机WIFI” 解决方案:...

  在单片机的学习与应用中,单片机开发系统的优劣直接影响我们的学习进度或开发的速度与水平,目前已有的单片....

  在攻克德国、荷兰两大欧洲市场上后,本月初AMD又在日本市场实现了历史性突破——零售市场上AMD占比首....

  如果将动力总成装配看作一个整体,很明显,随着引入越来越多的动力总成可选配置类型以应对燃油效率和排放要....

  暂存器是记忆体阶层中的最顶端,也是系统操作资料的最快速途径。 暂存器通常都是以他们可以保存的位元数量....

  存储器范围最大,它几乎涵盖了所有关于存储的范畴。寄存器,内存,都是存储器里面的一种。凡是有存储能力的....

  当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路....

  本文档的主要内容详细介绍的是使用单片机设计平衡智能小车的源码资料合集免费下载。

  本文档的主要内容详细介绍的是使用ARMK60单片机设计的平衡智能小车源代码免费下载。

  本文档的主要内容详细介绍的是欧姆龙CP1E可编程序控制器操作手册免费下载。

  本文档的主要内容详细介绍的是使用STM8单片机控制LED的程序和工程文件免费下载。

  本书较为详细地介绍了TI公司的MSP430系列单片机,全书共分5章。首先讲述MSP430会系列所涉及....

  本文档的主要内容详细介绍的是使用STM32F4O07VE板子单片机驱动智能小车电机实验的程序和工程文....

  51系列是应用最广泛的单片机,由于产品硬件结构合理,指令系统规范,加之生产历史“悠久”,有先入为主的....

  时钟周期也叫振荡周期或晶振周期,即晶振的单位时间发出的脉冲数,一般有外部的振晶产生,比如12MHZ=....

  本文着手从集成电路角度去认识单片机,主要介绍了单片机的引脚图及引脚功能,以及单片机简易编程。

  是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象。

  对于USB2.0而言其传输速率为480Mbps。通讯速率是比较高的。而TVS中除了要考虑动作电压外,....

  英特尔发布Pohoiki Beach神经拟态系统,比传统CPU快1000倍

  在DARPA 2019 年电子复兴计划峰会上,英特尔发布了“ Pohoiki Beach ”神经拟态....

  美国宾夕法尼亚州约克市,2019年7月12日讯– 全球工业自动化与网络领域通信、监测和控制专家美国红....

  本文档的主要内容详细介绍的是使用MSP430单片机设计电池电量测量系统的开题报告免费下载。

  本文档的主要内容详细介绍的是嵌入式硬件系统教程之处理器的详细资料说明包括了:1.处理器结构体系,2.....

  无人搬运车(Automated Guided Vehicle,AGV),也叫做自动导引运输车,是指装....

  电磁灶是应用电磁感应原理进行加热工作的,是现代家庭烹饪食物的先进电子炊具。它使用起来非常方便,可用来....

  在使用Proteus仿真单片机系统的过程中,经常找不到所需的元件,这就需要自己编写。Proteus ....

  7月12日,知名独立咨询公司Gartner披露了全球第二季度个人电脑(PC)销量数据。根据Gartn....

  PID控制中有P、I、D三个参数,只有明白这三个参数的含义和作用才能完成控制器PID参数整定,让控制....

  为了理解扩展网络的效果,本文系统地研究了扩展模型不同维度带来的影响。虽然扩展各个维度可以提高模型性能....

  腐蚀电路板相对而言是有一定的危险性的,所以在腐蚀的过程中我们应该注意一些事情,这些事情虽然小,但是却....

  两个简单的报警程序,希望能对大家有所启发,让单片机发出更美妙的音响 #include #....

  CLI版本允许你使用命令转换照片,通过该版本,你可以创建自动化系统,如机器人、web页面或新的GUI....

  总线是将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。通俗的说,就是多个部件间的公共连....

  本文档的主要内容详细介绍的是单片机教程之串行口与串行通信的详细资料说明包括了:1 串行通信概述,2 ....

  分析电力传动节能领域的电机电能消耗问题,以及变频调速技术在电力传动节能领域的应用。

  本设计介绍了一种基于STC89S52单片机的红外遥控步进电机的设计,系统分为红外遥控编解码和驱动步进....

  使用STC15F2K60S2单片机为核心设计SPWM逆变电源的论文免费下载

  本文论述是一种采用STC15F2K60S2单片机为核心的SPWM逆变电源,单片机通过自然数查表法控制....

  本文档的主要内容详细介绍的是MSP-EXP430G2口袋实验平台的用户手册和原理图免费下载。Lau....

  BGA是PCB 上常用的组件,通常CPU、NORTH BRIDGE、SOUTH BRIDGE、AGP....

  本文档的主要内容详细介绍的是使用STM32单片机驱动TM1638的程序免费下载驱动程序测试可用的。

  本书基于Keil μV ision程序设计平台和Proteus硬件仿线....

  近年来,人类探索地球的足迹正在从大陆延伸到海洋,而科技的进步为海洋产业提供了强大的助力,进一步推动了....

  很多从日系PLC或者200PLC过来的人,很不习惯于S7 1200 或者TIA PORTAL 里面的....

  Flash存储器,简称Flash,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程的性能,还不....

  TMS320VC5501(5501)定点数字信号处理器(DSP)基于TMS320C55xDSP生成CPU处理器内核。 C55xDSP架构通过增加并行性和全面关注降低功耗来实现高性能和低功耗。 CPU支持内部总线结构,该结构由一个程序总线,三个数据读总线,两个数据写总线以及专用于外设和DMA活动的附加总线组成。这些总线能够在一个周期内执行最多三次数据读取和两次数据写入。并行,DMA控制器可以独立于CPU活动执行数据传输。 C55xCPU提供两个乘法累加(MAC)单元,每个单元能够进行17位×17位乘法运算。单循环。额外的16位ALU支持中央40位算术/逻辑单元(ALU)。 ALU的使用受指令集控制,提供优化并行活动和功耗的能力。这些资源在C55x CPU的地址单元(AU)和数据单元(DU)中进行管理。 C55x DSP代支持可变字节宽度指令集,以提高代码密度。指令单元(IU)从内部或外部存储器执行32位程序提取,并为程序单元(PU)排队指令。程序单元解码指令,将任务指向AU和DU资源,并管理完全受保护的管道。预测分支功能可避免执行条件指令时的管道刷新。 5501外设...

本文链接:http://i-zyczenia.net/diaodumokuai/1037.html