回复:让西门子S7-1200直接连接MySQL数据库!!!

已锁定

SuperTai

  • 帖子

    22
  • 精华

    0
  • 被关注

    27

论坛等级:游侠

注册时间:2014-11-28

普通 普通 如何晋级?

发布于 2020-04-17 14:07:57

57楼

?4.11号看到了帖子,目前为止终于测试成功,感谢楼主分享,也和同我一样的零基础小白分享下过程:

1 从github下载了文件,发现是V15.1的,先去下载了博图软件,

2 看说明文件,需要用数据库软件,又去下载了MYSQL,结果下载了几十MB的小文件,不能用,最终找到https://dev.mysql.com/downloads/windows/installer/8.0.html,下载那个398MB的文件,才能用。

3 mysql安装软件过程,根据网上的安装教程安装完毕,创建了数据库密码,端口号默认3306。

4 根据PDF教程,创建了用户plc,密码root,并勾选了权限。

5 在PLC侧,设置remoteIP地址为电脑地址,端口号默认3306,。

6 网上查询了如何用Navicat,创建了数据库book

7?数据库连接connect指令管管脚替换为账户‘plc',密码'root',数据库‘book’

8 测试连接情况,是能连接指令,无法连同,通过上网查询,将MYSQL重装,重装过程中,密码校验界面选择第二个选项,native password。

9 网上查询mysql通讯协议,了解了要三次握手建立TCP/IP,4次挥手断开连接,逐句逐句的看楼主的SCL程序。

10 根据测试程序块中的 wstring内容,并查看了数据库指令,了解了“INSERT INTO ...”是数据库写入指令,根据写入指令的结构,在数据库侧建立表plcdata,在表plcdata下,建立T1~T5(bouble 类型,长度4,小数3)T6~T8(INT 类型),T9 T10(bit 类型)几个列。

11 激活写入指令,发现报错,根据报错代码查到是找不到数据库,怀疑发送的指令是不是有问题,于是查到可以用抓包工具wireshark可以抓包看TCP通讯过程,于是下了软件找了使用教程,开始抓包,发现通讯协议没问题。

12另从网上百度找问题,其中有解释说需要连接下数据库,于是使用MYSQL-use指令,再次连接了book数据库,然后再激活发送数据指令,报错换成了 T1数据长度错误,于是把数据库book下plcdata的列T-~T5长度改为10,再次发送指令,查了下如何用Navicat查看数据内容,然后确认确实写进来了数据。

以上是一个通讯小白的过程,对楼主的程序佩服的五体投地,为我打开了一扇新的大门,通讯没有以前那么神秘了,非常感谢楼主的分享,楼主的一些编程技巧对我很受启发。

书山有路,学海无涯。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15118条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。