This program talk to a Knick Protavo 904 ph meter and Hei_FLOW Precision 01 pumps. Depending on the hp value read from the ph meter, the pump flow is controlled. The program is capable of controlling
multiple pumps. This application will only work on Windows.
Download and install application called Paraly SW 112 using this link.
This is how the application looks like
Image of
Knick Protavo 904 ph meter

Connect Knick Protavo 904 ph meter using micro-usb. Start the application Paraly SW 112 and
device should atomically connect. Click on the start button to start logging ph.
Note: this project is not maintained. If the link does not work, just google Knick Protavo 904.
Computer talks to pump using RS232 connection. No Other set up required.
- Download Anaconda from here. Make sure to select Windows and Python <3.5.
- Install Anaconda.
- Start Command Prompt as administrator. It is important to start Command Prompt as administrator because , we need to install some python packages that requires permission fro windows.
- Run the following commands in command prompt to create anaconda environment.
conda create -n ph python=3.5
where ph is the name of the environment 5. Enter environment
conda activate ph
- Run the following commands to install python packages.
conda install -c conda-forge pyautogui pyperclip
conda install -c anaconda pyserial
conda isntall numpy
Please follow the following steps before running the program.
- Make sure
Paraly SW 112is running and logging in the background - Make sure the log interval and the
ph_read_intervalvariable value is inside theconfiguration.jsonfile matches.configuration.jsonfile is in the root directory of this project. You can add multiple COM ports if you have more pumps. - Pump is stopped (Not turned off).
- Go inside Device Manager and under Ports(COM & LPT) you will find COM
X(whereXis a number) for the pump. - Put this COM
Xinside theconfiguration.jsonfile.
The program can be run using an IDE like pycharm, but you will have to install pycharm and set the environment to ph (which we created earlier). Or you can run it on the terminal using the following command
python3 Controller.py
When the program start it asks user to continue only when they have performed the steps on the screen. So please follow the steps.
Some things to look for
- When the
Paraly SW 112is logging, the row are the same. You need to scroll to the bottom to see the new values. - Your COM port is not correct.
- Google things if you do not understand.
- It talks to
Paraly SW 112in every hacky way. The program take controls of your mouse and copies (Ctrl + C) the logging row from theParaly SW 112.
This program is very customized to specific need. The code is well commented and structured. It uses a observer design pattern. Email me if you want to make changes: muhammad.sumbal@mail.mcgill.ca