西北工业大学可编程计算机控制器原理与应用课件3.6 梯形图.ppt

西北工业大学可编程计算机控制器原理与应用课件3.6 梯形图.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.6.4 梯形图指令可实现的基本逻辑功能 逻辑与 功能:将当前ACC中的值与BOOL类型的操作数求逻辑与运算,然后将结果存入ACC中。 逻辑与非 功能:将BOOL类型的操作数求逻辑非运算后再与当前ACC中的值求逻辑与运算,然后将结果存入ACC中。 逻辑或 功能:将当前ACC中的值与BOOL类型的操作数求逻辑或运算,然后将结果存入ACC中。 逻辑或非 功能:将BOOL类型的操作数求逻辑非运算的结果与当前ACC中的值求逻辑或运算,然后将结果存入ACC中。 逻辑异或 功能:将当前ACC中的值与BOOL类型的操作数求逻辑异或运算,然后将结果存入ACC中。 逻辑异或非 功能:将BOOL类型的操作数求逻辑非运算的结果与当前ACC中的值求逻辑异或运算,然后将结果存入ACC中。 1.内部数据转换 2.外部数据类型转换 1.内部数据转换 内部数据转换是由编辑器自动检查两个变量的数据类型,然后下表所示的规则由低级类型(即范围小的数据类型)向高级类型(即范围大的数据类型)方向转换。 例3-12 实现end=USINT_ pv+UINT_ pv的运算(用指令语言IL)。 变量声明: PV Name DATA Type USINT_ pv USINT UINT_ pv UINT End UDINT IL编程如下: LD USINT_ pv ADD UINT_ pv ST end 按向上的转换规则自动进行数据类型的转换 REAL UDINT DINT UINT INT USINT SINT BOOL 执行时,内部数据转换的转换顺序为: ① 当前ACC中的过程变量USINT_ pv的值 向上转换为UINT类型的值。 ② 两个UINT类型的值相加,其结果是UINT类型的值,并存入ACC中。 ③ 当前ACC中UINT类型的值转换为UDINT赋给end。 转换时,编辑器用“0”来填充转换后数据的高位。 由例3-12可知内部数据转换的转换规则 REAL UDINT DINT UINT INT USINT SINT BOOL 注意: ① 图中箭头的方向只表示数据类型级别的高低,由低向高转换,但不要理解为必须是按顺序转换。如例3-12中,过程变量USINT_pv的值就直接向上转换为UINT类型的数据。 ② 相同位数的数据类型(如INT与UINT类型的)一个是负数,另一个是正数,两者相互转换时,编译器把带符号的数据当作无符号的数据来处理。 例如:-1 000→64 536 在梯形图LAD中,只有在模拟量触点和模拟量类型的连线中,才会涉及到数据类型的转换。 从左往右看梯形图,左边触点的数据类型必须与右边触点的数据类型相同或比右边触点的数据类型更低级,这样,编辑器才能按向上的转换规则自动进行数据类型的转换,否则,编辑器会产生一个错误报告。 例3-13 实现USINT与UINT数据类型的转换。 变量声明: PV Name DATA Type USINT_pv USINT UINT_pv UINT 2.外部数据类型转换 进行同一类型数据相乘或相加运算时,常常会出现溢出现象 溢出现象:同一类型数据相乘或相加运算时,结果超出此类型的最大允许范围 下溢现象:同一类型数据相减时,会出现结果超出此类型的负向最大允许范围。 发生过载,变量不能得到正确的值 必须按正确的顺序进行 外部数据类型转换。 例3-14 用IL语言编程实现表达式: average=(temp1+temp2)/2 变量声明: PV Name DATA Type Average INT temp1 INT temp2 INT 分析 : 由于若还是采用内部数据类型转换,则当temp1与temp2之和大于INT正值范围(+32 767)时,便得不到正确的结果,因此必须进行外部数据类型转换。 IL语言编程如下: LD temp1 ;load temp1 DINT ;converts the ACC value to DINT ADD temp2 ;now temp2 is implicitly ;converted to DINT DIV 2 INT ;converts the result with DINT ;to the result with INT ST average 3.

您可能关注的文档

文档评论(0)

ormition + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档