- 博客(31)
- 资源 (10)
- 收藏
- 关注
原创 施耐德M310PLC通讯之Modbus RTU通讯中(三)
1.2 接线: M310PLC D1接 M241PLC D1 serial2。1.5 GVL添加变量 做从站时不需要配置什么 直接按照MW0=40001去映射即可。1.6 POU内调用一下,并强制赋值MW0=12 MW1=13。这是另一个专题----施耐德国产化PLC(M310)的通讯篇。1.12 M241PLC端 看到M310发送的数据。1.10向M241内写入数据 添加0x16功能码。1.4 设置M241做为从站,并分配地址=1。测试对象: M310plc与M241PLC。
2024-11-02 14:17:47 314
原创 施耐德M310PLC通讯之Modbus RTU通讯上(二)
1.20 此时Modbus Slave 40001~40010数值直接清零!因为 它一直被PLC端的0x16功能码写入0!M310PLC的 Serial2(RS485)端口 D1接USB转485插件的D+ D0接USB转485插件的D-1.16 依次写入40001~40010 的数值 查看PLC这边的反馈情况。1.18 PLC端添加写入功能码 0x16功能码 写入多个保持型寄存器。1.11 添加通道:注意PLC需要地址从0开始!1.27 Plc端写入多个线圈 0x15 功能码 写10个线圈。
2024-11-02 14:11:06 267
原创 施耐德M310PLC通讯之ModbusTCP(一)
这里不展示M241ModbusTcp通讯部分了,因为M241作为从站什么都不需要配置!10.如果需要IO映射里面的数据实时刷新,那么就修改总线节点,修改之后最好重新映射一下!12.向MW0----MW9写入数据,读取到了M241反馈过来的MW0~MW9数值变化了。11.数据修改,测试 向MW0内写入1 可以读取M241PLC的MW0收到了1。9.修改Eth0 网口参数 这个必须修改 不然通讯上没有数据交互的!这是另一个专题----施耐德国产化PLC(M310)的通讯篇。通讯协议: ModbusTcp。
2024-11-02 13:55:23 469
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)与M262PLC 通讯(二十四)
16.双击“数据点(控制触发)”部分,重复第 15 步动作(“数据点(控制触发)”按钮相当于监控该变量的状态),并将类型部分修改为“交替”,关闭物件属性窗口。12.在弹出的对话框中,“提供者”部分选择“CoDeSys”,点击加入按钮,在弹出的 CoDeSys。6.点击左侧“工具树”,右键点击 Application,选择“添加对象”->“符号配置”,并点。11.菜单栏选择“专案”->“通讯”按钮,在弹出的对话框的“数据点整合”部分点击“加。
2024-11-02 13:36:00 923
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)OPC UA通讯(二十三)
每次的订阅量 决定了M241与EMSE之间通讯的变量数量 100表示最多100个变量可以被正常通讯,第101个收不到!M241不支持加密的方式进行OPC UA 所以需要额外注意 禁用掉PLC的下载登录用户名+密码的操作!2.5 添加描述,下拉菜单选择联机(M241为241plc服务器配置时的联机名称)施耐德PLC这部分跟机器专家软件版本、PLC型号有关系,可能叫法不一样。本节展示EMSE与施耐德M241PLC的OPC UA 通讯。写入联机名,自己定义,并不影响什么。2.2 设置端点,选择服务器。
2024-11-02 12:55:19 294
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)ModbusTcp通讯(二十二)
标题写入Modbus地址的起始地址偏移 我写4X:1是因为Modbus地址40001起始,而M241PLC是MW0起始,有一位偏移,为了方便地址计算。PLC内IO地址的IX6.0~IX7.7 对应的1X:6 开始 (同理,其他的IO也可以这样去看对应关系)本节主要展示EMSE与施耐德M241plc的modbusTCP通讯,作为上位机软件一般作为主站来进行。5.关于PLC的QX 数字量输出 EMSE采用0X:1 (偏移1位) 读取。站号写入PLC的IP地址+端口号(默认502),注意英文状态下写入。
2024-11-02 12:27:54 499
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)文件管理功能-下(二十一)
sFile=$DirCreate(“C:\File”) 表示 在C盘下创建名字为File的文件夹,将创建结果返回给sFile变量 ,返回值=0 表示创建失败。由于EMSE工程可以借助数据库来进行操作,所以这些内容均可以存在于数据库内,我们只需要通过EMSE实现数据库备份即可。数据备份往往包含很多:设备运行参数的备份、配方的备份、用户的备份、历史审计以及报警的备份,程序备份等等。所以这个功能就是将容量即将满的数据库数据转移出去作为备档,重新开始新的记录,这样数据永远存在。
2024-11-02 12:09:57 311
原创 禾川X5E伺服与施耐德M241PLC的canopen通讯实例
总结来说也就是 一根RJ45网线 (按照标准 橙白、橙、绿白、蓝、蓝白、绿、棕白、棕 线序情况下 ) X5EN伺服一端接网口,M241一端 CAN_H接橙白、CAN_L接橙 、GND接绿白。重新插好,canopen具备自动复位重新连接的能力,但是机器专家内的轴节点状态是无法自动复位的,并不影响什么,所以可以不考虑。Canopen通讯中SDO的数量影响了通讯速率,是占用资源的,所以可以的话少加,尤其是从站设备很多的时候。最近弄了个禾川的X5E伺服,手里有一个施耐德的M241PLC,就测了一下,还挺好用。
2024-10-24 11:28:03 700
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)文件管理功能-上(二十)
大致意思就是说通过这个函数可以将strFile定义的文件路径里面的内容属性 copy到optTagFilesFound定义的集合内,timeout时间设置为1000ms。3.完成了上面的操作就可以进行文件的复制操作了,这在前面章节有提到过,我们采用自带的函数FileCopy()2.上面实现了文件的队列,识别到具体的文件名头,那么接下来就是文件的显示(如何向上面那样显示在列表内?5.在上面所提到的部分内容都涉及到文件夹内的某个文件,那么这个文件夹是怎么来的呢?
2024-10-15 20:08:13 703
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)数据监测-趋势图(十九)
6.运行–结合治上一届节的数据监控,可看到趋势图在实时调用数据库内容并显示出来。利用EMSE的趋势图控件可实时显示当前的过程监视数据值。
2024-09-26 15:37:07 227
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)数据监测(十八)
新建一个名为Table_Monitor的表单,添加三个元素:Re_Index 序号;比较简单的一个函数,首先检索是否已经存在了需要插入到数据,存在的情况下就更新已有的,不存在就直接插入。通过EMSE与sql数据库连接,可以实现一些过程数据的监测、存档,实现生产过程的可视化。4.实现温度、序号、时间同步写入sql数据库的Table_Monitor表内。ok,可以看到数据一直在叠加,那么我们就完成了过程数据监测的一小部分。这里利用EMSE自带的排程来实现,设置一个5s的排程。4.2 写个小程序来触发一下。
2024-09-26 15:28:44 346
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)审计追踪进阶(十七)
3.4 添加字段 这个根据需要来选择-宗旨就是字段=SQL内的TableAudit表内的字段。文件打开后可以看到如下内容,Pdf原则上是无法修改的,所以数据安全上能更好一些。关于EMSE网格线功能的一个bug就是颜色这部分,可能会因为切换颜色导致闪退。**这里需要注意:数据变量的格式-------{$cSel.dbGrid}3.5进阶----可选择PDF转档触发以及pdf文档名;具体关于数据库与EMSE的连接可差看之前的章节。这在之前的关于审计部分的章节有讲过 这里不在详细讲解。3.7 添加画面开启脚本。
2024-09-26 14:23:42 301 1
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)报警记录进阶(十六)
ok,这部分就完成了,相对非常简单,前期基础打好,只是数据库之间的关联就会变得非常的简单。针对某些特殊行业(诸如医药行业)的设备生产需要符合GMP相关规定,这就导致需要数据溯源。EMSE可以通过与sql的连接实现报警历史记录的永久存储。2.sql创建表单 用于报警历史数据的存储容器。4.现在我们就可以借助前面的章节。3.EMSE内选择sql表单。1.EMSE打开相关配置。
2024-09-21 16:09:13 365 1
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)与SQL数据库连接(十五)
实现:向数据库sqlDB的表Table_Test内插入数据 Index=1 Sub=1001。我们写一个函数 来实现任意一个数值向sql内的Table_Teset表内写入数值。(ps:这里先做一个小测试-----目的是验证与EMSE软件的链接是否顺畅。EMSE内添加一个程序 Func(insertintosqlDB())emse运行画面,按下按钮 可以在sql数据库内看到增加了1条数据。用的是sql 2017 关于数据库软件的安装教程 网上一大把。ok,到目前为止,sql与EMSE简单的连接已经完成。
2024-09-21 14:57:27 710 4
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)用户管理进阶(十四)
ReadUserInfo() 是我自定义函数 用于实现用户的筛选,确定该新建用户是否是已有用户,以及用户状态显示(是否是锁定用户、用户所属用户组,用户登陆状态、密码输入次数等等)这个相对复杂一些,需要判断是否选择可用户、所选用户是锁定还是未锁定状态、所选用户的权限级别(默认管理员是不能永久锁定的)好了,到这里基本上已经全部展示了EMSE的用户管理功能,关于用户的备份与导出,将会在后续的备份/还原章节来展示。用户新建、用户密码修改、用户锁定/激活、用户删除、用户组策略配置(右下角可配置参数)
2024-09-18 19:58:41 727
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)XY曲线应用(十三)
数据源选择本地的文本文档,当然可以选择数据库、数据点等其他类型,这里方便展示,选择一个TXT文档内的数据。也可以选择数据库内容,实时显示当前动态数据的趋势,比如设备风速、压差、温湿度等,都可以通过这个来实现。首先添加趋势图到画面。打开属性,定义XY轴。
2024-08-02 12:04:18 221
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)画面模板与指针应用(十二)
修改变量绑定 “$@PumpRun” 其中 “ $PumpRun”是新建的变量 “@”代表指针。[ $#PumpNo:]作为组合件输入变量,可通过外部给过来。其中$cPump.PumpRun 作为泵启动的信号。打开之前创建的弹窗,全选,鼠标右键 创建组合件。复制上边的PopPump内容到新建的弹窗画面。添加一个文本显示,显示泵速值的写入状态。添加一个按钮 打开PopPump的弹窗。这部分主要针对于画面的组合件的使用。添加需要的变量,这里希望控制泵1。点击泵2按钮 设置泵2参数。在添加一个组合件 控制泵2。
2024-07-25 12:00:13 450
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)排程应用(十一)
这里有一个小技巧就是利用排程的时间来实现固定相对准确时间的触发(最小单位为秒)这需要时间日期的格式,具体可参看系统变量 $Date $Time。表示变量数值发生变化时 执行触发动作(变量iSelect+10)比如实现一个BLINK 1s闪烁 那么这里的系统时钟是准确的。表示将会在每天上午8点41分对变量iNum进行+1 的操作。这里将时间格式改成了 2024-07-24 这样的格式。这不是唯一固定不可变更的,可以通过函数进行修改。表示每5s对变量iSelect进行+1。事件分为三种:日历、时钟、变更。
2024-07-24 09:00:13 297
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)动态对象应用(十)
为它关联一个数据点之后,可以通过该数据点的数值变化来显示直方图状态(如下图),当然你可以通过程序来实现,让他更灵活。接着双击矩形,选择需要的命令,这里的命令类型有以下几种:1.内建语言(直接忽略,应用环境少,不太适用于项目中)我们可以通过EMSE软件对画面内添加的文本框、图片、图形、按钮等等元素进行命令的添加,来实现一些功能。当我们添加文字的时候,通过“####”的形式而不是直接写具体的文字,此时“文字数据链路”动态属性可选,7.数据点切换(命令执行时数据点数值发生反转,原来=0 现在=1;
2024-07-21 13:29:38 758
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)配方应用(九)
这里采用函数GetAppPath()来获取配方文件的路径,Web\Recipes\Recipe 表示文件存储在工程目录下的Web文件夹内(如下,这个文件夹默认是不存在,需要自己创建)cRecipes[1].Actual ~ cRecipes[5].Actual 作为配方写入到PLC的变量。这里需要一个关键点:(Recipe(“”)函数中的配方名字,是我们创建的配方工作表的名字)接下来我们选择配方1 点击“加载” 可以看到配方值更新为配方1的成分值。按照此方法继续添加两个按钮,作为配方2与配方3的选择按钮。
2024-07-20 12:40:13 680 1
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)警报应用(八)
EMSE自带警报功能,并可通过与数据库的关联实现历史报警数据的订阅查看,pdf转档导出等功能,这里主要讲解当前报警的列表查看,关于历史报警与数据库部分后边的章节将会详细介绍(EMSE如何配置,SQL数据库的表单创建与软件关联)按下确认按钮,报警信息被确认,但是报警条件未被复位,所以还是存在报警信息的。这一节主要展示动态对象------>>>>>警报的应用。选择工作---->>>警报---->>>>右键插入。运行画面,并触发报警变量,可以得到一条报警信息。接下来我们添加一个报警信息确认复位的按钮,
2024-07-14 12:42:49 199
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)静态对象应用(七)
双击打开智能讯息框,查看属性,类型选择讯息,数值类型选择整数,这是因为智能讯息可以根据关联的整数类型数据点的数值变化,来显示不同的文本。文本内容以及字体颜色,背景颜色等需要按需自己设置,这里作为演示,随便加几组文本,并关联好数据点。点击智能讯息,在画面中拉出自己需要的尺寸大小,也可以随意拉,后期通过格式来调节位置与尺寸。这一节主要展示静态对象的应用(智能讯息、下拉选单、列表框)智能讯息也可以做成多状态开关按钮,没按一下,切换一种状态。我们先尝试第一种---------数据点数组。数据源是"文本文件"
2024-07-14 11:50:26 606
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)文本框应用(六)
双击打开文本框,默认是开启输入模式的,与上面的一样,关联变量,就可以了,如果需要可以选择性的开启电子签章、要求确认等功能。EMSE实现数值输入的形式相对简单,大致分为:1.通过文字输入链路;注意这里的启用输入,不选择的情况下,参数数值不可修改,开启后可进行修改。这里可以关联需要的数据变量了,我们新建一个数据点 iNum 类型整数。通过Net控件可以实现非常多的功能,这些控件来源于Windos系统。属性页可以配置这个输入框的基本属性,尺寸大小,颜色,字体等。首先我们先来看通过文字输入链路。
2024-07-13 13:56:15 274
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)按钮应用(五)
命令的方式有很多种,个人最喜欢VB,他足够灵活,也是因为行业内需要审计追踪,VB可以方便对每一个按钮添加Audit事件,这里举几个例子吧,单选按钮就是同时存在两个以上的单选按钮,每次按下时只有被按的才会有动作执行,其他会被复位掉,这在工控触摸屏产品中非常常见。首先我们先来看按钮,先添加一个按钮,鼠标左键点 “按钮” 它会变成选中的状态。2.标准,中规中矩,外观没啥变化,但是颜色可以切换,可以自定义配色。1.OS样式,这是最普通单调的按钮,它不存在颜色的变化,颜色唯一。
2024-07-13 10:59:59 851
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)软件应用(四)
我们在添加一个命令按钮,来实现画面跳转(这里先跳过用户登录部分,后续有单独的用户管理完整功能)好了这就完成了,运行画面,点击这个蓝色搜索标志,就会自动跳转并打开如下画面。按照上一节的方式添加一个新的画面,并启用背景,背景图的格式选择JPG。将自己需要的图片,放在这里,就可以了,注意名字要与画面名字一致!接下来配置一下运行默认开始的画面,在前面的章节有介绍过这部分。点确定,给新画面取个名字----------Login。双击矩形框,打开命令,添加如下代码。选择矩形框,添加“命令”这一节到此结束(比较短)
2024-07-10 20:01:00 293
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)软件应用(三)
EMSE新建工程,如何规划画面布局,创建基础模板画面
2024-07-10 19:27:45 2557
原创 施耐德EcoStruxure Machine SCADA Expert(EMSE)软件应用(二)
例如,每天 10 小时,4 天,或每天 5 小时,8 天,或每天 10 小时,3 天加上 5。目前测试装载win10系统运行比较稳定,安装过程相对简单,直接点那个Setup就可以了,安装过程中会有一个错误提示,关于没有找到源文件的提示,那个直接忽略就可以,不要去管。工作:主要包括报警的配置(可以配置报警触发变量、报警信息内容、报警等级等)、配方、报表、工程脚本、排程、数据库(用于配置需要连接的数据库的接口)插入部分则是对软件画面制作时的功能,这些我很少会在这里选择,可以直接在下面的工程内进行配置,更好用。
2024-07-06 16:50:40 839
原创 STM32F103ZET6开发板与施耐德GXU3500触摸屏ModbusRTU通讯(三)
所以在bit15的取值上是需要注意的,举个例子:我想设置bit15=1 那就需要40001 2#1000 0000 0000 0000 (10#32768) 此时超出了int正向取值范围,就会溢出,所以我们可以将他设置为-32768。通过0x06功能码写入到STM32的保持区寄存器内的数据,在stm32掉电后会丢失,这就需要进行数据的掉电保持,但是他不像PLC直接一个掉电保持分区就ok,而是需要将数据写入flash内作为保存方式,开机后在从flash内读取出来。关于STM32数据的掉电保持。
2024-07-05 08:31:02 506
原创 STM32F103ZET6开发板与施耐德GXU3500触摸屏ModbusRTU通讯(二)
在此工程上添加FreeModbus,先在工程中新建一个Modbus文件,并将freemodbus v1.6下的modbus文件夹下的文件全部复制过来,再将Demo文件夹下的BARE文件夹复制过来,Modbus文件内的具体内容如。Modbus文件夹下,主要放一些关于Modbus自身协议的源码,其中包括Modbus-Rtu、Modbus-Ascii、Modbus-Tcp等,具体如图3所示,移植的过程中,可根据实际情况的需要对该文件夹进行适当的裁剪。观察收到的数据流 与STM32内发送到数据位是一致的,
2024-07-02 19:59:28 1870
原创 STM32F103ZET6开发板与施耐德GXU3500触摸屏ModbusRTU通讯(一)
STM32F103ZET6开发版与施耐德GXU3500触摸屏ModbusRTU通讯
2024-07-02 19:41:23 358
施耐德M241PLC与禾川X5EN伺服 canopen通讯 伺服控制程序,包含PDO SDO配置 伺服常用模式控制程序
2024-10-26
STM32F103ZET6 与施耐德GXU3500触摸屏modbusRTU通讯
2024-07-01
STM32F103ZET6通过RS485控制创锐蠕动泵
2024-07-01
STM32F103ZET6开发板CAN协议驱动HT-04-9海泰电机
2024-07-01
MIT版驱动HT-04-9海泰电机全套资料
2024-07-01
Freemodbus标准库
2024-07-01
ModbusRTU slave从站调试辅助助手ModbusPoll
2024-07-01
串行通讯CRC校验码计算工具
2024-07-01
施耐德FT6系列新款触摸屏编程基础视频
2024-05-26
kuka-1200profinet+1200TCP/IP
2019-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人