by Richard Darby (5045)
Infomate is a data capture program for the Z88. It was developed by the Engineering Development Group at the New Zealand Ministry of Agriculture and Fisheries and is used routinely by the NZ MAF to collect data from experimental trials of all types. The advent of the Z88 provided the perfect platform for a portable data capture package because of its light weight, full sized keyboard, plug in memory and use of readily available alkaline cells which can power the machine for a whole day. Probably the greatest benefit for a computer used as a portable data logger is the graceful manner in which the Z88 dies when the batteries expire, provided you have another set you can simply change them and carry on as if nothing had happened or if not then the data you have collected will be safe for a day or two even when the screen has finally flickered.
The purpose of Infomate is to allow data of all types to be recorded anywhere and subsequently transferred to another computer for more extensive numerical analysis. Although originally developed for recording data in Agricultural and Horticultural experiments the package is so flexible it can be used to record data related to subjects as diverse as passenger movements in airports or keeping track of competitors in mountain bike races. The rationale of Infomate is that it puts all the power and flexibility of portable computer systems in the hands of the person who is collecting the data by allowing that person to tailor the infomate environment exactly to his requirement. Infomate is more than a program to record numbers in a convenient way, it can record data by direct connection to modern electronic measuring devices fitted with RS232 ports e.g. balances or calipers, or it can be programmed in a stand alone mode as a data logger by connecting the Z88 to the ADAM A/D converter.
Infomate achieves its flexibility by becoming fully integrated within the Z88 environment. The ability of the Z88 to suspend applications is used with advantage by Infomate which can exist as more than one suspended activity. The data recording task is defined by the user to collect the data in the way that he wants. All the necessary prompts and data checks can be specified so that the data set can be checked as it is collected. This is achieved by writing a set of instructions describing how this is to be done. These instructions are a sort of Infomate program and termed a 'Schema', which can be read into Infomate and compiled. After compilation Infomate becomes tailored to the required task. If the Schema does not allow you to do what you want, or you change your requirement you can simply jump into PipeDream change the Schema and recompile to test your changes. Once a Schema does exactly as required then the file can be permanently stored ready for use again at a later date. Complicated data capture sequences can be accommodated by breaking them down into simple steps and writing a suite of schamas to do the job.
The package consists of a 128K ROM containing the Infomate application, an A4 sized Manual of 182 pages with a tutorial section of 102 pages. In addition there is a 3.5" DOS format floppy containing a library of Schema files. Infomate requires a Z88 with at least 128K RAM in slot 1. After installing the Infomate card in slot 2, inspection of the Index shows the Infomate application itself, together with PCLink II and Rangerlink which are incorporated and supplied under licence.
Often the value and utility of software is determined by the quality of the manual. The Infomate manual is written in a light but clear style and starts at the most basic level describing all the hardware needed for infomate and how it all fits together.
The tutorial section of the manual defines the terms used and explains the details of the Schema language taking the reader through the facilities offered by Infomate gradually going into greater depth and introducing more complex schemas. A number of example Schema files are given in the manual, and these are repeated and augmented by many more examples on the library disk. The schemas on the disk are well commented and give examples of the way in which more complicated data collection routines may be constructed. Examples are also given of the use of timing, event classification and counting e.g. the classification and counting of insect species. Once the general principles have been established shortcuts are introduced, and the incorporation of data checks. BASIC statements can also be incorporated in the schema to allow some data processing. The use of the serial port to interface with other electronic equipment is also covered as is timing, and counting of items in categories. There is a section of the manual devoted to linking the Z88 to other computers to facilitate movement of the collected data to larger machines. There is a file conversion module built into Infomate which offers conversion to and from Infomate to Excel-Mac text file, Lotus 123 .PRN file or PipeDream Text.
The reference section is laid out in the order in which the schema file uses the commands, this makes it much easier to find the detailed descriptions of each command. As one would expect details of syntax and purpose of each command is provided, together with details of the 12 device drivers which allow Infomate to talk to and understand a wide range of electronic scales, calipers and other devices. Circuit diagrams to connect many of the devices and for connection to other computers are also given.
In addition to the manual, the HELP facility provided by the Z88 is well used by Infomate which has some 25 screen pages of help giving short reminders of Schema syntax etc.
The essential element of Infomate is the Schema, as this is the way your data collection is defined. The schema divides into two parts, the first part defines the identification and data fields, and the second is the program which gathers the data. When starting to set up Infomate to collect data one must first plan the format of the data file and the way in which the data will be presented, both numbers and letters, can be used in data fields.
The development of a schema is quite a simple matter using PipeDream. Once the text has been typed in it is saved to RAM file and Infomate entered by pressing ZI, select compile from the main menu and watch. If the schema compiles without fault it can be run, if there are compilation errors or runtime errors they can easily be corrected by pressing P to go back into PipeDream, and the whole process repeated.
Infomate can do so many things that I cannot claim to have tested it in all circumstances. However I have used it to collect a large data set of numbers of objects which was achieved very easily once the schema had been fully developed. In another example, I used the ability to take records directly from a Mettler balance which it did faultlessly. Infomate has a couple of features which are not available on the basic Z88 but make the use of the Z88 as a data collector truly feasible. The most useful is the option to change the size of the text in the screen to large characters 11mm high by 5mm wide which allow the machine to be used and the display read in almost any situation. The other is the option to provide a numeric keypad using the keys M J K L U I O P 7 8 9 0 on the keyboard, this feature once selected can be turned on and off with the CAPS LOCK key or for momentary use SHIFT number will give letters.
It is very easy to write a schema file which allows you to collect the data, however it is more difficult to work out a schema which incorporates all the required checks to catch all possibilities for error. In every situation of data collection, mistakes in entering data will always occur, Infomate has been written to allow easy ways of correcting these mistakes. If you realise that the previous entry was wrong then pressing up arrow will step back through the schema allowing you to correct the entry, if, however the record has been written to the file it can be examined using the View/Edit module of Infomate which enables the recorded data to be corrected.
An important aspect of data collection is data security. The use of computers which have a notorious reputation for crashing and destroying hard won and irreplaceable data have made the authors of Infomate consider this possibility very seriously. The most obvious way that files may be secured is to use the filer to save the data file to EPROM at regular intervals while collecting the data, however it would be possible to fill up a 32k EPROM with successive copies of the same file which is rather wasteful of space. Infomate has two methods of providing non volatile records of data as it is collected. If the serial port is not being used for data collection then Infomate can be configured to send each record to a printer to provide a hard copy, or more conveniently, in addition to storing the data in a RAM file, Infomate has a specially written facility which can save each record to an open logfile on an EPROM thus giving the security of EPROM storage without wasting space in the EPROM.
I have only two major criticisms of Infomate. The first involves the identification of data in data files. Data files contain only the records collected and are identified only by their filename, which may be adequate for the Z88 which allows 12 characters plus a 3 character extension for filenames. However, if files are to be transferred to a PC then only 8 character filenames can be used, moreover longer filenames will be truncated on transfer which may result in overwriting PC files where names differ only in the truncated part. I would like to include within the file additional information about the dataset e.g. the name of the experiment, the number and date of the sampling, and what the sample is. All this information is difficult to convey in an 8 character filename. It would be possible to load the completed data into PipeDream and add the information but it would be safer to enter it as you start the data capture process. As some data analysis packages would not be able to handle comments in the data, the facility to include or exclude the comments would be an advantage.
The second criticism involves the way Infomate uses named data files. The name of the data file is specified in the schema, this file grows as the data is collected. When a new data file is initiated, Infomate protects the existing data file by refusing to open a new file before the old one has been renamed. In this way it is possible to use the same schema to collect the same information from several experiments but only after the previous data set is completed and renamed. The alternative to this would be to edit the schema with a new data filename and recompiling it before the measurements from each experiment were made. The sorts of measurements commonly made in the course of my work mean that the data files are not completed on one day but will require more data collected at a later occasion e.g. fresh weight of material weighed on one day and oven dried weight of the same material on the second day. To complicate matters more, there may be several incomplete data files each with different names. However running one schema is all that is necessary to collect the remaining data. To solve this problem either an error prone series of file renaming procedures is needed or the schema will have to be edited and recompiled for each data file. If it were possible to specify the data file at run-time then once schemas were developed for a particular purpose then they would not need to be constantly edited.
The version of Infomate reviewed is v2.04. It is a fully mature application which has been extensively tested in real data collection situations by the NZ Ministry of Agriculture and Fisheries. There is an excellent manual which is easy to read and contains only one error that I am aware of. Infomate is able to accommodate many data collection tasks, however, I have only been able to test a few aspects, all of which have worked faultlessly. Since the way in which Infomate collects data is dependant only on the limitations of the person writing the schema and on the hardware involved it is possible that Infomate could be used for most data collection tasks. Infomate is also good value for money as it costs around £200 + VAT which means that a complete data collection package including sufficient Z88 hardware and software to download to a PC can be obtained for between £500 to £600, which must be the cheapest totally flexible data collection system available. As you can see from these comments I think that Infomate is an extremely powerful system and should be seriously considered for a wide range of data collection tasks. However I do have some reservations. While it may be no problem for Z88 enthusiasts to constantly tinker with schema files and recompile them just to ensure that data file names match the data collected my experience suggests that the less computer literate technicians and casual users would experience sufficient difficulty to discourage them from using the system. I think it would be a considerable improvement if data file names could be specified at runtime thus allowing developed schema files to be held in libraries.
Infomate is available in the UK from Ranger Computers Ltd., Ranger House, 2 Meeting Lane, Duston Northampton, NN5 6JG. or in New Zealand from: Engineering Development Group, MAF, Ruakura Agricultural Centre, Hamilton, New Zealand.
Back to the Z88 home page