- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
电气控制与PLC主讲教师:曾新红选用教材:《电气控制与PLC应用技术》曾新红等主编广州航海学院
5.3数学运算指令5.3.1数学运算指令5.3.2逻辑运算指令教学目标通过本节的学习,要学会掌握数学运算指令进行数学关系之间的运算。
5.3.1数学运算指令1.四则运算指令2.其他整数数学运算指令3.浮点数函数运算指令
数学运算指令中的ADD、SUB、MUL和DIV分别是加、减、乘、除。它们执行的操作见表5-5。操作数的数据类型可选SInt、Int、Dint、USInt、UInt、UDInt和Real,IN1和IN2可以是常数。IN1、IN2和OUT的数据类型应该相同。整数除法指令将得到的商截位取整后,作为整数格式的输OUT。用右键点击ADD指令,执行出现的快捷菜单中的“插入输入”命令,ADD指令将会增加一个输入变量。用鼠标右键点击某条输入短线,执行快捷菜单中的“删除”命令,将会减少一个输入变量。1.四则运算指令
表5-5数学运算指令梯形图描述梯形图描述ADDSUBMULDIVMODNEGIN1+IN2=OUTIN1-IN2=OUTIN1*IN2=OUTIN1/IN2=OUT求双整数除法的余数将输入值的符号取反INCDECABSMINMAXLIMIT将参数IN/OUT的值加1将参数IN/OUT的值减1求有符号整数和实数的绝对值求两个输入中的较小的数求两个输入中的较大的数将输入IN的值限制在指定的范围内
【例5-2】压力变送器的量程为0~10MPa,输出信号为0~10V,被CPU集成的模拟量输入的通道0(地址为IW64)转换为0~27648的数字。假设转换后的数字为N,试求以kPa为单位的压力值。解:0~10MPa(0~l0000kPa)对应于转换后的数字0~27648,转换公式为P=(10000×N)/27648(kPa)(式5-1)公式中乘法运算的结果可能会大于一个字能表示的最大值,因此应使用数据类型为双整数的乘法和除法(见图5-25)。为此首先使用CONV指令,将IW64转换为双整数(DInt)。6MPa
【例5-3】使用浮点数运算计算上例以kPa为单位的压力值。将式(5-1)改写为式(5-2):P=(10000×N)/27648=0.361690×N(kPa)(5-2)在OB1的界面区定义数据类型为Real的局部变量Temp2,用来保存运算的中间结果。首先用CONV指令将IW64转换为实数(Real),再用实数乘法指令完成式(5-2)的运算(见图5-26)。最后使用四舍五入的ROUND指令,将运算结果转换为整数。
图5-26使用浮点数运算指令的压力测量值计算程序
没转换时的计算结果:转换时的计算结果:
(1)MOD指令除法指令只能得到商,余数被丢掉。可以用MOD指令来求除法的余数(见图5-27)。输出OUT中的运算结果为除法运算IN1/IN2的余数。2.其他整数数学运算指令图5-27整数运算指令
(2)NEG指令NEG(negation)将输入IN的值的符号取反后,保存在输出OUT中。IN和OUT的数据类型可以是SInt、Int、DInt和Real,输入IN还可以是常数。(3)INC与DEC指令执行指令INC与DEC时,参数IN/OUT的值分别被加1和减1。IN/OUT的数据类型可选是SInt、USlnt、Int、UInt、DInt和UDInt(有符号或无符号的整数)。
取反指令注意:加1指令,注意要使用上升沿触发指令。否则每扫描一次指令,便自动加1.
(4)绝对值指令ABSABS指令(见图5-28)用来求输入IN中的有符号整数(SInt、Int、DInt)或实数(Real)的绝对值,将结果保存在输出OUT中。IN和OUT的数据类型应相同。图5-28整数运算指令
(5)MIN与MAX指令MIN(minimum)指令比较输入INl和IN2的值,将其中较小的值送给输由OUT。MAX(maximum)指令比较输入IN1和IN2的值,将其中较大的值送给输出OUT。IN1和IN2的数据类型相同才能执行指定的操作。(6)LIMIT指令LIMIT指令检查输入IN的值是否在参数MIN和MAX指定的范围内,如果IN的值没有超出该范围,将它直接保存在OUT指定的地址中。如果IN的值小于MIN的值或大于MA
原创力文档


文档评论(0)