范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

西门子PLC的ModbusRTU通讯和轮询

  Modbus是PLC应用中常用的通讯手段,轮询是在进行一个控制器连接多个从站的通讯时常用的编程手段,由于ST语言在数据处理上的优势,此方法变得更为简单。下面以西门子S7 1214C PLC的ModbusRTU通讯为例,展现ST语言下的modbus通讯和轮询。
  电气论坛聚焦电气工程及其自动化行业干货,电工电气工程从业者的精神家园
  公众号 硬件连接
  要准备的硬件和软件:
  1.西门子PLC 1214C;
  2.通讯板CB1241;
  3.USB转RS485转换器;
  4.Modscan2/Modsim32电脑模拟软件模拟主/从站,
  5.SPU(serial port Utility),监视通讯报文。
  PLC作为主站,使用软件Modsim32模拟从站,使用两芯线(最好是带屏蔽双绞线)进行连接:
  硬件连接
  将通讯板的AB两端与转换器的AB两端进行连接,要注意AB两端区分正负极,反接不会烧坏设备,但是无法正常通讯。 编写程序
  1.设备组态
  在博图软件中配置西门子PLC和通讯板。modbus通讯需要设置波特率、数据位、停止位和校验位等通讯参数,在博图中的设备组态中设置此参数,主从站设置一致即可通讯。
  通讯参数
  设置波特率9600,数据位8位,停止位1位,无校验,在PLC离线模式下下载硬件组态。
  下载组态信息
  2.调用modbus功能块
  西门子的通讯一般都需要调用系统功能块,在"指令"-"通信"-"通信处理器"下可以找到modbus通讯功能块:
  通讯功能块
  可以看到这里提供两套modbus通讯模块,这两套都可以使用(暂不清楚具体的区别),本文选用的是下面的版本较低的模块。
  新建程序段,将配置模块MB_COMM_LOAD和主站模块MB_MASTER拖入程序中:
  调用功能块
  功能块调用后要对必要的引脚进行赋值,各个引脚的功能可以按F1查看,建立一个DB数据块,声明一些变量连接功能块的引脚:
  声明变量
  上面声明了两个容量为5的字数组,用于数据的发送和接受,这个容量可以根据需求任意设置。然后将这写变量写入模块引脚:
  模块赋值
  配置模块MB_COMM_LOAD的触发REQ只需要在连接时触发一次啊,因此直接将系统内置的变量"firstscan"写入即可,上电后执行一次。
  由于通讯的读和写都由主站模块MB_MASTER完成,因此我们对这个模块进行两次赋值,第一次实现读的功能,由modbus地址40100开始,读5个数据,写入"ModbusData".Read_Data中;第二次实现写的功能,将"ModbusData".Sent_Data中的数据写入由modbus地址40110开始的5个数据中。
  程序写到这里已经可以进行通讯了,如果想要在线实验一下,可以将变量写入监控表,手动触发读写触发引脚变量,观察模块的输出状态,这里就不演示了。
  3.编写轮询程序
  所谓轮询就是依次询问,假设我们有3个设备作为modbus从站,从站地址(站号)依次为1,2,3,使用case语句依次对这3个设备进行读写操作,而读出和写入的数据分别存入3套不同的变量当中。
  建立设备变量
  使用一个结构体来描述一个设备的所有信息,包括5个状态字(states:Array[0..4] of Word)和5个控制字(ctrl:Array[0..4] of Word),将结构体声明为数量为3的数组,存放3个设备的数据。
  在整个循环开始前,设定起始设备地址,然后按照"读操作触发,读数据,读设备地址+1,延时,写数据,写操作触发,写设备地址+1,延时"的顺序持续循环,按照设备地址号选择上面的结构体变量:
  读操作
  iStep=0时,关闭读写触发,设定读写设备地址为1;
  iStep=10时,读操作触发,模块发出读数据命令,模块置位busy信号;
  iStep=11时,等待读操作完成,模块读到设备数据后会置位done信号,复位busy信号,根据信号状态将读到的数据(Read_Data)写入设备数据结构体(DeviceData.states),如果设备地址=1,则写入DeviceData[1].states,设备地址变化,写入的结构体也会相应的变化,保证不同设备的数据不会互相干涉。这里加一个判断,一段时间读不到数据返回10步骤重新进行读操作。
  iStep=12时,用计数的方式做一个简单的延时功能,避免因读写频率太快导致设备反应不过来。
  写操作
  向设备写入信息,在写入操作触发前要先将相应设备结构体中的数据(DeviceData.ctrl)写入发送数据缓存区(Sent_Data),然后再进行写操作,与读操作类似,写入完成后设备地址+1,跳转下一步骤。 运行程序
  将程序编译写入后重启PLC,可以看到通讯板的指示灯已经开始闪烁,而轮询步骤iStep始终在10,11两步,证明读数据命令已经发出,但是没有接受到设备的反馈,始终在进行第一个设备的读操作。
  虽然能够看到通讯灯在闪,但我们仍然不能直观的看到这个网络中的状态,这是就需要前面提到的SPU软件,监视串口网络中的报文。
  监视报文
  设定端口号,选择Hex数据格式,点击开始,可以看到当前网络中所有报文,根据modbus协议的规格(可以自行百度),可以判断这些报文就是plc发出的读命令。
  想要读到数据必须要有从站,我们使用modsim软件模拟出3个从站:
  modsim
  将3个模拟从站地址分别设为1,2,3,起始modbus地址与程序设为一致:40100,长度设为20,这样读写地址都能看到。点击connection设定通讯参数(波特率,数据位,停止位,校验位与程序中设为一致)。点击确定后能后看到通讯板和转换器的接受发送指示灯开始闪烁,程序中的设备地址也在1-3中循环变化:
  通讯指示灯
  由于动图的帧率选的较低,会漏掉几个灯的状态…
  变化的设备地址
  监看程序中设备地址,能够看到地址在1-3之间循环变化。可惜的是modsim与SPU不能共用一个串口,看不到modsim反馈的报文了。
  接下来我们在modsim中改变几个地址的值,看看PLC的设备数据结构体中能否进行相应的变化,将设备1的数据设定为:
  40100设置为110,
  40101设置为111,
  40102设置为112,
  40103设置为113,
  40104设置为114,
  设定数据
  数据设定后在PLC的DB块中监视DeviceData的值:
  读取数据
  可以看到DeviceData[1].states的值已经变化(16进制),而DeviceData[2]和DeviceData[3]并没有变化。
  下面进行写数据的验证,在程序中将DeviceData[2].ctrl任意赋值,然后再modsim中查看:
  写入数据赋值
  写入成功
  可以看到modsim 3中相应地址的数据也已经变化,而其他模拟设备中并没有改变。 其他
  在实际的项目中,例如变频器控制,通讯参数和数据地址一般都是设备(从站)规定好的,我们需要查阅设备手册,在程序中做相应的设置即可,通过通讯获取的数据可以有触摸屏显示出来,方便操作人员监控设备状态,也可以做一写判断,用于设备的报警等处理。

2022年GDP增速14!多项指标领跑!深圳坪山交出高质量发展亮丽答卷癸卯兔年将近,深圳坪山热度更高2022年坪山区经济数据新鲜出炉2022坪山GDP1080亿元,增速14规上工业增加值690。6亿,增速27,全市排名第一固定资产投资606。09亿,从AI教育走向全行业智能机器人,优必选在下一盘大棋编辑于斌出品潮起网于见专栏智能科技走向社会民生应用,正在成为一种不可阻挡的趋势。无论是大中型制造企业逐渐普及的工业机器人,还是在商场餐厅随处可见的导航机器人,都预示着机器人行业已经2022年上海首店盘点三四季度快速反弹,增量不增质在起伏波动中,也可看见上海的恢复力。作者于金平编辑杨绚然头图来源视觉中国在经历过山车一般的2022年之后,四季度上海首店冲到了高位。据品牌数读不完全统计,2022年第四季度新开53厦门集美区出台措施!最高奖励百万元国家级高新技术企业从市域外迁入集美的,最高给予一次性100万元奖励企业当年度首次纳统归属集美区的软件和信息服务业,给予15万元奖励对软件企业所聘用的当年度实际个人工资薪金(税前)高三年楼市大考,谁是赢家?大浪淘沙,谁坚若磐石?一目了然。近三年楼市,对房企来说,无疑是一场大考,但无论市场如何变化,总有英雄脱颖而出。特别是2022年,对福州房地产市场来说,是重建新秩序的一年。大型房企在兔年,祝福实干者!兔年,祝福实干者!此时此刻,空气里洋溢着祝福,以凛冬夜晚清澈夜空为背景,无数烟花在广袤的大地上升腾绽放,这象征了无数人对美好生活的向往。我们中华民族历来相信,只要勤劳,一定可以创造三月建筑科技等级调整深层剖析这篇文章深度剖析一下三月建筑科技等级调整对当前游戏内容带来的影响1采集器金水采集器容量提升50000,产量提升700小时,黑水采集器容量提升6000,产量提升20小时,采集器血量均半导体行业专题报告从海外龙头发展历程看国内半导体设备企业(报告出品方东方证券)1。回顾海外半导体设备龙头厂商的发展之路全球半导体设备市场高度集中,海外龙头企业处于垄断地位。美国的半导体厂商主要有应用材料泛林半导体和科磊,应用材料是全球最海外通用将向四家工厂投资超9亿美元主要用于生产下一代V8发动机文懂车帝原创彩丽美懂车帝原创行业日前,据外媒报道,通用汽车将在美国四家工厂投资9。18亿美元,其中大部分资金(8。54亿美元)将用于密歇根州弗林特发动机工厂,为大型皮卡和SUV生产综合性专业化装饰龙头,金螳螂供需优化拐点显,龙头迈步从头越(报告出品方分析师国盛证券何亚轩程龙戈廖文强)1。公司简介综合性专业化装饰龙头,设计及EPC能力突出装饰龙头,设计及EPC能力突出。公司成立于1993年,是一家以室内装饰为主体,融科技资讯科学家首次实现多体非线性量子干涉中国空间站今年转入常态化运营1月18日,中国航天科技集团发布中国航天科技活动蓝皮书(2022年)。记者从蓝皮书发布会上获悉,中国去年完成了64次航天发射任务,创历史新高。其中,中国空间站建造阶段全部6次飞行任
CBA最新积分榜深圳29分狂胜广厦,轰出6连胜,山西不敌广州暴跌北京时间12月24日,CBA常规赛第17轮的比赛继续进行,在昨天晚上结束的两场比赛中,深圳8960大胜广厦,山西100108不敌广州,目前在最新的积分榜上,深圳6连胜排名第8,广厦中国足协公布对广东省第十六届运动会足球项目男子乙A组决赛有关单位及个人的处罚决定12月25日,中国足球协会网站发布对广东省第十六届运动会足球项目男子乙A组决赛有关单位及个人处罚决定的公告如下2022年8月7日,在广东省第十六届运动会足球项目男子乙A组决赛中,广明年联赛会全面放开,奉劝管理层充分让利俱乐部,以便休养生息明年中国足球联赛将全面放开。开放球场,有球迷入场的比赛与封闭式的完全不同。场面会更加激烈好看。当然,您非要说说中超也就这么回子事,我也无力反驳。那是另外的话题。走训制即将回来,球员来了!俄罗斯转投亚足联获绝大多数人支持亚足联将投票表决!俄罗斯足协已经长时间缺少正式的国际比赛,对于俄罗斯国内的俱乐部来说,也是一个不小的打击。遭到国际足联和欧足联的禁赛处罚后,俄罗斯足协始终在寻找新的解决办法,如今,离开欧足联,转投亚世预赛种子出炉!国乒占据两个头号种子,向鹏迎来出线良机2023年德班世乒赛增加了洲际预选赛,亚洲区的预选赛前16号种子根据世界单打排名已经确定,中国队的樊振东和孙颖莎毫无意外地占据了男女单打的头号种子。19岁的向鹏首次作为5大主力参加确实不如朱婷幸运,李盈莹留洋之路受制三大因素,郎妈很重要随着土超豪门费内巴切俱乐部引援尘埃落定,李盈莹留洋一事再次落空,之前的传言被事实粉碎,不少球迷十分失望。比起前辈朱婷,李盈莹在留洋方面确实没有女王幸运,三大因素让李盈莹的留洋之路注婚内出轨?知名男星发文12月24日,当红一线小生离婚曾婚内出轨话题登上微博热搜榜榜首,原因是有狗仔爆料曾高调官宣结婚生娃的某当红一线小生偷偷离婚两年了,而且他在妻子孕期出轨有夫之妇,被对方老公抓包。不少内娱,你究竟在高贵什么?车保罗的出现让人们清醒!近段时间在综艺节目无限超越班上,一位头戴黑色礼帽,戴大黑框眼镜的老人出镜了。他用他的真诚打动了观众,可却并没有打动在场的演员,实在很让人感觉遗憾,他就是车保罗。车保罗的介绍。车保罗孙伟杰AI计算成就中国的DeepMind经济观察报记者钱玉娟过去的AI技术的发展模式,多是在特定AI模型的基础上寻找行业数据,再基于大量数据进行模型训练,尽管这一领域也曾诞生过非常有趣的应用,但AIforIndustry累计交船209艘!今年中国船舶集团新接订单量和手持订单量均保持世界领先水平近日,中国船舶集团有限公司旗下广船国际有限公司建造的11万载重吨液化天然气(LNG)双燃料动力成品油船完工交付。至此,中国船舶集团已提前完成今年全年交船任务。截至目前,中国船舶集团中国对月壤的研究成果,掀起欧美网络再次对阿波罗计划的质疑!自中国发布,嫦娥5号带回的月壤的科学分析报告。引发欧美网友,在提当年阿波罗计划阴谋论。因为美国在此前宣称阿波罗11号带回的月壤,与地球土壤基本相同!这与中国在月壤中的众多发现!大相