plc编程数据转换 S7-1200 PLC的转换操作指令,你能说出几个?

小编 79 0

S7-1200 PLC的转换操作指令,你能说出几个?

前面给大家介绍了移动操作指令,接下来就接着介绍一下转换操作指令吧,S7-1200 PLC的转换操作指令也包括有数据类型的转换指令、实数转整数指令、以及用于缩放和标准化指令。

在我们S7-1200 PLC中,转换指令就是CONVERT,我们可以在指令中更改数据类型,相当于所有的转换指令都集合在这个CONVERT指令中,而对于S7-200/200 SMART PLC的转换指令是比较多的,我们需要哪个类型的转换指令就调用哪个指令,不能更改指令的类型,大家在学习的时候可以对比着学习,下面我们就介绍一下S7-1200 PLC常用的移动指令吧。

1、转换指令CONVERT

转换指令是将一种数据类型转换成另一种数据类型的,使用的时候单击指令“???”的位置,然后在下拉列表中选择输入数据类型和输出数据类型。

CONVERT指令支持的数据类型包括有整数、双整数、实数、无符号短整型、无符号整型、无符号双整型、短整型、长实数、字、双字、字节、BCD32等,比如INT TO DINT就是表示把整数转换成双整数。

IN管脚是输入要转换的数据,OUT管脚是转换后的数据,在管脚输入数据类型的时候注意要跟设置的数据类型一致哦。

2、浮点数转整数指令

S7-1200 PLC的浮点数转换指令包括有四舍五入取整指令ROUND、向上取整指令CEIL、向下取整指令FLOOR和截取尾数部分取整指令TRUNC这四个,而S7-200/200 SMART PLC的浮点数转换指令只有ROUND和TRUNC,那么S7-1200 PLC的CEIL和FLOOR指令大家可以着重了解一下,对比着学习效率更高哦。

这里还要提一下的是,前面所说的CONVERT转换指令也是可以实现浮点数转整数的功能的哦,具体想使用哪个指令就看你怎么选择了。

上图的程序中ROUND是对13.7四舍五入输出14,TRUNC是将12.5的尾数部分截取掉,取12进行输出,FLOOR是15.8向下取整变成15,CEIL是将12.4向上取整变成13。

3、缩放SCALE_X和标准化NORM_X指令

缩放和标准化指令通常配合使用来实现模拟量输入和输出的转换,模拟量的转换是有个对应的公式的,这两个指令其实也是根据如下这个公式而来的。

缩放指令SCALE_X用于按照参数MIN和MAX所指定的数据类型和值范围对标准化实参VALUE进行标定,OUT=VALUE*(MAX-MIN)+MIN,其中0.0<=VALUE<=1.0。

标准化指令NARM_X用于通过参数MIN和MAX指定的范围内的参数VALUE,把其标定在0%~100%范围内。OUT=(VALUE-MIN)/(MAX-MIN),其中0.0<=OUT<=1.0。

以上这两个指令主要是在模拟量控制中会有应用,如果是入门的学习可以先简单了解就可以,等之后学习到模拟量控制部分再来详细学习。

以上这些就是转换操作指令的介绍,转换指令在我们做一些运算处理的时候是会应用到的,除了缩放和标准化指令可以简单了解,其他的转换指令都是需要掌握的哦,大家记住了吗?

( 技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究 )

更多了解,点↓

多种PLC之间互相交换数据的方法,建议收藏

自动化工程师朋友们都知道,工控现场有许多 PLC 之间需要通讯和数据交换,实现项目之间的数据对接和共享。

但对于不同品牌的 PLC 来说,由于接口、协议不同,程序不开放等诸多因素,往往令人头疼,也很无解,给项目的顺利实施增加了很多困扰。

北辰 S 系列,是实现 PLC 数据交换的神器。

之所以称它为神器,是因为 S 系列可以把 PLC 的串口和网口都统一成通用的 ModbusTCP 以太网协议,PLC 之间以 ModbusTCP 服务器(从站)和客户机(主站)的形式进行通讯,解决了 PLC 协议转换和数据交换的难题。

北辰 S 系列具有 ModbusTCP 服务器功能,Modbus 数据区可自动或编辑映射至 PLC 寄存器,ModbusTCP 的客户机如组态软件、OPC、DCS 系统、PLC 都可以便捷访问。

S 系列还具有 ModbusTCP客户机功能,西门子、三菱、欧姆龙、松下、台达等 PLC 配上北辰 S 系列模块,即可轻松实现 ModbusTCP主从站通讯和数据交换。

所以,北辰模块既可用于编程监控、数据采集和设备联网,还可用于协议转换和数据交换,既可用于有线网络环境,也可用于无线网络环境的协议转换和数据交换。

以适用于西门子 S7300/400 的 BCNet-S7300-S 为例,ModbusTCP 和 ModbusRTU 数据交换应用如下:

除此之外,S 系列还可应用于三菱、欧姆龙、松下、台达、施耐德、信捷、MODBUS RTU等PLC和设备之间的数据交换,在这里不一一列举。

示例

以 FX3U 与 FX5U 交换数据为例,数据交换采用 ModbusTCP 协议实现,其它支持 ModbusTCP从站协议的 PLC(如施耐德 PLC),均可实现该数据交换,步骤类似不再重复介绍。

对于支持ModbusTCP 从站协议的仪表,FX3U 可直接通过 BCNet-FX-S 进行仪表数据采集。

BCNet-FX-S 的 MD8(X1)连接 FX3U 的圆形编程口,FX5U 自带以太网口与 BCNet-FX-S 的以太网口连接,BCNet-FX-S 通过 BCDevice 工具配置交换命令,实现实时高效的 FX3U 和 FX5U 数据交换。

该功能基于 BCNet-FX-S 的 ModbusTCP 客户机功能实现,通过 BCDevice(软件版本 V1027 及以上)进行主站命令配置,无需 PLC 编程,提高应用开发速度和便捷性。

数据交换也可采用 BCNet-FX-S 的 WiFi 接口实现,可实现两个 PLC 直接的无线数据交换;具体在建立客户机时,本地网卡可选择 WiFi 接口。

一、配置 FX5U

STEP 1

1. 打开 GX Work3,新建项目,以太网配置(内置以太网口)中,配置“Modbus/TCP 连接设备”。

2. 编辑 PLC 软元件分配,按下表配置所示,D0 映射的Modbus地址为 40001(HoldingRegister的 0 地址)。

二、配置 BCNet 模块数据交换命令

STEP 2

1. 打开 BCDevice,搜索到 BCNet-FX-S 后,选择【修改设备参数】

2. 新建客户机

【1】点击数据交换,右键创建新的客户机 0;

【2】ModbusTCP协议用于连接远端的从站设备,此例中为 FX5U 的网口,该网口通过配置,已经支持 ModbusTCP 服务器功能,且 PLC 的数据和 Modbus 地址映射关系也已配置;

【3】本地网卡选择,选择 LAN 时,基于以太网口进行数据交换;选择 WiFiStation 或者 WiFiAP时,采用 WiFi 无线方式进行数据交换,该方式应当确保设备之间的 WiFi 连接已经建立;

【4】远程服务器的 IP 地址为 FX5U 的 IP 地址,这里设置为 192.168.1.130;远程服务器的通讯端口号,默认为 502;连接超时时间默认为 10s;

【5】点击确认,创建客户机。

3. 在客户机中配置数据交换命令

【1】点击新建命令(FX3U 的 D0 读取 FX5U 的 D0);

【2】选择[远程→本地],传输 1 个字;传输超时设置层 2s;

【3】本地站点(FX3U)设置数据区域选择 D 寄存器,起始地址为 0,即选择软元件 D0;

【4】 远程站点(FX5U)的 D0 由上一章映射表可知被映射成 HoldingRegister 的 0 地址;故数据区域选择 HoldingRegsiter,偏移地址填 0,站点地址是 ModbusTCP 协议中的单元号,这边由于 FX5U 不是网关,故可忽略;

【5】点击“检查”按钮可进行规则检查,点击“确认”按钮即可生成命令;

4. 客户机监视

点击客户机监视按钮,【错误信息】为无错误,且【正确】有数据跳动,说明通信成功。

三、验证数据交换

STEP 3

1. 打开 GXWork3 变量监视表,对 FX5U 的 D0 进行数据修改为 BC12H;

2. 打开 GXWork2 变量监视表,对 FX3U 的 D0 进行数据监视,值为 BC12H;

3. 上述监视说明已经将 FX5U 的 D0 数据读取到 FX3U 的 D0 中,实现了数据交换功能;数据交换功能亦可实现 FX3U 到 FX5U、FX5U 到 FX3U 的位、字节和字的数据交换功能。

S 系列的型号及适用 PLC

相关问答

plc进制转换的简单方法?

PLC进制转换的简单方法是使用内部寄存器按位权值进行转换。具体步骤如下:1.确定需要转换的数值,并将其转换为二进制表示。2.找到对应的内部寄存器,并将其...

plc程序怎么转换源码?

1、在GXDeveloper软件中新建与你的PLC型号一致的项目2、使用键盘快捷键ALT+F1切换到指令表输入方式,将你的指令表输入3、再次使用键盘快捷键ALT+F1切换回梯形...

关于三菱PLC中的数据转换,求?

模拟量值和A/D转换值的转换-假设模拟量的标准电信号是A0—Am(如:4—20mA),A/D转换后数值为D0—Dm(如:6400—32000),设模拟量的标准电信号是A,A/D转换...模...

plc在线修改程序怎么写入?

PLC(可编程逻辑控制器)的在线修改程序的方式取决于所使用的PLC品牌和型号。以下是一般的步骤:1.连接至PLC:使用PLC编程软件将您的计算机与PLC连接。通常,...

三菱plc如何把触点信号转换成数据?

普通的触点信号就只有状态0和状态1,如果你想把这个普通的信号收集起来,你可以使用移位指令,用一个定时器不断的来读取你点的状态,将这些点位信息通过移位指...

plc中int怎么转换为word?

plc中int转换为word方法:(1)工程---->打印机设置设置成PDF打印机。(2)工程---->打印---->选择“梯形图”选项卡(里面很多选项卡,要仔细找)...

plc模拟输入怎么变成数字输出?

4-20mA或0-10V或热电阻或热电偶等模拟量输入信号接入模拟量输入模块,模拟量输入模块有模拟量转换成数量量的转换器,如西门子PLC4-20mA对应数字量为0/27648,转...

电子秤数据怎么转换到plc上?

电子秤数据可以通过以下步骤转换到PLC上:连接电子秤和PLC:首先,确保电子秤和PLC之间有物理连接。一般来说,电子秤会通过串口或USB接口与PLC进行通信。如果使...

plc16位和32位怎么转换?

1、要看你32位的数据是否都用到,如果数值很大(要用到32位),那必须将这个数据进行等比缩小至16位数据以下,再通过数据转化即可;2、要看你的采集模块所采集...

PLC单精浮点数如何转为十进制数?

看了一下这个问题好像还没有人答对,我来回答一下!结合图片看了你的问题,其实你的问题就是你接收的到的32位数据是450F9000,而且你知道这个数据其实是单精度...