西门子S7-200与丹弗斯VLT HVAC暖通空调系列变频器的modbus通信

时间:2023-03-11作者:佚名

先自我介绍一下,96年初中毕业进入制糖企业当电工,04年春由于单位效益不好决定不干了,于是南下在郑州学习计算机网络工程师,以第一名成绩结业。之后的一年多没有从事电气方面工作,也都不是长期稳定的工作,06年下半年接触plc编程,07年开始独立进行电气设计,10年10月自己开公司。

从去年12月份到现在一直在做一个能源管理及设备监控的项目,项目简介:工厂内所有用电量,压缩空气,水,这三种能源的消耗,已经做好的十二台由西门子200PLC控制的空调监视,已经做好的冷冻水,冷却水,生产水,生活水等水循环系统内的水泵变频器的电参数监视,今天要讲的故事就是这一块。再说一下还没开始做的电能管理,所有电量表(有许多块,具体数量还没计算)都是已经安装好,并可以在上位机监控的系统,电量表和上位机都是北京爱博精电做的。所有的电量表都支持modbus通信,但是是通过串口服务器用以太网与上位机通信的。而我的系统内是s7 315 2PN,这就要求我用315用以太网读取电量表modbus通信下的各项参数了,若7号之前完成通信,再写篇关于此方面的文章。工程中除电缆桥及电缆的铺设是我指导安装,其它都是我独自完成,包括柜子配线,电气原理图设计,plc编程,调试。

最近连续工作的好多天,每晚加班到八九点,昨天给客户的串口服务器柜子重新改造一下,是将7处新增加的电能表通过光纤转485连接到串口服务器,恢复客户原有的通信时,晚上八点了,累坏了,所以今天休息,刚刚我的奶奶给我打电话祝我生日快乐,我都把自己生日给忘了。

下面正题:

简介:客户要求对变频器的数据只监不控。客户所有的水泵变频器都是丹弗斯VLT HVAC暖通空调系列变频器,功率有大有小,共有29台,但由于modbus通信上还有4台冷水机组,1个冷冻水加药站,这样从站超过了32台,怕通信不会成功,及其它方面原因,所以在设计之初就采用2台224分开来进行通信,一台带23台变频器及加药站,一台带6台变频器及4台冷水机组,每台224再挂以太网模块与上位机WinCC通信。从200的Micro 'n Powerv1.3帮助上知道200的通信口通信距离为50米,所以设计之初就提料买了2台西门子485中继器,这样实际电气隔离。以前在网上看到过文章,多台200通过通信口通信,没使用电气隔离造成200全部损坏,具体原因就不得而知了

实施过程:

1、由于以前没有modbus通信经验,所以过程是非常的艰难。由于我一直用笔记本,没有串口,怕调试时出现麻烦事,所以买了摩莎的UPort-1250I USB转双串口,第一次买回来新的啊,指示灯就不好用,又换了一次。在现场把两个串口连起来,使用Modscan32调试工具模拟modbus通信,通信成功,这样有了一个大致的概念。

2、与现场抄表人员沟通(他们公司规定变频器的运行数据进行抄录),确定读取变频器的6个数据,如下:

参数编号 名称 单位 转换指数 数据类型

1501 运转时间 0 h 74 Uint32

1502 千瓦时计数器 0 kWh 75 Uint32

1610 功率 [kW] 0.00 kW 1 int32

1613 频率 0.0 Hz -1 Uint16

1614 电动机电流 0.00 A -2 int32

读取变频器的运行状态

线圈 0 1

33 控制未就绪 控制就绪

34 变频器 未就绪 变频器 就绪

35 惯性停止 安全功能关闭

36 无报警 报警

37 未使用 未使用

38 未使用 未使用

39 未使用 未使用

40 无警告 警告

41 不在参考值下 在参考值下

42 手动模式 自动模式

43 超出频率范围 在频率范围内

44 已停止 运行

45 未使用 未使用

46 无电压警告 电压警告

47 不在电流极限内 电流极限

48 无热警告 热警告

高低字节互换后,由高到低对应线圈为48----33

关于丹弗斯modbus通信时寄存器地址上的问题。

通过在网上搜索,丹弗斯变频在modbus通信时,寄存时的地址要功能号乘以10减1。如,变频器的频率地址为1613就是1613乘以10减1等16129 当然这也造成了我后面的麻烦。这里假设你还不知道西门子200读取时是只乘以10不用减1,这也坑了我一下。

想着先用Modscan32调试工具读取单台变频器试试吧,发现Modscan32不支持《1613乘以10减1》这么大的地址,这怎么办?在网上找啊找,找到一个《CRC16自动计算软件_MODBUS》软件,通过计算出要发送的数据包,通过串口调试软件发给变频器,经过几次调试,通过转换回传回来的数据,发现可以通过计算机串口与变频器通信了。这时用的速率是变频器最高的115200。

下面就开始在单台PLC编程读取变频器频率。

modbus的MBUS_MSG指令的Addr填写16129,发现无法通信,仔细看那个网上的文档才发现200不需要减1,于是改成16130,发现还是无法读取,这是什么原因?又开始看各种资料。最后在Micro 'n Powerv1.3里找到,《Modbus Master 协议库支持超过 9999 的保持寄存器地址。地址范围为 400001 - 465536》,这样16130肯定是超过9999了,改成416130后,可以通信了。

问题又来了。

这样变频器寄存器的地址就变成了运转时间415010 千瓦时计数器415020 功率 416100,本来寄存器地址就不连续,读起来不方便,这回更是拆成了6个。唉,先编程再说吧。先编的是23台变频器224,编着编着发现编译保存时,输出窗口出现一个警告,说程序太大14000多字节,不适合224,当时就哭了。想想也是23台变频器,每台6条指令,再加上数值的处理,程序量很可观啊,怎么办,首先想到的是换226,付款订226,226在快递中的时候。想到了西门子的指针,想着把变频器的从站地址放入V区,再用指针去读取V区里的变频器的从站地址,读到地址23就返回到1,这样就6条读取指令,可大大减小程序块。可是指针我从来没用过啊,于是看指令方面的知识,看看发现从站地址是字节型,心想能不能每读完一台变频器的数据后,从站地址加1,就是字节型加上,发现STEP-7-MicroWIN没有字节整数型运算指令,无意中发现字节递增指令INC_B,这样就可实现每次地址加1。程序修改后大小为9400左右。

下载后进行通信,使用的速率为115200,无法通信,又是什么原因?用计算机串口在RS485中继器网络2上检测不到数据,网络1连接的PLC,网络1上有数据。一共两个中继器,互换一下看看吧,还是不好用。说一个这两个中继器,一个是朋友的工程余货,一个是在淘宝上淘的二手(这里可以鄙视我一下)。两个中继器的接线,开关位置都没问题,就是通信不上,原因还是待查。大胆的将CPU通信直接连入网络2,发现PLC指令还是显示从站无响应,因为此时速率还是115200,全部改成9600试试吧,改成后全部都可以读取啦。非常高兴的说。现在速率运行在38400的速度上,轮询23台变频的总时间在8秒左右,只监不控可以了。

话说这样就结束了吗,还没有。可以看上面变频出来的数据不适合上位机监视,所以要经过数据转换。我程序的形式是每次读取一台变频器的数据传出,再进行整体的数据转换,发现每次从地址23再地址1时全部变频的数据会向后串一台变频器,就是地址1的数据是地址23的,只是一个周期。心里这应该是程序中有些指令是多周期的导致数据还没转换完就读取下一台的数据了。接着改程序,改成每次读取的数据传出,再用sm0.0启用数据转换。不再有上述现象。

还没结束,发现转换后变频器的频率不正确,而从转换前的数据是正确的。可以看变频器的频率数据是Uint16,要变成浮点数才可以。原程序是将Uint16格式的VW传出到VW,发现传出后的VW里的数值就和前面的不一样的,这个真的不知道为什么了,还请高手解答一下。如何解决的呢,我不再把数值传出,传送指令前要加根据从站地址接通的上升沿,我直接将Uint16格式转换成双整数DI,再转换成浮点数,再用浮点数乘以0.1,最后成功得到频率。

最后对整个程序进行整理,大功告成。

相关阅读

数控手工编程的具体步骤说明

数控手工编程的具体步骤说明如下: 1.分析图样、确定工艺过程 在数控机床 上加工零件,工艺人员拿到的原始资料是零件图。根据零件图,可以对零件的形状、尺寸精度、表面粗糙度...
2023-03-21

三相四线制和三相三线制的区别?

一般实际应用只有三相四线制(不算地线,算上地线叫三相五线制),不会用三相三线制。 三相四线制除了三根火线之外,第四根叫中线(注意:单相才有零线的,三相的没有),中线...
2023-03-21

电工如何学习电路图的各种代号,零基础教你学识图~

今天我们来学习一下电工识图,里面的电路图的项目代号,带大家一起看下有哪些知识我们需要知道! 本节内容学习目标: 1.项目代号的种类 2.项目代号的作用 3.正确使用项目代号 重...
2023-06-11

施工现场临时用电常见强电电气安全隐患和规范要求

《施工现场临时用电安全技术规范》JGJ 46-2005第8.1.3条:每台用电设备必须有各自专用的开关箱,严禁用同一个开关箱直接控制2台及2台以上用电设备(含插座)。(新、改、扩建,220/380V...
2024-08-21
施工现场临时用电常见强电电气安全隐患和规范要求

单片机检测信号通断通用电路详解

在实际的电路设计中,往往需要用到单片机检测某些信号通断,检测电压有无。在一定的范围内,比如3.3V的直流信号,单片机的IO是可以直接连接信号检测的,但是往往实际信号各种各...
2023-07-11
单片机检测信号通断通用电路详解

热销商品

德国进口雅马哈风力灭火机大功率手提森林灭火器落叶工地吹雪机汽

德国进口雅马哈风力灭火机是一款高效、可靠的森林灭火和清理设备。它拥有大功率风机,能够迅速吹散落叶、杂草和积雪,有效清理工地和森林地面。这款灭火机采用先进技...
¥ 692.5

12V星空顶筒灯嵌入式阳台卧室客厅氛围迷你呼吸小射灯满天星天花

12V星空顶筒灯是一款专为营造浪漫氛围而设计的迷你嵌入式射灯,适用于阳台、卧室、客厅等空间。采用低功耗LED光源,安全节能,光线柔和均匀,支持呼吸模式与满天星效果,可...
¥ 7.65

公牛官方旗舰店开关插座空调16A插座五孔10A面板暗装多孔G12白灰

公牛官方旗舰店提供一系列高质量的开关插座和空调配件。这款16A插座五孔面板采用暗装设计,适用于多种安装环境,如墙面、天花板等。它具有10A的电流容量,可以满足家庭...
¥ 5.55

电位器旋钮电流调节螺帽直流逆变电焊机二保焊送丝机通用旋钮B102

电位器旋钮电流调节螺帽适用于直流逆变电焊机和二保焊送丝机,是一款通用的旋钮B102。该旋钮采用优质材料制造,具有耐磨损、耐高温、耐腐蚀等特点,能够长时间稳定运行...
¥ 0.7

O型圈氟橡胶圆条丁腈胶硅胶垫片防水O三元乙丙EPDM密封件骨架油封

O型圈、氟橡胶圆条、丁腈胶、硅胶垫片、三元乙丙(EPDM)密封件及骨架油封是广泛应用于机械、汽车、航空航天及建筑等领域的关键密封元件。氟橡胶耐高温、耐腐蚀,适用...
¥ 1

网站栏目