Category Archives: Canute (Final Project)

Last Year’s Problems

Something I was hoping would be cured after rebuilding was the bug where the Arduino would appear to crash and lose all its target values causing the system to drain. Unfortunately the problem is still there but since everything is more robust and better thought out I will hopefully be able to figure out the cause.

So far I have found that it doesn’t happen when power isn’t being supplied to the pumps and valves and it looks like the pumps are the main culprit which is odd as it should be isolated on the relay array. A separate power supply for the pressure sensors also doesn’t help. Right now the only thing I can think of is that the pressure sensors are right next to the pump motors so they could be picking up EMF and tripping the Arduino.

I could do with an oscilloscope.

Putting Canute back together

After wiring and plumbing everything the next stage was to put it back in its housing, attaching the pressure sensors and wiring everything together. IMG_20140711_193043This time more of the power circuitry is inside the unit so only the 12V supply, single 5V supply, 6 control wires for the pumps and valves and the 3 pressure sensor data wires are external. After testing all the connections and relays I could then start the attaching the lid and tubes.


After putting a little water in each of the tubes I was happy to find that everything appeared to be working. The self priming pumps took a little while to start moving water but when they did, they moved it nice and quickly. The pressure sensors needed a bit of calibrating because they were not positioned the same way as before.

Not finding any leaks I made the pumps fill the tubes as far as they could with the water already in the system and then filled it the rest of the way, the theory being that there physically isn’t enough water in each tube’s reservoir to overfill the tube, even if everything goes horribly wrong with the control system.

The Tide

Something that was unexpectedly difficult for me was calculating the state of the tide as a percentage so I decided to post what I came up with in-case someone needs it.

It takes one of the day’s high tide times and the time you wish to know the percentage of, both in hours.

public function get_level($high, $time){
    return cos(pi()/6.2103 * ($time - $high)) * 50 + 50;


The 3 new self priming pumps were the first to arrive, the ones I ordered cost £7.12 each, have a max current of 1.2A at 12V which is less than the old pumps, hopefully without a significant loss of ability to move water. One thing that I wasn’t sure about was if the the pumps already incorporate a one way valve to prevent water flowing backwards though them but after testing I found that it would be necessary so I’ve ordered some.


The second thing was the new relay array for controlling the 12V supply for the solenoid valves and pumps which tidies things up and reduces the amount of soldering. The pressure sensors will be part of a separate circuit board.

Along with the valves I’ve also ordered some more 6mm PVC tubing. With the time for orders to arrive and without any hard deadlines and the inevitable flexibility of self imposed deadlines progress is slow but I’m hopeful it’ll be functional fairly soon.


Canute in Babbage

Canute is a machine for visualising the tide. It uses a set of pumps, valves and sensors to raise and lower the water levels in its three tubes. The tube on the left is one hour ago, on the right is one hour from now.

Canute can be described as an actualisation as it uses the same physical material it is representing as a medium. The project is part of collection of experiments in the recreation and translation of patterns of physical material in remote locations.