ethernet-ip-master
所属分类:TCP/IP协议栈
开发工具:WINDOWS
文件大小:102KB
下载次数:20
上传日期:2017-09-14 16:41:12
上 传 者:
gavin@panda
说明: 主站和从站的代码,也就是扫描仪和适配器的相关代码
(master and slave codes)
文件列表:
LICENSE (11325, 2017-06-15)
enip-client (0, 2017-06-15)
enip-client\pom.xml (1077, 2017-06-15)
enip-client\src (0, 2017-06-15)
enip-client\src\main (0, 2017-06-15)
enip-client\src\main\java (0, 2017-06-15)
enip-client\src\main\java\com (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\ChannelManager.java (4250, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\EtherNetIpClient.java (11431, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\EtherNetIpClientConfig.java (4526, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\EtherNetIpShared.java (1901, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\CipClient.java (10306, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\CipConnectionPool.java (15349, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\CipDataType.java (2961, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\CipResponseException.java (1879, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\CipStatusCodes.java (8558, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath\DataSegment.java (1676, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath\EPath.java (2442, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath\EPathSegment.java (82, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath\LogicalSegment.java (6140, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\epath\PortSegment.java (1389, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services (0, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\CipService.java (481, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\CipServiceInvoker.java (1352, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\ForwardCloseService.java (1979, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\ForwardOpenService.java (2040, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\GetAttributeListService.java (2583, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\GetAttributeSingleService.java (1643, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\GetAttributesAllService.java (1313, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\LargeForwardOpenService.java (2090, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\MultipleServicePacketService.java (5857, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\SetAttributeListService.java (2877, 2017-06-15)
enip-client\src\main\java\com\digitalpetri\enip\cip\services\SetAttributesAllService.java (1625, 2017-06-15)
... ...
# EtherNet/IP Client
Asynchronous, non-blocking, EtherNet/IP client implementation for Java
# Maven
```xml
com.digitalpetri.enip
enip-client
1.1.2
```
# Quick Start
#### EtherNet/IP Example
```java
EtherNetIpClientConfig config = EtherNetIpClientConfig.builder("10.20.4.57")
.setSerialNumber(0x00)
.setVendorId(0x00)
.setTimeout(Duration.ofSeconds(2))
.build();
EtherNetIpClient client = new EtherNetIpClient(config);
client.listIdentity().whenComplete((li, ex) -> {
if (li != null) {
li.getIdentity().ifPresent(id -> {
System.out.println("productName=" + id.getProductName());
System.out.println("revisionMajor=" + id.getRevisionMajor());
System.out.println("revisionMinor=" + id.getRevisionMinor());
});
} else {
ex.printStackTrace();
}
});
```
#### CIP Service Example
```java
EtherNetIpClientConfig config = EtherNetIpClientConfig.builder("10.20.4.57")
.setSerialNumber(0x00)
.setVendorId(0x00)
.setTimeout(Duration.ofSeconds(2))
.build();
// backplane, slot 0
PaddedEPath connectionPath = new PaddedEPath(
new PortSegment(1, new byte[]{(byte) 0}));
CipClient client = new CipClient(config, connectionPath);
GetAttributeListService service = new GetAttributeListService(
new PaddedEPath(new ClassId(0x01), new InstanceId(0x01)),
new int[]{4},
new int[]{2}
);
client.invokeUnconnected(service).whenComplete((as, ex) -> {
if (as != null) {
try {
ByteBuf data = as[0].getData();
int major = data.readUnsignedByte();
int minor = data.readUnsignedByte();
System.out.println(String.format("firmware v%s.%s", major, minor));
} catch (Throwable t) {
t.printStackTrace();
} finally {
Arrays.stream(as).forEach(a -> ReferenceCountUtil.release(a.getData()));
}
} else {
ex.printStackTrace();
}
});
```
#### Logix Example
[See the logix-services README!](logix-services/README.md)
License
--------
Apache License, Version 2.0
近期下载者:
相关文件:
收藏者: