PMAC运动控制系统.pptx
开放式运动控制系统 PMAC运动控制器 PCI运动控制卡设计第1页/共66页基于PC的伺服运动控制系统是一种开放式结构的系统,可以充分利用PC机的资源和第三方软件资源完成用户应用程序的开发,将生成的应用程序指令通过PC并行总线传送给运动控制器,运动控制器根据来自PC机的应用程序命令,按照设定的运动模式,向驱动器发出运动指令,完成相应的实时运动规划。5.1 开放式运动控制系统第2页/共66页5.1.1 开放式数控系统一般数控系统由3部分组成:1,MMC:人机接口2,CNC:运动控制部分,包括伺服部分,但一般主轴在PLC部分。3,PLC:机床的顺控部分人机接口NC控制器伺服驱动器数控机床传感器机床强电MMCCNCPLC5.1 开放式运动控制系统1、传统数控系统第3页/共66页数控系统软件功能模块数控装置控制模块管理模块电机运动控制位置运动控制插补计算刀补计算速度处理G功能处理监控处理中断处理PLC处理误差补偿第4页/共66页数控软件功能模块数控软件功能模块电机运动控制插补计算刀补计算监控处理中断处理匀速控制加/减速控制直线、圆弧插补螺旋线、空间插补刀具半径补偿刀具长度补偿键盘处理显示处理报警处理急停处理部分控制模块功能第5页/共66页 随着数控技术的发展,数控系统变得越来越复杂,暴露出许多自身固有的缺陷。最大的问题是,这些数控系统都是专门设计的,它们具有不同的编程语言、非标准的人机接口、多种实时操作系统、非标准的硬件接口等,这些缺陷造成了数控系统使用和维护的不便,也限制了数控技术的进一步发展。为了解决这些问题,人们提出了“开放式数控系统”的概念。这个概念最早见于1987年美国的NGC(Next Generation Controller)计划,NGC控制技术通过实现基于相互操作和分级式的软件模块的“开放式系统体系结构标准规范(SOSAS)”找到解决问题的办法。一个开放式的系统体系结构能够使供应商为实现专门的最佳方案去定制控制系统。2、开放式数控系统第6页/共66页(1 1)开放式数控系统的定义)开放式数控系统的定义IEEEIEEE关于开放式系统的定义:关于开放式系统的定义:一个开放式数控系统应能够在多平台上运行,一个开放式数控系统应能够在多平台上运行,能够与其他系统进行操作,并能够给用户提能够与其他系统进行操作,并能够给用户提供一致的交互界面供一致的交互界面 ;系统互换性;系统互换性;可伸缩性;可伸缩性;可移植性;可移植性;互操作性;互操作性;可扩展性;可扩展性;1.1.不依赖于硬件、模块化;不依赖于硬件、模块化;第7页/共66页(2 2)开放式数控系统的结构形式:)开放式数控系统的结构形式:PC PC连接型连接型NCNC即将现有原型即将现有原型CNCCNC与与PCPC用通用串行线直接相连的用通用串行线直接相连的一种组成形式一种组成形式:DNC:DNC PC PC嵌入型嵌入型NCNC即在传统的专用数控机床中嵌入即在传统的专用数控机床中嵌入PCPC技术,技术,PCPC与与CNCCNC之间用专用总线连接。之间用专用总线连接。系统。系统。运动控制器运动控制器+PC+PC型型即在通用即在通用PCPC的扩展槽中插入运动控制卡,完全采的扩展槽中插入运动控制卡,完全采用以用以PCPC为硬件平台的数控系统。为硬件平台的数控系统。PMACPMAC运动控运动控制器制器 全软件型全软件型NCNC即完全采用即完全采用PCPC的全软件形式的数控系统。的全软件形式的数控系统。NCNC的全的全部功能处理全由部功能处理全由PCPC进行,并通过装在进行,并通过装在PCPC扩展槽扩展槽中的接口卡等进行控制。中的接口卡等进行控制。STEP-NC STEP-NC 第8页/共66页(3 3)PCPC嵌入型嵌入型NCNC即在传统的专用数控机床中嵌入即在传统的专用数控机床中嵌入PCPC技术,技术,PCPC与与CNCCNC之间用专用总线连接。其优点是原之间用专用总线连接。其优点是原型型CNCCNC几乎可以不加改动的使用,且数据传送几乎可以不加改动的使用,且数据传送速度快、系统响应快。其目的是增加数控系统速度快、系统响应快。其目的是增加数控系统的计算机功能,实现联网和大规模数据处理。的计算机功能,实现联网和大规模数据处理。如如FANUCFANUC公司的公司的150/160/180/210150/160/180/210系统、系统、Siemens840DSiemens840D系统、系统、Num1060Num1060系统、系统、AB9/360AB9/360等数控系统。等数控系统。第9页/共66页(4 4)软件数控)软件数控它的它的CNCCNC软件全部装在计算机中,而硬件部软件全部装在计算机中,而硬件部分仅是计算机与伺服驱动和外部分仅是计算机与伺服驱动和外部I/OI/O之间的标准之间的标准化通用接口。目前由于存在着操作系统的实时性化通用接口。目前由于存在着操作系统的实时性标准统一性及系统稳定性等问题,这种系统目前标准统一性及系统稳定性等问题,这种系统目前正处于探求阶段,还没有大规模投入到实际的应正处于探求阶段,还没有大规模投入到实际的应用中。目前全软件型用中。目前全软件型NCNC的典型产品有美国的典型产品有美国MDSIMDSI公司的公司的Open CNCOpen CNC、德国、德国Power AutomationPower Automation公司公司的的PA8000 NTPA8000 NT等。等。第10页/共66页常用的运动控制器主要包括PLC、PC-Based运动控制卡、专用系统和驱动器集成运动控制。运动控制卡是一种PC-Based的运动控制器,主要厂商包括Delta TAU(PMAC)、GALIL(DMC)、Bardor、Trio(英国翠欧)、NI、Advantech、Adlink、Googol(固高)、雷赛、众为兴、成都步进、摩信等。PMAC在高端市场表现最好,GALIL也表现不错。从数量上讲,国内的厂商的出货量更多,但是主要针对低端市场。(5)基于运动控制卡的开放式数控系统第11页/共66页计算机运动控制器基本模块I/O模块PCI总线数控系统(运动控制器)伺服驱动器开关量I/O其它I/O伺服辅助控制信号运动控制指令位置反馈伺服电机主轴驱动器5.1.2基于运动控制器的数控系统(功能概图)第12页/共66页5.1.2基于运动控制器的数控系统(PCI总线)第13页/共66页数控装置控制模块管理模块电机运动控制位置运动控制插补计算刀补计算速度处理G功能处理监控处理中断处理PLC处理误差补偿5.1.2基于运动控制器的数控系统(软件系统)第14页/共66页PMAC-Programmable Multi-Axis Controller是可编程多轴运动控制器,也称运动控制计算机.它主要由MOTOROLA DSP CPU与DELTA TAU公司开发和特制的用户门列IC组成.主要功能:控制伺服轴 PLC 1.数据采集5.2PMAC运动控制器第15页/共66页1、PMAC运动控制器结构第16页/共66页基于PC(它本身也是一台计算机)可控制各类电机步进,交/直流服,线性电机,液压伺服.可接受各类反馈增量绝对码盘,光栅尺,激光干涉仪,电位计,磁致伸缩传感器,旋转变压器等.多总线结构PC,VME,STP,PCI,104,MACRO.一卡可同时控制8个轴,可扩展到128个轴连动.后台PLC可扩展到1024点.可独立运行RS-232,422由主机通过接口或总线发送指令在板DPRAM选项在板A/D转换选项32位在板I/OPWM,DAC 输出模式2、PMAC的开放式结构第17页/共66页3、PMAC系列运动控制器第18页/共66页20MHz Motorola DSP 56001系列数据信号处理器8路(数模转换)16位DAC输出16个码盘通道输入16个通用I/OI/O扩展端口越程极限,回原点,伺服放大器报警,使能标志信号接口LCD和VFD显示端口Bus and/or RS-422通信脱机运行G-Code 编程(可自定义)PMAC 1 的标准配置线性,圆弧,三次轨迹计算,样条插补256个运动程序存储能力64个异步PLC程序存运行超大程序的实时下载执行功能64位位置计数范围位置环,速度环,电流环三环矢量控制能力曲线加减速控制自定义伺服算法能力电子齿轮先进的PID及扩展伺服算法第19页/共66页 一、执行运动程序1.PMAC 在某一时间执行一个运动,并执行有关运动的所有计算2.PMAC 总是在实际运动之前,正确地调和即将执行的运动二、执行PLC程序1.以处理器允许的时间尽可能快的扫描PLC程序2.PLC适用于某些异步于运动程序的运动过程三、伺服环更新1.对于每一个电机,PMAC都以一个固定频率(2KH左右)自动对其进行伺服更新2.伺服环根据运动的设计者编写程序公式,从当前的实际位置和指令位置增加指令的数值 四、换相更新1.PMAC 以9KHZ的频率自动进行换向计算和控制;2.PMAC 测量并估算 转子的磁场定向,然后处理电机的相之间的指令1)PMAC 的功能第20页/共66页五、资源管理1.常规管理定期自动执行资源管理功能,以确认谁正常2.报警跟随误差限制、硬件超程限制、软件超程限制、放大器报警3.看门狗的更新在每个PLC扫描之间,PMAC 执行上述任务保证自身的正常更新,如果这些功能不能在最小的频率内检测,卡上的看门狗将报警六、与主机通信1.随时与上位机实时通讯,甚至在一个运动序列中间;2.将命令放入一个程序缓冲区以便以后执行;3.如果命令非法则将向上位机主机报错。七、任务优先级1.任务是按照优先级电路组织起来,使应用程序以最优化、高效、安全的运行2.优先级是固定的,但是他们的频率时可以由用户控制的1)PMAC 的功能第21页/共66页 1.机床-磨床/车床/铣床/电加工/攻丝2.检验-半导体/机械3.喷涂-混合涂料和喷涂4.焊接-机械/半导体5.印刷-快速印刷6.张力控制-织物处理7.食品加工-混合/分切/处理8.包装-塑料/食品9.材料处理-半导体贴片加工10.车辆控制-汽车/电车/叉车摄像控制-远距离控制机器人-3到 6轴抓举和搬运通用自动化-输运带/同步控制2)PMAC 的应用领域第22页/共66页AmplifierMotorPMACABCinterfaceABCEnc.HallsSoftwareInterfaceMachineI/O工业现场总线驱动受控机械对象功率放大3)PMAC 的典型开放式应用第23页/共66页硬件软件设置及定义系统编程接线判断连接M变量内存图定义坐标系设计程序结构编写和调试程序4)PMAC 的应用系统建立第24页/共66页5)PMAC 的指令w 初始化和变量设置w 提前定义其含义 w 有的影响卡的全局w 有的是电机的定义w 有的是坐标系的定义w 有的是编码器的定义1.I-变量 (1024)w 用户定义的变量w 48-bit 浮点格式w 全局存取(与坐标系无关)2.P-变量(1024)第25页/共66页6 6)受控制电机的运动方式)受控制电机的运动方式Ix20 加速时间(Jog,Home)Ix21 S-曲线加速时间(Jog,Home)第26页/共66页Ix20 加速时间(Jog,Home)Ix21 S-曲线加速时间(Jog,Home)6 6)受控制电机的运动方式)受控制电机的运动方式第27页/共66页Ix20 加速时间(Jog,Home)Ix21 S-曲线加速时间(Jog,Home)6 6)受控制电机的运动方式)受控制电机的运动方式第28页/共66页7)通过设置 I变量可以控制以下典型 P.I.D 伺服环FollowingError跟随误差CommandedPosition指令位置ActualPosition实际位置=-P(proportional gain比例增益)Ix30 Spring刚性,刚度I(integral gain积分增益)Ix33D(derivative gain微分增益)Ix31 Shock Absorber 减震,吸收第29页/共66页第30页/共66页8 8)重要)重要P P变量及其功能变量及其功能P变量是用户全局变量,可用于PMAC编程中的计算w 48位浮点形式w 1024 P变量从 P0 to P1023可用于:1.计算 P100=P101*(sin(45)2.软件触发 IF(M1!=1 AND P10=0)利用P变量及DSP进行大量运算OPEN PROG 1 CLEARWHILE(1=1)IF(P10)P2=SIN(P1)+COS(P1)p3=2 IF(P13)P2=SIN(P1)+COS(P1)P3=2 w w IF(P199)P2=SIN(P1)+COS(P1)p3=99 ENDIF w w ENDIF ENDIF X2000 P1=P1+1ENDWHILECLOSE第31页/共66页8 8)用户定义坐标系)用户定义坐标系允许定义的轴:X,Y,Z,U,V,W,A,B,CX,Y,Z:传统上的主要直线轴U,V,W:传统上的第二直线轴A,B,C:传统的旋转轴u(A 围绕 X,B 围绕 Y,C 围绕 Z)u位置翻转(Ix27)将电机和坐标轴绑定#1-X#2-Y#3-Zu笛卡尔坐标轴可以是直线轴电机的组合:#1-A11X+A12Y+A13Z+B1#2-A21X+A22Y+A23Z+B2#3-A31X+A32Y+A33Z+B3这样允许坐标系旋转和平移,可推广到更多轴的方式第32页/共66页9 9)编写)编写PMACPMAC运动程序运动程序n运动指令X1000 Y2000 Z3000U(P1*3.14159)V(20*SIN(Q6)DWELL,DELAYn模态指令ABS,INC,FRAX,NORMALLINEAR,RAPID,CIRCLEn,SPLINEn,PVTTA,TS,TM,Fn变量赋值variable=expressionn逻辑控制表达式N,O,GOTO,GOSUB,CALL,RETURNG,M,T,D(special CALL statements)IF,ELSE,ENDIF,WHILE,ENDWHILEn辅助表达式 COMMAND,SEND,DISPLAYENABLE PLC,DISABLE PLC第33页/共66页nLogic Operators逻辑操作符&(bit by bit AND)|(bit by bit OR)(bit by bit Exclusive OR)Comparators比较符=(equal to)!=(not equal to)(greater than)!(not greater than;less than or equal to)axis scalingaxis;绑定电机于坐标系OPEN PROG n CLEAR;打开(新建)一个程序 电机运动命令及数学运算,逻辑判断CLOSE;程序结束从内存中删除一个程序OPEN PROGn CLEARCLOSE9)编写PMAC运动程序第35页/共66页Example:*Set-up and Definitions*DEL GAT;Erase any defined gather buffer&1;Coordinate System 1CLOSE;Make sure all buffers are closed#1-X;Assign motor 1 to the X-axis-1 program unit;of X is 1 encoder count of motor#1*Motion Program Text*OPEN PROG 1;Open buffer for program entry,Program#1CLEAR;Erase existing contents of bufferLINEAR;Blended linear interpolation move modeABS;Absolute mode-moves specified by positionTA500;Set 1/2 sec(500 msec)acceleration timeTS0;Set no S-curve acceleration timeF5000;Set feedrate(speed)of 5000 units(cts)/secX10000;Move X-axis to position 10000DWELL500;Stay in position for 1/2 sec(500 msec)X0;Move X-axis to position 0CLOSE;Close buffer-end of programTo run this program:&1 B1 R;Coord.System 1,point to Beginning of Program 1,Run9)编写PMAC运动程序第36页/共66页1010)PMACPMAC运动程序执行运动程序执行PMAC程序的运行模式:u在线命令方式执行PMAC运动指令(命令行方式)u下载到PMAC缓冲区内,再发送运行命令方式开始一个程序u指向一个坐标系,用在线指令:&nu用在线指令指向程序:Bnu用在线指令运行:R or 停止程序u用在线指令指向坐标系:&nu用在线指令:Q,S,A,or ,第37页/共66页 CNC的任务通常可分为两大类:。管理任务主要承担系统资源管理和系统各子任务的调度,负责系统的程序管理、显示、诊断等子任务;控制任务主要完成CNC的基本功能:译码、刀具补偿、速度预处理、插补运算、位置控制等任务。CNC装置在工作中这些任务不是顺序执行的,而往往需要多任务并行处理。如:11)实时操作系统管理任务和控制任务a)CNC的操作系统(1)当机床正在加工时(执行控制任务),要实时显示加工状态(管理任务)。这是控制任务与管理的并行;(3)在控制任务中更是如此,为了保证加工的连续性,刀具补偿、速度处理、插补运算以及位置控制必须同时不间断执行。(2)在管理任务中也是如此,当用户将程序送人系统时,需要实时显示输入的内容;第38页/共66页 一般地,CNC装置通常采用循环调度和优先抢占调度相结合的方法来解决上述问题的。假定某CNC装置软件将其功能仅分为三个任务:位置控制、插补运算和背景程序。位置控制优先级最高,插补运算其次,背景程序相对最低。系统规定:位置控制任务每4ms执行一次,插补运算8ms执行一次,则两个任务都由定时中断激活。当位置控制和插补运算都不执行时便执行背景程序,正因为如此才称其为“背景”程序。系统的运作是:在完成初始化后,自动进入背景程序,在背景程序中采用循环调度的方式,轮流反复地执行各个子任务。优先级高的任务(如位置控制或插补运算任务)可以随时中断背景程序的运行。同样位置控制也可中断插补运算的运行。第39页/共66页初始化显示译码刀补I/O循环调度优先抢占调度第40页/共66页b)Windows OS 的限制l非实时(非决策)l应用程序不能进入I/O层面l有时驱动不稳定(不适用于工业使用)虽然real-time与快速反应看似相同但不同。其区别在于固定的时间之内是否可能一定完成被预定的处理。虽然,经过使用高速CPU,OS的轮转时间(反应速度)被改善,它却不一定意味着它接近real-time控制。real-time是在固定的时间之内,所有的100个任务可完成100次.如果它能完成99次,但1次没完,它不能叫作real-time。实际上,既使在低速CPU上,real-time控制仍可实现,因此OS结构比CPU速度更重要。第41页/共66页c)INtime的结构Pentium级Windows执行Windows内核Windows硬件抽像化层Win32程序Win32APIsWindows硬件任务实时内核实时硬件任务实时优先级NT优先级最高级最低级最高级最低级实时程序INtimeAPIs用户模式-ring3内核模式-ring0第42页/共66页d)PMAC的任务调度PMAC Tasks As an example,a 40 MHz PMAC could perform the following tasks with the estimated percentage of the total computational power as indicated:第43页/共66页PLCPLC主机命令响应安全检测/看门狗主机命令响应安全检测/看门狗18轴运动规划18轴伺服更新18轴电流换向低优先级高优先级第44页/共66页1 1、总线的分类与层次、总线的分类与层次 1)1)系统总线:是微处理器芯片对外引线信号的延伸系统总线:是微处理器芯片对外引线信号的延伸或映射,是微处理器与片外存储器及或映射,是微处理器与片外存储器及I/0I/0接口传输信接口传输信息的通路。系统总线信号按功能可分为三类:息的通路。系统总线信号按功能可分为三类:地址总线(地址总线(WhereWhere):指出数据的来源与去向。地):指出数据的来源与去向。地址总线的位数决定了存储空间的大小。址总线的位数决定了存储空间的大小。数据总线(数据总线(WhatWhat)提供模块间传输数据的路径,数)提供模块间传输数据的路径,数据总线的位数决定微处理器结构的复杂度及总体性据总线的位数决定微处理器结构的复杂度及总体性能。能。控制总线(控制总线(WhenWhen):提供系统操作所必需的控制信):提供系统操作所必需的控制信号,对操作过程进行控制与定时。号,对操作过程进行控制与定时。5.3.1 PC机与运动控制卡的信息交换 PCI运动控制卡设计第45页/共66页MPURAMROMI/O接口外设ABDBCB地址总线AB、数据总线DB、控制总线CB 2)扩充总线:亦称设备总线,用于系统I/O扩充。与系统总线工作频率不同,经接口电路对系统总统信号缓冲、变换、隔离,进行不同层次的操作(ISA、EISA、MCA)3)局部总线:扩充总线不能满足高性能设备(图形、视频、网络)接口的要求,在系统总线与扩充总线之间插入一层总线。由于它经桥接器与系统总线直接相连,因此称之为局部总线(PCI)。第46页/共66页2、PCI总线主要性能 总线时钟频率:带宽:时钟频率 位宽32位时为133MB/s,位宽64位时为266MB/s 时钟频率66MHz 位宽32位时 为266MB/s,位宽64位时为532MB/s 总线宽度:32位(5V)/64位()时钟同步方式 独立于处理器与CPU及时钟频率无关 支持突发式读写方式,提供首地址即可顺序读写数据。支持并发操作,CPU和PCI可并行工作。PCI控制器能自动执行数据缓冲区到外设的传输,无须CPU干预。支持总线主控技术。允许主控部件(智能设备或多处理器中任一处理器)取得总线控制权,加速数据传输。具有自动配置功能,支持即插即用。第47页/共66页3、PCI总线的引脚 PCI总线支持32位和64位接口卡,64位卡有94个接插点,32位卡仅有接插点162-|PCI Component Side(side B)|optional|_ mandatory 32-bit pins 64-bit pins _|_|-|-|b01 b11 b14 b49 b52 b62 b63 b94第48页/共66页PCI总线引线示意图“#”:表示低电平有效,否则为高电平有效第49页/共66页系统信号CLK:系统时钟信号。为所有处理提供定时,在时钟的上升沿采样总线上各信号线的信号。CLK的频率称为PCI总线的工作频率,为33MHz。RST#:复位信号。用来使PCI所有的特殊寄存器、定序器和信号恢复初始状态。地址和数据信号 AD31:00 地址和数据共用相同的PCI引脚。FRAME#有效时是地址期,IRDY#与TRDY#同时有效时是数据期。一个PCI总线传输事务包含了一个地址信号期和接着的一个(或多个)数据期。C/BE3:0 总线命令和字节使能多路复用信号。在地址期,定义总线命令;在数据期,用作字节使能。PAR 奇偶校验信号。它通过 AD31:00 和C/BE3:0进行奇偶校验。第50页/共66页接口控制信号 FRAME#:当一个主控设备请求总线时,采样FRAME#、IRDY#,若均为无效电平,并且同一时钟的上升沿GNT#为有效电平,就认定以获得总线控制权。在主控设备发起传输时,将FRAME#驱动为有效电平,并一直保持,直到开始传输最后一个数据时将FRAME#驱动为无效电平。IRDY#:主设备准备好信号。当与TRDY#同时有效时,数据能完整传输。在写周期,IRDY#指出数据已在AD31:00上;在读周期,IRDY#指示主控器准备接收数据。TRDY#:从设备准备好信号。预示从设备准备完成当前的数据传输。在读周期,TRDY#指示数据变量已在AD31:0中;在写周期,指示从设备准备好接收数据。STOP#:从设备要求主设备停止当前数据传送。LOCK#:锁定信号。用于锁定目标存储器地址。IDSEL:初始化设备选择。在参数配置读写传输期间,用作设备配置寄存器的片选信号。DEVSEL#:设备选择信号。该信号有效时,表明总线上某设备被选中。第51页/共66页仲裁信号 REQ#:总线占用请求信号。任何主控器都有它自己的REQ#信号。GNT#:总线占用允许信号,指明总线占用请求已被响应。任何主设备都有自己的GNT#。F总线命令 总线命令在地址期 C/BE3:0#线有效时被译码,表明事务的类型0000 中断确认 中断识别命令 0001 特殊周期 提供在PCI上的简单广播机制 0010 I/O读 从I/O口地址中读数据 0011 I/O写 向I/O地址空间写数据0110 存储器读 从内存空间中读出数据 0111 存储器写 向内存空间写入数据 1100 多重存储器读 只要FRAME#有效,就应保持存储器管道连续,以便大量传输数据 第52页/共66页F数据传输Master置REQ#仲裁器许可(GNT#)FRAME#,AD放slave地址,C/BE#放命令信号地址译码,slave置DEVSEL#IRDY#,TRDY#AD放数据master只剩最后一组数据时将FRAME#置高放开IRDY#释放总线控制权第53页/共66页F数据传输数据传输由启动方(主控)和目标方(从控)共同完成所有事件在时钟下降沿同步,在时钟上升沿对信号线采样系统时钟标志传输开始与结束地址/数据复用总线命令/字节使能信号master可以传输数据标志slave可以传输数据标志slave发现自己被寻址时置低应答#第54页/共66页a.总线主控设备获得总线控制权后,将FRAME#驱动至有效电平,开始此次传输。同时启动方将目标设备的地址放在AD总线上,命令放在C/BE#线上。b.目标设备从地址总线上识别出。c.启动方停止启动AD总线,同时改变C/BE#线上的信号,并驱动IRDY#至有效电平,表示已作好接收数据的准备。系统时钟标志传输开始与结束地址/数据复用总线命令/字节使能信号master可以传输数据标志slave可以传输数据标志slave发现自己被寻址时置低应答#第55页/共66页d.目标设备将DEVSEL#驱动至有效电平,将被请求的数据放在AD总线上,并将TRDY#至有效电平,表示总线上的数据有效。e.启动方读数据。f.目标设备未准备好传送第二个数据块,因此将TRDY#驱动至无效电平。系统时钟标志传输开始与结束地址/数据复用总线命令/字节使能信号master可以传输数据标志slave可以传输数据标志slave发现自己被寻址时置低应答#第56页/共66页g.第6个时钟,目标方已将第三个数据块放到数据总线上,但启动方未准备好,故因此将IRDY#驱动至无效电平。i.启动方知道第三个数据块是要传输的最后一个,将FRAME#驱动至无效电平,停止目标方,同时将IRDY#驱动至有效电平,完成接收。j.启动方将IRDY#驱动至无效电平,总线回到空闲状态。系统时钟标志传输开始与结束地址/数据复用总线命令/字节使能信号master可以传输数据标志slave可以传输数据标志slave发现自己被寻址时置低应答#第57页/共66页4、双口RAM:快速双向数据交换通道 要实现PC机和运动控制卡之间的数据传送,必须在PC机和运动控制卡之间建立起双向的数据交换通道,双口RAM是一种性能优良的快速通信器件,适用于多CPU分布式系统及高速数字系统的场合。它提供了两路完全独立的端口,每个端口都有完整的地址、数据、控制线。对器件两边的使用者而言,它与一般RAM并无大的区别,只有在两边同时读写同一地址单元时,才发生争用现象,利用双口RAM提供的指示信号,采用合适的通信规则,可以避免争用,实行快速数据交换。第58页/共66页 上位PC机与单片机8031之间选用2KX8位的带中断请求信号INT和忙信号BUSY的IDT71321I/O寻址控制11位地址线8位数据线第59页/共66页IDT71321提供了硬件判优和中断判优两种方式,分别利用INT和BUSY引脚信号。当两端口争用同一地址单元式,由片内硬件电路,根据两边的地址、片选、读写信号到达的先后顺序,裁决哪端口有使用权。如左端口优先使用,则自动将右端口的BUSYR信号拉为低电平,通知右侧暂停读写操作。当使用中断功能时,每个端口各分配一个固定的双口RAM单元,称为信箱或消息中心,左端为7FEH,右端为7FFH.其时序逻辑是当右端写7FEH单元时,左INTL变低触发中断,左端口读7FEH时,将INTL置1清中断。左端情况类似,只是对7FFH单元操作。当使用中断判优时,右端口不应写7FFH单元,左端口不应写7FEH单元,两单元中按约定置入用户握手信息。第60页/共66页运动控制卡选择:DSP是一种特别适合于进行数字信号处理运算的微处理器。采用哈佛结构、多级流水线、专用的硬件乘法器及特殊的DSP指令等。通用微处理器的ALU(算术逻辑单元)只能进行加、减及逻辑运算,乘法指令是由加法和移位来实现的,故需许多个指令周期来完成。DSP由于具有专用的硬件乘法器(一个或两个),可在一个指令周期内完成至少一次乘法,同时还有一次加法。5、基于PC的伺服运动控制系统设计分析上位机选择:上位机(IPC、CNC、PC)硬件选择;上位机操作系统选择(根据运动控制卡的功能)FPGA/CPLD逻辑可编程控制器件代替复杂的逻辑和时序电路。第61页/共66页1)PCI接口运动控制卡设计 微处理器系统(处理器、辅助电路、板载存储器),完成系统的管理协调,位置控制。PCI通信接口包括PCI接口逻辑,高速双端口存储器。反馈处理主要包括数字滤波、鉴相、倍频、计数等,获取各轴实际位置等。模拟量输出提供8根实轴驱动模块的8路模拟信号。I/O处理模块。第62页/共66页2)运动控制器PCI通信接口设计 PCI通信接口包含4个部分:a)PCI逻辑完成PCI总线接口信号的实现,提供了PCI总线信号转变为目标设备所需要或可以使用的接口信号,这些信号可以供上位机通过少量I/O端口对下位机的存储器进行读写操作。这里采用3个I/O地址单元,两个是预置数端口,另一个是数据端口。地址可以通过IOCS、BCS、IOW、IOR、A0和A1的组合实现。第63页/共66页 b)可预置数计数器占用两个I/O端口,数据位数根据不同容量的DPRAM的地址线位数决定。由上位机在访问存储器之前将存储器中的数据区起始地址送预置数端口地址,计数器的技术输出与DPRAM的一侧地址线相连,但上位机对数据端口执行一次读写操作,计数器中的计数值就自动加1,指向DPRAM的下一个存储单元。预置数端口的地址译码与C/BE信号配合,使得该端口从AD15.0取数。c)读写控制逻辑实现对DPRAM的读写使能和时序的控制。d)双端口随机存储器(DPRAM)有两套完整的总线结构,提供内部仲裁允许两套总线同时读写,完成数据在两个异步系统中的共享。通信接口的数据传输由上位机对预置数端口预置起始地址开始,随后上位机对数据端口的反复读写就可以与运动控制卡成批交换数据。第64页/共66页谢谢观看!第65页/共66页感谢您的观看!第66页/共66页