I am brand new to the world of micro controllers/computers and I am eager to develop a new water pumping system to save a lot of walking and to keep my brain stimulated. In my early days as a mechanical engineer, I was pretty good at programming in FORTRAN and after seeing a few tutorials on Python, I don’t think the coding will be a problem.
I would like to develop a system to control filling various water tanks from dams on my property. I have a manual system which works well but is time consuming when I have to go to various tanks to check levels. I have two systems which are essentially the same. A dam pump pumps to a staging tank which has a high/low float switch. Once full, power to the dam pump is stopped (via the float switch). I then manually switch control to a pump at the staging tank which pumps to a top tank. It is stopped when the float switch reaches the low level. There are no sensors on the top tank, so there are situations when the top tank could overflow. There is no linking between the two pumping systems except for a common supply pipe to the top tank.
I would like to be able to monitor and control all systems through an app on my Android phone. Both staging tanks (where the pumps are controlled) are within WiFi range.
My idea is:
Use a Raspberry Pi Pico at one staging tank. It will have a WiFi module and a 4 channel relay module. The relays will be used to switch higher powered relays which will handle the pump motor current. There will be auto and manual options for each of the pumps.
Use a Raspberry Pi Model A+ at the second staging tank using the same relay controls as the other tank. It will communicate with the Pico via WiFi and will coordinate the whole system. I assume I will be able to get the time from my WiFi connection rather than needing a RTC module.
Use the MIT app Inventor to link all information and control to my Android phone.
Eventually, I might use another Pico at the top tank to provide tank level information to the system. It would only need to report tank high/low level via a float switch but can’t think of any other device for about $30 which could do the job.
Am I proceeding in the right direction?