浅谈西门子Prodave6.0在C#中的应用
![](https://csdnimg.cn/release/wenkucmsfe/public/img/star.98a08eaa.png)
一.从w95_s7.dll中导入PLC通讯函数的方法[DllImport] 在使用DllImport之前,必须引入InteropServices, 代码如下: using System.Runtime.InteropServices; 具体使用方法可以参考我的博客中转载的一篇文章 《C#(.net)中的DllImport用法[转] 》写的很不错,千万要注意C++数据类型到C#的对应关系,选用合适的类型。比如 char* 可以用string来转换,指针类型可以ref 或者数组。 原文地址:http://www.cnblogs.com/xumingming/archive/2008/10/10/1308248.html 二.定义结构体类型 2.1 PLC连接参数结构体 1//定义结构体[连接PLC所需参数] 2public struct PLCConnParam 3{ 4 public byte Addres; // 定义CPU的MPI/DP地址 5 //public byte SegmentId; // 保留为0 6 public byte Rack; // 定义CPU的机架号 7 public byte Slot; // 定义CPU的槽号 8} 2.2 PLC存储区域类别编号 1//定义枚举类型[PLC的存储区域编号] 2public enum PLCBlockType 3{ 4 I = 1, //Input bytes 5 Q = 2, //Output bytes 6 M = 3, //Flag bytes 7 T = 4, //Timer words 8 Z = 5, //Counter words 9 D = 6, //Data from DB 10} 三.常用函数详细讲解 3.1 建立PLC连接函数 首先从W95_S7.DLL中导入连接函数,访问权限为私有,C#将会对此函数进行封装,供外部调用,稍后讲解. 1/**//// <summary>与PLC建立连接,该函数必须在其他所有函数调用之前被调用 2/// </summary> 3/// <param name="nr">连接数,在DOS,WIN3.1最多可以有4个,在WIN95以上最多可以有16个</param> 4/// <param name="device">与PLC通讯的设备名称,一般为S7ONLINE</param> 5/// <param name="adr_table">参数列表,4个值分别为MPI/DP地址,保留值=0,槽号,机架号</param> 6/// <returns>0正常返回,非0为错误号</returns> 7[DllImport("w95_s7.dll")] 8private extern static int load_tool(byte nr, string device, byte[,] adr_table); 说明: 在一个MPI/DP网络中若有多个PLC时,可指定多个连接列。最后一列的所有参数须置0,以标志参数列结束。例如一个MPI/DP网中有两个PLC,他们的MPI地址分别为2和3,槽号均为2,机架号均为0,则可按如下方式调用:byte[,] ba={{2,0,2,0},{3,0,2,0},{0,0,0,0}}; int err=load_tool(1, "s7online",ba); 返回值为int型,如果返回0则表示执行成功,非零值,则需要根据错误号查找到错误具体信息,具体参照本文第五部分:错误代码字典
![](https://csdnimg.cn/release/download_crawler_static/1579802/bg1.jpg)
![](https://csdnimg.cn/release/download_crawler_static/1579802/bg2.jpg)
![](https://csdnimg.cn/release/download_crawler_static/1579802/bg3.jpg)
剩余14页未读,继续阅读
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://profile-avatar.csdnimg.cn/b8c19c0dcdb54386b3fb5a31f7510c0c_xdpcxq.jpg!1)
- 粉丝: 2192
- 资源: 1121
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- BSC绩效考核指标汇总 (2).docx
- BSC资料.pdf
- BSC绩效考核指标汇总 (3).pdf
- C5000W常见问题解决方案.docx
- BSC概念 (2).pdf
- ESP8266智能家居.docx
- ESP8266智能家居.pdf
- BSC概念 HR猫猫.docx
- C5000W常见问题解决方案.pdf
- BSC模板:关键绩效指标示例(财务、客户、内部运营、学习成长四个方面).docx
- BSC概念.docx
- BSC模板:关键绩效指标示例(财务、客户、内部运营、学习成长四个方面).pdf
- BSC概念.pdf
- 各种智能算法的总结汇总.docx
- BSC概念 HR猫猫.pdf
- bsc概念hr猫猫.pdf
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)