如何写论文?写好论文?免费论文网提供各类免费论文写作素材!
当前位置:免费论文网 > 美文好词 > 优质好文 > linux,机器人

linux,机器人

来源:免费论文网 | 时间:2017-05-10 07:36 | 移动端:linux,机器人

篇一:基于RT-Linux机器人控制系统实时性的研究

基于RT-Linux机器人控制系统实时性的研究

摘要

本文结合《实时系统与控制》这门课的知识,对提高机器人控制系统的实时性做深入探讨,主要是在了解机器人实时控制系统的运行调度与运行管理机制的情况下,探讨基于RT-Linux平台下提高机器人控制系统实时性的可能性,从任务调度的可抢占性及低延迟中断处理等角度来分析和论证该方案的有效性,同时在此基础上划分机器人控制系统任务,以达到进一步提高系统的实时性性能的目的。最后我们对理论分析进行简单的实验验证,希望对机器人控制系统实时性提高有一个初步认识,为以后更深入的研究打下基础。

关键词:机器人; 实时性 ;RT-Linux;划分任务

1引言

随着仿人机器人技术的高速发展,机器人能够实现的功能也越来越强大,这无疑对机器人控制器的信息处理速度提出了更高的要求,如何在现有的条件下,进一步提高机器人控制系统的实时性已然成为国内外研究机器人技术的一个很重要的课题。由于本人对机器人控制很感兴趣,所以希望能够将所学《实时系统与控制》的理论知识与该领域的研究热点结合起来,从提高系统实时性的角度探讨如何完善机器人控制系统。

2需求分析:

实时系统是能够在确定的时间内执行计算或处理事务并对外部事件作出响应的计算机系统。仿人机器人是一个典型的实时系统,对工业机器人控制来说,尤其在远程机器人控制中,如果不能很好地满足系统所需的实时性要求,它的很多功能就失去了意义。以图1所示远程机器人控制器的系统为例:

图1远程机器人监控系统

该系统中的机器人控制器运行于一台PeiumⅢ工业控制微型计算机(IPC)上。在该IPC上安装了位置控制卡,其输出直接与机器人伺服电机驱动器相连,由其直接驱动机器人本体上的伺服电机来完成相应的动作。图形仿真与监控系统运行于另一台微机上。PT2600机器人共有五轴,它有两块PCL2832三轴多功能位置卡,如果位置误差反馈计数超过阈值,说明机器人运动异常, 三轴位置控制卡以毫秒级发出DDA中断请求。

对DDA中断的响应的快慢是决定整个机器人控制器实时性能的关键指标。我们必须及时响应这个中断,以保证机器人的安全运行。

3问题提出

对机器人控制系统的中断的响应速度一定程度上决定了该系统的实时性的性能,又由于该系统是由多个环节组成,其他环节的处理速度也会对系统的实时性产生一定的影响,怎样才能全面提高该机器人控制系统的实时性呢?

4问题分析:

提高该系统实时响应速度的方法可以针对系统各个环节有所不同,但总的来说,都可以通过优化系统的软、硬件结构使之得到改善。硬件角度:(1)Linux是一个典型的分时多任务操作系统,所以我们要寻找一种实时操作系统既具备Linux的优点又能够达到机器人控制的实时性要求;(2)采用多线程机制将机器人控制器的功能加以划分。软件角度:研究适合机器人控制需要的实时调度算法,进一步来提升它的实时性。

本文主要从硬件方面,提出并实现一种将RT-Linux与Linux结合的控制系统,并在此基础上采用多线程机制将机器人控制器的功能加以划分来提高机器人控制的实时性。

5研究过程

5.1 RT-Linux平台对实时性的提高

5.1.1 Linux在实时性上的弱点

Linux虽然具备很多有利于工业机器人控制的优点,但是它是一个分时操作系统,所以在实时性上有着同Windows 相类似的欠缺。Linux不能满足实时性的主要原因来自于Linux的分时调度机制和核心的不可抢占性,主要由以下两点:

a.Linux采用时间片轮转的方式来调度CPU时间,这种方法是不利于实时进程的。时间片轮转调度方法使实时进程的执行受到系统复杂性和不可预测性的影响,同时也受到其它进程的影响。

b.运行在内核模式下的Linux进程是不能被其它进程抢占的,也就是说,一旦一个进程进行系统调用进入了核心态,除非系统调用结束或者进程本身被阻塞,它将一进运行下去。即使是优先级比进入核心态的进程高的进程,也不得不等待。但是一个系统调用可能会进行很长时间,这对于某些实时进程是不可容忍的。

还有一点就是标准 Linux内核使用禁止中断的方法作为同步机制,通过向 x86 处理器送“sti”、“cli”、“iret”宏指令来开中断、关中断及中断返回。由于开中断和关中断的混合使用使得中断的分派延时不可预测。

5.1.2 RT-Linux的改进

图2是RT-Linux的体系结构图。

任务抢占:由图2可以看出,RT-Linux将原先的Linux操作系统内核作为一个执行在一个小的实时操作系统之下的任务。Linux内核仅在没有实时任务时才能运行,Linux任务不能阻塞任何中断,在任何实时任务到来时总是可以被抢占的。

中断实现:RT-Linux中的实时任务是一个可加载的核心模块。从图3可知,实时内核直接管理硬件中断,因此,实时内核操纵着机器的响应时间,原来的Linux内核就无法影响实时任务了。RT-Linux中软中断是正常的Linux内核中断,硬中断是真正的实时中断。

RT-Linux将标准Linux内核中的中断处理指令cli、sti和iret分别用汇编宏代码S_CLI

S_STI、S_IRET替换。RT-Linux 引入一个虚拟层,采用在 Linux 内核和中断控制硬件之间增加一层仿真软件的方法截取所有的硬件中断,将所有的中断分成 Linux中断和实时中断两类,如果是实时中断,则继续向硬件发出中断,如果是普通Linux 中断,就设置一个软中断标志SFIF,等到 RT-Linux 内核空闲时通过软中断传递给Linux 内核去处理。这样就使得 Linux 永远不能禁止中断,无论 Linux 处在什么状态,它都不会对实时系统的中断响应时间增加任何延迟,以致时间上的不可预测性。

图3 RT-Linux的中断结构

调度策略:目前为止,在RT-LINUX中采用两种调度策略。一种是基于优先级的抢占式调度算法;对于有N个任务的实时调度来说,满足公式(1) 的实时任务将能够成功的调度,每个任务都不会超过它们的最终期限,对于周期性任务可以采用单调率调度算法,即周期短的任务能够获得较高的优先级。

CC1C2C3???...?n?T1T2T3Tnn2?11

n…………………………………………………………………(1)

Ci为任务I最坏情况下执行的时间;

Ti为任务I执行时间;

另一种是Ismael Ripoll实现的EDF算法。

调度策略将Linux视为赋予最低优先级的实时任务,仅仅在实时系统没有其它任务时运行,它和实时任务之间的转换依据上述提及的软中断状态而定。通过这样一种设计方法,将标准的LINUX核心改成一个可抢占的、具有低延迟中断处理的实时系统。

内存管理:RT-Linux 的实时内核和实时线程都是用 Linux 可装载模块方式得以实现的,因此 RT-Linux 的实时内核和实时线程都是运行在单一的 Linux 内核态地址空间。在 Linux 内核态地址空间下内存按照页面方式管理,按照段页式方式进行访问,Linux 内核将定期将使用频率高的页面装入内存,并将使用频率低的页面从内存中换出,因此一旦出现应用程序的访问内容不在内存中时,就会出现缺页异常的现象,这对于实时任务来说,会造成时间上的不可预测性,是严格禁止的。RT-Linux 对内存访问方式进行了修改,不再采用“按需分页”方式,而是内核中的每一个虚拟地址必然在物理内存的页面上有一单元与之一一对应,实时任务可以在任何情况下第一时间从内存中读写自己所需要的数据,这样从根本上杜绝了缺页异常情况的发生,从而内存管理的实时性能得到了极大改进。

5.1.3 RT-Linux平台下机器人控制系统实时性的实现

中断实现:机器人控制中影响实时性的关键处即为对DDA的响应速度。

我们将图1远程机器人监控体系划分为实时域图4和非实时域图5。

(1)RT-Linux中的实时模块

实时域中实现的是实时设备驱动程序,负责PCL-832位置控制卡的控制与中断响应,驱动机器人本体运动;实时域中的软件模块主要是三轴位置控制卡(PCL一832)的设备驱动程序。三轴位置控制卡以毫秒级发出DDA中断请求,对DDA中断的响应的快慢是决定整个机器人控制器实时性能的关键指标。实时设备驱动程序位于RT-Linux的实时域中,享有系统最高实时优先级。RT-Linux中的三轴位置控制卡的实时设备驱动程序必须处理以下事务:1)响应三轴位置卡的插补周期中断(DDA),并输出位置脉冲数值;2)响应三轴位置卡的误差溢出中断(Ov),通知应用程序进行相应处理;3)为应用程序提供服务,如读写I/O端口、设置参数、读取状态等。

图4.RT-Linux中的实时模块

(2)Linux中的非实时模块

非实时域中的软件模块由机器人控制器和远程监控子系统组成。本地的机器人控制器负责将文本机器人指令解释成相应的位置脉冲数据,通过先进先出(RT- FIFO)缓冲队列发送给实时域中的驱动程序驱动机器人本体运动。

篇二:可以将路由器变成社交网络机器人的 Linux 蠕虫

可以将路由器变成社交网络机器人的 Linux 蠕虫

安全公司ESET Canada Research的研究人员发现了一个取名为Linux/Moose的恶意程序。

它针对的是调制解调器、家用路由器和其它嵌入式计算机,将这些设备变成一个代理网络,用于创建伪造的社交网络账号和展开欺诈。该蠕虫还能劫持路由器的DNS服务,将DNS请求路由到一个恶意服务器,窃取未加密的社交媒体cookies,如Instagram,利用Cookie去follow虚假账户。

篇三:基于嵌入式Linux的小型移动机器人远程控制系统设计

(申请工学硕士学位论文)

基于嵌入式Linux的

小型移动机器人远程控制系统设计

培养单位:物流工程学院

学科专业:机械电子工程

研 究 生:杨小铸

指导教师:李文锋 教授

2007年5月

武汉理工大学硕士学位论文

分类号

UDC

密 级 学校代码

学 位 论 文

中 文 基于嵌入式Linux的小型移动机器人题 目远程控制系统设计英 文 题 目研究生姓名:

姓名 李文锋职称 教授 学位 博士

指导教师 单位名称物流工程学院 邮编 申请学位级别硕 士学科专业名称 机械电子工程 论文提交日期 学位授予单位武汉理工大学学位授予日期 答辩委员会主席评阅人 朱宏辉

2007年5月

武汉理工大学硕士学位论文

摘 要

随着互联网技术的不断发展,基于网络的机器人远程控制日益受到了人们的重视。机器人的远程控制可以使操作人员远离具有危险性的操作环境,避免人身伤害,可应用在星际考察、水下作业和核工业等多个领域。可以预见,基于网络的机器人远程控制技术具有良好的发展前景和广阔的应用空间。

嵌入式Linux是一种源代码开放、可裁剪、多任务和多线程的操作系统,能支持所有标准的因特网协议,易于移植到各种硬件平台之上,如X86、ARM、MIPS和PowerPC等。

本文设计的移动机器人远程控制系统,以嵌入式Linux为核心,在一块小的ARM控制板上集成了Web服务器,以及一个基于socket连接的机器人网络控制服务器,并以无线的方式接入Internet,满足了机器人的小型化、并行化、移动性和群体性协作的要求。远程用户可以利用网络控制服务器对机器人进行编程控制,完成给定的任务,同时能通过网页浏览器查看机器人的状态信息和环境的图像信息,监视机器人的运动。

论文的主要研究成果和创新如下:

(1) 构建基于嵌入式Linux的系统平台,包括引导装载程序、Linux内核移植、USB无线网卡和USB摄像头的驱动程序;

(2) 实现移动机器人运动控制与传感器信息采集,包括调速电机的控制、内部传感器信息采集、图像信息采集,及无线传感网络数据的获取;

(3) 设计基于socket连接的机器人网络控制服务器,包括采用TCP传输协议的服务程序编写和控制接口的实现;

(4) 构造基于Web服务器Boa的机器人远程监控系统,实现基于网页的机器人控制、图像信息的发布、机器人状态信息和无线传感网络数据的查询等;

(5) 采用USB接口和RS232接口实现机器人底层控制与上位机的连接,增强系统的开放性和扩展能力。

关键词:移动机器人,远程控制,嵌入式Linux,网络控制服务器,Web监控 I

武汉理工大学硕士学位论文

Abstract

With the rapid development of Internet, the robot remote control based on Internet has increasingly got more attension than ever. The robot remote control can make the operator keep away from the dangerous scene to avoid life injury, which can be applied in out space explore, underwater operation and nuclear industry and other fields. It can be concluded that the robot remote control technology based on Internet has good development trend and wide application prospect.

Embeded Linux, with many advantages such as code-open, being cuttable, multitask and multithreading, is one kind of Operation System that can support all standards of Internet agreement, and be easily port to so many hardware platform, for example X86, ARM, MIPS, PowerPC and so on.

Based on the embedded Linux, a mobile robot’s remote control system is designed. In this system, a Web server, together with a robot Internet control server, is integrated into an ARM control board, and a wireless linkage to Internet is afforded, which meet the needs of robot for minitype, parallel, moving and group cooperation. Remote operators are able to program themselves by Internet control server to control the robot for a given task, and also look over the state of robot and the image information of environment so as to monitor its moving status. It is testified by experiment that this system has some outstanding capabilities, such as controllability, agility and real time.

The main study work and results are just as followed:

(1) Construct the system platform based on embedded Linux, which is composed

of bootloader, Linux kernel porting, USB WLAN card driver, and USB camera driver.

(2) Realize the movement control and sensor information collection of the

mobile robot including motor control, inner sensors information collection, image information collection and data acquisition of the wireless sensor network.

II

武汉理工大学硕士学位论文

(3) Design a robot Internet control server based on Socket, such as the server

program and control interface realization applying TCP protocol.

(4) Confirm a robot remote monitor system based on the Web server, i.e. Boa, so

as to realize the webpage-based robot control, image information publishing, robot state query, and data inspection of the wireless sensor network etc.

(5) The connection between the robot bottom control and upper computer is

actualized by using USB and RS232 interface in order to improve the open and extendable ability of the whole system.

Key words: Mobile robot, Remote control, Embedded Linux, Internet control server,

Web monitor

III


linux,机器人》由:免费论文网互联网用户整理提供;
链接地址:http://www.csmayi.cn/meiwen/35878.html
转载请保留,谢谢!
相关文章