m®ll@g Design of a microcomputer-based meetings system Signalling presence, indicating votes and determining quorum with a normal 'show of hands' system is very time consuming in a large meeting. H AI-Riahi and M Lanigan* have designed an electronic system which provides quick and easy signalling for over a thousand members This paper describes the design and implementation o f a meetings system using a microcomputer. In this control system, the following achievements were made: counting and checking the voting in a very short time; establishing who is/is not present at the meeting; establishing whether/ not the meeting is quorate; and controlling the debate by being able to call various members to speak. The meetings system provides most o f the functions o f a manual system but significantly reduces the time wastage and hence the waste o f m o n e y - by allowing the chairman and the members o f the meeting to communicate with each other by way o f electronic signals in a controlled manner and by relegating routine counting and listchecking tasks to a microcomputer.
One of the main reasons for using a microprocessor in a control system is its flexibility since many systems which use microprocessors could do the same job with small scale logic packages. In a system using a microprocessor, however, only program changes are needed for small system modifications and the system reliability gains from the reduction in the number of integrated circuits. This project deals with one particular application where the microprocessor is used to assist the control of meetings, such as a Senate meeting, faculty board, Parliamentary meetings, attendance of students in class, etc. At universities, the Senate or faculty board meetings, for example, are controlled by the chairman, who then has the time-consuming job of counting hands when votes are taken. A similar difficulty arises when he has to know whether people are absent or not or whether someone is qualified to vote. Again, when attempting to assesswhether a quorum is present, the chairman is faced with the problem of time. This means that a lot of forethought and organization must go into performing what are basically only routine tasks. The main idea of this digital system is that there should be a program in ROM to control the insertion of data, e.g. names and addresses of each member, before each meeting, into the System's RAM. The microcomputer will then send the address of each member, via a transmission ring, to the subscriber station [Subs-S). Each address channel will then
return a message from the Subs-S to the computer on the same ring, such as IYES, NO, ABSTAIN . . . . etc.). It is clear that each address will match only one Subs-S. By this technique, the computer can recognize who is present or not present. It can also glean other information from analysing the message associated with each address. The system is designed for a maximum of 1023 addresses. Access points can be extended and also subscribers stations can be removed, interchanged with each other, or additional subscribers stations can be included at these access points. This system is designed to connect all Subs-Ss and the microcomputer through a ring to make the system more flexible. The ring carries data laddresses and messages) to and from the microcomputer. The system still works when there is one break in the ring. This ring is more economical than the alternative star configuration, though it is more vulnerable to breaks. Figure I shows the connection of subscribers' units and the chairman unit to the ring. The microcomputer-based meetings system must try to optimize advantages and minimize disadvantages thus: • • • • •
displaying results quickly giving a visual representation of 'yes', 'no' and 'abstain' providing a change-mind facility minimizing counting error fast listing of absentees using a line printer, etc
An important design criterion is that the new system must both provide all the features available in the old manual system and be more convenient.
SYSTEM ARCHITECTURE The process of data transmission through the ring is to send data from a source after a certain manipulation with suitable form and shape through the ring cable (up to 100 m length) and to reproduce the data at the receiver section without any error.
Department of Electrical Engineering& Electronics, University of Liverpool, Brownlow Hill, PC Box 147, Liverpool L69 3BX, UK *The Electronics Laboratory, University of Kent, Canterbury, Kent CT2 7NT, UK
vol 6 no 3 april 82
Figure I Connection o f subscriber unit and the chairman unit to the ring system
01 41-9331/82/0301 35-07 $03.00 © 1982 Butterworth & Co (Publishers) Ltd
135
L
I Data ~leCtlO q sw,tches
I
ransm'tter sect,or
I
?
I I
Cure.rotor
s~ct ion
Address selection Swltr~s
'L__ I
- ~
Buffer Subscriber t,qlt
_j!
Perm,ss~on
to
speak logic CIrCUIt
II
R~ng
-1 I
~:[
Buffer
I
I! Ii Oscq IcIor
ControI
Data selection switches
Rece,ver section
section
I
nne
"'~
..........
Ij =
| Buffer" Chairman unit
I
M . c r o c ~ p u t e r unit PaDer tape redder
I .._
I
i
I
I
I I
iJ
I Control line
I VDU or TTY
.... J
..........
J
t .....
i
i
PIA-
PIA- 2
!L
i
J
1 I
Databus
MPU
L
Perlphera I devices
Control hne ROM
Ii
Data and o~ress bus
RAM
Figure 2 Block diagram of the whole meetings system
136
microprocessors and microsystems
• • •
The system is divided into three parts (or units):
Subscriber unit
microcomputer chairman subscriber
The meetings system is built to manipulate data of 1023 different addresses within the range (1-1023), and each Sub-S should have only one address (any number from 1 to 1023) during the meeting. The design of the Subs-S is based on matching the received address and the code which has been selected by the address-selection switches so that the message selected by the data-selection switches of the same Sub-S can be sent back to the ring behind the address. This is shown in Figure 4.
Figure 2 gives an overall block diagram of the meetings system.
Chairman unit This unit is organized to receive and transmit data, to and from the ring as shown in Figure 3. The meeting-can be controlled by the chairman through this unit. The unit contains two main parts, the transmitter section and the receiver section, a design used simply to reduce the cost. One side is connected to the ring and the other to the microcomputer. All I/O lines of this unit are buffered.
Receiver section As in the receiver section of the Chairman-unit, this section of the subscriber unit also receives serial data through an 11-bit shift register. The comparator will compare the 10 parallel output lines of the shift register with the code selected by the address-selection switches (the eleventh one is used to drive the permission-to-speak (PTS) LED logic circuit). When there is any coincidence, the output of the camparator will be used to control the same logic gates (see Figure 4). Here the buffer is used to reduce the mismatching between the transmission line and the device.
Transmitter section This section of the chairman unit (as shown in Figure 3) was designed to receive parallel data from the peripheral interface adapter (PIA-1) of the microcomputer through the buffer and to send this data, in serial form, to the ring. This conversion from parallel to serial is done by using a parallel-to-serial 11-bit shift register with the support of the other circuitry and some control lines.
Transmitter section Figure 2 shows the connection of the transmitter, on one side to the data-selection switches and on the other to the transmission line {the ring), through the buffer. The 8-bit shift register is used to transfer the parallel input data (which is selected by the data-selection switches) to the ring in a serial form.
Receiver section The data received by this section (also in Figure 3) is in serial form because of the nature of the ring. A serial-toparallel 5-bit shift register is used to deliver data in a parallel form to the second parallel interface adaptor (PIA-2) of the microcomputer through the Tri-state logic circuit with support of other circuitry and some control lines.
SYSTEM REALIZATION Hardware The chairman unit is desi:~ned to receive 11-bit memory
Select station (SS) hne Clock hne Doto hr~
14
131111
~
Buffer 74 17
!k HZ
r,
I
3 3 0 0 pF
~'1
'IZI,:
1
I
L
4
13141.5
t 'D3 2
I 2A
O b c d
15A,15B "~," ' ~P-S 11-bpt S ~ _ ~ To t ~ b t t s ( 3 - G ) o f 54 3 14131211" PIA-2 port B
J1
Suffer DO 1 2 3 CA2
Figure 3 Block diagram of the chairman unit
vol 6 no 3 april 82
4 56
A - SJde
7 ID01 I PIA-1
23 B-side
4 5 6 7 CB1
bto le I,o 137
"
1 - -
*
%V Address
selection
switches
I
i
:
i
'
_.__j m
7
cK_2
, L
!
I
i
5
4
! i
, 3
!
,
,
2
O
Comparator 9
¢-
6
I
8
7
6
5
4
3
2
P/CD button
1
0
I
From '
Matching output
'
I
I
T
r---
1
[
I
_
,
I
I
A
J
Sena~ to parallel 41 -btt sndt r e g i s t e r
I
SS pu~se
-•
I
-T'
o/c
Buffer Data OtP Poro.let to Serial 8-b,t shift neglster
g
o
• i 1
[.
I
2
3
1
,
4
6
Itl,
I
[Monosto0,eJ
.5
J
i
Data selection swltct~s
The R~ng
Figure 4 Block diagram of the subscriber unit length (see Figure 3) from PIA-1 (the eight bits (0-7) of port A and three bits (0-2) of port B), the lines from the said bits are used to display information on the eightcharacter display by using different control lines. Bit 8 of port B is used to control the transmission of data, while CB1 of PIA-1 is used to control writing on the display. The other three bits (3-5) of port B are used to indicate to the chairman the voting of each member requesting to speak. Select Station (SS) pulse will be generated whenever data need to be sent to the ring, so the comparator of each subscriber station will compare the address-selection switch digits with the address of the data received by the station (see Figure 4). If it is identical, there will be a matched signal generated to control: first, data transmission from the transmitter section of the subscriber station to the ring, and second, the permission-to-speak bit of the message (bit 11). The output of the transmitter section in each subscriber station uses a TTL logic circuit to amplify the data to be transmitted to the ring which is selected by the data-selection switches and also the TTL logic circuit is used here to buffer the device from the ring. The reception of data level by the receiver section of the chairman's unit will be adequate for analysis even if the ring line is long. The data received by the chairman unit from the ring will be controlled by bit 6 of port B of the PIA-2, thus the direction of sending or receiving messages by using the ring technique will not complicate the design of the system and thus add another facility to the ring technique. Three bits (3--5) of the PIA-2 (port B), are used to receive data from
138
the rin~ and also from the chairman units' data-selection switches. The choose between these will be made by the control line CA2 of PIA-1.
Ring As explained earlier the ring has been chosen over the Star. Transmission of signals along lines causes trouble due to noise and the superposition of the signals - this effect increases with the ring. Buffers in both ends of the transmission line (i.e. in front of each subscriber station and also between the ring and the chairman station) are used to get rid of spikes superimposed on the transmission signals. This buffer also minimizes the impedance mismatching problem of the transmission line on the transmitter and the receiver sides. Figure 5 shows the connection of the buffers to the ring. R.ng
I
[~
I
t
I
I ....
i
.......... 'i o~c[~I .
.
.
.
.
L__ Buffer"
[
Figure 5 Block diagram showing the connection of the chairman unit and the subscriber unit to the ring
microprocessors and microsystems
The damping of each signal along the transmission line will cause some interference between the transmitted and the received signals. To get rid of this problem, the meetings system is designed to have a four clock pulse width as a space between the transmitted and the received data (see Figure 6). The output of the transmitter section in the chairman unit is inverted so that the ring's data line will be at high level (about +5 V) when there is no data transmitted. This is because of the Wl RED-OR connection of the receiver and the transmitter terminals of the subscriber station to the ring, as shown in Figure 5.
Eight characters LED disploy
®
®
®
A
Y
N
®
®
®
V
STS
NS
Codes The transmission of data is in binary. The message contains address bits, start-to-speak bits, space and data bits. With a I0 bit address length, the microcomputer can identify 1023 subscriber stations, and the 3 bit data message will send back eight different data states. The number of space bits depends on the design of the receiver section of the chairman unit. Synchronous data transmission requires that a clock signal be transmitted with the message in order to mark the locations of the message bits for the receiver. In addition a selection station synchronization pulse should be transmitted with the message for the receiver to locate the first and last bit of the message. The data format for synchronous data transmission is illustrated in Figure 6.
SYSTEM OPERATION Chairman control unit The chairman control unit has seven switches. It also has got an eight character display to show the voting results,
V
STS/ PTR
NS
CV
CLR
M
Figure 7a View of the chairman unit showing the various switches the absentees and other information (a VDU or TTY can be used instead). Figure 7a shows the organization of the switches, LEDs and the Display of this unit. The switches are divided into two sets. As soon as the Reset switch is pressed, the PTS/VDU switch or STS/PTR switch should be selected to insert the data (names, addresses, etc) to the RAM so that it can be used later on by the system. The first section of the chairman's switches (V, CV and STS) will be accepted by the microcomputer immediately after data insertion and execution of the identity subsystem program. The second part (PTS and NS) will start whenever the STS switch is pressed. The operation of each switch is explained below.
Clock 1 kHz
SS
pulse
l-q°l-Q°°
M essoge bits
i
Address
° ° ° I,L o ---!PTS~,--
Spoce
=!--
Data
=!
The O/P of the comporator when the matching occurs
L
The O/P of the D-flipflop t o I~mJt the number of pulses entemng the 5 - b i t shift reg,ster
I / P clock to the 5-bit S-P shift register
FLFLFLFLFLFLn
Signol from the D- fhpflop to the DB6 p~n of the PIA-2 (B-s~le) indtcotes the end of the rece~wng data
F
Figure 6 Main waveform of the transmission and control signals
vol 6 no 3 april 82
139
Chairman's control switch (M) Any item of information on the display or VDU can be changed by pressing this switch. The absentees will be displayed on the eight character display or on the VDU, as long as this switch remains pressed. This switch is used to control the listing so that it becomes more readable (i.e. to control the speed at which names are changed). This switch should be pressed after selecting any switch to display the relevant information. Check Vote switch (CV) One of the following strings will be displayed if the CV switch is pressed and followed by the M switch. • •
VOTE NLG - vote is not legal VOTE LEG - vote is legal
Voting switch (V) The processor will be ready to display the following strings whenever this switch is pressed. • • •
total YES io the form of YES XXXX total NO in the form of NO XXXX total ABSTAIN in the form of ABS XXXX
The X signify numbers. The strings shown above can be displayed sequentially by pressing the control switch M.
Next speaker switch (NS) This switch is used to display the next name in the RTSL (request to speak list) after the name already on the display or on the VDU or TTY). Maintaining this switch in the on position, whenever the switch M is pressed, the name of the next speaker after the last one on the display will be displayed. Start-to-speak VDU switch (STSIVDU) As soon as this switch is turned on, the second section of the chairman's switches (PTS and NS) will be ready for execution. Whenever the switch M is pressed, the first name in the RTSL will be displayed. After pressing the Reset switch, STS/VDU switch is used to select the VDU/TTY as a peripheral device for inserting data into RAM. Permission-to-speak/Paper tape reader switch (PTS/PTR) Whenever permission to speak decision is made by the chairman, first the member's name should appear on the display, then the PTS switch with the M switch should be pressed to turn on the PTS's LED in front of the member chosen by the chairman. This procedure works the same wa'l as the STS/VDU switch but the PTS/PTR switch is used to select PTR as a peripheral device.
single words have appeared on the VDU/TTY or on the display, the control switch M should be pressed. If, for whatever reason, there is an error in the switch selection, the Reset/Start switch allows reselection.
Subscriber station (Subs-S) Each Subs-S is connected direct to the ring. Each has a keyboard for addresses and data selection as shown in Figure 7b. There are a number of switches with different functions.
Address switches These switches, numbered 0.-9, allow the user to establish his address code to indicate his presence. Yes (Y), no (N) and abstain (A) switches These three switches cater for the three different voting possibilities Request-to-speak switch (RTS) This switch is used to indicate to the chairman that a person wishes to speak. If the chairman wants to know the vote (through the LEDs Y, N, A and Nonvalid) of the member who wishes to speak, the member should press one of the switches (Y, N or A) before pressing PTS switch. Just pressing PTS switch means the person is not eligible to vote. Clear numbers switch (CN) This switch is used to clear the address codes and their corresponding LEDs. This makes the system more flexible because if there is any error within the established address on the keyboard, the address code will be cleared by pressing this switch (also the address LEDs). Clear data present switch (CD/P) This switch is used to clear the Y, N, A, and RTS switches. Data insertion The meetings system is designed to accept data either from a terminal or from a paper tape. The principle of writing data is the same for both devices. The following steps
®Y
N @
®A
RTS @
PTs /
Clear switch (CLR) This switch is used to clear the Y, N, A and Nonvalid LEDs (if there was a vote) to ascertain which one of the LEDs has been turned on, when the name of the person who wishes to speak has been displayed. It is important to remember that in each order (or command) there should not be more than one switch set on, except with the control switch M. Also after each string of messagesor
140
Figure 7b View of the subscriber unit showing the various switches
microprocessors and microsystems
should be followed when a person needs to insert data (names and addresses) into RAM via the terminal. •
• • •
•
•
after pressing the STS/VDU switch, the string 'READY FOR DATA' will appear on the VDU. (In case of a paper tape, the switch PTS/PTR should be pressed) insert the number four digits, e.g. 0035 of members in attendance insert the total number (again four digits) of members eligible to vote insert the successive numbers which represent the members' addresses. The addresses of the voting members should be inserted first then insert the members' names (only the first eight characters of each name will appear on the display) in the same order as inserted above when you have finished inserting data, type in '.'. The string 'DATA RDY' will then appear on the display and on the VDU/TTY
The address of each number should be written in RAM in four decimal numbers, and there should be an equivalent number to it as shown below: Decimal number
Binary code
Equivalent number on the address keyboard of the Subs-S
0025 0513
0000011001 0100000001
430 80
From the above we have seen the number 0513 is decoded into 10 digits, where each digit is equivalent to a certain number. When there is a logic '1 ', this should be substituted by the equivalent number as shown below: 9876543210 0513
01 0 0 0 0 0 0 0 1 80
For the above reason the numbers from 1-1023 should be transferred into this equivalent number. This number should then be given to the relevant member (i.e. in this case the member needs to know only the number 80).
CONCLUSIONS The meetings system provides most of the facilities of a traditional manual voting system as well as other new facilities and greater flexibility. The cost of the system is played off against the significant time saving that it makes possible. Obviously costing depends on the number of subscriber stations, and the sizes and types of peripheral devices. The cost of the chairman unit is approximately £100 and the subscriber unit approximately £10. There are a number of ways in which the existing system
vol 6 no 3 april 82
Figure 8 The complete system - from/eft to right, the three components are the subscriber unit, the microcomputer and the chairman unit can be further developed to yield a more cost-effective and attractive product. It is suggested that the system could be redesigned to reduce the component cost. An audio control system and a large display would provide better communication from the chairman to the members of the meeting. The advantage of the ring technique is in both increased flexibility and reliability. The ring dimensions are only really determined by the dimensions of the room and additional voting units can be connected without any additional cable being required. The reliability of the system depends on the quality of the cable. The ring comprises three wires, more for cheapness than necessity. By using a single cable, the Chairman unit could be less complicated but the system would lose some of its facilities at the subscriber stations, namely the oscillator, digital counter, synchronization bistable and flipflop. This meeting system can be used in other situations than in a voting meeting. Absentees in college and school classes can be counted quickly and easily, wasting as little time as possible for those people who actually turned up -- it would normally take about 5 rain to register the absentees in a class of, say, 100 students. The system could also be used to check absenteeism amongst factory or office workers. The same technique can be modified slightly to be used as a remote control for other instruments with individual addresses. The computer can send and receive information to and from these instruments.
BIBLIOGRAPHY Motorola M6800 microprocessor application manual Motorola, USA McGlynn Microprocessors technology, architecture and applications Wiley, London, UK (1976) Peatman j B The design of digital systems McGraw-Hill, London, UK (1972)
141