快好知 kuaihz订阅观点

 

用C#直接读写西门子S7-200smartPLC的内存数据

0:通讯的PLC中无须写任何程序;

1:需添加 S7.Net动态库(基本函数),此库可以在网上查找到库文件,下载到电脑中;

2:打开VS2019或者其它版本,新建一个WinForm程序,添加此动态库文件到程序中,

3:在头文件中引用此命名空间,using S7.Net;引用线程命名空间usingSystem.Threading;

效果展示 读取VB0-VB9内存的数据,写VB5-VB9的内存数据

浮点读的是VD0的数据;

4:定义公共变量

bool status = false;//定义PLC连接状态字

bool bOK = true;//写数据地址只读一次标志位

Plc plcSmsrt200;//定义变PLC变量类型

Thread thRead = null; // 定义读写线程名

intreadByteSum;// 定义读字节的总数变量

intreadByteStart;// 定义读字节的起始字节变量

intwriteByteSum;// 定义写字节的总数变量

intwriteByteStart;// 定义写字节的起始字节变量

IniFile Initools = new IniFile();//定义并实例化INI文件读写类

5:初始化程序段

6:在建立的连接按钮下面的程序代码

7:在单击读取数据按钮下面的程序代码

8:建立一读取字节的方法

9:建立一个用于判断PLC是否连接上一个方法,添加到线程里面,用于连接状态栏的显示

10:定义一个方法,去时时刷新读取的数据

11:在断开PLC连接按钮下面的程序代码

 private voidbtn_disConnect_Click(object sender, EventArgs e)

 {

 plcSmsrt200.Close();

 status = false;

 bOK = true;

 }

12:在写入按钮下面和程序代码

13:在写入INI按钮下面填定如下代码

14:读保存的INI的方法只在初始化时执行一次

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:西门子  西门子词条  C#  C#词条  读写  读写词条  smartPLC  smartPLC词条  内存  内存词条  
综合

 都说装了SSD固态硬盘,就不需要...

很多人都说SSD不需要磁盘碎片整理,这是为什么呢?之所以有这样的疑惑,是因为很多朋友在电脑卡顿时总想着进行清理磁盘,从而使电脑的运行速度得以提升。但是,如果你的...(展开)

综合

 Camtasia9编辑视频时太卡...

现在的视频多是高清视频了,1080P的视频很常见,这样的视频放到cs9中,编辑起来会比较卡。原因是:cs9需要把视频流从硬盘上搬到内存中,然后再在预览窗口中显示...(展开)