Example #1
0
        public void ReadExample( )
        {
            #region ReadExample1


            OmronFinsNet omronFinsNet = new OmronFinsNet("192.168.1.110", 6000);
            omronFinsNet.SA1 = 10;
            omronFinsNet.DA1 = 110;

            // 此处以D寄存器作为示例
            bool   D100_7      = omronFinsNet.ReadBool("D100.7").Content;    // 读取D100.7是否通断,注意D100.0等同于D100
            short  short_D100  = omronFinsNet.ReadInt16("D100").Content;     // 读取D100组成的字
            ushort ushort_D100 = omronFinsNet.ReadUInt16("D100").Content;    // 读取D100组成的无符号的值
            int    int_D100    = omronFinsNet.ReadInt32("D100").Content;     // 读取D100-D101组成的有符号的数据
            uint   uint_D100   = omronFinsNet.ReadUInt32("D100").Content;    // 读取D100-D101组成的无符号的值
            float  float_D100  = omronFinsNet.ReadFloat("D100").Content;     // 读取D100-D101组成的单精度值
            long   long_D100   = omronFinsNet.ReadInt64("D100").Content;     // 读取D100-D103组成的大数据值
            ulong  ulong_D100  = omronFinsNet.ReadUInt64("D100").Content;    // 读取D100-D103组成的无符号大数据
            double double_D100 = omronFinsNet.ReadDouble("D100").Content;    // 读取D100-D103组成的双精度值
            string str_D100    = omronFinsNet.ReadString("D100", 5).Content; // 读取D100-D104组成的ASCII字符串数据

            // 读取数组
            short[]  short_D1000_array  = omronFinsNet.ReadInt16("D1000", 10).Content;         // 读取D1000的short值
            ushort[] ushort_D1000_array = omronFinsNet.ReadUInt16("D1000", 10).Content;        // 读取D1000的ushort值
            int[]    int_D1000_array    = omronFinsNet.ReadInt32("D1000", 10).Content;         // 读取D1000-D1001组成的int数据
            uint[]   uint_D1000_array   = omronFinsNet.ReadUInt32("D1000", 10).Content;        // 读取D1000-D1001组成的uint数据
            float[]  float_D1000_array  = omronFinsNet.ReadFloat("D1000", 10).Content;         // 读取D1000-D1001组成的float数据
            long[]   long_D1000_array   = omronFinsNet.ReadInt64("D1000", 10).Content;         // 读取D1000-D1003组成的long数据
            ulong[]  ulong_D1000_array  = omronFinsNet.ReadUInt64("D1000", 10).Content;        // 读取D1000-D1003组成的long数据
            double[] double_D1000_array = omronFinsNet.ReadDouble("D1000", 10).Content;        // 读取D1000-D1003组成的double数据

            #endregion
        }
Example #2
0
 /// <summary>
 /// 对变量进行赋值
 /// </summary>
 public void readValue()
 {
     foreach (var o in valueList)
     {
         string[] tmp = o.Value.Split(',');
         double   x   = omronFinsNet.ReadFloat(tmp[0]).Content;
         double   y   = omronFinsNet.ReadFloat(tmp[1]).Content;
         double   z   = omronFinsNet.ReadFloat(tmp[2]).Content;
         this.GetType().GetField(o.Key).SetValue(this, new Vector3D(0, 0, 1));
     }
 }
Example #3
0
 private void button_read_float_Click(object sender, EventArgs e)
 {
     // 读取float变量
     if (textBox12.Text == "1")
     {
         DemoUtils.ReadResultRender(omronFinsNet.ReadFloat(textBox3.Text), textBox3.Text, textBox4);
     }
     else
     {
         DemoUtils.ReadResultRender(omronFinsNet.ReadFloat(textBox3.Text, ushort.Parse(textBox12.Text)), textBox3.Text, textBox4);
     }
 }
Example #4
0
        private void test()
        {
            // 读取操作,这里的D100可以替换成C100,A100,W100,H100效果时一样的
            bool   D100_7      = omronFinsNet.ReadBool("D100.7").Content;         // 读取D100.7是否通断,注意D100.0等同于D100
            short  short_D100  = omronFinsNet.ReadInt16("D100").Content;          // 读取D100组成的字
            ushort ushort_D100 = omronFinsNet.ReadUInt16("D100").Content;         // 读取D100组成的无符号的值
            int    int_D100    = omronFinsNet.ReadInt32("D100").Content;          // 读取D100-D101组成的有符号的数据
            uint   uint_D100   = omronFinsNet.ReadUInt32("D100").Content;         // 读取D100-D101组成的无符号的值
            float  float_D100  = omronFinsNet.ReadFloat("D100").Content;          // 读取D100-D101组成的单精度值
            long   long_D100   = omronFinsNet.ReadInt64("D100").Content;          // 读取D100-D103组成的大数据值
            ulong  ulong_D100  = omronFinsNet.ReadUInt64("D100").Content;         // 读取D100-D103组成的无符号大数据
            double double_D100 = omronFinsNet.ReadDouble("D100").Content;         // 读取D100-D103组成的双精度值
            string str_D100    = omronFinsNet.ReadString("D100", 5).Content;      // 读取D100-D104组成的ASCII字符串数据

            // 写入操作,这里的D100可以替换成C100,A100,W100,H100效果时一样的
            omronFinsNet.Write("D100", (byte)0x33);                // 写单个字节
            omronFinsNet.Write("D100", (short)12345);              // 写双字节有符号
            omronFinsNet.Write("D100", (ushort)45678);             // 写双字节无符号
            omronFinsNet.Write("D100", (uint)3456789123);          // 写双字无符号
            omronFinsNet.Write("D100", 123.456f);                  // 写单精度
            omronFinsNet.Write("D100", 1234556434534545L);         // 写大整数有符号
            omronFinsNet.Write("D100", 523434234234343UL);         // 写大整数无符号
            omronFinsNet.Write("D100", 123.456d);                  // 写双精度
            omronFinsNet.Write("D100", "K123456789");              // 写ASCII字符串

            OperateResult <byte[]> read = omronFinsNet.Read("D100", 5);
            {
                if (read.IsSuccess)
                {
                    // 此处需要根据实际的情况来自定义来处理复杂的数据
                    short D100 = omronFinsNet.ByteTransform.TransInt16(read.Content, 0);
                    short D101 = omronFinsNet.ByteTransform.TransInt16(read.Content, 2);
                    short D102 = omronFinsNet.ByteTransform.TransInt16(read.Content, 4);
                    short D103 = omronFinsNet.ByteTransform.TransInt16(read.Content, 6);
                    short D104 = omronFinsNet.ByteTransform.TransInt16(read.Content, 7);
                }
                else
                {
                    // 发生了异常
                    //
                }
            }
        }
Example #5
0
 private void button_read_float_Click(object sender, EventArgs e)
 {
     // 读取float变量
     DemoUtils.ReadResultRender(omronFinsNet.ReadFloat(textBox3.Text), textBox3.Text, textBox4);
 }