Hi
@Ditto was faster

I was om my way - I have some different solutions so I publish them too.
I have planned exactly the same as you but not put it to work yet because at the moment my pH only dip to 8.20 and that’s OK for me
My plan was something like this
Make a level function
Remarks - this is for the floating sensor - I do not think its different for the optical
Maxim on-time. This depend of your chose. You have to calculate that time from "worst scenario" If you pump normally adjust the level in 1 minut - put it on 4. If the pump will run for a longer time - all fill up actions shouts down and you will get an alarm. If you do not want a maximum on time - set it to 0:00:00. reset error automatically - check this if you want it to work as soon as the fault has been fixed. Uncheck if you want to manually reset it
Always active - in this case - check this.
Which sensor to chose below "used sensors for the control" You can check this with help of the window Settings and state level-sensor in the bottom of my screen shot. Make the sensor to show on - check the x and - sign at state (direct). Put the sensor in off state - look which sensor that have change - that´s the one you should use as sensor for this control. Its wise to have a reaction time on actual sensor to be around 10 sek. It will wait for 10 seconds before its react
Save and in my case its level control 1
Set up your pH controller
Set nominal value - in my case 8.20 - in your 8.3
Hysteresis - 0.05
Nocturnal change - after your choice
Alarm - if you want it active or not - tip do not make it to close to the nominal value - at least 0.2 i difference
Operation mode controller
This is a interesting choice.
Normal is two positions but I always use Pulse variable. In “two Positions” the pH value will vary between (in my case) 0.025 plus or minus from the nominal value in best case – but if there is a time lag between the input and the reading – it can vary a little bit more (in my case 8.17 – 8.23)
In “pulse variable” – the value will be more stable. The pulse time tell the maximum on time before a pause. If the actual value is close to the nominal value – the computer automatically makes the on time lesser. Wait the pause time – looks how the differences developed during the paus time and calculate a new on time. In my case I have taken 15 minutes – this time is not written in stones – you must adjust to your system.
The pause time should be the time it takes from your system put in lime water till your meter shows the result. Is input and probe in the same well mixed apartment – make it short – are they situated in different apartments of the system – you must test with different paus times.
Now go to Programmable logic
Make a new G entry - in my case G4
In this case
Input 1 Fill water (ATO only) 1
Input 2 pH-value 1 Increase
Function AND
If you have other Fill water or Ph-probes - you need to fill in this instead for 1
Save
Now to the switch option
I chose socket 40 because I doing all these screenshots on a PL 4 that´s in charge at the moment - you can make your chose as you want
Now make it to react with your PL - G4
Put your limewater pump into socket 40 and now it should run if the level switch say yes and the pH is below 8.2 in my case
Test because I have not done this by myself yet
Now to the normal ATO operation
Create a new PL (in my case G5) with the same level control but invert the function PH 1 increase
Looks like this
Connect this to an outlet (in my case socket 41) and put in your ATO pump there
Your switch and PL window should look this
This is the way I should start to test but be aware that I have not tested this - you have to check by your self that it works
Sincerely Lasse