I've tidied some of the code up and posted it to my github account, its available here. It could be a lot tidier but tbh it works fine as it is. If I extend it any further then I'll probably put the effort in and give it a tidy
To get this to work on the beaglebone, I followed this guide to doing a Debian Netinstall which worked well enough, after completing it was just a case of apt-get'ing opencv and the python libraries. These installed perfectly :)
Note that this code doesnt include anything relating to pushing text to IRC or controlling traffic lights, this was all done via systems we already use in the Hackspace. Basically my code just pushes a text string to a daemon running on our server which does all of that. Similarly there is a daemon running that controls the traffic lights :)
The traffic lights themselves are dead simple, I designed and etched a simple board that uses a 3 solid-state relays rated for 240v. Each of these has a 5v input and a 240v switched side, which is connected to the lightbulbs in the lights. I've since lost the Eagle files for that board though :/
I've got some future plans for this system, for one I plan to improve the detection system. At the moment it cant see anything that isnt circular, such as cutlery. I'm planning to get a kinect working on the beaglebone and use it to build a scan of the sink area, once I have this I can use it to work out when any item is placed in the sink. It also frees up the eyetoy camera for pointing at offenders so we can shame them in the future.
I'm also planning to broadcast alerts on our network so others can build devices to listen to it, for one I'd love to get our GladOS speech system hooked in :) Now that we have an automated generator for GladOS speech files (which I'm not posting the URL to here as it wont take the strain of public use!) it should be easier to implement
Oh yeah, we now have an automated way to generate GladOS sounding speech, which I'll write about later on!