工业机器人嵌入式实时控制系统(精品).docx

上传人:安*** 文档编号:17886104 上传时间:2022-05-26 格式:DOCX 页数:7 大小:19.51KB
返回 下载 相关 举报
工业机器人嵌入式实时控制系统(精品).docx_第1页
第1页 / 共7页
工业机器人嵌入式实时控制系统(精品).docx_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《工业机器人嵌入式实时控制系统(精品).docx》由会员分享,可在线阅读,更多相关《工业机器人嵌入式实时控制系统(精品).docx(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、工业机器人嵌入式实时控制系统1控制系统构造工业机器人控制系统是一个多任务并行并具有很高实时性的系统。目前主流控制系统大致分为两种构造10。一是多处理器主从式的控制系统。主机一般为IPC,使用INTEL的CPU,运行的是非实时操作系统,例如windows。在主CPU中主要运算一些非实时任务。从机可能是运动控制卡或运动控制器,负责执行伺服控制等实时性高的任务,其CPU一般为嵌入式的DSP,负责复杂的信号处理和伺服控制等运算,再加上FPGA芯片负责系统I/O信号处理。第二种系统构造是单处理器配合实时操作系统。在这种控制器中,所有的任务都要在一个CPU上进行,这就对各个任务怎样合理使用CPU时间提出了

2、很高的要求。一开场的机器人多采用单个处理器,但由于当时处理器性能不高,且不能运行实时操作系统,难以知足对机器人实时性以及复杂的伺服控制的要求。所以随着时间的推移,多处理器构造占据了主流。近年来,嵌入式实时操作系统的发展给单机处理器完成机器人控制任务提供了可能。通过实时操作系统对所有任务进行CPU时间分配,到达多任务并行处理的效果和极短的中断响应时间,能够到达机器人控制需求。本文开发的工业机器人控制系统中的运动控制器是采用上述第二种构造,采用意法半导体公司的STM32F4高性能MCU作为控制器处理器,以嵌入式实时操作系统C/OS-III作为软件平台,在系统中参加不同的任务模块,完成对四轴搬运机器

3、人的运动控制。C/OS-III是Micrium公司推出的第三代实时操作系统11,不同于前一代C/OS-II,专门对Cortex-M4内核CPU进行优化,能够利用Cortex-M4的NVIC实现硬件级的中断响应。同时,能够实现1ms的系统时钟节拍,具有抢占式和时间片轮转任务切换,支持无限个进程优先级,能够以最短的时间进入中断,每个任务之间的切换时间为微秒级别。同时它采用标准C语言进行编写,方便用户进行编程,任务增减和算法修改。工业机器人控制系统构造如图1所示。STM32F4是采用当下最高性能的Cortex-M4微控制器内核的MCU,通过MCU本身具有PWM波形生成功能的定时器生成PWM互补信号,

4、发送给伺服驱动器来控制伺服电机;通过带有增量编码器接口功能的定时器计算驱动器返回的增量编码器AB向脉冲信息,由此可计算得到电机每个时刻的位置、速度、加速度信息;通过拥有5V容忍的I/O引脚处理机器人系统数字输入信号以及给机器人系统发送数字输出信号;通过MCU本身的A/D外设将传感器信号转为MCU能够识别的数字量;通过MCU的USAT外设与示教器进行串口通信。此外,MCU提供的CAN总线和Ethernet接口使机器人系统具有可拓展性,能够连接其他各种设备进行通信。由于STM32F4本身带有的多种外部设备和相当数量的I/O接口,不需要再添加其他的外设芯片便能够知足一台工业机器人的控制需要。大大减少

5、了控制器构造的复杂程度,降低了成本。控制系统对输入数字信号的处理和伺服电机的控制等都在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文件包含控制板上所有外设的初始化,这样用户才能使用这些外设来输出输入相应的信号。对用户代码,即软件构造的分析将

6、在下一节进行。这样,系统软硬件架构都是具有模块化和开放性特征,便于修改和升级。2控制系统软件构造在实时操作系统中,需要把要完成的工作分为多个任务来实现。每个任务负责其中一部分工作,由C/OS-III负责多任务的管理。每个任务都调用C/OS-III的APIOSTaskCreate()来创立。创立一个任务时,系统为每个任务分配了一个任务控制块(TCB)、一个堆栈、一个优先级和其他一些重要参数。任务一般设计为无限循环类型任务,每个任务必须调用C/OS-III的服务函数,使该任务进入等待某个事件的状态。机器人系统需要有中断处理,每个中断服务程序都根据C/OS-III中中断函数进行定义。各个任务和中断服

7、务程序间通过系统信号量OS_SEM和消息队列OS_Q等进行通信。利用实时操作系统的任务调度来实现任务的合理分配,知足系统硬实时性要求和多任务并行的要求。机器人控制系统会有很多中断请求,比方USAT接收到数据、以太网控制器接收到数据帧、ADC转换器完成传感器信号转换等,这些外设会向系统请求中断,系统会在极短的时间内挂起当前运行的任务,进入中断服务程序。每个中断服务程序将给不同的任务信息,使等待该中断的任务进入运行态。整个控制系统软件是采用模块化的编写,用户能够很方便增减模块,修改软件功能。整个控制系统的软件构造如图2所示,每个矩形框代表一个模块。本文的控制系统软件是用一台四轴工业机器人的详细应用

8、作为示范。由上图可知,软件在运行时,每个系统周期触发一次系统节拍中断,系统中断将使能系统状态监控、系统状态显示和增量编码器信号处理等任务。通信中断服务负责接收由示教器或者远程主机下发的数据帧,并交给任务定义代码进行数据帧的解析,进而得知用户希望机器人控制器进行的任务,如系统初始化、系统参数设置、原点复位、数据记录、手动示教和自动码垛等。轨迹规划任务负责对码垛机器人在抓取点和码垛点之间的运动轨迹进行规划,规划好的轨迹会发送给伺服控制任务,伺服控制任务负责四轴电机的闭环控制,使电机准确跟随规划好的轨迹进行运动。外部中断服务主要是响应数字输入口的信号变化,外部中断服务将触发报警任务、形式切换任务等。

9、每个任务模块根据重要性不同分配不同的优先级。例如系统状态显示任务不需要很高的实时性,给予其较低的优先级;伺服控制任务是极其重要的任务,决定了机器人的运动速度和精度,给予其较高的优先级。机器人系统运行时出错必须急停,所以报警急停任务使用最高优先级。对于其他用处的工业机器人,系统软件构造与本文构造并无太大差异,用户自行增减任务和修改算法便可实现对不同机器人的控制。3系统实时性分析和性能测试对于工业机器人系统朝着更高的运行速度和精度发展的趋势,每个关节间电机运动的同步性、电机运动轨迹的准确性、对系统中断的响应速度都非常重要。这就意味着控制系统需要很高的实时性,系统软件必须对相关任务进行快速计算,并且

10、任务之间的切换也要非常快。不同的任务被赋予不同的优先级,在每个系统周期内,先执行优先级高的任务,再执行优先级低的任务。一旦有中断服务程序,CPU正在执行的任务将被挂起,先执行完中断服务程序。假如中断服务程序使另一个更高优先级的任务进入就绪态,则先执行该任务,后执行被中断的任务。最后回到最低优先级任务。评定实时操作系统性能的好坏,详细指标通过任务切换时间、中断响应时间,任务执行时间等进行评定。在本文介绍的控制系统中,系统时钟节拍设定为为1ms,在一个系统节拍内,典型的软件执行时序如图3所示。图3中,A为系统空闲任务,空闲任务执行时间越久讲明CPU使用率越低;B为时钟节拍中断;C为时钟节拍任务;D

11、为系统状态发送任务;E为串口接收中断,接收上位机下发的指令;F为系统消息队列;G为电机运动任务,负责闭环控制,1ms发送一次指令至驱动器。对于系统代码执行时间的测量,C/OS-III提供了简单且准确的函数OS_TS_GET(),此函数能够记下当前处理器的时间戳。在需要测量的代码前后记录下时间戳,二者的值之差为处理器在这段时间使用了多少个时钟周期,对于本文使用的处理器,时钟周期为1/168000000s。将测量的时间通过串口返回到上位机,能够得到,A到B的中断响应时间为1s左右,A到D的时间为5s左右,C到D的任务切换时间为1s左右,G任务代码执行时间为10s左右。对于目前工业机器人中断响应不超

12、过500s的需求,本控制系统能在10s内执行完中断服务并使能相关任务,完全知足需求。对于1ms的伺服控制周期来讲,本系统10s内便能发送四路电机的速度指令,每路电机运动的时间差能够忽略,可以为电机实现了同步运行。同时,在测试时,通过C/OS-III内嵌测试功能得到的CPU使用率未超过5%,讲明了MCU性能足以保证机器人正常运作,同时有足够能力运算更复杂的控制算法。4结束语本文提出的工业机器人实时控制系统采用C/OS-III实时操作系统和单MCU构造,利用该实时操作系统API进行各个任务模块定义,通过实时内核的任务调度和中断处理为系统硬实时性提供了保障,通过MCU强大的运算功能保证了电机运行同步性。同时整个软件系统采用标准C语言进行编程,方便用户添加删除模块,具有可拓展型和开放性。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 升学试题

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁