少有人走的路

勇哥的工业自动化技术网站

[netMarketing类库] FinsSocket类: 欧姆龙PLC基于Tcp通讯的Fins通讯类,支持CP系列, NJ系列, NX系列的欧龙PLC

命名空间:netMarketing.automation.plc.Omron.FinsLibrary

功能:欧姆龙PLC基于Tcp通讯的Fins通讯类,支持全系列的欧龙PLC


功能详细说明:

FinsSocket支持的欧姆龙PLC包括CP系列, Nj系列, Nx系列的欧姆PLC。可以在监视模式或者运行模下读写PLC的内存。

这个类使用简单,已经经过多个项目检验过,勇哥推荐使用它!


常用函数列表

/// 构造函数
public FinsSocket(string strServerIP = "192.168.250.1", int ServPort = 9600)
/// 写内存
public bool Write(_eMemory eMemory, ushort offSet, byte bitOffset, bool data)
public bool Write(_eMemory eMemory, ushort offSet, byte bitOffset, bool[] data)
public bool Write(_eMemory eMemory, ushort offset, short data)
public bool Write(_eMemory eMemory, ushort offset, short[] data)
public bool Write(_eMemory eMemory, ushort offset, int data)
public bool Write(_eMemory eMemory, ushort offset, int[] data)
public bool Write(_eMemory eMemory, ushort offset, long data)
public bool Write(_eMemory eMemory, ushort offset, long[] data)
public bool Write(_eMemory eMemory, ushort offset, float data)
public bool Write(_eMemory eMemory, ushort offset, float[] data)
public bool Write(_eMemory eMemory, ushort offset, double data)

/// 读内存
public bool Read(_eMemory eMemory, ushort OffSet, byte bit, ref bool reData)
public bool Read(_eMemory eMemory, ushort OffSet, byte bit, ref bool[] reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref short reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref short[] reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref int reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref int[] reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref long reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref long[] reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref float reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref float[] reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref double reData)
public bool Read(_eMemory eMemory, ushort OffSet, ref double[] reData)
public bool Write(_eMemory eMemory, ushort offset, double[] data)
public bool ChangePLCMode(_ePLCMode eMode)

public bool WriteMultiple(_eMemory startMemory, ushort offset, short[] iMultiple)
public bool ReadMultiple(_eMemory startMemory, ushort offset, ref short[] iMultiple)



示例程序:

using netMarketing.automation.plc.Omron.FinsLibrary;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FinsLibraryTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            FinsSocket cp1h;
            cp1h = new FinsSocket();
            cp1h.IP = "192.168.250.1";//PLC IP地址
            cp1h.Port = 9600;       //PLC IP端口号

            float[] plcdataF = new float[1] { 0 };
            cp1h.Write(_eMemory.DM, 2000, 111.5f);
            Thread.Sleep(200);
            cp1h.Read(_eMemory.DM, 2000, ref plcdataF);
            richTextBox1.AppendText(plcdataF[0].ToString());
           

        }
    }
}

image.png

观察plc内存,可以看到结果是正确的。

image.png


--------------------- 

作者:hackpig
来源:www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!

返回类库功能说明目录


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.3

Copyright www.skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864