第四章Micro850指令系统_第1页
第四章Micro850指令系统_第2页
第四章Micro850指令系统_第3页
第四章Micro850指令系统_第4页
第四章Micro850指令系统_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

1、2022年3月8日星期二第四章MICRO850指令系统14.1、Micro850控制器的内存组织4.1.1数据文件2022年3月8日星期二第四章MICRO850指令系统2 Micro850控制器的变量分为全局变量和本地变量,其中I/O变量默认为全局变量。全局变量在项目的任何一个程序或功能块中都可以使用,而本地变量只能在它所在的程序中使用。不同类型的控制器I/O变量的类型和个数不同,I/O变量可以在CCW组态编程软件中的全局变量中查看。I/O变量的名字是固定的,但是可以对I/O变量标记别名。除了I/O变量以外,为了编程的需要还要建立一些中间变量,变量的类型用户可以自己选择,常用的变量类型见表4-

2、1。2022年3月8日星期二第四章MICRO850指令系统3数据类型描述BOOL布尔量SINT单整型USINT、BYTE无符号单整型INT、WORD整型UINT无符号整型DINT、DWORD双整型UDINT无符号双整型LINT长整型ULINT、LWORD无符号长整型REAL实型LREAL长实型TIME时间DATE日期STRING字符串表4-1 常用数据类型2022年3月8日星期二第四章MICRO850指令系统44.1.2、程序文件 控制器的程序文件分为两部分内容:程序(Program)部分(相当于通常的主程序部分)和功能块(Function Block)部分,这里所说的功能块除了系统自身的函数

3、和功能块指令以外,主要是指用户根据功能需要,自己编写的具有一定功能的功能块,可以在程序(Program)或者功能块(Function Block)中调用,相当于常用的子程序。 每个功能块(Function Block)最多有20个输入和20个输出。2022年3月8日星期二第四章MICRO850指令系统5 在 一 个 项 目 中 可 以 有 多 个 程 序(Program)和多个功能块(Function Block)程序。多个程序(Program)可以在一个控制器中同时运行,但执行顺序由编程人员设定,设定程序(Program)的执行顺序时,在项目组织器中右键单击程序图标,选择属性,打开程序(Pr

4、ogram)属性对话框,在Order后面写下要执行顺序,1为第一个执行,2为第二个执行,以此类推。2022年3月8日星期二第四章MICRO850指令系统64.2、Micro850控制器的梯形图指令4.2.1梯形图指令元素2022年3月8日星期二第四章MICRO850指令系统71. 梯级2022年3月8日星期二第四章MICRO850指令系统8梯形图梯级示意图2. 线圈线圈(输出)也是梯形图的重要组成元件,它代表着输出或者内部变量。一个线圈代表着一个动作。它的左边必须有布尔元件或者一个指令块的布尔输出。线圈又分为以下几种类型:(1)直接输出2022年3月8日星期二第四章MICRO850指令系统92

5、022年3月8日星期二第四章MICRO850指令系统10(2)反向输出2022年3月8日星期二第四章MICRO850指令系统11(3)上升沿(正沿)输出2022年3月8日星期二第四章MICRO850指令系统12当左连接件的布尔状态由假变为真时,右连接件输出变量将被置1(即为真),其他情况下输出变量将被重置为0(4)下降沿(负沿)输出2022年3月8日星期二第四章MICRO850指令系统13当左连接件的布尔状态由真变为假时,右连接件输出变量将被置1(即为真),其他情况下输出变量将被重置为0(5)置位输出2022年3月8日星期二第四章MICRO850指令系统14(6)复位输出2022年3月8日星期

6、二第四章MICRO850指令系统153. 接触器接触器在梯形图中代表一个输入的值或是一个内部变量,通常相当于一个开关或按钮的作用。有以下几种连接类型(1)直接连接2022年3月8日星期二第四章MICRO850指令系统16(2)反向连接2022年3月8日星期二第四章MICRO850指令系统17(3)上升沿(正沿)连接2022年3月8日星期二第四章MICRO850指令系统18(4)下降沿连接2022年3月8日星期二第四章MICRO850指令系统192022年3月8日星期二第四章MICRO850指令系统20此例中有4个互锁的控制,每当满足其中之一的控制条件,便锁存自己的控制,解锁其他控制,不管其他控

7、制当前的状态如何,这样可以确保只有一个控制在执行,这是一种十分可靠的做法2022年3月8日星期二第四章MICRO850指令系统21指令块(Instruction blocks) 块(Block)元素指的是指令块,也可以是位操作指令块、函数指令块或者是功能块指令块。在梯形图编辑中,可以添加指令块到布尔梯级中。加到梯级后可以随时用指令块选择器设置指令块的类型,随后相关参数将会自动陈列出来。2022年3月8日星期二第四章MICRO850指令系统222022年3月8日星期二第四章MICRO850指令系统234.2、Micro850控制器的梯形图指令4.2.2梯形图执行控制指令2022年3月8日星期二第

8、四章MICRO850指令系统241. 返回(Returns):2022年3月8日星期二第四章MICRO850指令系统252.跳转(Jumps):分为无条件跳转和条件跳转3.分支(Branches)2022年3月8日星期二第四章MICRO850指令系统26分支元件能产生一个替代梯级。可以使用分支元件在原来梯级基础上添加一个平行的分支梯级2022年3月8日星期二第四章MICRO850指令系统274.3、Micro850控制器的功能块指令2022年3月8日星期二第四章MICRO850指令系统28功能块指令是Micro850控制器编程中的重要指令,它包含了实际应用中的大多数编程功能。种类描述报警(Al

9、arms)超过限制值时报警布 尔 运 算 ( B o o l e a n operations)对信号上升下降沿以及设置或重置操作通讯(Communications)部件间的通讯操作计时器(Time)计时计数器(Counter)计数数 据 操 作 ( D a t a manipulation)取平均,最大最小值输入/输出(Input/Output)控制器与模块之间的输入输出操作中断(Interrupt)管理中断过 程 控 制 ( P r o c e s s control)PID操作以及堆栈程 序 控 制 ( P r o g r a m control)主要是延迟指令功能块表4-2 功能块指令

10、种类2022年3月8日星期二第四章MICRO850指令系统29功能块指令报警类指令只有限位报警一种该功能块用高限位和低限位限制一个实数变量。限位报警使用的高限位和低限位是EPS参数的一半。其参数列表见表4-32022年3月8日星期二第四章MICRO850指令系统301. 报警限位报警功能块及其时序图2022年3月8日星期二第四章MICRO850指令系统31参数参数类型数据类型描述ENInputBOOL功能块使能。为真时,执行功能块为假时,不执行功能块HInputREAL高限位值XInputREAL输入:任意实数LInputREAL低限位值EPSInputREAL滞后值(须大于零)QHOutpu

11、tBOOL高位报警:如果X大于高限位值H时为真QOutputBOOL报警:如果X超过限位值时为真QLOutputBOOL低位报警:如果X小于低限位值L时为真2022年3月8日星期二第四章MICRO850指令系统32表4-3 限位报警功能块参数列表限位报警功能块的用法限位报警的主要作用就是限制输入,当输入超过或者低于预置的限位安全值时,输出报警信号。在本功能块中X端接的是实际要限制的输入,其它参数的意义可以参考上表。当X的值达到高限位值H时,功能块将输出QH和Q,即高位报警和报警,而要解除该报警,需要输入的值小于高限位的滞后值(H-EPS),这样就拓宽了报警的范围,使输入值能较快的回到一个比较安

12、全的范围值内,起到保护机器的作用。对于低位报警,功能块的工作方式很类似。当输入低于低限位值L时,功能块输出低位报警(QL)和报警(Q),而要解除报警则需输入回到低限位的滞后值(L+EPS)。可见报警Q的输出综合了高位报警和低位报警。2022年3月8日星期二第四章MICRO850指令系统33(2)指令调用功能块主程序调用LIM_ALRM2022年3月8日星期二第四章MICRO850指令系统34(2)指令调用梯形图主程序调用LIM_ALRM2022年3月8日星期二第四章MICRO850指令系统35(2)指令调用结构化文本主程序调用LIM_ALRM2022年3月8日星期二第四章MICRO850指令系

13、统362、布尔操作功能块描述F_TRIG(下降沿触发)下降沿侦测,下降沿时为真RS(重置)重置优先R_TRIG(上升沿触发)上升沿侦测,上升沿时为真SR(设置)设置优先布尔操作功能块用途2022年3月8日星期二第四章MICRO850指令系统37(1)下降沿触发2022年3月8日星期二第四章MICRO850指令系统38该功能块用于检测布尔变量的下降沿参数参数类型数据类型描述CLKInputB OOL任意布尔变量QOutputB OOL当CLK从真变为假时,为真。其他情况为假。下降沿触发功能块参数列表(2)重置(RS)2022年3月8日星期二第四章MICRO850指令系统39重置优先参数参数类型数

14、据类型描述SETInputBOOL如果为真,则置Q1为真RESET1InputBOOL如果为真,则置Q1为假(优先)Q1OutputBOOL存储的布尔状态重置功能块参数列表4、计数器功能块描述CTD(减计数)减计数CTU(增计数)增计数CTUD(给定加减计数)增减计数计数器功能块指令用途2022年3月8日星期二第四章MICRO850指令系统40(1)给定加减计数(CTUD)2022年3月8日星期二第四章MICRO850指令系统41从0开始加计数至给定值,或者从给定值开始减计数至0参数参数类型数据类型描述CUInputBOOL加计数(当CU是上升沿时,开始计数)CDInputBOOL减计数(当C

15、D是上升沿时,减计数)RESETInputBOOL重置命令(高级)(RESET为真时CV=0时)LOADInputBOOL加载命令(高级)(当LOAD为真时CV=PV)PVInputDINT程序最大值QUOutputBOOL上限,当CV=PV时为真QDOutputBOOL上限,当CV=0时为真CVOutputDINT计数结果2022年3月8日星期二第四章MICRO850指令系统42给定加减计数功能块参数列表计数器的使用方法实例梯级一是一个自触发的计时器,TON_1.Q每3s输出一个动作脉冲,并复位计时器,重新计时。梯级二使能CTUD加减计数器模块。梯级三通过decrease位使能减计数,这时当

16、TON_1.Q位输出一个脉冲时,PV值减一。同理,梯级四用来使能加计数。梯级五用来复位加减计数器CTUD。这样便实现了加减计数功能。这里用了decrease和increase两个常闭触点互锁,即执行加计数时,不能再执行减计数;执行减计数时,不能再执行加计数。2022年3月8日星期二第四章MICRO850指令系统432022年3月8日星期二第四章MICRO850指令系统445、计时器功能块描述TOF(延时断增计时)延时断计时TON(延时通增计时)延时通计时TONOFF(延时通延时断)在为真的梯级延时通,在为假的梯级延时断TP(上升沿计时)脉冲计时计时器功能块指令用2022年3月8日星期二第四章M

17、ICRO850指令系统45(1)延时断增计时(TOF)2022年3月8日星期二第四章MICRO850指令系统46参数参 数 类型数 据 类型描述INInputBOOL下降沿,开始增大内部计时器;上升沿,停止且复位内部计时器PTInputTIME最大编程时间,见Time数据类型QOutputBOOL真:编程的时间没有消耗完ETOutputTIME已消耗的时间,范围:0ms 至 1193h2m47s294ms注:如果在该功能块使用EN参数,当EN置真时,计时器开始增计时,且一直持续下去(即使EN变为假)。延时断增计时功能块参数列表2022年3月8日星期二第四章MICRO850指令系统47断电延时实

18、例2022年3月8日星期二第四章MICRO850指令系统48当delay_control_in置1时,delay_control_out置位,此时delay_timer.Q位保持为1。当delay_control_in由1变为0时,断电延时计时器开始计时,计时3s后, delay_timer.Q位由1变为0,梯级二导通,delay_control_out复位。由此便实现了断电延时的功能。(2)延时通增计时(TON)参数参数类型数据类型描述INInputBOOL上升沿,开始增大内部计时器;下降沿,停止且重置内部计时器PTInputTIME最大编程的时间,见Time数据类型QOutputBOOL真

19、:编程的时间已消耗完ETOutputTIME已消耗的时间,允许值:0ms 至 1193h2m47s294ms注:如果在该功能块使用EN参数,当EN置真时,计时器开始增计时,且一直持续下去(即使EN变为假),2022年3月8日星期二第四章MICRO850指令系统49延时通增计时功能块参数列表延时通增计时功能块时序图2022年3月8日星期二第四章MICRO850指令系统50延时通增计时(TON)的使用方法这个程序常用于在现场检测故障信号,当探测故障发生的信号传送进来,如果马上动作,可能会引起停机,因为有的故障是需要停机的。假定这个故障信号并不是真正的故障,可能只是一个干扰信号,停机就变得虚惊一场了

20、。所以一般情况下会将这个信号延时一段,确定故障真实存在,再去故障停机。本程序便是使用了延时通增计时(TON)来实现这一功能的。2022年3月8日星期二第四章MICRO850指令系统512022年3月8日星期二第四章MICRO850指令系统526.数据操作数据操作类功能块主要有最大值和最小值2022年3月8日星期二第四章MICRO850指令系统53功能块描述AVERAGE(平均)取存储数据的平均MAX(最大值)比较产生两个输入整数中的最大值MIN(最小值)计算两个整数输入中最小的数数据操作类功能块用途描述4.4、Micro850控制器的功能指令2022年3月8日星期二第四章MICRO850指令系

21、统544.4.1主要的功能指令功能(Function)类指令主要是数学函数,用于快速计算变量之间的数学函数关系2022年3月8日星期二第四章MICRO850指令系统55种类描述算术(Arithmetic)数学算术运算二 进 制 操 作 ( B i n a r y operations)将变量进行二进制运算布尔运算(Boolean)布尔运算字 符 串 操 作 ( S t r i n g manipulation)转换提取字符时间(Time)确定实时时钟的时间范围,计算时间差 功能指令分类及用途2022年3月8日星期二第四章MICRO850指令系统561. 算术功能块描述ABS(绝对值)取一个实数

22、的绝对值ACOS(反余弦)取一个实数的反余弦ACOS_LREAL(长实数反余弦值)取一个64位长实数的反余弦ASIN(反正弦)取一个实数的反正弦ASIN_LREAL(长实数反正弦值)取一个64位长实数的反正弦ATAN(反正切)取一个实数的反正切ATAN_LREAL(长实数反正切值)取一个64位长实数的反正切COS(余弦)取一个实数的余弦COS_LREAL(长实数余弦值)取一个64位长实数的余弦EXPT(整数指数幂)取一个实数的整数指数幂LOG(对数)取一个实数的对数(以10为底)MOD(除法余数)取模数POW(实数指数幂)取一个实数的实数指数幂RAND(随机数)随机值SIN(正弦)取一个实数的

23、正弦SIN_LREAL(长实数正弦值)取一个64位长实数的正弦SQRT(平方根)取一个实数的平方根TAN(正切)取一个实数的正切TAN_LREAL(长实数正切值)取一个64位长实数的正切TRUNC(取整)把一个实数的小数部分截掉(取整)Multiplication(乘法指令)两个或两个以上变量相乘Addition(加法指令)两个或两个以上变量相加Subtraction(减法指令)两个变量相减Division(除法指令)两变量相除MOV(直接传送)把一个变量分配到另一个中Neg(取反)整数取反2022年3月8日星期二第四章MICRO850指令系统57(6)直接传送指令(MOV)参数参数类型数据类

24、型描述i1InputBOOL - DINT - REAL - TIME - STRING - SINT - USINT - INT - UINT - UDINT - LINT - ULINT - DATE - LREAL - BYTE - WORD - DWORD - LWORD输入和输出必须使用相同的格式o1Output输入和输出必须使用相同的格式ENOOutputBOOL使能信号输出2022年3月8日星期二第四章MICRO850指令系统58直接传送指令功能块参数列表实例一:算术指令应用这个程序实现对电机连续运行时间的计时,用于电机保养。梯级一是自复位的计时器,循环计时1小时。计时器每计时1

25、小时,通过TON_1.Q位输出控制time_totalize自加一,当time_totalize大于5时,输出timefull位。提醒电机已经连续运行6小时,需要停机。最后一个梯级用于复位timefull和time_totalize。2022年3月8日星期二第四章MICRO850指令系统592022年3月8日星期二第四章MICRO850指令系统602.二进制操作二进制操作类指令主要用于二进制数之间的与或非运算,以及实现屏蔽、位移等功能2022年3月8日星期二第四章MICRO850指令系统61二进制操作功能指令用途功能块描述AND_MASK(与屏蔽)整数位到位的与屏蔽NOT_MASK(非屏蔽)整

26、数位到位的取反OR_MASK(或屏蔽)整数位到位的或屏蔽ROL(左循环)将一个整数值左循环ROR(右循环)将一个整数值右循环SHL(左移)将整数值左移SHR(右移)将整数值右移XOR_MASK(异或屏蔽)整数位到位的异或屏蔽AND(逻辑与)布尔与NOT(逻辑非)布尔非OR(逻辑或)布尔或XOR(逻辑异或)布尔异或2022年3月8日星期二第四章MICRO850指令系统62(2)左循环(ROL)2022年3月8日星期二第四章MICRO850指令系统63参数参数类型数据类型描述INInputDINT整数值NbRInputDINT要循环的位数,须在(131)范围内。ROLOutputDINT左移之后的

27、输出,当NbR=0时,无变化输出。ENOOutputBOOL使能输出左循环功能参数列表实例:8位移位2022年3月8日星期二第四章MICRO850指令系统648点移位程序设计-移位寄存器法2022年3月8日星期二第五章MICRO850程序设计技术652022年3月8日星期二第五章MICRO850程序设计技术66(3)左移(SHL)2022年3月8日星期二第四章MICRO850指令系统67参数参数类型数据类型描述INInputDINT整数值NbSInputDINT要移动的位数,须在(131)范围内。SHLOutputDINT左移之后的输出,当NbR=0时,无变化输出。左移功能参数列表4.4.2M

28、icro850控制器运算符功能指令大类指令主要用于转换数据类型以及比较,其中比较指令在编程中占有重要地位,它是一类简单有效的指令2022年3月8日星期二第四章MICRO850指令系统68种类描述数据转换(Data conversion)将变量转换为所需数据比较(Comparators)变量比较运算符类功能指令分类1.数据转换2022年3月8日星期二第四章MICRO850指令系统69数据转换功能指令用途功能块描述ANY_TO_BOOL(布尔转换)转换为布尔型变量ANY_TO_BYTE(字节转换)转换为字节型变量ANY_TO_DATE(日期转换)转换为日期型变量ANY_TO_DINT(双整型转换)

29、转换为双整型变量ANY_TO_DWORD(双字转换)转换为双字型变量ANY_TO_INT(整型转换)转换为整型变量ANY_TO_LINT(长整型转换)转换为长整型变量ANY_TO_LREAL(长实型转换)转换为长实数型变量ANY_TO_LWORD(长字转换)转换为长字型变量ANY_TO_REAL(实型转换)转换为实数型变量ANY_TO_SINT(短整型转换)转换为短整型变量ANY_TO_STRING(字符串转换)转换为字符串型变量ANY_TO_TIME(时间转换)转换为时间型变量ANY_TO_UDINT(无符号双整型转换)转换为无符号双整型变量ANY_TO_UINT(无符号整型转换)转换为无符号整型变量ANY_TO_ULINT(无符号长整型转换)转换为无符号长整型变量ANY_TO_USINT

温馨提示

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

评论

0/150

提交评论