工业机器人嵌入式实时控制系统
- 格式:docx
- 大小:34.37 KB
- 文档页数:4
嵌入式实时操作系统第一点:嵌入式实时操作系统的定义与特点嵌入式实时操作系统(Embedded Real-Time Operating System,简称ERTOS)是一种专门为嵌入式系统设计的操作系统,它具有实时性、可靠性和高效性等特点。
嵌入式实时操作系统主要用于控制和管理嵌入式系统中的硬件资源和软件任务,以实现对系统的实时控制和高效运行。
嵌入式实时操作系统的定义可以从以下几个方面来理解:1.嵌入式系统:嵌入式系统是指将计算机技术应用于特定领域,以完成特定任务的计算机系统。
它通常包括嵌入式处理器、存储器、输入输出接口等硬件部分,以及运行在处理器上的软件部分。
嵌入式系统具有体积小、功耗低、成本低、性能高等特点。
2.实时性:实时性是嵌入式实时操作系统最核心的特点之一。
它要求系统在规定的时间内完成任务,并对任务的响应时间有严格的要求。
实时性可以分为硬实时和软实时。
硬实时要求任务在规定的时间范围内完成,不允许有任何的延迟;软实时则允许任务在规定的时间范围内完成,但延迟尽量最小。
3.可靠性:嵌入式实时操作系统需要具备很高的可靠性,因为它们通常应用于对安全性和稳定性要求较高的领域,如航空航天、汽车电子、工业控制等。
可靠性主要包括系统的正确性、稳定性和抗干扰能力等方面。
4.高效性:嵌入式实时操作系统需要高效地利用硬件资源,以实现对系统的实时控制。
高效性主要包括系统资源的利用率、任务的调度算法、内存管理等方面。
第二点:嵌入式实时操作系统的应用领域与发展趋势嵌入式实时操作系统在众多领域都有广泛的应用,下面列举几个典型的应用领域:1.工业控制:嵌入式实时操作系统在工业控制领域具有广泛的应用,如PLC(可编程逻辑控制器)、机器人控制器、工业现场仪表等。
实时操作系统可以实现对工业过程的实时监控和控制,提高生产效率和产品质量。
2.汽车电子:汽车电子领域是嵌入式实时操作系统的另一个重要应用领域。
现代汽车中的电子控制系统,如发动机控制、底盘控制、车身控制等,都需要实时操作系统来保证系统的实时性和稳定性。
近年来,基于机器视觉的智能机器人在工业等各个领域中得到了广泛的应用.本文针对应用中遇到的一些问题,提出了将机器视觉与嵌入式系统相结合的思想.开发了一种通用的嵌入式系统平台,进行操作系统的移植和图像匹配等算法的研究,并将其应用于移动机器人的视觉导航,取得了较好的效果。
随着Internet技术与信息家电、工业控制技术等的结合日益紧密,嵌入式设备与Internet的结合已成为大势所趋。
此时期新的微处理器层出不穷,要求嵌入式操作系统的设计更加便于移植,支持更多的微处理器。
嵌入式系统的开发需要强大的硬件开发工具和软件支持包。
通用计算机上使用的新技术、新观念开始逐步移植到嵌入式系统中,如嵌入式数据库、移动代理、实时CORBA等。
各类嵌入式Linux操作系统在全球数以百万计爱好者的合力开发下迅速发展,由于具有源代码开放、系统内核小、执行效率高、网络功能强,多媒体人机交互界面友好等特点,很适合信息家电等嵌入式系统的需要。
一、嵌入式系统的技术特点早期的嵌入式系统设计方法,通常采用“硬件优先”原则,即在只粗略估计软件任务需求的情况下,首先进行硬件设计与实现。
然后,在此硬件平台上再进行软件设计。
因而很难达到充分利用软硬件资源,取得最佳性能的效果。
同时,一旦需要对设计进行修改时,整个设计流程将重新进行,这对成本和设计周期的影响很大。
这种传统的设计方法只能改善软件/硬件各自的性能,在有限的设计空间不可能对系统做出较好的性能综合优化,在很大程度上依赖于设计者的经验和反复实验。
上世纪90年代以来,随着电子系统功能的日益强大和微型化,硬件和软件也不再是截然分开的两个概念,而是紧密结合、相互影响的。
因而出现了软硬件协同(codesign)设计方法,即使用统一的方法和工具对软件和硬件进行描述、综合和验证。
在系统目标要求的指导下,通过综合分析系统软硬件功能及现有资源,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能低代价的优化设计方案。
IEC 61131-3标准与ARM嵌入式控制系统摘要介绍IEC 61131-3国际标准、ARM微处理器和嵌入式系统;研究基于AT91M55800A微处理器和IEC6113l-3标准的嵌入式实时控制系统的设计与实现技术,并给出详细的串口通信程序。
关键词 ARM AT91M55800A IEC 61131 3标准串口通信引言ARM是采用ARM公司技术知识产权(IP)核的微处理器。
其中ARM7是低功耗的32位核,具有小体积、低功耗、低成本而高性能的特点,在信息家电、工业控制和无线通信等领域得到了广泛的应用。
IEC61131-3国际标准是国际标准化组织(国际电工技术委员会)为工业控制软件编程制定的第一个国际标准。
该标准针对工业控制系统所阐述的软件设计概念、模型等,适应了当今世界软件、工业控制系统的发展方向,是一种非常先进的设计技术。
友好的交互界面、网络互联功能、智能化的软件、实时数据处理已成为现代测控系统的共同需求,因此,殴计并实现基于ARM微处理器和IEC 6113l-3标准的嵌入式实时控制系统很有意义。
1 系统的设计与实现1.1 系统的硬件基础控制系统是基于Atmel AT91M55800A微处理器进行设计的。
AT91M55800A是一款基于ARM7TDMI核的16/32位微控制器。
其处理器核为高性能的32位RISC体系结构;具有高密度的16位指令集和极低的功耗,片内集成了8 KB SRAM、向量中断控制器VIC、先进电源管理控制器APMC和完全可编程的外部总线接口EBI;具有3个USART、58个可编程I/O线、6通道1 6位定时器/计数器、8通道10位ADC和2路lO位DAC,为各种超低功耗应用提供了一种高度灵活且高性价比的解决方案。
图1是控制系统的硬件结构框图。
硬件设计采用了结构化、模块化的设计思想,易于裁剪。
通信接口包括RS232串行通信接口、以太网接口和CAN总线接口。
通过以太网口可以实现与工业以太网的互联。
tango系统Tango系统概述Tango系统是一种先进的实时操作系统,旨在满足多种应用程序的实时需求。
它采用了一种分层设计,可以提供高度可靠和高性能的操作环境。
Tango系统在工业自动化、机器人技术、嵌入式系统等领域表现出色,并得到广泛应用。
设计原则Tango系统的设计遵循以下原则:1. 实时性:Tango系统注重实时性能,可以处理时间敏感的任务,并在预定的时间范围内提供响应。
这使得Tango系统非常适合需要快速响应的应用程序。
2. 可靠性:Tango系统具有高度可靠性,能够处理各种故障情况,并在出现故障时保证系统的稳定运行。
它采用了冗余设计,可以通过备份组件和自动切换来保持系统的稳定性。
3. 扩展性:Tango系统的设计具有良好的扩展性,可以适应不同规模和复杂度的应用。
它支持模块化开发,可以轻松添加新功能和组件,以满足特定应用的需求。
4. 可配置性:Tango系统提供了丰富的配置选项,可以根据应用程序的要求进行调整和优化。
用户可以根据自己的需求选择合适的配置,以获取最佳性能和资源利用率。
架构Tango系统的架构采用了分层设计,以提供清晰的功能划分和高度可管理的系统。
下面是Tango系统的主要层级:1. 应用程序层:应用程序层是Tango系统的最高层,负责处理用户界面和应用逻辑。
它提供了各种API和工具,使开发人员可以轻松开发和管理应用程序。
2. 实时控制层:实时控制层是Tango系统的核心,负责处理实时任务和系统资源的分配。
它包括调度器、实时内核和驱动程序等组件,以提供可靠和高性能的实时环境。
3. 通信层:通信层负责处理Tango系统内部和外部的通信。
它支持多种通信协议,包括以太网、CAN总线等,以便用户可以轻松地与其他设备进行通信。
4. 硬件接口层:硬件接口层提供了与硬件设备的接口,使Tango系统可以与各种传感器、执行器等设备进行交互。
它支持标准接口和协议,以便与不同类型的硬件设备进行通信。
六轴工业机器人控制系统的设计与实现随着科技的不断发展,机器人技术已经在各行各业得到了广泛的应用。
六轴工业机器人具有灵活性高、适应性强、工作范围广等特点,因此在汽车制造、电子生产、航空航天等领域得到了广泛应用。
六轴机器人的控制系统是其核心部分,对于机器人的运动性能、精度、稳定性等都有着至关重要的影响。
本文将讨论六轴工业机器人控制系统的设计与实现。
一、六轴工业机器人的基本结构六轴工业机器人通常由机械结构、执行器、传感器、控制器等组成。
其基本结构由底座、腰关节、肩关节、手腕关节、手部和末端执行器等部分组成。
六个关节分别控制机器人在空间的运动,机械臂末端进行工件的抓取、移动等操作。
传感器用于实时监测机器人的位置、力度、速度等参数,以便控制系统进行实时调整。
1. 高精度:机器人的运动需要保证高精度和稳定性,尤其是在需要进行精确定位、装配等操作时,对控制系统的要求更高。
3. 多轴协同控制:六轴机器人的每个关节都需要独立控制,同时又需要协同运动,因此控制系统需要能够实现多轴联动控制。
4. 安全性:在工业生产中,机器人可能会与人类操作者进行接触,因此对于机器人的安全性有着严格的要求。
控制系统需要能够实时监测机器人的状态,避免发生意外情况。
5. 灵活性:机器人可能需要进行不同的任务,因此控制系统需要具备一定的灵活性,能够快速切换任务并进行相应的控制。
1. 控制策略选择:一般来说,六轴机器人的控制可采用基于位置控制、力控制和混合控制等策略。
在不同的应用场合,控制策略的选择将影响机器人的运动性能和控制系统的设计。
2. 控制器硬件设计:控制器是机器人控制系统的核心部分,其硬件设计需要满足高性能、高实时性的要求。
通常采用的是嵌入式系统或者工业PC等硬件平台,以满足对控制系统的高要求。
3. 控制器软件设计:控制器的软件设计包括实时控制算法的设计、运动规划算法的实现、系统安全监测等方面。
还需要实现通信接口、人机界面等功能,以便人机交互和远程监控等需求。
实时高效的工业机器人控制系统设计【摘要】本文提出了一种基于工业控制计算机、实时控制系统和高速通讯总线为基础的先进机器人控制体系结构。
利用工业控制计算机强大计算能力,将计算结果在每一个伺服周期内通过高速总线传递给各轴伺服驱动器,作为原有线性控制器的前馈补偿,以期达到较好的控制效果。
【关键词】实时控制系统;高速通讯总线;自动化随着机械自动化水平的提高,机器人以其在机械结构、适用范围、灵活性、成本以及维护等方面的优势,使其应用渐为广泛,并成为一种发展趋势。
而机器人控制系统的性能决定着机器人的品质,目前主流高性能运动控制系统的发展趋势是在具有很强计算能力的计算机上集成高性能实时系统和高速通讯总线的控制架构。
以该种控制结构完成具有前馈补偿的控制结构。
运动学、动力学和用于前馈补偿的伺服控制算法均在计算性能强大的工控机中完成。
在每一个伺服周期内伺服控制指令通过高速通讯总线传递给驱动器,同时在同一个伺服周期内完成运动指令的反馈。
伺服控制指令被叠加到电流回路指令给定端作为前馈补偿,其可以补偿动力学耦合和结构柔性产生的非线性效应。
控制指令可以根据相应的控制算法进行实时计算。
在前馈补偿作用下,每一个主动关节即可以视为一个简单的单输入单输出系统,从而采用驱动器内部的线性控制器即可获得较好的控制性能。
1 Windows 内嵌实时系统目前由于Windows 良好的人机界面和交互功能,在工控领域应用越来越广泛,但由于其并不是一个实时系统,时间片设定在 5 毫秒以下时,其便很难保持精确稳定的运行。
从而用于实时性要求较高的工控场合会存在很多的局限性,如完成伺服层的伺服调试,需要1个毫秒以下的精确定时。
为了解决这一矛盾,出现了很多利用Window 环境进行扩展或者内嵌实时内核的实时系统。
其中德国Beckhoff 公司的TwinCAT 系统就是其中之一,TwinCAT(The Windows Control and Automation Technology)的原意是指“基于Windows 的控制和自动化技术”,其通过在Windows 环境下内嵌实时内核的方法,将每一台PC 变为多个具有很强大处理能力的PLC 集合,并同时具有良好的开发和编程环境,符合IEC-61131-3 标准。
嵌入式系统中的实时操作系统嵌入式系统是一种特殊的计算机系统,通常嵌入在其他设备中,用于控制和管理设备的功能。
在嵌入式系统中,实时操作系统(RTOS)起着至关重要的作用。
本文将介绍嵌入式系统中的实时操作系统的概念、特点以及在嵌入式开发中的应用。
一、实时操作系统的概念实时操作系统是一种专为嵌入式系统设计的操作系统,具有高度可预测性和响应性能。
它的主要特点是能够在严格的时间约束下处理任务,并能够及时响应外部事件。
实时操作系统分为硬实时系统和软实时系统两种类型。
硬实时系统要求任务必须在预定的时间内完成,不能有任何延迟。
这种系统广泛应用于一些对时间要求非常严格的领域,例如航空航天和医疗设备。
软实时系统对任务的时间要求相对较轻松,任务可以在一定范围内有一定的延迟。
这种系统适用于一些对时间要求较为宽松的场景,例如智能家居和工业控制。
二、实时操作系统的特点1.提供任务调度和管理:实时操作系统能够根据任务的优先级和时间要求进行任务的调度和管理,确保高优先级任务能够及时得到处理。
2.保证任务的及时响应:实时操作系统能够在严格的时间约束下响应任务,确保任务按时完成,并能够实时处理外部事件。
3.可靠性和稳定性:实时操作系统需要具备高度的可靠性和稳定性,以确保嵌入式系统的正常运行。
4.低内存占用和低功耗:嵌入式系统通常具有资源有限的特点,实时操作系统需要占用较少的内存,并尽量降低功耗,以提高系统的效率和续航时间。
三、实时操作系统在嵌入式开发中的应用实时操作系统在嵌入式开发中有广泛的应用,以下是一些常见的应用场景:1.工业控制:实时操作系统可以用于工业自动化系统中,例如控制生产线上的机器人进行精确的动作控制,保证生产线的高效运行。
2.汽车电子:实时操作系统在汽车电子系统中发挥着重要作用。
例如,车载信息娱乐系统需要及时响应驾驶员的指令,并能够处理导航和娱乐功能。
3.医疗设备:医疗设备通常对时间要求非常严格,实时操作系统可以保证医疗设备准确地进行数据采集和处理,并及时响应医生的指令。
嵌入式开发中的机器人技术机器人技术是嵌入式开发中的重要领域之一,它的出现和发展为人类带来了巨大的便利与机遇。
随着科技的日新月异,机器人技术在各个行业中得到了广泛应用,对于推动社会进步和提升人类生活质量起到了重要作用。
本文将从机器人技术的定义、嵌入式开发背景、机器人技术的应用以及发展前景等方面进行论述。
一、机器人技术的定义机器人技术是指通过人工智能、图像识别、运动控制、传感器等先进技术,使机器具备模仿、理解、判断、执行和交流等能力,从而能够代替人类完成各种工作任务的一门技术。
机器人技术可以分为工业机器人、服务机器人、医疗机器人、农业机器人等多个领域,并通过嵌入式开发将其应用到实际环境中。
二、嵌入式开发的背景嵌入式开发是指以嵌入式系统为基础,通过对硬件和软件的整合开发,实现特定功能的嵌入式应用开发过程。
嵌入式系统是一种特定功能和性能的计算机系统,根据不同的应用领域拥有自己独特的硬件架构和软件特点。
嵌入式开发主要以 C、C++、汇编语言等为基础,通过开发环境和工具链等进行系统软硬件的开发和调试,从而满足特定应用的需求。
三、机器人技术在嵌入式开发中的应用1. 工业机器人工业机器人是机器人技术应用最为广泛的领域之一。
通过嵌入式开发,工业机器人能够精确执行生产线上的各种工作任务,例如焊接、装配、搬运等。
通过嵌入式系统的精确控制,工业机器人能够实现高速、高精度和高效率的生产,提升工业制造业的生产能力和竞争力。
2. 服务机器人服务机器人是指用于提供人们日常生活服务的机器人,例如家庭清洁机器人、导航机器人、餐厅服务机器人等。
通过嵌入式开发,服务机器人能够实现智能化的导航、语音识别、人脸识别等功能,从而为人们提供更加便捷的生活服务体验。
3. 医疗机器人医疗机器人在手术、康复护理和病房服务等领域有着广泛的应用。
通过嵌入式开发,医疗机器人能够实现高精度的手术操作、康复治疗和患者的监测与护理。
嵌入式系统的实时性和可靠性使得医疗机器人能够在医疗环境中安全地工作,并提升了医疗技术的水平。
机器人控制的实时操作系统设计与实现随着人工智能和自动化技术的不断发展,机器人在工业、医疗、物流等各个领域中的应用越来越广泛。
在这些应用中,机器人控制的实时操作系统起着至关重要的作用。
为了满足机器人控制的要求,需要设计和实现一种高效、稳定、可扩展的实时操作系统。
一、实时操作系统的概述实时操作系统是一种专门用于控制实时任务的操作系统。
它的特点是能够在预定时间内完成操作,保证任务的实时性和可靠性。
实时操作系统可以分为硬实时操作系统和软实时操作系统。
硬实时操作系统通常被用于对实时性要求非常高的应用,如航空航天、核电站、医疗设备等。
它们需要保证任务的完成时间在预定时间内,否则将会有严重的后果。
软实时操作系统则通常被用于对实时性要求相对较低的应用,如工业控制、网络通信、嵌入式系统等。
二、机器人控制的实时操作系统要求对于机器人控制来说,实时性和可靠性是非常重要的要求。
机器人需要快速地响应各种复杂的环境变化和任务指令,并能够在预定时间内完成任务。
因此,机器人控制的实时操作系统需要满足以下要求:1. 高实时性。
机器人控制需要快速响应环境的变化,因此实时性非常重要。
短暂的延迟可能会导致机器人的操作失败,甚至造成严重的后果。
2. 可靠性。
机器人的操作需要保证高可靠性,因为机器人可能在危险或者难以达到的位置进行操作。
一旦机器人出现故障,可能会对环境和人造成巨大的危害。
3. 可扩展性。
随着机器人的使用不断增加,操作系统需要具有可扩展性,以便支持更多的机器人和更多的任务。
4. 高效性。
机器人控制需要高效的处理器,以确保机器人的快速响应和准确性。
三、实时操作系统的设计与实现实时操作系统的设计与实现需要考虑到各种因素,包括机器人的具体要求、处理器的性能和可靠性、编程语言和算法等。
以下是一些关键的方面:1. 实时内核设计。
实时内核是实时操作系统的核心,它需要保证实时性和可靠性,同时支持多任务处理。
实时内核的设计应该考虑到任务切换的快速性,通信的可靠性以及多任务之间的协调。
工业机器人嵌入式实时操纵系统
1操纵系统结构
工业机器人操纵系统是一个多任务并行并具有很高实时性的系统。
当前主流操纵系统大致分为两种结构[10]。
一是多处理器主从式的操纵系统。
主机一般为IPC,使用INTEL的CPU,运行的是非实时操作系统,例如windows。
在主CPU中主要运算一些非实时任务。
从机可能是运动操纵卡或运动操纵器,负责执行伺服操纵等实时性高的任务,其CPU一般为嵌入式的DSP,负责复杂的信号处理和伺服操纵等运算,再加上FPGA芯片负责系统I/O信号处理。
第二种系统结构是单处理器配合实时操作系统。
在这种操纵器中,所有的任务都要在一个CPU上实行,这就对各个任务如何合理使用CPU时间提出了极大的要求。
一开始的机器人多采纳单个处理器,但因为当时处理器性能不高,且不能运行实时操作系统,难以满足对机器人实时性以及复杂的伺服操纵的要求。
所以随着时间的推移,多处理器结构占据了主流。
近年来,嵌入式实时操作系统的进展给单机处理器完成机器人操纵任务提供了可能。
通过实时操作系统对所有任务实行CPU时间分配,达到多任务并行处理的效果和极短的中断响应时间,能够达到机器人操纵需求。
操纵系统对输入数字信号的处理和伺服电机的操纵等都在μC/OS-III 中编写用户应用代码来完成。
要使用μC/OS-III,首先要完成
μC/OS-III在STM32F4上的移植。
这其中涉及对源代码中与CPU相关的代码的修改,包括μC/OS-III中CPU相关代码和μC/CPU中相关代码。
移植好后,通过系统配置模块来给μC/OS-III相对应模块和用户代码文件实行参数设置,便可在μC/OS-III系统下,利用μC/OS-III 提供的丰富的API函数来编写用户任务代码。
BSP文件包含操纵板上所有外设的初始化,这样用户才能使用这些外设来输出输入相对应的信号。
对用户代码,即软件结构的分析将在下一节实行。
这样,系统软硬件架构都是具有模块化和开放性特征,便于修改和升级。
2操纵系统软件结构
在实时操作系统中,需要把要完成的工作分为多个任务来实现。
每个
任务负责其中一部分工作,由μC/OS-III负责多任务的治理。
每个任
务都调用μC/OS-III的APIOSTaskCreate()来创建。
创建一个任务时,系统为每个任务分配了一个任务操纵块(TCB)、一个堆栈、一个优先级
和其他一些重要参数。
任务一般设计为无限循环类型任务,每个任务
必须调用μC/OS-III的服务函数,使该任务进入等待某个事件的状态。
机器人系统需要有中断处理,每个中断服务程序都按照μC/OS-III中
中断函数实行定义。
各个任务和中断服务程序间通过系统信号量
OS_SEM和消息队列OS_Q等实行通信。
利用实时操作系统的任务调度来实现任务的合理分配,满足系统硬实时性要求和多任务并行的要求。
机器人操纵系统会有很多中断请求,比如USART接收到数据、以太网
操纵器接收到数据帧、ADC转换器完成传感器信号转换等,这些外设会向系统请求中断,系统会在极短的时间内挂起当前运行的任务,进入
中断服务程序。
每个中断服务程序将给不同的任务公布信息,使等待
该中断的任务进入运行态。
整个操纵系统软件是采纳模块化的编写,
用户能够很方便增减模块,修改软件功能。
整个操纵系统的软件结构
如图2所示,每个矩形框代表一个模块。
本文的操纵系统软件是用一
台四轴工业机器人的具体应用作为示范。
由上图可知,软件在运行时,每个系统周期触发一次系统节拍中断,系统中断将使能系统状态监控、系统状态显示和增量编码器信号处理等任务。
通信中断服务负责接收
由示教器或者远程主机下发的数据帧,并交给任务定义代码实行数据
帧的解析,从而得知用户希望机器人操纵器实行的任务,如系统初始化、系统参数设置、原点复位、数据记录、手动示教和自动码垛等。
轨迹规划任务负责对码垛机器人在抓取点和码垛点之间的运动轨迹实
行规划,规划好的轨迹会发送给伺服操纵任务,伺服操纵任务负责四
轴电机的闭环操纵,使电机精确跟随规划好的轨迹实行运动。
外部中
断服务主要是响应数字输入口的信号变化,外部中断服务将触发报警
任务、模式切换任务等。
每个任务模块根据重要性不同分配不同的优
先级。
例如系统状态显示任务不需要极大的实时性,给予其较低的优
先级;伺服操纵任务是极其重要的任务,决定了机器人的运动速度和精度,给予其较高的优先级。
机器人系统运行时出错必须急停,所以报
警急停任务使用最高优先级。
对于其他用途的工业机器人,系统软件
结构与本文结构并无太大差别,用户自行增减任务和修改算法便可实
现对不同机器人的操纵。
3系统实时性分析和性能测试
对于工业机器人系统朝着更高的运行速度和精度进展的趋势,每个关
节间电机运动的同步性、电机运动轨迹的精确性、对系统中断的响应
速度都非常重要。
这就意味着操纵系统需要极大的实时性,系统软件
必须对相关任务实行快速计算,并且任务之间的切换也要非常快。
不
同的任务被给予不同的优先级,在每个系统周期内,先执行优先级高
的任务,再执行优先级低的任务。
一旦有中断服务程序,CPU正在执行的任务将被挂起,先执行完中断服务程序。
如果中断服务程序使另一
个更高优先级的任务进入就绪态,则先执行该任务,后执行被中断的
任务。
最后回到最低优先级任务。
评定实时操作系统性能的好坏,具
体指标通过任务切换时间、中断响应时间,任务执行时间等实行评定。
在本文介绍的操纵系统中,系统时钟节拍设定为为1ms,在一个系统节拍内,典型的软件执行时序如图3所示。
图3中,A为系统空闲任务,空闲任务执行时间越久说明CPU使用率越低;B为时钟节拍中断;C为时
钟节拍任务;D为系统状态发送任务;E为串口接收中断,接收上位机下
发的指令;F为系统消息队列;G为电机运动任务,负责闭环操纵,1ms
发送一次指令至驱动器。
对于系统代码执行时间的测量,μC/OS-III提供了简单且精确的函数OS_TS_GET(),此函数能够记下当前处理器的时间戳。
在需要测量的代
码前后记录下时间戳,二者的值之差为处理器在这段时间使用了多少
个时钟周期,对于本文使用的处理器,时钟周期为1/168000000s。
将
测量的时间通过串口返回到上位机,能够得到,A到B的中断响应时间为1μs左右,A到D的时间为5μs左右,C到D的任务切换时间为
1μs左右,G任务代码执行时间为10μs左右。
对于当前工业机器人
中断响应不超过500μs的需求,本操纵系统能在10μs内执行完中断
服务并使能相关任务,完全满足需求。
对于1ms的伺服操纵周期来说,
本系统10μs内便能发送四路电机的速度指令,每路电机运动的时间
差能够忽略,可认为电机实现了同步运行。
同时,在测试时,通过
μC/OS-III内嵌测试功能得到的CPU使用率未超过5%,说明了MCU性
能足以保证机器人正常运作,同时有充足水平运算更复杂的操纵算法。
4结束语
工业机器人嵌入式实时操纵系统。