Steuervorrichtung und Verfahren zur Steuerung einer Bewegung eines Elementes einer Anlage
austrian Patent Office [0001] The present invention pertains to a control apparatus and a method for controlling a movement of an element of an installation in accordance with the principal claims. [0002] programmable logic controllers (PLC) are nowadays used in manyautomation plants. These can be provided with a program, so as to automate a variety of operations about in a plant is covered. Many SPS-systems are combined with so-called, Motion '-functionality, the occur it enables, even complex movement sequences, which, for example, in machine tools or in the robotics, to control exactly. Such control programs can, in particular in the Motion-range, very high computing require. Therefore be used therefor generally efficient controller or industrial PCs based on universal processors , such as PC- main processors or microcontroller,. As the representatives of such systems should here the term, Automatisierungscontroller' be used. There is talk in compact controllers, programmable logic controllers combine the characteristics of PC-based control systems and, of programmable automation controller, short PAC. [0003] diagram processors be used for some time in the area of about of PCs thereto the Simulation technique, to see to perform calculations for simulations (for example, Marco Di Sarno: " atomistic one simulations on novel processor architectures simulations on diagram processors "; advanced seminar, Modern Physik' at the University of Stuttgart in the simulation came in, 2010), contrary to its original purpose, in other words the rendering of graphics for presentation on screens. In many cases, particularly when it is a question of simple, regular program architectures is, with respect to the sole significant gains can by the use of calculation on universal processorsdiagram processors , such as PC- main processors be achieved. Other special processors , such as network processors Audiooder , can be used for similar purposes. [0004] Nor can dynamically configurable logic components , such as field programmable gate arrays (FPGAs), used to supplement power universal processors are used. Here, deposited in you a configuration, on the respective intended use is specifically designed and also may be generated dynamically, and interpreted by the specialisation a considerable acceleration at a suitable in comparison with the use of a allows universal processor (see, e.g., Gerhard Lienhart : "acceleration hydrodynamic astrophysically simulations with FPGA-reconfigurable co-processors based", thesis at the University of Heidelberg, 2004). [0005] Against this background, it is the task of the present invention, an improved control device and an improved method for controlling a movement of an element to create an installation. [0006] the article This problem is solved by the independent claims. Advantageous configurations result from the subordinate claims. [0007] The present invention creates a control device for controlling a movement of an element of an installation, wherein the control device has the following characteristics: [0008]- a main processor, and [0009]- an auxiliary processor, wherein the auxiliary processor is connected with the main processor and has a computer architecture, the is different from a computer architecture of the main processor, in particular wherein the computer architecture enables a faster processing of predetermined time-varying signals auxiliary processor of the, than the computer architecture of the main processor and wherein the Austrian Patent Office Auxiliary processor is formed, so as to determine an output from the main processor and using the read auxiliary processor input signalauxiliary processor input signal a auxiliary processor output signal and to the main processor, wherein the main processor is formed, to forward read to read in to determine an input signal to determine, using the input signal and to the adjunct processor the auxiliary processor input signal , auxiliary processor output signalauxiliary processor output signal and using the determined by the auxiliary processor to control the movement of the element of the installation a control signal. [0010] the present invention also provides a method for controlling a movement of an element of an installation, wherein a control device has a main processor and an auxiliary processor, wherein the auxiliary processor is connected with the main processor and has a computer architecture, the has a computer architecture of the main processor is different from, in particular wherein the computer architecture enables a faster processing of predetermined time-varying signals auxiliary processor of the, than the computer architecture of the main processor, the method comprising the steps of: [0011]- reading an input signal by the main processor; [0012]-auxiliary processor input signal by the main processor to the adjunct processor in response to outputting a the input signal; [0013]-receiving one of the auxiliary processor output to the main processor auxiliary processor output signal , wherein the adjunct processor provides auxiliary processor input signalauxiliary processor output signal in response to the the; and [0014]-determining a control signal for controlling the movement of the element of the installation by the main processor, wherein the control signal is provided from a main processor in response to the provided auxiliary processor output signal. [0015] From advantage is also a computer program product with program code, a semiconductor memory on a machine-readable carrier such as the, a hard disk memory or an optical memory may be stored and for carrying out the method according to one of the above-described embodiments is used, when the program is executed on a computer or a device. [0016] the present invention therefore creates a computer program with program code for performing or controlling the steps of the procedure described above, when the computer program is executed on a control device. [0017] Under an installation can, for example, a device such as a welding installation in automation technology, a conveyor or the like be understood, such as a gripping arm with a welding gun in which the individual elements are set in motion. Under a computer architecture wiring can be understood may, as the individual switching units of the respective processors are connected with each other. For example, (at least partially) by the computer architecture (i.e. volatile programmable) or a variable (i.e. not-volatile programmable) wiring or solid connection of the individual components of the processor be set. Heat to computer architecture can be optimized with respect to other parameters of the main processor, auxiliary processor than the computer architecture of the. In particular, the auxiliary processor may comprise a computer architecture is designed for, so as to allow a faster processing (time-varying) signals of predetermined. This (time-varying) signals may, for example, signals be predetermined, as they often occur in graphics applications or audio applications. For example, predetermined signals be such, representing a displacement of a pixel in a predetermined direction and distance. Such a signal appears in the Image processing on, but also in the calculation a movement of an element of a plant from a starting point to a destination point. In this way, for calculating the from the element Startzu Austrian the one which can be driven off path from the Patent Office the target point also be used a processor, the specially for such calculations is optimized with respect to a processing speed, for example, from the region of the Image processing using certain graphics processors. [0018] The present invention is based on the recognition to reason that a control of movement of an element of an installation by the outsourcing at least one part of the numeric load in the calculation of control data for the moving element of an installation in a specially designed or optimized processor for dynamic computation procedures , in other words the auxiliary processor, can be carried out very efficiently. Such a (auxiliaries) processor can, for example, be a graphics processor and/or an audio processor, the signals for a graphical output or processed. Audio signals for an output processed. This auxiliary processor can be supplied with higher-level information or data by a main processor, such that substantially only for one part of the functionality of the auxiliary processor , i.e. certain tasks of computation in the processing of a signal-processing instruction can be restricted, particularly has been optimized for which the auxiliary processor. In this way the special capacity may be used in the region of the processing of dynamic signals auxiliary processor of the support, wherein the high level controller (i.e. the determination of the control signals for the movement of an element) of the installation is done by the simple and flexible a host computer to be programmed. [0019] The present invention offers the advantage that by the combination of the main processor an essential adjunct processor optimized for certain functionalities with the speeding up the determination of the control signal of the element of the installation is possible. Whereas, to already available components be used, so that also in the region of the plant control system, the no such great market represents, as the area of entertainment electronics, nevertheless of innovation in the area of improving the performance of the maintenance technology plant controls can be used and can benefit. In the technical field of the plant control system may therefore a value added by utilizing at technical innovations, for example, from the field of entertainment electronics be realized. [0020] in accordance with one embodiment of the present invention can be configured in such a way the main processor that a processing instruction for processing signals at least partially volatile and/or that the auxiliary processor is programmed in the main processor is formed in such a way that a processing instruction for processing signals is programmed in the adjunct processor at least partially non-volatile. Such an embodiment of the present invention offers the advantage of a particularly good setting possibility between the most flexible programmable Parent Fire Walls, which produces the control signal for the movement of the element of the installation and the immediate future calculation of individual processing steps of the total calculated processing instruction for determination of the control signal for the movement of the element of the installation. [0021] it is also advantageous, when according to one embodiment of the present invention is formed the main processor, to determine a processing instruction to load a portion of a code is formed as a processing instruction in the adjunct processor, wherein the auxiliary processor, by using the codes of the processing instruction to the auxiliary processor input signal the auxiliary processor output signal. Such a embodiment of the present invention offers the advantage of a good auxiliary processorcharging to capacity barness of the, since the auxiliary processor also from the main processor by the loading of certain code in the code coded tasks can be transmitted, then the main processor no longer execute the needs. [0022] To a particularly rapid determination of the control signal for the movement of the element the Appendix to acquire, a parallelizing of certain processing steps can be carried out. In accordance with one embodiment of the present invention can make Austrian Patent Office be provided, for example, at least one further auxiliary processor, wherein the further auxiliary processor is connected with the main processor and has a computer architecture, the is different from a computer architecture of the main processor, in particular wherein the computer architecture further allows a faster processing of predetermined time-varying signals auxiliary processor , and wherein the further auxiliary processor is formed than the computer architecture of the main processor, to determine output from the main processor is designed to determine and/or the auxiliary processor to read in a further auxiliary processor input signal and using the further auxiliary processor input signalauxiliary processor output signal and the adjunct processor to the main processor and/or a further, in particular wherein the main processor, to use further the control signal for controlling the movement of the element of the installation auxiliary processor output signal. [0023] according to one embodiment of the present invention, in an especially advantageous way, be provided as adjunct processor a processor, whose computer architecture for a processing of signals for displaying a graphic, a dynamically configurable logic circuits was optimized processing of audio data or for programming of. The use of this type of processor as auxiliary processor, it has been found as very helpful for a rapid determination of the control signal. [0024] according to a further embodiment of the present invention can also be constructed the main processor, to determine (cyclically) is designed to receive several auxiliary processor input signals with a time lag to be sent to the auxiliary processor and in response to each sent to the adjunct processor a auxiliary processor input signalauxiliary processor output signal and wherein the main processor, the control signal using the auxiliary processor output signals received by the auxiliary processor. Such an embodiment of the present invention offers the advantage that individual cyclically recurring working steps in the determination of the control signal to fall back in the auxiliary processor can repeatedly may be performed, wherein the main processor repeatedly for the detection of subtotals to the particular performance of the (in the form of the auxiliary processor output signals) auxiliary processor. [0025] in order to achieve a particularly simple implementation of the control device, according to one embodiment of the present invention the auxiliary processor may than be embedded in an integrated circuit with the main processor part unit. It a core can form an integrated circuit (for example of a plurality of cores) and another region of the integrated circuit the adjunct processor the main processor. Here, both the auxiliary processor in a common housing of the integrated circuit also the Hauptals be arranged. [0026] The invention is explained closer below with reference to the accompanying drawings as an example. It show: [0027] a block diagram of a first embodiment of the present invention as control device 1 Fig.; [0028] a block diagram of a second embodiment of the present invention as control device 2 Fig.; and [0029] 3, a flow chart of an embodiment of the present invention as a method Fig.. [0030] Equal or similar elements can be by the same or similar reference numerals in the following Figures. Also the Figures contain the drawings, their description and the claims numerous features in combination. According to a person skilled in the art is made clear, though that these features also be considered individually or they may be combined to further, not explicitly described here combinations. [0031] A first aspect, the the underlying approach is described here that austrian Patent Office spielsweisediagram processors can also be used, so as to let SPSund /or Motion-program code run, partially as an addition to a general purpose processor, or completely and self-sufficient,. It is likely that applications are shown, in which a considerable increase of the processing speed can be achieved, since both are very regular structures in SPSals also in Motion-program code typically, the are suitable for processing on diagram processors well. At this approach is further advantageous that depending on the used diagram processors access priorities are often self-sufficient with regard to the main processor system architecture or not with other system components and attached preferably to block access to compete system buses supplies. [0032] Otherspecial processors , such as audio processors , may, for a use in the acceleration of SPSund /or Motion-program code be suitable. [0033] Another aspect of the approach is presented here, for example, the use of dynamically configurable logic componentsSPSund /or to accelerate the procedure of Motion-program codes. [0034] Fig. 1 shows a block diagram of a first embodiment of the present invention as control device 100 as the first conversion example of the present invention. The conversion example Fig. 1 shown in the block diagram of the first 100 of the described basic idea shows a control device, in which a PLC-/ Motion-program code 110 (i.e. a program code, through which a programmable logic controller for movement (= Motion) of an element of a plant is to be controlled) (s) (of several) in a (or 121, 122) 120 main processor is to be stored. It an input signal 130 is supplied to the main processor 120, the program sequence to be performed in the main processor 120 represents, for example, a start of a. Also the control device comprises at least one graphics processor 140 100, according to the embodiment shown in 1 diagram processors Fig. three 140, 141 and 142, the work (s) 140 as adjunct processor. Here, by a 150 auxiliary processor input signal , which is transmitted from the main processor 120 to the auxiliary processor 140 output, a selected proportion of a for the graphics processor 140 conditioned part of the SPS/Motion-program codes, so that in the auxiliary processor 140 operations are carried out in accordance with the signal-processing instruction, in the transmitted code are encoded in the 150 auxiliary processor input signal. Also concrete values as variables in the 150 auxiliary processor input signal may also be transferred, the represent the basis for the in the auxiliary processor 140 to the adjunct processor 120 from the main processor 140 using the transmitted code determined calculation results. This auxiliary processor output signal 140 160 Transferring calculation results in a to the main processor from the adjunct processor 120 then, in the then using the information stored in the control signal 170 160 transmitted auxiliary processor output signal order to control the movement of the element 175 calculation results of the installation is determined 177. The element 177 175 can here be, for example, a gripping arm production machines as an abutment, for example, to use of the gripping arm mount 175 weld seams on a workpiece. To a calculation of the values of the calculation results may be exchanged to speed up in the auxiliary processor 140, optionally still further signals 120 140 180 for communication between the main processor and the auxiliary processor, for example, for synchronizing the signal transmission between the main processor 140 or controlling the signal processing 120 and auxiliary processor. [0035] 1 is thus represented a part of a 100 automation CONTROLLER Fig. Indeed as embodiment of the present invention. The main processor 120, where this is a general purpose processor is, receives the user program, for example through a automation procedure to control in a factory. Part of the programme, which is particularly suitable for processing on the graphics processor 140 is processed into a form suitable for the graphics processor 140 particularly optionally, passed on to the graphics processor 140 (for example by means of the signal 150). After the calculation of the graphics processor 120 160 140 provides the results back to the main processor. Snack 180 can take place optionally additional communication. Usually, program code is in the Automaösterreichisches Patent Office tisierungstechnik cyclical, and, so that this entire operation, or parts thereof, in accordance with repetition. [0036] Fig. 2 shows a block diagram of a second embodiment of the present invention as control device 1 is, however, the representation from Fig. 100. Contrary to Flilfsprozessor 140 as an FPGA (s) or the (s) the (FPGA = field programmable gate array = (αη - idiom -) field programmable (logic) gate-Arrangement) designed. conversion example the described basic idea is therefore a further 2 in the mapped Fig.. In the illustration 2 is represented a part of a turn from Fig. automation CONTROLLER 100. Here 140 to be executed on the FPGA is brought into a program code of the optionally usable form in this configuration for the FPGA 140. Thereafter the 140 120 by means of a configuration signal from the main processor 200 or the fpgas be configured in such a way that it the present program code or. Parts thereof can perform as efficiently as possible. The Schaltungsbzw 200, then, contains a logic configuration information such as the individual configuration signal. Logic units 140 are possible to connect together the fpgas, so that they as quickly and as efficiently as possible to be performed by the FPGA as auxiliary processor 140 can perform operations. From then runs further action (i.e. the transfer of information between the principal and auxiliary processor) from similar as in the practical example, which has been represented and described in the 1 Fig. closer. The on the configuration signal 100 200 provided for the duration of the control device can be statically FPGA-configuration. Alternatively, the FPGA 100 200 140 during the life of the control device can be re- over that configuration signal. [0037] The present invention thus makes possible an implementation of special processorsSPSund Motion-functionality as a supplement or substitute for fpgas universal processors and/or on. Important aspects of the present invention relate to the use of one or more, for example, thus Hilfsbzw. diagram processors for accelerating by partial execution or for exclusive execution of SPS-program code, on the one hand, and, on the other hand, Motion-program code, wherein the Motion-program code, the specially calculating steps for movements of the elements is concerned is carried out on the particularly shaped auxiliary processor. Another aspect of the invention relates to a use of one or more other special processors , about audio processors for accelerating by partial execution or for exclusive execution of (in particular on the main processor) on the one hand and a SPS-program code (in particular on the auxiliary processor), on the other hand, Motion-program code. Even to see therein is another aspect of the present invention that a use of one or more such as field programmable gate arrays (FPGAs) dynamically configurable logic components by partial execution or for exclusive execution for accelerating sps-program code is used on the one hand and a Motion-program code on the other hand. At the or the auxiliary processors may also, i.e. the respective Additional unit (Picture-/ special purpose processor or FPGA) or the respective auxiliary components in full or in part in the or are integrated into the main processors. Another aspect of the invention also relates to a automatic selecting (also referred to as a mapping is the partially) by the or the abovementioned diagram processors , the or the other abovementioned special processors , or dynamically configurable logic component (e) the above-described the or to accelerate. It percentages of program code for calculating the control signal by the compiler cleaved, or by manual selection by the user at the main processor for the programming and duration in the adjunct processor written, so that the parts of the processing instruction, the proportions are contained in the break-away, are carried out in the auxiliary processor. [0038] 3 shows a flow chart of an embodiment of the present invention as a method Fig. 300 for controlling a movement of an element of an installation. The control device has a main processor and an auxiliary processor on, wherein the auxiliary processor is connected with the main processor and has a computer architecture, the is different from a computer architecture of the main processor, in particular wherein the Rechnerarchiösterreichisches Patent Office tekturauxiliary processor (time-varying) signals allows a faster processing of the, than the computer architecture of the main processor. The method comprises further comprises a step of introducing an input signal by the main processor 310. The method comprises a step of outputting auxiliary processor input signal 300 320 a also by the main processor to the adjunct processor in response to the input signal. The method also comprises a step of receiving one of the auxiliary processor 330 300 auxiliary processor output signal output to the main processor, wherein the adjunct processor auxiliary processor output signalauxiliary processor input signal has provided in response to the the. The method comprises a step of determining a control signal 300 340, after all, to control the movement of the element of the installation by the main processor, wherein the control signal is provided in response to the provided auxiliary processor processorauxiliary processor output signal from the. [0039] The embodiments shown are only exemplary selected and can be combined with each other. austrian Patent Office 100 control device 110/Motion-program code SPS 120 main processor 121 further main processor 122 further main processor 130 input signal 140 auxiliary processor 141 further adjunct processor 142 further adjunct processor 150 160 170 auxiliary processor input signalauxiliary processor output signal control signal 175 element, gripping arm 177 Plant, manufacturing machine, welding installation for further communication between the principal and the auxiliary processor 180 signals 200 FPGA-configuration signal A control device is configured to control a movement of an element of an installation and includes a main processor and an auxiliary processor. The main processor has a first computer architecture. The auxiliary processor is connected to the main processor and includes a second computer architecture. The second computer architecture differs from the first computer architecture. The second computer architecture allows faster processing of predetermined signals than the first computer architecture. The auxiliary processor is configured (i) to read in an auxiliary-processor input signal from the main processor, and (ii) to determine an auxiliary-processor output signal and to output it to the main processor by using the auxiliary-processor input signal. 1. control device (100) for controlling a movement of an element (175) an installation (177), wherein the control device (100) has the following characteristics: -a main processor (120), and -an auxiliary processor (140), wherein the auxiliary processor (140) to the main processor (120) is connected and has a computer architecture, the is different from a computer architecture of the main processor (120), in particular wherein the computer architecture of the auxiliary processor (140) allows a faster processing of predetermined signals, than the computer architecture of the main processor (120) and wherein said auxiliary processor (140) is formed, so as to determine a read output auxiliary processor input signal (150) of the main processor (120) and using the auxiliary processor input signal (150) a auxiliary processor output signal (160) and to the main processor (120), wherein the main processor (120) is formed, to forward read to read in to determine an input signal to determine (130), using the input signal (130) the auxiliary processor input signal (150) and to the adjunct processor (140) and by the auxiliary processor (140) auxiliary processor output signal determined (160) and using the auxiliary processor output signal (160) a control signal (170) for controlling the movement of the element (175) of the installation (177). 2. controller according to claim 1, characterized in that the main processor (120) is designed in such a way that a processing instruction for processing signals at least partially volatile in the main processor (120) is programmed and/or that the auxiliary processor (140) is formed in such a way that a processing instruction for processing signals at least partly non-volatile in the adjunct processor (140) is programmed. 3. control device as claimed in one of the preceding claims, characterized in that the main processor (120) is formed, to determine a processing instruction to load a portion of a code is formed as a processing instruction in the adjunct processor (140), wherein the auxiliary processor (140), by using the codes of the processing instruction to the auxiliary processor input signal (150) the auxiliary processor output signal (160). 4. control device as claimed in one of the preceding claims, characterized by at least one further auxiliary processor (141) wherein said further auxiliary processor (141) with the main processor (120) is connected and has a computer architecture, the is different from a computer architecture of the main processor (120), in particular wherein the computer architecture further auxiliary processor (141) enables a faster processing of predetermined signals, than the computer architecture of the main processor (120) and wherein the further auxiliary processor (141) is formed, to determine a further output from the main processor is designed to read in to determine auxiliary processor input signal (120) and/or the auxiliary processor (140) and using the further auxiliary processor output signalauxiliary processor input signal another and to the main processor (120) and/or the auxiliary processor (140), in particular wherein the main processor (120), to use further auxiliary processor output signal the control signal (170) for controlling the movement of the element (175) of the installation (177). 5. control device as claimed in one of the preceding claims, characterized in that the auxiliary processor (140) is a processor provided, whose computer architecture for a processing of signals for displaying a graphic, a dynamically configurable logic circuits was optimized processing of audio data or for programming of. austrian Patent Office 6. control device as claimed in one of the preceding claims, characterized in that the main processor (120) is formed is designed to receive several auxiliary processor input signals to determine to be sent at a time offset (150) cyclically to the adjunct processor (140) and in response to each to the adjunct processor (140) sent auxiliary processor input signal (150) a auxiliary processor output signal (160) and wherein the main processor (120), the control signal (170) using the from the auxiliary processor (140) received auxiliary processor output signals (160). 7. control device as claimed in one of the preceding claims, characterized in that the auxiliary processor (140) as partial unit in an integrated circuit with the main processor (120) is embedded. 8. control device as claimed in one of the preceding claims, characterized in that the auxiliary processor (140) as partial unit an electronic circuit to the main processor (120) is connected. 9. method (300) for controlling a movement of an element (175) an installation (177), wherein a control device (100) a main processor (120) and an auxiliary processor (140) has, wherein said auxiliary processor (140) to the main processor (120) is connected and has a computer architecture, comprising is different from a computer architecture of the main processor (120), in particular wherein the computer architecture of the auxiliary processor (140) allows a faster processing of predetermined signals, than the computer architecture of the main processor (120), the method (300) the steps of: -Reading (310) an input signal (130) by the main processor (120); -Outputting (320) a auxiliary processor input signal (150) by the main processor (120) to the adjunct processor (140) in response to the input signal (130); -Receiving (330) one of the auxiliary processor (140) auxiliary processor output signal output (160) to the main processor (120), wherein the auxiliary processor (140) the auxiliary processor output signal (160) in response to said auxiliary processor input signal (150) has provided; and -Determining (340) a control signal (170) for controlling the movement of the element (175) of the installation (177) by the main processor (120), wherein the control signal (175) in response to the by the auxiliary processor (140) provided auxiliary processor output signal (160) is provided. 10. data carrier, characterized by that on it a program for performing or controlling the steps of the method (300) according to claim 9 on a control device (100) according to any one of claims 1 to 8 is stored. Description
cONTROL DEVICE AND METHOD OF CONTROLLING AN MOVEMENT OF A eLEMENT AN ANNEX
rEFERENCE SYMBOL LIST