I mentioned it to a few people at last year's ENC- and promise to post
when it was working. (At least I posted before this year's ENC!)
For Unix-based systems I turned off the SYSLOG rotation in cron and use
that to keep track of login times. A bit of manipulation of the file and
I can pull it into Excel, where I do the actual accounting.
The two ACs, of course do not have a smart enough computer to keep track
of users. This is the system which is somewhat hybrid.
basic parts:
1) keypad entry box (we bought from Acroprint Time Recorder Co.- don't
use them, they have _TERRIBLE_ customer service) This box has a serial
port in (and out), a keypad for data entry, a line which can be switched 5
volts high/low, and a 2 line display for short messages. It could also use
magnetic cards but....) It turns out that lots of companies make
timeclocks- my problem was to get one simple enough, but that could be
chained somehow.
2) Serial port software from a company called Taltech (www.taltech.com).
Program is Softwarewedge. It makes the serial port like a keyboard/mouse:
ie: the computer activally listens to the serial line. The have _GREAT_
tech support.
3) Spreadsheet program of your choice. Softwarewedge supports most of the
big names. We use Access (microjunk) because that is what UNM likes.
4) Relay box. This hides inside the console. We cut a control line to
the console keyboard and inserted a relay. When the relay is on, the
keyboard works. When off, it doesn't. Note that (so far) we have not had
a problem with people loggin in, starting a run, and logging off. If
necessary, we could cut a pulse programmer trigger line so no acquisions
could occur. (We have a manual override on the relay box if necessary.)
5) A little (really!) bit of programming to interface Access and
Softwarewedge. Taltech's website gives lots of examples, but you need to
be comfortable working with Access macros. I am not, so I hired an
"Expert" (one of the Continuing Education instructiors- he teaches
advanced Excel, Access, etc.) He did much more than I asked for, and
still billed for only ~10 hours.
6) Dedicated computer to run the above programs on. Must be dedicated-
this will not work as a background program. But, need not be fancy. I am
using an old (barely) 486. (I graceously donated my office computer to
the cause- of course I then had to get a new computer (with 12x CDROM,
speakers, 3gig of disk space, enhanced graphics, etc.)) Mine had an
ethernet card in it, but I took it off ethernet. This computer lives in
the back of my office.
The computer is set up so that when turned on, it starts up my accounting
program. It starts Access, and softwarewedge. SFW already knows the port
etc., so as part of the start up it send messages to (both) keypads saying
that the system is ready. (Of course, the computer stays on all the time-
except for power failures.)
Users are each assigned a 6 digit code. (I decided 6 was better than 4, 8
was too long.) They type in the instrument code (01 or 02) and their code
and <enter>. This gets sent (serial line) to the PC. It compares the
code to the list of legal codes and either sends out an error=try again
code or a code to turn on the relay and a nmr in use message. (I also
send out beeps- 1 short for good login, 2 short for good logout, 1 long
for bad.)
The usercode, instrument, and login time is stored in a table. All users
logout the same way - 2 digit instrument code plus 999999. Good news-
someone else can logout an overnight user. Bad news- someone can type in
the wrong instrument code and turn off the wrong instrument. The logout
time is added to the table at logoff. My programmer made a nice form for
the screen so I can see each instrument, usr ID, and logon time. This is
pretty much wasted, since unless there is a problem, I keep the monitor
turned off.
At the beginning of each month, I kick the users off for 30 minutes and
download the file onto a floppy. (Technically, my programmer wrote macros
to do most of the billing for me, but that was a bonus.) I sneakernet the
floppy to my new computer and pull the data into Excel. Then, I combine
it with data from the SGIs and create invoices for each faculty member.
(Please do not ask why I am wasting my time playing with Excel when we
have 2 accountants who are not very busy....)
The overll system is pretty robust. Occasionally the second keypad loses
its mind. Usually it will still send, but will not receive. I have to
reboot the whole system ~ 1/month or less. The really nice thing was that
only the Access macros are custom- and even they are not so far out that
someone comfortable couldn't figure them out. I have not needed my
programmer since he finished last summer. If I do, and he is not around,
any good Access user could help me reprogram.
Hope this overly long explaination helps.
Karen Ann Smith karenann@unm.edu
Manager, NMR Facility Adj. Asst. Prof.
Dept. of Chemistry Clark Hall
University of New Mexico Albuquerque, NM 87131
505.277.4031 url: http://www.unm.edu/~karenann
"The universe is run by the complex interweaving of three elements:
energy, matter, and enlightened self-interest." (G'Kar, B5)