dfins 0.4.1
D library for Omron FINS protocol
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
dfins
This is an implementation of the OMRON FINS protocol using D
Usage
The examples
sub directory contains examples explaining how use this library.
Import the module:
import dfins;
Create an udp channel:
enum TIMEOUT_MS = 2000;
IChannel chan = createUdpChannel("192.168.221.22", TIMEOUT_MS);
Create a FinsClient object and pass it:
- channel
- header
Header h = header(22);
FinsClient f = new FinsClient(chan, h);
Finally read and write:
/* Reads 10 registers starting from register 00000 in the DM Memory Area */
ubyte[] d0 = f.readArea(MemoryArea.DM, 0, 10);
/* Writes the values 42, 19, 64 into DM registers 0, 1, 2 */
ushort[] v = [42, 19, 64];
f.writeArea(MemoryArea.DM, 0, v.toBytes!ushort);
Documentation
dfins uses ddoc. One way of building and serving the documentation locally (you will need libevent for serving) is:
dub build -b ddox && dub run -b ddox
Or use your favorite DDOC compiler.
Omron PLC data example
Data type | Value | FINS rep. | Std rep. |
---|---|---|---|
float | 3.14 | 0xF5C34048 | 0x4048F5C3 |
string | 'abcdefghi' | 0x4241444346454847049 | 0x4041424344454547484900 |
uint (32bit) | 0x0a0b0c0d | 0x0c0d0a0b | 0x0a0b0c0d |
float | string | uint | |
---|---|---|---|
Value | 3.14 | 'abcdefghi' | 0x0a0b0c0d |
FINS rep. | 0xF5C34048 | 0x4241444346454847049 | 0x0c0d0a0b |
Std rep. | 0x4048F5C3 | 0x4041424344454547484900 | 0x0a0b0c0d |
- 0.4.1 released 5 years ago
- o3o/dfins
- Boost
- Copyright © 2019, Orfeo Da Viá
- Authors:
- Dependencies:
- none
- Versions:
-
0.4.1 2019-Aug-01 0.4.0 2019-Jun-26 0.3.2 2019-Jun-26 0.3.1 2019-Jun-25 0.3.0 2019-Jun-25 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
0 downloads this month
-
26 downloads total
-
- Score:
- 0.7
- Short URL:
- dfins.dub.pm