Smart Aquaponics Control System – An Internet of Things project
In my last post, I’ve said that I want a project that helps me control an aquaponics system. These are both very vague goals, and I need to narrow them down, and then I need to figure out how to do them. It seems a bit silly to use Project Management Processes and Product-Oriented Processes to define and control my project when I am simultaneously the management, employee, and customer. However, it is still useful for me to define the project in these terms in order to create a timeline, benchmarks, and goal.
To start this I’ll first define what sort of aquaponics system I want to control, and speak about the constraints I must follow. As an aside, I’ve heard it said in many different contexts that any problem is easily solved if you do not have to worry about constraints. Even sending humans to Mars becomes much easier if you don’t have to worry about them arriving alive – or ever departing again! A round trip to Mars with living humans is considered a “constraint”.
What is an aquaponics system?
Aquaculture is the raising of fish (or other aquatic animals) for food. Such a system requires food and clean water, and the wastes from the system must be filtered out of it and disposed of, or else the system will become deadly to its animals. Hydroponics is the growing of plants in water for food. This sort of system requires that the water be fertilized and filtered, and watched for build-ups of waste and metals, or else the plants will die.
Aquaponics is a combination of these two methods of growing food, such that the wastes of the aquatic animals are used as fertilizer for the plants, and the plants clean the water for the animals. There is also a layer of nitrification bacteria in the system that break down ammonia and nitrates into nutrients for the plants.
In a perfect aquaponics system, you put fish food into the system, and you get meat and plants out of the system. Having said that, no aquaponics system is perfect, and a certain amount of tweaking the system is necessary.
To the right is a good example of a very simple aquaponics system. This system uses a pump to move water from the fish tank to a filter tank. The filter tank is filled with media that houses nitrification bacteria. This describes nothing more than a standard aquarium, and such a setup can be very stable, needing little in the way of maintenance if the ratio of fish to bacteria stays stable, and if distilled water is added to the system to compensate for evaporation losses.
The addition of plants to such a system runs into an immediate problem. Some plants cannot survive with having their roots constantly submerged in water. They need to be able to have access to air. One way of doing this is to periodically drain the upper media tank several times a day. A good mechanical way of doing this is to use a self-starting siphon called a “Bell Siphon“.
In short, a Bell Siphon will start to siphon water from the upper tank when the water reaches a certain depth. It will stop pulling water out of the upper tank when the water level drops below the rim of the Bell dome, which is typically near the bottom of the container. If the container is sloped toward the siphon, then most of the container will be completely drained.
This simple siphon works fine for a small aquaponics system. Something like the one shown to the right. This is a 150 gallon tank with an 80 gallon media bed. At the time of this photo, I was experimenting with Bell siphons, and had not added media to this project.
But what happens when you have multiple fish tanks? What happens when you have multiple media beds for your plants? What do you do when you want to add other aquatic animals besides just fish? Like freshwater prawns or mussels?
As I continued to play with aquaponics systems, the next thing I knew I had over a thousand gallons of fish tanks, and I was trying to find ways to circulate their water, and also to be able to drain them when I needed to clean them. This is what I came up with.
This system doesn’t even count the plant grow beds. It also uses a common sump tank as a shortcut. It did have the advantage of allowing me to drain a tank if I needed to do so, but with the disadvantage of requiring me to re-route the circulation if I wanted to cut off a center tank.
I actually built this system, and documented it on my permaculture website, with a video of it in action. You can see this here.
And I ran into a problem. Okay, one of the problems I had is that I had to move, and was required to disassemble the system.
But what I consider to be the bigger problem is how the system worked together. If I added grow beds to the system, I had to be concerned with my sump “bottoming out”.
The grow beds that I want to use are two feet wide, four feet long, and 14 inches deep, with 12 inches of media. This translates into 60 gallons of media and water together, or about 25 gallons of water per grow bed. This means I can have no more than 7 grow beds before my sump goes bone dry. Or less than 6 grow beds if I want to keep my sump pump underwater.
This also doesn’t account for water diverted to strawberry towers, lost in evaporation, or used in other ways. I would like the ability to use 10 grow beds or more, and use the sump itself (with a screen around the pump) for growing catfish. So a certain amount of water must remain in it.
This is what I came up with… multiple tanks, multiple grow beds. Of course, the sump would have to be larger, just in case all the Bell siphons achieved synchronicity and allowed all the grow beds to fill up at once. There would have to be enough water for everything.
Each of those red handles represents a valve that can be turned off or on by hand, and that I would be expected to fiddle with to get the right rate of flow for the system. And while this is quite acceptable with a smaller system, it becomes a problem larger systems.
Luckily valves and pumps can be controlled through electronics. I wanted an inexpensive method that I could create, and that I could offer to the Maker and Aquaponics community. I’ll talk about that next as I more formally describe the scope of this project.
The Internet of Things – a new project
It’s been a week since I attended the UBM West conference in Anaheim, and I’ve acquired a new fascination with the Internet of Things. In fact, I’ve been more than a little fixated on it since coming home.
I have been having discussions with various friends in engineering about the IoT, and I can see that there is a lot of potential here, but also there is a lot of confusion, and companies working at cross purposes. The consumer marketplace is quickly adopting many different IoT ideas, while manufacturing seems to be talking a great game, but is adopting the Industrial Internet of Things (IIoT) slowly – if at all.
One of my software friends is pushing the Internet of Data – the idea that the device doesn’t matter, only the data. As part of the setup, the device explains to the network what it is, what it can do, and what data it can provide. It is up to the network to determine how to use this information.
Unfortunately, there is not industry standard for data sharing in the IoT. There is no real standardized Human/Machine Interface (HMI) to allow a human to interact with a local network of IoT to do useful things. The IFTTT web service is a useful idea of how such an HMI might work, but I’m having a hard time visualizing how it would work in a local network setting – where I could control the devices in my home through my tablet computer, or where a manufacturer could use it to choreograph several manufacturing robots to work together.
I’ve learned that there is a lot of pre-existing infrastructure and technologies for IoT, and there are several services that hook into it. The problem is getting them all to work smoothly together.
But reading about it all is completely different from actually doing it. And to learn, it is often best to create a project to accomplish something, and then learn from that.
So I’m starting a project.
If you know anything about me, you may know that I’m interested in permaculture. Permaculture is the creation of sustainable agricultural systems by studying and simulating the ecological systems found in nature. It is the idea of working with nature, fitting our society together with ecology. There are principles of design that guide permaculture, and they are useful – but they all boil down to a simple idea, human observation and reaction as a form of feedback is key to an agricultural system.
I’ve been writing about urban farming and aquaponics in my blog, “Fresno Backyard Harvest” for a few years now. Aquaponics has been of great interest to me as part of urban farming and permaculture. And I would like to better automate my urban farm, with controls that monitor plant moisture, measure water quality for my fish, and adjust water levels when necessary. I’d also like alarms when something goes wrong, and I would like to see how much of my urban farm I can measure.
For my first project, I intend to create something that will control a small aquaponics setup. I will use it to monitor various sensors, and report back to me. It should also control water flow.
Right now, I’m in the planning stage. I’ll keep a running journal of how I decide what to use, and what my designs look like. I’ll also keep a Github repository of each project.
You’ll be able to find my progress in the “Projects” category of my blog. Starting with this one. As my projects split off, they’ll be given their own categories.
Industrial Internet of Things, Disruptive Manufacturing at UBM West Exibition & Conference
I’ve enjoyed engineering journals like EDN, EE Times and embedded.com for years. So when I found out that the UBM “mothership” was hosting a conference in Anaheim, I was eager to attend.
I haven’t always had the freedom to attend any conference or exposition that I wanted. Employers are understandably reluctant to send engineers to expensive conferences. But these events “feed” the engineer with new ideas. They let us know what is possible. And of course they allow us to network and connect.
I would recommend to any engineer that he or she attend at least one or two conventions every year. If your employer will not send you, then plan on taking some vacation time and pay your own way. The benefits are too great.
I spent two days here and according to my pedometer I walked 14 miles through the aisles. Besides aching feet, here’s one of the biggest things that I’ve taken from this event.
The Internet of Things has become the Industrial Internet of Things. Manufacturers have embraced IoT to connect and control their production lines. But it seems to me that the manufacturing model still relies on the Ford assembly-line model and the power that comes with IIoT is underused.
I think that part of this is due to manufacturing inertia. And this is understandable, if the company is still making a profit then why change? This inertia is coming to an end due to narrowing profit margins that are required for manufacturers to remain competitive. We seem to be seeing changes due to this already.
I also think that the Maker community is becoming more powerful and is approaching the point where the community itself will become a “disruptive technology” for traditional manufacturers. Makers have moved beyond “arts and crafts” and are connecting with smaller designers and specialized manufacturers to create small runs of innovative technology products. This distributed manufacturing model is coordinated “in the cloud” and is capable of creating printed circuit boards at a cost of tens of dollars per square inch for limited runs.
As distributed manufacturers start to coordinate with each other I foresee a time when they will create virtual vertical integration, and the manufacturers themselves will be mapped into resilient supply chains. Information technology will be used to control individual machines, reconfigure production lines, and select supply chains based upon availability and costs. Manufacturing will just be another part of that supply chain, easily and quickly replaced by another manufacturer in the case of failure.
This has been called “Industry 4.0”, which was also discussed at UBM Anaheim. And one of the six design principles of Industry 4.0 is “Interoperability”. And this seems to be another sticking point in manufacturing. As of right now, there is no standard for the Internet of Things. Or rather – there are several standards that don’t play well together. And since these smart factories depend on IoT, it is imperative that these things can talk to the rest of the virtual factory.
Customer design goes in, product comes out. We’ve got a long way to go – but I think that time is measured in years, not decades. Our consumer products will someday follow the “on demand printing” model in that the product will reside in a catalog until ordered and produced.