我要对360个温度仪进行控制,通过向多个“串口转TCP/IP转换器” 发送数据可以实现。以下为系统大概结构:
PC --> COM转TCP/IP转换器 --> 以太网---> PLC --->温度仪COM转TCP/IP转换器:可以把一个COM 口虚拟成上百个COM口,每个COM口有一个IP 地址,我用的是MOXA公司的,可以用socket来实现.==============================================================
我想实现对这360个点的通信:1、我想采用Socket 方式去读写数据,可是有个关键问题??PC --> COM转TCP/IP转换器 --> 以太网---> PLC 
我只能在PC 端上写程序,SOCKET分为服务器端和客户端,用SOCKET 得在两端都进行写程序?SOCKET 控件是成对的。2、不知道用线程可不可以实现,如果可以的话,那么是不是要建立360个线程呢?3、用打开COM口的方式可以实现访问,得用轮循方式,由于要对360个点进行控制,会很麻烦,况且最多只能对256个COM 口,而且同时不能打开多个COM 口,所以这个方案行不通。请大家帮帮忙:怎么实现对这360个点的通信?

解决方案 »

  1.   


    串口转以太网解决方案— 工业自动化的理想方案:
    http://www.moxa.com.cn/solution/serial_to_ethernet.htm
      

  2.   

    请问怎么用 Socket 来实现对这360个点的通信.........
      

  3.   

    没有必要啊,可以在一个线程内轮询所有的模块嘛。
    不过在有PC的情况下,完全没有必要使用PLC啊,可以直接访问模块。
    另外:Moxa模块好像很贵的说,要一千多,其他的模块都可以买好几个了
      

  4.   

    COM转TCP/IP转换器 --> 没有必要,直接写soket就行了
    感觉不应该用plc,太贵了,更便宜点的设备就可以解决,没必要,比如用rtu就可以吧
      

  5.   

    ---》我必需用“COM转TCP/IP转换器”(MOXA 公司的,贵不贵无关要紧)因为距离远且在多栋大楼内,还用它之可以使用基于TCP/IP 方式来传送数据;---》PLC :它的功能是控制 温度仪 ,把数据读出和写入,没有它是不可能控制 温度仪 的;
    我现在的问题是:  怎么用 Socket 来实现对这360个点的通信.........?????????
      

  6.   


    使用了 “COM转TCP/IP转换器”之后,可以把一个COM 口虚拟成上百个COM口,每个COM口有一个IP 地址可以不用“打开COM 口的方式来读写数据”,我可以用向各个IP 地址直接传送数据就可以的啦,至于怎么传送到下位机,这都是 “COM转TCP/IP转换器” 来自动完成的事了
      

  7.   

    http://www.56kc.net/web/commwatch.aspx
      

  8.   

    楼主, 我觉得你的连接应该是这样才对:PC --> 以太网---> TCP/IP转COM转换器 --> PLC --->温度仪
      

  9.   

    同意楼上。所以在计算机上编程是以太网编程,而不是串行口编程。此时可以使用一个socket控件对360个点进行轮循监测,也可以建立若干个线程,每个线程使用1个socket控件对若干个点进行轮循监测。如果希望1对1的话就要建立360个线程。
      

  10.   

    我写错了:正确的应该是这样:PC --> 以太网---> TCP/IP转COM转换器 --> PLC --->温度仪
      

  11.   

    我写错了:正确的方案应该是这样:PC --> 以太网---> TCP/IP转COM转换器 --> PLC --->温度仪按照你说的,那么在我的PC 端应该是ClientSocket 端,还是ServerSocket?因为我只能在PC机上写程序。--------------------------------------------------------
    回复人: DDGG(叮叮当当) ( ) 信誉:100  同意楼上。所以在计算机上编程是以太网编程,而不是串行口编程。此时可以使用一个socket控件对360个点进行轮循监测,也可以建立若干个线程,每个线程使用1个socket控件对若干个点进行轮循监测。如果希望1对1的话就要建立360个线程。
      

  12.   

    TCP/IP转COM转换器,应该有介绍它是服务端还是客户端
      

  13.   

    要看 TCP/IP转COM转换器 的资料,如果它使用的是TCP协议,那么一般它是作为服务端的,这样的话你可以在PC上以客户端方式编程(使用TClientSocket)。如果它使用的是UDP协议,那么就没有客户端和服务器的区别,使用UDP控件即可。