计算机控制技术顺序控制与数字控制教学PPT.ppt

上传人:椰子壳 文档编号:3842596 上传时间:2019-09-29 格式:PPT 页数:197 大小:4.76MB
返回 下载 相关 举报
计算机控制技术顺序控制与数字控制教学PPT.ppt_第1页
第1页 / 共197页
计算机控制技术顺序控制与数字控制教学PPT.ppt_第2页
第2页 / 共197页
计算机控制技术顺序控制与数字控制教学PPT.ppt_第3页
第3页 / 共197页
计算机控制技术顺序控制与数字控制教学PPT.ppt_第4页
第4页 / 共197页
计算机控制技术顺序控制与数字控制教学PPT.ppt_第5页
第5页 / 共197页
点击查看更多>>
资源描述

《计算机控制技术顺序控制与数字控制教学PPT.ppt》由会员分享,可在线阅读,更多相关《计算机控制技术顺序控制与数字控制教学PPT.ppt(197页珍藏版)》请在三一文库上搜索。

1、第三章 顺序控制与数字控制,3.1 顺序控制 3.2 数字程序控制 习题,3.1 顺序控制,3.1.1 顺序控制系统的类型 1. 按被控对象的特性分类 顺序控制包括时间顺序控制系统、逻辑顺序控制系统和条件顺序控制系统等。,时间顺序控制系统是固定时间程序的控制系统。它以执行时间为依据,每个设备的运行或停止与时间有关。例如,在物料的输送过程中, 为了防止各输送带电动机同时启动造成负荷的突然增大,并且为了防止物料的堵塞,通常先启动后级的输送带电动机,经一定时间延时后,再启动前级的输送带电动机。 在停止输送时,先停止前级输送带的电动机,延时后再停止后级输送带的电动机,使在输送带上的物料能输送完毕。 又

2、例如, 在交通控制系统中,东西南北方向各色信号灯的点亮和熄灭是在时间上已经确定的,所以,它将按照一定的时间来点亮或熄灭信号灯。这类顺序控制系统的特点是各设备运行时间是事先已确定的,一旦顺序执行, 将按预定的时间执行操作指令。,逻辑顺序控制系统按照逻辑先后顺序执行操作指令,它与时间无严格的关系。例如,在批量控制的反应釜中,反应初期, 首先打开基料阀,基料流入反应釜中,达到一定液位时,启动搅拌机。在搅拌开始后,液位因基料在继续流入而升高,当达到某一液位时,反应基料停止加入,其它物料开始加入,当液位达到另一设定液位时, 物料停止加入,开始加入蒸汽升温, 并开始反应。 图31为反应釜工作流程图。,图3

3、-1 反应釜工作流程图,在实际中基料与物料分别存放在各自的储液罐内,在这个过程中,进料的流量大小受到进料储罐液位的影响, 液位高, 则进料压力大,流量也大,达到启动搅拌机的液位所需时间也短。同样,在加入其它物料时,因受物料流量的影响,液位达到所需液位的时间也不同。但是,在这类控制系统中, 执行操作指令的逻辑顺序关系不变,因此,称这类控制系统是逻辑顺序控制系统。这类控制系统在工业生产过程的控制中应用较多。,条件顺序控制系统是以执行操作指令的条件是否满足为依据,当条件满足时,相应的操作就被执行,不满足时,将执行另外的操作。 典型的例子是电梯控制系统。当某一层有乘客按了向上按钮后,如电梯空闲,则电梯

4、自动向该层运行。 当乘客进入电梯轿厢,并按了所需去的楼层按钮后, 在一定的时间延时和关闭电梯门后,电梯将运行,一直等到电梯到达了所需的楼层, 自动打开轿厢门。这里,电梯的运行根据条件确定,可向上运行也可向下运行,所停的楼层也根据乘客所需确定。这类顺序控制系统在工业生产过程控制中也有较多的应用。,2. 按控制技术手段分类 顺序控制系统在工业控制领域的应用很广,顺序控制系统实现的方案有采用继电器组成的逻辑控制系统、采用晶体管的无触点逻辑控制系统、采用可编程序控制器的逻辑控制系统和采用计算机的逻辑控制系统等。 继电器组成的顺序逻辑控制系统是历史最久的一种实现方法。它的控制功能全部由硬件完成,即采用继

5、电器的常开常闭触点、延时断开延时闭合触点等可动触点和普通继电器、时间继电器、 接触器等执行装置完成所需的顺序逻辑功能。例如, 电动机的开停控制等。受继电器触点可靠性的影响和使用寿命的限制, 这类控制系统的使用故障较多,使用寿命较短, 加上因采用硬件完成顺序逻辑功能, 因此更改不便, 维修困难。,晶体管组成的无触点顺序逻辑控制因减少了连接点的可动部件,可靠性大大提高。晶体管、 晶闸管等半导体元器件的使用寿命也较继电器的触点使用寿命长,因此,在20世纪70年代得到了较大的发展。它也是用硬件组成顺序逻辑功能, 更改也不很方便,但因采用功能模块的结构,部件的更换和维修较继电器顺序逻辑控制系统要方便。,

6、可编程序控制器是在计算机技术的促进下得以发展起来的新一代顺序逻辑控制装置。与上述的组成方法不同,它用软件完成顺序逻辑功能, 用计算机来执行操作指令,实施操作,因此, 顺序逻辑功能的更改十分方便。加上得益于计算机的高可靠性和高运算速度,使得可编程序控制器一出现就得到了广泛的应用。,计算机组成的顺序逻辑控制系统指在集散控制系统或工控机中实现顺序逻辑控制功能的控制系统。在大型的顺序逻辑控制和连续控制相结合的工程应用中,这类控制系统大有用武之地。在这类控制系统中,有连续量的控制和开关量的控制。 采用计算机对它们进行操作和管理,必要时,把信息传送到上位机或下送到现场控制器和执行机构。 由于计算机技术、半

7、导体技术、通信和网络技术、控制技术、软件技术等高新科学技术的发展,工业生产过程的控制也出现了飞速的发展,可编程序控制器将与其他计算机控制装置一起成为21世纪工业控制领域的主流控制装置。,3.1.2 顺序控制系统的组成 顺序控制系统的组成见图3-2, 它由五部分组成: (1) 输入接口:实现输入信号的电平转换。 (2) 控制器:接受控制输入信号,按一定的控制算法运算后,输出控制信号到执行机构,控制器具有记忆功能,能实现所需的控制运算功能。 (3) 输出接口:实现输出信号的功率转换。 (4) 检测机构:检测被控对象的状态信息。 (5) 显示报警装置:显示系统的输入、输出状态,报警等信息,便于了解过

8、程运行状态和对过程的操作、调试、事故处理等。,图3-2 顺序控制系统的组成,3.1.3 顺序控制系统的应用领域 1. 工业生产流水线 在机械、电子等制造工业中, 产品采用流水线的工作方式按先后次序进行。在这类工业生产过程中,部分控制操作是按时间的次序进行的,大部分控制操作是按逻辑顺序进行的。 这类顺序控制系统的应用十分广泛,例如数控机床、柔性制造系统、物料输送系统、生产流水线等。另外,在批量控制系统中,对不同批号的产品有不同的生产顺序、不同的配方和控制条件,这类控制系统对程序更改有较多的要求,在继电器顺序控制时期,这类控制系统实现较困难,采用可编程序控制器可较方便地实现,因此,这类控制系统的应

9、用也得到了较大的发展。,2. 安全生产监控系统 在石油化工、核电、冶金等工业领域,由于工作环境具有高温、高压、易燃、易爆、核辐射等特点,工作过程参数一旦偏离规定的范围, 就会发生事故, 造成设备损坏或人员伤亡,因此,必须对操作的过程参数进行控制。在这些工业生产过程中,要设置控制系统, 以防止事故的发生,这是顺序控制系统的另一个很重要的应用场合。,3. 家电产品 在家电产品中,顺序控制系统也有较广泛的应用。 洗衣机的顺序控制、冰箱的温度控制、空调系统等顺序逻辑控制系统是较常见的应用例子。家用电器的一些模糊控制系统、 自动烹调系统等也得到应用。总之,在家电领域,顺序控制系统还刚开始进入应用, 有很

10、大的发展前途。,3.1.4 顺序控制的应用实例 下面以冷加工自动线中钻孔动力头的自动控制顺序作为实际例子。 其加工过程分为以下几步: (1) 动力头在原位(原位行程开关x0受压)并按启动按钮A,电磁阀DT1通电,动力头快进。 (2) 碰上行程开关x1电磁阀DT2通电(DT1保持通电),由快进转工进。 (3) 碰上行程开关x2开始延时(继续工进)。,(4) 延时时间到DT1、 DT2断电,DT3通电,动力头快退。 (5) 动力头退回到原位(x0又受压)DT3断电,动力头停止。 完成一个周期的循环动作之后,又返回到第一步, 开始下一个循环的动作。钻孔动力头控制逻辑功能图如图3-3所示。,图3-3

11、钻孔动力头控制逻辑功能图,在加工过程中,钻孔动力头有快进、工进、工进延时、 快退、停止等五个工作状态,各工作状态的顺序转换是根据现场输入信号(由按钮、行程开关、延时继电器发出的)而定的。 显然, 钻孔动力头的自动控制就是顺序控制。,前已述,钻孔动力头在一个工作循环中有快进、工进、工进延时、快退和停止等五个工作状态。 从前一个工作状态转入下一个工作状态,是根据来自现场的输入信号的逻辑判断。 现场输入信号有启动按钮A、原位开关x0、行程开关x1和x2以及延时信号。 这些电器触点的通断,通过输入电路变成电位信号引到微型计算机的输入接口的输入端上,CPU按一定逻辑顺序读取这些信号,并逐一判断是否满足各

12、工作状态转换条件。若满足,则发出相应的转换工作状态的控制信号。控制信号从微型计算机的输出接口引出,经过隔离放大电路驱动相应的电磁阀吸合或释放, 从而改变液压油路的状态,使动力头进入新的工作状态。,若不满足,则等待(当CPU只控制一台动力头时)或跳过, 转向询问另一台动力头(当CPU控制多台动力头时)。 整个工作过程是以一定的硬件为基础, 通过CPU执行一段控制程序来实现的。 下面介绍采用AT89C51单片微型计算机实现动力头的顺序控制。 1. 输入输出接口设置 采用AT89C51单片微型计算机通过接口电路直接与外部连接,控制各执行机构完成生产过程。输入输出信号安排如表3-1所示。,表3-1 输

13、入输出信号安排,单片机AT89C51的P1口设置为输入,P3口设置为输出。表3-1中所标现场输入信号A、x0、x1、x2是经过输入电路处理后送来的电位信号。当开关受压时, 送来“1”信号,不受压时,送来“0”信号。计算机送出的控制信号使DT1、DT2或DT3吸合或释放,完成相应执行机构的控制动作(实际上应经过驱动电路)。,2. 控制程序流程图 控制程序流程图如图3-4所示。,图3-4 控制程序流程图,3. 控制程序 从图3-4程序流程图可以看到,控制程序所要完成的任务是, 按一定的逻辑顺序读取现场工作状态信号;按预先规定的逻辑算式进行与、或、非等逻辑运算;按运算结果判断是否发出某种控制信号。根

14、据图3-4所给出的流程图及表3-1所示输入输出信号排列,按程序实现数字逻辑功能的方法, 可编出控制程序如下:, STAGE1: MOV A,P1 ;读P1口输入信号 ANL A,03H ; 取出A信号和原位信号 CJNE A,03H STAGE1 ; 没有A信号和原位信号, 继续等待 STAGE2: MOV P3,01H ; 发快进命令 STAGE20: MOV A,P1 ; 读P1口输入信号 ANL A,04H ; 取出x1信号 CJNE A,04H STAGE20 ; 没有x1信号, 继续快进 STAGE3: MOV P3,02H ; 发工进命令 STAGE30: MOV A,P1 ; 读

15、P1口输入信号 ANL A,08H ; 取出x2信号 CJNE A,08H STAGE30 ; 没有x2信号,继续工进,STAGE4: LCALL DELAY ; 调延时子程序 MOV P3,04H ; 发快退命令 STAGE40: MOV A,P1 ; 读P1口输入信号 ANL A,02H ; 取出原位信号 CJNE A,02H STAGE40 ; 没有回到原位, 继续快退 STAGE5: LJMP STAGE1 ; 返回,转下次循环 ,延时子程序DELAY此处从略。,3.2 数字程序控制,3.2.1 数值插补计算方法 能根据输入的指令和数据,控制生产机械按规定的工作顺序、运动轨迹、运动距离

16、和运动速度等规律而自动完成工作的自动控制称为数字程序控制。 数字程序控制主要应用于机床自动控制,如用于铣床、 车床、加工中心、线切割机以及焊接机、气割机等的自动控制系统中。采用数字程序控制系统的机床叫做数字程序控制机床。 数字程序控制机床具有能加工形状复杂的零件,加工精度高, 生产效率高,便于改变加工零件品种等许多特点,它是实现机床自动化的一个重要发展方向。,数字程序控制系统一般由输入装置、输出装置、控制器和插补器等四大部分组成。目前硬件数控系统已很少采用,多数采用计算机数控系统,控制器和插补器功能以及部分输入输出功能都由计算机承担。 数字程序控制系统的插补器用于完成插补计算。插补计算就是按给

17、定的基本数据(如直线的终点坐标,圆弧的起、终点坐标等),插补(插值)中间坐标数据,从而把曲线形状描述出来的一种计算。插补器实际上是一个函数发生器,能按给定的基本数据,产生一定的函数曲线,并以增量形式(例如为脉冲)向各坐标连续输出, 以控制机床刀具按给定的图形运动。,多年来,在数字程序控制机床中最常采用的插补计算方法是逐点比较插补计算法(简称逐点比较法)和数字积分器插补计算法(简称数字积分法)。近几年又采用了一些新的插补计算法, 如时间分割插补计算法(简称时间分割法)和样条插补计算法等。 按插补器的功能可以分为平面的直线插补器、圆弧插补器和非圆二次曲线插补器及空间直线和圆弧插补器。因为大部分加工

18、零件图形都可由直线和圆弧两种插补器得到,所以,在数字程序控制系统中直线插补器和圆弧插补器应用最多。,所谓逐点比较插补法,就是它每走一步都要和给定轨迹上的坐标值进行一次比较,看这点在给定轨迹的上方或下方, 或是在给定轨迹的里面或外面,从而决定下一步的进给方向。如果原来在给定轨迹的下方,下一步就向给定轨迹的上方走,如果原来在给定轨迹的里面,下一步就向给定轨迹的外面走, 如此,走一步,看一看,比较一次,决定下一步走向,以便逼近给定轨迹, 即形成“逐点比较法”插补。,逐点比较法是以阶梯折线来逼近直线或圆弧等曲线的, 它与规定的加工直线或圆弧之间的最大误差为一个脉冲当量, 因此只要把脉冲当量(每走一步的

19、距离)取得足够小, 就可达到加工精度的要求。 下面分别介绍逐点比较法直线和圆弧插补原理及其插补计算的程序实现方法。,图3-5 第一象限直线,3.2.2 逐点比较法直线插补 1 直线插补计算原理 (1) 偏差计算公式: 按逐点比较法的原理,必须把每一插值点(动点)的实际位置与给定轨迹的理想位置间的误差, 即“偏差”计算出来,根据偏差的正、负决定下一步的定向, 逼近给定轨迹。因此,偏差计算是逐点比较法关键的一步。 下面以第一象限平面直线为例来推导其偏差计算公式。,假定加工如图3-5所示的直线OA。取直线起点O为坐标原点, (xe、ye)是已知的直线终点坐标。m(xm、ym)为加工点(动点),若m在

20、OA直线上,则根据相似三角形的关系可得,即,取直线插补的偏差判别式Fm为,(3-1),若Fm=0,表明m点在OA直线上;若Fm 0,说明xe=Xm时, ymye, 表明m点在OA直线上方; 若Fm 0,说明xe= Xm时, ymye, 表明m点在OA直线下方。 逐点比较法直线插补的原理是:从第一象限直线的起点(即坐标原点)出发,当Fm0时,沿+x轴方向走一步,当Fm 0时, 沿+y方向走一步,当两方向所走的步数与终点坐标(xe、ye)相等时, 发出终点到信号,停止插补。 如果直线按式(3-1)计算偏差,要做两次乘法,一次减法, 比较麻烦, 因此需要进一步简化。,对于第一象限而言,设加工点正处于

21、m点,当Fm0时,表明m点在OA上或在OA的上方,应沿+x方向进给一步,走一步后新的坐标值为,xm+1=xm+1 ym+1=ym,该点的偏差为,Fm+1=ym+1xe-xm+1ye =ymxe-(xm+1)ye =ymxe-xmye-ye =Fm-ye,(3-2),若Fm0时,表明m点在OA的下方,应向+y方向进给一步,走一步后新的坐标值为,xm+1=xm ym+1=ym+1,该点的偏差为,式(3-2)和式(3-3)是简化后的偏差计算公式, 在公式中只有加、减运算,只要将前一点的偏差值与等于常数的终点坐标值xe、ye相加或相减,即可得到新的坐标点的偏差值。加工的起点是坐标原点,起点的偏差是已知

22、的,即F0=0,这样,随着加工点前进,新加工点的偏差Fm+1都可以由前一点偏差Fm和终点坐标相加或相减得到。这样就省去了乘法运算。,(2) 终点判断方法: 逐点比较法的终点判断有多种方法, 下面介绍两种: 第一种方法是,设置x、y两个减法计数器,在加工开始前, 在x、y计数器中分别存入终点坐标值xe、ye,在x坐标(或y坐标)进给一步时,就在x计数器(或y计数器)中减去1,直到这两个计数器中的数都减到零时,到达终点。 第二种方法是,用一个终点计数器,寄存x和y两个坐标进给的总步数,x或y坐标进给一步-1,若-1=0就到达终点。,(3) 插补计算过程: 插补计算时,每走一步,都要进行以下四个步骤

23、(又称四个节拍)的逻辑运算和算术运算: 偏差判别即判别偏差F0或F0,这是逻辑运算, 根据逻辑运算结果决定进行何种运算及何种进给。 坐标进给根据所在象限及偏差符号, 决定沿哪个坐标轴以及是沿正向还是负向进给,这也是逻辑运算。,偏差计算进给一步后,计算新的加工点对规定图形的偏差, 作为下一次偏差判别的依据。 这是算术运算。 终点判断进给一步后,终点计数器减1。判断是否到达终点,到达终点则停止运算,未到终点则返回到第一步。如此不断循环直到到达终点为止。,2 直线插补计算举例 设加工第一象限直线OA,起点为坐标原点,终点坐标xe=6, ye=4,试进行插补计算并作出走步轨迹图。 计算过程如表3-2所

24、示。表中的终点判断是采用前述的第二种方法,即设置一个终点计数器,寄存x和y两个坐标进给的总步数,每进给一步-1, 若-1=0, 则到达终点。,表3-2 直线插补过程,走步轨迹如图3-6所示。,图3-6 直线插补走步轨迹图,3 四个象限直线插补计算公式 不同象限直线插补的偏差符号及进给方向如图3-7所示。 由图可知,第二象限的直线OA2,其终点坐标为(-xe,ye),在第一象限有一条和它对应y轴的直线OA1,其终点坐标为(xe, ye)。当我们从O点出发,按第一象限直线OA1进行插补时,若把沿x轴正向进给改为x轴负向进给,这时实际插补所得的就是第二象限直线OA2,亦即第二象限直线OA2插补时的偏

25、差计算公式与第一象限的直线OA1的偏差计算公式相同,差别在x轴的进给反向。同理,如果插补第三象限终点为(-xe,-ye)的直线,只要插补终点值为(xe,ye)的第一象限的直线, 而将输出的进给脉冲由+x变为-x、+y 变为-y方向即可,以此类推。所有四个象限的偏差计算公式和进给方向列于表3-3中。,图3-7 四个象限直线的偏差符号及进给方向,表3-3 直线插补计算公式及进给方向表,4直线插补计算的程序实现 由前面所述可知,逐点比较法插补计算是一些加、减运算和逻辑运算, 在以往的硬件数控系统中,是用硬件数字电路构成硬件插补器(运算器)来完成这些运算的。显然采用微型计算机来完成这些运算是十分容易的

26、,而且与硬件插补器相比较还具有可靠性高、灵活性大、装置体积小、成本低等许多优点。 与硬件插补器相对应,我们称完成插补计算的一段程序为“软件插补器”。下面以插补第一象限直线为例,介绍软件插补器的程序流程图及程序设计。,(1) 数据的输入及存放:在内存中开辟四个单元XX、YY、 JJ、MM分别存放终点值xe、终点值ye、总步数、加工点偏差值Fm。其中XX、YY的内容xe和ye在加工指令中提供,装入后在加工过程中保持不变。JJ的内容也在加工指令中提供, 加工过程中作减1修改,直至(JJ)=0表示加工结束。MM的内容初始清除为零, 依据加工过程中偏差计算结果而变化。,(2) 程序流程图及程序:第一象限

27、直线插补计算程序流程图如图3-8所示。从流程图中可明显看出插补计算的四个节拍。 偏差判别、偏差计算及终点判断是逻辑运算和算术运算,容易编写程序, 而坐标进给通常都是给步进电机发走步脉冲,通过步进电机(或再经液压放大)带动机床工作台或刀具移动。有关步进电机的控制问题待后面再介绍,这里先作为两个走步子程序调用。,图3-8 第一象限直线插补计算程序流程图,逐点比较法第一象限直线插补计算程序: MM EQU 30H XX EQU 31H YY EQU 32H JJ EQU 33H ORG 0000H JMP MAIN ORG 0080H MAIN: MOV A,00H ; 置偏差初值为零 MOV MM

28、,A,L1: MOV A,MM ; 取原偏差值到A CLR C SUBB A,80H JNC L11 ; 偏差0; 不, 转算L11 MOV A,YY ; 是,取Ye到A MOV R1,A ; Ye保存在R1 MOV A,MM ; 取原偏差值到A CLR C SUBB A,R1 ; A-Ye MOV MM,A ; 保存新偏差值 CALL STEP1 ; +x走步 JMP L12 ; 至终点判断,L11: MOV A,XX ; 算X, 取Xe到A MOV R1,A ; Xe保存在R1 MOV A,MM ; 取原偏差值到A ADD A,R1 ; MM+Xe MOV MM,A ; 保存新偏差值 CA

29、LL STEP3 ; +y走步 L12: MOV A,JJ ; 取总步数JJ到A DEC A ; JJ-1 MOV JJ,A ; JJJJ-1 JNZ L1 ; 终点?不,继续 JMP $ ; 是,结束,3.2.3 逐点比较法圆弧插补 1 圆弧插补计算原理 (1) 偏差计算公式:下面以第一象限逆圆为例来讨论偏差计算公式的推导方法。如图3-9所示, 设要加工圆弧AB,圆弧的圆心在坐标原点,并已知圆弧的起点为A(x0,y0),终点为B(xe,ye), 圆弧的半径为R。令瞬时加工点为m(xm, ym),它与圆心的距离为Rm。显然,我们可以比较Rm(加工点到圆心的距离)和R(圆弧半径)来反映加工偏差。

30、比较Rm和R,实际上是比较它们的平方值。,因此,可得圆弧偏差判别式如下:,若Fm=0,表明加工点m在圆弧上;Fm 0,表明加工点m在圆弧外;Fm 0,表明加工点m在圆弧内。 若Fm0,为了逼近圆弧,下一步向-x轴向进给一步并算出新的偏差。 若Fm0,为了逼近圆弧,下一步向+y轴向进给一步并算出新的偏差。 那么,如此一步步计算和一步步进给, 并在到达终点后停止运算,就可插补出如图39所示的第一象限逆圆弧AB。,图39 第一象限逆圆弧,为避免计算平方值而简化计算,下面推导偏差计算的递推公式。设加工点正处于m(xm、ym)点,其判别式为,若Fm0,应沿-x轴向进给一步,到m+1点,其坐标值为xm+1

31、=xm-1,ym+1=ym。,新加工点的偏差为,(3-4),若Fm0,应沿+y轴向进给一步,到m+1点,其坐标值为xm+1=xm,ym+1=ym+1。,新加工点的偏差为,(3-5),由式(3-4)和式(3-5)可知, 只要知道前一点的偏差,就可求出新的一点的偏差。公式中只有乘2运算, 避免了平方计算,计算大大简化了。 因为加工是从圆弧的起点开始,起点的偏差F0=0,所以新加工点的偏差总可以根据前一点的数据计算出来。,(2) 终点判断方法:圆弧插补的终点判断方法和直线插补相同。可将x、y轴走步步数的总和存入一个计数器,每走一步,从中减1,当-1=0时发出终点到信号。 (3) 插补计算过程: 圆弧

32、插补计算过程和直线插补计算过程相同,也是分偏差判别、坐标进给、偏差计算和终点判断四个节拍。但是偏差计算公式不同, 而且在偏差计算的同时还要进行加工点瞬时坐标(动点坐标)值的计算,以便为下一点的偏差计算作好准备。如对于第一象限逆圆来说,坐标值计算公式为,xm+1=xm-1; ym+1=ym+1,2 圆弧插补计算举例 设加工第一象限逆圆弧AB,已知起点A的坐标为x0=4、y0=0,终点B的坐标为xe=0、ye=4。试进行插补计算并作出走步轨迹图。计算过程如表3-4所示。根据表3-4可作出走步轨迹如图3-10所示。,表3-4 圆弧插补过程,图3-10 圆弧插补走步轨迹图,3 四个象限圆弧插补计算公式

33、 前面以第一象限逆圆为例推导出偏差计算公式, 并指出了根据偏差符号来确定进给方向。 其它三个象限的逆、顺圆的偏差计算公式可通过与第一象限的逆圆、顺圆相比较而得到。 下面先推导第一象限顺圆的偏差计算公式。设加工点现处于m(xm,ym)点。若偏差Fm0,则沿-y轴向进给一步,到m+1点, 新加工点坐标将是(xm,ym-1),可求出新的偏差为,(3-6),若偏差Fm0,则沿+x轴向进给一步,到m+1点,新加工点的坐标将是(xm+1,ym),同样可求出新的偏差为,(3-7),这样便可以第一象限的逆圆、顺圆为基准来推导其它三个象限的逆、顺圆插补计算公式。在下面叙述过程中,分别以符号SR1、SR2、 SR

34、3、SR4表示第一至第四象限的顺圆,以符号NR1、NR2、NR3、 NR4表示第一至第四象限的逆圆。,图3-11 四个象限圆弧,以第二象限顺圆为例,与SR2相对应的是第一象限逆圆NR1。这两个圆弧对y轴对称,起点坐标相对应,见图3-11。从图中可知,从各自起点插补出来的轨迹对于x坐标对称,即y方向的进给相同,x方向进给反向。机器完全按第一象限逆圆偏差计算公式进行运算,所不同的是将x轴的进给方向变为正向, 则走出SR2。这时圆弧的起点坐标要取其数字的绝对值。在现在情况下,图3-11中起点坐标(-x0、y0)送入机器时,起点坐标应取为(x0、y0),而-x0的“-”号则应去控制x轴的正向进给。,从

35、图3-11还可以看出, 当我们按第一象限逆圆NR1插补时,若将y坐标反向,则走出的就是第四象限顺圆SR4,若将x坐标和y坐标的进给方向同时反向, 走出的就是第三象限逆圆NR3。 由上述分析可知:NR1、SR2、NR3和SR4的偏差计算公式相同, 而只要改变进给方向便可归结到NR1的插补计算。按上述方法可知,NR2、SR3、NR4的偏差计算公式与SR1相同,所不同的也只是改变进给方向。,所有四个象限,8种圆弧插补时的偏差计算公式和坐标进给方向列于表3-5。,表3-5 圆弧插补计算公式和进给方向,4圆弧插补计算的程序实现 以插补第一象限顺圆(SR1)为例来设计软件插补器。按逐点比较法圆弧插补的偏差

36、计算公式及终点判断公式,应知道圆弧的起点坐标和终点坐标,根据起、终点坐标计算出两坐标走步的总步数=|xe-x0|+|ye-y0|。先输入起点坐标值x0、y0、总步数, 并应保存偏差值Fm。因此,与直线插补一样,应开辟四个内存单元来存放。设定XX为x轴坐标值存放单元(初始存x0); YY为y轴坐标值存放单元(初始存y0); JJ为总步数存放单元; MM为加工点瞬时偏差值存放单元XX、YY单元初始存放x0、y0 ,加工过程中依据坐标计算结果而变化。JJ单元的内容在加工过程中作减1修改,直至(JJ)=0表示加工结束。MM的内容初始清除为零,在加工过程中依据偏差计算结果而变化。,第一象限顺圆插补计算程

37、序流程图如图3-12所示。,图3-12 第一象限顺圆插补计算程序流程图,第一象限顺圆插补计算程序如下:,MM EQU 30H XX EQU 31H YY EQU 32H JJ EQU 33H ORG 0000H JMP MAIN ORG 0080H MAIN: MOV A,00H ; 置偏差初值为零 MOV MM,A,L1: MOV A,MM ; 取原偏差值到A CLR C SUBB A,80H JNC L11 ; 偏差0; 不, 转算L11 MOV A,YY ; 取Y到A DEC A MOV YY,A RL A MOV R1,A ; 2(Y-1)存在R1 MOV A,MM ; 取原偏差值到A

38、 DEC A CLR C SUBB A,R1 ; F-2Y+1 MOV MM,A ; 保存新偏差值 CALL STEP1 ; +X走步 JMP L12 ; 至终点判断,L11: MOV A,XX ; 是, X=X+1 INC A MOV XX,A RL A MOV R1,A ; 2(X+1)保存在R1 MOV A,MM ; 取原偏差值到A DEC A CLR C ADD A,R1 ; F+2X+1 MOV MM,A ; 保存新偏差值 CALL STEP4 ; -Y走步,L12: MOV A,JJ ;取总步数JJ到A DEC A ; JJ-1 MOV JJ,A ; JJ=JJ-1 JNZ L1

39、; 终点? 不, 继续 RET ; 是, 结束 STEP1: RET STEP4: RET,补充 线性化处理,根据数学方程式计算处理 线性插值法 二次抛物线插值法,计算法,计算法就是在已测参数的基础上,利用各种运算程序计算出需要的参数。用计算法处理数据一般可按以下步骤进行: (1)根据物理和工程实际求出被测参数的数学表达式; (2)根据要求的精度,确定A/D转换器的位数,并设计出相应的硬件电路; (3)根据被测参数的数学表达式,进行相应的数据处理。,返回本章首页,控制系统主程序和中断服务程序流程框图如图5-1和图5-2所示。,图5-1 主程序流程图,图5-2 中断服务程序流程图,流量计算程序流

40、程图如图5-3所示。,程序清单如下:,. . MOV MUL1_L,DATA ;差压信号P送MULT1 INC DATA MOV MUL1_H,DATA INC DATA MOV MUL2_L,DATA ;绝对压力P送MULT2 INC DATA MOV MUL2_H,DATA,ACALL MULTD ;计算PP MOV DIV1_H,PR_H MOV DIV1_L,PR_L INC DATA MOV DIV2_L,DATA ;绝对温度T送DIV2 INC DATA MOV DIV2_H,DATA ACALL DUBDIV ;计算PP/T MOV S_H,DIV1_H MOV S_L,DIV1

41、_L ACALL SORT MOV MUL1_L,SR,MOV MUL1_H,#00H INC DATA MOV MUL2_L,DATA INC DATA MOV MUL2_H,DATA ACALL MULTD MOV RESULT,PR_L INC RESULT, MOV RESULT,PR_H,程序中用到的双字节的乘法、除法子程序可参考第三章中的相关内容。 开方子程序: 程序入口:被开方数N存放地址S_H(高8位),S_L(低8位); 程序出口:平方根的整数部分存放在SR单元中。 SORT: MOV SR,#00H ;开放结果I置零 CLR C ;清进位标志位 LOOP: MOV A,SR

42、 ;求2I+1 ADD A,SR,MOV R7,#00H XCH A,R7 ADDC A,#00H XCH A,R7 ADDC A,#00H XCH A,R7 MOV R6,A CLR C ; 求N-(2I+1),MOV A,S_L SUBB A,R6 MOV S_L,A MOV A,S_H SUBB A,R7 MOV S_H,A JC RETU INC SR ;开方结果加1 SJMP LOOP RETU: RET,返回本节,查表法,顺序查表法 计算查表法 对分查表法,返回本章首页,顺序查表法,顺序查表法的步骤如下: (1)设定表格的起始地址。 (2)设定表格的长度。 (3)设定要搜索的关键字

43、。 (4)从表格的第一项开始,比较表格数据和关键字,进行数据搜索。 图5-4 顺序查表法程序流程图,图5-4 顺序查表法程序流程图,顺序查表法程序清单:,SEARCH: MOV R0,TABLE ;设定表格起始地址 MOV R1,LENGTH ;设定表格长度 CLR FLAG ;查找成功标志位清零 LOOP: MOV A,KEY ;读关键字 XRL A,R0 ;比较 JNZ NEXT ;未查找到关键字,继续 SETB FLAG ;查找到关键字,置位查找成功标志位 MOV A,R0 ;读出关键字在表中的地址 AJMP RETU ;退出查找 NEXT: INC R0 ;指向表格的下一个数据 DJN

44、Z R1,LOOP ;未检索完全部数据,继续 RETU: RET ;退出查找程序,子程序返回,返回本节,计算查表法,计算查表法适用于数据按一定的规律排列,并且搜索内容和表格数据地址之间的关系能用公式表示的有序表格。下面以实例介绍计算查表法的程序设计。 设计一巡回检测报警装置,要求能对16个通道输入值进行比较,当某一通道输入值超过该路的报警值时,发出报警信号。 通道值和报警值的存放地址之间的关系可用下面的公式表示: 报警值存放地址=数据表格起始地址+通道值2,设通道值(以16进制表示)存放在CIRC单元中,查表后的上限报警值存放在UPPER单元中,下限报警值存放在LOWER单元中。 查表程序清单

45、如下: CLR C ;进位标志位清零 MOV DPTR,#TAB ;设置数据表首址 MOV A,CIRC ;读检测通道值 RLC A ;检测通道值乘2 MOVC A,A+DPTR ;读上限值 MOV UPPER,A ;保存上限值 INC DPTR MOVC A,A+DPTR ;读下限值 MOV LOWER,A ;保存下限值 RET TAB: UPPER0,LOWER0,UPPER1,LOWER1,UPPER15,LOWER15 ;报警数据表,返回本节,对分查表法,对分查表法的最高搜索次数Log2N-1。和顺序查表法相比,对分法可以大大减少查表次数,提高检索效率。 对分查表法的程序流程图如图5-

46、5所示,对分查表法程序清单:,MOV BEGIN,#00H ;设置检索范围起点 MOV END,#DVL ;设置检索范围终点 MOV KEY,#KEY ; 设置关键字 MOV TIME,#01H ;置检索次数初值 LOOP: MOV R0,#ADD ;置数据区起始地址 MOV A,BEGIN ;取检索范围起点 ADD A,END ;起点+终点 CLR C RRC A ;除2 MOV FLAG,A ;存放对分检索取数序号 CLR C,XOR A,2AH ;判断是否到检索范围边缘 JZ LOOP3 ;是,跳转至LOOP3 MOV A,FLAG ADD A,R0 ;形成对分检索取数地址 MOV R0

47、,A MOV A,R0 ;读数 MOV DATA,A ;保存检索到的数据 CLR C SUBB A,KEY ;和关键字比较 JZ LOOP5 ;相等,则检索成功 JNC LOOP2 ;取的数据大,跳转至LOOP2 MOV 2AH,FLAG ;取的数据小,修改检索范围的起点,INC TIME ;检索次数加1 SJMP LOOP1 ;继续检索 LOOP2: MOV A,FLAG ;取的数据大,修改检索范围的终点 MOV END,A INC TIME SJMP LOOP1 ;继续检索 LOOP3: MOV R0,#DATA ;到达检索边缘,比较是否为关键字 MOV A,R0 CJNE A,KEY,LOOP4 ;不是关键字,跳转至LOOP4 MOV DATA,A ;是关键字,保存 SJMP LOOP5 ;退出检索程序 LOOP4: MOV A,#0FFH ;不是关键字,置检索不成功标志 MOV FLAG,A LOOP5: RET ;检索程序结束,返回本节,线性插值法,1. 线性插值原理 2. 线性插值的计算机实现 3. 线性插值法非线性补偿实例,1.线性插值原理,1.线性插值原理 设某传感器输入信号X和输出信号Y之间的关系如图5-6所示。,图5-6 传感器的输出特性曲线,从

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育


经营许可证编号:宁ICP备18001539号-1