300PLC8路模拟量批量转换?

已锁定

canchuan

  • 帖子

    23
  • 精华

    0
  • 被关注

    18

论坛等级:侠客

注册时间:2006-10-17

普通 普通 如何晋级?

300PLC8路模拟量批量转换?

829

2

2017-07-26 09:04:02

1,建立FC10,打开FC10建立局部变量,IN输入接口变量INPIWADR(INT),INDBNUM(INT),INDBADR(INT),INL1…8(REAL),INH1…8(REAL),TEMP中间变量TEMP1(INT),TEMP2(INT),TEMP3(DWORD),TEMP4(DWORD),TEMP5(REAL),TEMP6(Array [1..8] Of Real),TEMP7(Array [1..8] Of Real)。

程序段:

      L     #INL1

      T     #TEMP6[1]

      L     #INL2

      T     #TEMP6[2]

      L     #INL3

      T     #TEMP6[3]

      L     #INL4

      T     #TEMP6[4]

      L     #INL5

      T     #TEMP6[5]

      L     #INL6

      T     #TEMP6[6]

      L     #INL7

      T     #TEMP6[7]

      L     #INL8

      T     #TEMP6[8]

      L     #INH1

      T     #TEMP7[1]

      L     #INH2

      T     #TEMP7[2]

      L     #INH3

      T     #TEMP7[3]

      L     #INH4

      T     #TEMP7[4]

      L     #INH5

      T     #TEMP7[5]

      L     #INH6

      T     #TEMP7[6]

      L     #INH7

      T     #TEMP7[7]

      L     #INH8

      T     #TEMP7[8]

      LAR1  P##TEMP6

      TAR1  #TEMP3

      LAR2  P##TEMP7

      TAR2  #TEMP4

 

      L     #INDBNUM

      T     #TEMP1

      OPN   DB [#TEMP1]

      L     #INPIWADR

      SLW   3

      LAR1 

      L     #INDBADR

      SLW   3

      LAR2 

      L     8

A001: T     #TEMP2

      L     PIW [AR1,P#0.0]

      ITD  

      DTR  

      L     2.764800e+004

      /R   

      T     #TEMP5

      L     LD [#TEMP4]

      L     LD [#TEMP3]

      -R   

      L     #TEMP5

      *R   

      L     LD [#TEMP3]

      +R   

      T     DBD [AR2,P#0.0]

      L     #TEMP3

      +     32

      T     #TEMP3

      L     #TEMP4

      +     32

      T     #TEMP4

      +AR1  P#2.0

      +AR2  P#4.0

      L     #TEMP2

      LOOP  A001

以上代码用在300PLC模拟量8路批量转换,都是参考论坛大师回复帖子的信息自己整理的。

实际仿真测试时我把A001中L  PIW [AR1,P#0.0]改为L  DBW [AR1,P#0.0]可以执行,运行结果也正确。

问题1:TEMP3,TEMP4定义类型为DWord或者Dint仿真测试时好象都可以,实际应该定义什么数据类型?

问题2:输入接口INPIWADR,INDBADR定义的为INT数据类型,但程序段中用SLD 3或者SLW 3仿真测试时都可执行。实际应该根据数据类型用SLW 3吧?如果是REAL类型用SLD 3?

问题3:最前面取量程上下限能简化程序段不?有啥命令能把输入8路上/下限量程传送到数组TEMP[6]/ TEMP[7]中?如果程序段中还有其他错误请老师指点优化。



300PLC8路模拟量批量转换? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54618条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。