通过数据库网关连接罗克韦尔1756-L72的以太网端口标签方式采集数据,将数据存入MySQL数据库,以下描述具体的操作步骤。PLC数据MQTT多主题发布/订阅西门子PLC数据采集到数据库
站在用户的角度思考问题,与客户深入沟通,找到武陟网站设计与武陟网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站设计、企业官网、英文网站、手机端网站、网站推广、域名注册、网络空间、企业邮箱。业务覆盖武陟地区。
网关模块安装在设备侧,不用电脑软件,随设备上电启动自动运行,保证设备数据采集与设备运行同步,简单高效的完成了数据采集;已批量用于多种行业的智能工厂,大大提高MES等工业互联网项目的实施效率。IGT-DSER带有两种数据缓存功能:
1. 高频次采集数据缓存,打包后一次性上报到数据库;
2. 断网、服务器维护上报异常时,将数据缓存,待故障解除后重新上报到数据库
网关支持西门子、三菱、欧姆龙、施耐德等几乎所有的PLC品牌,通过以上参数软件自行切换即可;关于网关模块的详细介绍可查看CSDN的这篇文章,或者到这里下载PDF手册。以下是详细的操作步骤:
首先用Navicat连接服务器数据库,建立一个数据表,名称为'abplcdata',数据表设计视图如下:
然后在PC上运行网关的参数设置软件,网线连接IGT-DSER网关的网口1,先配置网络参数(默认IP:192.168.1.244,确认PC的网口与网关默认IP同网段),通过‘工具’-‘搜索在线网关’,搜索到网关后,修改IP地址等参数,具体如下:
网口1.PLC设备末段IP设置为0表示有多台同系列同网段的PLC,每台PLC的IP地址在PLC数据地址表里面配置,后面有描述;设置完成后通过‘参数’-‘参数写入到网关’,下载参数,会有以下提示:
点‘是(Y)’即可,参数下载成功后将网关断电,网口1接入PLC的交换机网络,同时修改PC的网口参数为PLC同网段,重新搜索网关读取参数后,通过‘功能’-‘数据上报与下载’进入数据服务配置页面,选择SQL远程数据库,配置数据库地址、PLC标签的参数;
配置完成后要下载参数,通过‘工具’-‘重启网关’,重启后,网关即进入工作状态,通过读取参数可查看网关的实际数据,双击配置表对应的数据序号可查看数据值,如下图:
序号001是日期时间,取自网关的RTC时钟;002和003是PLC的控制器二维数组;004、005和006是控制器一维数组;007为程序变量,字符串类型;008是程序数组;009是控制器变量,BOOL类型;
设备/站号栏目的数值9,表示PLC的IP地址(192.168.0.9)末段(前三段与网关的网口1相同),如果需要增加另外的同系列同网段PLC,在这里设置对应的IP末段地址即可,不同的PLC对应不同的数据表,或者不同的记录行;
需要注意配置表‘数据地址’栏是PLC的数据标签,不能错误,否则读不到数据,所以最好是通过PLC的编程软件从PLC导出CSV文件,然后复制到配置表,如下图:
再打开Navicat查看数据库中的数据,如下图:
这样就完成了数据采集,没间隔5秒网关会自动上报一次数据,这个周期可以调整,也可以设置成触发模式,根据数据变化上报数据;
相关资源:利用PLC实现数据采集_plc数据采集并存入数据库,plc数据采集-专业...
————————————————
版权声明:本文为CSDN博主「肉褚」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
1、导入.sql文件命令:mysql USE 数据库名;mysql source d:/mysql.sql;
2、建立数据库:mysql CREATE DATABASE 库名;
3、建立数据表:mysql USE 库名;mysql CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
4、删除数据库:mysql DROP DATABASE 库名;
5、删除数据表:mysql DROP TABLE 表名;
6、将表中记录清空:mysql DELETE FROM 表名;
7、往表中插入记录:mysql INSERT INTO 表名 VALUES ("hyq","M");
8、更新表中数据:mysql- UPDATE 表名 SET 字段名1='a',字段名2='b' WHERE 字段名3='c';
9、用文本方式将数据装入数据表中:mysql load data local infile "d:/mysql.txt" into table 表名;
方法如下:
1.头文件:
#include
#include
#include//这个是必需要包含的,下面对mysql的所有操作函数,都出自这里
2.定义一个MYSQL变量:
MYSQLmysql;
这里MYSQL是一个用于连接MySql数据库的变量。
在后面对mysql数据库的操作中,我们就用这个MYSQL变量作为句柄的。
3.定义数据库参数:
charhost[32]=”localhost”;
charuser[32]=”username”;
charpasswd[32]=”pwd”;
chardbname[32]=”testdb”;
4.数据库操作
1).初始化数据库:
mysql_init(mysql);
2).连接数据库:
mysql_real_connect(mysql,host,user,passwd,dbname,0,NULL,0);
我们在操作时,可以对以上的函数进行if测试,如果初始化或者连接出错,作出相应提示,以便调试。
5.对数据库的操作:
Mysql_query(mysql,“select*fromtestdbwherecondition”);
我们在实际操作中,为了更方便的使用程序中的某些变量,我们将会用到一个函数:
intsprintf(char*str,constchar*format,?);
这个函数用来格式化我们的字符串,然后将变量按照给你的格式,赋给第一个参数。
我们使用这个方法方法可以很方便的使用我们的变量来对数据库进行操作。例如我们将要进行数据库的查询操作,我们就可以这样使用:
sprintf(sql,”select*fromtestdbwhereusername=‘%s’”,u_name);
然后使用mysql_query(mysql,sql)进行查询。
MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。相比于线性表顺序结构,操作复杂。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要O(n)的时间,而线性表和顺序表相应的时间复杂度分别是O(logn)和O(1)。
1、打开浏览器搜索“sqlyog”并下载这个客户端软件。
2、然后安装之后打开客户端软件。
3、然后点击“新建”新建一个连接,然后填写mysql主机地址、用户名、密码,端口,然后点击下面的连接。
4、然后在左侧选择自己要连接的数据库。
5、然后在Query下面的空白地方输写自己的sql语句。
6、然后点击如图所示的图标,进行执行自己写好的sql语句,就完成了sql的基本操作。
1、首先,选中一个数据库world,为了防止破坏其他的数据库表,这里新建一张数据库表t_people_info,如下图所示。
2、创建t_people_info数据库表,可以查看下表结构,使用SQL语句或直接点击进行查看表结构。
3、接着,在world数据库找到”事件“菜单项,鼠标右键”创建事件...“,如下图所示,输入事件名称,单击”创建“。
4、就会生成insert_data事件,如下图所示。
5、接着,编写insert_data事件,每10秒钟向t_people_info插入一条数据。
6、最后查看事件的状态,调用事件运行成功。