Tuesday, October 23, 2007

New School Bells Program

My school has been using an old version of windows that used a NI input/output board. The computer finally crashed and I wasn't able to get the driver updated so I decided to develop new software that did not depend on the NI board. Having done some research on this before I decided to develop a solution that would use the parallel port because it would be easy to program. The design needed to be such that it could be easily ported to a standard serial port or USB port. Talking with the registrar at school we agreed on the following list of features as important.
  • Easy to use
  • Dependable
  • Manual over ride
  • Synchronize time with an Atomic clock or Internet
  • Select which days to ring on, no weekends, etc....
  • Save predefined schedules
Putting the pieces together
  • Linux is the new OS of choice for dependability and the ability to remotely access the system. Also the program will try to access a database to get the times for the bell that day. If it fails it will try to access a file on the local computer. Access can be given to these files through file sharing should the database fail. Also Linux can be run on most any old computer.
  • The decision was made to integrate the UI with the schools web based attendance system. This would take care of access for multiple users and security. This would also take care of the ease of use because the registrar is already used to the system.
  • The registrar or whoever is given permission to change the bells can create and update schedules and then assign the schedules via a monthly calendar to any day of the year.
  • The hardware for the moment is a parallel port connected to a relay. There is a manual button that can ring the bells and an override to keep the computer from ringing the bells. This is handy because the bells ring while the computer is booting. A future solution will be a device that works via the serial or USB port. I have a friend that has developed a independent bells system that can be programmed via the serial or USB port which we hope to integrate into our system because it will make it that much dependable since it could continue to run independent of the computer.
This program is still under development and is being used by my school. If you are interested in this program post a comment and I'll try and post a copy of the program when it becomes available.

No comments: