Modelling concentration and rejection of salts in a membrane system

31 views (last 30 days)
Hello
I am creating a membrane filtration system in simscape using isothermal liquid. A membrane has one inlet (salty water) and two outlets - some of the water passes through membrane, gets cleaned and is called permeate. While the majority of the rest of the water escapes the filter through another outlet called retentate. The cleaner water may not always have zero dissolved salts which means rejection of the salts by the membrane is not 100%. To represent the membrane fitler, I created a subsystem that has one inlet and one outlet, while the second outlet branches out and there is a pump that draws appropriate amount out. So the liquid balance was established. However, I am trying to figure out how to represent the concentrations of salts. For example. sodium and calcium may both be dissolved in the feed water, and the rejection characteristics of membrane for these two are different. I am trying to figure out how to incorporate the concentration of each of these ions and track it through the fluid network I have created.

Answers (1)

Scott Satinover
Scott Satinover on 13 Feb 2023
I'm not sure if Simscape or Simulink are the best tools for the job. You primarily use these tools to model the physical characteristics of a fluid system, which uses isolated fluids to do work. Simscape is unable to model a system that adjusts a fluid's chemical composition. Any one fluid in your system can interact with another in some ways, such as within a heat exchanger, but they can't mix.
Right out of the gate you have a problem because of this. By creating a clean fluid and a brine, you're creating two fluids from one by altering the chemical composition of a working fluid. The loop isn't closed, and so Simscape doesn't support this.
But even if Simscape did support this, I'd have a lot more questions. First, how are you modeling the membrane? Even if you could use different fluids in your model, you'd also have to make a custom solution for the membrane, since Simscape does not have a membrane block. I’d want to know how you got that working. Let's say you just use pumps to split the flow and represent a filter. Okay, well, the influent composition affects the filter behavior, so how do you adjust the pump outputs to adapt to the influent composition?
Then there are other behaviors and properties that you must consider. Membrane fouling, which changes operating pressure over time. Ion-ion interactions that affect ion solubility. Individual ion concentrations (some fluids do account for total dissolved ions though). Fluid conductivity. Fluid pH. Simscape doesn't have any default features that I know of that you can use to model these behaviors and properties, which are otherwise important for modeling a filtration system. So even if you can get this to work, it'll involve a lot of customization.
I followed this up with another person and MathWorks, and I don't think Simscape will help you with your problem. Instead, I think your best bet is to take a different approach by using other MathWorks tools. Mathworks.com links to this book for information on membrane modeling by using MATLAB:
It might be worth a read. Once you develop a model in MATLAB, you might be able to deploy it in a Simulink model with something like a MATLAB Function block.
Good luck in any case!

Categories

Find more on Upgrading Hydraulic Models to Use Isothermal Liquid Blocks in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!