njs-modbus 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -66,7 +66,6 @@ npm install njs-modbus
66
66
  ### Modbus RTU Master
67
67
 
68
68
  ```typescript
69
- import type { ModbusSlaveModel } from 'njs-modbus';
70
69
  import { SerialPhysicalLayer, RtuApplicationLayer, ModbusMaster } from 'njs-modbus';
71
70
 
72
71
  const physicalLayer = new SerialPhysicalLayer({ path: 'COM1', baudRate: 9600, dataBits: 8, parity: 'none', stopBits: 1 });
@@ -90,21 +89,22 @@ modbusMaster
90
89
  ### Modbus RTU Slave
91
90
 
92
91
  ```typescript
92
+ import type { ModbusSlaveModel } from 'njs-modbus';
93
93
  import { SerialPhysicalLayer, RtuApplicationLayer, ModbusSlave } from 'njs-modbus';
94
94
 
95
- const MB_SERVER = {
95
+ const physicalLayer = new SerialPhysicalLayer({ path: 'COM1', baudRate: 9600, dataBits: 8, parity: 'none', stopBits: 1 });
96
+ const applicationLayer = new RtuApplicationLayer(physicalLayer);
97
+
98
+ const slave1Data = {
96
99
  discreteInputs: new Map<number, boolean>(),
97
100
  coils: new Map<number, boolean>(),
98
101
  inputRegisters: new Map<number, number>(),
99
102
  holdingRegisters: new Map<number, number>(),
100
103
  };
101
-
102
- const physicalLayer = new SerialPhysicalLayer({ path: 'COM1', baudRate: 9600, dataBits: 8, parity: 'none', stopBits: 1 });
103
- const applicationLayer = new RtuApplicationLayer(physicalLayer);
104
104
  const slave1: ModbusSlaveModel = {
105
105
  readDiscreteInputs: (address, length) => {
106
106
  return Array.from({ length }).map((_, i) => {
107
- const discreteInput = MB_SERVER.discreteInputs.get(address + i);
107
+ const discreteInput = slave1Data.discreteInputs.get(address + i);
108
108
  if (typeof discreteInput === 'undefined') {
109
109
  return false;
110
110
  }
@@ -114,7 +114,7 @@ const slave1: ModbusSlaveModel = {
114
114
 
115
115
  readCoils: (address, length) => {
116
116
  return Array.from({ length }).map((_, i) => {
117
- const coil = MB_SERVER.coils.get(address + i);
117
+ const coil = slave1Data.coils.get(address + i);
118
118
  if (typeof coil === 'undefined') {
119
119
  return false;
120
120
  }
@@ -122,12 +122,12 @@ const slave1: ModbusSlaveModel = {
122
122
  });
123
123
  },
124
124
  writeSingleCoil: (address, value) => {
125
- MB_SERVER.coils.set(address, value);
125
+ slave1Data.coils.set(address, value);
126
126
  },
127
127
 
128
128
  readInputRegisters: (address, length) => {
129
129
  return Array.from({ length }).map((_, i) => {
130
- const inputRegister = MB_SERVER.inputRegisters.get(address + i);
130
+ const inputRegister = slave1Data.inputRegisters.get(address + i);
131
131
  if (typeof inputRegister === 'undefined') {
132
132
  return 0;
133
133
  }
@@ -137,7 +137,7 @@ const slave1: ModbusSlaveModel = {
137
137
 
138
138
  readHoldingRegisters: (address, length) => {
139
139
  return Array.from({ length }).map((_, i) => {
140
- const holdingRegister = MB_SERVER.holdingRegisters.get(address + i);
140
+ const holdingRegister = slave1Data.holdingRegisters.get(address + i);
141
141
  if (typeof holdingRegister === 'undefined') {
142
142
  return 0;
143
143
  }
@@ -145,7 +145,7 @@ const slave1: ModbusSlaveModel = {
145
145
  });
146
146
  },
147
147
  writeSingleRegister: (address, value) => {
148
- MB_SERVER.holdingRegisters.set(address, value);
148
+ slave1Data.holdingRegisters.set(address, value);
149
149
  },
150
150
 
151
151
  reportServerId: () => ({ additionalData: [1, 2, 3] }),