基于PCC的伺服电机角度控制器的开发论文.doc_第1页
基于PCC的伺服电机角度控制器的开发论文.doc_第2页
基于PCC的伺服电机角度控制器的开发论文.doc_第3页
基于PCC的伺服电机角度控制器的开发论文.doc_第4页
基于PCC的伺服电机角度控制器的开发论文.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于pcc的伺服电机角度控制器的开发 40摘 要交流伺服控制技术在当今科技领域已日臻成熟,被广泛用于工业、农业生产和日常生活等方面。其中对伺服电机的研究已成为现代伺服控制系统发展的新方向。另外,计算机和伺服控制系统相结合也是近代交流伺服控制的一个重要研究方向。本文主要是对伺服电机角度控制进行研究和设计,并针对伺服电机角度控制要求,利用pcc来完成伺服电机的角度控制,主要从系统构成、软件配置、软件编程等几方面对伺服电机角度控制器的开发进行研究。关键词:伺服电机,伺服驱动,角度控制,pcc abstractac servo control technology in todays scientific filed has matured. it has been widely used in industry, agriculture and other aspects of production and daily life. among this, the research on servo motor has become a modern servo control system of the new direction of development. in addition, the combination of computer and servo control system is an important research direction of modern ac servo control system. this paper is a research on angle control of servo motor and to use pcc to complete the research on angle control according to the command of controlling motor angle.this paper mainly consists of system structure,software configuration, software programming and other aspects of the servo motor control to have a research on designing a system of angle control of motor. key words: servo motor, servo drive, angle control, pcc目 录1 绪论11.1 伺服系统简介11.2 pcc简介22 主要硬件52.1 系统组成52.2 系统连接73.控制算法83.1 级联控制器83.2 前馈位置控制器83.3 速度控制器93.4 电流控制器93.5 理论上确定控制器参数94.软件配置及编程124.1 软件配置124.2 角度控制175.结论35参考文献36致 谢371 绪论近年来,随着现代科学技术的飞速发展,造成人们对工农业生产的性能要求不断提升,传统的生产控制系统已无法满足现代工业生产的需要,人们开始尝试开发其他新型的伺服控制系统。目前现有的伺服电机控制系统主要是由plc控制, plc伺服电机控制系统主要是由硬件构成,硬件接线多而复杂,容易出错,所以有了很大的限制。虽然pcc从诞生至今,只有30多年的历史,但已成为当今增长速度最快的工业自动控制设备,它是通过模拟量的控制来完成的,这样就省去了接线的繁琐,硬件上取得了很大的优势,所以基于pcc的伺服电机角度控制器的开发是对伺服控制系统的一次新颖的尝试与改良。1.1 伺服系统简介伺服驱动系统(servo system)简称伺服系统,是一种以机械位置或角度作为控制对象的自动控制系统。它有交流系统和直流系统,在旋转运动中应用较广,通常是通过电机上的旋转编码器输出速度和位置信号,将该信号送到计算机控制系统进行一系列处理后实现自动调节,使其速度和位置快速跟踪设定值,为了达到快速和高精度,因而出现了一系列的控制方法和策略(包括pid),为了验证策略的正确性,又出现了许多仿真,这就是所谓的软件处理。硬件上也作了大量的改进1。从70年代后期到80年代初期,随着微处理器技术、大功率高性能半导体功率器件技术和电机永磁材料制造工艺的发展及其性能价格比的日益提高,交流伺服技术交流伺服电机和交流伺服控制系统逐渐成为主导产品。交流伺服驱动技术已经成为工业领域实现自动化的基础技术之一,并将逐渐取代直流伺服系统。而其中永磁同步电动机交流伺服系统在技术上已趋于完全成熟,具备了十分优良的低速性能,并可实现弱磁高速控制,拓宽了系统的调速范围,适应了高性能伺服驱动的要求。并且随着永磁材料性能的大幅度提高和价格的降低,其在工业生产自动化领域中的应用将越来越广泛,目前已成为交流伺服系统的主流。我国从1970年代开始跟踪开发交流伺服技术,80年代之后开始进入工业领域,直到2000年,国产伺服停留在小批量、高价格、应用面狭窄的状态,技术水平和可靠性难以满足工业需要。2000年之后,随着中国变成世界工厂、制造业的快速发展为交流伺服提供了越来越大的市场空间,国内几家单位开始推出自己品牌的交流伺服产品,比如贝加莱(b&r)工业自动化公司推出的acoposmulti驱动系统、艾默生控制技术(emerson control techniques)公司展出了unidrive及其他交、直流驱动器产品、rockwell automation公司的powerflex驱动技术、施奈德电气(schneider electric) 的lexium 05型伺服控制器、包米勒(baumuller)公司的带集成行星齿轮传动系的高性能伺服电机、安川电机欧洲公司(yaskawa electric europe,yee) 的通用sigma ii型伺服电机等。而国际厂商伺服产品每5年就会换代,新的功率器件或模块每22.5年就会更新一次,新的软件算法则日新月异,总之产品生命周期越来越短。总结国内外伺服厂家的技术路线和产品路线,结合市场需求的变化,可以看到以下一些最新发展趋势。(1) 交流化伺服技术将继续迅速地由直流伺服系统转向交流伺服系统。从目前国际市场的情况看,几乎所有的新产品都是交流伺服系统。在工业发达国家,交流伺服电机的市场占有率已经超过80%。在国内生产交流伺服电机的厂家也越来越多,正在逐步地超过生产直流伺服电机的厂家。可以预见,在不远的将来,除了在某些微型电机领域之外,交流伺服电机将完全取代直流伺服电机。(2) 全数字化采用新型可编程控制器pcc可以代替以模拟电子器件为主的伺服控制单元,从而实现完全数字化的伺服系统。全数字化的实现,将原有的硬件伺服控制变成了软件伺服控制,从而使在伺服系统中应用现代控制理论的先进算法(如:最优控制、人工智能、模糊控制、神经元网络等)成为可能。(3) 智能化现代交流伺服驱动器都具备参数记忆、故障自诊断和分析功能,绝大多数进口驱动器都具备负载惯量测定和自动增益调整功能,有的可以自动辨识电机的参数,自动测定编码器零位,有些则能自动进行振动抑止。将电子齿轮、电子凸轮、同步跟踪、插补运动等控制功能和驱动结合在一起,对于伺服用户来说,则提供了更好的体验。(4) 网络化和模块化随着机器安全标准的不断发展,传统的故障诊断和保护技术(问题发生的时候判断原因并采取措施避免故障扩大化)已经落伍,最新的产品嵌入了预测性维护技术,使得人们可以通过internet及时了解重要技术参数的动态趋势,并采取预防性措施。比如:关注电流的升高,负载变化时评估尖峰电流,外壳或铁芯温度升高时监视温度传感器,以及对电流波形发生的任何畸变保持警惕。(5) 小型化和大型化无论是永磁无刷伺服电机还是步进电机都积极向更小的尺寸发展,比如20,28,35mm外径;同时也在发展更大功率和尺寸的机种,已经看到500kw永磁伺服电机的出现。体现了向两极化发展的倾向。1.2 pcc简介可编程计算机控制器(programmable computer controller,简称pcc)是集计算机技术、通讯技术、自动控制技术为一体的新型工业控制装置。随着3c技术(计算机、通讯、控制)的发展,新一代的pcc已能胜任集散控制和复杂的过程控制。其良好的兼容性、丰富的功能函数、品种多样的硬件模块、高级编程语言的使用,使pcc能适应各种工业控制的需要2。pcc是专为在工业环境下应用而设计的。它采用可编程序的存储器,用于其内部存储执行逻辑运算、顺序控制、定时、计数和算数运算等操作指令,并通过数字式、模拟式的输入/输出控制各种类型的机械或生产过程。可编程计算机控制器及其有关外部设备,都易于与工业控制系统联成一个正题,易于扩充其功能的原则设计,是特别适合于工业环境的3。与现有的plc控制的伺服系统相比,在硬件结构方面,pcc的特点是很显著的。在其核心的运算模块内部,pcc为其cpu配备了数倍于常规plc的大容量存储单元(100k-16m),这无疑为强大的系统和应用软件提供了监视的硬件基础。而在硬件外部,它有着全模块式的插装结构,在工业现场,不仅可以方便地带电插拔,而且在接线端子,模块供电及工作状态显示等诸多方面均有着精巧的设计。pcc在硬件上的特点,还体现在它为工业现场的各种信号设计了许多专用的接口模块,如温度,高频脉冲,增量脉冲编码器,称重信号及超声波信号接口模块等。它们将各种形式的现场信号十分方便的联入以pcc为核心的数字控制系统中,用户可按需要对应用系统的硬件i/o通道以单路,十余路或数十路为单位模块,进行数十点至数百点上千点的扩展与联网。与常规plc相比较,pcc最大的特点在于分时多任务操作系统和多样化的应用软件的设计,常规的plc大多采用单任务的时钟扫描或监控程序,来处理程序本身的逻辑运算指令和外部的i/o通道地状态采集与刷新,这样plc的执行速度取决于应用程序的大小,这一结果,无疑是同i/o通道中高实时性的控制要求相违背的。pcc的系统软件解决了这一问题,它采用分时多任务机制构筑其应用软件的运行平台,这样应用程序的运行周期则与程序长短无关,而是由操作系统的循环周期决定,由此,它将应用程序的扫描周期同真正外部的控制周期区别开来,满足了真正实时控制的要求,当然,这种控制周期可以在cpu运算能力允许的前提下,按照用户的实际要求,任意调整。基于这样的操作系统,pcc的应用程序由多任务模块构成,这样给项目应用软件的开发带来了了很大的便利,因为这样可以方便地按控制项目中各部分不同的功能要求,如数据采集,报警,pid调节运算,通信控制等,分别编制出控制程序模块(任务),这些模块既相互独立运行,而数据间又保持一定的相互关联,这些模块经过分步骤的独立编制和调试完成之后,可一同下载至pcc的cpu中,在多任务操作系统的调度管理下,并行运行,共同实现项目的控制要求。基于上述功能强大的特殊的操作系统,pcc在应用程序的设计上,有着常规plc无法比拟的灵活性。由于pcc是基于多任务环境下设计程序,采用大型应用软件的模块化设计思想,各个任务模块的功能描述更趋清晰简洁,用户在开发自己的任务时,由于对其功能的提取具有通用性,因而作为一个独立的功能模块,用户可十分方便地将其封装起来,以便于日后在其他应用项目重新使用。pcc的编程硬件采用普通pc机配以一套功能强劲的开发软件作为在线开发工具,这种方式,不仅节省了用户的硬件投资,更重要的是,它发挥了pc机作为在线编程开发工具的强大的软硬件优势,它为用户提供了源程序级的单步、断点、单周期及pcc在线错误自诊断等多种形式的调试手段,使应用程序的开发十分灵活便捷。另外,通过pc机上编程软件包所提供的为数众多的函数,用户可短时间内编制出高效而复杂的控制程序来。pcc在编制不同的单个任务模块时,具有灵活选用不同编程语言的特点,这就意味着不仅在常规plc上指令表语言可在pcc上继续沿用,而且用户还可采用更为高效直观的高级语言(pl2000)。它是一套完全面向控制的文本语言,熟悉basic的技术人员会对它的语法有种似曾相识的感觉,它对于控制要求的描述非常简便、直观。除此之外,pcc的应用软件开发还具有集成“c”语言程序的能力。尤为与众不同的是,所有这些编程语言,pcc都采用“符合变量”来标识外部i/o通道及内部寄存器单元,软件开发人员毋需熟知pcc内部的硬件资源的分布,而只须集中精力于项目本身的要求,即可迅速编制出自己的控制程序来。pcc在远程通信方面的灵活性,是区别于常规plc的一大显著标志,作为未来构成分布式现场i/o控制的主要角色之一,pcc为此提供了十分灵活多样的解决方案。除上述开放式现场总线的网络方案之外,pcc还提供了rs485总线上多种局部主从网络协议,用户不仅可以采用pcc自身的网络协议,也可以方便的与其他厂家的plc等工控设备联网通信(如西门子,ab,modicon等),在一些特殊情况下,pcc还为用户提供了创建自定义协议的工具(帧驱动器),由于具备这样的技术优势,pcc常常能解决许多常规plc所望尘莫及的通信难题,轻松实现与各种不同产品,不同通信协议的互联。总之,pcc虽然从plc发展而来,但拥有其不可比拟的优势。更加强大的内存空间、更灵活的编制手段、更优越的控制方式,使pcc有许多普通plc难以完成功能,如精确到1温度调节;准确的伺服控制;远程通信功能等。并且pcc还能随着当前的计算机和网络技术的发展,不断更新换代,有着更好的升级能力,所以pcc正广泛地在工业控制中使用。2 主要硬件2.1 系统组成本文中的伺服系统主要由计算机(pc)、可编程计算机控制器(pcc)、伺服驱动器(acopos)和伺服电机构成,整个系统如图所示图2-1 伺服系统控制原理图整个系统包括了2个重要部分:(1) pcc2005系列2 0 0 5系列是贝加莱(b&r)出品的高性能可编程计算机控制器(p c c),它支持嵌入式p c-based技术,同时具有很强的分析计算能力,其外围信号输入输出的巨大带宽可满足机械制造、工厂自动化及过程自动化的所有要求,配合贝加莱(b&r)的其它产品,如i/o系统,工业pc及控制器等,可创建满足最高要求的自动化方案。依靠先进的接口,现场总线系统,网络及外围设备,可完成最佳的数据传输任务。cpu模块最新的2005系列基于intel兼容处理器,具备最先进的构架,创造性的pc技术如compact flash存贮,以太网连接以及apci扩展插槽等的使用使得it世界中高性能产品在自动化领域也得以应用,历经考验的mo-rola处理器cpu起了优化性能的作用,编程采用全兼容、格式统一的b&rautomation studio。cp260 2005系列cpu 4mb dram 80kb 8ram 512kb flash prom 2个插槽 1个pc卡槽 1个rs232接口。通信模块 31f686.9 2005系列接口模块,1个ethernet powerlink接口,管理模式或控制模式切换开关,电隔离。i/o模块有大量模块可选择用于连接模拟量、数字量、计数器、温度及其它信号,由此,2005系列可控制众多过程变量及各种不同的执行机构,并行的i/o处理器减少了cpu上的负载,并为项目应用提供更多的性能保证。(2) acoposacopos伺服控制器是b&r公司完美自动化解决方案中的一个重要组成部分,属于高性能的伺服驱动控制器,它在运行时扫描时间非常短且通信循环周期仅400s,控制循环50s,因而在各种功能的转换时速度就很快。它主要是用于点到点的运动控制、电子齿轮、电子补偿等。acopos伺服驱动时会用到电机嵌入式参数芯片上的信息,这些信息包括相关的机电一体化数据,从而实现自动设置芯片,避免大量人工设置会产生的错误。acopos的特点在于:1) 模块化,精确性和超强的通信能力必要的i/o点数是acopos伺服驱动标准设备中的一部分,用于操作一个伺服轴。在执行高精度测量或者印标控制的任务时,提供2个触发式输入进一步配置。acopos的插入式模块用于连接网络中其他的驱动器,控制器和显示设备,也可以连接编码器,传感器和执行机构。2) 配置取代编程acopos伺服驱动通过配置能够完成高要求的定位任务,具有紧凑型功能模块,适用于广泛的应用,针对具体行业的功能可以在项目程序中快速简便地实现。3) plcopen运动控制功能模块acopos伺服驱动器中有一个plc open运动控制模块,它缩短了开发周期,提供用户丰富的编程语言:如梯形图(ld),高级程序语言“c”等。功能模块按不同的功能可划分为单轴运动和多轴运动区域。两种区域除了包括相对和决定运动之外,还包括重叠运动。在多轴运动区域,有凸轮,电子凸轮,上/下同步和差分凸轮(变化的相角)等功能。4) 控制触发器控制器中的示波器能实时监测所有的运动,很多可能的触发条件都能提供所要分析的数据,能够实现精细调节以及运动优化,相当简便。速度、加速、振动的结果和影响也都能够很快通过图形分析出来。5) 简单快速的调试acopos伺服控制器是由一个工具automation studio统一编程的,可通过对话框添加硬件组件、应用程序并且完成配置,从而缩短了项目的开发周期。内置nc测试不用写一行程序代码就可以检测一个轴。而所有类型的运动,从点对点到齿轮都可以交互实现。监视器窗口显示轴反作用力,跟踪功能记录相关的驱动器数据有助于评估。另外,根据iec 60204-1标准,为了在断电时按1类规定提供停机功能,伺服驱动的24 vdc电源、编码器、传感器及安全电路必须在整个停机过程中都处于运行状态中。acopos伺服驱动自动识别断电,并马上制动电机。制动时制动能量返回至dc总线,dc总线电源可以以此产生24 vdc电源电压。此次采用的acopos v1022已经集成一个dc总线电源,已集成dc总线电源的acopos伺服驱动系统为伺服驱动提供24 vdc电源,并输出24 vdc为编码器、传感器和安全电路供电。如果没有集成dc总线电源,就要使用不间断电源,而现在,在通常情况下就不需要不间断电源。 2.2 系统连接计算机(pc)和可编程计算机控制器(pcc)的连接通过rs232。acopos伺服驱动器x1如图所示,为18引脚结构,9引脚为enable,外接+24v电源;10引脚为enable0v,外接地0v;14,15引脚都外接+24v电源;16,17,18引脚外接地0v;实际连接中,9引脚连接15引脚再外接+24v电源;10引脚连接16引脚再外接地。可编程计算机控制器(pcc)和伺服驱动器(acopos)的连接通过powerlink。伺服驱动器(acopos)与伺服电机的连接则是通过一般硬线。3.控制算法伺服驱动的目的是使用电机和各种机械机构尽量精确与快速的到达某一位置。首先它需要一个控制器,通过控制器设定电机的位值,而在之前控制器需要获得电机当前的位值,这个信息可用编码器来实现.编码器是一种测量元件,它可以通过反馈将电机的精确位置传给控制器。当设定位置与实际位置不相符时,将会产生一个滞后偏差或位置偏移,此时由由伺服驱动输出一个可控变量来补偿偏差。acopos伺服驱动上配备了一个高标准的处理器,除了其他任务外,这个处理器将计算控制器的参数。模拟控制器(连续时间的)与数字控制器(离散时间的)的差别在于控制器的偏移是在相应的周期内扫描的,这个周期长度是一样的(没有变化),但是它也应当是尽量短,以便尽量快的接收控制器上偏移量的变化,所以用数字控制。3.1 级联控制器级联控制器概念是acopos伺服驱动的核心,位置控制器,速度控制器,电流控制器是级联的,按照设定值启动,因此,高标准控制器的操作变量变成了低层次控制器的设置量。通过设定值发生器,可将设置量提供给位置控制器,这是在400s的循环时间内完成的。在给出执行一个基本运动的命令后,这个设定值发生器将会创建一个运动轨迹,这个运动轨迹的路径主要取决于基本运动参数(目标位置,加速度等)。在每个加速段的结束处都有跳跃,这些跳跃称为jolts(摆动),在速度曲线段的折线处将可能发生这些摆动,如果此时一个较大的负载加在机械机构上,整个系统将会振颤,所以在acopos伺服驱动中设定值发生器是带有摆动限制的,通过给acopos伺服驱动设置摆动滤波时间,这样可以产生一个带有摆动限制的运动轨迹。3.2 前馈位置控制器设定位置产生器将会产生位置控制器的设置量,acopos伺服驱动将通过电机的编码器系统和一个相应的编码器接口卡接收控制变量(当前的电机位置)。从这些变量中,可以决定控制的偏移量。它将会为下一层的速度控制器产生一个新的操作变量。位置控制器是作为比例积分控制器执行的,它带有抗饱和(操作变量限制)和预测前馈(输入控制),当设定值与实际值有偏差时,带有的比例部分将会立即产生变化,设定值的变化或是扰动的影响都将产生这些形式的偏移,带有积分时间常数的积分部分将会补偿静差。3.3 速度控制器速度控制器的功能是决定高层次位置控制器的操作变量与测量转速的差别,低层次电流控制器的操作变量是通过抗饱和的pi控制器产生的。带有系数的比例部分将会对控制器的任何偏差立即产生作用,这就决定了这个元素对速度控制器的动态能力起着决定性的作用。带有积分动作时间的积分元素用来补偿静态的扰动变量。3.4 电流控制器电流控制器是由pi控制器组成的(像位置和速度控制器一样)。通过使用电机参数与具体的acopos参数,伺服驱动将会自动决定相应的参数。电流控制器使用它的操作变量来控制igbt(门绝缘的两极晶闸管)。然后,这些管子将会发送调制的pwm脉冲给电机。电流控制器将会在不同的循环周期内工作,这取决于pwm的开关频率,8v1022.00-2pwm的开关频率为20khz,循环时间为50s。3.5 理论上确定控制器参数3.5.1 速度控制器 用下式来代替电流控制环的时间常数: (3-1)将所有时间常数的综合来代替: (3-2) (编码器接口死区时间,速度的确定与扫描)(参数)=速度滤波器的滤波时间常数速度控制器的比例增益: (3-3)=总的转动惯量(jmotor+jbrake+jload)=正在使用的电机的转距常数nm/a速度控制器的积分动作常数 (3-4)3.5.2 位置控制器用单个时间常数的总和来代替时间常数: (3-5)=插补器产生的死区时间(0.0001s)=来代替速度控制环的时间常数=由扫描产生的死区时间(0.0002s)位置控制器的比例增益: (3-6)位置控制器的积分动作常数: (3-7)3.5.3 理论上确定参数本文采用的是acopos 8v1022的8ms电机,不带负载。其中,开关频率那么速度控制器:位置控制器:为了确定级联的控制器的参数,需要从低层启动,然后逐步上升,以acopos伺服控制器来说,就是先启动底层速度控制器,然后是位置控制器,电流控制器是acopos伺服驱动自动配置的。4.软件配置及编程在运用b&r pcc2005系列来控制伺服驱动机从而驱动电机转动,首先需要进行一些软件配置,之后才能进行软件编程。4.1 软件配置4.1.1 添加硬件用pcc驱动伺服控制器之前需要在automation studio中配置硬件,首先选择相应的接口,本文选用的是ethernet powerlink接口,之后选择相应的acopos伺服驱动,设定新的acopos模块的连接参数,根据接口卡上的节点号输入node number,最后设定相应的伺服电机型号,为8msa4r030-a0。4.1.2初始参数模块为了定义基本参数的固定设定(初始化设定或默认值),每个nc对象类型(指定实轴,虚轴等)的初始参数模块需要添加到项目中,添加advanced object,选择类型“nc init parameter:axis”添加一个实轴的初始参数模块。初始化参数模块包括nc对象的单独分组,这些分组对应acopos上特定的部分,包括“controller”,“digital inputs”等。在acopos模块前有一个连接端子排,用来连接数字量输入,在初始参数配置时,需要分别设置每个输入的“有效等级”,本文中将其设置为高电平有效。4.1.3 acopos参数表 acopos上的参数可以直接寻址,acopos伺服电机有大量的参数,acopos上提供参数来定义配置指定数据(电机特性,编码器等),同样定义命令操作(位置等)。在新的参数表中添加参数组,这样可以结构化大量的参数列表,预先定义的参数组也包括在此,包括:(1) 定义acopos的电机参数(特性)组(2) 定义acopos的编码器接口卡组完成这些定义后,电机所需要用的所有参数和插入卡需要的参数都输入到参数表中了。4.1.4 nc配置使用nc配置必须要在项目中做三个更改:(1) 屏蔽强制nc初始参数对象硬件定义的设定(2) 在nc deployment table 中重新定义nc对象和指定硬件之后需要做项目配置(1) nc object namenc object name 中定义一个最大32个字符的,在项目中唯一的对象名称,该名称用来通过nc函数ncaccess访问项目程序中的nc软件对象。(2) network interface network interface中选择acopos连接的网络接口。(3) node number输入选择网络中的acopos节点号(4) nc object type定义nc对象的类型,选择实轴操作。通过这些输入将硬件部分(网络中acopos模块)指定到相应的软件部分。4.1.5 nc 错误文本表在项目中添加nc error text table,其中包括了acopos出错时传送的错误号文本,这个错误文本表提供信息处理方法输出问题信息。最后,需要在初始化参数表处,将error table 附加上。4.1.6 nc test诊断和分析工具同motion components一同内嵌在automation studio中,这些工具可以满足所有要求并允许驱动轴快速有效地启动。在nc test中可以访问nc对象的操作结构并且可以直接执行nc动作,同时提供参数状态,轨迹功能允许记录acopos设备上的实时数据,该数据通过控制器从acopos读取到automation studio中并可以图形化显示。nc test 被分成四个主区域:(1) nc动作在nc动作区域,可以添加单个分组动作。(2) nc动作的参数定义每个nc动作的操作参数,输入的值立即传送到操作结构(控制器存储器中nc对象的nc数据结构)中。(3) nc监控在nc监控中显示的是当前nc对象的状态。(4) nc轨迹motion components 的轨迹功能是寻找和分析acopos动作和控制程序一个有用的工具。在完成一些软件配置后,即可用nc test驱动电机执行基本运动,必须执行以下步骤:(1) 执行全局初始化“ncglobal,ncinit”,在此方式下,nc管理器把基本操作需要的 所有参数从操作结构传动到acopos中并生效。(2) 检测acopos上的绿灯“ready”是否亮起。(3) 打开控制器:“nccontroller,ncswitch_on”。(4) 执行寻找参考点:“nchoming,ncstart”。(5) 执行简单位移指令 正转ncpos_move,ncstart;反转:ncneg_move,ncstart。4.2 角度控制4.2.1 plcopen本文对伺服电机的角度控制采用的是plcopen运动控制模块(plcopen_mc),随着功能性和接口的标准化及在多个平台上执行,plcopen建立了编程标准,并在工业领域被广泛支持,由于封装隐藏了数据,此标准可用于不同结构,适用的控制从集中型到分散型或从集成型到网络型。它不是为某个应用程序特别设计的,而是可以作为在不同领域中正进行定义的基础层。正因为如此,它对现有和将来的技术都是开放的。b&r驱动方案提供plcopen标准位置应用,同时提供特别的b&r特殊功能块,并与标准相一致,这样能够充分的使用整个acopos的功能,而acp10_mc功能库就包含了控制acopos的功能库,包括标准函数。acp10_mc库中包括相关的大量功能库,这些功能块按它们使用的区域分成不同的组:基本功能用于:(1) 驱动准备(2) 基本运动,包括绝对位移或者相对来回运动等(3) 测定驱动状态,读取位置值,速度值等(4) 测定和确认驱动错误(5) 用于数字输入和输出信号的查询和控制功能(6) 位置测量(7) 管理plcopen轴参数(8) 管理acopos parid参数4.2.2 acp10_mc功能函数介绍(1) mc_moveabsolute 在一个指定的绝对位置命令被控运动。 (2) mc_moverelative 在执行时,命令指定距离的被控运动,此距离与实际位置有关。 (3) mc_moveadditive 除了在离散运动状态下原始命令的位置,命令一个指定相关距离的被控运动。如果fb在持续模式下启动,在执行时指定的相关距离被加入到实际位置。 (4) mc_movesuperimposed 除了已有的运动,命令指定相关距离的被控运动。已有的运动不被中断,而是叠加运动。 (5) mc_movevelocity 命令在特殊速率下的不停止的被控运动。 (6) mc_home 命令轴执行“回原位搜索”顺序。此顺序的细节由制造商决定,并由轴的参数设置。当检测到参照信号时,位置输入用于设置绝对位置。在静止时完成此操作。 (7) mc_stop 命令被控运动停止,将轴转换为“停止”状态。它会中止任何进行中的功能块的执行。使用“done”输出,可转换为静止状态。当轴处于“停止”状态时,其他的fb不可以在这个轴上执行任何运动。 (8) mc_power 控制电源(开或关)。 (9) mc_readstatus 返回到相应于当前正在进行运动的轴的详细状况。 (10) mc_readaxiserror 显示与功能块无关的故障。 (11) mc_reset 通过复位所有内部与轴有关的故障和清除悬挂的命令,实现从故障停止状态到静止状态的转换。它不作用于fb实例的输出。 (12) mc_readactualposition 返回到实际位置。 (13) mc_positionprofile 命令一个时钟位置以锁定运动的轮廓图。 (14) mc_velocityprofile 命令一个时间速率以锁定运动的轮廓图。 (15) mc_accelerationprofile 命令一个时间加速度以锁定运动的轮廓图。 4.2.2 参数类型在运用plcopen运动控制模块编程之前,需要将项目中各函数和参数的类型进行设定。gaxisbasic.power bool turns the power ongaxisbasic.homebool homes the axisgaxisbasic.moveabsolutebool starts the absolute movementgaxisbasic.moveadditive bool starts the additive movementgaxisbasic.movevelocity bool starts the velocity movementgaxisbasic.stop bool stops a movementgaxisbasic.movejogpos bool starts the jog movement in positive directiongaxisbasic.movejogneg bool starts the jog movement in negative directiongaxisbasic.erroracknowledge bool acknowledge an error with a pos. edgegaxisbasic.paraposition real parameter absolute target positiongaxisbasic.paradistance real parameter relative move distancegaxisbasic.paravelocity real parameter target velocitygaxisbasic.paradirection usint parameter movement directiongaxisbasic.paraacceleration real parameter movement accelerationgaxisbasic.paradeceleration real parameter movement decelerationgaxisbasic.parahomeposition real parameter home positiongaxisbasic.parahomemode real parameter homing modegaxisbasic.parajogvelocity real parameter jog movement target velocitygaxisbasic.paraoverridevelocity real parameter velocity override (0.0 - 2.0)gaxisbasic.paraoverrideacceleration real parameter acceleration override (0.0001 - 2.0)gaxisbasic.errorid uint shows the error id (0 = no error)gaxisbasic.errortext string shows the acopos error text as stringgaxisbasic.actpositionreal actual positiongaxisbasic.actvelocity real actual velocitygaxisbasic.statusdisabledbool status power disabledgaxisbasic.statusstandstill bool status axis at standstillgaxisbasic.statusstoppingbool status axis is stoppinggaxisbasic.statushoming bool status axis is hominggaxisbasic.statusmotiondiscrete bool status discrete motion is activegaxisbasic.statusmotioncontinous bool status continous motion is activegaxisbasic.statusmotionsynchronized bool status synchronized motion is activegaxisbasic.statuserrorstop bool status axis stopped after error4.2.3软件编程#include #include #include #include #include #definestate_wait0#definestate_power_on1#definestate_home2#definestate_ready10#definestate_stop11#definestate_jog_positive12#definestate_jog_negative13#definestate_move_absolute14#definestate_move_additive15#definestate_move_velocity16#definestate_error_axis100#definestate_error101#definestate_error_reset102_globalaxisbasic_typ gaxisbasic;_globalacp10axis_typaxis;_localuintaxis1errorncaccess;_localudintaxis1obj;_localusintaxisstep;_localmc_power_typmc_power_0;_localmc_home_typmc_home_0;_localmc_stop_typmc_stop_0;_localmc_moveabsolute_typmc_moveabsolute_0;_localmc_moveadditive_typmc_moveadditive_0;_localmc_movevelocity_typmc_movevelocity_0;_localmc_setoverride_typmc_setoverride_0;_localmc_readaxiserror_typmc_readaxiserror_0;_localmc_reset_typmc_reset_0;_localmc_readstatus_typmc_readstatus_0;_localmc_readactualposition_typ mc_readactualposition_0;_localmc_readactualvelocity_typ mc_readactualvelocity_0;_init void basic_init(void)axis1obj = (udint)&axis; /* 获得axis项目 */axisstep = state_wait;gaxisbasic.paravelocity = 1000; /*设定运动速度*/gaxisbasic.paraacceleration= 4000; /*设定运动加速度*/gaxisbasic.paradeceleration = 4000; /*设定运动减速度*/g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论