Method and system for operating an assembly comprising at least two control devices
The method synchronizes timers across multiple control devices using a master control device and clock signals to adjust for signal delays, ensuring simultaneous action triggering and reducing phase shifts, enhancing control device synchronization.
Patent Information
- Application Number
- PCT/EP2024/085684
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-26
- Filing Date
- 2024-12-11
- Publication Date
- 2025-07-31
AI Technical Summary
Existing systems with multiple control devices struggle to synchronize and trigger actions simultaneously, leading to phase shifts and asynchronicity, particularly in spatially distributed control devices.
A method and system that utilize a master control device to generate a common time base by synchronizing timers across multiple slave control devices through clock signals, adjusting for signal propagation delays to ensure simultaneous action triggering.
Achieves precise and simultaneous control of actions across spatially distributed control devices, reducing phase shifts and enhancing synchronization without requiring real-time synchronization protocols like EtherCAT.
Smart Images

Figure EP2024085684_31072025_PF_FP_ABST
Abstract
Description
[0001] Description
[0002] Method and system for operating an arrangement with at least two control devices
[0003] The present invention relates to a method and system for operating an arrangement with two or more control devices and to a computer program or computer program product for carrying out a method described here.
[0004] From internal company practice, systems, in particular robot systems, with several control devices are known that trigger different actions, in particular control different components of the system.
[0005] The actions should often be triggered simultaneously.
[0006] A simple, illustrative and in no way restrictive example is several lights that are controlled by different control devices and are supposed to flash simultaneously.
[0007] The object of the present invention is to improve the operation of an arrangement with two or more control devices.
[0008] This object is achieved by a method having the features of claim 1. Claims 11, 12 represent a system or computer program or.
[0009] A computer program product for carrying out a method described herein is protected. The subclaims relate to advantageous developments.
[0010] According to one embodiment of the present invention, an arrangement comprises two or more control devices. In one embodiment, the control devices are spatially spaced from one another and / or each comprise at least one microcontroller or at least one CPU.
[0011] According to one embodiment of the present invention, a method for operating the arrangement comprises the step of: specifying, in particular at least temporarily storing, a clock pulse, in particular a time or timing pulse, in a further development by means of user input and / or one or more instructions in a program.
[0012] According to one embodiment of the present invention, a method for operating the arrangement comprises the step:
[0013] - Executing, in particular initializing and / or starting, a timer in a control device of the arrangement, which in one embodiment is referred to as the master control device, preferably multiple times, until an active end or reaching a predetermined number of repetitions, sequentially running or repetitive, wherein a reset frequency of this timer in the master control device depends on this predetermined clock rate, in one embodiment corresponding to the predetermined clock rate. In one embodiment, the timer is reset with the reset frequency, preferably to zero, and / or, in particular for this purpose, is configured accordingly by means of a correspondingly set prescaler and / or counting register or comparison register or value.
[0014] According to one embodiment of the present invention, the method comprises the step:
[0015] - Transmission of a clock signal from the master control device that depends on this timer, preferably specifies this clock, and in one embodiment has this clock. In one embodiment, the timer toggles a high and low signal and transmits the toggle bit at defined time intervals.
[0016] According to one embodiment of the present invention, the method comprises the steps:
[0017] - receiving the clock signal by at least one (other of the) control device(s) of the arrangement, which is referred to herein without restriction of generality as the first slave control device; and
[0018] - Executing, in particular initializing and / or starting, a timer in this first slave control device, which preferably runs sequentially or repetitively, in one development until it is actively ended or a predetermined number of repetitions is reached, the reset frequency of which timer is determined on the basis of the clock signal received from the master control device, in one development is determined and / or corresponds to the received clock signal, preferably the predetermined clock. In one embodiment, the timer (in) this first slave control device is reset with this reset frequency, preferably to zero, and / or, in particular for this purpose, is configured accordingly by means of a correspondingly set prescaler and / or counting register or comparison register or value. In one embodiment, the timer (in) this first slave control device is set to the predetermined clock orthe reset frequency (in) of the master control device (frequency)synchronized.
[0019] Thus, in one embodiment, a timer is run on each of the master control device and the first slave control device, with these timers having the same reset frequency or being frequency-synchronized with each other. However, there is still a phase shift between these timers.
[0020] According to one embodiment of the present invention, the method comprises the steps:
[0021] - Determining a signal propagation time between the master control device and the first slave control device, in particular a signal propagation time from the master control device to the first slave control device; and
[0022] - Shifting a preferably repetitive interrupt triggered by the timer in the first slave control device, wherein this shifting is based on the determined signal propagation time between the master control device and the first slave control device, preferably to compensate or reduce, in particular minimize, preferably eliminate, a phase shift between the timer in the first slave control device and the timer in the master control device. This shifting can in particular comprise, in particular be, an addition of the signal propagation time or a corresponding number of steps in the timer (timer register) (in) the first slave control device.
[0023] Accordingly, in one embodiment, the timer (in) of the first slave control device and the timer (in) of the master control device are subsequently synchronized in both phase and frequency. According to one embodiment of the present invention, the method comprises the step:
[0024] - Triggering, preferably periodically triggering, an action by the first slave control device based on the postponed interrupt.
[0025] In this way, in one embodiment, an external clock in the form of the master control device or the timer (in) the master control device provides at least one other control device in the form of the first slave control device with a (common) time base for triggering actions. This advantageously allows two or more of the control devices of the arrangement to trigger actions simultaneously.
[0026] Accordingly, the method in one embodiment comprises the steps:
[0027] - receiving the clock signal by one or more further slave control devices of the arrangement, which, as already mentioned, are preferably spatially spaced from each other and / or from the first slave control devices and / or the master control devices;
[0028] - Executing (each) one, preferably multiple times, in a further development until an active ending or reaching a predetermined number of repetitions, consecutively running or repetitive timer in the (respective) further slave control device, the reset frequency of which is or will be determined on the basis of the received clock signal from the master control device, preferably as described above for the first slave control device;
[0029] - Determining (in each case) a signal propagation time between the master control device and the (respective) further slave control device, preferably as described above for the first slave control device, in particular a signal propagation time from the master control device to the (respective) further slave control device;
[0030] - Postponing a preferably repetitive interrupt triggered by the (respective) timer in the (respective) further slave control device based on the (respective) determined signal propagation time between the master control device and this further slave control device, preferably as described above for the first slave control device; and - Triggering (each) an action by the (respective) further slave control device based on this postponed interrupt, preferably as described above for the first slave control device, wherein different and / or similar actions can be triggered by different slave control devices.For example, two or more of the slave control devices (each) may activate a light and / or at least one of the slave control devices may activate a light and at least one other of the slave control devices may activate a sound generator, so that the light and sound generator emit signals simultaneously.
[0031] Additionally or alternatively, the method in one embodiment comprises the step:
[0032] - Triggering an action by the master control device based on an interrupt, preferably repetitive, triggered by the timer in the master control device.
[0033] In other words, the master control device or its timer, which acts as a clock generator of a common time base, can (also) be used to trigger actions. This integration of two functions (clock generation and triggering actions) allows for a more compact arrangement.
[0034] In one version,
[0035] - the action triggered by the first slave controller based on the postponed interrupt triggered by the timer in the first slave controller; and
[0036] - the action initiated by the master controller based on an interrupt triggered by the timer in the master controller; and / or
[0037] - the action triggered by the one or more of the further slave controller(s) (each) based on the postponed interrupt triggered by the timer in that slave controller is triggered simultaneously.
[0038] In one embodiment, one or more of the actions triggered by one (of the) control device(s) include, in particular, - an action triggered by the master control device based on an interrupt triggered by the timer in the master control device; and / or
[0039] - an action triggered by the first slave controller based on the postponed interrupt triggered by the timer in the first slave controller; and / or
[0040] - an action triggered by the or one or more of the further slave controller(s) (each) based on the postponed interrupt triggered by the timer in that slave controller
[0041] (in each case) a preferably periodic control, in a further development a preferably periodic activation and / or switching, (in each case) of one or more component(s) of the arrangement, wherein different components are preferably controlled, in particular activated and / or switched, preferably simultaneously by different control devices, as already explained, in particular by two or more of the control devices, different similar components and / or by two or more of the control devices different components.
[0042] One or more of these components, which are controlled, in particular activated and / or switched, by the respective control device on the basis of an interrupt triggered by the timer in this control device, comprise in one embodiment (each) an electrical component, in particular at least one light or display, for example one or more LEDs or the like, at least one noise generator, for example a loudspeaker or the like, at least one drive, for example an electric motor or the like, at least one electromagnet, for example for actuating a valve or the like, or the like. The present invention is particularly advantageous for the simultaneous control, in particular activation and / or switching, of such components.
[0043] In one embodiment, determining a signal propagation time between the master control device and one or more of the slave control devices, in particular between the master control device and the first slave control device and / or between the master control device and the one or more of the further slave control devices, comprises (in each case) sending a request signal, in particular pings or the like, from this slave control device to the master control device and sending a response signal back from the master control device to this slave control device in response to this request signal, wherein the signal propagation time, on the basis of which the corresponding interrupt is postponed, corresponds in one embodiment to half the sum of the time between sending the request signal and receiving the response signal, optionally minus a signal processing time (in) the master control device.In other words, in one embodiment, the round-trip time (“RTT”) between the respective slave control device and the master control device is determined and from this the shift of the interrupt triggered by the timer in the respective slave control device is determined in order to compensate or reduce, in particular minimize, preferably eliminate a phase shift between the timer in this slave control device and the timer in the master control device.
[0044] In one embodiment, a synchronicity of the timer in one (of the) slave control device(s) and the timer in the master control device, in particular a synchronicity between the timers (in) the master control device and the first slave control device and / or between the timers (in) the master control device and the or one or more of the further slave control device(s), is checked, preferably at predetermined intervals.
[0045] In a further training
[0046] - the reset frequency of the timer in the corresponding slave control device based on the clock signal from the master control device and / or
[0047] - the signal propagation time between the master control device and the corresponding slave control device is determined again, and the shift of the interrupt triggered by the timer in this slave control device is corrected on the basis of this newly determined signal propagation time if the check reveals asynchrony between the timer in the respective slave control device and the timer in the master control device, wherein a check can also comprise several individual checks in consecutive periods. In other words, in one embodiment, the synchronicity is checked, preferably at predetermined intervals, and the synchronization process explained above is carried out again, with adjustment of the reset frequency and / or shifting of the interrupt for synchronizing the timers, if the corresponding slave control device timer is detected as asynchronous or out of sync, preferably in at least a predetermined number of consecutive periods.was not detected synchronously.
[0048] In one embodiment, one of the slave control devices, in particular the first slave control device and / or the one or more of the further slave control devices, sends a synchronization notification signal, in a further development a flag, to the master control device after the interrupt triggered by the timer in this slave control device has been shifted. This advantageously ensures that the master control device is aware of the successful synchronization and can take this into account accordingly when controlling the arrangement.
[0049] In a preferred embodiment, one or more of the signals mentioned here, in a particularly preferred development
[0050] - the clock signal emitted by the master control device; and / or
[0051] - the request signal sent by the first slave control device and the response signal sent back by the master control device in response to this request signal; and / or
[0052] - the request signal sent by the or one or more of the further slave control device(s) and the response signal sent back by the master control device in response to this request signal; transmitted wirelessly. One embodiment of the present invention is based on the idea that real-time synchronization, as can be achieved, for example, by distributed clocks in EtherCAT, is not required to control certain components, so that an approach described here with a clock generator that provides a common time base can reduce the data volume in an EtherCAT network and / or components that are not integrated in an EtherCAT network with distributed clocks can be controlled simultaneously.
[0053] The present invention can be used with particular advantage in robot systems with at least one robot, in a further development with at least one robot that is mobile and / or has at least one robot arm. Accordingly, in one embodiment, one of the actions triggered by one (of the) control devices, in particular the action triggered by the master control device and / or the action triggered by the first slave control device and / or the action(s) triggered by the or one or more of the further slave control devices, (each) comprises controlling, in particular activating and / or switching, at least one component of such a robot system. Additionally or alternatively, in one embodiment, the master control device is a control device of such a robot system.In one embodiment, at least one component of the arrangement, which is / are controlled, in particular activated and / or switched, by an action triggered by the corresponding control device, is arranged on a robot, in a further development on a robot which is mobile and / or has at least one robot arm.
[0054] According to one embodiment of the present invention, a system for operating the arrangement, in particular hardware and / or software, in particular program-related, is configured to carry out a method described here and comprises the corresponding control devices, in particular the master control device and the first slave control device, as well as optionally the further slave control device(s). In a further development, the system also comprises the component(s) of the arrangement that controls, in particular activates and / or switches, the actions triggered by the control device, and in one embodiment also the robot(s).
[0055] In one version, the system has:
[0056] - means of setting a beat;
[0057] - means for executing a timer in a master control device of the arrangement, the reset frequency of which depends on this predetermined clock;
[0058] - means for sending a clock signal from the master control device which depends on this timer;
[0059] - means for receiving the clock signal by a first slave control device of the arrangement
[0060] - Means for executing a timer in the first slave control device, whose reset frequency is determined based on the clock signal received from the master control device; - Means for determining a signal propagation time between the master control device and the first slave control device;
[0061] - means for postponing an interrupt triggered by the timer in the first slave control device based on the determined signal propagation time between the master control device and the first slave control device; and
[0062] - Means for triggering an action by the first slave controller based on the postponed interrupt.
[0063] In one version, the system has:
[0064] - means for receiving the clock signal by at least one further slave control device of the arrangement;
[0065] - means for executing a timer in said further slave control device, the reset frequency of which is determined on the basis of the clock signal received from the master control device;
[0066] - means for determining a signal propagation time between the master control device and this further slave control device;
[0067] - means for postponing an interrupt triggered by the timer in this further slave control device on the basis of the determined signal propagation time between the master control device and this further slave control device; and
[0068] - Means for triggering an action by said further slave control device based on said postponed interrupt.
[0069] In one version, the system has:
[0070] - Means for triggering an action by the master control device based on an interrupt triggered by the timer in the master control device.
[0071] In one embodiment, a means for determining a signal propagation time comprises:
[0072] - means for transmitting a request signal from a slave control device to the master control device; and
[0073] - means for returning a response signal from the master control device to said slave control device in response to said request signal.
[0074] In one embodiment, the system comprises: means for checking a synchronicity of the timer in at least one slave control device and the timer in the master control device, in particular at predetermined intervals.
[0075] In a further training the system has:
[0076] - means for correcting the reset frequency of the timer in said slave control device based on the clock signal from the master control device if the check reveals an asynchronicity between the timer in said slave control device and the timer in the master control device; and / or
[0077] - Means for re-determining the signal propagation time between the master control device and this slave control device and for correcting the shift of the interrupt triggered by the timer in this slave control device on the basis of this re-determined signal propagation time.
[0078] In one version, the system has:
[0079] - Means for sending a synchronization notification signal to the master control device from at least one slave control device after postponing the interrupt triggered by the timer in this slave control device.
[0080] A means within the meaning of the present invention can be designed in hardware and / or software, in particular at least one, in particular digital, processing unit, in particular a microprocessor unit (CPU), graphics card (GPU) or the like, preferably connected to a memory and / or bus system for data or signals, and / or one or more programs or program modules. The processing unit can be designed to execute instructions implemented as a program stored in a memory system, to detect input signals from a data bus, and / or to output output signals to a data bus. A memory system can have one or more, in particular different, storage media, in particular optical, magnetic, solid-state, and / or other non-volatile media. The program can be designed in such a way that it embodies the methods described here oris capable of carrying out, so that the processing unit can carry out the steps of such methods and thus in particular can operate the arrangement. In one embodiment, a computer program product can have, in particular be, a storage medium, in particular a computer-readable and / or non-volatile one, for storing a program or instructions or with a program or instructions stored thereon. In one embodiment, execution of this program or these instructions by a system or a controller, in particular a computer or an arrangement of several computers, causes the system or the controller, in particular the computer(s), to carry out a method described here or one or more of its steps, or the program or the instructions are configured to do so.
[0081] In one embodiment, one or more, in particular all, steps of the method are fully or partially computer-implemented or one or more, in particular all, steps of the method are fully or partially automated, in particular by the system or its means.
[0082] Further advantages and features emerge from the subclaims and the exemplary embodiments. The following shows, partly schematically:
[0083] Fig. 1: a system for operating an arrangement according to an embodiment of the present invention; and
[0084] Fig. 2: a method for operating the arrangement according to an embodiment of the present invention.
[0085] Fig. 1 shows a system for operating an arrangement according to an embodiment of the present invention.
[0086] The system comprises a robot arm 2 and a controller 1 for controlling this robot 2.
[0087] The system further comprises an arrangement which, by way of example, comprises a component, in the exemplary embodiment a robot-side LED light 11, a microcontroller 10 for controlling this LED light 11, a component, in the exemplary embodiment an ambient-side LED light 21, and a microcontroller 20 for controlling this LED light 21. One of the microcontrollers 10, 20 represents a first slave control device of the arrangement, the other of the microcontrollers 10, 20 represents a further slave control device of the arrangement, and the robot controller 1 represents a master control device of the arrangement.
[0088] As indicated in Fig. 1 by dash-dotted double arrows, these control devices 1, 10, 20 communicate with each other wirelessly.
[0089] In a step S10 (see Fig. 2) a clock pulse is specified.
[0090] In a step S20, a timer in the master control device is started with a processor speed and a correspondingly set frequency, the reset frequency of which corresponds to the predetermined clock.
[0091] The master control device toggles a high and low signal and transmits the toggle bit to the slave control devices 10, 20 at defined time intervals (Fig. 2: step S30). The slave control devices 10, 20 receive the clock signal and synchronize to the toggle bit, each starting an internal timer whose reset frequency corresponds to the specified clock.
[0092] In step S40, a signal propagation time between the master control device 1 and the respective slave control device 10 or 20 is determined. For this purpose, the RTT (Round Trip Time) is calculated via a ping to the master control device 1 and added to the next clock pulse. This shifts the phase shift of the time axis to zero, or an interrupt triggered by the timer in the respective slave control device 10 or 20 is shifted based on the determined signal propagation time between the master control device and this slave control device.
[0093] If a slave control device is synchronized, it sends a flag to the master control device 1 that it is synchronized and working synchronously (Fig. 2: step S50).
[0094] Now, the components 11, 21 are activated simultaneously by the slave control devices 10, 20 on the basis of the interrupt triggered by the timer of the respective slave control device, which is shifted accordingly to compensate for the phase shift or signal propagation time, so that they flash simultaneously (Fig. 2: step S60).
[0095] At defined intervals, a check is performed to determine whether the respective slave control device is synchronized with the master control device (Fig. 2: step S70). If an asynchronous state is detected, a period counter is reset. If several consecutive periods are detected as out of synchronization, the synchronization process described above is restarted (Fig. 2: step S80).
[0096] In the present disclosure, "has an X" generally does not imply an exhaustive list, but is a shortened form of "has at least one X" and also includes "has two or more Xs" and "has Y in addition to X." Although exemplary embodiments have been explained in the foregoing description, it should be noted that numerous modifications are possible.
[0097] In particular, the master control device can be a control device different from the robot controller and / or can activate one or more components simultaneously with the components 11, 21 and / or, in addition to or alternatively to the similar components 11, 21, different components can also be controlled simultaneously.
[0098] Furthermore, it should be noted that the exemplary embodiments are merely examples and are not intended to limit the scope of protection, applications, or structure in any way. Rather, the preceding description provides the skilled person with a guide for implementing at least one exemplary embodiment, whereby various modifications, particularly with regard to the function and arrangement of the described components, can be made without departing from the scope of protection as defined by the claims and equivalent combinations of features.
[0099] 1 robot control
[0100] 2 robots (arms) 10 microcontrollers
[0101] 11 LED lights
[0102] 20 microcontrollers
[0103] 21 LED lights
Claims
Patent claims 1. A method for operating an arrangement comprising at least two control devices (1, 10, 20), the method comprising the steps of: - Specifying (S10) a measure; - executing (S20) a timer in a master control device of the arrangement, the reset frequency of which depends on this predetermined clock; - sending (S30) a clock signal from the master control device which depends on this timer; - receiving (S30) the clock signal by a first slave control device of the arrangement; - executing (S30) a timer in the first slave control device, the reset frequency of which is determined on the basis of the received clock signal from the master control device; - determining (S40) a signal propagation time between the master control device and the first slave control device; - Postponing (S40) an interrupt triggered by the timer in the first slave control device based on the determined signal propagation time between the master control device and the first slave control device; and - Triggering (S60) an action by the first slave control device based on the postponed interrupt.
2. Method according to claim 1, characterized by the steps: - receiving (S30) the clock signal by at least one further slave control device of the arrangement; - executing (S30) a timer in this further slave control device, the reset frequency of which is determined on the basis of the received clock signal from the master control device; - determining (S40) a signal propagation time between the master control device and this further slave control device; - Postponing (S40) an interrupt triggered by the timer in this further slave control device on the basis of the determined Signal propagation time between the master control device and this further slave control device; and - Triggering (S60) an action by this further slave control device based on this postponed interrupt.
3. Method according to one of the preceding claims, characterized by the step: - Triggering an action by the master controller based on an interrupt triggered by the timer in the master controller.
4. Method according to one of the preceding claims, characterized in that at least one of the actions triggered by a control device comprises controlling, in particular activating and / or switching, at least one component of the arrangement.
5. Method according to one of the preceding claims, characterized in that determining a signal propagation time between the master control device and a slave control device comprises sending a request signal from this slave control device to the master control device and sending a response signal back from the master control device to this slave control device in response to this request signal.
6. Method according to one of the preceding claims, characterized in that a synchronicity of the timer in at least one slave control device and the timer in the master control device is checked, in particular at predetermined intervals (S70).
7. Method according to the preceding claim, characterized in that - the reset frequency of the timer in this slave control device based on the clock signal from the master control device and / or - the signal propagation time between the master control device and this slave control device is determined again and the postponement of the interrupt triggered by the timer in this slave control device is determined on the basis of this newly determined signal propagation time is corrected (S80) if the check detects asynchrony between the timer in this slave controller and the timer in the master controller.
8. Method according to one of the preceding claims, characterized in that at least one slave control device sends a synchronization notification signal to the master control device after shifting the interrupt triggered by the timer in this slave control device (S50).
9. Method according to one of the preceding claims, characterized in that at least one of the signals is transmitted wirelessly.
10. Method according to one of the preceding claims, characterized in that at least one of the actions triggered by a control device comprises controlling, in particular activating and / or switching, at least one component of a robot system with at least one robot (2) and / or the master control device is a control device of a robot system with at least one robot (2).
11. System for operating an arrangement which has at least two control devices (1, 10, 20), wherein the system is set up to carry out a method according to one of the preceding claims and has the control devices.
12. A computer program or computer program product, wherein the computer program or computer program product contains instructions, in particular stored on a computer-readable and / or non-volatile storage medium, which, when executed by one or more computers or a system according to claim 11, cause the computer(s) or the system to carry out a method according to one of claims 1 to 10.
Citation Information
Patent Citations
Control unit and communication control system
DE102011111268A1
Device and system for synchronizing processing of redundant safety device
JP2015014863A
Control system, control method and extension board
US20160124412A1