Assembly for testing a test object, method for operating an assembly for testing a test object, and use of an assembly for testing purposes
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- DSPACE SE & CO KG
- Filing Date
- 2024-05-29
- Publication Date
- 2026-05-06
AI Technical Summary
Current testing methods for test objects, such as control units, often require extensive resources and are inefficient, especially in the early development phase where real ECUs may not be available, necessitating simulated software-based tests. Additionally, there is a need for real-time monitoring and prioritization of critical data to quickly alert users to issues during testing.
An arrangement and method for testing a test object that includes a platform for data exchange with a user display and an external interpreter to query and prioritize data, generating messages based on urgency and importance, allowing for variable monitoring without impacting platform performance. This involves a software or hardware combination, with an external interpreter executing scripts to check data against thresholds and present priority messages on the display.
Enables efficient, resource-saving testing with real-time monitoring and prioritization of critical data, allowing for immediate user notification and troubleshooting, thereby optimizing the testing process without affecting platform performance.
Smart Images

Figure EP2024064750_02012025_PF_FP_ABST
Abstract
Description
[0001] Arrangement for testing a test object, method for operating an arrangement for testing a test object and use of an arrangement for testing
[0002] Technical area
[0003] The application relates to an arrangement for testing a test object and a method for operating such an arrangement for testing a test object. The application also relates to a use of the arrangement for testing.
[0004] background
[0005] The applicant is known for its ControlDesk™ experimental software for end-to-end ECU development. This experimental software can be used to perform a wide range of tasks associated with development and testing—from start to finish of an experiment—in a single workspace. For details on the aforementioned experimental software, see, for example, https: / / www.dspace.com / de / gmb / home / products / sw / experimentandvisualization / controldesk.cfm.
[0006] Against the background of the prior art, the object of the invention is to provide a testing arrangement, a method for operating a testing arrangement, and a use of a testing arrangement that further develop the prior art. Preferably, the invention mitigates or eliminates a problem of the prior art.
[0007] Overview
[0008] A test object is arranged in a test environment. The arrangement for testing the test object comprises the following: a platform configured to operate the testing of the test object and to exchange first data with a display for a user; an external interpreter configured to query second data from the platform via an interface by executing commands from a script; and, depending on a first test of the second data, to generate a message that can be displayed on the display and that has a higher priority in terms of urgency and / or importance than the first data; the message and the first data can be displayed on the display depending on the respective priority.
[0009] Furthermore, a method for operating an arrangement for testing a test object arranged in a test environment is proposed. The method comprises:
[0010] Exchanging initial data between a platform that runs the testing of the test object and a display for a user,
[0011] Querying second data from the platform via an interface by a script running on an external interpreter, and
[0012] Generating a message depending on a first check of the second data by the script running on the external interpreter, wherein the message is displayable on the display and is assigned a higher priority in terms of urgency and / or importance than the first data.
[0013] Optionally, the message can be displayed on the display. The generated message can also be processed in a manner other than by displaying it on the display, e.g., by making it available for a further processing step or for another security device.
[0014] The test setup and procedure enable variable monitoring of the test object without affecting the performance of a platform, such as the performance of ControlDesk™.
[0015] The arrangement and method make it possible to monitor the second data by checking the second data from the platform. Because an external interpreter is used, the performance of the platform is barely affected, if at all. Nevertheless, the arrangement and method create a mechanism that can display a message on the display for the user regarding the urgency and / or importance based on the review of the second data. This allows a user to be informed of problems as quickly as possible, and a solution can be pursued immediately. This leads to optimal use of the arrangement and method.
[0016] In this case, the arrangement can consist of software modules that run on one or more processors or on multiple cores of a multi-core processor. However, the arrangement can also be designed as a combination of software and hardware. Testing a test object means checking the functionality of the test object, with the testing preferably being carried out according to a predefined test or test specification. Such a test object can be control unit software or a control unit with corresponding software or other similarly designed objects. This test object is tested for its functionality using predetermined input data that the test arrangement applies to the test object. The test environment enables defined and structured access to the test object by providing the corresponding interface(s).
[0017] The test environment can thus provide environments for test objects embodied as hardware, software, or hardware with software, enabling, for example, hardware-in-the-loop (HIL) testing or software-in-the-loop (SIL) testing. This is an economical and resource-efficient method for testing control units, for example, for their functionality. Alternatively, in the case of vehicle control units, it would be possible to conduct test drives covering many kilometers to test the functionality of such a control unit under real-world conditions. However, this is complex, expensive, and requires a considerable amount of resources.
[0018] For example, in many cases, in an early development phase of ECU development, no “real” ECUs may yet be available, which may result in a requirement that a test should initially be carried out exclusively using a simulated and software-based test environment.
[0019] The test environment therefore tests the test object, e.g., the control unit or the control unit software, while the platform communicates with this test environment. The platform primarily performs monitoring and visualization via the display. This allows the user to view current or past test results of the test object. For example, if a battery control unit is being tested, for which the test environment simulates a battery environment—for example, an accumulator—for example, using a power electronics circuit, the test environment feeds the battery control unit with data to perform a comprehensive test of the battery control unit.
[0020] The platform can be embodied as a software module or as a combination of software and hardware and is further configured to conduct testing of the test object. Initial data is transmitted from the platform to a display for a user. The initial data can also be sent from the display to the platform, for example, when the user inputs data via an input device. Therefore, the initial data is exchanged between the display and the platform. Both the display and the platforms have corresponding interfaces for this purpose. Finally, in one embodiment of the invention, the platform can also only provide for the visualization of the initial data if the test environment independently performs testing of the test object.
[0021] Furthermore, the external interpreter is provided and configured to query second data from the platform via an interface by executing commands from a script and, depending on the first check of the second data, to generate a message that can be displayed on the display and that has a higher priority in terms of urgency and / or importance than the first data. The message and the first data can be displayed on the display depending on the respective priority.
[0022] Prioritization makes it possible to use the ad to display both the platform's initial data and the message. Both types of information can be made accessible to the user on the ad.
[0023] An interpreter is a computer program that directly executes a sequence of instructions, with a predetermined format. The interpreter reads one or more pieces of source data, analyzes this source data, and then executes them instruction by instruction, possibly directly executing the intended program code via intermediate steps. The interpreter translates the instructions into a higher-level programming language and executes them without the need for explicit compilation. Interpreters are suitable for performing error analysis. They are implemented externally, meaning they are logically separated from the platform, which may also have an internal interpreter.
[0024] The interface from the platform is a software interface, especially when both the external interpreter and the platform are software modules running on the same processor or processor configuration. It is also possible that the external interpreter and the platform run on different processor platforms, in which case a hardware interface is also provided in addition to the software interface.
[0025] In a particular embodiment of the invention, the processor is a multi-core processor with a first processor core and at least one second processor core, wherein the external interpreter runs on the first processor core and the platform runs on the second processor core. The latter embodiment has the advantage of improved decoupling of the external interpreter on the one hand and the platform on the other. This can relieve the load on the second processor core, particularly in the case of a particularly computationally intensive platform, and the probability of a computation time being exceeded, for example when processing a so-called hard real-time application on the platform, can advantageously be reduced. The external interpreter carries out the first check of the second data, for example by means of threshold comparisons.If the external interpreter detects a problem during these threshold comparisons or the threshold comparison, a message is generated that can be displayed on the screen and that has a higher priority in terms of urgency and / or importance than the initial data. This message is displayed to the user, for example, via a pop-up window or other highlighting. This message can be part of the initial data or transmitted separately from this initial data for display.
[0026] The display can be on computer screens or other mobile devices such as a tablet PC or a smartphone. The higher priority is recognized by the display and therefore the display also has data processing that is able to recognize such higher priorities and evaluate the first data accordingly. The message is displayed depending on the priority, i.e. how many values the priority can assume. If the priority is at a maximum value, for example, the message can cover up the other information that is displayed depending on the first data. The lower the priority of the first message, the less the message can cover up or displace other information on the display.
[0027] A script is a computer program written in a scripting language and executed by an external interpreter. Such scripting languages are suitable for rapid script creation and, for example, do not require variable definitions. Therefore, these variables are defined implicitly. In scripts, some checks are only executed when the script is executed, whereas in compiled programs, such checks are already checked during the compilation process.
[0028] The platform is designed to start the external interpreter, start the script, and / or terminate the external interpreter. This means that the platform performs a control function for the external interpreter. This can be done via the software interface, as specified above. Optionally, the platform can provide the external interpreter with information about which script should be started upon startup.
[0029] In addition, it is provided that the external interpreter is designed to query an operating state of the platform via the interface and, depending on a second check of the operating state, to terminate and / or pause and / or - e.g. after pausing - continue the execution of the script. The second check can be used to monitor whether the test object is still being tested by the platform. If, for example, it is detected that testing of the test object has been terminated, it can be provided that the script is terminated and / or paused by the external interpreter. After pausing, the external interpreter can then resume execution of the script after the second check, e.g. if the simulation is restarted. The external interpreter can also pause execution of the script after the second check, e.g. if it is detected that testing of the test object is interrupted.It can then continue execution of the script if the second check detects that testing of the test object is being continued. If the script is paused, execution is interrupted and, for example, the information about which instruction in the script is pending next is saved. When the script is resumed after the pause, execution is then continued from the point where it was paused, for example, with the next pending instruction. When the script is terminated, however, it can be specified that execution is terminated without the information about which instruction is pending next being retained. Re-executing the script can then be done as a restart starting from the first instruction in the script. The script can then be restarted, for example, by starting the script via the platform and / or the external interpreter.
[0030] In some embodiments, the script can also be started by the external interpreter.
[0031] Furthermore, the platform and / or the external interpreter can be configured to restart the terminated script. If, for example, the reason for terminating the script no longer applies, the script can then be restarted. If, for example, testing of the test object is resumed, the script can be restarted accordingly.
[0032] The external interpreter can be configured to perform the second test before the first test. This means that the operating state of these platforms is first evaluated, for example, to determine whether the platform is executing the test object's testing. If this operating state is such that continued operation is indicated, then the first test can be performed, for example, to determine whether the test object and / or the test environment are functioning correctly.
[0033] In particular, it can be provided that the external interpreter is designed to carry out the first and the second test cyclically, ie at certain intervals or repeatedly with a certain frequency.
[0034] Furthermore, it is intended that the second data relate to at least one system state of the test object that is safety-relevant and / or has a high priority. This could, for example, refer to short circuits or other fatal errors in the test object that can be detected by checking the second data.
[0035] In embodiments, the information about which second data is to be queried is stored in the external interpreter and / or passed to the external interpreter upon startup by the platform. This allows the external interpreter to focus on certain variables as the second data that are considered particularly critical.
[0036] In embodiments, it is provided that testing of the test object can be terminated depending on the first check of the second data. This means that if the second data indicates a serious error in the test object, testing of the test object is also terminated. This error must then be corrected first in order to subsequently continue testing the test object. Correcting the error may, for example, involve eliminating a short circuit.
[0037] In one embodiment, the message can be displayed as a pop-up message on the screen. A pop-up message is a message on a graphical user interface, as is currently common in computer systems. Pop-up messages are generally used to display additional content or to request a specific interaction. Pop-up messages typically appear and cover other parts of the user interface or the displayed data. This can be implemented using standalone windows, dialog boxes, or other elements.
[0038] Furthermore, it can be provided that the message includes at least one instruction for at least one security measure. Thus, the message can already offer a solution to the existing problem. The message can also provide hints for finding a solution to the existing problem. These instructions for security measures are then defined in advance and displayed when a problem occurs. Alternatively, an embodiment is proposed in which at least one instruction for at least one security measure is determined via a machine learning process, instead of rigidly defining the security measure to be selected in advance.The preferred machine learning method is the so-called "deep learning method," whereby artificial neural networks used by the deep learning method are trained, for example, based on evaluated previous manual selection processes of security measures. Artificially generated neurons are provided and used in such a way that the artificial neural network selects a learned security measure from a plurality of theoretically available security measures. Furthermore, the external interpreter can be configured as a Python interpreter. Python is a scripting language, i.e., a high-level programming language that is advantageous due to its flexibility and user-friendliness.It enables rapid development and prototyping, as code changes can be quickly interpreted and executed without the need for a lengthy compilation step. For example, it's possible to structure blocks using indentation. The external interpreter can alternatively use JavaScript and / or Ruby as a scripting language.
[0039] The same applies to procedural claims.
[0040] The described arrangement can be used with a test environment for testing and / or simulating the test object. In the test environment, the test object can be present as hardware and / or software. It is also possible for the test object to be present in the test environment in software form. The test object can, for example, be designed as an electrical energy storage device. With electrical energy storage devices, it is particularly important to notify a user of dangerous conditions with high priority—for example, due to the motivation to reduce or avoid an increased fire risk as early as possible. This is made possible by the described arrangement.
[0041] Character list
[0042] Embodiments of the invention are illustrated in the figures and are explained in more detail in the following description.
[0043] It shows
[0044] Fig. 1 is a block diagram of the arrangement,
[0045] Fig. 2 shows a flow chart of the process.
[0046] Fig. 1 shows a block diagram of the arrangement, with the platform CD and the external interpreter INT running on a processor P. As shown above, the processor P can be a single processor or a processor system, i.e. a system comprising multiple processors. The single processor can comprise one or more processor cores. The external interpreter INT can run on its own processor or processor system. The processor can be a multi-core processor, a multiprocessor, a microcontroller, or a combination of different processor types. Alternatively, the processor can be implemented as a so-called IP core on a programmable logic gate arrangement, for example on an FPGA component. The platform CD is connected to a display AN for data exchange of the first data D1.The CD platform enables engineers and developers to control, monitor, and configure the testing of the test object in the TU test environment. To this end, the CD platform exchanges data with the test environment.
[0047] For example, the display AN has a graphical user interface and is capable of displaying and pre-evaluating data D1. Therefore, the display AN has its own signal processing features, or such signal processing features are assigned to the display AN. The display AN presents the user with the current testing process for the test object via the initial data.
[0048] From the ON display, a user can access functions to define test sequences, set parameters, acquire data, visualize signals, and analyze results.
[0049] The external interpreter INT comprises a software program that directly executes code written in a higher-level programming language by converting it line by line into machine code or intermediate code, without prior compilation. The external interpreter INT exchanges second data D2 with the platform CD. Based on the second data D2, the external interpreter INT checks, via a running script, in a first check 206 whether the second data D2 is within corresponding, predetermined limits. This can also only be a limit; for example, the first check 206 can be designed to detect an exceedance of a measured or calculated value of the second data D2 beyond a maximum tolerable limit. If the limit is exceeded, in the latter example, the external interpreter INT would provide a corresponding message for display AN.
[0050] Depending on the first check 206 of the second data D2, e.g., whether the second data D2 exceeds or falls below permissible limits, a message is generated. The message is assigned a priority relative to the first data D1. The message can be displayed on the display AN next to the first data D1 depending on the respective priority. The external interpreter INT can also be directly connected to the display AN, or the external interpreter INT can forward this message to the display AN via the platform CD.
[0051] The CD platform receives the data from the test environment TU, at least parts of which are examined by the external interpreter INT as the second data D2. The first data D1 transmitted by the CD platform to the display AN can be at least partly the same data as the second data D2. Second data D2 that is not contained in the first data D1 can also be passed to the external interpreter INT. It is therefore possible that, in addition to the first data D1, the TU test environment also passes further data independent of the first data D1 to the CD platform, which the external interpreter INT then examines. For example, voltage values from a battery or a control unit can be checked to see whether they are within specified limits. If these voltage values are outside the specified limits, the message can be shown on the display AN. This then prompts the user to investigate the problem.The message may already contain possible solutions for the user. This alerts the user to predefined solutions and allows them to respond more quickly.
[0052] The test environment TU itself can be implemented in hardware and / or software, so that when the test environment TU is used for simulation purposes, both the so-called hardware-in-the-loop simulation, abbreviated as HIL simulation, and the so-called software-in-the-loop simulation, abbreviated as SIL simulation, are possible.
[0053] Fig. 2 shows a flowchart of the method. In an M1 method step 200, the CD platform is started. A second check 202 checks whether the CD platform is active with regard to testing the test object. If this is not the case, the external interpreter will terminate its script in an M4 method step 210. Alternatively, the external interpreter can simply pause the script and continue its execution at a later time, e.g., if the second check 202 shows that testing of the test object has been resumed. If the second check 202 determines that the CD platform is active with regard to testing the test object, a query can be made in an M2 method step 204 to transfer the second data D2 from the CD platform to the external interpreter INT.
[0054] During the first test 206, a check is made to determine whether the second data D2 lies outside of specified limits. If this is not the case, the program returns to the second test 202. If this is the case, however, a message is generated in an M3 method step 208, which may, for example, indicate that the variable checked using the second data D2 lies outside of specified limits and thus indicates a corresponding problem. This message can then be transmitted by the external interpreter INT directly or via the platform CD to the display AN. Furthermore, the message is assigned the appropriate priority with respect to its urgency and / or importance relative to the first data D1.
[0055] Particularly advantageous is the use of an arrangement disclosed here, comprising a test environment TU for testing and / or simulating a test object, in particular for testing and / or simulating an electrical energy storage device. The improved functionality of the aforementioned arrangement can prevent damage to the energy storage device, for example, in test cases at its load limit.
[0056] TU test environment
[0057] CD platform
[0058] D1 first data
[0059] D2 second data
[0060] INT external interpreter
[0061] ON Display
[0062] P processor
[0063] 200-210 procedural steps (listed in detail below:)
[0064] 200 M 1 process step
[0065] 202 Second Examination
[0066] 204 M2 process step
[0067] 206 First Examination
[0068] 208 M3 process step
[0069] 210 M4 process step
Claims
Claims 1. Arrangement for testing a test object arranged in a test environment (TU), comprising: a platform (CD) designed to operate the testing of the test object and to exchange first data (D1) with a display (AN) for a user, an external interpreter (INT) designed to query second data (D2) from the platform (CD) via an interface by executing commands of a script and to generate a message depending on a first test (206) of the second data (D2), which message can be displayed on the display (AN) and which is provided with a higher priority with regard to urgency and / or importance than the first data (D1), wherein the message and the first data (D1) can be displayed on the display (AN) depending on the respective priority.
2. Arrangement according to claim 1, wherein the platform (CD) is designed to start the external interpreter (INT), to start the script and / or to terminate the external interpreter (INT).
3. Arrangement according to claim 1 or 2, wherein the external interpreter (INT) is designed to query an operating state of the platform (CD) via the interface and to terminate and / or pause and / or continue the execution of the script depending on a second test (202) of the operating state.
4. Arrangement according to claim 3, wherein the platform (CD) and / or the external interpreter (INT) is designed to restart the terminated script.
5. Arrangement according to claim 3 or 4, wherein the external interpreter (INT) is designed to carry out the second test (202) before the first test (206).
6. Arrangement according to claim 3, 4 or 5, wherein the external interpreter (INT) is designed to perform the first and the second test (206, 202) cyclically.
7. Arrangement according to one of the preceding claims, wherein the second data (D2) relate to at least one system state of the test object which is safety-relevant and / or has a high priority.
8. Arrangement according to one of the preceding claims, wherein information about which second data (D2) are to be queried is stored in the external interpreter (INT) and / or is passed to the external interpreter (INT) upon start-up by the platform (CD).
9. Arrangement according to one of the preceding claims, wherein the testing of the test object can be terminated depending on the first test (206) of the second data (D2).
10. Arrangement according to one of the preceding claims, wherein the message can be displayed as a pop-up message on the display (AN).
11. Arrangement according to one of the preceding claims, wherein the message comprises at least one instruction for at least one security measure.
12. Arrangement according to one of the preceding claims, wherein the external interpreter (INT) is designed as a Python interpreter.
13. A method for operating an arrangement for testing a test object arranged in a test environment (TU), comprising: Exchanging initial data (D1) between a platform (CD) that operates the testing of the test object and a display (AN) for a user, Querying second data (D2) from the platform (CD) via an interface by a script running on an external interpreter (INT), and Generating a message as a function of a first check (206) of the second data (D2) by the script running on the external interpreter (INT), wherein the message is displayable on the display (AN) and is provided with a higher priority in terms of urgency and / or importance than the first data (D1).
14. The method of claim 13, further comprising: Display of the message and the first data (D1) on the display (AN) depending on the respective priority.
15. The method according to claim 13 or 14, wherein the external interpreter (INT) and / or the script is started by the platform (CD) and / or the external interpreter (INT) is terminated by the platform (CD).
16. The method according to any one of claims 11 to 13, wherein the external interpreter (INT) queries an operating state of the platform (CD) via the interface and terminates the execution of the script depending on a second check (202) of the operating state.
17. The method of claim 16, wherein the external interpreter (INT) performs the second test (202) before the first test (206).
18. The method according to claim 16 or 17, wherein the external interpreter (INT) performs the first test (206) and the second test (202) cyclically.
19. The method according to any one of claims 13 to 18, wherein the message is displayed as a pop-up message on the display (AN).
20. The method according to one of claims 13 to 19, wherein testing of the test object is terminated depending on the first test (206) of the second data (D2).
21. Use of an arrangement according to one of claims 1 to 12 with a test environment for testing and / or simulating a test object, in particular wherein the test object is an electrical energy storage device.