产品展示
PRODUCT DISPLAY
产品展示您现在的位置: 首页 > 产品展示 > 西门子 > 西门子模块 >6ES73401BH020AE0西门子CP340通信模块

6ES73401BH020AE0西门子CP340通信模块

产品型号:

厂商性质:经销商

产品价格:

产品时间:2020-06-08

简要描述:

6ES73401BH020AE0西门子CP340通信模块

6ES7340-1BH02-0AE0
SIMATIC S7-300,CP 340 通信处理器 带有 20mA 接口(TTY) 包括项目组态包 在 CD 上

在线咨询 点击收藏

6ES73401BH020AE0西门子CP340通信模块

6ES7340-1BH02-0AE0

SIMATIC S7-300,CP 340 通信处理器 带有 20mA 接口(TTY) 包括项目组态包 在 CD 上

SIEMENS西门子

全新原装,质量保证,保修一年

专业销售及维修西门子各类工控自动化配件;

:S7-200CN、S7-200SMART、S7-300、S7-400、 S7-1200、S7-1500、ET200、LOGO逻西门子可编程控制器辑控制模块

西门子HMI人机界面:触摸屏

西门子变频器:MM420、MM430、MM440、G110、G120、6SE70

西门子工业以太网:通讯网卡、通讯电缆、通讯接头、总线连接器 工控机、交换机、自动化软件等系型号齐全,快速报价,买我们的产品无忧所值,我们的产品都承诺质保一年,让您买的省心舒心,用的放心!

跟我一起玩200 smart PLC

关于数据的排序

   之前,看到过论坛上的大侠们做过一些关于数据的排序程序段子,让我记忆犹新的是阿鸣老师发帖的那个“冒泡法”程序。其中心思想是利用指针的地址偏移及循环指令特性,将一组准备好了的数据逐个循环轮询一次,每一个数据都进行一次比较,如果大于了怎么样,小于了又怎么样的处理。前几天论坛上又见到类似的问题,由季侠热心地回复了编程思路,不知道那位网友是否已经做出了该数据排序的程序。

   今天晚上闲来无事,想起了那个问题,打算再做一次。因为这个程序差不多已经成为比较经典的程序段子,编程思路与前面的前辈们比起来显得不成熟的多了,难免的一些失误,或者不足之处望包涵。

假设,有10个数据(估计做这样的程序都是以10个数据来比较排序的,可能是出于常人的习惯思维),数据地址假设是VW100开始的,具体数据如下表所示:

 

编程思路:

1)  初始化所需要调用的数据区数据,这步对于多次调用该程序段非常重要。

2)  定义数据排序起始指针地址,&VB100取指针的起始地址。

3)  利用循环指令,做9个数据的循环,因为是10个数据比较9次循环就完全可以将全部的数据比较完成逐个进行数据的比较。

4)  一次,循环中先将2个数据比较,如果比较数据的结果VW100大于VW102,则,交换数据存储地址的数据,反之,不交换数据。

5)  无论怎样均指针下移一个字的地址区后,循环返回到循环起始,再取小的数据与第三个数据进行比较,比较结果仍然按第3步方式进行排序。

6)  同样的方式,直到循环9次,循环指令9次数到达后,跳出循环指令,并将比较结果单独存放到的地址VW200中。

如果编辑的程序运行结果VW200的数据地址中是48,说明程序是按编程思路是可行的,当然如果把这个程序稍加修改,也可以做成自己的数据排序库文件,以方便今后遇见类似的程序复制调用之需要,或者稍加修改后,将比较结果的大数据存放在VW200中,编程思路就是这样的过程。

为了方便比较数据,特在软件系统块中编辑了表中的数据,图示:

 

 

在主程序中编辑数据排序程序:为压缩页面将程序转换为STL语言方式显示

 

 

为检测程序的比较运行结果,新建一个“状态图表”将程序编译、保存、下载到cpu,启动M0.0 = 1,监控这些数据的变化规律,图示:

 

 

程序运行的结果VW200 = 48符合当初的控制要求,当然结果取指针的首地址VW100也是可以的。

实际上,类似的程序很方便做比较大数或者小数,区别仅仅是将取指针数据的比较的指令稍加变换,图示:

 

 

重新编译、保存程序,并将修改后的程序下载到cpu,验证结果,图示:

 

 

验证结果VW200 = 120仍然符合比较大数据的需要。反过来看,如果需要比较更多的数据,仅仅只需要将所需要的数据录入后,通过按比较数据的个数减1的方式启用循环指令,类似的“冒泡法”比较编程适用于一串连续的数据区比较结果,所谓的“冒泡法”实际就是循环指令的循环。该程序适宜于那些风机、泵类运行时间数据的比较,来判断所需要启动风机、泵的其中一个优先启动条件。

注:

   如果需要将此类型的程序做成自己的库文件形式或多次调用,则在调用该程序段前必须先进行数据区的初始化操作,然后录入新的数据再进行比较,以免引起数据处理时的结果错乱。比如,利用M0.0的上升沿初始化数据区,下降沿进行数据的比较等方式。

6ES73401BH020AE0西门子CP340通信模块

留言框

  • 产品:

  • 补充说明:

  • 您的单位:

  • 您的姓名:

  • 联系电话:

  • 常用邮箱:

  • 详细地址:

  • 省份:

  • 验证码:

    请输入计算结果(填写阿拉伯数字),如:三加四=7
在线客服