请教斑竹 :VB 或者VC 与PLC的TCPIP通信问题

请教斑竹 :VB 或者VC 与PLC的TCPIP通信问题,第1张

1还是OPC方式:用Kepware公司的KEPServerEXOPC,或者TOP公司的TOPOPC。西门子以太网驱动的授权大概是500美金左右。可以支持最多16个以太网卡,每网卡最多支持64个CPX43-1。每计算机最多可以支持126个CPX43-1。VB做OPCClient就可以了。各个公司成品的解决方案倒是没有,但是相关的论文倒是可以搜出来一大堆。VB做OPCClient一点点都不难的。2DLL方式:(请跟西门子资深工程师核实下)购买西门子公司的ProDaveV6版本,“据说”ProDave从V6版本开始,除了支持MPI外,还支持IE(工业以太网)方式。这样你可以基于ProDave开发上位的通讯程序,直接访问DLL即可,坏处是难度比用OPC的方式大,好处是买ProDave是一次性投资,通讯程序做好后,你可不用每台电脑都装ProDave了。VB要通过以太网访问PLC中的数据可能就这么几种方式。另外VB开发监控系统,跟你在Step7如何调用没有任何关系。你继续用你的Step7编写你的程序。上位的监控仅仅需要访问下位的地址就可以了。比如你要显示一个模拟量的值,你可以用FC105,也可以自己写语句转换,上位软件管你用的是什么功能块,只需要明确的告诉他,要访问的数据是什么格式的,整型还是浮点型?地址是多少。就OK了。

建议你最好先搞清楚你要问的是什么问题?该如何提问?之后再提问,不然别人没法正确回答你问题,即使别人答对了也是别人凭借经验靠猜你的想法回答对的,而对一些懒得猜你想法的人,就根本不会回答你,或者是随便回两句灌点水,所以即使你的帖子碰到这种灌水的哥们,你也不要怪别人,因为这不是别人的原因,而是你自己造成的因素。

“提问”也要有技巧、也要思考的。有时候提问也是自己解决自己问题的一个有效途径,特别是当你具备较强自我解决问题能力的时候,这时提问水平更是尤其重要,因为会问问题就会把事情拆开来看以及拆开来分析,当然解决起来也会容易很多。 就比如你的这个帖子,只讲述了你的程序用了网络和串口通讯的这两个功能,然后运行不起来(先不说没有阐述出什么具体情况),就连个提问的问句都没有,你想让别人怎么回答你?该和你说些什么?是该告诉你架构?还是该和你说具体代码?难道你认为你随便说一下你的运行情况别人就能猜测出你写的具体问题可能在哪吗?你把写程序想得太儿戏了吧。就Windows网络通讯而言,有用现成控件、现成类的,也有用API的,堵塞、异步通讯、有单线程,也有多线程的,在架构上还有用IOCP或过滤驱动的,这么多东西的组合,谁能猜准你用的是什么架构和什么技术去实现什么样的过程,更别说具体过程里还涉及内存、协议、测试环境、抗压能力、稳定性、安全性、兼容性等考虑。可以说即使是专业的网络程序,也会有可能在某种测试环境下测试失败。

写程序是需要有一定的逻辑思维能力和表达能力的,如果连个基本的问题都不能阐述清楚,今后还怎么写程序?写出来的程序怎么能用?(起码就我见过的高手们没有几个连个问题都描述不清楚的)所以建议你先搞清楚自己想问什么问题,然后把它表达清楚,这样相信你的问题也可以很快得到解答。

楼上已经把如何建立socket说明了,我只讲一下数据封装和传输过程:

1、UDP 137服务已经启动,并且会回应接受的数据包;

2、发送端的应用准备发送的数据;

3、调用socket,指明目标地址和端口(137),源地址和端口可以指定,也可以忽略;

4、socket封装UDP包,增加UDP包头,进而封装IP包,增加IP包头;

5、socket调用底层驱动(链路层),将IP包封装成物理链路上传输的帧,以以太网为例,会增加帧头,包括源MAC和目标MAC,当然中间会用到ARP,解析出IP和MAC的对应关系,由协议栈完成,应用可以不必理会;

6、底层的数据帧通过物理链路传输到对方;

7、对方接收后,反过来从底层向上层,逐渐剥去帧头、IP头、UDP头,得到实际的数据,并根据UDP头部的目标端口,传送给上层的应用,137端口服务;

8、137端口服务处理后,反后头来,发送回应数据,发送过程同上。

如果你明白通信就是双方约定协议的过程就能明白了,C是用来编写通信协议的,把你的需要通信的内容通过c编写的转换驱动,编译成通信协议格式,发给对方,

说白了,C就是个工具,不一定C,basic也能写成XP,关键看你怎么用,Unix 都是C编写的,

单片机最好的驱动就是C了,移植性强,可读性好,定义也很方便,当年毕设都是用C编写51单片机的一个通信板驱动,

个人理解,通信就是握手。哈哈。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/12163716.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存