Hey there,
I am sure there is a script which I could modify which would close Hal for you, I had a thread going last year were if Hal was idle for so many mins he/she would initiate a conversation, I think it would be easy enough to modify it to switch Hal off instead of the other. As for getting Hal to switch on or "wake up at sertain times of day, you will be able to set this up via the Scheduled tasks.
you can find this by clicking the Styart button/Programs/Accessories/System Tools/Scheduled Tasks.
Once opened if you select browse click on my computer/Program Files/Zabaware and select the Ultra Hal icon select the initial time you want Hal to wake up and on the last screen were you see the Finish button put a tick in the Advanced options box and click finish.
Click on the Shedule tab and select Advanced Put a tick in the Repeat Task and select the times you want hal to star. You can also set the task scheduler not to start if Hal is already runnng, this way Hal will not wake up if he/she is already awake. [

]