西门子S7-300模块6ES7312-1AE14-0AB0西门子S7-300模块6ES7312-1AE14-0AB0
SIMATIC S7-300,CPU 312 带有MPI接口,集成24 V DC 电源,32 K工作存储区,必须有MMC卡
SIMATIC S7-300,CPU 312 带有MPI接口,集成24 V DC 电源,32 K工作存储区,必须有MMC卡
在设计自由口通信程序时,自由口通信程序设计的核心就是使用发送指令XMT和接收指令RCV对数据进行发送和接收。接收指令RCV应用的难点,在于如何设置“判断接收消息的起始条件和结束条件”,而对于发送指令来讲相对的比较简单,只需要准备好数据,使用发送指令发送出去即可。西门子扩展模块6ES7534-7QE00-0AB0西门子PLC扩展模块6ES7532-5HF00-0AB0西门子PLC扩展模块6ES7532-5NB00-0AB0
西门子PLC扩展模块6ES7532-5HD00-0AB0西门子PLC扩展模块6ES7531-7NF10-0AB0西门子PLC扩展模块6ES7531-7QD00-0AB0
西门子PLC扩展模块6ES7531-7KF00-0AB0西门子PLC扩展模块6ES7534-7QE00-0AB0
西门子S7-1500存储卡6ES7954-8LC02-0AA0西门子S7-1500存储卡6ES7954-8LE02-0AA0西门子S7-1500存储卡6ES7954-8LF02-0AA0
但实际应用中是否是真的就是这样呢?在一个通信程序中,需要发送的数据可能比较多,比如说与三菱变频器的通信,通过三菱变频器的专用通信协议来通信,那么需要发送的数据时有运行命令,频率修改,读取一些参数,这些数据均不一样,需要先定义好不同的数据在不同的存储器,当发送哪个命令的数据时就需要把数据给过去。真的是这样做吗?个人不赞同使用这种方法去做,个人比较赞同把需要发送的数据先做成一个功能块,根据需要发送的数据填写到这个功能块的管脚上,发送指令放于这个功能块中,当功能块接通一次,就对一次的数据发送出去。
就以三菱专用通信协议为例,发送运行命令和修改频率及读取一些参数的功能为例来进行说明。
三菱专用通信协议内容具体大家可以自己网上查找,这里不做详细的说明,这里我们主要看下PLC需要发送到变频器的数据的格式。
PLC往变频器写数据时需要发送的格式:根据数据长度的不一样分为三种格式,如下所示:
PLC读取变频器数据的时需要发送的数据格式
变频器运行代码、修改频率、读取变频器参数的代码如下表所示
结合上面的发送数据的格式,和代码表,我们可以发现,发现运行命令,和发送频率,以及读取变频器的参数值的格式都不一样,但也有前面部分相同的内容,我们在设计功能块时需要做判断,判断是“读命令”还是“写命令”,如果是写命令,则还判断是“写运行命令”还是写“频率命令”根据这原理,我们可以开始设计功能块。
(1)编写变量表
(2)程序
编写好功能块后,只需要在主程序中调用这些功能块,给不同的功能块赋实参即可,
西门子S7-300模块6ES7312-1AE14-0AB0西门子触摸屏代理商西门子电源模块代理商西门子交换机代理商西门子DP电缆代理商西门子变频器代理商西门子PLC模块代理商西门子CPU模块代理商西门子触摸屏代理商