Abstract:
The present invention relates to an apparatus for connection to a communication bus, in particular an apparatus for encoding the status of several emergency devices for communication across an AS-interface. A data code indicative of a collective state of one or more subsets of the emergency devices is communicated during cyclic communication from the slave to the master whereas information indicative of the individual states of the emergency devices is communicated during acyclic communication from the slave to the master.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a non-provisional application claiming no benefit of an earlier filed application. 
       STATEMENT OF GOVERNMENT INTEREST 
       [0002]    The subject matter of this application was not carried out under contract with the government of the United States. 
       BACKGROUND OF THE INVENTION 
       [0003]    1. Field of the Invention 
         [0004]    The present invention relates to an apparatus for connection to a communication bus. More specifically, it relates to an apparatus for encoding the status of several emergency switches for communication across a so-called AS-interface. 
         [0005]    2. Description of the Related Art 
         [0006]    The Aktuator-Sensor-Interface, typically referred to as an AS-interface or AS-i, is a two-wire master-slave bus system as described in “AS-Interface, The Automation Solution” published 2002 by the AS-International Association, Zum Taubengarten 52, 63571 Gelnhausen, Germany, the full content of which is hereby incorporated by reference. The AS-interface has been standardized in European standard EN 50295, the full content of which is hereby incorporated by reference. An alternative version of the AS-interface has been standardized in IEC Standard 62026-2, the full content of which is hereby incorporated by reference. Bus systems compliant with any of the aforementioned references may be termed an AS-interface. 
         [0007]    The two wires of an AS-interface are used for data communication and power supply. An AS-interface has a single master node (hereinafter also just “master”) and a plurality of slave nodes node (hereinafter also just “slave”). The master queries each of the slaves individually. In other words, only the queried slave responds. The master queries each of the slaves sequentially. In other words, the master queries each of the slaves, one after the other, in accordance with a predetermined sequence. Such a sequential querying of all slaves is designated as a cycle. Once all slaves have been sequentially queried by the master, the cycle is repeated. Between any two cycles, the master may exchange data with any one of the slaves. The master queries the slaves in accordance with a predetermined timing. 
         [0008]    In the context of an AS-interface, the exchange of data between the master and a slave during a cycle is termed cyclic communication, and the exchange of data between the master and a slave between any two cycles is termed acyclic communication. Hereinafter, data communicated in an AS-interface by cyclic communication are referred to as data codes, and data communicated in an AS-interface by acyclic communication are referred to as parameters or parameter codes. 
         [0009]    The AS-interface specification includes so-called “Safety at Work” provisions that allow both safety information and normal data to be communicated across the same AS-i cable. For example, the emergency wiring of a machine can be integrated into the control wiring of that machine without significant additional overhead, yet while complying with the requirements of Safety Integrity Level 3 (SIL3) of IEC standard 61508 and Category 4 of European standard EN 954-1. 
         [0010]    To ensure secure querying of safety-relevant slaves that are connected to safety components such as emergency buttons and that supply corresponding safety signals, the (querying/request) data packets that are sent from the master to safety-relevant slaves as well as the (response) data packets that are sent from a safety-relevant slave to the master during cyclic communication include special bit patterns that are several bits in length. Specifically, a secure slave, i.e. a slave compliant with the AS-i “Safety at Work” provisions, codes safety relevant information, e.g. the information “emergency button not activated,” into a 32-bit long codeword, four respective bits of which are communicated per cycle over a consecutive sequence of eight cycles. 
         [0011]    The use of 32-bit codewords theoretically allows for over four billion, namely 2 32 , different codewords. However, the AS-i specification includes rules that restrict the available codewords to roughly 950,000 possibilities. The available codewords are centrally administered and individually issued to ensure that each secure AS-i slave is globally uniquely identifiable based on the “fingerprint” of its codeword(s). 
         [0012]    In accordance with the AS-i “Safety at Work” provisions, a safety monitor monitors the data communicated between the master and any secure slaves during cyclic communication. If the safety monitor detects a codeword from a secure slave that, instead of the expected codeword, contains a zeroed bit pair at the beginning and/or the end of the four bits communicated in a respective cycle, the safety monitor activates the safety state associated with the respective secure slave. In the case of a secure slave that transmits information indicative of the state of an emergency button on a machine, for example, divergence from the expected codeword indicating that the emergency button has not been activated could trigger the safety monitor to cut off all power to that machine and to perhaps activate an emergency braking mechanism for that machine. 
         [0013]    In practice, it is often desired to install safety-relevant devices, e.g. emergency buttons, door contact switches, etc., at various positions in an installation. Conventionally, networking these safety-relevant devices via an AS-interface requires a corresponding number of secure slaves, which is impractical. Alternatively, the safety-relevant devices can be connected in series. In latter case, however, when one of the serially connected, safety-relevant devices is activated, the safety monitor receives no information specifying which of the serially connected, safety-relevant devices has been activated. While this lack of specific information may be irrelevant for many safety aspects of an installation, e.g. for ensuring that the appropriate machine or that the overall installation is shut down, it is generally desirable to obtain such information e.g. for guiding firefighting or rescue crews or for allowing the “fault” to be pinpointed and remedied by maintenance personnel. 
         [0014]    Similar problems can arise when networking numerous devices via other, i.e. non-AS-i, bus systems or when networking numerous non-safety-critical devices via an AS-interface. 
         [0015]    It is an object of the present invention to overcome these deficiencies of the prior art. 
       BRIEF SUMMARY OF THE INVENTION 
       [0016]    In a broad aspect, the invention can be seen in an apparatus for coding a plurality of substantially binary input signals and for outputting the coded signals as bus signals for communication on a bus, i.e. as a bus node circuit. Similarly, the invention can be seen in method comprising the steps of coding a plurality of substantially binary input signals and outputting the coded signals as bus signals for communication on a bus. 
         [0017]    In an embodiment of the invention, a first bus signal is output that is representative of a collective state of two or more of the plurality of substantially binary input signals and a second bus signal is output that is representative of an individual state of each of said substantially binary input signals. For example, if each of the plurality of substantially binary input signals is indicative of whether a respective emergency switch has been activated, the first bus signal can be representative of whether any of the emergency switches has been activated, and the second bus signal can be representative of the individual activation states of the emergency switches. In an AS-interface, the first bus signal can be communicated during cyclic communication between the master and a secure slave, i.e. as a data code (signal) in the form of the predefined codeword associated with the secure slave or an appropriately zeroed (as described above) variant thereof, and the second bus signal can be communicated during acyclic communication between the master and a secure slave, i.e. as a parameter code (signal) that is independent of the predefined codeword associated with the secure slave. 
         [0018]    In an embodiment of the invention, at least two bits of the data code (signal) are representative of a collective state of two or more of the plurality of substantially binary input signals. To improve upon the reliability of the data codes, the state of the at least two bits can be determined by independent means, e.g. by identical, yet redundant means. In this fashion, the requirements of European standard EN 954 can be fulfilled. 
         [0019]    In an embodiment of the invention, a series circuit is employed to process the two or more substantially binary input signals to generate a signal that is representative of the collective state of the two or more substantially binary input signals. Such a series circuit is simple to manufacture, low in cost, yet reliable. The series circuit can be simply and cost-effectively implemented by a chain of serially connected switching devices. 
         [0020]    In an embodiment of the invention, the inputs of the apparatus that receive the plurality of substantially binary input signals are electrically insulated from the outputs of the apparatus that output the bus signals. This ensures that the bus is not disturbed by extraneous signals. This electrical insulation can be achieved by optocouplers, digital magnetic isolators, relays or other electrically insulating signal transmission devices/electrically insulating switching devices situated e.g. between the inputs and the bus interface circuitry of the apparatus. If employed in the aforementioned series circuit, electrically insulating switching devices can simultaneously fulfill two functions within the apparatus. 
         [0021]    In an embodiment of the invention as a slave node circuit for encoding the status of several emergency devices for communication across an AS-interface, a data code indicative of a collective state of one or more subsets of the emergency devices is communicated during cyclic communication from the slave to the master whereas information indicative of the individual states of the emergency devices is communicated during acyclic communication from the slave to the master. 
         [0022]    While the present description may, for the sake of brevity, limit itself to a description of the invention as an apparatus, the teachings of this specification are to be understood as applying equally to a method capable of effecting the functionality of the described apparatus, i.e. a method comprising steps that effect the results of the apparatus. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0023]    The novel features of the invention, as well as the invention itself, both as to its structure and its operation will be best understood from the accompanying FIGURE, taken in conjunction with the accompanying description. The FIGURE shows: 
           [0024]      FIG. 1  a bus node circuit in accordance with an embodiment of the invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0025]      FIG. 1  schematically illustrates a bus node circuit  100  in accordance with an embodiment of the invention. The illustrated bus node circuit  100  constitutes a secure server node of an AS-interface. Bus node circuit  100  includes an AS-i interface IC  10 , a code generator  20 , optocouplers  30 A to  30 H, optocouplers  40 A to  40 D. The bus node circuit  100  is connected to emergency switches  50 A to  50 D. 
         [0026]    Code generator  20  serves to generate the 32-bit codeword associated with the bus node circuit four bits at a time (codebit  0  to codebit  3 ) as described supra. 
         [0027]    The illustrated strobe signal of AS-i interface IC  10  serves to trigger generation and output of the next four-bit sub-code of the 32-bit codeword from code generator  20 . Various implementations for codeword generator  20  are well known in the art. For example, code generator  20  can be implemented by a microprocessor as described in paragraph [0004] of German laid-open application DE 10 20 009 A1. The teaching thereof can be paraphrased as teaching that, to generate and provide the bit pattern, the slave comprises, in addition to the interface, a further, external circuit, typically in the form of a microprocessor, that includes memory means (e.g. solid state memory) for providing the multi-bit information constituting the (sub-)codeword(s), a counter that points at a location in memory, a timing device synched to the timing of communication on the AS-i bus, a plurality of output channels corresponding in number to the number of bits of the information (e.g. sub-codeword) to be provided, as well as an input impulse detector for triggering the timing device during valid AS-i communication, wherein a program for controlling operation is provided in a storage area of the microprocessor. 
         [0028]    The bus node circuit  100  is configured such that an input terminal of optocoupler  40 A is connected to a power supply Vcc via emergency switch  50 A and that the other input terminal of optocoupler  40 A is connected to ground via the light emitting diodes (LED&#39;s) of optocouplers  30 A and  30 B. Accordingly, the respective LED&#39;s of optocouplers  40 A,  30 A and  30 B emit light when emergency switch  50 A is closed (inactivated) and emit no light when emergency switch  50 A is open (activated). Optocouplers  40 B,  30 C and  30 D are similarly connected to emergency switch  50 B. Optocouplers  40 C,  30 E and  30 F are similarly connected to emergency switch  50 C. Optocouplers  40 D,  30 G and  30 H are similarly connected to emergency switch  50 D. 
         [0029]    The bus node circuit  100  is configured such that the collector of the phototransistor that constitutes an output terminal of optocoupler  40 A is connected to a power supply Vcc. The emitter of the phototransistor that constitutes an output terminal of optocoupler  40 A is connected to parameter input terminal P 0  of AS-i interface IC  10 . Accordingly, when emergency switch  50 A is closed, the phototransistor of optocoupler  40 A receives light from the input LED of optocoupler  40 A, and parameter input terminal P 0  of AS-i interface IC  10  is connected to power supply Vcc, i.e. is held at a binary “1” level. When emergency switch  50 A is activated, the phototransistor of optocoupler  40 A receives no light, and parameter input terminal P 0  of AS-i interface IC  10  is disconnected from power supply Vcc, i.e. falls to a binary zero level. Parameter input terminals P 1 , P 2  and P 3  respectively interact with optocouplers  40 B,  40 C and  40 D and emergency switches  50 B,  50 C and  50 D in a similar fashion. 
         [0030]    The bus node circuit  100  is configured such that the collector of the phototransistor that constitutes an output terminal of optocoupler  30 A is connected to a “codebit  0 ” output terminal of code generator  20 . The emitter of the phototransistor that constitutes an output terminal of optocoupler  30 A is connected to the collector of the phototransistor that constitutes an output terminal of optocoupler  30 C, and the emitter of the phototransistor that constitutes an output terminal of optocoupler  30 C is connected to data input terminal “DIN  0 ” of AS-i interface IC  10 . Optocouplers  30 A and  30 C thus constitute a series circuit, the output of which depends, by virtue of the connection of optocouplers  30 A and  30 C to emergency switches  50 A and  50 B, respectively, on the state of optocouplers  30 A and  30 C. Specifically, when both emergency switch  50 A and emergency switch  50 B are closed, the phototransistor of optocoupler  30 A receives light from the input LED of optocoupler  30 A due to the closure of emergency switch  50 A, the phototransistor of optocoupler  30 C receives light from the input LED of optocoupler  30 C due to the closure of emergency switch  50 B, and, as a result, data input terminal “DIN  0 ” of AS-i interface IC  10  is connected to the “codebit  0 ” output terminal of code generator  20 . When either (or both) of emergency switches  50 A or  50 B is/are activated, the phototransistor of optocoupler  30 A/ 30 C, as the case may be, receives no light, and data input terminal “DIN o” of AS-i interface IC  10  is disconnected from the “codebit  0 ” output terminal of code generator  20 , i.e. falls to a binary zero level. The output of optocouplers  30 B and  30 D to data input terminal “DIN  1 ” of AS-i interface IC  10  similarly depends on the state of emergency switches  50 A and  50 B as well as codebit  1  of code generator  20 . The output of optocouplers  30 E and  30 G to data input terminal “DIN  2 ” of AS-i interface IC  10  similarly depends on the state of emergency switches  50 C and  50 D as well as codebit  2  of code generator  20 . The output of optocouplers  30 F and  30 H to data input terminal “DIN  3 ” of AS-i interface IC  10  similarly depends on the state of emergency switches  50 C and  50 D as well as codebit  3  of code generator  20 . 
         [0031]    Although the inputs of optocouplers  30 A,  30 C,  30 E and  30  G are shown as being respectively connected in series with optocouplers  40 A to  40 D to emergency switches  50 A to  50 D, the inputs of optocouplers  30 A,  30 C,  30 E and  30  G could be directly connected to emergency switches  50 A to  50 D, e.g. could be connected in parallel with the inputs of optocouplers  40 A to  40 D to emergency switches  50 A to  50 D. 
         [0032]    AS-i interface IC  10  interfaces the signals received via data inputs “DIN  0 ” to “DIN  3 ” and parameter inputs P 0  to P 3  in an AS-i-compliant manner to an AS-interface, i.e. to the two signal lines of an AS-i-compliant bus, via the two bus signal outputs AS-i− and AS-i+. Specifically, the signals, i.e. binary signal levels, received via data inputs “DIN  0 ” to “DIN  3 ” are interfaced to be communicated as the four bits communicated from the secure slave to the master per cycle. Similarly, the signals, i.e. binary signal levels, received via parameter inputs P 0  to P 3  are interfaced to be acyclically communicated from the secure slave to the master as binary parameter codes between cycles. 
         [0033]    As is apparent from the above description of the bus node circuit and its function, activation of any of emergency switches  50 A to  50 D will result in communication of a codeword from the secure slave that, instead of the correct codeword generated by the code generator  20 , contains a zeroed bit pair at the beginning and/or the end, as the case may be, of the four bits communicated in a respective cycle. This “fault” or “emergency” condition will be recognized by the safety monitor that will then activate the appropriate safety state, i.e. the safety state associated with the secure slave whose codeword contained the zeroed bits. Later, in one or more rounds of acyclic communication, the safety monitor and/or the master will receive parameter codes based on the input signals received at parameter input terminals P 0  to P 3  that specify the emergency switch or similar safety device whose activation triggered to the “fault” or “emergency” condition. In this respect, it is important to note that recognition of a “fault” or “emergency” condition by the safety monitor does not ordinarily lead to termination of communication over the AS-interface. 
         [0034]    As stated above, the illustrated strobe signal of AS-i interface IC  10  serves to trigger generation and output of the next four-bit sub-code of the 32-bit codeword from code generator  20 . Any circuit that interfaces data input signals and parameter input signals to a bus network, e.g. provides the interface functionality described in this specification, can be used as AS-i interface IC  10 . For example, the integrated circuit commercially available under the designation “ASI4UC-G1-ST” from ZMD America Inc., 201 Old Country Road, Ste 204, Melville, N.Y. 11747 can be employed as AS-i interface IC  10 . 
         [0035]    In the illustrated embodiment, the outputs of two safety devices are processed in series via respective pairs of optocouplers  30 A to  30 H. This principle can be extended to a larger number of safety devices. In other words, the outputs of three or more safety devices can be processed in series to influence the signal provided to any of data input terminals “DIN  0 ” to “DIN  3 .” In general, the signal output to any of data input terminals “DIN  0 ” to “DIN  3 ” is indicative of a collective state of a subset of the safety devices connected to the bus node circuitry. For example, the signal output to any of data input terminals “DIN  0 ” to “DIN  3 ” can be indicative of a deviation of the state any of the subset of the safety devices connected to the bus node circuitry from an expected state of the respective safety device. To specify the specific safety device that triggered the “fault” or “emergency” condition, the interface circuitry can include a larger number of parameter input terminals that receive a signal from a respective one of the safety devices, and/or alternative circuitry can be used that uniquely codes the identity of the specific safety device that triggered the “fault” or emergency condition to a number of bits that is smaller than the number of safety devices connected to the bus node circuitry. Such circuitry for uniquely coding the identity of a single signal having a value that differs from a plurality of other signals is known in the art. 
         [0036]    In the illustrated embodiment, optocouplers are used as switching elements and for electrical insulation of the inputs of the bus node circuitry from the outputs of the bus node circuitry. However, digital magnetic isolators, relays or other electrically insulating signal transmission devices/electrically insulating switching devices can be likewise used in the present invention, e.g. in lieu of the optocouplers or at appropriate locations as known to the person skilled in the art in alternative circuit configurations of the present invention. Similarly, conventional switching devices can be combined with electrically insulating signal transmission devices/electrically insulating switching devices to provide the optional electrical insulation in addition to the desired coding and interface functionality of the present invention. 
         [0037]    The use of independent circuitry, based on the outputs of the same subset of safety devices connected to the bus node circuitry, to zero a bit pair at the beginning and/or the end, as the case may be, of the four bits communicated in a respective cycle increases the reliability of signals communicated by the bus node as compared to a zeroing of a single bit of the four bits or the use of non-independent circuitry. Nonetheless, this circuitry need not zero bit pairs and need not be independently implemented. Any circuitry that outputs one or more signals indicative of a “fault” or “emergency” condition in one or more predetermined subsets of the safety devices connected to the bus node circuitry can be used in place of illustrated circuit configuration of optocouplers  30 A to  30 H. 
         [0038]    Although a secure slave node for an AS-interface is illustrated and described, the present invention is equally applicable to any type of bus node circuitry for any type of bus system. In the present specification, data communicated in an AS-interface by cyclic communication are referred to as data codes, and data communicated in an AS-interface by acyclic communication are referred to as parameters or parameter codes. However, since the present invention is applicable to bus systems other than AS-interfaces, the terms data code, parameter and parameter code as used in the present specification are not to be interpreted per se as limiting to within the aforementioned contextual definition of these terms. Instead, the term data code is to be understood in the general sense of information that is consistently communicated at a time, in a manner and/or in a form that is distinct from the time, manner or form at/in which other information, which other information is designated by the term parameter or parameter code, is communicated in the bus environment for which the respective bus node circuitry has been conceived. Of the two distinct times, manners and/or forms of communication, data codes designate information that is communicated at a time, in a manner and/or in a form that is more reliable and/or faster and/or at briefer intervals than the information designated as parameters or parameter codes in the relevant bus environment. 
         [0039]    Further information with regard to the terminology used in this specification as well as techniques and hardware employable for implementing the known features of the invention can be found in the aforementioned documents incorporated into the present specification by reference. 
         [0040]    While various embodiments of the present invention have been disclosed and described in detail herein, it will be apparent to those skilled in the art that various changes may be made to the configuration, operation and form of the invention without departing from the spirit and scope thereof. In particular, it is noted that the respective features of the invention, even those disclosed solely in combination with other features of the invention, may be combined in any configuration excepting those readily apparent to the person skilled in the art as nonsensical. Likewise, use of the singular and plural is solely for the sake of illustration and is not to be interpreted as limiting. Except where the contrary is explicitly noted, the plural may be replaced by the singular and vice-versa.