• 大小: 4.48MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-11
  • 语言: C#
  • 标签: TCP/IP  

资源简介

c#与三菱FX5U 以太网连接,已经验证OK.主要有按钮写入(软元件M,D)与读取数据(温度,压力)。

资源截图

代码片段和文件信息

/*********************************************************************************
 * .NET SOCKET CLASS
 * Update:20170921
 * Powerby hgzhu@szvbt.com   
 * http://51halcon.com/
 * *******************************************************************************/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Threading;

namespace TcpScoket
{
    public class Stateobject
    {
        public Socket workSocket = null;
        public const int BufferSize = 256;
        public byte[] buffer = new byte[BufferSize];
        public StringBuilder sb = new StringBuilder();
    }
    #region //服务器端
    public class TCPServer
    {
        //public static ManualResetEvent allDone = new ManualResetEvent(false);
        public delegate void SocketMessage(string str);
        private SocketMessage m_SocketMsgDelegate = null;
        private Socket m_listener = null;
        private Socket m_Handler = null;
        public string m_strClientInfo = null;

        public void InitServer(string strAddrint nPortSocketMessage sockMsg)
        {
            if (sockMsg!=null)
            {
                 m_SocketMsgDelegate = sockMsg;
            }
           
            //创建套接字  
            IPEndPoint ipe = new IPEndPoint(IPAddress.Parse(strAddr) nPort);
            m_listener = new Socket(AddressFamily.InterNetwork SocketType.Stream ProtocolType.Tcp);
            try
            {
                m_listener.Bind(ipe);
                m_listener.Listen(10);

                //设置无信号状态    
                //allDone.Reset();
                //开启异步监听连接    
                m_listener.BeginAccept(new AsyncCallback(AcceptCallback) m_listener);
                // 等待直到连接  
                //allDone.WaitOne();

            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
        }


        private void AcceptCallback(IAsyncResult iar)
        {
            //开启有信号继续线程    
            //allDone.Set();
  
            Socket listener = (Socket)iar.AsyncState;
            m_Handler = listener.EndAccept(iar);
            
            //创建状态对象    
            Stateobject state = new Stateobject();
            state.workSocket = m_Handler;

            m_strClientInfo = m_Handler.RemoteEndPoint.ToString();
            
            //发送信息
            if (m_SocketMsgDelegate!=null)
            {
                m_SocketMsgDelegate(“CONNECT“);
            }
            

            //开启数据回调
            m_Handler.BeginReceive(state.buffer 0 Stateobject.BufferSize 0 new AsyncCallback(ReceiveCallback) state);
        }

        private void ReceiveCallback(IAsyncResult ar)
        {
            try
            {
                String content = String.Empty;   //空的字符串
                Stateobject state = (Stateobject)ar.AsyncSt

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     75776  2018-05-02 15:30  压床机软件 (三菱PLC测试OK)\.vs\TcpClient\v14\.suo

    ..A..H.     77824  2018-03-14 13:54  压床机软件 (三菱PLC测试OK)\.vs\TcpConnectClient\v14\.suo

     文件       1147  2018-01-06 14:41  压床机软件 (三菱PLC测试OK)\268.lnk

     文件      16384  2011-04-29 11:09  压床机软件 (三菱PLC测试OK)\config.dll

     文件    1289719  2015-03-06 15:33  压床机软件 (三菱PLC测试OK)\FX5-MELSEC通讯协议.pdf

     文件       6576  2017-12-06 11:12  压床机软件 (三菱PLC测试OK)\Log.png

     文件       6656  2017-12-29 08:56  压床机软件 (三菱PLC测试OK)\PanasoniceDLL3.dll

     文件      20480  2012-08-24 16:34  压床机软件 (三菱PLC测试OK)\plccom.dll

     文件        148  2017-11-29 17:30  压床机软件 (三菱PLC测试OK)\SLMP测试数据.txt

     文件       9557  2017-12-10 15:16  压床机软件 (三菱PLC测试OK)\SocketEx.cs

     文件       1015  2017-12-10 11:16  压床机软件 (三菱PLC测试OK)\TcpClient.sln

     文件        161  2018-01-15 15:31  压床机软件 (三菱PLC测试OK)\TcpConnectClient\app.config

     文件      44032  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\AxInterop.CW3DGraphLib.dll

     文件      10752  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\AxInterop.CWDSLib.dll

     文件     137728  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\AxInterop.CWUIControlsLib.dll

     文件       6656  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\AxInterop.DdsShapesLib.dll

     文件      16384  2011-04-29 11:09  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\config.dll

     文件        177  2018-05-03 08:17  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\config.ini

     文件      70144  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Interop.CW3DGraphLib.dll

     文件      14336  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Interop.CWDSLib.dll

     文件     184320  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Interop.CWUIControlsLib.dll

     文件      27136  2018-04-27 10:27  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Interop.DdsShapesLib.dll

     文件        615  2018-01-16 13:38  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-01\2018-01-16.csv

     文件        146  2018-01-25 13:24  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-01\2018-01-25.csv

     文件        227  2018-02-05 17:15  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-02\2018-02-05.csv

     文件        827  2018-02-06 15:48  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-02\2018-02-06.csv

     文件        744  2018-03-14 17:29  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-03\2018-03-14.csv

     文件       1712  2018-03-15 17:13  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-03\2018-03-15.csv

     文件        884  2018-03-16 14:01  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-03\2018-03-16.csv

     文件         43  2018-03-17 08:06  压床机软件 (三菱PLC测试OK)\TcpConnectClient\bin\Debug\Log\2018-03\2018-03-17.csv

............此处省略103个文件信息

评论

共有 条评论