Category Archives: Automation

Sensirion SHT-11 humidity and temperature sensor ready to go!

One of the sensors that can be read by the Neptune module is the Sensirion SHT-11 I have had laying about for years.

Now finally it is ready for use! The sensor sits on the end of a 2,5 meter cable which is soldered on directly. A small capacitor is glued on as well to cope with the excessive cable length. The sensor in its entirety is covered in a drop of silicon glue to keep the moisture out of the electronic contacts. This sensor will be measuring over 98% relative humidity at times!

The Sensirion SHT-11 sensor glued into a drop of silicone. This digital sensor measures air temperature and relative humidity in the Paludarium.

The Sensirion SHT-11 sensor glued into a drop of silicone. This digital sensor measures air temperature and relative humidity in the Paludarium.

So far the results are looking good. This is the sensor still hanging in the living room:

sensirion

22.24 degrees centigrade and 65.94% relative humidity. Sounds realistic as it’s a very moist day.

When the silicone had dried, I put the sensor inside the paludarium. After settling it showed measurements like these:

Measured values when the Sensirion sensor is inside the Paludarium.

Measured values when the Sensirion sensor is inside the Paludarium.

Great! Tempereature at 23.16 degrees, relative humidity at 87,61%. Very Jungley 🙂

What I did find out, is that the location of the sensor heavily influences the measurements. Especially the humidity is VERY dependent on where you measure.

Neptune module taken into action

Finally. After a long time building the hardware and the software, the Neptune module is the final module to be added to the Paludarium.

This module is a more complex version of the Apollo units that live inside the Canopy that control lighting and fans. The Neptune module has some control for lighting (namely the underwater lights), but its main purpose is controlling pumps and valves, and measuring back sensors in the paludarium.

For now the Neptune module is setup in the cabinet under the Paludarium:

The Neptune module sitting in the cabinet under the Paludarium with some sensors already connected. What a mess of wires and hoses!

The Neptune module sitting in the cabinet under the Paludarium with some sensors already connected. What a mess of wires and hoses!

The unit has been running for over two weeks now without a single flaw… I must be doing something right 😉

Video: The first real Thunderstorm

After running some tests, today for the first time there was an actual thunderstorm in the paludarium!

How the paludarium figures there should be a thunderstorm

I could have made the weather inside the paludarium choosen by random, but that wouldn’t have been any fun. Instead, the paludarium fetches live data from the La Selva Biological station in Costa Rica.

Using a 1,5 day delay this meteorological data is “replayed” inside the paludarium. Why 1,5 day? Well, one day to Read more »

The stuff Paludariums are made of

People are often confused what things are all in the paludarium, what they are called and what they do. In this blog post I’ll explain the different components (sub projects if you will) that make up the paludarium today.

A quick overview

In order to get the paludarium working as it works today, I had to run several different projects and put them all together. First I’ll quickly list all the different components:

  1. The Cabinet – The custom-built cabinets that hold the paludarium;
  2. The Paludarium – The glass structure that holds water and air (the paludarium is a closed construction);
  3. The Land part – The part above water. Filled with tropical plants, and for now no animals here;
  4. The Aquatic part – The front underwater part of the paludarium, where the fish live;
  5. The Sump – The rear underwater part. Any excess water from the Aquatic part is dumped here, and the plants living on the background panel get their water from here (and return it there too);
  6. The Waterworks – The board in the cabinet that holds all the plumbing (water valves etc);
  7. The Canopy – The intelligent armature sitting on top of the paludarium;
  8. PaluPi – A standard Raspberry Pi with an RS232 level converter that sits inside the Canopy and handles all the “smart thinking”;
  9. Apollo units – Named after the god of light, there are around 12 of these units inside the Canopy, each handling up to 4 leds, halogens, TLs or fans;
  10. Neptune module – Still under development, this unit controls all pumps, valves etc in the Waterworks;

Quite a list right? Everything in this list had to be tuned Read more »

Rain Down On Me

One of the last things to build and test with all the water stuff, was rain. So I added a small installation with sprinklers that get fed directly from the tap water.

Rain Down On Me

The rain installation is controlled electronically (duh!). On the WaterWorks under the paludarium, I have one electromagnetic valve that can be opened to feed the rain installation:

The magnetic valves on the WaterWorks. The one on the left controls the osmosis filter, the center one inputs tap water into the aquatic part, and the rightmost has now been connected with a thin black tube to allow for rainfall.

The magnetic valves on the WaterWorks. The one on the left controls the osmosis filter, the center one inputs tap water into the aquatic part, and the rightmost has now been connected with a thin black tube to allow for rainfall.

The valve on the right has now been connected as well with a thin black tube. This tube is fed upwards, and Read more »

Water for the First Time!

Today it was finally time… All the puzzle pieces for the WaterWorks could be put together! After testing the WaterWorks for leaks, it was time to mount the board under the paludarium, hook things up and test… For the very first time actual water inside the paludarium!

Mounting the WaterWorks

The waterworks were build on a separate board, outside of the paludariums cabinet. All parts that need to be under the paludarium that handle water are mounted here. The WaterWorks look like this:

The Paludarium WaterWorks. This board is mounted under the paludarium and it handles the water household.

The Paludarium WaterWorks. This board is mounted under the paludarium and it handles the water household.

Today I mounted this board in the cabinet under the Read more »

The Way Water Warms


I am so happy with my Raspberry Pi now able to obtain real-time measurements from the La Selva biological station. As much as this station measures, it does not measure water temperature. Time for some geeking out!



What I DO have

So the measurements I do get from the biological station are basically all the ingredients I need to synthesize the water temperature. Especially these values will determine the temperature:

  • Light Intensity;
  • Air Temperature;
  • Rainfall;
  • Previous Water Temperature.

I want to use some kind of calculation to create a synthetic water temperature. I’m assuming sunlight will heat the water. The water temperature will somewhat follow the air temperature. Finally rain will seriously cool down water.


Making up a formula to synthesize water temperature

Forming a formula that synthesizes water temperature is kind of hard to do. There are so many variables. In the wild, water will come flowing in from somewhere else. Deep water will flow slowly, and hardly heat up under sunlight. A small pool of 10cm of water will heat up extensively, unless it streams fast.

It is almost impossible to work with all these variables. So I figured to just build a simulation formula, and see how the water temperature will develop as I run through the days. I started out with a formula like this:


WaterTemp = WaterTemp + (Light/settings.get(“synth.lightFactor”))
WaterTemp = WaterTemp + (AirTemp-WaterTemp) / settings.get(“synth.AirTempFactor”)
RainDiff = Rain * ( WaterTemp – settings.get(“synth.rainTemp”) )
if (RainDiff < 0): RainDiff = 0 WaterTemp = WaterTemp - ( RainDiff / settings.get("synth.rainFactor") )


The first line will increase the water temperature from the last sample with (Light/factor). This is the heating of the water by the influence of sunlight.

The second line first calculates the difference between air and water temperature. The further apart, the bigger the effect will be. After dividing by a factor, I add this difference to the water temperature (this cal either heat or cool down the water)

The third line first calculates the difference in temperature between the water and the rain. Then I multiply this number by the number of millimeters of rain (more rain = more cooling). In case the rain is warmer than the water (should never occur), I do nothing.

Finally I subtract the calculated value from the water temperature divided by another factor. I use these factors to tweak and tune the simulation.


The result

I still have to look at the effect in a longer run, maybe import a few weeks of simulated data into excel and graph it out. So far it seems to behave pretty well… Simulated temperatures normally run from 24 degrees centigrade (early morning) up to 27.5 degrees centigrade in the late afternoon (4PM). Rain cools it down 1-2 degrees. When looking at heavy rainfall (like September 11th 2013 where there was over 70mm of rainfall in 1,5 hours), the simulation delivered a water temperature of 21.4 degrees centigrade. Not bad at all!

Work in Progress: Getting the RaspBerry Pi to talk to the Canopy

In my previous post I managed to program the chips in the Canopy. Now I can adjust the code inside the Canopy where needed. Next thing to get working is to allow the Raspberry Pi to talk to the chips inside the Canopy.

Raspberry Pi, Atmel AVR and serial communications

Luckily the Raspberry Pi has a serial port, because the AVR controllers I used have one too, and they use this serial port to get commands from whoever is controlling the bus… Which should be the Raspberry Pi.

Problem is that the Raspberry Pi does not have a true RS232 serial port: the signals are there (on the GPIO headers), but they have 0-3.3V levels Read more »

Work in progress: Programming the Canopy

As I get closer to actually filling the paludarium with water, plants and eventually animals, I need to put a lot of focus on the electronics. The lighting armature on top, or as I like to call it, the Canopy is fully electronic. Without electronics the lights won’t even go on… High time to put some work into the Canopy to upgrade this piece of hardware to version 2.0.

First things first: Getting the code compiling again

Inside the Canopy I have 12 Atmel AVR controllers (ATtiny2013’s). These tiny controllers have been programmed in three flavors: LED, HALOGEN and FAN units. You guessed it, each type of controller has its own code. Luckily I programmed a single code, and when compiling this code I can tell the code which type it is supposed to compile. These little AVR controllers are programmed in C:


#include “main.h”
#include “serial.h”
#include “timer.h” Read more »

Hardware ‘n stuff ordered!

Today I finally ordered most of the hardware I’ll require for the further construction of the paludarium. Not computer chips this time, but pumps, filters, pipes, heaters and other cool stuff. In this blog post I’ll highlight some of the components that I’ve selected.

Aquatic Filter

Originally I used an Eheim 2222 external filter for Paludarium 1.0. However, this filter was already too small, so for the new Paludarium 2.0 it would definitely be too small, so I was in need of an upgrade. The price of the larger Eheim filters scared me a bit – So I decided to go for another vendor, JBL. They have a much cheaper filter line, the greenline filters:

The JBL Greenline 1501e external filter

The JBL Greenline 1501e external filter

I bought their 1501e version, which outputs an impressive 1400 litres per hour and Read more »