I am an artist based in London (here are a few projects www.nickferguson.co.uk). I have a concept for a new piece of work and am looking for suggestions as to how to make it work. Could arduino plus a few bells and whistles do the trick? Here is the gist.
Two mains voltage lights (L1 and L2) and two mains voltage switches, S1 and S2, are installed on a circuit. Switch 1 and L1 are located remotely from Switch 2 and L2 and connect via the Ethernet.
Functionality is as follows:
Switch 1: Position ‘on’ turns on Light 1 but simultaneously turns off Light 2. Position ‘off’ turns off Light 2 but turns on Light 2.
b. Switch 2: Position ‘on’ turns on Light 2 but simultaneously turns off Light 1. Position ‘off’ turns off Light 2 but turns on Light 1.
So, though there are two users in two different locations (could be two different countries) only one of them could have the light on at any one time. That is it.
There seem to be some off-the-shelf products available for remote power switching but these all require either a keyboard or a mobile phone to activate the remote switches. I need the switches that users press to be normal architectural fittings rather than computer keyboards or mobile phone keypads.
Any suggestions? Thanks
Hi Nick, what do you want to happen when switch 1 and switch 2 are both in the ‘on’ or ‘off’ position?
Do you want to toggle the light state when the switch is thrown, much like the way a normal two way light switch works where either up or down can be on or off depending on the state of the other switch?
Also, there will be some delay for messages to get from one site to the other, do you have a view on what you would like to happen if a user on one site flips the switch quickly on and off before a message arrives and is processed on the other site?
Hi and thanks for the follow up questions. I’ll start by defining my terms more precisely. Let’s refer to switch positions as ‘up’ or ‘down’ as well as ‘on’ and ‘off’.
From a design point of view it does not matter whether ‘on’ or ‘off’ correspond to ‘up’ or ‘down’ on the switch
Ideally there would be three lighting options:
- Both lights off.
- L1 on and L2 off
- L2 on and L1 off.
Given that the current can be only on or off, I can imagine only two options:
- L1 on and L2 off
- L2 on and L1 off.
In this case the functionality would be similar to that of a two way switch. If both switches were in the ‘up’ position one of the lights would be ‘on’ and the other ‘off’.
I had not thought about the issue of a user flicking the switch back and forth during a delay. I would quite like the flicking back and forth to be relayed truthfully i.e. it also gets processed the other side, albeit in delayed form and/or slowed down form. This though might all depend on how long a delay we were talking about. One of the interesting things about the piece for me is how people might start to negotiate each other when they can’t actually communicate except through a light switch. So switching on and off should be part of the setup.
If the key information you wish to communicate to the other site is that the user has ‘thrown the switch’ , i.e., it doesn’t matter if it has gone up or down then the message to the other site could just contain a ‘local switch changed state’ command along with the state of the local light. The next decision is how you want to sync the light and the toggle message.
One approach is to have the detection of a local switch toggle cause a toggle of the local light state as well as send the toggle message to the other site. The receiving side would toggle its light state in response to the incoming message. But you would also probably need to check the state of the remote light to make sure that they were not both on or both off due to a lost message.
You could probably prototype something up using the Processing environment and worry about interfacing to real switches and lights when you have the functionality you want. Or if you want to dive straight in, you could build something with the arduino using wall switchs connected to input pins (use 5volts, not mains voltage!) and use a relay on an output pin to control a lamp.
For your spotlight control, you may want to consider something like this wireless mains appliance switch http://www.dealextreme.com/details.dx/sku.6026. I would think the battery operated remote controller can be opened up and driven by an arduino pin, and this would make your installation much easier and safer as there would be no mains wiring going to the arduino.
Maybe each Arduino could read the local switch state over digital pin(s) and every time it changes, send a serial message to a, say, Visual Basic app on the PC, which would in turn send the switch state over an internet socket to the other PC. So then each PC could determine whether its local light should be on or off and send a message to their respective Arduinos over the serial link accordingly, closing or opening a mains relay circuit on a digital pin.
Cheers guys. These responses have been really helpful and I’m starting to get an idea of how this might work. This time yesterday I was sceptical even whether it could work. I can also see that there is any number of applications I could put on the end once the basic functionality has been achieved. Door locks might be an interesting one… Thanks. But the exchane has also made me realise that, as someone who doesn’t know the first thing about programming, I’m never going to get this thing working myself. Would anyone be interested in doing the programming (paid of course) if I sorted out the hardware? In terms of practicalities, I am based in London, UK.
I am also based in London. PM me with a phone number or email and we can talk more about this.
(i just recommended this in another thread, seems like there could bme many uses for this) if you want to do the remote connection between the two arduinos in differetn countries seems like this may make it a lot easier… www.pachube.com
actually there was one there called global feedback loop which seemed similar in intention (lights on in different parts of the world) though it ws more about having sensors of the lights.