1 前言
机械手控制系统是伴随着机械手(机器人)的发展而进步的。机械手是在早期出现的古代机器人基础上发展起来的,机械手研究始于20世纪中期,随着计算机和自动化技术的发展,特别是1946年第一台数字电子计算机问世以来,计算机取得了惊人的进步,向高速度、大容量、低价格的方向发展。同时,大批量生产的迫切需求推动了自动化技术的进展,又为机器人和机械手控制系统的开发奠定了基础。另一方面,核能技术的研究要求某些操作机械代替人处理放射性物质。在这一需求背景下,美国于1947年开发了遥控机械手控制系统和遥控机械手,1948年又开发了机械式的主从机械手控制系统和机械手。
机械手控制系统首先是从美国开始研制的。1954年美国戴沃尔最早提出了工业机器人的概念,并申请了专利。该专利的要点是借助伺服技术控制机器人的关节,利用人手对机器人进行动作示教,机器人能实现动作的记录和再现。这就是所谓的示教再现机器人控制系统。现有的机器人控制系统差不多都采用这种控制方式。1958年美国联合控制公司研制出第一台机械手铆接机器人控制系统。作为机器人产品最早的实用机型(示教再现)是1962年美国AMF公司推出的“VERSTRAN”和UNIMATION公司推出的“UNIMATE”。这些工业机器人和相关控制系统主要由类似人的手和臂组成它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。
机械手控制系统经历了以下几个阶段:机械手完成放射源转运年代、化工产品垛机械手年代、工业用机械手兴起和发展年代。
2 ARM及其体系结构
ARM(AdvancedRISCMachines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。
2.1 ARM的结构和特性
ARM处理器共同特点
(1)、体积小、低功耗、低成本、高性能;
(2)、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;
(3)、大量使用寄存器,指令执行速度更快;
(4)、大多数数据操作都在寄存器中完成;
(5)、寻址方式灵活简单,执行效率高;
(6)、指令长度固定。
2.2 ARM处理器的结构
2.2.1 RISC体系结构
传统的CISC(ComplexInstructionSetComputer,复杂指令集计算机)结构有其固有的缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的体系结构会越来越复杂,然而,在CISC指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%,显然,这种结构是不太合理的。,1979年美国加州大学伯克利分校提出了RISC(ReducedInstructionSetComputer,精简指令集计算机)的概念,当然,和CISC架构相比较,尽管RISC架构有上述的优点,但决不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。
2.2.2 ARM微处理器的寄存器结构
ARM处理器共有37个寄存器,被分为若干个组(BANK),这些寄存器包括:31个通用寄存器,包括程序计数器(PC指针),均为32位的寄存器。6个状态寄存器,用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。同时,ARM处理器又有7种不同的处理器模式,在每一种处理器模式下均有一组相应的寄存器与之对应。即在任意一种处理器模式下,可访问的寄存器包括15个通用寄存器(R0~R14)、一至二个状态寄存器和程序计数器。在所有的寄存器中,有些是在7种处理器模式下共用的同一个物理寄存器,而有些寄存器则是在不同的处理器模式下有不同的物理寄存器。
2.2.3 系统的工作频率
系统的工作频率在很大程度上决定了ARM微处理器的处理能力。ARM7系列微处理器的典型处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20MHz-133MHz,ARM9系列微处理器的典型处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟频率为100MHz-233MHz,ARM10最高可以达到700MHz。不同芯片对时钟的处理不同,有的芯片只需要一个主时钟频率,有的芯片内部时钟控制器可以分别为ARM核和USB、UART、DSP、音频等功能部件提供不同频率的时钟。