My first attempt at "controller" was using software. I wrote a HUGE application in VB (and later ported it to VB.NET). I/O was via a 128bit PCI card (NUDAQ) and a few DIY ADC boards. I never put the project into a production system. It did everything from sunrise and sunset to DTMF decoding for phone based reporting when I was out of town. It did SMS messaging, email, text to voice and was designed to do PH, ORP, Salinity, assorted temperature and water level reporting for different sub systems... alarms etc. Thousands of lines of code.... too complex to trust and too much work to really finish.
I then started playing around with PHIDGETS usb sensors and devices (well not really I never purchased any, but wrote a ton of code to use them with a similar setup as the NUDAQ based system. I lost interest fairly quickly.
I am now kind of hooked on ATMEGAs. I am building a touchscreen lighting controller that does sunrise/sunset and moon phases based on any location (and time, or realtime) on the planet. I get to play with BASIC code and do hardware design. I will finish the project, even though it will cost me a small fortune when by the time it is done. I have opted NOT to CONTROL anyting but the lighting. Everything else is just data monitoring. I am about 1/2 done with the hardware design and testing (on a breadboard now) and will soon have THE PC boards made.
Why go through the trouble? Simple becuse I enjoy working with DIY electronics. In this case I will end up with something that I can not buy. A PLC could be leveraged to do the work, but at a great cost and without the small features I wish to implement to make it "personal".
I too have a shelf full of eBay toys.... anybody need a huge Ghast vacuum pump (
www.joewoodworker.com).... One day I will move forward with the CNC router setup as well... more porjects than there is time in life.