资源简介

用C#写的松下MEWTOCOL通讯协议,已经测试过大部分的读取方法,小部分的写入方法没有测试。里面有MEWTCOL协议文档,协议类文件,和一个简单的测试FORM,编写软件为VS2015。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace Pansonic
{
    /// 
    /// 生产Mewtocol协议的各种命令的命文类
    /// 

    public class MewtocolClass
    {

        SoftBasic SoftBasic = new SoftBasic();
        public short station = 1;         // 站号默认为1
        /// 
        /// PLC站号
        /// 

        public short Station
        {
            get { return station; }
            set { station = value; }
        }

        /// 
        /// 读取单触点状态协议文
        /// 

        /// 触点地址
        /// 
        public String RCS(string d)         //读单触点
        {
            string sendData;
            string s;
            //命令: % 站号 # 读写命令          

            string f = d.Substring(1 d.Length - 1);
            f = f.ToString().PadLeft(4 ‘0‘);
            sendData = “%“ + station.ToString().PadLeft(2 ‘0‘) + “#“ + “RCS“ + d[0] + f;
            // s = sendData + “**\r“;                             //不带校验码
            s = sendData + BCC(sendData) + “\r\n“;                 //带校验码

            return s;
        }

        /// 
        /// 写入单触点状态协议文
        /// 

        ///  触点地址
        ///   开关量true/false
        /// 
        public String WCS(string d bool b)         //写单触点
        {
            string sendData;
            string s;
            string g;
            //命令:% 站号 # 读写命令          
            string f = d.Substring(1 d.Length - 1);
            f = f.ToString().PadLeft(4 ‘0‘);
            if (b) g = “1“;
            else g = “0“;
            sendData = “%“ + station.ToString().PadLeft(2 ‘0‘) + “#“ + “WCS“ + d[0] + f + g;
            // s = sendData + “**\r“;                             //不带校验码
            s = sendData + BCC(sendData) + “\r\n“;                 //带校验码
            return s;
        }
        /// 
        /// 读取多触点状态协议文
        /// 

        /// 起始触点地址
        /// 读取触点个数 n=1-8
        /// 
        public String RCP(string d int n)
        {
            string sendData;
            string s;
            //命令 % 站号 # 读写命令          

            string f = d.Substring(1 d.Length - 1);    //取出触点编号数据
            string f1 = f.PadLeft(4 ‘0‘);              //不足四位左边补0    
            string fBCD = f1.Substring(0 3);           //取出前BCD格式的3位          
            string fHEX = f1.Substring(3 1);           //取出HEX格式的最后一位
            fHEX = fHEX.PadLeft(2 ‘0‘);                //补0 改为hex字符串形式
            //int i = int.Parse(s);
            //string show = i.ToString();

            byte[] bs = new byte[1];
            bs = SoftBasic.HexStringToBytes(fHEX);       //把最后一位Hex转为byte[]
            byte address =

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      248035  2012-06-22 10:02  MEWTOCOL.pdf
     目录           0  2020-04-23 17:54  pansonicPLC Test\
     目录           0  2020-04-23 11:20  pansonicPLC Test\.vs\
     目录           0  2020-04-23 11:20  pansonicPLC Test\.vs\pansonicPLC Test\
     目录           0  2020-04-23 11:20  pansonicPLC Test\.vs\pansonicPLC Test\v14\
     文件      119808  2020-05-21 16:33  pansonicPLC Test\.vs\pansonicPLC Test\v14\.suo
     目录           0  2020-04-24 12:05  pansonicPLC Test\pansonic\
     文件       15843  2020-04-24 10:56  pansonicPLC Test\pansonic\MewtocolClass.cs
     文件       12363  2020-04-24 12:05  pansonicPLC Test\pansonic\PanasonicPLC.cs
     目录           0  2020-04-23 17:54  pansonicPLC Test\pansonic\Properties\
     文件        1324  2020-04-23 17:54  pansonicPLC Test\pansonic\Properties\AssemblyInfo.cs
     文件       44976  2020-04-24 10:57  pansonicPLC Test\pansonic\SoftBasic.cs
     目录           0  2020-04-23 17:54  pansonicPLC Test\pansonic\bin\
     目录           0  2020-04-24 10:35  pansonicPLC Test\pansonic\bin\Debug\
     文件       30391  2020-04-24 10:35  pansonicPLC Test\pansonic\bin\Debug\pansonic.xml
     文件       18944  2020-04-24 10:35  pansonicPLC Test\pansonic\bin\Debug\pansonic.dll
     文件       50688  2020-04-24 10:35  pansonicPLC Test\pansonic\bin\Debug\pansonic.pdb
     目录           0  2020-07-26 20:06  pansonicPLC Test\pansonic\bin\Release\
     目录           0  2020-04-23 17:54  pansonicPLC Test\pansonic\obj\
     目录           0  2020-04-24 10:35  pansonicPLC Test\pansonic\obj\Debug\
     文件        6684  2020-04-24 10:35  pansonicPLC Test\pansonic\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
     目录           0  2020-07-26 20:06  pansonicPLC Test\pansonic\obj\Debug\TempPE\
     文件           0  2020-04-23 17:54  pansonicPLC Test\pansonic\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
     文件           0  2020-04-23 17:54  pansonicPLC Test\pansonic\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
     文件           0  2020-04-23 17:54  pansonicPLC Test\pansonic\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
     文件         305  2020-04-24 10:35  pansonicPLC Test\pansonic\obj\Debug\pansonic.csproj.FileListAbsolute.txt
     文件       18944  2020-04-24 10:35  pansonicPLC Test\pansonic\obj\Debug\pansonic.dll
     文件       50688  2020-04-24 10:35  pansonicPLC Test\pansonic\obj\Debug\pansonic.pdb
     文件        2609  2020-04-24 10:35  pansonicPLC Test\pansonic\pansonic.csproj
     目录           0  2020-04-24 12:05  pansonicPLC Test\pansonicPLC Test\
     文件         189  2020-04-23 11:20  pansonicPLC Test\pansonicPLC Test\App.config
............此处省略39个文件信息

评论

共有 条评论