2023年11月20日 16:20
原创作品,转载时请务必以超链接形式标明文章原始出处,否则将追究法律责任。

微信图片_20231120155715.jpg

想想再过几个月树叶又要发芽了,今年的红叶刚看完,明年的绿叶又要来了。

今天我就以笔记的形式记录一下PLC的读写

 

一.连接PLC前奏

1.连接PLC首选网线直连,不要使用WIFI连接(不稳定,意想不到的错误),启用以太网并设置IP

截图00.png

2.用一根网线将PLC和电脑连接起来,需要保证我们电脑的IP和PLC的IP在一个网段,比如PLC是192.168.0.1,我们的电脑就要在192.168.0.xxx。由于家里一般都是自动生成IP,如下
image.png

所以需要我们自己去手动ping一下本地IP,输入ipconfig命令,就可以查看,如果不是请登录路由器修改,或者直接改IPv4地址

image.png 

二.博图软件

1.安装好博图V16版本软件以后,打开它

2.打开后可以新建一个项目

(1)新建完成后,点击Add new device,创建一个设备,这个设备型号选择一定要和我们真机是匹配的,否则博图上编写好的程序将无法下载到真机。这里的型号我们可以直接查看PLC机器的机身
图片1.png

机身型号
image.png

(2)创建完成后,可以去编写程序,或者创建db块,弄完之后可以下载到真机

3.也可以项目创建好之后直接上传PLC真机的程序到博图,点击如下菜单即可将真机程序上传到博图,此时真机的所有程序集db块都会加载到博图
图片3.png

4.加载到博图后的PLC设备如下,数据块程序什么的都已经拉下来了
图片4.png

5.接下来就是我们自己创建一个db块用来测试,不要把原来人家PLC机器上的数据搞坏

(1)点击Add new block,创建一个db块,如下是number6,我们下面都以number 5为例
图片5.png

(2)创建好DB块之后,我们创建一些变量上去
图片6.png

(3)创建好变量之后我们需要再属性中勾选不优化

图片7.png

然后去掉Optimized block access选项,这样才会给变量生成地址偏移,否则地址不固定
图片8.png

(4)变量设置完以后我们点击编译,看是否有错误,当然没有写新程序一般没有错误

图片9.png 

(5)如果需要外部能够读写这些变量,我们还需要勾选如下选项。PLC上右键,然后选择General=>Protection & Security

图片10.png

三.测试

1.可以将设备GoOnline,直接点击GoOnline

图片11.png 

2.GoOnline以后,如果PLC的变量值或者程序和博图不一样,他就会有黄色感叹号,此时你可以选择上传PLC的到博图,或者下载博图的到PLC
图片12.png

3.变量监控,点击眼镜那个小图标就可以对变量值进行监控,此时列表中会多出一个Monitor value列,如果程序对这些变量进行修改的话,monitor的值会变
图片13.png

4.打开我们的测试程序

(1)点击连接,先连接PLC

(2)然后我们读取DB5中的数据,比如我们读取DBX0.0,此时会在下方文本框先读出一个false(3)我们在右下方写数据部分把这个值修改一下,改成true

(4)继续点击读,此时值会输出true
图片14.png

5.此时博图监控部分会变成true
图片15.png

6.我们再修改一下第二个变量,从false改为true

图片16.png

监控部分也会自己更新
图片17.png

7.我们再修改一个real变量的值,读出来是0
图片18.png

将其修改为16
图片19.png

 

四.软件参数说明

1.IP地址:PLC的IP地址,可以再属性PLC查看,点击PLC,如下可以查看IP地址
图片20.png

2.端口:102(不变)

3.机架号和插槽号,请参考下图
图片21.png

4.参考文档:
图片22.png

5.像我们的PLC中,数据块偏移量如下
图片23.png解释一下,如果我们要读取Bool1的值,那么我们就会使用地址DB5.DBX0.0去读取,为什么额,因为我们数据块是5,偏移量是0.0,那么地址中间的DBX是什么,对于bool类型,规定是DBX,对于INT和Real类型是DBD,对于Word类型就是DBW。
如果我们想查图中float1的值,那么我们就用DB5.DBD12.0,读取md11的值就用DB5.DBD20.0

6.学习文档链接
S7.Net documentation 文档中文说明书 - 360文库 (so.com)

基于C#平台通过S7.net实现与西门子S-1200PLC (360doc.com)

(23条消息) C#西门子S7 协议通过偏移量的方式读写PLC DB块_西门子数据块的偏移量_小丫头呀的博客-CSDN博客

 

发表评论
匿名  
用户评论
暂无评论