VC与西门子plc通信的教程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VC与西门子plc通信的教程相关的知识,希望对你有一定的参考价值。

哪位大侠能帮我推荐一本VC++与西门子PLC串口通信的教程书籍,如果有下载的地址也行?

  问:我的下位机是西门子S7-300,上位机是由VC++编写的监控界面的PC机,现在上位监控与plc要实现通讯,请问有哪些通讯方式,哪种通讯方式比较好,每种方式是如何实现的?

  答:1、Prodave通讯

  Prodave是西门子提供的一个软件包,为高级语言编程和plc通讯提供接口。

  通讯接口:MPI

  因为MPI口是每块cpu的编程口,所以plc不需要另外添加通讯模块,这个方案就比较经济,而且prodave软件包里面附带了example和详细的说明,用起来应该比较简单和方便(本人只匆匆看过文档,没有实验过)。这方面的资料在百度上很多。当然,mpi的速度是有限的,如果采用普通的pc adapter连接pc和plc,最高速度也就38.4kbps,我不知道prodave能否支持mpi卡(5611之类的话),如果可以的话速度可以达到187.5kbps。

  2、串行通讯

  看到过一些论文,采用串行通讯的方法实现pc和plc通讯。这种情况存在几点要求:

  a、需要为plc添加一块串行通讯模块,比如300的话就需要cp340或者cp341(前者便宜些);

  b、plc里面需要对串行通讯进行编程,其实也就是接收报文和发送报文,调用fb2/fb3(cp340的话)。

  c、串行通讯的速度是有目共睹的,而且cp340或者cp341的数据吞吐量也是有限的,即报文长度是有限制的,因此个人认为通讯数据量大的话采用串行通讯就不合适了。

  d、报文格式的话就比较自由,但是也应当合理,我虽然没有具体实验过,但是个人认为可以参考modbus的报文结构来编程,甚至就采用modbus的规范,不过这样的话要求编程者对pc和plc侧的modbus编程都要熟悉。

  3、opc

  Opc是这些年来很流行的东西,其实我很讨厌opc的安全认证的设定。不过采用opc编程来访问plc真的是一件非常轻松惬意的事情。你需要做的就是了解opc的结构和编程,尤其是采用vb来编写opc简直是件傻瓜化的工作当然也牺牲了很多。

  前面我实验了用vb通过opc(以太网)来访问300,包括用西门子的simaticnet提供的opc接口和第三方的kepserver。

  采用opc接口编程的优点:通讯速度快,编程简单。

  4、以太网编程

  采用以太网编程访问plc,其实又可以分为两种:

  一种是socket接口,需要在plc里面编程进行收/发,大概是fc5/fc6吧,印象不深了,当然plc里面要定义一个connection,填好地址、端口号之类的信息,这个对于熟悉西门子工业通讯的人是很easy的事情。Pc侧采用socket接口编程,最简单的就是vb里面的wisock控件,当然这掩盖了很多细节。Socket编程本来就是一门艺术,讲究说学逗唱:)

  这个方法的优点应该是pc侧编程稍微简单点(相对于后一种),而且可以不局限于windows平台,因为socket接口被诸如unix支持的更好。

  第二种是采用西门子的sapi接口函数,这样plc里面不需要过多的编程了,当然pc侧的编程难度就比较高了,ms只能用c来写,所以我望而却步鸟。

  初学者可以结合plc视频教程来学习,技成plc不错。
参考技术A 你可以到工搜网 资料文库频道去看看,
哪里有很丰富的资料,
我经常去,点击下载,他们会把资料发到邮箱里

http://www.gongso.com/zl/view/resClassList.aspx?p=12&&k=PLC本回答被提问者采纳

C语言读取PLC数据

你好,请问会用C语言读取PLC里的数据吗

串口编程的学习应该从以下几个方面入手:1.就是上位机的编程,使用c语言或者vc,vb等语言进行上位机的编程实现,主要就是操作串口,理解通信波特率,奇偶校验位,停止位的概念。如果使用单片机或者c语言开发的话,就会有一定麻烦,如果使用vb或者vc的话,就可以调用微软的串口通信控件进行串口的编程,这样的例子网上很多,你可以下载下来分析一下。2.下位机的编程,就是plc的编程,主要是要理解通信协议为前提,首先把通信的协议搞定了,才可以进行通信的编程。例如:西门子的编程有自由口的通信,就必须编写下位机的梯形图程序;松下的话就简单很多了。只要理解通信协议就可以编程了。3.在编程中,好的通信工具很重要:串口调试助手。可以帮助我们更好的进行串口的调试。4.西门子和松下的资料,我比较多,要是需要的话,给你分享一下。

追问

资料可以发我吗,

参考技术A 只要你能把数据送出来,就肯定能读到。比如送到串口 参考技术B 居民阶梯电价将城乡居民每月用电量划分为三档,电价实行分档递增。考虑到我省夏季天气较为炎热、空调用电量较大的情况,将电量分档划分为夏季标准(5-10月)和非夏季标准(1-4月、11-12月)。

以上是关于VC与西门子plc通信的教程的主要内容,如果未能解决你的问题,请参考以下文章

基于S7协议实现与西门子PLC通信

西门子PLC怎么和欧姆龙PLC通信?

西门子300PLC转以太网无需编程实现与1200PLC转以太网数据通信

西门子S7-200PLC网络通信协议都有哪些?各有啥特点?

西门子 s7--200 PLC如何与电脑连接和在编程软件中如何设置?

西门子PLC通信协议都有哪些?区别?