欧姆龙plc通信FINS协议的实现。此项目是OmronFinsTCP.Net的分支。
This is a protocol for communicating with Omron PLCs.
Install - Package POmronFinsTCP. Net
//普通方式列子
FinsDebuger / Form1 . cs
//泛型方式列子
FinsDebuger/ Form2. cs
using OmronFinsTCP . Net ;
EtherNetPLC ENT = new EtherNetPLC ( ) ;
short re = ENT . Link ( "192.168.1.100" , 9600 )
if ( re == 0 )
Console . WriteLine ( "ok" ) ;
else
Console . WriteLine ( "err" ) ;
/*所有方法返回0为成功*/
ENT . ReadWord ( ) ; //读单个Int16
ENT . ReadWords ( ) ; //读多个Int16
ENT . WriteWord ( ) ; //写单个Int16
ENT . WriteWords ( ) ; //写多个Int16
ENT . GetBitState ( ) ; //读单个位
ENT . SetBitState ( ) ; //写单个位
ENT . ReadReal ( ) ; //读单个浮点
ENT . WriteReal ( ) ; //写单个浮点
ENT . ReadInt32 ( ) ; //读单个Int32
ENT . WriteInt32 ( ) ; //写单个Int32
泛型方式:读/写 [Use T:read/write]
/*T支持的类型为:int16,int32,bool,float*/
ENT . GetData < T > ( ) ; //读一个数据
ENT . SetData < T > ( ) ; //写一个数据
ENT . GetDatas < T > ( ) ; //读多个数据
ENT . SetDatas < T > ( ) ; //写多个数据(T支持的类型为:int16)
*表示部分代码可能与前版本不兼容 [*For some code is incompatible with previous versions]
1.SetData错误处理改为抛出异常 [The 'SetData()' error is throwing an exception]
1.没有连接时错误优化 [No connection error handling]
1.支持连接到多个PLC [Supports connection to multiple PLCS]
1.泛型支持多个读写 [Generics support multiple reads and writes]
2.修复SetData无效问题 [Fix SetData<T>()]
1.优化GetData错误处理和效率问题 [Optimize GetData]
1.支持泛型读写单个 [Add GetData<T>(),SetData<T>()]
1.修复写单个浮点BUG [Amend WriteReal()]
2.支持读写Int32 [Add ReadInt32(),WriteInt32()]
3.读写重载对字符串解析的支持,如'D100;W100.1' [Read/write overloading support for string parsing]
1.支持写单个浮点 [Add WriteReal()]
1.拷贝项目,并升级到新的Net支持 [Copy project,New Net support]