实验项目一、单任务实验 让LED以1Hz频率进行闪烁。 实验项目二、定时查询实验 按下按键后点亮LED0、松开按键后熄灭LED0。 实验项目三、多任务实验 让LED0、LED1和LED3分别以1Hz、2Hz和3Hz的频率进行闪烁 实验项目四、临界区实验 按一次按键点亮LED0、再按一次按键熄灭LED0
标签: UCosIII
上传时间: 2019-05-02
上传用户:Shawn11
建模、控制算法研究以及仿真试验都是燃气轮机研制过程中必不可少的环节,本文针对三者展开研究首先,采用容积惯性法代替牛顿-拉普逊法建立三轴燃气轮机非线性动态模型,并考虑变比热、引气与冷却等环节,通过与试车数据比较验证了所建模型具有良好的仿真精度。采用容积惯性法不但提高了模型的实时性,并且动态过程更接近真实燃气轮机运转状态。分析了容积惯性法建模中低转速阶段仿真时出现的参数振荡现象产生的原因,通过增加低转速特性数据消除了参数振荡,并提出了一种基于指数平衡与样条拟合的外推方法来获得低转速特性数据。通过低压压气机特性数据外推计算与分析,证明了该外推方法具有较好的准确性。然后,针对重型燃气轮机非线性强、惯性大和负载多变等特点,提出了一种基于深度信念网络的自适应控制器。该控制器结合了深度信念网络和传统PD控制器,其中深度信念网络作用是在线调整PID参数,而传统PD控制器负责控制量的计算与输出。通过数字仿真,验证了该控制器满足燃气轮机转速控制的要求,并且具有良好的自适应性,在燃气轮机不同工况下,能够对其转速进行准确控制,使得系统快速响应的同时无超调量。最后,针对燃气轮机硬件在环仿真平台的需要,设计了一种能够采集并模拟多种范围电压、电流与频率信号的接口模拟器。搭建了燃气轮机硬件在环控制平台,在试验前对接口模拟器以及控制器进行了标定与平台的实时性验证。在已有的控制器上,完成了基于RIX作系统的多任务嵌入式控制系统开发。通过硬件在环试验,进一步验证了本文设计的控制器具有良好的控制效果与较强的自适应能力关键词:燃气轮机,容积惯性,建模,仿真,自适应控制,深度信念网络,硬件在环
标签: 自适应控制
上传时间: 2022-03-14
上传用户:
Ansoft公司的Maww2D/3D是一个功能强大、结果精确、易于使用的二维/三维电磁场有限元分析软件。它包括电场、静磁场、涡流场、瞬态场和温度场分析模块,可以用来分析电机、传感器、变压器、永磁设备、激励器等电磁装置的静态、稳态、瞬态、正常工况和故障工况的特性。它所包含的自上而下执行的用户界面、领先的自适应网格剖分技术及用户定义材料库等特点,使得它在易用性上遥遥领先。它具有高性能矩阵求解器和多CUP处理能力,提供了最快的求解速度。静磁场求解器(Magnetostatic)用于分析由恒定电流、永磁体及外部激磁引起的磁场,是用于激励器、传感器、电机及永磁体等。该模块可自动计算磁场力、转矩、电感和储能用于求解某些涉及到运动和任意波形的电压、电流源激励的设备,可获得精确的预测性能特性。该模块能同时求解磁场电路及运动等强耦合的方程,从而得到电机的相关运行性能●涡流场求解器(Eddy Current用于分析受涡流、集肤效应、邻近效应影响的系统。它求解的频率范围可以从θ到数百兆赫兹,能够自动计算损耗、铁损、力、转矩、电感与储能。允许用户设置多项可变设计量,如位置、形状、源及频率等。可自动计算数千种情况的物理问题分析,而整个过程不许用户干预。在绘制曲线模型时,系统默认的是将封闭后的曲线自动生成面,如果用户不想让其自动生成面,可以在绘制曲线模型前,点击菜单栏中的 Tools/Options/Modeler Options项更改绘图设置。材料库的管理更加方便和直观,新版软件的材料库主要由两类组成,一是系统自带材料库的2D和3D有限元计算常用材料库除此外还有 RMxprt电机设计模块用的电机材料库。二是用户材料库,可以将常用的且系统材料库中没有的材料单独输岀成用户材料库,库名称可自行命名,在使用前须将用户材料库装载进软件中
上传时间: 2022-03-17
上传用户:
参考 FreeRTOs,orq怎样工作小节获取多任务的基本概念任务和联合程序文档提供了怎样判断何时适合以及何时不适合使用联合程序的方法,下面是简单的总结。注意一个系统可以只使用任务、或者只使用联合程序、或混合使用-但是任务和联合程序使用不同的API函数,因此一个队列(或者信号)不能用于从任务传递数据到联合程序,反之亦然。任务"的特性FreeRTOS低于V4.0.0.0的版本只允许实时系统的结构以一组任务的方式组成,这是RTOS调度的传统模式。简评 In brief:一个使用RTos的实时应用系统可以由一组独立的任务组成,每个任务执行它自己的内容而不依赖于其他任务或者调度器。在任何时候只有个任务可以被执行,调度器负责决定哪个任务应当被执行。调度器反复启动和停止任务(切换任务),因为个任务不清楚调度器的活动,所以在任务切换时保证处理器内容不变(寄存器值、堆栈等)就是实时内核调度器的工作。要做到这点每个任务都需要使用自己的堆栈,当任务切换时运行的参数保存到堆栈中任务再次运行时就可以从堆栈中恢复参数。参考 FreeRTOs怎样工作小节获得更多内容。就绪的任务是那些可以执行(没有被阻塞或暂停),但是因为其他相同或更高优先级任务正在运行造成还没有运行的任务。阻塞当一个任务等待临时事件或外部事件时它就是处于阻塞状态。例如,任务调用 VAsk Delay(),它将被阻塞(置为阻塞状态)直到超过延时时间个临时事件。任务也可以阻塞等待队列和信号事件。阻塞状态的任务般有一个超时时间,超时后任务将解锁。阻塞的任务不会参与调度。
标签: freertos
上传时间: 2022-03-19
上传用户:kingwide
本指南介绍如何安装、配置和使用用于嵌入式应用程序的 emWin 图形用户界面。还介绍了软件的内部结构和 emWin 提供的且用于直接使用的所有函数(API,应用编程接口)。在实际使用 emWin 之前,应阅读或至少浏览一遍本手册以便对软件有所了解。然后建议按以下步骤进行操作:• 将 emWin 文件复制到计算机中。• 通读“入门指南”(第 43 页)。• 使用模拟器以便更熟悉软件的功能(请参阅“模拟”(第 53 页))。• 参考手册的其它内容,对程序进行扩展。emWin 设计用于提供高效且独立于处理器和显示控制器的图形用户界面,用于任何使用图形显示进行操作的应用。它与单任务和多任务环境、专用操作系统或具有任何商业 RTOS 兼容,emWin 的发货形式为 C 语言源代码。它可适用于任何尺寸的、具有任何显示控制器和 CPU 的物理和虚拟显示器。为了让您更好地了解emWin 的功能,我们准备了各种不同演示,其形式为“即时可用”的模拟可执行程序,www.segger.com/emwin-samples.html.示例程序的源代码位于 Sample 文件夹中。文件夹 Sample\GUIDemo 包含一个显示 emWin 许多特性的应用程序。所有示例也可从 www.segger.com 获得。本文档的示例代码以代码段提供,这可能需要进一步的修改。
标签: emwin
上传时间: 2022-05-23
上传用户:
经济的发展与技术的进步带动着人们更加渴望高品质的生活质量,作为当今产业大热门的智能家居逐渐成为市场关注的焦点,很多科技公司纷纷开发出自己的产品。不过由于浮夸的宣传,不合理的定位和高昂的价格,导致了消费者纷纷对智能家居产品望而却步,行业呈现出叫好不叫卖的现象。鉴于此种情况,本文定位于智能家居中低端产业,开发设计出一款简单实用、价格低廉的智能家居控制网关系统,目的是在于让普通人也可以享受科技发展的成果。 该网关系统综合了电子技术、计算机技术、通信技术等多种技术,从硬件和软件两个方面对控制网关进行深入研究,最终实现对家居环境远程监测的目的。 在硬件方面,该控制网关系统采用以单片机为硬件控制平台,以供电模块、时钟模块、EEPROM模块等众多外围电路模块为辅助,结合ZigBee与WiFi无线通讯技术,完成对智能家居网关系统的搭建工作。该网关系统的单片机采用功能强大、价格低廉基于ARM32位CortexTM-M3的STM32F103RCT6,它主要负责对家居环境的任务调度,智能控制;ZigBee部分采用主芯片为CC2530的无线通信模块,该模块主要包括两个部分:协调器和终端节点,终端节点除了通信部分,还包括温湿度传感器、光线传感器、烟感传感器等部分,它负责完成对数据的采集、打包和发送工作,协调器则负责把终端节点发送的数据进行重新打包然后通过串口传送给主控模块;WiFi部分采用的是价格低廉、功能实用的ESP8266WiFi通信模块,该模块有三种工作模式:STA、AP和STA/AP,使得WiFi部分兼具连接热点和发送热点两种功能,该模块负责智能家居控制单元和外界通信的工作,它通过串口和控制单元通信,然后通过WiFi网络发送接收信息。 在软件方面,控制网关采用以Keil和IAR为开发环境,以uC/OS-Ⅱ操作系统为程序运行环境,结合C语言及少量汇编语言,共同完成系统的软件控制工作。Keil和IAR作为开发环境可以进行程序检测、烧录等辅助工作,大大减轻了工作量;uC/OS-Ⅱ操作系统短小精炼、功能强大的特点,使得硬件资源可以更加合理的利用,有助于节约成本,同时也让控制网关系统可以实时多任务执行,增强了系统功能;此外充分合理利用了网络库函数资源,大大节约了学习与开发进度。...
上传时间: 2022-05-30
上传用户:
针对目前我国已经存在的温室控制系统成本高、网络化不足以及测量环境因子单一等问题,文中开发了一套基于STM32的温室远程控制系统。该系统通过利用STM32单片机作为温室内的控制器以及MFC编写的控制软件实现对温室内空气温度、空气湿度、光照强度和CO2浓度多个环境因子的远程监测和控制。 系统的硬件电路设计包括STM32控制器、数据采集模块、设备控制模块、网络接口模块、实时显示模块以及数据存储模块等。其中数据采集模块采用DHT11、MG811以及BH1750传感器进行环境因子的测量,设备控制模块通过控制继电器通断来控制温室内的加热系统和光照系统等执行设备,STM32通过ENC28J60接入网络实现远程控制,显示模块实现各个环境因子的实时显示,数据存储模块采用外接SD卡的方式进行数据的存储。在STM32的程序设计中采用了库函数的开发方式设计了测量程序、显示程序以及控制程序。通过在STM32中移植μC/OS-Ⅱ操作系统实现多任务的运行,移植LwIP协议使STM32可以接入网络,实现控制的网络化。在VC6.0平台下利用MFC设计了控制软件,控制软件和STM32之间通过TCP/IP协议进行数据和命令的传输。控制软件的主要功能是对温室内的多个环境因子进行远程监测和对执行设备进行远程控制。在控制软件设计中,采用面向对象的方法将相关的操作函数封装到类中,便于对系统进行升级,采用多线程的方法解决了多个任务同时运行的状况。将控制过程中产生的数据保存到数据库中,可以对系统运行产生的数据进行分析和利用。 为了对系统进行测试,在文中搭建了一个小型的温室并将控制器安装在温室内。经过测试,文中设计的温室控制系统可以实现对温室内空气温度、空气湿度、光照强度和CO2浓度的远程实时监测,数据每秒更新一次。当上述的环境因子超过控制软件上设置的上下限范围时,系统会报警,此时可以在控制软件上控制执行设备的通断来调节该因子使其到达设置的范围内。
上传时间: 2022-06-09
上传用户:qingfengchizhu
线程(thread)技术早在60年代就被提出,但真正应用线程到操作系统中去,是在80年代中期。为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?使用多线程的理由之一是和进程相比,它是一种非常”节俭”的多任务操作方式。在Linux系统下,启动一个新的进程必须分配独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段。而运行于一个进程中的多个线程,它们之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于进程所花费的空间,而且,线程间彼此切换所需的时间也远远小于进程间所需要的时间。使用多线程的理由之二是线程间方便的通信机制。对不同进程来说,它们具有独立的数据空间,要进行数据的传递只能通过通信的方式进行,这种方式费时且很不方便。由于同,进程下的线程之间共享数据空间,所以一个线程的数据可以直接为其它线程所用,这样快且方便。在计算机中,凡是提供服务的一方我们称为服务端(Server),而接受服务的另一方我们称作客户端(Client)。不过客户端及伺服端的关系不见得一定建立在两台分开的机器上,提供服务的伺服端及接受服务的客户端也有可能都在同一台机器上,这样在同一台机器上就同时扮演伺服端及客户端。线程间方便的通信机制可以使得在我们在服务端和客户端方便的进行通信传输与各种操作,可以通过运用多线程机制方便实现上传、下载文件:增加、删除用户:以及在服务端进行文件的管理。
上传时间: 2022-06-20
上传用户:
本书详细介绍了KeilCx5]V7.0版本单片机C语言编译器和全新Windows集成开发环境uVision2的强大功能和具体使用方法。全面介继了最新版本Cx51编译器新增加的控制命令,给出了全部Cx51运行库函数及其应用范例,对KeilCx5l软件包中各种应用工具,如BL51/Lx5]连接定位器、A51/Ax51宏剂编器、LIB51库管理程序以及OH51符号转换程序等都作了详细介绍,还介绍了单片机实时多任务操作系统RTX51及其了集RTX51TINY的具体功能与应用方法。uVision2已经将调试器功能集成于其中,用户可以在单一环境下完成从源程序编写、编译、链接定位一直到目标文件的仿真调试等全部工作,书中详细介绍了uVision2各种功能和应用,包括软件模拟调试和硬件目标板实时在线仿真。本书的特点是强调先进性和实用性,给出了大量程序实例,并带有一张由Keil公司提供的配套CD-ROM光盘,其中包括Keil Cx51V7.0版本全功能评估软件包,本书各章中列出的全部程序代码,以及Keil Cx51源程序仿真硬件目标板的照片和使用说明。本书适合于从事单片机应用系统开发研制的广大工程技术人员阅读,也可以作为高等院校相关专业大学生或研究牛的教学参考书。
上传时间: 2022-06-23
上传用户:xsr1983
摘要:FreeR'TOS作为一种开源的轻量级多任务实时操作系统,被广泛应用在各种嵌入式仪器和设备中,但该操作系统不支持软件模块的动态加载,这限制了它的灵活性和扩展性。本文在详细分析ELF文件符号重定位原理的基础上,通过修改FreeRTOS任务的内存布局,并在其内核中添加ELF文件加载器,实现软件模块的动态加载和卸载功能。程序在STM32平台上的测试结果表明,软件模块能够在系统运行时被动态加载入内存,并成功被FreeRTOS内核调度执行。关键词:FreeRTOS;ELF文件;动态软件模块;符号重定位0引言动态软件模块是一种能够在操作系统运行时加载和卸载的程序代码或数据,对于不支持该特性的嵌人式操作系统,其任务代码必须与操作系统内核一起编译,链接成一个完整的可执行镜像,并下载或烧写到目标板中运行,一旦任务代码需要修改更新,则必须重新编译所有代码。这一不支持动态软件模块的缺点限制了嵌入式操作系统的灵活性和可扩展性,给应用软件的更新升级也带来了不便。
上传时间: 2022-06-24
上传用户: