I had this same issue when I first got setup. I would have lockups where the computer is technically on but unresponsive. It would take a physical shutdown to clear it up. So I made an arduino resetter hooked to transistors which shorted the pins on the power/reset switch, then I wrote a GUI that was intended to run on a "monitor" machine that was not mining. The GUI had buttons to reset/power down with an indicator that changed when the power was on/off. Then I could just log into Teamviewer and do the physical reset.
By the time I got it all done I didn't need it anymore. I got all my heat/overclock issues stabilized and it never needs shutting down. Aside from one power outage my miners have been running 3-4 months solid. I decided it was not worth the small amount of hashrate increase if I had to go reset the thing all the time.
I run 5x Sapphire 5830's in one machine for around 1.5Gh/s.