Sugar Valley NeoPool Control System Instruction Manual
- June 21, 2024
- Sugar Valley
Table of Contents
Sugar Valley NeoPool Control System
Specifications
- Communication Ports: Two RS485 ports
- Protocol : MODBUS
- Baud Rate: 19200 bauds
- Parity: None
- Stop Bits : 1
- Default MODBUS Address : 1
Product Usage Instructions
Introduction
The NeoPool Control System comes with two RS485 communication ports supporting the MODBUS protocol. These ports allow remote controllers to adjust device parameters. The DISPLAY port connects to the Screen Controller, acting as a MODBUS master, while the RF/WIFI port is for external communications. A semaphore system manages register change requests between ports, but remote masters can always read any register simultaneously. The default communication address is 1 but can be changed through a reserved procedure.
Register Description
The register set is split into seven pages: MEASURE, GLOBAL, FACTORY, INSTALLER, USER, and MISC. Any register modifications should be saved to EEPROM for persistence. Altering registers not described in the manual may cause system malfunctions or failures.
Measures Page (MEASURE)
Register MBF_ION_CURRENT (0x0100)
Description: Indicates the current measured in the ionization system. The value is corrected using calibration data.
Register MBF_HIDRO_CURRENT (0x0101)
Description: Indicates the intensity level measured in the hydrolysis system. Calibration values are used for accurate measurements.
FAQ
- Q : How to change the MODBUS address?
- A: To change the MODBUS address, follow the reserved procedure outlined in the manual.
- Q : What happens if I modify registers not described in the document?
- A: Modifying registers not documented may lead to system malfunctions or unrecoverable failures, necessitating technical assistance.
Introduction
The NeoPool Control System is equipped with two RS485 communication ports with a MODBUS protocol that allows a remote controller to adjust the different working parameters of the device. The first port, labelled in the board with the legend “DISPLAY” is usually connected to the Screen Controller, which is itself a MODBUS master. The other port, labelled as “RF/WIFI” is available for external communications.A semaphore system has been implemented between both ports in order to manage register change requests happening simultaneously in both ports. However, the remote masters can always read any register concurrently. The slave has the MODBUS address 1 as default communication address, but it can be changed with a reserved procedure. The communication parameters for the RS485 asynchronous serial port are the following:
- Baud rate: 19200 bauds
- Parity: none.
- Stop bits: 1
Register description
The register set is divided in 7 different pages, which are:
Starting address | Name | Name |
---|---|---|
0x0000 | MODBUS | Manages general configuration of the box. This |
page is reserved for internal purposes
0x0100| MEASURE| Contains the different measurement information
including hydrolysis current, pH level, redox level, etc.
0x0200| GLOBAL| Contains global information, such as the amount of time that
each power unit has been working.
0x0300| FACTORY| Contains factory data such as calibration parameters for the
different power units of the
box.
0x0400| INSTALLER| Contains a set of configuration registers related to the box installation, such as the relays used for
each function, the amount of time that each pump must operate, etc.
0x0500| USER| Contains user configuration registers, such as the production level for the ionization and the hydrolysis, or the set points for the pH, redox, or
chlorine regulation loops.
0x0600| MISC| Contains the configuration parameters for the screen controllers (language, colours, sound, etc).
Any modifications done over the registers should be made persistent by requesting an EEPROM storage. See the MBF_SAVE_TO_EEPROM register description for more information about this subject.
The alteration of registers other than the ones described in this document could lead to a bad operation of the system, and in some cases, to an unrecoverable failure requiring technical assistance.
Measures page (MEASURE)
Description
- This register indicates the current measured in the ionization system.
- This register gets the microcontroller ADC measurement, and corrected using the calibration data:
- MBF_PAR_ION_NOM: Maximum ionization current
- MBF_PAR_ION_CAL0: ADC Measured value for rest value
- MBF_PAR_ION_CAL1: ADC Measured value for máximum ionization value.
- MBF_ION_CURRENT (ionAdcValue – MBF_PAR_ION_CAL0)
Description
This record indicates the intensity level currently measured in the
hydrolysissystem.
- MBF_PAR_HIDRO_NOM: MAximum current for hidrolisis
- MBF_PAR_HIDRO_CAL0: ADC Measured value for rest value
- MBF_PAR_HIDRO_CAL1: ADC Measured value for maximum current of hydrolysis.
MBF_HIDRO_CURRENT (hidroAdcValue – MBF_PAR_HIDRO_CAL0)
Description
This record indicates the pH level measured in hundredths. The value 700
indicates a pH of 7.00 Reading this register is valid only if the pH module is
enabled. To check the status of enable module log MBF_PH_STATUS see pH.
Description
This record indicates the level measured in hundredths of redox ppm. A value
of 100 indicates a level of 1.00 ppm redox Reading this register is valid only
if the module is enabled Redox. To check the status of the module enabling
redox see MBF_RX_STATUS record.
Description
This record indicates the level measured in hundredths of chlorine ppm. A
value of 100 indicates a level of 1.00 ppm free chlorine. Reading this
register is valid only if the module is enabled Clhlorine. To check the status
of the module enabling Chlorine see the MBF_RX_STATUS record.
Description
This register contains the status of the module control pH. Register is a bit
field with the following topology:
Bits | Mask | Description |
---|---|---|
0-3 | 0x000F | pH Alarm. The available options are described on the following |
tables depending on the regulation model.
10| 0x0400| Status of control of the pH-chip by flow detector (if it’s
activated through MBF_PAR_HIDRO_ION_CAUDAL)
11| 0x0800| Relay of low pH pump activated (pump activated)
12| 0x1000| Relay of high pH pump activated (pump activated)
13| 0x2000| Control module of pH active and controlling pumps
14| 0x4000| Measure module of pH active and measuring.
If this bit is 1, pH value will be shown on the display.
15| 0x8000| Measure module of pH detected
Alarm values available for pH regulation with acid and base:
Alarm values | Description |
---|---|
MBF_PAR_RELAY_PH_MAX_TIME and it’s stopped. | |
4 | pH value higher than the set point in PH1 |
5 | pH value is lower than the set point in PH2 |
Alarm values available for pH-regulation with only acid:
Alarm values | Description |
---|---|
0 | No alarm |
1 | pH too high; pH value is higher than 0,8 points to the set point selected |
in PH1
2| pH too low: pH value is lower than 0,8 points to the set point selected in
PH2
3| pH pump (acid or base) exceeded the work time fixed by the parameter
MBF_PAR_RELAY_PH_MAX_TIME and it’s stopped.
4| pH is higher than 0,1 points to the set point in pH1
5| pH is lower than 0,3 points to the set point in pH1
Alarm values available for pH-regulation with only base:
Alarm values | Description |
---|---|
0 | No alarm |
1 | pH too high; pH value is higher than 0,8 points to the set point |
selected in PH2
2| pH too low: pH value is lower than 0,8 points to the set point
selected in PH2
3| pH pump (acid or base) exceeded the work time fixed by the parameter
MBF_PAR_RELAY_PH_MAX_TIME and it’s stopped.
4| pH is higher than 0,1 points to the set point in pH2
5| pH is lower than 0,3 points to the set point in pH2
Description
This register contains the status of the Rx-module. The register is a bit-
field with the following topology:
Bits | Mask | Description |
---|---|---|
12 | 0x1000 | Relay of the Rx pump on.(pump activated) |
13 | 0x2000 | Redox-module active and controlling the pump. |
14 | 0x4000 | Measuring Redox-module active. |
If this bit is on 1, the Redox bar should be shown on the display.
15| 0x8000| Measuring Redox-module detected by the system.
Description
This register contains the status of the chlorine module. The register is a
bit-field with the following topology:
Bits | Mask | Description |
---|---|---|
3 | 0x0008 | Flow sensor of the chlorine probe. This sensor is incorporated to |
the probe and it’s used to detect if there’s water flowing through the probe.
In case the sensor is on 0, the measure won’t be valid.
12| 0x1000| Relay of the Chlorine-pump on.(pump activated)
13| 0x2000| Chlorine-module active and controlling the pump.
14| 0x4000| Measuring Chlorine-module active. If this bit is on 1, the
The chlorine bar should be shown on the display.
15| 0x8000| Measuring Chlorine-module detected by the system.
Description
This register contains the status of the Conductivity module. The register is
a bit-field with the following topology:
Bits | Mask | Description |
---|---|---|
12 | 0x1000 | Relay of the Conductivity-pump on.(pump activated) |
13 | 0x2000 | Conductivity-module active and controlling the pump. |
14 | 0x4000 | Measuring Conductivity-module active. If this bit is on 1, the |
COnductivity bar should be shown on the display.
15| 0x8000| Measuring Conductivity-module detected by the system.
Description
This register contains the status of the Ionization module. The register is a
bit-field with the following topology:
Bits | Mask | Description |
---|---|---|
0 | 0x0001 | On Target – the system reached the set point. |
1 | 0x0002 | Low – The ionization can’t reach the set point. |
2 | 0x0004 | Elec – Reserved |
3 | 0x0008 | Pr off – Programmed time exceeded |
12 | 0x1000 | Ion Pol off – Dead time |
13 | 0x2000 | Ion Pol 1 – Ionization working (Pol 1) |
14 | 0x4000 | Ion Pol 2 – Ionization working (Pol 2) |
Description
This register contains the status of the hydrolysis module. The register is a
bit-field with the following topology:
Bit | Mask | Description |
---|---|---|
0 | 0x0001 | On Target – the system reached the set point. |
1 | 0x0002 | Low – The hydrolysis can’t reach the set point. |
2 | 0x0004 | Elec – Reserved |
Bits | Mask | Description |
--- | --- | --- |
3 | 0x0008 | Flow – Flow indicator in the hydrolysis chamber (FL1). |
4 | 0x0010 | Cover – Cover entry activated. |
5 | 0x0020 | Active – Hydrolysis-module active (hidroEnable) |
6 | 0x0040 | Control – Hydrolysis module working with regulation |
(hidroControlEnable)
7| 0x0080| Redox enable – Hydrolysis activated by the Redox-
module (rx_hen)
8| 0x0100| Hidro shock enabled – Chlorine boost activated.
9| 0x0200| FL2 – Flow detector of the chlorine probe, if it’s present.
10| 0x0400| Cl enable – Activation of the hydrolysis by the Chlorine-
module (cl_hen)
11| 0x0800| No use
12| 0x1000| Ion Pol off – Dead time (Ionization)
13| 0x2000| Ion Pol 1 – Ionization working (Pol 1)
14| 0x4000| Ion Pol 2 – Ionization working (Pol 2)
15| 0x8000| No use
Description
This register contains the status of each configurable relays:
Bit | Mask | Description |
---|---|---|
0 | 0x0001 | Status relay 1 (1 on; 0 off) ( normally assigned to ph) |
1 | 0x0002 | Status relay 2 (1 on; 0 off) (normally assigned to filtration) |
2 | 0x0004 | Status relay 3 (1 on; 0 off) (normally assigned to lightning) |
3 | 0x0008 | Status relay 4 |
4 | 0x0010 | Status relay 5 |
5 | 0x0020 | Status relay 6 |
6 | 0x0040 | Status relay 7 |
Global page (GLOBAL)
Description
-
A write operation to this register with value 1 starts an EEPROM storage operation immediately. During the EEPROM storage procedure, the system may be unresponsive to MODBUS requests. The operation will last always less than 1 second.
EEPROM write operations occur periodically every 10 minutes. However, after doing a modification of a MODBUS configuration register it is recommended to force a write operation, since this is the only secure way to keep the information if the box is -
switched off before the periodic EEPROM write operation automatically occurs.
-
However, since the EEPROM write operation is limited by the number of cycles that the EEPROM memory itself can be written, it is recommended to write all the needed modifications into the registers and then, when all the registers have been properly written, call to the EEPROM write operation.
The number of EEPROM write operations is guaranteed to be 100000 cycles. Once this number of cycles is exceeded we cannot guarantee a safe storage of the information.
Factory page (FACTORY)
Description
This register contains the ionization maximum production level.
This register MUST NOT be modified. An uncontrolled modification of this register could lead to a bad operation of the system, and in some cases, to an unrecoverable failure requiring technical assistance.
Description
This register contains the hydrolysis maximum production level. If the
hydrolysis is set to work in per cent mode, this value will be 100. If the
hydrolysis module is set to work in g/h production, this module will contain
the maximum amount of production in g/h units.
This register MUST NOT be modified. An uncontrolled modification of this register could lead to a bad operation of the system, and in some cases, to an unrecoverable failure requiring technical assistance.
User page (USER)
Description
This register contains the ionization target production level. The value
adjusted in this register must not exceed the value set in the MBF_PAR_ION_NOM
factory register.
To make the modification of this register persistent, execute the EEPROM storage procedure described in the global register MBF_SAVE_TO_EEPROM.
Description
This register contains the amount of time in minutes that the ionization must
be activated each time that the filtration starts.
To make the modification of this register persistent, execute the EEPROM storage procedure described in the global register MBF_SAVE_TO_EEPROM
Description
This register contains the hydrolysis target production level. When the
hydrolysis production is to be set in per cent values, this value will contain
the per cent of production. If the hydrolysis module is set to work in g/h
production, this module will contain the desired amount of production in g/h
units. The value adjusted in this register must not exceed the value set in
the MBF_PAR_HIDRO_NOM factory register.
To make the modification of this register persistent, execute the EEPROM storage procedure described in global register MBF_SAVE_TO_EEPROM.
Description
This register contains the higher limit of the pH regulation system. The value
set in this register is multiplied by 100. This means that if we want to set a
value of 7.5, the numerical content that we must write in this register is
750. This register must be always higher than MBF_PAR_PH2.
To make the modification of this register persistent, execute the EEPROM storage procedure described in global register MBF_SAVE_TO_EEPROM.
Description
This register contains the lower limit of the pH regulation system. The value
set in this register is multiplied by 100. This means that if we want to set a
value of 7.0, the numerical content that we must write in this register is
700. This register must be always lower than MBF_PAR_PH1.
To make the modification of this register persistent, execute the EEPROM storage procedure described in global register MBF_SAVE_TO_EEPROM.
Description
This register contains the set point for the redox regulation system. This
value must be in the range of 0 to 1000.
To make the modification of this register persistent, execute the EEPROM storage procedure described in global register MBF_SAVE_TO_EEPROM.
Description
This register contains the set point for the chlorine regulation system. The
value stored in this register is multiplied by 100. This mean that if we want
to set a value of 1.5 ppm, we will have to write a numerical value of 150.
This value stored in this register must be in the range of 0 to 1000.
To make the modification of this register persistent, execute the EEPROM storage procedure described in global register MBF_SAVE_TO_EEPROM.
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>