Medical device with flexibly programmed dynamic control of light-emitting diodes
Patent Information
- Application Number
- DE202025100041
- Authority / Receiving Office
- DE · DE
- Patent Type
- Utility models
- Current Assignee / Owner
- Priority Date
- 2024-02-19
- Filing Date
- 2025-01-07
- Publication Date
- 2025-03-27
- Estimated Expiration
- 2035-01-31
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] Medical device with flexibly programmed dynamic control of light-emitting diodes
[0002] The present invention relates to a medical device, - the medical device has a number of light strips, - wherein the light strips each have a plurality of individually controllable light-emitting diodes, - wherein the medical device has a control unit for controlling the light strips, - wherein the control unit includes a storage device in which routines are stored, - wherein the respective routine contains code that can be executed directly by the control unit and defines a sequence of lighting states determined by the respective routine, which the LEDs of the respective light strip are to assume, - wherein the control unit is designed, in particular programmed, in such a way that it receives a specification and, using the specification, determines which routine it executes.
[0003] Medical devices are generally known.
[0004] In medical devices of the type described above, routines are stored in the control unit's memory, which the control unit can call up and execute. Each routine comprises a sequence of states for the LEDs of the respective light strip, according to which the LEDs of that strip are to be operated. Examples of such routines include blinking, passing through an illuminated area, and others. The control unit reads the respective routine from its memory and executes it directly, as is. Externally, the control unit can only be instructed which routines it should execute. It is not possible for an operator to modify a routine.
[0005] In the current state of the art, routines are self-contained. This means they are machine code that is executed exactly as it is when the respective routine is called. The routine is therefore not modified, parameterized, or otherwise altered or adapted. To compare this to conventional programming: Imagine a do-loop from 1 to 100 with a step size of 1. In this case, the do-loop is executed 100 times.
[0006] Creating such a routine and determining the lighting states of the individual LEDs of the light strip by a programmer or similar person requires very detailed knowledge of the specific control unit used and also of the specific LEDs used, and also requires a great deal of effort.
[0007] The object of the present invention is to create possibilities by means of which the control of the light-emitting diodes of the light strips can be made more flexible.
[0008] The problem is solved by a medical device having the features of claim 1. Advantageous embodiments of the medical device are the subject of dependent claims 2 and 3.
[0009] According to the invention, a medical device of the type mentioned above is designed by: - that in addition to the routines, a program file is also stored in the memory device, - that the program file contains a sequence of instructions that can be executed by the control unit by interpreting it using an interpreter stored on the control unit, - that the instructions at least specify which of the routines should be executed, and - that the control unit, using the specifications, determines which of the instructions in the program file the control unit begins to interpret.
[0010] This alone results in significantly greater flexibility.
[0011] Firstly, by simply modifying the program file, it is possible to subsequently change which routine is executed for a given condition. The user can therefore change the mapping between possible conditions and the corresponding routines that are executed.
[0012] Furthermore – as is generally the case when interpreting program instructions – the interpreter moves on to the next instruction after executing the current one (exception: a stop instruction). The instructions in the program file are therefore processed step by step and sequentially by the interpreter.
[0013] This allows a single instruction to call a sequence of routines defined in the program file. For example, five instructions (the number five is purely illustrative) can be executed sequentially, each calling a different routine, followed by a stop instruction. Furthermore, loops, conditions, and other features can be implemented, particularly through conditional statements (if ... then ... else ...) and jump instructions (goto ...).
[0014] The program file can be written in a high-level language, that is, in a code form that is (reasonably) understandable to a human. Again, a comparison with conventional programming: for example, a programming language similar to BASIC can be used.
[0015] As already mentioned, in the prior art the routines are self-contained. This approach is also possible within the scope of the present invention. In this case, the specification in the present invention does not directly define the routine to be executed. Instead, it defines the section at which the control unit begins interpreting the instructions in the program file. The routines themselves can remain unchanged compared to the prior art. However, it can be specified which routine is executed for which specification. The sequence in which the routines are executed can also be defined, for example.
[0016] On the other hand, it is possible that the routines are designed as parameterizable routines and that the instructions in the program file include specifications for the parameters of the routines, so that when the routines are executed, they are executed according to the specifications for the parameters of the routines given by the instructions in the program file.
[0017] In this case, a way is created to subsequently parameterize the routines. The respective lighting state is generated by the control unit by executing the correspondingly parameterized routine. It is therefore also possible to define how a specific routine is executed. For example, with the "Blinking" routine, the intensity, frequency, and / or duty cycle, as well as the number of flashes, can be specified. With the "Traverse" routine, for example, the size of an illuminated area of a light strip and the speed at which the area should move along the light strip can be defined. Other parameter settings are also possible.
[0018] The procedure is analogous to the procedure that is generally known in conventional programming for subroutines.
[0019] Here again, a comparison with conventional programming: A "rigid" routine of the state of the art might, for example, contain a loop in which a specific arithmetic rule is to be executed for each of the numbers 1 to 100. The corresponding loop would therefore be "do n=1, 100, 1 ..... enddo". In this statement, the first 1 represents the initial value of index n, with which the loop is to be executed for the first time; the middle 100 represents the final value of index n, with which the loop is to be executed for the last time; and the final 1 represents the step size by which index n is to be incremented after each iteration of the loop. The dots (".....") indicate the arithmetic rule to be executed.
[0020] In conventional programming, it is common practice to write the aforementioned instruction "do n=1, 100, 1 ..... enddo" in parameterized form, i.e., in the form "do n = start value, end value, step size ..... enddo". In this case, the parameters start value, end value, and step size can be defined later, not when the program itself is created. In fact, they can even be specified at runtime. Similarly, values used within the loop can also be specified as parameters.
[0021] The first instruction described would, when applied to the control unit, correspond to a state-of-the-art routine. The last instruction described would, when applied to the control unit, correspond to a configurable routine.
[0022] Using such parameters, the respective routine can be specified, for example, how strongly certain LEDs should be driven, with what duty cycle the LEDs should be driven, with what clock rate the LEDs should be driven, and much more.
[0023] The aforementioned parameter settings are possible in addition to specifying which routines should be executed.
[0024] Preferably, the instructions specify exclusively which routines are to be executed. Alternatively, the routines can be designed as parameterizable routines, and the instructions in the program file can include specifications for the routines' parameters, so that the routines are executed according to these specifications in the program file.
[0025] The properties, features, and advantages of this invention described above, as well as the manner in which they are achieved, will become clearer and more readily understandable in connection with the following description of the exemplary embodiments, which are explained in more detail in conjunction with the drawings. These drawings show, in schematic representation: Fig. 1 a medical device, Fig. 2 a block diagram of a light strip and a control unit, Fig. 3 a storage device, Fig. 4 a flowchart, Fig. 5 a sequence of instructions, Fig. 6 a routine, Fig. 7 a sequence of instructions and Fig. 8 a group of light-emitting diodes.
[0026] Fig. Figure 1 schematically depicts a medical device 1. The medical device 1 has a tunnel 2 through which a patient (not shown) can be moved while lying on a patient table. The tunnel 2 is typically present when the medical device 1 is a CT scanner or an MRI scanner. In other configurations of the medical device 1, the tunnel 2 may not be present.
[0027] Device 1 has (at least) one light strip 3. According to Fig. 1. There are even several such light strips 3. The light strips 3 can be straight or - as in Fig. 1 shown - bent or curved. Their length and width can be determined as required. The basic circuit design of a light strip 3 is described below in conjunction with Fig. 2 explained.
[0028] According to Fig. Figure 2 shows that the light strip 3 has a plurality of LEDs 4 and a controller 5 for the LEDs 4. The LEDs 4 can be individually controlled by the controller 5. As far as the data communication between the controller 5 and the LEDs 4 is concerned, the LEDs 4 can be controlled as shown in Figure 2. Fig. 2 can be directly controlled by controller 5. Alternatively, a serial arrangement is possible. Combinations of these approaches are also possible.
[0029] Controller 5 has an interface 6. Via interface 6, controller 5 dynamically receives a requested illumination state Z* from a control unit 7 of the medical device 1. The control unit 7 thus specifies the requested illumination state Z* to controller 5 and thereby (albeit indirectly) controls the LEDs 4. The requested illumination state Z* comprises, as shown in Fig. As indicated by a summation symbol, each of the LEDs 4 of the respective light strip 3 has a partial illumination state z*. The interface 6 is typically a serial interface. The respective partial illumination state z* corresponds to the state that the respective LED 4 should assume, i.e., the luminous flux (= output) that the respective LED 4 should emit. The respective partial illumination state z* is the result of a respective control signal c* (= input) of the respective LED 4.
[0030] Optionally, the controller 5 can have a further interface 8 to which the interface 6 of the controller 5 of another light strip 3 can be connected. The additional light strip 3 and its components are in Fig. 2 not shown.
[0031] The controller 5 can be configured as a microcontroller that executes a program. Regardless of the specific design of the controller 5, it always dynamically receives the requested illumination state Z* via interface 6, individually determines the respective control signal c* for each LED 4 of the respective light strip 3 based on the respective partial illumination state z*, and controls the LED 4 of the respective light strip 3 accordingly. The control signals c* are determined in such a way that the actual illumination state z of the respective LED 4 corresponds to the partial illumination state z* of the respective LED 4.
[0032] The light strip 3 is also connected to a power supply unit, which provides electrical energy to the LEDs 4 and the controller 5, and thus to the light strip 3 as a whole. The power supply unit is in Fig. 2 not shown.
[0033] The control unit 7 is also a component of the medical device 1. As described above, it serves to control the light strips 3. The control unit 7 can, in particular, be used as shown in Fig. 2. As indicated by the designation "uP" within the control unit 7, it is microprocessor-controlled and executes a control program 9 with which the control unit 7 is programmed. In this case, the control program 9 comprises machine code 10, which can be executed by the control unit 7.
[0034] The control unit 7 also includes a memory device 11. The memory device is located in Fig. 3 shown again separately.
[0035] In storage device 11, as shown in Fig. 3. First, the control program 9 is stored. Furthermore, 11 routines R are stored in the memory device. Each routine R contains code that can be directly executed by the control unit 7. Each routine R defines a specific sequence of illumination states Z*, which the LEDs 4 of the respective light strip 3 are to assume. Such routines R are known to experts. The routines R are in Fig. 3 each supplemented by a number, i.e. designated as R1, R2 etc., in order to be able to distinguish them from each other if necessary.
[0036] A program file 12 is also stored in memory device 11. Program file 12 contains a sequence of instructions A that can be executed by control unit 7. The instructions A are in Fig. 3 - analogous to the routines R - each supplemented by a number, i.e. designated as A1, A2 etc., in order to be able to distinguish them from each other if necessary.
[0037] Unlike the routines R, which contain machine code, the instructions A must first be interpreted by the control unit 7 before the respective instruction A is executed. For this purpose, a corresponding interpreter 13 is stored on the control unit 7. The processing of the instructions A by the control unit 7 is therefore carried out by interpreting them using the interpreter 13. The interpreter 13 is according to Fig. 3 is also stored in storage device 11. Alternatively, it can be stored independently or be a component of the control program 9.
[0038] As far as the control program 9, the routines R, and the interpreter 13 are concerned, the memory device 11 is usually an integral part of the control unit 7. For example, a processor and associated memory of the control unit 7 can be components of an ASIC. This can also be the case with regard to the program file 12. However, with regard to the program file 12, the memory device 11 can also be an independent component of the control unit 7. This independent component may be permanently connected to the control unit 7 or be a detachable unit connected to the control unit 7.
[0039] The control unit 7 is designed to operate the medical device 1 according to an operating procedure described below in conjunction with Fig. 4 is explained in more detail. If the control unit 7 is microprocessor-controlled, the training of the control unit 7 is carried out by programming with the control program 9.
[0040] According to Fig. In step S1, the control unit 7 checks whether it has been given a specification V. Depending on the specific circumstances, the specification V can be given, for example, by a higher-level control unit (not shown), by an operator (also not shown), or even by a patient (also not shown). Regardless of the method, the control unit 7 receives the specification V in step S2.
[0041] In step S3, the control unit 7 determines which of the instructions A in program file 12 it will begin interpreting. This determination is made using the input V. Depending on the input V, the control unit 7 can therefore determine, for example, instruction A1, instruction A3, or another instruction A in step S3.
[0042] In step S4, the control unit 7 interprets the instruction A determined in step S3 using the interpreter 13. The control unit 7 thus determines the corresponding executable code.
[0043] The following explanations of the further sequence are somewhat simplified, but they illustrate the principle.
[0044] After step S4, control unit 7 checks in step S5 whether the interpreted instruction A is a stop instruction. If so, control unit 7 terminates the processing of instructions A and returns to step S1. It then waits for the next input V. Otherwise, control unit 7 proceeds to step S6. In step S6, control unit 7 executes the last interpreted instruction A. Step S6 also includes determining the illumination states Z* and transmitting them to the light strips 3.
[0045] Then, in step S6, control unit 7 selects another instruction A. Normally, this is the next instruction A, corresponding to the sequence of instructions A in program file 12. However, it is also possible that the instruction A just interpreted is a jump instruction. In this case, the system jumps to the instruction A specified in the jump instruction. It is also possible that the instruction A just interpreted is a check. In this case, the selected instruction A may depend on the result of the check. Control unit 7 then returns to step S4.
[0046] Regardless of other circumstances, the instructions A at least specify which of the routines R are to be executed. This is illustrated below in conjunction with Fig. 5 explained in more detail.
[0047] According to Fig. The program file contains 12 (among other things) instructions A14 to A20. Instructions A14 to A19 specify which routine R is to be executed. Instruction A20 is a stop instruction. If the default value V is 3, instruction A14 is executed first. Thus, instructions A14 to A20, and therefore routines R1, R4, R3, R1, R2, and R3, are executed sequentially. If, however, the default value V is 4, instruction A18 is executed first. Thus, only instructions A18 to A20, and therefore routines R3 and R2, are executed sequentially.
[0048] As part of the procedure according to Fig. The instructions A specify exclusively which of the routines R are to be executed. The routines R themselves are not modified. However, it is also possible to parameterize the routines R. This is demonstrated below in conjunction with the Fig. 6 and Fig. Section 7 explains the routine R1. Analogous explanations apply to the other routines R.
[0049] According to Fig. The routine R1 can be parameterized with parameters P. Such parameterization is generally known to experts in conventional programming.
[0050] According to Fig. The instructions A of program file 12 (among other things) include specifications for the parameters P of routine R1. Therefore, if the setting V causes instructions A31 and A32 to be executed (alone or among other things), then, for example, the parameters P (or at least one of the parameters P) can be specified within instruction A31. When routine R1 is subsequently called in instruction A32, the parameters P are passed to routine R1. Thus, routine R1 is executed according to the specifications for the parameters P as defined by instruction A31.
[0051] The inventive procedure is particularly advantageous when, as described in Fig. 8. Several light-emitting diodes 4 are grouped together into a group 14 of light-emitting diodes 4. The light-emitting diodes 4 of the respective group 14 emit light at different wavelengths. This is shown in Fig. The letters R, G, and B, representing the colors red, green, and blue, indicate the groups 14. Each group 14 is also typically associated with a control logic 15. The LEDs 4 of each group 14—generally including the control logic 15—are arranged in a common housing 16. In the context of the present invention, "housing" refers to the respective mounting unit arranged on the respective light strip 3.
[0052] A supply voltage U is applied to the control logic 15 and the LEDs 4 of each group 14. The control logic 15 is also connected to a base potential GND. Control signals D are applied to the control logic 15, which include the control signals c* for the LEDs 4 of the respective group 14. The control logic 15 then controls the LEDs 4 of the respective group 14 accordingly. If necessary, the control logic 15 also outputs further control signals D', which are intended for other groups 14 of LEDs 4.
[0053] In the case of the formation of groups 14 of light-emitting diodes 4, the ones in Fig. 2 blocks shown and marked with reference numeral 4 (for the light-emitting diodes) each represent a group 14 of light-emitting diodes 4.
[0054] In summary, the present invention relates to the following situation: A medical device 1 has several light strips 3, each with a plurality of individually controllable LEDs 4, and a control unit 7 for controlling the light strips 3. Routines R and a program file 12 are stored on the control unit 7. Each routine R contains code that can be executed directly by the control unit 7 and defines a sequence of light states Z*, determined by the respective routine R, which the LEDs 4 of the respective light strip 3 are to assume. The program file 12 contains a sequence of instructions A that can be executed by the control unit 7 by interpreting them using an interpreter 13 stored on the control unit 7. The instructions A specify, at a minimum, which of the routines R are to be executed.The control unit 7 receives a specification V and, using the specification V, determines at which of the instructions A of the program file 12 the control unit 7 begins to interpret the instructions A.
[0055] The present invention has many advantages. In particular, it is possible to adapt or parameterize the response of the control unit 7 to a specific specification V even without in-depth programming knowledge, so that the creation of the program file 12 can, for example, also be carried out by a designer or a similar person.
[0056] Although the invention has been illustrated and described in detail by the preferred embodiment, the invention is not limited by the disclosed examples and other variations can be derived by the person skilled in the art without leaving the scope of protection of the invention. Reference symbol list 1 medical device 2 tunnels 3 light strips 4 LEDs 5 Controller 6 Interface 7 Control unit 8 more interfaces 9 Tax program 10 Machine code 11 Storage setup 12 program file 13 interpreters 14 Group of light-emitting diodes 15 Control Logic 16 cases Instructions c* controls D, D' control signals GND basic potential P Parameter R Routines S1 to S7 steps U Supply voltage V specification Z* requested lighting state z* Partial lighting states z actual lighting states
Claims
[1] Medical device (1), - wherein the medical device (1) has a number of luminous strips (3), - wherein the light strips (3) each have a plurality of individually controllable light-emitting diodes (4), - wherein the medical device has a control device (7) for controlling the light strips (3), - wherein the control unit (7) comprises a memory device (11) in which routines (R) and a program file (12) are stored, - wherein the respective routine (R) contains code which can be processed directly by the control unit (7) and defines a sequence of lighting states (Z*) determined by the respective routine (R) which the light-emitting diodes (4) of the respective light strip (3) are to assume, - wherein the program file (12) contains a sequence of instructions (A) which can be processed by the control unit (7) by interpreting them by means of an interpreter (13) stored on the control unit (7), - where the instructions (A) specify at least which of the routines (R) are to be processed, and - wherein the control unit (7) is designed, in particular programmed, in such a way that it receives a specification (V) and, using the specification (V), determines at which of the instructions (A) of the program file (12) the control unit (7) begins to interpret the instructions (A). [2] Medical device (1) according to claim 1, characterized by that the instructions (A) only specify which of the routines (R) are to be processed. [3] Medical device (1) according to claim 1, characterized bythat the routines (R) are designed as routines () that can be parameterized with parameters (P) and that the instructions (A) of the program file (12) comprise specifications for the parameters (P) of the routines (R), so that the routines (R) are executed during their execution in accordance with the specifications for the parameters (P) of the routines (R) made by the instructions (A) of the program file (12).