Method for operating a person detection device

A mobile service robot system efficiently evaluates and provides feedback on a person's movements by generating an observation point model and using asynchronous data processing, addressing resource conservation and interaction optimization.

WO2026017691A1PCT designated stage Publication Date: 2026-01-22TEDIRO HEALTHCARE ROBOTICS GMBH
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/070237
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-11-08
Filing Date
2025-07-15
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

Existing service robots face challenges in efficiently and robustly evaluating a person's movements over time, providing timely feedback, and optimizing human-machine interaction while conserving energy and resources, especially when dealing with diverse physical abilities and environments.

Method used

A computer-implemented method and system using a mobile service robot that detects and evaluates a person's movements through motion capture techniques, generates an observation point model, and provides feedback at defined intervals based on movement deviations, utilizing a modular architecture for efficient data processing and asynchronous communication between process nodes.

Benefits of technology

Enables standardized and efficient evaluation of movements, conserves energy, and optimizes human-machine interaction by providing timely and targeted feedback, even with varying physical abilities, while allowing for system updates and modular expansion.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025070237_22012026_PF_FP_ABST
    Figure EP2025070237_22012026_PF_FP_ABST
Patent Text Reader

Abstract

The invention relates to a device and a method for detecting and evaluating movements of a person and for generating feedback, having the steps of detecting the movements or poses of a person by means of a movement detection sensor, generating a monitoring point model of monitoring points for the detected person, evaluating the detected movements with respect to defined movement deviations on the basis of monitoring points of the monitoring point model in a first time interval, the time interval being dynamically determined, and outputting feedback to the detected person in a second time interval.
Need to check novelty before this filing date? Find Prior Art

Description

Title: Procedure for operating a person detection device Field of invention:

[0001] The fundamental inventive challenge is the resource-efficient, simplified, and robust evaluation of a person's movements over time, in one aspect using a mobile service robot, and the provision of feedback on the movement sequence to the person being tracked. This involves efficient data processing that, for example, conserves the energy resources of the system performing the data evaluation. The system, like a mobile service robot, should be robust and efficient in evaluating sensor data and integrate seamlessly into its work environment with people and objects that can move. Simultaneously, the feedback process should also simplify human-machine communication. As a further requirement, the application must be able to assess various movement deviations and, if necessary, connect via a wireless interface to the internet.The system should be able to be updated even with limited bandwidth. Furthermore, a reasonable cost-benefit ratio should be sought for the system's security measures. Background of the invention and prior art

[0002] Various service robots are known in the state of the art that, for example, record and evaluate movement sequences and provide feedback (WO2020144175A1, WO2019228977A1, W02021038109A1 and WO2019070388 A2 or Scheidig et al. 2019 (DOI: 10.1109 / ICORR.2019.8779369) and Trinh et al. 2020 (DOI: 10.1109 / RO-MAN47096.2020.9223482)), which essentially describe the recording of a person's movements and the provision of feedback. For example, Trinh et al. and WO2020144175A1 use timely or real-time feedback when a movement deviation is detected. Furthermore, Trinh et al., as well as WO2020144175A1, describe how movement deviations are prioritized within each time interval during movement recording.

[0003] The recording and evaluation of a person's movements is also described, for example, in WO2019228977 or W02014151700. Furthermore, those skilled in the art are aware of how body poses or movement patterns can be technically recorded and analyzed. Control mechanisms for mobile robots can be found, for example, in WO2021069674. W02021038109A1 also describes, for example, the sensor-based detection of pain levels. WO2021069674 mentions, for example, a safety driving control system that includes parts of the following implementation, but has the deficiency that it does not allow for a slight movement of a service robot upon triggering, so that it can be easily pushed by a person. General description of the inventive sub-problems, the invention and its components

[0004] The inventive sub-problem in this example is the efficient and simplified evaluation of a person's movements over time, particularly using motion capture techniques and preferably implemented on a mobile service robot, to provide feedback to the person on their movement sequence. The goal is to achieve an efficient evaluation and feedback process. This requires location-based person tracking to efficiently control the evaluation process. Another aspect is efficient motion analysis to ensure high recording quality. Furthermore, the feedback must be designed in such a way that, for example,A movement analysis exercise with a person is conducted efficiently in such a way that the learning effect is high, ideally resulting in fewer such exercises being necessary. This in turn saves energy during a series of analyses, as the series can then be shorter. Preferably, the person's movement analysis exercises are performed with a service robot that monitors the individual.

[0005] The implementation for solving this technical problem comprises a computer-implemented method for detecting and evaluating a person's movements. This includes identifying a person based on recognized patterns within captured sensor data, detecting the person using a motion detection sensor, generating an observation point model of observation points for the detected person by means of pattern evaluation and rules stored in memory, assigning (spatial) coordinates to the observation points of the observation point model, and evaluating the detected movements based on the observation points of the observation point model and by means of rules stored in memory. The detection of the person's movements and / or the rules associated with the identified person are preferably associated with positions in a coordinate system of a map.Different map coordinates can be stored using different configurations of a monitoring profile and with different rules, allowing for different monitoring of movements, for example, depending on the coordinates. A monitoring profile is maintained for the identified person, associated with rules stored in memory for evaluating the identified person's movements. Approaches for evaluating the detected movement are included in various embodiments, for example, in the detailed description. Data processing takes place within process nodes, meaning that sensor data from the motion detection sensor is also made available to other process nodes via a data channel, particularly for generating the observation point model, preferably using shared memory, remote procedure calls, or data packets with TCP / IP or UDP headers.The provision of data by a process node via a data channel, preferably using shared memory or via data packets with TCP / IP or UDP headers, also triggers a state machine. The invention further comprises a device for carrying out the aforementioned method, which is, for example, configured as a mobile service robot. The invention further comprises a system with a motion detection sensor for recording the movement of a person, a computing unit and a memory, and a person identification module in the memory for identifying a person. The system consists of a basis of recognized patterns within the captured sensor data, an observation point model generation module in memory for generating observation points for the captured person by means of pattern evaluation by the processing unit and rules stored in memory, and the assignment of coordinates to the observation points of the observation point model by the processing unit, an observation point evaluation module in memory with rules for evaluating at least one captured movement based on observation points of the observation point model, and a wireless interface configured for transmitting the monitoring profile, whereby a monitoring profile is maintained in memory for the identified person, which is associated with rules for evaluating the movements of the identified person and, if applicable, coordinates on a map. These rules preferably describe exercises or assessments to be carried out with the respective person.The system preferably includes a pose detection module in memory with rules for detecting poses by comparison with stored poses based on at least one subset of observation points from the observation point model, as well as a scoring point determination module in memory, which is associated with the observation point scoring module in one aspect, with rules for determining and scoring a scoring point based on the evaluation of observation points between the initial pose and the final pose by an evaluation of the time course of the person's poses within the repetitive movement, performed by the processing unit. Furthermore, the system optionally includes a map module in memory that provides coordinates which are associated with the recording of the person's movements and / or the evaluation of the person's movements, each based on rules stored in memory.The motion detection sensor preferably makes generated data available to at least one other process node via a data channel using a process node, preferably via shared memory or as data packets with TCI / IP or UDP headers. The process node that provides the data from the motion detection sensor preferably also triggers the state of a state machine.

[0006] The inventive subtask in this example is the analysis of a person's movements and the generation of feedback by a motion analysis system (preferably a mobile service robot) that detects a person, records and analyzes their movements, and provides feedback to the person on these movements. One challenge that arises here is, firstly, to perform a standardized evaluation of the movement sequences, for example, of a walking person. This evaluation should be possible regardless of the person's physical characteristics (fitness level, height). Secondly, a person may exhibit a multitude of detected movement deviations, each requiring different feedback that needs to be orchestrated. The output of feedback also implies the need to verify whether this feedback has been implemented, in order to then, if necessary,The system will provide repeated feedback until the desired training effect is achieved. This is intended to technically maximize the training effect.

[0007] The implementation of the technical solution comprises a computer-implemented procedure for recording and evaluating a person's movements over time and for generating feedback to the person, including the recording of a person using a motion detection sensor, the generation of an observation point model of observation points for the recorded person using pattern evaluation and rules stored in memory, the evaluation of the recorded movements with regard to defined movement deviations based on observation points of the observation point model and / or derived evaluation points and rules stored in memory for these in a first time interval, and the output of feedback to the person via an output unit in a second time interval following the first time interval regarding the determined movement deviation.Furthermore, the procedure preferably includes a third time interval (following the second time interval) in which no feedback is provided. This time interval is intended, for example, to allow the person time to implement the feedback. Different lengths of time intervals can be selected here, for example, based on previous evaluations, if the person had difficulties with implementation. This is preferably followed by a fourth time interval in which the movement deviation identified in the first time interval and associated with feedback in the second time interval is re-evaluated as a deviation type. This time interval can also be used to allow the person time to implement the feedback. Finally, feedback is preferably provided in a fifth time interval following the fourth time interval regarding the movement deviation evaluated in the fourth time interval. This allows the person, for example, to...Feedback is provided on whether the individual successfully implements the initial feedback, thus improving the training effect. In a specific variation, the third time interval is zero. This gives the individual little time to implement the feedback, as the fourth time interval immediately follows, during which the movement is again evaluated. The length of the time intervals can be defined by the number of steps taken. This allows for a standardized assessment, independent of the individual's fitness level or size. The system prioritizes movement deviations identified in the first time interval and provides feedback in the second time interval on the deviation with the highest priority from the first. This ensures, for example, that the training focuses on the most important aspects and achieves improvement in these areas.Furthermore, feedback is preferably provided in the fifth time interval, based on movement deviations with different priorities than the feedback provided in the second time interval. Even if movement deviations with the same priority are detected in the first and fourth time intervals, different feedback is still preferably provided in the second and fifth time intervals. This is intended, for example, to clarify for the person in a different way what they should improve in their movement sequence. Preferably, several loops from time intervals one to five are executed, in which feedback is provided based on at least two differently prioritized and detected movement deviations. This is intended, for example, to achieve a comprehensive evaluation and improvement of the movement sequence through the feedback. The system then closes after the person's movements have been recorded. A final time interval (after at least the fifth time interval) is preferably used to provide feedback via the output unit. This feedback is based on several, i.e., at least two differently prioritized and detected, movement deviations, involving the statistics module. This implies, for example, that results from the preceding time intervals are displayed in aggregated form. For instance, the person might be shown that they walked with their legs too wide three times and too crooked twice (which would represent aggregated movement deviations). This feedback was previously displayed in different time intervals, making this feedback output an aggregated form of feedback. This provides participants who have completed the exercise with a concise summary of their mistakes, enabling them to improve in the next exercise.Before generating an observation point model, the recorded person is preferably identified by capturing their personal characteristics and comparing these characteristics with those stored in a database. Furthermore, the person is preferably re-identified over time during the recording of their movements. The evaluation of the recorded movements is based on evaluation rules for movement deviations stored in the database, which are associated with the identified person. These evaluation rules, which are associated with the identified person, are preferably linked to positions in a coordinate system on a map.The provision of captured movement data, person identification data, observation points, observation point evaluations, path planning data, map data and output data is preferably implemented via process nodes and data channels, through which data is provided via shared memory or TCP / IP or UDP headers.

[0008] The invention further comprises a system for recording and evaluating a person's movements over time and for generating feedback, comprising a motion detection sensor for recording a person's movement, a computing unit and a memory, an observation point model generation module in the memory for generating an observation point model from the person's observation points by the computing unit, an observation point evaluation module in the memory with rules for evaluating at least one recorded movement based on a monitored observation and / or evaluation point in the computing unit, and an output unit for outputting feedback based on a feedback generation module located in the memory.wherein the observation point evaluation module is configured to evaluate the detected movements in a first time interval, and the feedback generation module initiates the output of feedback on the detected movement deviation via the output unit in a second time interval following the first. The observation point evaluation module is preferably configured to re-evaluate movements in a fourth time interval (following the second time interval) and to output feedback in a fifth time interval following the fourth time interval regarding the movement deviation evaluated in the fourth time interval. Preferably, the fourth time interval involves a re-evaluation of the movements evaluated in the first time interval. The identified movement deviations, associated with feedback in the second time interval, are categorized as deviation types. This is intended, for example, to verify whether the feedback from the second time interval was implemented based on the movement and / or pose deviations recorded in the first time interval. The feedback generation module preferentially triggers at least two feedback responses for movement deviations with different priorities. It preferentially triggers feedback in the second time interval for the detected and highest-priority movement deviation from the first time interval. It preferentially triggers feedback output in the fifth time interval for feedback based on movement deviations with different priorities than those output in the second time interval, or different feedback for movement deviations detected in the first and fourth time intervals with the same priority. This is intended, for example, to...The system presents the person's movement deviation in a different way so that they understand it. Furthermore, after several additional time intervals following the fifth time interval, there is preferably a final time interval in which feedback is output based on at least two differently prioritized and detected movement deviations (and preferably using a statistics module). This feedback could, for example, be a summary showing which movement deviations were identified in total and how frequently they occurred. Triggering the feedback generation module preferably initiates a feedback output via the output module and the output unit. The system also preferably includes a person identification module for identifying the person, preferably before the generation of the observation point model and using the RFID reader.In an alternative embodiment, person identification is achieved using a motion detection sensor. The system further includes a person re-identification module for re-identifying the person over time, preferably using the motion detection sensor. For the identified person, rules stored in memory are used to associate the movement assessment in the observation point evaluation module with the re-identified person. The system also preferably includes a pose detection module in memory with rules for detecting poses, a wireless interface for data exchange, and a map module in memory that provides coordinates. These coordinates are associated with the recording of the person's movements, the processing of the recorded motion detection sensor data, and / or the evaluation of the person's movements, each based on rules stored in memory.The data provision of the motion detection sensor and / or at least one of the mentioned modules is designed as a process node that provides data to other process nodes via a data channel (e.g. preferably via shared memory or as data packets via TCP / IP or UDP headers).

[0009] The inventive sub-problem in this example is the efficient and robust evaluation of a person's movements over time, while saving computational effort, preferably for a mobile service robot, by implementing location-dependent rules that reduce the scope of certain computationally intensive operations to defined operating areas of the mobile service robot. In this context, the process of user interaction between the... Service robots and a person interacting with the service robot are optimized, preferably during the monitoring of a movement exercise with the person.

[0010] A technical solution to this problem is described by restricting the calculation to specific spatial positions of the service robot. Specifically, a computer-implemented method for controlling and operating a mobile service robot that monitors a person's movements (and accompanies them, for example, by maintaining a constant minimum distance) encompasses the identification of a person at the mobile service robot based on recognized patterns within the captured sensor data, the association of the identified person with a stored monitoring profile, the detection of the person using a motion sensor while the mobile service robot travels a path, the generation of observation points for the detected person, and the evaluation of the detected movements of the person based on the observation points, the stored monitoring profile, and associated rules.The process involves retrieving position data as coordinates from a map associated with components of the monitoring profile, and automatically outputting notifications via an output unit on the mobile service robot to the detected and identified person as soon as the mobile service robot reaches a defined position or a minimum distance to a position associated with rules stored in memory within the map's coordinate system while traversing its path. This output preferably does not constitute feedback on a motion analysis. Furthermore, notifications preferably occur within a defined time interval after reaching the minimum distance to the associated position. The output could, for example, be a voice message via a loudspeaker.A display output is provided via a display and / or a signaling element via a light source. Person detection and / or sensor data generation for creating the identification profile are performed, for example, by the motion detection sensor. The monitoring profile is preferably associated with evaluation rules for assessing the movements of the identified person. The monitoring profile is associated with at least two positions on a map that can be reached by the mobile service robot. Path planning between the individual positions on the map is preferably performed by the path planning module of the service robot. Preferably, one of the two positions is a starting position and the other is a turning position, upon reaching which the service robot moves back to the starting position.preferably together with the person. When moving between the starting position and the turning position, the service robot preferably moves in front of the person. The monitoring implemented within the computer-implemented method preferably includes, as components, the monitoring of movements using a motion detection sensor and, optionally, the monitoring of vital parameters using a vital data acquisition sensor based on rules stored in memory. For example, if, in addition to the identified person, at least one other person is detected by the motion detection sensor while completing a path, and the sensor data generated by the motion sensor for the at least one other detected person contains a face of the detected person, then this face is preferably tracked and linked. Optionally, for the purpose of comparing the retrieved position data of the map with the position of the service robot on the map, aPosition determination of the service robot via an odometry unit and / or an environmental sensor, each based on a first coordinate system, and the detection of the person by a motion detection sensor with a second coordinate system, wherein the evaluation of the movements preferably takes place based on coordinates within a unified coordinate system, based on the transformation of the coordinates from one of the two coordinate systems into the other or on the transformation of the coordinates of both coordinate systems into a unified coordinate system. A motion assessment of the detected person is preferably performed using assessment rules described elsewhere in this document. These assessment rules, which are associated with the identified person, are preferably triggered via a wireless interface if they are stored on the service robot.In particular, by associating the monitoring profile with the evaluation rules, wherein the monitoring profile is in turn associated with the person being monitored. The recording of the person's movements and / or the evaluation rules associated with the identified person in the monitoring profile are preferably associated with positions in a coordinate system of a map at which person detection takes place for the purpose of evaluating the recorded poses of the person. Within the framework of the computer-implemented procedure described here, the provision of recorded movement data, person identification data, observation points, observation point evaluations, path planning data, map data and / or output data preferably takes place at least partially via a process node and by means of a data channel.The data is provided via a data channel, preferably using shared memory or data packets with TCP / IP or UDP headers. The technical solution further comprises a device for carrying out the method described herein, for example, a mobile service robot. The technical solution also includes a system comprising a computing unit and memory, a motion detection sensor for recording the movement of a person, a person identification module in memory for identifying a person based on recognized patterns within the recorded sensor data, a monitoring profile of the person stored in memory, which is associated with or contains rules for evaluating the movements of the recorded person, and an observation point model generation module in memory for generating observation points for the recorded person by the computing unit and the rules stored in memory.An observation point evaluation module in memory with rules for evaluating at least one movement based on the monitoring profile from memory using a processing unit; a map module in memory with coordinates that are at least partially associated with the monitoring profile; a path planning module in memory for planning the movement of the mobile service robot along a path using coordinates from the map module (which, for example, displays data on target positions and stationary obstacles) using a processing unit; an output module in memory with instructions for the detected person for outputting the instructions via an output unit, with rules stored in memory for triggering output to the detected person via the output module and output unit, wherein the rules are associated with positions on the map stored in the map module and optionally trigger the output automatically when the service robot reaches a defined position on the map. The output to the detected person via output module and output unit is preferably associated with rules from the monitoring profile stored in memory. Furthermore, the system preferably has an anonymization module for combining facial data captured by the motion detection sensor from another person. The system also has a wireless interface configured for transmitting a monitoring profile of the person. The provision of data from the motion detection sensor preferably occurs at least partially via a process node and a data channel. The aforementioned modules of the system are preferably implemented within one or more process nodes and provide data to another process node via a data channel. Data provision via a process node preferably occurs via data packets with TCP / IP or UDP headers or via shared memory.

[0011] The inventive sub-problem, in one aspect, is the efficient output of feedback from a system for recording the movements of a person, preferably a service robot, in order to make human-machine interaction during training with a mobile service robot user-friendly. A boundary condition here is that the system should be able to evaluate people with different physical abilities uniformly, which, for example, with regard to the evaluation and output of walking exercises, also implies different walking speeds of the individuals.

[0012] This is achieved through the following presentation, in which the content of several time intervals differs from the content of other, similarly named time intervals elsewhere in this document, particularly the third and subsequent time intervals. Ascending numbering indicates, for example, that the second time interval follows the first, and so on. To enable standardized assessment, the time intervals are adjusted to the number of steps taken by a walking person, or their duration is defined by the number of steps recorded. This allows slow and fast walkers (e.g., due to different characteristics such as height or fitness level) to be assessed based on the same number of steps taken. This ensures that a standardized assessment can be carried out and that individuals receive timely feedback. For example, if the assessment...If feedback were only given after a fixed time, such as ten seconds, a fast person would have already completed many steps with an incorrect movement pattern, while another fast person would have only taken a few steps. To ensure that even the fast person receives timely feedback, the focus is on the number of steps rather than a fixed time interval for all users. This also improves the quality of the feedback.

[0013] The technical solution comprises a computer-implemented method for recording and evaluating a person's movements over time and generating feedback to the person, including recording a person's movements using a motion detection sensor, generating an observation point model of observation points for the recorded person, and evaluating the recorded movements with regard to defined movement deviations based onThe first time interval includes observation points of the observation point model and / or derived evaluation points and rules stored in memory for these points, which also includes the following procedural steps: determining steps from the evaluation of the movement sequence during the first time interval; summing the steps and comparing the summed steps with a threshold; ending the first time interval when the summed steps have reached the threshold; determining movement and / or pose deviations in the first time interval; and issuing feedback to the person in a second time interval based on the determined movement and / or pose deviations.Preferably, after determining movement and / or pose deviations in the first time interval, a prioritization of the movement and / or pose deviations takes place and feedback is given to the person on the highest prioritized movement and / or pose deviation in the second time interval.Furthermore, the procedure includes the recording of a person's movements using a motion detection sensor, the generation of an observation point model of observation points for the recorded person, the evaluation of the recorded movements with regard to defined movement deviations based on observation points of the observation point model and / or derived evaluation points and rules stored in memory for these in a third time interval, which also includes the following procedural steps: determining steps from the evaluation of the movement sequence during the third time interval, summing the steps and comparing the steps with a threshold value, and ending the third time interval when the summed steps have reached the threshold value.The procedure preferably further comprises: outputting feedback to the person in a fourth time interval relating to a movement and / or pose deviation detected in the third time interval, wherein the movement and / or pose deviation is the one with the highest priority in the first time interval; and outputting feedback in a fourth time interval based on movement and / or pose deviations detected in the third time interval. These procedural steps are preferably repeated several times within a time window defined in a monitoring profile, depending on the movements to be evaluated. There is also preferably a final time interval which, after the recording of the person's movements is complete, includes the output of movement deviations recorded in previous time intervals and / or feedback issued in previous time intervals via an output unit.This final time interval preferably occurs after several time intervals in which the person was observed and received feedback based on the evaluated observations. In one aspect, the final time interval occurs when the service robot remains in a position, for example, at the starting position after returning to it following the completed route. The output movement deviations and / or feedback are aggregated over at least one time interval, for example, as a statistical evaluation in the form of tables or graphs. These can, for example, show which specific errors in the movement sequence the person made in the last exercise, i.e., in the preceding time intervals, how often (per exercise) and / or in how many exercises the person made these errors. past events. Movement deviations and / or the feedback provided can therefore refer to multiple time intervals. Movement deviations that occurred in several (e.g., consecutive) time intervals can thus be output together. However, it is also possible for movement deviations that occurred in several (e.g., consecutive) time intervals to be output in summarized form. The same applies to the feedback. The movement deviations to be recorded, the movements and / or poses to be recorded, and / or the duration of the recording of the movement deviations are preferably stored in or associated with a monitoring profile.In a preferred embodiment, coordinates for carrying out at least one of the aforementioned steps are stored in or associated with the monitoring profile, and the detection of a person's movement is automatically triggered when a comparison of the coordinates stored in or associated with the monitoring profile, determined by sensors (e.g., by at least one environmental sensor and / or an odometry unit), reveals that these coordinates have been reached. "Associated" in this context means that, for example, an exercise is defined in the monitoring profile, and an area where this exercise is to be carried out has been defined on a system that monitors the exercise. The processing of the data for generating observation points and the evaluation of the movement preferably takes place within process nodes, which receive their output data, for example, from...The output data is then made available to other process nodes via at least one data channel, with the output data preferably transmitted via shared memory or data packets with TCP / IP or UDP headers. In addition to these process steps, a device for carrying out the previously described computer-implemented method is also included, for example, a mobile service robot.

[0014] The inventive subtask is the efficient and complexity-reducing processing of captured movement data from a person, for example, to output ideally real-time feedback. This data processing is to take place on a mobile service robot or a mobile device. Since the data processing is intended to address a multitude of applications, the underlying system architecture must be able to reflect this, allowing for the easy addition of specific computational steps as the system expands. System updates should be possible via a wireless interface and, in the future, via the internet. The latter necessitates a modular architecture that can be updated at the module level, thereby limiting the data volume required for updates. This also has the side effect of reducing the memory requirements of the algorithms associated with data processing.Furthermore, asynchronous data processing would imply greater system robustness, for example, against disturbances. Data processing should also function efficiently on a distributed system, as is often the case in robotics, where multiple processors or sensors are sometimes used, each handling part of the data processing. This necessitates data processing between process nodes that perform these calculations across multiple hardware components. On the one hand, the system must run smoothly; on the other hand, if the sensors provide large amounts of data, such as image data, which are then processed further, it must also be performant if real-time feedback for users is to be provided in the end. This makes it sensible to choose data exchange formats that meet these requirements.

[0015] A solution to the technical problem is achieved in particular through the use of process nodes for distributed data processing and reduction of code complexity, as well as process nodes that perform various relevant computational steps and between which asynchronous communication takes place. One possible technical solution to the problem is a computer-implemented method for capturing and evaluating a person's movements, comprising capturing a person using a motion detection sensor, generating an observation point model of observation points for the captured person using pattern recognition and rules stored in memory, and assigning coordinates to the observation points of the observation point model using an observation point model generation module.Pose determination using a pose determination module based on the observation points from the observation point model, and evaluation of the observation points using an observation point evaluation module, wherein the pose determination module or the observation point evaluation module, as a process node, provides data to at least one other process node via at least one data channel and / or receives data from at least one other process node. This enables, for example, asynchronous and thus robust communication between the process nodes. The recording and / or evaluation of a person's movements is preferably performed automatically.The system is triggered when a person reaches a specific position on a map and is within the detection range of the motion sensor. The system preferably further includes providing feedback to the detected person based on an evaluation of the observation points. Preferably, prior to the person being detected by the motion sensor, the person is identified using a person identification module and / or a person re-identification module for re-identifying the person during detection by the motion sensor using stored patterns. In this case, a monitoring profile is maintained for the detected and identified person.that is associated with rules stored in memory for evaluating the movements of the identified person by the observation point evaluation module. The observation point evaluation module preferably evaluates several observation points together. The data generated by a process node preferably represents time signals and / or measurement series. A data channel is preferably designed for asynchronous data communication. The data provided to a data channel preferably has a TCP / IP or UDP header. Alternatively and / or additionally, the provision and / or reception of data between at least two process nodes takes place via shared memory or remote procedure calls. In one aspect, asynchronous data communication represents the time-delayed writing of data to the data channels by a process node.while at least one other process node (simultaneously or with a time delay) reads data from the data channel. The aforementioned observation points are preferably associated with (spatial) coordinates. Dine, Data transmission from the motion detection sensor to the observation point model generation module, from the observation point model generation module to the pose detection module, and / or from the pose detection module to the observation point evaluation module preferably occurs via data containing a TCP / IP or UDP header. The detection of the person by the motion detection sensor, the observation point model generation module, the pose detection module, the observation point evaluation module, and / or combinations thereof are preferably invoked as a state by a state machine. Preferably, the detection and / or evaluation of the person's movements is associated with at least one position on a map. For example, a state of a state machine is invoked by at least one process node based on coordinates, where the coordinates are associated with a map of the map module.The technical solution further comprises a device for carrying out the described computer-implemented method, wherein one aspect of the device is a mobile (service) robot. In one embodiment, the detection and / or evaluation of a person's movements occurs automatically when the mobile (service) robot reaches at least one position associated with the map.The technical solution further comprises a system for recording and evaluating a person's movements, with a computing unit and memory, a motion detection sensor for recording a person's movements, and in memory an observation point model generation module for generating an observation point model of observation points for the recorded person by means of pattern evaluation and rules stored in memory and assignment of (spatial) coordinates to the observation points of the observation point model, a pose determination module, and an observation point evaluation module, wherein the pose determination module is for determining poses based on the observation points from the observation point model and the observation point evaluation module is for evaluating the observation points, wherein the motion detection sensor transmits data via a process node over at least one data channel (e.g.Preferably via shared memory or via a data packet with a TCP / IP or UDP header, the data is made available to at least one other process node and / or receives data from at least one other process node. The pose determination module and / or the observation point evaluation module preferably constitute, individually or in combination, a process node that makes data available to at least one other process node via at least one data channel and / or receives data from at least one other process node. The data of the at least one process node that is made available via a data channel preferably has a TCP / IP header. The data that an observation point model generation module makes available as a process node via a data channel includes at least a portion of an observation point model based on at least two observation points.The data provided by a pose detection module as a process node via a data channel (e.g., preferably via shared memory or via a data packet with a TCP / IP or UDP header) preferably represents poses or quantities derived from them as time signals. A process node representing an observation point evaluation module preferably represents evaluated motion data as time signals. The system preferably includes further data in memory. A state machine whose states are invoked by data from one or more process nodes via the observation point model generation module, the pose determination module, and the observation point evaluation module. The detection and / or evaluation of a person's movements by the motion detection sensor and the observation point evaluation module is preferably performed automatically when the system reaches a position associated with a map from the map module and the person is preferably also within the detection range of the motion detection sensor. The system further preferably includes a feedback generation module for generating feedback based on the evaluation of the observation points by the observation point evaluation module and an output unit for outputting the generated feedback to the detected person.

[0016] In one aspect, the inventive sub-problem is to configure a service robot in such a way that it implements resource-efficient operating time planning in order to maximize the service robot's operating time. To this end, the service robot minimizes its travel times and the associated distance traveled, which in turn leads to less wear, e.g., on the wheels. At the same time, the user interaction process is to be optimized, preferably in the context of a movement exercise that a service robot performs with a person. The person is to cover a distance, the length of which is not precisely defined, between a starting position and a turning point within a defined time window. If the time for the distance traveled is not a multiple of the defined time, the movement exercise would either take longer or shorter than planned. This can, for example,Extending the training period and performing multiple such exercises with additional people results in the service robot covering significantly more distance and consuming more energy than planned, thus requiring more charging breaks and enabling it to complete fewer exercises with fewer people per day. Therefore, the distance to be covered should be adjusted to the defined time, which will be achieved through path planning.

[0017] This subtask was solved as follows: It comprises a computer-implemented method for path planning a mobile service robot, including retrieving a monitoring profile for monitoring a person from memory. From this monitoring profile, a time duration is read over which the service robot is to travel a distance with the person and / or monitor the person (e.g., while accompanying them), preferably between a starting position and a turning point where the service robot performs a U-turn. The service robot moves, preferably together with the person, along the route between the starting position and the turning point, performing a U-turn at the turning point. A new turning point is then defined, at which the service robot simulates a change of direction and moves to a predefined position.There are now at least two different designs for determining the new turning position.

[0018] In the first embodiment, a determination is made before the new turning position is determined. The system determines the average speed of the service robot or the person while traversing the route, the remaining distance after which, at the determined average speed and within the recorded time period, the traversal of the route should be terminated, and a remaining distance. The remaining distance is preferably calculated as the difference between the open distance and integer multiples of the distance between a starting position and the turning position. When defining a new turning position, at which the service robot reverses direction and moves to a stored position, the distance between the starting position and the new turning position is preferably approximately half the remaining distance. The aforementioned average speed is preferably determined after 50% or more of the time stored in the monitoring profile, measured from the start of the route traversal with the person.

[0019] In the second embodiment, before setting the new turning position, the following steps are performed: determining the time already elapsed for completing the route and / or monitoring the person; determining the direction of movement of the service robot; determining the difference between the read time duration and the time already elapsed; and triggering an action when the time threshold is undershot. Preferably, the triggering action, when the service robot is on its way to its starting position, terminates the completion of the route or the monitoring of the person when the service robot has reached the starting position again. Furthermore, preferably, when the service robot is on its way to the turning position, the triggering action sets a new turning position that is closer to the starting position than the original turning position.

[0020] Regardless of these at least two embodiments, the robot preferably ends its journey with the person after the time specified in the monitoring profile. Furthermore, in a preferred embodiment, the service robot oscillates back and forth between the starting position and the turning position, depending on the time and distance between these two positions. The service robot also preferably executes the turn at the turning position if the calculated time difference between the time specified and the time already elapsed exceeds the threshold value. Furthermore, the person is preferably detected by at least one sensor for monitoring purposes while the robot is traversing the path.In a preferred embodiment, the technical solution further comprises, after detecting the person, determining the distance between the service robot and the person who is moving ahead of or following the service robot while the service robot travels the route (and preferably accompanies the person), and preferably maintaining a distance interval or an approximately constant distance between the service robot and the person. Preferably, the distance interval or the approximately constant distance between the service robot and the person is between 60 cm and 5.5 m. Preferably, the robot travels a route between at least two waypoints, the coordinates of which are defined by a map in the map module, and between which the service robot determines at least one route using a path planning module.The service robot preferably travels between two waypoints within the time frame defined in the monitoring profile, covering only a portion of the distance between the two waypoints. This allows, for example, the target to be reached. The system achieves the ability to adjust the distance traveled to the duration of the journey. Preferably, before or during the journey, position data is retrieved as coordinates from a map associated with components of the monitoring profile. Based on these retrieved coordinates, output is triggered via the service robot's output unit by comparing position data stored in the monitoring profile with the service robot's current position data. In a preferred embodiment, during the journey, the person is detected using a motion sensor. An observation point model for the detected person is generated using pattern recognition and predefined rules stored in memory. Finally, the detected movements are evaluated based on the observation points of the observation point model and predefined rules stored in memory.Further exemplary embodiments are described elsewhere in this document. A combination with the time intervals described elsewhere in this document, which are self-evident to a person skilled in the art, is also possible. Furthermore, as described elsewhere, data exchange between modules configured as process nodes can take place via data channels, preferably using shared memory or data packets with TCP / IP or UDP headers.The technical solution further comprises a device for carrying out the method and / or a service robot with a computing unit, a sensor for monitoring purposes and a memory with a monitoring profile with a duration for which the service robot is to travel a path with the person and / or monitor the person, after which the travel of a path with the person is to be terminated, a path planning module configured to determine a path to be traveled by the service robot between a start and a turning position, and a dynamic turning position determination that sets a new turning position that is closer to the start position than the previously used turning position.The dynamic turning position determination can, based on a) the average speed of the service robot and the remaining time, b) the direction of movement of the service robot, and / or c) the elapsed time and duration from the monitoring profile, set a new turning position that is closer to the starting position than the previously used turning position. The service robot preferably also includes a map module that provides coordinates for the position data of the starting position and the turning position, or, depending on the monitoring profile, triggers output via the service robot's output unit based on a comparison of position data stored in the monitoring profile and the current position data of the service robot. The service robot preferably also includes a distance control module to maintain a minimum distance between the service robot and the person being detected.One of the sensors is preferably a motion detection sensor for recording the movements of a person. Furthermore, in a preferred embodiment, the service robot comprises an observation point model generation model for generating observation points of the recorded person, an observation point evaluation module for evaluating the movements of the recorded person, a pose determination module for determining poses of the person, and preferably also a feedback generation module for triggering feedback based on prioritized movement deviations. an output module and an output unit. Preferably, the service robot also includes a person identification module for identifying the person at the mobile service robot based on stored patterns within the acquired sensor data, and preferably a person re-identification module for re-identifying the person during detection by the person detection sensor using stored patterns. In a preferred embodiment, the service robot is configured such that a state machine triggers the output of an output unit via a loudspeaker and / or a display when the service robot has reached a turning position.

[0021] In one aspect, the service robot may become obstructive during operation, for example, if it encounters an obstacle. In this case, it should be easy to push it away. However, this can be made difficult by the standard modes of the service robot's safety motion control, because the mechanical resistance of the motor may be so high that pushing is only possible with considerable effort. This can be the case, for example, if a safety motion control is configured to explicitly hinder movement, for instance, to prevent the robot from rolling away when it stops on an incline. The inventive solution is implemented via a safety motion control that includes a mode allowing the mobile robot to be moved slightly once it has come to a standstill, provided the safety motion control is configured accordingly.is triggered. This inventive subtask is solved as follows:

[0022] The safety motion controller is configured to directly or indirectly control at least one motor of a mobile robot, with a first, second, third, and preferably fourth state, wherein in the first state the power supply of the at least one motor is regulated such that the force caused by the current flow in the motor and the force acting on the position of the mobile robot in the horizontal plane is greater than the sum of the inertial forces of the mobile robot acting in the horizontal plane; in the second state the current flow in the at least one motor is regulated such that a negative acceleration of the mobile robot occurs down to a speed of zero;In the third state, the current flow in the at least one motor is regulated in such a way that the force generated by the at least one motor and acting on the position of the mobile robot in the horizontal plane corresponds at least to the sum of the rolling resistance and rotor inertia of the at least one motor, so that the mobile robot essentially remains in its position in the horizontal plane;and the fourth state is preferably activated by triggering a switch, or alternatively, by detecting, using the inertial sensor, that the mobile robot is on a horizontal plane. In the fourth state, the current flow in the at least one motor is regulated such that the force generated by the current flow in the at least one motor and the force acting on the position of the mobile robot in the horizontal plane approximately equals the sum of the opposing forces acting in the horizontal plane caused by the inertia of the mobile robot. Alternatively and / or additionally, in the fourth state, the current flow in the at least one motor; Preferably, the current flow in the at least one motor is controlled such that the force generated by the current flow in the at least one motor essentially compensates for the rotor inertia of the at least one motor. In this case, slight pushing of the mobile robot is possible in this fourth state. The second state is preferably triggered by the detection of an obstacle, by association with a defined position, and / or by user interaction during the first state. In the third state, the current flow in the at least one motor is preferably controlled such that the force generated by the motor and the force acting on the position of the mobile robot in the horizontal plane correspond approximately to the sum of rolling resistance, rotor inertia, and at least one other force, so that the mobile robot essentially remains in its position in the horizontal plane. This other force is determined, for example, by means of an inertial sensor.The additional force acts on the mobile robot from the outside or results primarily from gravity because the mobile robot is on an inclined plane. In one aspect, in the third state, the current in the motor is regulated to zero amperes to compensate for any back EMF that might occur in the motor due to a pushing motion. Thus, in the third state, the mobile robot is preferably relatively difficult to push. The third state is preferably reached when a speed of zero is achieved. In the fourth state, if a back EMF occurs (e.g., due to pushing), the current is not regulated to zero amperes in the motor. The safety motion control system determines (directly or indirectly via a motor controller), preferably using a rotary angle sensor, a speed or acceleration that is proportional to the rotational speed or acceleration of at least one drive wheel of the mobile robot.The measured forces are preferably determined by means of rotations detected by the rotary angle sensor or by measuring acceleration using the inertial sensor. The safety motion controller either has its own memory or access to a memory that stores values ​​for at least one maximum speed of a mobile robot, wherein the speed of the mobile robot is determined by the safety motion controller directly or indirectly (via a motor controller) using the rotary angle sensor and / or an environmental sensor. If this maximum speed is exceeded by the mobile robot, the current flow in the at least one motor is limited by the safety motion controller. This at least one maximum speed is preferably dependent on the size of a protective field that defines a monitoring area of ​​the environmental sensor.The invention further comprises a device with the described safety motion control. The invention also includes a method for controlling a mobile robot by means of a safety motion control, comprising completing a path in an environment with stationary and mobile obstacles, decelerating the mobile robot to a speed of zero, and triggering the safety motion control by activating a switch, such as an emergency stop, after decelerating the mobile robot to a speed of zero, or alternatively, for example, by evaluating the data from an inertial sensor 62 to determine whether the mobile robot is on a horizontal plane. Preferably, triggering the safety motion control involves the flow of current in the at least one motor such that the force generated by the current flow in the at least one motor substantially compensates for the rotor inertia. Triggering the safety motion control causes the current flow in the at least one motor to be regulated such that the force generated by the current flow in the at least one motor and acting on the position of the mobile robot in the horizontal plane approximately equals the sum of the opposing forces acting in the horizontal plane due to the inertia of the mobile robot. Braking preferably occurs through the detection of at least one mobile obstacle within the detection range of the environmental sensor, but also through reaching a target position and / or user interaction with a person. The at least one mobile obstacle is preferably located within the detection range and, in particular, within the protective field of the environmental sensor.The mobile robot preferably completes a path in a first state of the safety motion control, braking preferably in a second state, assuming a standstill position preferably in a third state, and assuming a fourth state preferably after triggering a switch such as an emergency stop, or alternatively, for example, by evaluating the data from an inertial sensor to determine whether the mobile robot is on a horizontal plane. The invention further comprises a mobile robot with a safety motion control as described. This mobile robot preferably includes a motion detection sensor, a vital signs sensor, and / or a radar sensor.The mobile robot further preferably comprises a person identification module, a motion capture data processing module with preferably an observation point model generation module, an observation point evaluation module, and a feedback generation module. The sensor data from the motion capture sensor, the vital signs sensor, and / or the radar sensor are preferably provided via a process node through at least one data channel, preferably using shared memory, remote procedure calls, or data packets with a TCP / IP or UDP header. The feedback generation module, or the output of feedback, is preferably triggered by a state machine.

[0023] The invention described herein extends not only to a service robot with safety motion control, but also to a safety motion control as a single system configured to control a service robot or other mobile robot.

[0024] Another technical challenge is minimizing the technical risks for a person interacting with a mobile service robot, while also keeping development effort, the number of hardware components, and the complexity of data processing security on the mobile service robot within reasonable limits. The technical solution here is to decouple the safety-critical systems from the application layer in such a way that a high level of security is implemented at the hardware level, while the security level at the application layer can be reduced. A further advantage of this implementation is that the time-consuming validation at the application layer can be less extensive, which is particularly beneficial when many applications are to be implemented. The solution to these technical problems is implemented as follows: The mobile service robot has a processing unit and memory, as well as aA safety motion control system, wherein the safety motion control system reduces the speed of the service robot or influences the direction of movement of the mobile service robot based on sensor data when at least one environmental sensing sensor providing the sensor data detects an obstacle, wherein the computing unit accesses the safety motion control system or a motor controller via at least one interface, and wherein the computing unit's access to the safety motion control system or the motor controller cannot override the effects of the safety motion control system on the speed or direction of movement of the mobile service robot based on obstacle detection. Preferably, the reduction in speed or change in the direction of movement of the mobile service robot is achieved by regulating the current flow in the at least one motor of the service robot and is, also preferably, carried out by a motor controller.The sensor data is provided by an environmental sensing sensor, which may be a 2D or 3D camera, a radar sensor, a laser scanner, and / or a safety contact strip. Preferably, at least two environmental sensing sensors are used. Preferably, an obstacle is located within the protective field of an environmental sensing sensor, in particular a laser scanner, or the safety contact strip is triggered. Data transmission between the safety motion controller and the at least one environmental sensing sensor, or at least one rotation angle sensor that detects the rotation of the service robot's drive wheels, preferably occurs via two channels. Preferably, one of the channels is analog, and the other is digital.The safety motion controller continuously monitors whether data transmission between the sensors is bi-channel. If bi-channel transmission fails, it triggers a braking maneuver of the mobile service robot to a standstill. A reset of the braking command and a subsequent start command are then required before the mobile service robot, initiated by the processing unit, can resume movement. The service robot has at least one application in memory, preferably a navigation module, a path planning module, an observation point evaluation module, a feedback generation module, an output module, a person identification module, and / or a person re-identification module. This application triggers access to the safety motion controller and / or the motor controller, for example, via the processing unit.to specify a movement of the service robot in a certain direction, a certain speed of the service robot, etc.

[0025] Another technical challenge is the adaptive control of the mobile service robot, or more generally any hardware unit, also known as a person detection unit, to enable people training with the service robot to practice with as little pain as possible. For this purpose, adaptive adjustments to the exercises are preferably implemented on the service robot.

[0026] The solution comprises a computer-implemented method for operating a person detection device, including the identification of a person based on recognized patterns within captured sensor data, as well as the recording of the person's pain level. The recording of the Pain levels are preferably measured via an input unit such as a display. The measured pain level is evaluated, for example, compared with a threshold stored in memory, and an event is triggered based on the evaluation, for example, if the pain level exceeds the threshold. This event preferably takes the form of output via an output unit, activation of a motor controller of the person detection device depending on the evaluation (e.g., exceeding one or more thresholds), transmission of information via a wireless interface, and / or adjustment of the monitoring profile with regard to duration and / or distance to be covered during an exercise. The monitoring profile is preferably stored in memory of the person detection device and is preferably associated with stored rules for evaluating the movements of the identified person.The aforementioned rules, which are associated with the identified person, are preferably associated with positions in a coordinate system of a map. The computer-implemented method further preferably comprises, in one aspect, the detection of the person using a motion detection sensor, the generation of an observation point model of observation points for the detected person by means of pattern evaluation and rules stored in memory, and the evaluation of the detected movements based on observation points of the observation point model and by means of rules stored in memory. The evaluation of the detected movements is preferably carried out by rules that are sufficiently described elsewhere in this document for a person skilled in the art, whereby the time intervals mentioned elsewhere can also be used.This motion detection preferably occurs while the detected person is traversing a path with the person detection device. The solution further includes a device for carrying out the procedure. In addition, the technical solution is defined by a person detection device or a mobile service robot with a processing unit and memory, a person identification module in the memory for identifying a person, a pain assessment module in the memory for evaluating the pain detected by the identified person via an input unit, and, based on the pain assessment, output via an output unit, control of a motor controller of the person detection device, adjustment of a monitoring profile stored in memory, and / or transmission of information via a wireless interface.The person detection device preferably further comprises a motion detection sensor for detecting the movements of a person, an observation point model generation module in memory for generating an observation point model of observation points for the detected person, an observation point evaluation module for evaluating the observation points of the detected person, a map module that provides coordinates for associating the monitoring profile with a map, and rules in memory for evaluating the detected movements of the person.

[0027] If a fragile person is practicing with a service robot as described above, they may fall during the exercise. The technical challenge here is to configure the service robot to increase the person's safety. This will be addressed in the following implementation, among other things, by... The solution is that the mobile service robot should trigger an alarm upon detecting a fall, ideally avoiding false alarms and simultaneously ensuring that helpers can assist the fallen person without the robot's presence hindering them. This is achieved through the following configuration of the service robot.

[0028] The solution comprises a computer-implemented method for controlling a mobile robot after detecting a fall. This method includes tracking the person over time using a motion sensor, evaluating the person's movements over time with regard to a fall by comparing the detected movements with patterns stored in the robot's memory, and triggering a signal depending on the evaluation result. In one aspect, the mobile robot stops its movement if it detects a fall. Preferably, the robot also anticipates an input within a defined time period (e.g., 15 seconds), for example, via the display, preferably by pressing a display button, which signals to the robot that the initial alarm was a false alarm.Depending on the input, the signaling process is either aborted (preferably if a display button has been triggered, indicating a false alarm), or the mobile robot continues to navigate to a target position, preferably if no input is received via an input unit such as the display. Furthermore, the mobile robot preferably waits at this target position once it has reached it. This target position is preferably in the direction of travel of the mobile robot as it was moving while detecting the person.

[0029] In a preferred embodiment, the person and the mobile robot move along a path during the tracking of the person by the mobile robot, for example, during an exercise that the person performs together with the mobile robot. In a preferred variant, the mobile robot moves ahead of the person, for example, at a defined distance. The evaluation of the person's movements is performed, for example, using at least one observation point of an observation point model generated from the data of the motion detection sensor. The classification of the evaluation preferably includes a threshold comparison and the triggering of a signal preferably when the threshold is undershot. This threshold is preferably the position of the person's head above the ground, i.e., for example, the height of the head. Thus, the threshold for the height of the head above the ground is preferably between approximately 40 and 90 cm.

[0030] The signaling method mentioned includes, for example, signaling via an output unit, an acoustic signal (such as speech output), or a visual signal, such as a signal on a display of the mobile robot or a light element. The light element can encompass at least 50% of the mobile robot's horizontal circumference. In one aspect, this light element is an LED ring.

[0031] The solution also includes a mobile robot configured to perform the described procedure. Furthermore, it includes a mobile robot configured to record a fall event of a detected person over time and to signal the fall event for at least [number] days. An output unit for controlling a target position after detecting a fall event, depending on an input. In one aspect, the input triggers a cancellation of the signaling; in another aspect, the control is initiated if no input is received within a defined time.

[0032] This achieves the aforementioned objectives by alerting others in the vicinity of the fallen person. The person being alerted can cancel the alert if it is a false alarm or if the fall was minor. By directing the robot to the target location, helpers can assist the fallen person without the mobile robot obstructing their path if they do not cancel the alert. Drawings: Fig. 1: View of the service robot from the outside Fig. 2: Hardware components of the service robot Fig. 3: Software components of the service robot Fig. 4: Data processing: Process nodes and data exchange Fig. 5: Data processing: Software modules, process nodes and data channels Fig. 6: Extract of state machine Fig. 7: Evaluation of the movements of a recorded person Fig. 8: Determination of the evaluation points Fig. 9: Evaluation of movements and feedback Fig. 10: position-dependent feedback Fig. 11: Determining the turning position Fig. 12: Alternative determination of turning position Fig. 13: Safety motion control and associated processes Fig. 14: Components in the context of safety motion control Fig. 15: Technical risk management using safety motion control Fig. 16: pain level-dependent operation Detailed description:

[0033] The system and process are now described using several drawings. These illustrations are for illustrative purposes only, and some process steps and system components may be optional. Furthermore, all systems and processes can be implemented within a single service robot 1, but this is not mandatory.

[0034] Fig. 1 shows a mobile service robot 1 with at least one motion detection sensor 5 (in this illustration, two such sensors are shown, their areas on the outer shell of the service robot 1 being outlined). The motion detection sensor 5 is preferably used to detect the movements of a person and can, in one aspect, be a 2D and / or 3D camera 8 or a radar sensor 9. It can also be used for navigation purposes to perceive the environment of the service robot 1, for example, to detect static and / or dynamic obstacles and store them on a map in the map module 31. The motion detection sensor 5 can also, in another aspect, function as a vital data acquisition sensor 7, implemented by a 2D and / or 3D camera 8 or a radar sensor 9. Alternatively, the vital data acquisition sensor 7 can also be present as an alternative or supplement to the motion detection sensor 5.The vital data sensor 7 allows the recording of a person's vital parameters such as heart rate, respiration, body temperature, etc. In one aspect, a temperature sensor 15 (e.g., an infrared sensor) is also installed on the service robot 1, configured to record the body temperature of a person interacting with the service robot 1. The position of the motion detection sensor 5, vital data sensor 6, and / or temperature sensor 15 is located below the display 12 of the service robot 1 in one aspect, and above it in another. Furthermore, the service robot also has at least one loudspeaker 11 and at least one environmental sensing sensor 6, which can be, for example, a laser scanner 14, a 2D and / or 3D camera 8, or a radar sensor 9. The environmental sensing sensor 6 serves to detect and map the environment of the service robot 1 and to identify stationary or moving objects.to detect dynamic obstacles in this environment. In one aspect, the environment detection sensor 13 is oriented in the direction of travel of the service robot 1, while the motion detection sensor 5 is oriented against the direction of travel.

[0035] Fig. 2 presents a different view of the hardware components of the service robot 1 (or the person detection device 100), some of which were not shown in Fig. 1 because they are located under the housing of the service robot 1. These hardware components may be present in this combination, but they do not have to be; that is, there may be fewer or more hardware components than those shown here. This also applies to Fig. 1. The hardware components present on the service robot 1 include a processing unit 3 (e.g., a PC with, for example, a graphics processing unit) and a memory 2, which interacts with the processing unit 3 and whereby the processing unit 3 executes, for example, data or software modules stored in the memory 2. The service robot 1 has, for example, a wireless interface 4 (e.g., WLAN, mobile network, or similar) for data exchange. Furthermore, Fig.2 also that the service robot 1 has extensive sensor technology, such as. As already partially explained above for Fig. 1, the service robot also has at least one output unit 10, such as a loudspeaker 11, a display 12, or a light element 18. In addition, the service robot 1 has an odometry unit 13 for position determination, as is well known from the prior art. Furthermore, the service robot 1 optionally has an RFID reader 17 for reading (and possibly writing) RFID transponders 16, which can, for example, trigger certain actions on the service robot 1. Fig. 2 also shows a safety motion controller 60 (which is also explained in more detail in Figs. 13 and 14). This controls the at least one motor 61 of the service robot 1 in different states. The safety motion controller 60 reduces, for example,Upon detection of an obstacle by an environmental sensor 6, the speed of a moving service robot 1 is reduced to 0 meters per second in one aspect to prevent a collision with the obstacle. The safety motion controller 60 accesses an inertial sensor 62 located within the safety motion controller 60. The inertial sensor 62 can determine forces acting on the service robot 1, such as a force generated by pushing the service robot 1 or a force that sets the service robot 1 in motion on an inclined plane. It can have different states, as described in more detail elsewhere, and thus control the at least one motor 61 differently. The safety motion controller 60 has a control memory 66 in which, for example, maximum speeds of the service robot 1 are stored.The safety motion controller 60 evaluates, for example, at least one rotation angle sensor 64 and / or the inertial sensor 62 to determine the speed of the service robot 1 and / or forces acting on it. The safety motion controller 60 is preferably connected to an emergency stop 65, which can activate and deactivate one of the operating modes. This operating state, which can be activated by the emergency stop 65, ensures that the current in the at least one motor 61 is regulated by the safety motion controller 60 such that the rotor forces of the motor 61 are approximately equal to the forces corresponding to the inertia of the service robot 1 in the horizontal plane, without any external force acting on the service robot 1, e.g., by pushing.In a third operating state, the forces acting on the rotor of the motor are preferably higher than in the second state and they cause the service robot 1 to be difficult to move by pushing, i.e., at least a force of 25 Newtons is necessary for pushing, preferably at least 40 Newtons.

[0036] As shown in Fig. 3, the service robot 1 or the person detection device 100 has a number of software modules in its memory 2, which are executed by the processing unit 3. These modules may, but do not all have to be, present in combination. These software modules include a motion detection data processing module 22, which, for example, contains an observation point model generation module 23 for generating observation points (e.g., specific joint points of a detected person and their (spatial) coordinates), an observation point monitoring module 24 for monitoring the position or number of detected observation points, an observation point evaluation module 25, for example, for evaluating the position of observation points over time, and an evaluation point determination module 26 for identifying specific The module includes observation points or quantities derived from observation points, and, for example, their tracking over time by comparison with stored patterns, and / or a pose determination module 27 for identifying specific body poses based on determined observation and / or evaluation points, in one aspect over time. Sensor data from the motion detection sensor 5 is preferably used as input to the motion detection data processing module 22 or the observation point model generation module 23.

[0037] The aforementioned observation point model generation module 23, stored in memory, generates observation points for the detected person using pattern evaluation performed by the processing unit 3 and rules stored in memory 2. This involves segmenting the sensor data captured by the motion detection sensor 5 (e.g., a Microsoft Kinect). For example, a captured silhouette of a person is detected using pattern comparison, in one aspect using machine learning models such as Random Forest. Sub-segmentation of individual body elements of the detected silhouette then takes place, assigning observation points to, for example, the person's head and joints such as knees, hips, elbows, hands, etc. This is a process that occurs, for example, in the Microsoft Kinect SDK, which works in conjunction with the Kinect, as should be familiar to those skilled in the field.In the observation point model generation module 23, the individual observation points are also displayed in a context that reflects the spatial structure of a person, e.g., by connecting the respective observation points that represent an arm or a leg. This creates an observation point model (often also known as a skeletal model) that allows for the evaluation of a person's movements. Spatial coordinates are also assigned to the individual observation points of the observation point model by means of the processing unit 3 (e.g., also part of the functionality of the aforementioned SDK), thus enabling a spatial evaluation of the movement pattern of the person detected by the motion sensor 5, such as an approximation of the person's size by determining the distance between spatial coordinates of observation points associated with a person's head and foot. These can, for example,This can also be used in distance control module 37 to adjust the distance between service robot 1 and the person so that the distance between the person and the robot is defined such that the person is typically still recognized. Another application of (spatial) coordinates arises, for example, in observation point monitoring module 24, where the detection of observation points associated with specific body parts of the person is compared using rules. Here, for example, the detection of an ankle point vertically above an observation point associated with a head can be recognized as implausible, indicating an evaluation error and thus potentially triggering re-identification.

[0038] The term "rule" is to be interpreted broadly. Such a rule can, for example, mean that a specific value is compared with stored values, such as a range of values, in the sense of: if A, then B. However, the term "rule" also encompasses the use of classifiers, such as those generated by machine learning methods, for example, through regression models like logistic regression, support vector machines, neural networks, etc. In this case, a comparison must be made. It does not have to be deterministic; similarity values, fuzzy logic, etc., can also be used.

[0039] Service robot 1 also has a pose detection module 27 stored in memory 2 with rules for detecting poses by comparison with poses stored in memory 2, based on at least a subset of observation points from the observation point model. A pose can be defined by a classifier, generated, for example, using machine learning (e.g., SciKit Leam as a tool), by neural networks (e.g., convolutional neural networks), or by rule-based approaches, where a pose is defined, for example, by the orientation of vectors between observation points and the angles between these vectors. For example, a sitting pose can be determined by classification using neural networks based on comparison poses in which people have been labeled as sitting, or by threshold values ​​of angles. In the latter case, the sitting pose can be defined, for example, by...This can be determined rule-based by ensuring that the knee angle is approximately 90 degrees (with a range of, for example, 20 degrees), and that a vector extending from the hip or lower spine towards the head is approximately vertically oriented, again defined with certain maximum deviations (e.g., 15° laterally, 10° backwards, and 25° forwards to account for a possible forward tilt of the person). A pose can also be defined from a subset of observation points of the observation point model.

[0040] To detect repetitive movements, the pose detection module 27 has rules to identify an initial pose, an intermediate pose (if applicable), and a final pose for the repetitive movement, each defined by at least a subset of observation points. The detection of these initial, intermediate, and final poses can also be determined by the processing unit 3 through comparison with classified poses stored in memory 2. In one aspect, intermediate poses can also be defined as transitional poses, representing deviations from the initial pose to the final pose, taking into account the temporal progression of observation points. For example, a repetitive movement representing standing up from a seated position and then sitting down again could be classified as such.The movement is defined by variations in the angle of the knee joint over time, whereby an angle on the order of 90% is followed by an angle significantly greater than 90°, while an angle significantly less than 90° would not represent an intermediate pose that would help define the repetitive movement.

[0041] In one aspect, the service robot 1 also has a scoring module 26 in memory 2. This module, via processing unit 3, determines one or more scoring points, for example, between the initial and final poses, by evaluating the time progression of the person's poses within the repetitive movement. The one or more scoring points allow for an evaluation of the repetitive movement. This is done, for example, by tracking at least one observation point over time and comparing the observation point with rules stored in memory 2. Such a rule, which describes the evaluation or determination of a scoring point, can, for example, represent the maximum position of the observation point above the ground within an interval defined by a start and an end pose or final pose. Thus, this is a An evaluation point, for example, is an observation point at a defined time. This maximum above the ground can be used to evaluate an exercise in which a person raises and lowers their arms, which is a repetitive movement. If the observation points, representing the raised hands, reach a maximum above the ground within the interval, and this maximum exceeds a certain threshold, it can be determined whether the exercise was performed correctly. This evaluation of correct execution is a judgment that takes place at the evaluation point—the maximum above the ground. Furthermore, it could also involve mathematical derivations of the movements, such as the velocity of the observation points (i.e., accelerations), which in turn reach a minimum or maximum value. Therefore, the evaluation point could, for example...to determine an extreme value, or alternatively, a turning point of an observation point tracked over time. Based on the determined evaluation point, a repetitive evaluation can be performed, for example, by the observation point evaluation module 25 located in memory 2. This module can evaluate determined evaluation points, observation points, or poses determined by the pose determination module 27 based on observation points. In the aforementioned example of raised arms, this evaluation could mean checking whether the person, according to instructions issued by service robot 1, held their arms raised for a defined period and thus maintained this specific pose. If they did not, a pose deviation is present. If the evaluation concerned the raising of the arms, it would be a movement. A movement deviation could, for example, be a different raising speed of the arms.Other deviations from the defined movement pattern can include different step lengths than those specified in the rules, different step sequences, body sway (when no sway is intended), limb movements that deviate from the trajectory defined in the rule stored in memory 2, etc. Various approaches can be used to evaluate a movement or pose, such as the relative position of the coordinates of an observation or evaluation point in space, for which coordinate-related thresholds have been defined. For example, it can be defined that a hand must be at a certain height above the ground (either in absolute terms or relative to the person's height), with the defined height acting as the threshold.However, it can also involve pattern comparisons of a complete observation point model with stored observation point models, for which classification methods from machine learning are used, e.g., support vector machines, random forest models, etc. Generally, experts know how to evaluate such movements. The movements themselves can be fitness exercises, but also the walking of individuals, for example, after surgery on the lower musculoskeletal system or with neurological impairments. These individuals can exhibit a whole range of deviations from a "normal" gait pattern, such as that of a healthy person, which is stored, for example, as a pattern or rule in memory 2. This also applies to movement exercises such as walking with alternating arm raises, etc. The extent of a detected deviation is therefore individual and can be determined, for example, experimentally. Observation of relevant individuals and subsequent translation into algorithms. This also applies to the type of movement deviations that a system should sensibly detect. Conversely, the positive case can also be defined, namely the "normal" movement sequence, whereby a movement deviation is defined at a certain degree of deviation from this. Experts can be consulted, for example, to derive the rules. Accordingly, a movement or pose deviation exists when a pose or movement of a person, preferably recorded by means of observation points, deviates spatially or spatiotemporally from movements or poses stored in memory 2, whereby the deviation can be determined by threshold comparisons or machine learning approaches. An evaluation of the deviation is also carried out, for example, using rules stored in memory 2, which, or the difference values ​​recorded from the classification or vs.Assign a rating score to each threshold value, which can depend on the degree of deviation. Within the framework of the rules, feedback can also be assigned in memory 2 for detected deviations or combinations of deviations. Prioritization of different detected movement deviations and / or feedback is also possible. Apart from a rating point, the observation point rating module 25 can also be used to evaluate a pose or movement based on recorded observation points without determining a rating point, e.g., the duration of sitting, how well sitting conforms to a specification (e.g., defined by angles that must not exceed certain defined thresholds, etc.). Poses and the angles underlying them, as well as quantities derived from them, such as distances between observation points over time (which, for example, result in step lengths defined by, for example,The spatial position of ankle joint points over time), but also assistive devices used by the person, detected by pattern matching and evaluated in conjunction with observation points, are recorded by the motion detection sensor 5 and incorporated into the observation point evaluation performed by processing unit 3. In one aspect, the evaluation of the observation point evaluation module 25 can involve a joint evaluation of two subsequent repetitive movements, each with at least one evaluation point determined within the repetitive movements, and by comparing measured values ​​with evaluation rules stored in memory 2. To stay with the example of upward arm extension, the evaluation considers, for instance, whether the hands were extended to a comparable height in the second extension exercise as in the preceding one.Alternatively and / or additionally, the evaluation of a repetitive movement can be carried out by the observation point evaluation module 25 by determining the distance between at least two observation points and comparing the determined distance with evaluation rules stored in memory 2 by the processing unit 3, whereby the observation point evaluation module 25 determines, for example, the minimum of the ankle points over time and, upon reaching two subsequent minima, defines the distance of the evaluation points, based on the (spatial) coordinates, as the step length. In one aspect, the evaluation of a repetitive movement is carried out by determining the distance between at least two observation points and at least one evaluation point, which was determined, for example, within a repetitive movement. Comparison of the determined distance with evaluation rules stored in memory 2. An example of this would be determining the stride length as already described, which must have a minimum length ("large stride") while simultaneously raising the arms, which in turn are raised and lowered during walking. A maximum of an observation point, e.g., the wrist skeletal model point, above the ground is evaluated together with the stride length. The distances between the ankle points as observation points and the wrist point located at a local maximum above the ground over time can, in turn, represent a pose that needs to be evaluated. The rules of the observation point evaluation module 25 can be made available to the service robot 1 via a wireless interface 4 in one aspect, for example, to...to update, redefine, or assign to a specific user (the latter can be done using a monitoring profile). Alternatively and / or additionally, the rules can be triggered, for example, by transmitting the monitoring profile via wireless interface 4. This means, for example, that the transmitted monitoring profile calls up certain rules stored on service robot 1. The rules can also be associated with an identified person. This means, for example, that a monitoring profile can be made available to service robot 1 via wireless interface 4, or such a profile stored in memory 2 can be updated. A monitoring profile is associated with stored rules for evaluating the movements of the person identified by the person identification module 20. That is, the monitoring profile contains, for example,The monitoring profile describes which movements of the person detected by the service robot 1 are to be evaluated by the observation point evaluation module 25, such as the exercise in which the person takes steps of a certain length while repeatedly extending their arms. Furthermore, parameters such as the height of the person being monitored can be stored in the monitoring profile. The monitoring profile, or components thereof, can also be associated with, for example, the coordinates of a map stored in the map module 31 of the service robot 1, and thus, in turn, with specific rules. In one aspect, location-dependent rules are stored with regard to exercises to be performed at specific locations, such as exercises to be monitored, as well as characteristics of the person being monitored and / or combinations thereof. In an alternative aspect, the monitoring profile—characterized, for example, by an ID—simply establishes a link between, for example, a monitoring profile and a map module 31 of the service robot 1.a pseudonymized profile containing personal characteristics relevant for monitoring the individual, such as their height, between monitoring rules (e.g., observing specific movements or poses and / or their duration), and / or between location-based rules (e.g., describing specific navigation maneuvers of the service robot), or between combinations of monitoring rules and location-based rules. In one aspect, this implies that when the service robot 1 reaches a specific position (operationalized by coordinates) on the map, measured, for example, via the odometry unit 13 and / or by evaluating the data from the environmental sensor 6, certain evaluation rules stored in memory 2 are triggered, for example, as part of a defined training plan or an assessment performed by the service robot. Alternatively, certain outputs from the service robot 1 are sent via the output module 32 and at least one output unit 10 (e.g.,Display 12 and / or speaker 11). The output module 32, located in memory 2, can include specific outputs such as instructions for executing movements, as well as feedback on the exercises recorded and evaluated by the observation point assessment module 25. Outputs from the service robot (e.g., speech via speaker 11) can be generated using a text-to-speech system (or accessed as pre-stored feedback in text, video, or audio form) and can include instructions and / or feedback on evaluated movements, as well as other information. The aforementioned triggering upon reaching certain positions can, in one aspect, occur automatically. In another aspect, based on the map coordinates associated with the monitoring profile, the recording of the person's movements is triggered. This means that the service robot 1, possibly automatically, assumes specific positions (coordinates) on the map of map module 31, for example, to...to detect a person with a defined detection angle. Alternatively and / or additionally, the person's movements are evaluated by the processing unit 3 according to evaluation rules stored in memory 2 when the service robot 1 reaches certain coordinates on the map. The output from the service robot 1 or the triggering of the rules can, in one aspect, occur when exact coordinate values ​​of the map from map module 31 are reached (e.g., when it is detected that the service robot 1 is located within a defined coordinate range, i.e., an area defined by coordinates), or when defined thresholds or distances to coordinate points are reached.

[0042] The entire acquisition and processing of motion data, implemented by the modules stored in memory 2 (together or partially the observation point model generation module 23, the observation point monitoring module 24, the observation point evaluation module 25, the evaluation point determination module 26 and / or the pose determination module 27) can, in one aspect, take place within a motion acquisition data processing module 22, which in turn accesses sensor data from the motion acquisition sensor 5.

[0043] In one aspect, the service robot 1 has a person identification module 20. This allows, for example, the identification of the detected person based on recognized patterns within the captured sensor data, in particular by comparing the captured patterns with patterns stored in memory 2. The sensor data originates, for example, from the motion detection sensor 5, such as a 2D or 3D camera 8. In another aspect, the person is identified by reading an RFID transponder 16, which the person to be identified holds against an RFID reader 17 of the service robot, with the RFID reader 17 acting as a sensor. The recognized pattern corresponds to a code of the RFID transponder, and the stored pattern corresponds to a stored code. With regard to the use of the 2D or 3D camera 8, the identification process by pattern comparison includes a comparison of the captured sensor data (e.g.,A photograph of the person, taken with the 2D or 3D camera 8, is compared with a stored photograph (where, in the case of a stored photograph, individual features of the photograph are compared, and not necessarily the entire photograph). The code of the RFID transponder 16 and / or the photograph or video, or the features associated with it, are stored in the memory 2 of the service robot 1. In one aspect, person identification can also be carried out using a barcode associated with the person. Ultimately, in addition to the RFID reader 17 and the 2D or 3D camera 8, the motion detection sensor 5 and possibly also the vital signs sensor 7 or the radar sensor 9, or alternative sensors that are obvious to a specialist, are also suitable as sensors for person identification. The goal of the identification is not necessarily to establish the identity of the person (i.e., their name), but rather to be able to consistently associate a monitoring profile with the person and thus establish a framework for human-machine interaction that is consistent over time.

[0044] Furthermore, the service robot 1, for example, has a person re-identification module 21 in memory 2. In one aspect, person detection and identification are carried out using the motion detection sensor 5, primarily via a 2D or 3D camera 8 such as a Microsoft Kinect. The data recorded by this sensor is then evaluated in the processing unit 3 by pattern matching of classified image features, as described above for camera data in the person identification module 20. Person re-identification can take place a) continuously during the detection of the person using the motion detection sensor. In this case, the person is also tracked, for example, at fixed time intervals (e.g., every 10 frames provided by the 2D or 3D camera 8), b) in the event of a tracking interruption, which occurs, for example, when the person leaves the detection range of the motion detection sensor 5.In one aspect, tracking is carried out by detecting the person using observation points and recognizing them as a person within image data.

[0045] The coordinates of the map in map module 31 can originate from a unified coordinate system that standardizes the area or spatial coordinates of all sensors used by the robot and providing coordinates, or they can be based on (spatial) coordinates derived from the motion detection sensor 5 or an environment detection sensor 6. In this context, the service robot 1 has a coordinate system transformation module 28 in an aspect of memory 2 for transforming the coordinates from one coordinate system of a first sensor 5, 6 into the other coordinate system of a second sensor 5, 6, or for transforming the coordinates of two sensors 5, 6 into a unified, new coordinate system. This can mean, for example, that the coordinates of the person detection sensor 5, which are assigned to the generated observation points of the person, are transformed into the coordinate system of the environment detection sensor 6.Conversely, the coordinates of the motion detection sensor 5 and the environment detection sensor 6 can be transformed into a new, unified coordinate system, where they are then available for further processing, e.g., for the joint evaluation of position data of the service robot 1 on the map and of (spatial) coordinates of the person's observation points. The computational operations taking place here are performed in the processing unit 3. In general, the 3D coordinates provided by one sensor (e.g., 5 to 9 or 14) can be transformed into the coordinates of another sensor (e.g., 5 to 9 or 14). For example, spatial coordinates of a 3D camera 8 can be transformed into spatial coordinates of the radar sensor 9 or the laser scanner 14, or vice versa.

[0046] In addition, the service robot 1 has a path planning module 30, which, for example, plans a path between two positions on a map derived from the map module 31. Based on obstacles detected by the environmental sensor 6, the mobile service robot 1 can then use the path planning module 30 stored in memory 2 to plan routes from position A to position B, for example, during a training exercise conducted by a person with the mobile service robot 1. This can involve a starting position and a turning point, where the service robot 1 simulates a change of direction. The turning point can also be redefined as part of the path planning process. This means that path planning also includes setting path positions (with coordinates from a map) to which the service robot 1 will travel.Path planning is thus broadly defined and also includes route planning, since both essentially involve setting waypoints that a service robot navigates to, albeit with different levels of granularity. Therefore, a path planning method is also a method for operating a service robot if it involves assuming different spatial positions for a specific purpose. The positions used in path planning module 30 can be stored in memory 2, in the monitoring profile, or stored in memory 2 and accessed via the monitoring profile.

[0047] Service robot 1 plans its movements on the map of map module 31 using a path planning module 30 located in memory 2, which takes into account the existence of stationary and dynamic obstacles. In one aspect, the monitoring profile is associated with multiple positions on the map or with paths resulting from the map. This means that a person who has identified themselves to service robot 1 via the person identification module 20, for example, is monitored in their movements via the monitoring profile by rules of the observation point evaluation module 25, whereby these movements are evaluated accordingly by the observation point evaluation module 25. For example, the detection area for the person is defined as an area on the map, in one aspect along a path that service robot 1 travels when detecting the person.This means that coordinates are assigned to the area, which are taken from a map, but the area itself does not need to be defined within the map. For example, service robot 1 can also assume turning positions on the map where it changes direction (e.g., in the opposite direction), and at which outputs from service robot 1 are triggered and / or the person is detected at defined detection angles.

[0048] Furthermore, the service robot 1 has an output module 32 for issuing feedback to a person interacting with it, such as a prompt to follow the robot or to assume specific body poses, which are recorded and / or recognized in one aspect via the pose detection module 27. The feedback generation module 34 also selects possible feedback based on differently prioritized movement deviations, which are determined by the observation point evaluation module 25 and whose prioritization is carried out, for example, in the feedback generation module 34 based on predefined rules. Thus, for example, certain movement deviations are assigned a higher priority and trigger feedback (defined by rules in the Memory 2) should be retained as other detected motion deviations. This is relevant because, for example, several motion deviations can be detected in parallel or sequentially, but feedback should only be output for one motion deviation, preferably the one with the highest priority.

[0049] In one aspect, the service robot 1 also has an anonymization module 35, which anonymizes or pseudonymizes 2D data from a camera, such as images or a video sequence, by pixelating, for example, body regions of a person included in these images or in this video sequence, such as their head, as is known from the state of the art.

[0050] In addition, the service robot can, in one aspect, have a statistics module 36, which, for example, statistically processes feedback generated by the feedback generation module, or statistically processes movement sequences evaluated by the observation point assessment module 25 (e.g., frequencies of recorded movement deviations per exercise) and optionally makes this data available via interface 4 or output module 32. Data received by the service robot 1 via wireless interface 4 can also be made available by statistics module 36.

[0051] The service robot 1 is equipped with a distance control module 37 to maintain a roughly constant distance to the person, which is detected by the motion sensor 5 or the vital signs sensor 7, for example, when the person is moving behind the service robot 1. The distance control module 37 can also be used, for example, to trigger the speed of the service robot in such a way that the service robot 1 maintains a roughly constant distance to the person. This constant distance is defined, for example, by the vertical detection angle of the motion sensor 5 and the size of the person being detected. If this person is, for example, 1.8 m tall and the vertical detection angle is 40°, the motion sensor is mounted at a height of 90 cm above the ground and its detection axis is approximately horizontal, then the distance is at least 90 cm / tan(20°) = 2.47 m.

[0052] Furthermore, the service robot 1 has a navigation module 38 that interacts with the path planning module 30 and the map module 31, as well as, for example, with the odometry unit 13 and / or the environmental sensing sensor 6. The navigation module 38 provides the current position of the service robot 1 for navigation purposes and also for triggering location-dependent activities of the service robot 1. In one aspect, the path planning module 30 is a component of the navigation module 38. For localizing the service robot 1, a prior art SLAM method (Simultaneous Localization and Mapping) can be used, for example. Alternatively and / or additionally to the odometry unit 13, the environmental sensing sensor 6 can also be used for position determination.

[0053] Fig. 4 illustrates an aspect of data processing on the service robot 1. Here, a computational operation is performed in a process node 40, and, for example, generated data is exchanged with another process node 40 via a data channel 41, whereby the exchange involves a readiness- The position of the data from the first process node 40 to the second process node 40 is as follows. In a In this aspect, data generated by a process node 40 is made available to another process node 40 via a data channel 41, for example, via remote procedure calls or a REST service, using UDP or TCP / IP headers, shared memory, etc. Providing data via shared memory ensures high performance, i.e., in particular, high processing speed with low latency. Figure 4a) shows that data channels 41 can be implemented using shared memory. Figure 4b) shows the data channel being implemented, for example, by exchanging data over a TCP / IP or UDP stack, or using data packets with corresponding headers. In this aspect, a process node 40 provides data in different formats via multiple data channels 41. Providing data from a process node 40 via a data channel 41 allows, for example, asynchronous data processing within the process nodes 40, i.e., time-shifted reading and / or data transfer.Writing data to at least one data channel 41 by a process node 40 enables asynchronous data processing by a process node 40 or a data channel 41. This makes the system more robust and less susceptible to errors overall. Providing data via remote procedure calls, using UDP or TCP / IP headers, shared memory, etc., over a data channel differs fundamentally from the usual data exchange between software modules, as it leverages the advantages of a distributed software architecture, which allows for greater flexibility.

[0054] Figure 5 illustrates how data processing between software modules in memory 2 and the process nodes and data channels 41 functions. For example, the observation point evaluation module 25 is implemented in a process node 40. This module uses the processing unit 3 to perform calculations to evaluate the observation points generated by the observation point model generation module 23, the poses determined by the pose determination module 27 based on observation points, and / or the evaluation points determined by the evaluation point determination module 26 based on observation points and / or poses. The result could be, for example, a movement error described as the person being recorded holding one arm too low. Another example of the observation point evaluation module 25's function would be to perform calculations of specific body poses or parameters associated with them. For example,The determination of whether a person is sitting, as described above, takes place within a process node 40. For example, a person's standing time, stride length, etc., as well as an evaluation of such quantities, such as checking whether the determined standing time or stride length falls within certain value ranges, can be determined as parameters via a process node 40. Thus, the rules mentioned above can also be stored within process node 40. This allows calculations to be performed within process node 40 to evaluate a person's movements. The calculation results of a process node 40 are output as data that, for example, represents an observation point model based on observation points, one or more observation points, poses, or quantities derived from them, such as stride length, standing time, etc., or more generally, time signals and / or measurement series.This data, provided by a process node 40, can be retrieved by other process steps, preferably subsequent within a processing process, in particular via data channels 41, through which it is transmitted from the. Process nodes 40, which calculate this data, are provided with the necessary information. This allows for a fine-grained process architecture in which many small process nodes 40 preferably perform the relevant calculation steps, which also enables, for example, bandwidth-efficient updates of the modules via the wireless interface 4. One of these process nodes can trigger the output module 32 via the data provision. This module is contained in another process node 40 and simulates the output. This data, which characterizes the "output trigger," can in turn be provided via a data channel 41 to a process node 40 that contains a feedback generation module 34 and / or an output module 32. This module then triggers an output as a result, for example, a speech output via speaker 11, such as raising the arm. In a possible parallel branch to the two aforementioned process nodes, for example...The result "arm too low" is also made available via a data channel 41, which may or may not be identical to the data channel leading to process node 40 with output module 32, a further process node 40 containing the statistics module 36. This statistics module 36 determines, for example, descriptive results based on rules regarding movement errors determined by the observation point evaluation module 25 and makes these results available via a data channel 41 to output module 32 (implemented in a process node), which then triggers the output of error statistics on display 12. Depending on the complexity of the feedback generation, the feedback generation module 34 and / or the output module 32 can also be implemented by multiple process nodes 40.

[0055] In one aspect, essential data processing steps on the service robot 1 take place within process nodes 40, which generate data for further processing by other process nodes 40. Thus, the person identification module 20, the person re-identification module 21, the motion detection data processing module 22, the observation point model generation module 23, the observation point monitoring module 24, the observation point evaluation module 25, the evaluation point determination module 26, the pose determination module 27, the coordinate transformation module 28, the output module 32, the feedback generation module 34, the anonymization module 35, the statistics module 36, the distance control module 37, and / or the navigation module 38 can individually or partially in combination represent process nodes 40. In one aspect, the connection of sensors (e.g. 5, 6) via process node 40 is also implemented.The implementation in the form of process node 40 ensures a high degree of modularity and also allows the separate calculation of values ​​or data for further processing, which makes the system robust overall.

[0056] In one aspect, the service robot 1 in memory 2 has at least one state machine 43 that maps various behaviors of the service robot 1. In one aspect, this state machine 43 calls process nodes 40, such as the detection of the person by the motion detection sensor 5, the observation point model generation module 23, the pose determination module 27, the observation point evaluation module 25, subcomponents thereof, and / or combinations thereof as a state. In another aspect, the at least one state machine 43 calls at least one process node 40, e.g., based on the position data of the service robot 1. In this process, in one aspect, Aspect, a process node 40 called by a state machine 43, an output unit 32 include and / or rules for evaluating the movements and / or poses of the recorded person. Furthermore, a state machine 43 can also be defined within a process node.

[0057] Figure 6a) shows an example of how state machine 43, data channels 41, and process node 40 interact. A state machine 43p was implemented within a process node 40z. In state A, the state machine waits for 1 second for messages in the data channel, which are to be provided by the process node “Sensor” (40s) and thus be considered sensor data. If no such sensor data is provided via data channel 41 within the 1-second waiting period, the state machine 43p switches to state B, in which the process node “Sensor” (40s) is restarted, which then provides, for example, sensor data from the motion detection sensor 5. The restart is initiated by calling the “restart” function of the process node “Sensor” (40s), for example, via a remote procedure call.If the return value of the "restart" function does not signal an error, the state machine 43p switches to state C and waits there for 5 seconds for the restart of the process node "Sensor" (40s). Afterwards, the state machine 43p switches back to state A. However, if the return value of the "restart" function signals an error, then the state machine 43p switches to state D, which can be made available, for example, via a data channel 41 to another process node 40w for further processing, such as output via an output unit 10.

[0058] Fig. 6 b) illustrates this situation from a different perspective: First, there is the implementation of the state machine 43p within a process node 40z, and second, the implementation of another process node “Sensor” (40s). The process node “Sensor” (40s) provides sensor data via data channel 41 to the state machine 43p implemented in process node 40z, for example, from the motion detection sensor 5. The state machine 43p in process node 40z waits in state A for sensor data from process node 40s. If this state A lasts longer than 1 second, the state machine 43p switches to state B and triggers the restart of the process node “Sensor” (40p) by calling the function “restart”.Since the function "restart" returns the value "Restarting" after being called, the state machine 43p in process node 40z switches to state C and waits 5 seconds for the restart of the process node "Sensor" (40s), which is supposed to provide sensor data. After the 5-second wait, the state machine 43p switches to state A and waits for sensor data provided by the process node "Sensor" (40s) via data channel 41. The implementation of a state machine 43 can be done, for example, in SCXML or directly in C++.

[0059] Fig. 7 shows the process for evaluating a person's movements, as described elsewhere in this document in various versions, including extensions and abbreviations. Step 705 involves identifying the person. This step can be performed before or after recording the person's movements (step 715), depending on the chosen identification method. In one aspect, step 705 is performed using an RFID transponder 16 and before recording the person using a motion detection sensor (step 715). 715), where the RFID transponder 16 is associated with the person, e.g., a code stored in the RFID transponder. Alternatively, a barcode associated with the person could also be used instead of the RFID transponder 16. If the person is detected using a motion sensor (step 715) before the person is identified (step 705), the person can, for example, be identified using RGB data (images) and compared with stored images of the person.

[0060] After the person is detected using a motion sensor (step 715), an observation point model is generated (step 720) and spatial coordinates are assigned to the observation points (step 725). In some aspects, this step can be optional, for example, if the evaluation of movements is only to be performed in the person's sagittal plane. In this case, coordinates within the sagittal plane can be used instead of spatial coordinates. The recording of the person's movements and / or poses can take place over time up to and including step 775, in an aspect with multiple interruptions.

[0061] Based on the observation points, the person can be tracked, which in turn can be used to more easily re-identify the person because the observation points allow the facial area (e.g., the head area) to be narrowed down, which is then used for re-identification. As a result of this rule check, re-identification of the recorded person can optionally take place (step 710). In this sense, the re-identification of the recorded person (step 710) optionally runs concurrently during the further process of recording the person with a motion detection sensor.

[0062] Following the assignment of (spatial) coordinates to the observation values ​​(step 725) or the optional monitoring of the generation of observation points by rules (step 730), which triggers the re-identification of the recorded person (step 710) as a kind of parallel process, the recorded movements are evaluated using determined observation and / or evaluation points with regard to movement deviations (step 750). This may be preceded by pose determination (step 735) and / or evaluation point determination (step 740). Depending on the evaluation, either step 735 can be performed first, then step 740, and then step 750. Step 740 can be omitted (for example, if not only individual evaluation points are being evaluated, but poses as a whole). Alternatively, both steps 735 and 740 can be omitted, and an evaluation takes place without pose determination (735) and evaluation point determination (740) (e.g.,...).(as a complex movement sequence). In one aspect, for the evaluation in step 750, an optional comparison with a monitoring profile is carried out (step 755).

[0063] As a result of step 750, the existence and, for example, the degree of movement deviations are detected. Step 760 then prioritizes the detected movement deviations, and the subsequent step 765 provides feedback, for example, for the highest-priority deviation. In an optional version, step 760 is omitted, and the feedback is provided for each detected movement deviation based on its degree. The degree can be defined, for example, by the deviation from a specific value, such as the angle between two limbs at a joint.

[0064] In the next step, 770, the recorded movements are evaluated using the determined observation and / or evaluation points with regard to the movement deviation that was prioritized most highly in step 760. Thus, if several movement deviations were detected in step 750, one of which was given the highest priority in step 760, then feedback is only provided for this deviation in step 765. Step 770 merely assesses whether this movement deviation then occurs, in order to trigger feedback output in step 775. However, further movement deviations may well be detected in step 770, for which no feedback is provided in step 775. These movement deviations from step 770, as well as those from step 750 that were not given high priority—in other words, all detected movement deviations—are evaluated together in step 780, as are the feedback outputs from 765 and 775.This evaluation can, for example, include a statistical summary of identified, and possibly prioritized, movement deviations, as well as a statistical summary of the feedback (e.g., frequency of specific feedback outputs). The representation shown in Fig. 7 includes the rules and procedures behind each step, which are evident to a person skilled in the art from the prior art.

[0065] Figure 8 takes up the scoring method from step 740 and illustrates it in more detail: It builds upon the pose determination in step 735, identifying an initial pose (step 736), a final pose (step 737), and then determining a time interval for a repetitive movement (step 745) that spans the time between the initial and final poses. The minimum scoring point is then determined within this time interval as an extreme value or turning point (step 746). For example, if the time interval covers one step, the point at which a foot touches the ground can serve as both the initial and final poses, and the scoring point can be the moment when the foot reaches its maximum height above the ground. This height can then be scored accordingly.In one aspect, this approach implies a delayed evaluation, where the evaluation point is only awarded after the determination of the repetitive movement has been completed.

[0066] Figure 9 now presents steps 750-775 from Figure 7 in more detail, in a variant that takes the temporal sequence into greater consideration. For example, in step 910, the movement sequence and / or at least one pose of a person is recorded and evaluated during the first time interval 51, which can be identical to steps (715-)750. This can involve, for example, determining the person's steps from the evaluation of the movement sequence (step 920), summing the person's steps (step 925), and, if the sum of the person's steps reaches a threshold, triggering the end of time interval 51 (step 930). This allows, for example, a fast person to receive timely feedback, as well as a slow person, which would not be possible with time intervals defined by fixed durations.Within the first time interval 51, deviations in movement and / or pose are determined (step 940), and these deviations are prioritized in step 945. This is followed by the output of feedback to the person regarding the highest-priority deviation in a second time interval 52 (step 950), which can correspond, for example, to step 765 in Fig. 7. For clarification, steps 910-940 indicate that the evaluation of the movement sequence and / or at least one pose can either occur concurrently with the step count (to determine the duration of time interval 51) or only after the end of time interval 51 has been reached (which would then occur in time interval 5a). This also applies analogously to further time intervals in which an evaluation of the movement sequence and / or at least one pose takes place. Subsequently, in the third time interval 53, the movement sequence and / or at least one pose of a person is recorded and evaluated again (step 955), in one aspect identical to steps 715 + 770 in Fig. 7. Again, the duration of the time interval over which the recording and evaluation take place is defined by the number of steps taken by the person, i.e.,The person's steps are again determined from the assessment of the movement sequence (step 920), the person's steps are summed (step 925), and the calculated step total is compared with a threshold value. Reaching this threshold value marks the end of time interval 53 (step 935). The threshold values ​​can differ for time intervals 51 and 53. Feedback is provided to the person for a movement and / or pose deviation detected in the third time interval 53 in a fourth time interval 54. This movement and / or pose deviation is preferably the one with the highest priority in step 945 and preferably occurs within time interval 53 (step 960). Feedback is then provided in a fourth time interval 54 (step 965), e.g., identically to step 775 in Fig. 7. After this, e.g.,Follow step 780, in which the statistics module 36 summarizes detected movement deviations and / or outputs feedback, e.g., via display 12. Generally, numbering time intervals in this document means that the second time interval comes after the first, the third after the second, and so on.

[0067] Alternatively or additionally to the described process, the following can also be implemented: Feedback is provided to the person via an output unit 10. During the time sequence, the person's movements are first evaluated during an initial time interval 51. In a second, subsequent time interval 52, feedback is provided for a detected and highest-priority movement deviation, followed, for example, by a third time interval 53, in which, for example, no feedback is provided and the person receiving the feedback can, for example, try to implement the feedback themselves motorically without immediately receiving new feedback. Thus, for example, the duration of the third time interval 53 is shorter than the sum of the durations of the first time interval 51 and the second time interval 52. In one configuration, it can also be zero, for example.If the relevant movement deviation was already detected at an earlier time and feedback was provided, e.g., in a previous exercise, the necessary data can be located in memory 2 of the service robot 1. There is a fourth time interval 54 following the third time interval 53, in which, for example, the movement deviation identified in the first time interval 51 is re-evaluated, and in a fifth, subsequent time interval 55, further feedback on this movement deviation is provided. The re-evaluation preferably refers to the same type of deviation, e.g., the evaluation of step length (vs. (e.g., specific criteria). In contrast, for example, evaluating stride length in one time interval and evaluating upper body inclination (vs. specific criteria) in another time interval would constitute a different type of deviation. Further movement deviations can also be evaluated in the fourth time interval 54. In one embodiment, the person's movements are recorded and evaluated during time intervals 51-54, while the feedback provided relates only to movement evaluations in time intervals 51 and 53. This also applies to other movement recordings and evaluations described in this document for which feedback is provided and which cover more time intervals, e.g., in Example 4. Furthermore, movement deviations are preferably prioritized only for those for which feedback is to be provided, which is implemented using the feedback generation module 34.If the recorded movement of the person is a person running, whose running movements are to be evaluated, the length of the time intervals is determined, for example, by the number of steps taken by the person, particularly to enable a standardized evaluation and to provide timely feedback to individuals. In one aspect, the length of the first time interval 51 is longer (or the number of steps is greater) than that of the fourth time interval 54, thus resulting in a longer initial observation of the person's movements and a shorter evaluation after feedback has been provided. In another aspect, the length of the second time interval 52 can also be longer than that of the fifth time interval 55.In one implementation variant, the duration of the fourth (54) and fifth (55) time intervals is zero, meaning there is no explicit follow-up check of the detected movements of the person associated with feedback. Different configurations of feedback outputs are also possible in the second and / or fifth time intervals (52, 55). For example, feedback with a different priority can be provided in the fifth time interval (55) compared to the second time interval (52). Alternatively and / or additionally, feedback is provided in the fifth time interval (55) based on movement deviations with different priorities than the feedback provided in the second time interval (52). This would be the case, for example, if feedback is first provided in the second time interval for a high-priority movement deviation detected in the first time interval (51), and then a lower-priority movement deviation is detected in the fourth time interval (54).Furthermore, if movement deviations of the same priority are detected sequentially, e.g., in time intervals 51 and 54, different feedback can be output, e.g., in time intervals 52 and 55. Additionally, a final time interval 56 can be used to output feedback via output unit 10, based on at least two differently prioritized and detected movement deviations. This final time interval 56 is longer than time intervals 51-55 in one respect. Between the fifth time interval 55 and the final time interval 56, for example, several time intervals can occur in which the service robot 1 detects the person, evaluates movements, and provides feedback. The final time interval 56 can occur, for example, during the user interaction phase when the service robot 1 is no longer moving along a path with the person, but is in a fixed position, e.g.,the starting position, provided he returns to it after completing the route. Alternatively, the final time interval could be 56. This can also be performed at a different spatial position. This final time interval 56 can, for example, be located at the end of the movement exercises and represent a summary of the recorded pose or movement deviations, where, for example, the frequencies of the detection of these deviations or the feedback output are summarized, e.g., according to frequency of occurrence. A total of 34 rules for prioritizing the evaluation of at least one recorded movement based on an observation and / or evaluation point are stored in memory 2 in the feedback generation module. The rules in feedback generation module 34 include, for example, rules for generating at least two feedback responses for a recorded type of movement deviation, which are associated with different time intervals, as described above for time intervals 51-55. Types of movement deviations include, for example...Differently prioritized movement deviations are understood, such as different step sequences, body inclinations, arm movements, whereby one or more body parts may be affected individually or in combination, etc.

[0068] Figure 10, in turn, depicts a form of motion analysis and evaluation that builds upon that shown in Figure 7 and highlights a specific aspect: the location-based triggering of notifications to a person interacting with a service robot 1. This robot might, for example, be performing exercises with the person that involve motion recording and analysis. Some of the steps mentioned are identical or similar to those in Figures 7 and 9. For instance, in step 1205, a person is identified (e.g., identical to step 705 in Figure 7). This is followed by the association of the identified person with a monitoring profile (step 1210). This monitoring profile can contain instructions and rules specifying which of the person's movements should be monitored, for how long, which movement deviations should be detected, how these are prioritized, where the monitoring should take place, and so on.Preferably, however, the monitoring profile contains references to corresponding rules stored in memory 2 of the service robot 1 (also referred to as the association of the monitoring profile with rules). This step is followed by the recording of the person's movements (step 1220), e.g., identical to step 715 in Fig. 7. Next, observation points of the person are generated (step 1220, e.g., identical to step 720 in Fig. 7), and the person's movements are evaluated based on the generated observation points (step 1230, in one aspect identical to step 750 in Fig. 7). In a subsequent step, position data is retrieved from the monitoring profile (step 1235). The service robot 1 determines its spatial position on the map (step 1240), e.g., using the odometry unit 13 and / or the environmental sensing sensor 6.The distance of service robot 1 to the position data from the monitoring profile is then calculated (step 1245), or a comparison is made between the position of service robot 1 on its map and the position stored in the monitoring profile (step 1250), whereby both steps 1245 and 1250 can also be identical. Subsequently, notifications are automatically issued if service robot 1 falls below a minimum distance to the position from the monitoring profile or if it reaches the position from the monitoring profile (step 1255). In one aspect, the position estimation is a probabilistic estimate. Steps 1220 and 1225 can be performed in parallel with steps 1230-1255. (in whole or in part). In one implementation variant, the service robot 1 does not record the person's movements, but rather their vital parameters such as respiration, pulse rate, and heart rate, with the parameters to be recorded being stored, for example, in the monitoring profile. In this case, steps 1220 and 1230, which are associated with recording the person's movements, are omitted. Instead, steps involving the recording of vital data can be performed. Alternatively and / or additionally, vital data can be recorded instead of issuing instructions in step 1255.

[0069] Figure 11 describes a computer-implemented method for path planning of a mobile service robot 1, which moves along a path with a person who is preferably monitored by the service robot 1. The actual method comprises the following steps, which can be extended or shortened in one aspect, e.g., to include person identification, for example, in the context of registration with the service robot 1, in which a monitoring profile can also be transferred. However, other extensions are also conceivable: In step 1310, a time period, e.g., for an exercise, is read from a monitoring profile that is associated with the person to be monitored and recorded. In step 1110, the person is recorded, who has already been described in more detail elsewhere in this document. The service robot 1 moves along a path or...along a path between a starting position and a turning point (step 1320). Meanwhile, the distance between Service Robot 1 and the person moving ahead of or behind Service Robot 1 is determined (step 1325), ensuring that a roughly constant distance is maintained between the Service Robot and the person (step 1330). Steps 1325 and 1330 are optional. Simultaneously, the average speed of the Service Robot and / or the person while traversing the path is determined (step 1340). If Service Robot 1 determines the person's average speed, this is done, for example, by determining the person's position on a map, calculating the distances the person travels on the map, and evaluating the time required for this.Service robot 1 determines the remaining time and distance after which the assistance to the person should end (step 1350). This is done, for example, by first calculating the remaining time based on the elapsed time since leaving the starting position and the current position of service robot 1, and then calculating the difference to the time read in step 1310. For this determined remaining time, the remaining distance is then calculated based on the determined average speed (step 1360). This can be defined, for example, as the difference between the open distance and integer multiples of the distance between a starting position and the turning position; and a new turning position is defined (step 1370), at which service robot 1 makes a final change of direction and moves to a predefined position (e.g.,...).the starting position), where the distance between the starting position and the new turning position corresponds approximately to half the remaining distance. As a result, if, for example, a time is stored in the monitoring profile for the service robot 1 to accompany the person on a certain route, then preferably only as much time is spent as is actually needed to complete the route, because the... Service robot 1 doesn't have to travel the distance to the next turning point before returning to the starting position, where it then, for example, ends the person's movement monitoring. Nor does it have to interrupt the monitoring when the time is up. The latter would also mean that the person spends more time with service robot 1, because after completing the exercise, they would still have to move back to the starting position.

[0070] Within step 1325, the person's height can be determined, provided this information is not already part of or associated with the monitoring profile. For this purpose, the person can be detected, for example, using the motion detection sensor 5. The captured data can then be processed using the observation point model generation module 23, resulting in observation points for the person. Based on these points, the person's height can be determined by calculating the distance between observation points associated with the person's feet and those associated with the person's head, using the coordinates associated with those observation points. This information can then be used, as described elsewhere, to determine the distance between the person and the service robot 1.

[0071] The average speed of the service robot 1 can be determined, for example, using the odometry unit 13 and / or the environmental sensing sensor 6, by recording the time over a distance traveled, which was determined, for example, by the odometry unit 13. The average speed of the person can be determined, for example, using the motion detection sensor 5 and the observation point model generation module 23, which assigns coordinates to observation points of the person, and by determining the distance between two, for example, identical observation points and the time between their determination. In both cases, the speed corresponds to the distance interval divided by the time interval.

[0072] Figure 12 describes a variant of the method described in Figure 11, which may, for example, be omitted from steps 1205 and 1210. As already described elsewhere, a time duration is read from a monitoring profile (step 1310), a person (to be monitored) is detected (step 1110), and the robot moves over a distance between a starting position and a turning position (step 1320). Optionally, the distance of the service robot 1 to the person (to be monitored) is determined in parallel (step 1325), and optionally, a roughly constant distance between the service robot 1 and the person is maintained (step 1330). This is followed by the determination of the elapsed time (step 1440), preferably since leaving the starting position, and a calculation of the time difference between the time read in step 1310 and the elapsed time from step 1440, which is shown as step 1460.The direction of movement of service robot 1 is then determined (step 1450). Subsequently, in step 1470, an action is triggered based on the following comparison: If the determined time difference in step 1460 is below a threshold, e.g., 30 seconds, and service robot 1 is moving towards the starting position (result of the calculation in step 1450), then service robot 1 remains at the starting position after arriving there (step 1480). Thus, no new turning position is defined. However, if service robot 1 is already at the starting position when the... If the time difference determined in step 1460 falls below a threshold value on the way to the turning position (result of the calculation in step 1450), the service robot 1 sets a new turning position, upon reaching this position, and returns to the starting position (step 1490). Alternatively, a different position can be used as the starting position, where the exercise performed with the person is to be completed. The threshold value can be determined, for example, based on the expected average speed of the service robot 1 and the distance between the starting position and the turning position. Furthermore, the turning position determined in step 1490 can be set at a position that the service robot 1 reaches in less than 30% of the time threshold value used in step 1470. For this calculation, an average speed calculation, as already shown in Fig. 11, can be used, for example.The result is an efficient joint completion of a route by person and service robot 1 within the defined time period, as already shown for the results in Fig. 11.

[0073] The method shown in Figures 11 and 12 can be combined with the aforementioned methods or parts thereof, so that it essentially takes place during the time when the movements of a person are being recorded (step 1220) and / or when a person is being detected by at least one sensor (5, 7-9), as has already been briefly described, for example, for determining the person's height. Optionally, a monitoring profile can be retrieved from memory 2 beforehand. This monitoring profile can, in turn, be associated with position data from a turning position, but not with that of the new turning position to be determined.

[0074] Fig. 13 describes the operation of the safety motion controller 60. A mobile robot (e.g., 1) follows a path (step 1510). The safety motion controller is in a first state. In this state, the force generated by the current flow in the motor 61 of the mobile robot (e.g., 1) and acting on the position of the mobile robot (e.g., 1) in the horizontal plane is greater than the sum of the inertial forces acting on the mobile robot (e.g., 1) in the horizontal plane. There can be various reasons why the mobile robot (e.g., 1) transitions to a second state and decelerates (step 1535). During deceleration, the current flow in at least one motor 61 is regulated such that the mobile robot (e.g., 1) decelerates negatively until it reaches a speed of zero. One reason for this could be user interaction in step 1520. For example, the mobile robot (e.g.,1) The mobile robot (e.g., 1) maintains a constant distance to a person it is moving in front of or who is following it, and this person stops, causing the mobile robot (e.g., 1) to also decelerate and stop in step 1535, as described elsewhere in this document. Furthermore, the mobile robot (e.g., 1) may reach a target position (step 1525), such as a turning position or a starting position, as described elsewhere in this document, and therefore also decelerate (step 1535) and stop. Depending on the configuration of the safety motion controller 60, the deceleration is triggered either by the safety motion controller 60 itself or by a higher-level application of the mobile robot (e.g., 1). It is also possible that the mobile robot (e.g., 1) detects an obstacle within its detection range. The environment detection sensor 6 is located, for example, within a protective field. As a result, the safety motion controller 60 decelerates the mobile robot (e.g., 1) (step 1535, second state). Once the mobile robot (e.g., 1) has come to a stop after decelerating to zero, it is in the third state. Here, the set current flow in at least one motor is... 61 is regulated such that the force generated by the at least one motor 61 and acting on the position of the mobile robot (e.g., 1) in the horizontal plane corresponds at least to the sum of the rolling resistance and rotor inertia of the at least one motor 61, so that the mobile robot (e.g., 1) essentially remains in its position in the horizontal plane. However, it may be that the robot (e.g., 1) is not easily pushable, which can be a problem if it has stopped in the way and therefore needs to be moved. After decelerating to zero speed and thus in the third state, a (fourth) state of the safety motion control 60 is triggered by the activation of a switch such as the emergency stop 65, or by the evaluation of an inertial sensor 62 indicating that the mobile robot (e.g., 1) is on a horizontal plane, which can also trigger this fourth state.This results in the current flow in at least one motor 61 compensating for the rotor inertia of the motor 61 (step 1550). Thus, in one aspect, the rotor inertia can be at least 150g / cm. 2 , in a preferred aspect at least 270g / cm² 3 This means that in this fourth state the mobile robot (e.g. 1) is easily pushed, because the rotor inertia does not have to be overcome by pushing.

[0075] For example, in the third state, the current flow in at least one motor 61 is regulated in such a way that the force generated by the motor 61 and acting on the position of the mobile robot (e.g., 1) in the horizontal plane corresponds approximately to the sum of rolling resistance, rotor inertia, and at least one other force, so that the mobile robot (e.g., 1) essentially remains in its position in the horizontal plane. This other force can be measured using an inertial sensor. 62. This additional force can, for example, act on the mobile robot (e.g., 1) from the outside or result primarily from gravity because the mobile robot (e.g., 1) is located on an inclined plane. In this case, if the additional force were not compensated for by control, gravity would also cause movement of the mobile robot (e.g., 1). As an alternative to determining the acting forces using an inertial sensor 62, the safety drive controller 60, possibly in combination with or using the motor controller 68, can regulate the current in the motor 61 to zero amperes. Deviations from zero amperes would occur, for example, if external forces, including, for example, forces acting downhill, were to initiate movement of the motor that would cause a back EMF (back or opposite electromagnetic force), which would induce a negative voltage in the motor.By setting the current to zero amperes, this is compensated for, making it impossible to push the mobile robot (e.g., 1). As a result, this third state ensures that the mobile robot (e.g., 1) does not roll away on a horizontal or inclined plane. In the fourth state, the current flow in motor 61 can be regulated in such a way that the negative voltage induced in motor 61 by a pushing motion (due to back-EMF) is not compensated for by the zero-ampere regulation.

[0076] In one aspect, the safety motion control 60 is configured such that in the first state the robot (e.g., 1) moves, in the second state the robot (e.g., 1) decelerates, in the third state the robot (e.g., 1) is stationary but difficult to move, and in the fourth state the robot (e.g., 1) is easily movable. In the third state, the motor current is preferably regulated such that external forces acting on the robot (e.g., from people or gravity acting downhill) are compensated to a certain degree. In the fourth state, the inertial forces of the robot (e.g., 1) are preferably compensated so that easy pushing is possible, for example, by compensating for rotor inertia and any rolling resistance through appropriate control of the at least one motor 61. In one aspect, in the third state, any back-EMF that occurs is compensated for by current regulation, e.g. by regulating the current in motor 61 to zero amperes.In one aspect, a back-EMF occurring in the fourth state is not compensated for by current regulation, which means, for example, that the current in motor 61 can deviate from zero amperes.

[0077] The safety motion controller 60 or the motor controller 68 determines, for example, a speed or acceleration proportional to the rotational speed or acceleration of at least one drive wheel 63 of the mobile robot using a rotary angle sensor 64. The measured forces or accelerations can, in one aspect, be determined by means of rotations measured by the rotary angle sensor 64. Suitable rotary angle sensors 64 include Hall sensors, incremental encoders, and other encoders that detect the rotations on the shaft of a drive wheel 63 or, for example, within a motor gearbox. In another aspect, the at least one rotary angle sensor 64 is also part of the odometry unit 31 or is also used by it. Alternatively and / or additionally, this force or acceleration measurement can also be performed using an inertial sensor 62.From speed and acceleration, the forces required to control at least one motor 61 can be derived accordingly by the expert.

[0078] Furthermore, in one aspect, the safety motion controller 60 can be equipped with a control memory 66 that stores values ​​for at least one maximum speed. The speed of the mobile robot (e.g., 1) is determined by means of a rotary angle sensor 64 or an environmental sensing sensor 6, and if the at least one maximum speed is exceeded, the current flow in the at least one motor 61 is limited by the safety motion controller 60 or by the motor controller 68, preferably at the initiative of the safety motion controller 60. The maximum speed, in turn, depends on the size of a protective field that defines a monitoring area of ​​the environmental sensing sensor 6, e.g., a laser scanner 14. In one aspect, the safety motion controller 60 has access to a memory (e.g.,66) or this value itself is stored in the safety control memory 66, which stores values ​​for at least one maximum speed that the robot (e.g., 1) is allowed to exhibit when an obstacle is located in a protective field of the environmental sensing sensor 6, and to which the safety motion control 60 brakes the robot (e.g., 1) accordingly by regulating the current flow in the motor 61 directly or, for example, indirectly by means of the motor controller 68. This memory can, for example, also be located within the environmental sensing sensor 6, to which the safety motion control 60 refers via a. Accesses safety motion control interface 67.

[0079] This safety motion controller 60 is, in one aspect, implemented in a mobile robot (e.g., 1). This robot further comprises a motion detection sensor 5, a vital signs sensor 7, and / or a radar sensor 9. In another aspect, the mobile robot (e.g., 1) also has a person identification module 20, a motion detection data processing module 22, and / or an observation point model generation module 23, an observation point evaluation module 25, and / or a feedback generation module 34. The sensor data from the motion detection sensor 5, the vital signs sensor 7, and / or the radar sensor 9 are, in one aspect, provided via a process node 40. The mobile robot (e.g., 1) has, in another aspect, a feedback generation module 34, which is triggered by a state machine 43.

[0080] Fig. 14 shows the components associated with the safety motion controller 60. The safety motion controller 60 has an inertial sensor 62, which is preferably located inside the safety motion controller 60, but can also be located outside in one aspect, in which case it is connected to the safety motion controller 60 via a safety motion controller interface 67. Furthermore, the safety motion controller 60 has a safety motion controller memory 66. This memory can store values ​​such as a maximum speed that the mobile robot (e.g., 1) is allowed to assume, for example, when moving between two positions. This can be, firstly, the maximum speed of the mobile robot (e.g., 1), hereinafter referred to as the first maximum speed. This can, for example, be determined by the size of a protective field that segments the detection range of an environmental sensing sensor 6.If an obstacle is located within this protective field, the maximum speed of the mobile robot (e.g., 1) is reduced to this second maximum speed. This second maximum speed can either be stored in the control memory 66 or in a memory accessed by the safety motion controller 60 via a safety motion control interface 67. For example, this could be a memory of the environmental sensing sensor 6. The safety motion controller 60 accesses the motor 61 via a safety motion control interface 67 to regulate its current flow, as well as a rotary angle sensor 64, which determines the revolutions of a drive wheel 63 of the mobile robot (e.g., 1). If the robot is not equipped with wheels, this feature is necessarily omitted for a person skilled in the art, and the speed is determined in another way, e.g.,The safety motion controller 60 evaluates the environmental sensor data. In one aspect, the safety motion controller 60 has a motor controller 68 or accesses one via the safety motion controller interface 67. This motor controller 68 specifically regulates the current flow in at least one motor 61 via a motor controller interface 70 and also reads the rotary angle sensor 64.

[0081] One technical challenge is to minimize the technical risks for a person interacting with a mobile service robot, while also considering the development effort, the scope of hardware components, and the complexity of data processing security. The level of activity on the mobile service robot 1 should be kept within limits. The technical solution here is a decoupling of the safety-critical systems from the application layer, where user interaction primarily takes place. This results in significantly lower requirements for the application's security, e.g., eliminating the need for redundant components for failure compensation, less complex sensor data analysis, less complex system tests, etc. Specifically, this is implemented as follows: The mobile service robot 1, as already described, has a processing unit 3 and a memory 2. These primarily perform activities at the application layer, i.e., for example...Regarding navigation with the navigation module 38 and the associated path planning by the path planning module 30, the technical solutions shown in the examples mentioned in this document (except for those relating to safety motion control 60) are also used within applications, for example, to implement motion analysis with feedback via a mobile service robot 1. The associated application must be able to influence the speed and direction of movement of the mobile service robot 1. In contrast, the mobile service robot 1 has a safety layer at which safety-relevant data is processed at the hardware level. This safety layer is largely decoupled from the application layer. At the safety layer, sensor data acquired by at least one environmental sensing sensor 6 is evaluated, for example, with regard to possible or actual collisions with obstacles.At the same time, some components can be duplicated at the safety level, or different components can be used, for example, via triangulation, such as a laser scanner 14 and a 3D camera 8, each for obstacle detection, thereby reducing the risk of failure and increasing the system's safety. The sensor data processed at this level primarily influences the movement of the mobile service robot 1, such that obstacle detections classified as critical prevent control signals from the application level from being implemented. For example, if the application level wants to send a control signal to the motor 61, preferably via a motor controller 68, this control signal is ignored or overwritten if an obstacle is simultaneously detected by at least one environmental sensing sensor 6, which, for example,a collision could occur, especially if the mobile service robot 1 implements the control signals from the application level as intended by the application level. Thus, the application level cannot, for example, override a braking action of the mobile service robot 1 by other movement commands (such as a specific speed), meaning that braking occurs even though the application level does not intend it. The aforementioned safety motion controller 60 plays a crucial role here. This safety motion controller 60 prioritizes the results of the evaluation of the environmental sensor data and directly or indirectly (via a motor controller 68) controls the at least one motor 61 of the mobile service robot 1 in such a way as to prevent an obstacle collision (or, if one has already occurred – e.g., detected by a protective contact strip 69 – to bring the mobile service robot 1 to a standstill).This allows for lower safety requirements to be implemented at the application level, e.g., only safety class A according to IEC 62304. Individual applications may exceed safety class A, but this is not mandatory. necessarily already achieve the next higher security class B. The differentiation according to security classes implies, for example, that during development, the verification of the developed software for risk class A is less extensive than for risk classes B and C, e.g., with regard to integration tests. This allows for faster development of software in risk class A.

[0082] Specifically, the mobile service robot 1 has a computing unit 3, a memory 2, and a safety motion controller 60. The safety motion controller 60 reduces the speed of the mobile service robot 1 or influences its direction of movement based on sensor data when at least one environmental sensing sensor 6, which provides the sensor data, detects an obstacle. This can include, for example, braking or an evasive maneuver. Furthermore, the computing unit 3 accesses the safety motion controller 60 or a motor controller 68 via at least one interface (67, 70). However, the computing unit 3's access to the safety motion controller 60 or the motor controller 68 cannot influence the effects of the safety motion controller 60 on the speed or direction of movement of the mobile service robot 1 based on obstacle detection.In one aspect, the data between the safety motion controller 60 and the at least one environmental sensing sensor 6 is transmitted via two channels, e.g., a digital channel and an analog channel. This can also apply to the data transmission between the safety motion controller 60 and a rotary angle sensor 64. The data transmission between the safety motion controller 60 and the rotary angle sensor 64 or the environmental sensing sensor 6 preferably occurs via two channels, with, for example, one channel transmitting the data digitally and the other channel transmitting the data analogously. The safety motion controller 60 preferably monitors the functionality of the two channels, and in the event that data transmission is only occurring via one channel, the safety motion controller 60 initiates a deceleration of the mobile service robot 1 to a speed of zero. Afterwards, the mobile service robot 1 preferably resumes movement, e.g.,Initiated by an application accessing the safety motion controller 60 or the motor controller 68 via the computing unit 3, this is only possible if the braking function has been reset and a start command has been issued again. The reduction in speed or change in the direction of movement of the mobile service robot 1 is preferably achieved by controlling the current flow in the at least one motor 61 of the mobile service robot 1. Depending on the configuration of the safety motion controller 60, it either has an integrated motor controller 68 for controlling at least one motor 61 or accesses a motor controller 68 for controlling the at least one motor 61 via an interface (67, 70). This motor controller 68 preferably performs the reduction in speed or change in the direction of movement of the mobile service robot 1.The sensor data is provided by an environmental sensing sensor 6, which may be a 2D or 3D camera 8, a radar sensor 9, a laser scanner 14, and / or a protective contact strip 69. Alternative sensors based on ultrasound or infrared, which a specialist would sensibly use for environmental sensing, are also possible. The environmental sensing sensor 6 operates independently of the processing unit 3, although the processing unit 3 is also involved. In one aspect, data from the environmental sensing sensor 6 can be used, for example, for navigation and path planning. In one aspect, a respective obstacle is located within a protective field of an environmental sensing sensor 6, such as a laser scanner 14, which causes the safety motion controller 60 to influence the direction of movement or speed of the mobile service robot 1.

[0083] The applications in memory, on the other hand, meet the requirements of IEC 62304, which is generally divided into three risk classes: A for low risk, B for medium risk, and C for high risk. The mobile service robot 1 meets the requirements of software safety class A of IEC 62304 for at least one of the applications in memory 2 that can also influence the movements of the mobile service robot 1. In one aspect, at least one application in memory 2 meets at least partially the requirements of software safety class B of IEC 62304. Preferably, however, all applications in memory 2 meet only safety class A of IEC 62304, and simultaneously no application meets the requirements of software safety classes B and C of IEC 62304. This significantly reduces, for example, the technical requirements for processing the motion detection sensor data (among other things).The software validation at the application level and the risk minimization effort are largely shifted to the safety level with the safety motion control 60. The at least one application is the navigation module 38 and / or the path planning module 30 and / or the observation point evaluation module 25, the feedback generation module 34 and / or the output module 32 and / or the person identification module 21 and / or the person re-identification module 21. The feedback generation module, for example, outputs feedback based on differently prioritized and detected movement deviations. However, the mobile service robot 1 has further modules at the application level, as illustrated in Fig. 3, which can also be integrated.In addition to a mobile service robot 1, at least one interface (67, 70) is also configured for data transmission between the application level and the security level, as previously described here.

[0084] Fig. 15 illustrates the separation of the application level and the safety controller 60. Figures 15a) and 15b) each distinguish between two scenarios. In Fig. 15a), the motor controller 68 is integrated into the safety motion controller 60. The safety motion controller 60 has access, via a safety motion controller interface 67, to at least one environmental sensing sensor 6, e.g., a 2D or 3D camera 8, a radar sensor 9, a laser scanner 14, or a protective contact strip 69. The latter is triggered upon direct contact of the mobile robot 1 with an obstacle.The safety motion controller 60 regulates, preferably via the motor controller 68, the power supply to the at least one motor 61 of the mobile robot 1, preferably via the motor controller interface 70, such that the robot stops immediately upon obstacle detection when the protective contact strip 69 is triggered, or stops when the obstacle is within a defined area detected by the sensors (8, 9, 14). In one aspect, the obstacle is located within the protective field of one of the sensors, preferably within the protective field of a laser scanner 14. Instead of braking, the mobile robot 1 can also swerve. Data transmission via the safety motion controller interface is preferably dual-channel, e.g., using analog and digital signals. digital channel. This means that, for example, the communication between at least one rotary angle sensor 64 and / or at least one environmental sensing sensor 6 on the one hand and the safety motion controller 60 on the other hand is preferably implemented using two channels, with, for example, one analog and one digital channel. This increases the robustness of the system against interference. The safety motion controller 60 preferably monitors the functionality of the two channels, and in the event that data transmission is only possible via one channel, the safety motion controller 60 initiates a braking process to zero speed by appropriately controlling a motor controller 68. Afterwards, the motor controller 68 is preferably restarted, for example.initiated by an application accessing the safety motion control 60 or the motor controller 68 via the computing unit 3, is only possible if the braking function has been reset and a start command has been set again.

[0085] Independently of this, the application level operates, influencing the control of the motor 61 via an interface (in this case, the safety control interface 67) to perform tasks such as navigation using the navigation module 38 in combination with the path planning module 30. This also requires controlling specific positions and thus activating the motor. Furthermore, other modules from the application level can trigger motor access directly or indirectly, in particular the distance control module 37 for maintaining a distance between a user and the mobile robot 1. This means, for example, that a change in the user's speed, whether following or preceding the mobile robot 1, indirectly influences the speed of the mobile robot 1 via the safety motion controller 60 or the motor controller 68. Similarly, user interactions within the scope of motion analysis (which, for example,The motion capture data processing module 22, the observation point model generation module 23 (e.g., the Microsoft Kinect SDK), the observation point evaluation module 25, the evaluation point determination module 26, the pose determination module 27, the feedback generation module 34, and the output module 32 can be used individually or in combination, e.g., depending on the associated user menu navigation, to control the movements of the mobile robot 1. These and potentially other modules can influence the motor controller 68 via the safety motion controller 60 or the safety motion control interface 67 in order to affect the speed and, indirectly, the direction of travel of the mobile robot 1 via the at least one motor 61. The safety motion control interface 67 is configured to enable two-channel data transmission. For example, this is done...The transmission is analog on one channel and digital on another. The direction of travel is achieved, for example, by controlling at least two drive wheels 63 differently. However, all these control operations at the application level have in common that they are independent of the control of the at least one motor 61 by the safety motion controller 60, or indirectly by the safety motion controller 60 via the motor controller 68, which is based on the detection of, for example, obstacles detected by at least one environmental sensor 6. Thus, the safety motion controller can, for example, reduce the speed, in some cases down to zero, when an obstacle is detected. The obstacle is detected by at least one environmental sensor 6, even though at the application level an application with at least one of the aforementioned modules or one of the modules from Fig. 15 directly or indirectly sends other control signals to the safety motion controller 60 or the motor controller 68 via the safety motion controller interface 67, which, in one aspect, could even imply an acceleration of the mobile robot 1. These control signals (e.g., for adjustments of the direction of movement or speed specifications) are therefore given lower priority or overwritten by the signals triggered by the safety motion controller 60 with regard to obstacle detection and are consequently not implemented. Fig. 15 b), on the other hand, describes a scenario in which the motor controller 68 is not integrated into the safety motion controller 60. Here, it has an interface (e.g.,67, 70) to the safety motion controller 60, as well as an interface (e.g., 70) to the application level and also to the at least one motor 61. The safety motion controller 60 again accesses the at least one environmental sensing sensor 6, as already described. The application level, in turn, has access to the motor controller 68 via the motor controller interface 70 to control the at least one motor 61, in order to control it accordingly depending on the application, e.g., to adjust the direction of movement or the speed of the service robot 1. With regard to obstacle detection, as in Fig. 15 a), the obstacle detection and the control commands derived from it to the motor controller 68 preferentially override control commands from the application level. The safety motion control system 60 described here, or the arrangement in application and safety levels, with high safety requirements at the safety level and low safety requirements at the application level, can preferably be combined with the various embodiments in this document.

[0086] A technical challenge in user interaction is to design a person's exercise with the mobile robot 1 (or an alternative person-tracking device 100) in such a way that it is as painless as possible for the person training. This involves querying the person's pain level and adjusting the robot's operation accordingly. Figure 16 illustrates this procedure, which can be combined with the various implementations already listed above. The computer-implemented procedure involves operating a mobile robot 1, but can also be implemented on other person-tracking devices 100. It includes, in step 705, the identification of a person, as well as the recording of the person's pain level (step 1610). The pain level is recorded, for example, via a display input, such as a slider for the Visual Analog Scale (VAS).Alternatively, other approaches are also possible, such as facial recognition using cameras and the classification of the captured images and comparison with values ​​stored in memory. Furthermore, voice input can also be performed using input unit 19, for example, via a microphone 71, and the speech signals can be evaluated using state-of-the-art methods. The pain level is then evaluated, for example, by comparing the pain level with a threshold value stored in memory 2 (step 1620), and an event is triggered based on the evaluation, for example, when the pain level... The event occurs when the threshold is exceeded. This event is an output via an output unit 10 (step 1630), such as a voice or display output, e.g., a recommendation regarding the type of exercise to be completed, its scope, or even its termination. Alternatively or additionally, the event involves the activation of a motor controller 68 (step 1640) of the personnel detection device 100 or the mobile robot 1, depending on the threshold comparison. Alternatively and / or additionally, the event includes the transmission of information via a wireless interface 4 (step 1650), e.g., to a cloud-based server, a mobile device, etc., and / or an adjustment of a monitoring profile (step 1660) regarding the duration of an exercise and / or the distance to be covered during an exercise.The monitoring profile in memory (2) is associated with stored rules for evaluating the movements of the identified person. For example, the rules associated with the identified person are associated with positions in a coordinate system of a map.

[0087] A service robot 1 can be a robot that moves on wheels, as illustrated below in Fig. 1, or a robot that moves on legs, such as a so-called humanoid robot. The latter case implies that any movement of a mobile service robot and any claims relating thereto can also refer to locomotion by walking instead of driving. In one aspect, it could also be a drone.

[0088] The following examples highlight specific aspects of the invention. The features mentioned in the examples can be combined by a person skilled in the art with the other features mentioned in the description. Example 1: Movement analysis of a person

[0089] The following implementation enables efficient and robust analysis of a person's movements over time, particularly using motion capture and pose estimation techniques. This allows for providing feedback on the individual's movement patterns. A key aspect is efficient motion analysis to ensure high-quality data capture. Furthermore, the feedback process is designed to optimize movement analysis exercises, maximizing the learning effect and ideally reducing the number of exercises required. This, in turn, saves energy by shortening the duration of each analysis. Preferably, these movement analysis exercises are conducted using a service robot (1) that monitors the individual. SKM1. Computer-implemented method for recording and evaluating a person's movements, comprehensive • Identification of a person based on recognized patterns within captured sensor data, • Detection of the person using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person by means of pattern evaluation and rules stored in memory 2, • Evaluation of the recorded movements based on observation points of the observation point model and using rules stored in memory 2. SKM2. Computer-implemented method for recording and evaluating a person's movements, comprehensive • Detection of the person using a motion detection sensor 5, • Identification of a person based on recognized patterns within captured sensor data, • Generation of an observation point model for the recorded person using pattern evaluation and rules stored in memory 2, • Evaluation of the recorded movements based on observation points of the observation point model and using rules stored in memory 2. SKM3: Computer-implemented procedure according to SKM1-SKM2, whereby a monitoring profile is maintained for the identified person, which is associated with rules stored in memory 2 for evaluating the movements of the identified person. SKM4: Computer-implemented procedure according to SKM1-SKM3, wherein the rules associated with the identified person are associated with positions in a coordinate system of a map. SKM5: Computer-implemented procedure according to SKM1-SKM4, wherein the area in which the observation and / or evaluation points are located is associated with a predefined area in a coordinate system. SKM6: Computer-implemented procedure according to SKM1-SKM5, wherein the rules associated with the identified person are provided or triggered via a wireless interface 4. SKM7: Computer-implemented method according to SKM1-SKM6, wherein the monitoring profile associated with the identified person is provided via a wireless interface 4. SKM8: Computer-implemented method according to SKM1-SKM7, wherein the processing of the recorded movements over time includes the processing of discrete-time measurements. SKM9: Computer-implemented procedure according to SKM1-SKM8, wherein a repetitive movement of the person is recorded over time by means of the motion detection sensor 5, starting with an initial pose, intermediate poses, and a final pose, each of which is defined by at least a subset of observation points, and wherein the final pose serves in turn as the starting pose for the next repetitive movement. SKM10: Computer-implemented method according to SKM9, whereby an initial pose and / or a final pose is determined by comparison with classified poses stored in memory 2. SKM11: Computer-implemented method according to SKM9, wherein the next repetitive movement is fundamentally identical or not identical with the preceding repetitive movement. SKM12: Computer-implemented procedure according to SKM9, whereby one or more evaluation points are determined between the initial pose and the final pose by evaluating the time course of the person's poses within the repetitive movement, which allows an evaluation of the repetitive movement. SKM13: Computer-implemented procedure according to SKM12, wherein a joint evaluation of at least two subsequent repetitive movements is carried out jointly with at least one evaluation point, which has been determined within each of the repetitive movements, by comparing measured values ​​with evaluation rules stored in memory 2. SKM14: Computer-implemented procedure according to SKM12-SKM13, wherein the evaluation of a repetitive movement is carried out by determining the distance between at least two observation points and comparing the determined distance with evaluation rules stored in memory 2. SKM15: Computer-implemented procedure according to SKM12-SKM14, wherein the evaluation of a repetitive movement is carried out by determining the distances between at least two observation points and at least one evaluation point and comparing the determined distance with evaluation rules stored in memory 2. SKM16: Computer-implemented procedure according to SKM4, wherein the evaluation rules stored in memory 2, which are associated with the identified person, are made available or triggered via a wireless interface 4. SKM17. Computer-implemented method according to SKM1-SKM16, wherein the sensor data of the motion detection sensor 5 are made available to at least one other process node 40 via a process node 40 and a data channel 41. SKM18. Computer-implemented method according to SKM17, wherein the data is provided via data channel 41 using shared memory, remote procedure calls, and / or data packets containing a TCP / IP or UDP header. SKM19: Device for carrying out the method according to SKM1-SKM18. SKM20: Device for carrying out the procedure according to SKM19, wherein it is a mobile service robot 1. SKM21: System for recording and evaluating a person's movements, comprehensive • a computing unit 3 and a memory 2, • a person identification module 20 in memory 2 for identifying a person based on recognized patterns within captured sensor data, • a motion detection sensor 5 for detecting the movement of a person, • an observation point model generation module 23 in memory 2 for generating observation points for the recorded person by means of pattern evaluation by the processing unit 3 and rules stored in memory 2 and assignment of coordinates to the observation points of the observation point model by the processing unit 3, • an observation point evaluation module 25 in memory 2 with rules for evaluating at least one recorded movement based on observation points of the observation point model, SKM22. System according to SKM21, further comprising a wireless interface 4, configured for the transmission of the monitoring profile, wherein a monitoring profile is maintained in memory 2 for the identified person, which is associated with rules for evaluating the movements of the identified person and / or with positions in a coordinate system of a map. SKM23. System according to SKM21-SKM22, further comprising a pose determination module 27 in memory 2 with rules for detecting poses by comparison with stored poses based on at least one subset of observation points of the observation point model. SKM24. System according to SKM21-SKM23, further comprising a scoring point determination module 26 in memory 2 with rules for determining a scoring point based on the evaluation of observation points between initial pose and final pose by evaluating the time course of the person's poses within the repetitive movement by the computing unit 3. SKM25. System according to SKM21-SKM24, further comprising a person re-identification module 2 in memory 2 for re-identifying a person based on recognized patterns within recorded sensor data by the computing unit 3. SKM26. System according to SKM21-SKM25, further comprising in memory 2 a map module 31, which provides coordinates that are associated with the recording of the person's movements, the processing of the recorded motion detection sensor data and / or the evaluation of the person's movements, each based on rules stored in memory 2. SKM27. System according to SKM21-SKM26, wherein the motion detection sensor 5 provides generated data as process node 40 to at least one other process node via a data channel 41 or triggers a state of a state machine 42. SKM27. System according to SKM26, wherein the data provision via data channel 41 is carried out using shared memory, remote procedure calls, and / or using data packets that have a TCP / IP or UDP header. Example 2: Feedback from a motion analysis and correction system

[0090] The following implementation addresses the analysis of a person's movements and the generation of feedback within a motion analysis system. This system tracks a person's movements, analyzes them, and provides feedback. This is achieved, among other things, by "synchronizing" a multitude of detected movement deviations with different feedback signals. Furthermore, this implementation designs the feedback in such a way that, for example, a motion analysis exercise with a single person is efficient, maximizing the learning effect and ideally reducing the number of such exercises required. This, in turn, saves energy on the computational effort of motion analysis across a series of evaluations, as the series can then be shorter.With regard to the Lem effect, different feedback is also given for the movement deviations that are given the same priority. FS 1. Computer-implemented method for recording and evaluating a person's movements over time and generating feedback to the person, comprising a) recording a person using a motion detection sensor 5, b) generating an observation point model of observation points for the recorded person using pattern evaluation and rules stored in memory 2, c) Evaluation of the recorded movements with regard to defined movement deviations based on observation points of the observation point model and / or derived evaluation points and rules stored in memory 2 for these in a first time interval 51, d) Output of feedback to the person by means of an output unit 10 in a second time interval 52 following the first time interval 51 regarding the determined movement deviation. FS2. Computer-implemented method according to FS1, further comprising a third time interval 53 in which no feedback is output. FS3. Computer-implemented method according to FS1-FS2, further comprehensive • Completing steps a) - c) from FS1 in a fourth time interval 54, • Output of feedback in a fifth time interval 55 following the fourth time interval 54 regarding the movement deviation assessed in the fourth time interval 54. FS4. Computer-implemented method according to FS2, wherein the time length of the third time interval is zero. FS5. Computer-implemented procedure according to FS2, wherein the time length of the third time interval 53 is shorter than the sum of the lengths of the first time interval 51 and the second time interval 52. FS6. Computer-implemented procedure according to FS1-FS5, wherein the length of a time interval (51-55) is defined by the number of steps taken by the recorded person. FS7. Computer-implemented procedure according to SF6, whereby the number of steps taken by the person is determined by means of an evaluation of the observation point evaluation module 25. FS8. Computer-implemented procedure according to FS3, wherein in the fourth time interval 54 the movement deviation identified in the first time interval 51 and associated with feedback in the second time interval 52 is re-evaluated as a deviation type. FS9. Computer-implemented method according to FS1, with a prioritization of determined motion deviations in the first time interval 51 and an output of feedback in the second time interval 52 on the motion deviation with the highest priority in the first time interval 51. FS10. Computer-implemented method according to FS1-FS9, with an output of feedback in the fifth time interval 55, which is based on differently prioritized motion deviations than the feedback output in the second time interval 52. FS 11. Computer-implemented method according to FS 1-FS 10, with different feedback in time interval 52 and time interval 55 for detected and equally prioritized motion deviations. FS12. Computer-implemented method according to FS1-FS11, comprising repeatedly iterating through time intervals (51) to (55) and, in at least two time intervals designated for feedback, outputting feedback on at least two differently prioritized and detected motion deviations. FS13. Computer-implemented method according to FS1-FS12, further comprising a final time interval 56 after one or more time intervals following the time interval 55, for outputting Feedback via output unit 10, which is based on at least two differently prioritized and detected movement deviations. FS14. Computer-implemented method according to FS1-FS13, wherein, prior to the generation of an observation point model, the recorded person is identified by recording personal characteristics of the person and comparing the recorded personal characteristics with characteristics stored in a memory 2, as well as re-identifying the person over time. FS15. Computer-implemented procedure according to FS1-FS14, wherein the evaluation of the recorded movements is based on evaluation rules for the movement deviations associated with the identified person, stored in memory 2. FS16. Computer-implemented procedure according to FS1-FS15, wherein the recording of the person's movements and / or the evaluation rules stored in memory 2, which are associated with the identified person, are associated with positions in a coordinate system of a map. FS17: Computer-implemented procedure according to FS14-FS16, wherein a monitoring profile is maintained for the identified person, which is associated with rules stored in memory 2 for evaluating the movements of the identified person. FS 18. Computer-implemented method according to FS 17, wherein the surveillance profile associated with the identified person is made available via a wireless interface 4. FS19. Computer-implemented method according to FS17-FS18, wherein the monitoring profile is associated with at least two positions on a map and path planning takes place between the two positions. FS20. Computer-implemented method according to FS1-FS19, wherein each time interval is defined via a state of a state machine 43. FS21. Computer-implemented method according to FS1-FS20, wherein the data from the motion detection sensor 5 are made available to other process nodes 40 via a process node 40 and a data channel 41. FS22. Computer-implemented method according to FS21, wherein data provision is carried out via data channel 41 using shared memory, remote procedure calls, and / or using data packets that have a TCP / IP or UDP header. FS23. Computer-implemented method according to claims FS1-FS22, comprising providing captured movement data, person identification data, observation points, observation point evaluations, path planning data, map data and / or output data at least partially via a process node 40 and by means of a data channel 41. FS24. Device for carrying out the procedure according to FS1-FS23. FS25. Device for carrying out the method according to FS24, wherein the device is a mobile service robot 1. FS26. System for recording and evaluating a person's movements over time and for generating comprehensive feedback. • a motion detection sensor 5 for detecting the movement of a person, • a computing unit 3 and a memory 2, • an observation point model generation module 23 in memory 2 for generating an observation point model from observation points of the person by the computing unit 3, • an observation point evaluation module 25 in memory 2 with rules for evaluating at least one recorded movement based on a monitored observation and / or evaluation point in the computing unit 3, • an output module (32) and an output unit 10 for outputting feedback based on a feedback generation module 34 located in memory 2, • wherein the observation point evaluation module 23 is configured to evaluate the detected movements in a first time interval 51 and the feedback generation module 34 initiates the output of feedback on the detected movement deviation via output module 32 through the output unit 10 in a second time interval 52. FS27. System according to SF26, wherein during a time interval (e.g. 52 or 55) the feedback is triggered by calculation results of a process node 40 by means of a state machine 43. FS28. System according to SF26-SF27, wherein the length of a time interval is defined by the number of steps taken by the recorded person, which is determined by means of the observation point evaluation module 25 and / or a pose determination module 27. FS29. System according to FS26-FS28, with a prioritization of detected motion deviations in the feedback generation module 34. SF30. System according to SF26-SF29, wherein the observation point evaluation module 23 is configured to re-evaluate the movement deviation identified in the first time interval 51 and associated with feedback in the second time interval 52 as a deviation type in a fourth time interval 54 and to output feedback in a fifth time interval 55 following the fourth time interval 54 to the movement deviation evaluated in the fourth time interval 54. SF31. System according to SF26-SF30, wherein the feedback generation module 34 a) triggers at least two feedbacks for differently prioritized motion deviations, b) triggers feedback for the detected and highest-priority motion deviation from the first time interval 51 in the second time interval 52; c) triggers a feedback output in the fifth time interval 55 for feedback based on differently prioritized motion deviations than in the second time interval 52; d) triggers different feedback in time interval 52 and time interval 55 for detected motion deviations of the same priority;and / or e) triggers feedback in a final time interval 56 after one or more time intervals following the time interval 55, which is based on at least two differently prioritized and detected movement deviations and which is determined by means of a statistics module 38, and wherein a triggering in scenarios a)-e) each results in a feedback output by means of the output module 32 and the output unit 10.; SF32. System according to SF26-SF31, further comprising a person identification module 20 for identifying the person before generating the observation point model and a person re-identification module 21 for re-identifying the person over time, wherein for the identified person an association of the movement assessment in the observation point evaluation module 25 is carried out by means of rules in memory 2. FS33. System according to FS26-FS32, further comprising a pose detection module 27 in memory 2 with rules for detecting poses, a wireless interface 4 for data exchange, and a map module 31 in memory 2, which provides coordinates that are associated with the recording of the person's movements, the processing of the recorded motion detection sensor data, and / or the evaluation of the person's movements, each based on rules stored in memory 2. FS34. System according to FS26-FS33, wherein the data provision of the motion detection sensor 5 and / or at least one of the modules (23, 25, 27, 31, 32 and / or 34) are configured as process node 40. FS35. System according to FS34, wherein data provision is carried out via data channel 41 using shared memory, remote procedure calls, and / or data packets that have a TCP / IP or UDP header. Example 3: Navigation

[0091] The following implementation ensures the efficient and robust evaluation of a person's movements over time, saving computational effort and enabling efficient training with the person. This is to be implemented using location-dependent rules for a mobile service robot 1, which performs the evaluations only at specific locations. In the following illustration, the service robot can have one or more computing units (3) and one or more memory locations 2. NAVI. Computer-implemented method for operating a mobile service robot 1, which monitors the movements (such as a movement exercise) of a person, comprehensive • Identification of the person at the mobile service robot 1 based on recognized patterns within the captured sensor data, • Association of the identified person with a stored surveillance profile, • Detection of the person's movements using a motion detection sensor 5 while the mobile service robot 1 travels a path, • Generation of observation points for the recorded person based on stored rules and assignment of coordinates to the observation points, • Evaluation of the recorded movements of the person based on the observation points, the stored monitoring profile and associated rules, • Retrieving position data as coordinates of a map associated with components of the monitoring profile, as well as • Automatic output of instructions via an output unit 10 of the mobile service robot 1 the captured and identified person as soon as the mobile service robot 1, while traversing its path, has reached a defined position or a minimum distance to a position in the coordinate system of the map associated with rules in memory 2. NAV2. Computer-implemented method according to NAVI, whereby the output of instructions is triggered within a defined time interval after reaching the minimum distance to the associated position. NAV3. Computer-implemented method according to NAV1-NAV2, wherein the output is a speech output via a loudspeaker 11, a display output via a display 12 and / or a signaling of a light element 18. NAV4. Computer-implemented method according to NAV1-NAV3, wherein the output is generated by machine learning as speech synthesis using a text-to-speech system 33. NAV5. Computer-implemented method according to NAV1-NAV4, wherein the person detection and sensor data generation for the creation of the identification profile is carried out by the motion detection sensor 5. NAV6. Computer-implemented method according to NAV1-NAV5, wherein a monitoring profile with at least two positions on a map is associated for reaching by the mobile service robot 1 and path planning takes place between each of the individual positions. NAV7. Computer-implemented method according to NAV1-NAV6, wherein monitoring includes as components the monitoring of movements by means of a motion detection sensor 5 and / or vital parameters by means of a vital data acquisition sensor 7 based on stored rules. NAV8. Computer-implemented method according to NAV1-NAV7, wherein a monitoring profile is transmitted via an interface on the mobile service robot 1. NAV9 Computer-implemented method according to NAV1-NAV8, wherein in addition to the identified person at least one other person is detected by the motion detection sensor 5 while completing a path, these sensor data of the at least one other person contain a face which is detected and then linked. NAV10. Computer-implemented method according to NAV1-NAV9, wherein, for the purpose of comparing the called position data of the map with the position of the service robot 1 on the map, the position of the service robot 1 is determined via an odometry unit 13 and / or by means of an environment detection sensor 6, each based on a first coordinate system, and the person is detected by a motion detection sensor 5 with a second coordinate system, wherein the evaluation of the movements is based on coordinates that are within a uniform coordinate system, based on the transformation of the coordinates from one of the two coordinate systems into the other coordinate system or on the transformation of the coordinates of both coordinate systems into a uniform coordinate system. NAVI 1. Computer-implemented procedure according to NAV1-NAV10, wherein a repetitive movement of the person being recorded is captured over time using rules stored in memory 2, beginning with an initial pose, intermediate poses, and a final pose, each of which is defined by at least one Subsets are defined at observation points, with the final pose serving as the starting pose for the next repetitive movement. NAV12. Computer-implemented procedure according to NAVI -NAVI 1, wherein the evaluation of a repetitive movement is carried out by determining the distance between at least two observation points and / or at an evaluation point, which was determined by evaluating the time course of the poses of the person within the repetitive movement, and by comparison with evaluation rules stored in memory 2. NAV13. Computer-implemented procedure according to NAV1-NAV12, wherein the evaluation rules associated with the identified person are provided or triggered via a wireless interface 4. NAV14. Computer-implemented procedure according to NAV1-NAV13, wherein the recording of the person's movements and / or the evaluation rules in the surveillance profile associated with the identified person are associated with positions in a coordinate system of a map where person recording is carried out for the purpose of evaluating recorded poses of the person. NAV15. Computer-implemented procedure according to NAV1-NAV14, wherein a monitoring profile is maintained for the identified person, which is associated with rules stored in memory 2 for evaluating the movements of the identified person. NAVI 6. Computer-implemented method according to NAV1-NAV15, wherein the monitoring profile associated with the identified person is made available via a wireless interface 4. NAV17. Computer-implemented method according to NAV1-NAV16, with the provision of captured movement data, person identification data, observation points, observation point evaluations, path planning data, map data and / or output data at least partially via a process node (40) and by means of a data channel (41). NAVI 8. Computer-implemented method according to NAVI 7, wherein the data provision via data channel 41 is carried out using shared memory, remote procedure calls, and / or using data packets that have a TCP / IP or UDP header. NAVI 9. Device for carrying out the procedure according to NAVI-NAVI 8. NAV20. Device for carrying out the method according to NAV19, wherein the device is a service robot 1. NAV21 system comprehensive • a computing unit 3 and a memory 2, • a motion detection sensor 5 for detecting the movement of a person, • a person identification module 20 in memory 2 for identifying a person based on recognized patterns within recorded sensor data using the processing unit 3, • a monitoring profile of the person stored in memory 2, which is associated with or contains rules for evaluating the movements of the recorded person, • an observation point model generation module 23 in memory 2 for generating observation points for the recorded person by the computing unit 3 and stored in memory 2 Rules and assignment of coordinates to the observation points of the observation point model by the computing unit 3, • an observation point evaluation module 25 in memory 2 with rules for evaluating at least one movement based on the monitoring profile from memory 2 using the computing unit 3, • a map module 31 in memory 2 with coordinates that are at least partially associated with the monitoring profile, • a path planning module 30 in memory 2 for planning the movements along a path of the mobile service robot 1 based on coordinates from the map module 31 using the computing unit 3, wherein the coordinates describe target positions, fixed and / or mobile obstacles, • an output module 32 in memory 2 with instructions for the recorded person to output the instructions via an output unit 10, • with rules stored in memory 2 to trigger an output to the recorded person using output module 32 and output unit 10, wherein the rules are associated with positions of the map stored in map module 31 and automatically trigger the output when the service robot 1 reaches a defined position on the map. NAV22. System according to NAV21, whereby the output is associated with the rules from the monitoring profile of the person located in memory 2. NAV23. System according to NAV21, further comprising a wireless interface 4 configured for the transmission of a monitoring profile of the person. NAV24. System according to NAV21-NAV23, further comprising an anonymization module 35 for combining data of a face of another person captured by the motion detection sensor. NAV25. System according to NAV21, wherein the provision of data from the motion detection sensor 5 is carried out at least partially via a process node 40 and a data channel 41. NAV26. System according to NAV21-NAV25, wherein the motion detection sensor 5 and / or one of the modules (20, 23, 25, 30, 31, and / or 32) are configured as process nodes 40 and the process nodes 40 provide data via a data channel 41 using shared memory, remote process calls or with a TCP / IP or UDP header. Example 4: Output of feedback over time

[0092] The following implementation demonstrates the efficient output of feedback from a system for capturing a person's movements. One aspect of this system is designed to evaluate a person's gait and provide feedback. For example, a person's step sequence is assessed. This enables, among other things, a standardized evaluation and prioritization of detected movement deviations across multiple individuals, all walking at different speeds. Furthermore, individuals receive timely feedback during walking exercises, which cannot be guaranteed for faster individuals within fixed-duration timeframes. A side effect is improved results in a series of movement capture exercises, with the consequence that... The total number of exercises can be reduced, which in turn saves computational energy. The implementation has already been partially outlined in Fig. 9. FT1: Computer-implemented method for recording and evaluating a person's movements over time and generating feedback to the person, comprehensive • Detection of a person's movements using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person, which describe a pose or movement of the person, • Evaluation of the recorded pose or movement with regard to defined deviations based on observation points of the observation point model and / or derived evaluation points in a first time interval 51 using rules stored in memory 2, which comprises the following procedural steps: o Determination of steps from the evaluation of the movement sequence during the first time interval 51, o Summing of the steps and comparison of the summed steps with a threshold value, o Ending of the first time interval 51 when the summed steps have reached the threshold value, o Determination of movement and / or pose deviations in the first time interval 51, • Output of feedback to the person in a second time interval 52 based on the identified movement and / or pose deviations. FT2: Computer-implemented procedure according to FT1, wherein, after determining movement and / or pose deviations in the first time interval 51, a prioritization of the movement and / or pose deviations takes place and the output of feedback to the person on the highest prioritized movement and / or pose deviation in the second time interval 52. FT3: Computer-implemented method based on FT1, more comprehensive • Detection of a person's movements using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person in a third time interval 53, • Evaluation of the recorded poses and / or movements with regard to defined deviations based on observation points of the observation point model and / or derived evaluation points in a third time interval 53 using rules stored in memory, which also includes the following procedural steps: o Determination of steps from the evaluation of the movement sequence during the third time interval 53, o Summing of the steps and comparison of the summed steps with a threshold value, o Ending of the third time interval 53 when the summed steps have reached the threshold value. FT4: Computer-implemented method based on FT1-3, further comprehensive • Issuance of feedback to the person relating to a detection in the third time interval 53 Movement and / or pose deviation in a fourth time interval 54, wherein the movement and / or pose deviation is the highest priority deviation in the first time interval 51, • Output of feedback in a fourth time interval 54 based on the determined movement and / or pose deviations in the third time interval 53. FT5. Computer-implemented method based on FT1-FT4, which is executed more than once within a time window defined in a monitoring profile. FT6. Computer-implemented method according to FT1-FT5, with a final time interval 55, which, after completion of the recording of the person's movements, includes the output of movement deviations recorded in previous time intervals and / or feedback issued in previous time intervals via an output unit 10. FT7. Computer-implemented method according to FT6, wherein the motion deviations recorded in previous time intervals and / or the feedback output in previous time intervals are aggregated motion deviations and / or aggregated feedback. FT8. Computer-implemented method according to FT1-FT7, wherein the motion deviations to be detected, the movements and / or poses to be detected and / or the duration of the detection of the motion deviations are stored in or associated with a monitoring profile, wherein the monitoring profile is made available via a wireless interface 4. FT9. Computer-implemented method based on FT1-FT8, where the third time interval 53 is shorter than the first time interval 51. FT10. Computer-implemented method according to FT1-FT9, wherein coordinates for carrying out at least one of the steps from FT1-FT8 are associated with a monitoring profile and an automated triggering of the detection of the person's movement takes place when a comparison of the coordinates stored directly or indirectly in the monitoring profile by means of at least one environmental sensing sensor 6 or by means of an odometry unit 13 with coordinates of a map results in these coordinates being reached. FT11. Computer-implemented method according to FS5-FS10, wherein the monitoring profile is associated with at least two positions on a map and path planning takes place between the two positions. FT12. Computer-implemented method according to FT1-FT11, wherein the provision of data from the motion detection sensor 5 is carried out at least partially via a process node 40 and a data channel 41 using shared memory, remote process calls or with a TCP / IP or UDP header. FT13. Device for carrying out the computer-implemented method according to FT1-FT12, e.g. a mobile service robot 1. Example 5: Data processing

[0093] The following implementation ensures the efficient and modular processing of recorded movement data of a person, e.g. on a service robot 1 or a mobile device. Modularity ensures that, for example, different calculation steps are implemented by process node 40, which can easily be successively extended by further process nodes 40 and links between these new and existing process nodes 40, which then saves bandwidth and storage space when updating the software, for example on the service robot 1 via the Internet (transmitted via the wireless interface 4). DPI. Computer-implemented method for capturing and evaluating a person's movements, comprehensive • Detection of a person using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person using pattern evaluation and rules stored in memory 2, and assignment of coordinates to the observation points of the observation point model using an observation point model generation module 23, • Determination of poses of the recorded person using a pose determination module 27 based on the observation points from the observation point model and • Evaluation of the observation points using an observation point evaluation module 25, • wherein the motion detection sensor 5, the pose detection module 27 and / or the observation point evaluation module 25 provides data to at least one other process node 40 via a process node 40 through at least one data channel 41 and / or receives data from at least one other process node 40. DP2. Computer-implemented method according to DPI, wherein the pose determination module 27 and / or the observation point evaluation module 25 individually or in combination represent a process node 40 and provide data via at least one data channel 41 to at least one other process node 40 and / or receive data from at least one other process node 40. DP3. Computer-implemented method according to DP1-DP2, wherein the recording and / or evaluation of a person's movements is performed automatically when a specific position on a map is reached and the person is within the detection range of the motion detection sensor (5). DP4. Computer-implemented method according to DP1-DP3, further comprising outputting feedback to the detected person based on the evaluation of the observation points. DP5. Computer-implemented method according to DP1-DP4, comprising, prior to the detection of the person by means of a motion detection sensor 5, an identification of the detected person based on stored patterns by a person identification module 20 and / or a person re-identification module 21 for the re-identification of the person during detection by the person detection sensor 5 by means of stored patterns. DP6. Computer-implemented method according to DP5, wherein re-identification takes place at discrete time intervals. DP7. Computer-implemented procedure according to DP1-DP6, wherein a monitoring profile is maintained for the recorded and identified person, which is evaluated using rules stored in memory 2. the movements of the identified person are associated with the observation point evaluation module 25. DP8. Computer-implemented method according to DP1-DP7, wherein the observation point evaluation module 25 evaluates several observation points together. DP9. Computer-implemented method according to DP1-DP8, wherein a process node 40 generates data and makes it available via at least one data channel 41. DP10. Computer-implemented method according to DP1-DP9, wherein the data generated by process node 40 represents an observation point model based on observation points, one or more observation points, poses or on quantities derived from these. DP11. Computer-implemented method according to DP1-DP10, wherein the data represents time signals and / or measurement series. DP12. Computer-implemented method according to DP1-DP11, wherein a data channel 41 enables asynchronous data communication. DP13. Computer-implemented method according to DP1-DP12, wherein at least one process node 40 enables asynchronous data processing. DP14. Computer-implemented method according to DP1-DP13, wherein the data provided to a data channel (41) has a TCP / IP or UDP header. DP15. Computer-implemented method according to DP1-DP14, wherein the provision and / or reception of data between at least two process nodes 40 is carried out by providing the data in a shared memory 42 or by means of remote procedure calls. DP16. Computer-implemented method according to DP1-DP15, wherein asynchronous data communication represents the writing of data into the data channels 41 by a process node 40, while at least one other process node 40 simultaneously reads data from the data channel 41. DP17. Computer-implemented method according to DP1-DP16, wherein data transmission from the motion detection sensor 5 to the observation point model generation module 23, from the observation point model generation module 23 to the pose detection module 27 and / or from the pose detection module 27 to the observation point evaluation module 25 is carried out by means of data that have a TCP / IP header or UDP header. DP18. Computer-implemented method according to DP1-DP17, wherein the data obtained by detecting the person by the motion detection sensor 5, the observation point model generation module 23, the pose determination module 27, the observation point evaluation module 25 and / or combinations thereof call a state of a state machine 43. DP19. Computer-implemented method according to DP1-DP18, wherein the recording and / or evaluation of movements of the person is associated with at least one position on a map. DP20. Computer-implemented method according to DP18-DP19, wherein a state of a state machine (43) is called by at least one process node 40 based on coordinates, the coordinates being associated with a map of the map module 31. DP21. Device for carrying out the procedure according to DP1-DP20. DP22. Device for carrying out the method according to DP21, wherein it is a service robot 1. DP23. Device for carrying out the method according to DP22, wherein the detection and / or evaluation of movements of the person according to DP 1 is carried out automatically when the service robot 1 reaches the at least one position associated with the map and the person is in the detection range of the motion detection sensor 5. DP24. System for recording and evaluating a person's movements, comprehensive • a motion detection sensor 5 for detecting the movements of a person, • a computing unit 3 and in memory 2 with o an observation point model generation module 23 for generating an observation point model of observation points for the recorded person by means of pattern evaluation and rules stored in memory 2 and assignment of coordinates to the observation points of the observation point model, o a pose determination module 27 for determining poses based on the observation points from the observation point model, as well as o an observation point evaluation module 25 for evaluating the observation points, wherein the motion detection sensor 5 provides data to at least one other process node 40 via at least one data channel 41 and / or receives data from at least one other process node 40. DP25. System according to DP24, wherein the pose determination module 27 and / or the observation point evaluation module 25 individually or in combination represent a process node 40 and provide data via at least one data channel 41 to at least one other process node 40 and / or receive data from at least one other process node 40. DP26. System according to DP24-DP25, wherein the detection and / or evaluation of the person's movements is automatically performed by the motion detection sensor 25 and the observation point evaluation module 25 when the system reaches a position associated with a map from the map module 31 and the person is within the detection range of the motion detection sensor 5. DP27. System according to DP26, wherein the system's position data is provided by the odometry unit 13. DP28. System according to DP24-DP27, further comprising a feedback generation module 34 for generating feedback based on the evaluation of the observation points by the observation point evaluation module 25 and an output unit 10 for outputting the generated feedback to the recorded person. DP29. System according to DP24-DP28, with a person identification module 20 for identifying the person before detection by the motion detection sensor 5 using patterns stored in memory 2 and / or re-identifying the person during detection by the person detection sensor 5 using stored patterns by a person re-identification module 21. DP30. System according to DP24-DP29, wherein the data provision of the at least one process node 40 is carried out by means of a data channel 41 through remote procedure calls or shared memory and / or the data has a TCP / IP or UDP header. DP31. System according to DP24-DP31, wherein the data provided by a process node 40 via a data channel 41 represent time signals and / or measurement series. DP32. System according to DP24-DP31, further comprising in memory 2 a state machine 43, of which at least one state is called as one or more process nodes 40 by data from the motion detection sensor 5, the observation point model generation module 23, the pose determination module 27, the observation point evaluation module 25 and / or the feedback generation module 34. DP33. System according to DP24-DP32, wherein at least one state of the state machine 43 is called by at least one process node 40 based on the position data of the system and the position data are associated with a map of the map module 31. Example 6: Process node and state machine

[0094] The following implementation represents an efficient and simplified data processing method for analyzing recorded movement data of a person, preferably on a service robot 1 or a mobile device. Ideally, the data processing is modular to allow for easy expansion over time, ideally via a wireless interface 4 with internet access, and the modularity ensures that the data transfer volume can be limited. PZ1. Computer-implemented method for recording and evaluating the movements of a person, wherein the evaluation of the movements of a person takes place within at least one process node 40, comprising • Detection of a person using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person using pattern evaluation and rules stored in memory 2, and assignment of coordinates to the observation points of the observation point model using an observation point model generation module 23, • Evaluation of the person's movements based on at least a proportion of the generated observation points by rules using an observation point evaluation module 25, and • the output of hints or feedback on the evaluated movement of the person, whereby hints or feedback are triggered by a state of a state machine 43 using data from a process node 40, which are provided via a data channel 41. PZ2. Computer-implemented method for recording and evaluating the movements of a person by a service robot 1, wherein the evaluation of the movements of a person takes place within at least one process node 40, comprising • Detection of a person using a motion detection sensor 5, • Generation of an observation point model of observation points for the recorded person using pattern evaluation and rules stored in memory 2, and assignment of coordinates to the observation points of the observation point model using an observation point model generation module 23, • Evaluation of the person's movements based on at least a proportion of the generated observation points by rules using an observation point evaluation module 25, • Feedback is generated by means of a feedback generation module 34 and its output is carried out via an output module 32 and an output unit 10, wherein the feedback generation module 34 and the output module 32 contain a state machine 43 within a process node 40, wherein the state machine 43 triggers at least one feedback. PZ3. Computer-implemented method according to PZ1-PZ2, wherein the state called by the state machine 43 triggers an output via an output module 32 implemented in a further process node 40 when the service robot 1 reaches a position on a card stored in memory 2. PZ4. Computer-implemented procedure according to PZ1-PZ2, wherein a monitoring profile is maintained for the recorded and identified person, which is associated with rules stored in memory 2 for evaluating the movements of the identified person by the observation point evaluation module 25 and / or coordinates of a map for recording the movements of the person. PZ5. Computer-implemented method according to PZ1-PZ4, wherein data channel 41 enables asynchronous data communication. PZ6. Computer-implemented method according to PZ1-PZ5, wherein at least one process node 40 enables asynchronous data processing. PZ7. Computer-implemented method according to PZ1-PZ6, wherein the data provided to data channel 41 has a TCP / IP or UDP header. PZ8. Computer-implemented method according to PZ1-PZ7, wherein the sending and / or receiving of data between at least two process nodes 40 is carried out by providing the data in a shared memory 42 or by means of remote procedure calls. PZ9. Computer-implemented method according to PZ1-PZ8, wherein asynchronous data communication represents the time-shifted writing and reading of data into at least one data channel 41 by or from at least one process node 40. PZ10. Device for carrying out the method according to PZ1-PZ9, wherein in one aspect the device is a service robot 1 which, for example, has a wireless interface 4 for data transmission. PZ 11. System for recording and evaluating a person's movements, comprehensive • a computing unit 3 and a memory 2, • a motion detection sensor 5 for detecting the movements of a person, • an observation point model generation module 23 in memory 2 for generating a Observation point model of observation points for the recorded person by means of pattern evaluation by the computing unit 3 and rules stored in memory 2 and assignment of coordinates to the observation points of the observation point model by the computing unit 3, • an observation point evaluation module 25 in memory 2 for evaluating a proportion of the generated observation points by means of the computing unit 3 by rules, wherein the rules are stored in at least one process node 40 and the at least one process node 40 is connected directly or indirectly to at least one other process node 40 via a data channel 41 for the exchange of data. PZ12. System according to PZ11, further comprehensive • a process node 40, which includes an output module 32 for outputting notes or feedback on the evaluated movement of the person via an output unit 10, as well as • a state machine 43 in memory 2, which triggers the output module 32 in a state by data from a process node 40, which is provided via at least one data channel 41. PZ 13. System according to PZ 11 - PZ 12, further comprising a feedback generation module 34 for generating feedback by means of an output module 32 via an output unit 10, and wherein the feedback generation module 34 and / or the output module 32 contain a state machine 43 within a process node 40, and wherein the state machine 43 triggers at least one feedback. PZ14. System according to PZ11-PZ13, further comprising a monitoring profile for the recorded and identified person stored in memory 2, which is associated with rules stored in memory 2 for evaluating the movements of the identified person by the observation point evaluation module 25 and / or coordinates of a map for recording the movements of the person and which can be transmitted via a wireless interface 4. PZ15. System according to PZ11-PZ14, wherein the data channel 41 enables asynchronous data communication and the at least one process node 40 enables asynchronous data processing. PZ16. System according to PZ11-PZ15, wherein the data provided to data channel 41 has a TCP / IP or UDP header or is provided via shared memory 42 or remote procedure calls. Example 7: Process node and state machine

[0095] The following implementation represents an efficient and simplified data processing method for capturing a person's movement data, for example, on a service robot or a mobile device. Here, users receive targeted feedback based on the captured movements, with similar effects to the implementations in the previously mentioned examples. The software architecture is preferably modular to allow for easy updates and expansions. PX1: Computer-implemented method for recording and evaluating the movements of a person using at least one state machine 43, comprising • Recording an input via an input unit 19, • Triggering the detection of a person by means of a motion detection sensor 5, which as process node 40 provides data to other process nodes 40 via a data channel 41, by means of a state machine 43 based on the detection of the input, • Evaluation of the motion data recorded by the motion detection sensor 5 and made available via a data channel 41 in at least one further process node 40, • Evaluation of the motion data provided by the motion detection sensor 5 via a process node 40 within at least one further process node 40, which receives this data via a data channel 41, • Depending on the evaluation result of at least one of the latter process nodes 40, trigger an output module 32 to output feedback on an evaluated movement, whereby the triggering is carried out via a state machine 43. PX2: Computer-implemented method according to PX1, wherein the state machine 32 is triggered by data provided via at least one data channel 41, which is generated by at least one process node 40. PX3: Computer-implemented method according to PX1-PX2, wherein the provision of the data via a data channel 41 is carried out using shared memory, remote process calls or using data packets with a TCP / IP or UDP header. PX4: Device for carrying out the procedure according to PX1-PX3. PX5: System for recording and evaluating the movements of a person with at least one state machine 43 for triggering multiple process nodes 40, with • an input unit 19 for capturing an input and triggering a state machine 43, • a motion detection sensor 5, which as process node 40 provides data to other process nodes 40 via a data channel 41 and which is triggered by a state machine 43, • at least one further process node 40, which includes a motion detection data processing module 22 and which evaluates data provided by the motion detection sensor 5 via a data channel 41, • and an output module 32, which produces an output based on data from the motion detection data processing module 22 when the state machine 43 is triggered. PX6: System according to PX5, wherein the provision of data via a data channel 41 is done using shared memory, remote process calls or via data packets with a TCP / IP or UDP header. Example 8: Resource-efficient operating time planning for a mobile robot with distance calculation.

[0096] The following implementation represents an energy-resource-efficient task planning approach for a mobile service robot, which, for example, performs movement exercises with a person and shuttles between two points, such as a starting and ending point and a turning point. In one scenario, the service robot moves in front of the person, who follows, and the service robot maintains a defined distance, thus adapting to the person's speed. The time for an exercise may be defined, while the distance to be covered depends on the person's speed (alternatively and / or additionally on the speed of the service robot). Simultaneously, the exercise is carried out efficiently by the service robot.If the exercise is defined for 10 minutes, the service robot 1 might be close to the turning point, meaning the person would be traveling with the service robot 1 for considerably longer than planned before returning to the starting point. This can lead to subsequent planning problems, for example, if the next person is already waiting to complete the route with the service robot 1. Over time, these delays in the movement exercises can accumulate, resulting in higher energy consumption than necessary. Therefore, the service robot 1 has capabilities to complete the movement exercises efficiently and align the route with the planned time. A path planning process is implemented for this purpose, which includes determining turning points. By setting these turning points, the service robot 1 adjusts the route to the duration from a monitoring profile.This places the new turning position closer to the starting position. BZ1: Computer-implemented method for path planning of a service robot 1, comprising • Retrieving a monitoring profile (e.g. for a person) from a storage location (e.g. 2), • Reading a time period from or by means of the monitoring profile(s) over which the service robot 1 travels a route between a starting position and a turning position with the person while monitoring the person, whereby after this time period the traveling of a path with the person and / or the monitoring of the person on the route between the starting position and the turning position is to be ended, • Movement over a distance on a path between the starting position and the turning position with the person, wherein the service robot (1) performs a turn at the turning position, • Defining a new turning position at which the service robot 1 changes direction (and moves, for example, to a stored position). BZ2. Computer-implemented procedure according to BZ1, wherein the new turning position is determined • a determination of the average speed of the service robot 1 or the person while covering the distance, • a determination of the remaining distance after which, at the determined average speed, the journey along the route should be completed within the read-out time period, as well as • A determination of the remaining distance is carried out. BZ3. Computer-implemented method according to BZ2, wherein the determination of a remaining distance is carried out as the difference between the open distance and integer multiples of the distance between a starting position and the turning position, and when a new turning position is determined, at which the service robot 1 assumes a change of direction and moves to a stored position, the distance between the starting position and the new turning position corresponds approximately to half the remaining distance. BZ4. Computer-implemented method according to BZ2-BZ3, wherein the average speed is determined after 50% or more of the time stored in the monitoring profile, measured since the start of the journey with the person. BZ5. Computer-implemented procedure according to BZ1, wherein before determining the new turning position • an assessment of the time already elapsed in completing the route and / or monitoring the person, • Determining the direction of movement of service robot 1, • a determination of the difference between the read time duration and the time duration already elapsed, and • An action is triggered when the time threshold is undershot. BZ6. Computer-implemented method according to BZ5, wherein triggering an action when the service robot 1 is on its way to its starting position triggers the termination of the completion of the route or the monitoring of the person when the service robot 1 has reached the starting position again. BZ7. Computer-implemented method according to BZ5, wherein triggering an action when the service robot 1 is on its way to the turning position triggers the setting of a new turning position that is closer to the starting position than the original turning position. BZ8. Computer-implemented method according to BZ5, wherein the service robot 1 performs the turn at the turning position if the determined time difference from the read-out time duration and the time already elapsed is above the threshold value. BZ9. Computer-implemented method according to BZ1-BZ8, wherein the person is detected by at least one sensor (5, 7-9) for monitoring purposes while the route is being traveled. BZ 10. Computer-implemented procedure according to BZ1, further comprehensive after recording the person who • Determining the distance of the service robot 1 to the person moving in front of or following the service robot 1 while the service robot 1 travels the route, • Maintaining a distance interval or approximately constant distance between the service robot 1 and the person. BZ 11. Computer-implemented method according to BZ 10, wherein the distance interval or the approximately constant distance of the service robot 1 to the person is between 60 cm and 5.5 m. BZ 12. Computer-implemented method according to BZ1-BZ11, wherein the completion of a route between at least two waypoints is carried out, the coordinates of which are determined by means of a map in the map module 31 are defined and between which the service robot 1 determines at least one route using path planning module 30. BZ 13. Computer-implemented method according to BZ 1 - BZ 12, wherein the service robot 1 oscillates between two waypoints within the time stored in the monitoring profile and, in one instance, only partially covers the distance between the two waypoints. BZ14. Computer-implemented method according to BZ1-BZ13, wherein, before or during the completion of the route, position data is retrieved as coordinates of a map associated with components of the monitoring profile, and based on the retrieved coordinates, outputs are triggered via the output unit 10 of the service robot based on a comparison of position data stored in the monitoring profile and current position data of the service robot 1. BZ15. Computer-implemented method according to BZ1-BZ14, wherein, during the completion of the route, the person is detected by means of a motion detection sensor 5, an observation point model of observation points for the detected person is generated by means of pattern evaluation and rules stored in memory 2, and the detected movements are evaluated based on observation points of the observation point model and by means of rules stored in memory 2. BZ 16. Computer-implemented procedure according to BZ 15, wherein the rules for evaluating the recorded movements based on observation points of the observation point model include the determination and evaluation of poses by a pose determination module 26. BZ 17. Computer-implemented procedure according to BZ 16, wherein a repetitive movement is evaluated by determining an initial pose, a final pose and an evaluation point between these two poses. BZ18. Computer-implemented procedure according to BZ15-BZ17, wherein the evaluation of the recorded movements with regard to defined movement deviations is based on observation points of the observation point model and / or derived evaluation points and rules stored in memory 2 for these in a first time interval 51 and the output of feedback to the person by means of an output unit 10 in a second time interval 52 following the first time interval 51 regarding the determined movement deviation. BZ19. Computer-implemented procedure according to BZ18, further comprising recording the person by means of a motion detection sensor 5, generating an observation point model of observation points for the recorded person by means of pattern evaluation and rules stored in memory 2, as well as evaluating the recorded movements based on observation points of the observation point model and by means of rules stored in memory 2 in a further time interval (e.g. 54), in which the movement deviation identified in the first time interval 51 and associated with feedback in the second time interval is evaluated again, and output of feedback in a further time interval (e.g. 55) following the said time interval (e.g. 54) on the movement deviation evaluated in the said time interval (e.g. 54). BZ20. Computer-implemented method according to BZ18-BZ19, whereby the feedback output is based on a prioritization of detected movement deviations. BZ21. Computer-implemented method according to BZ15-BZ20, wherein the evaluation of the observation points takes place in an observation point evaluation module 25, which wholly or partially represents a process node 40, which is directly or indirectly connected to another process node 40 via a data channel 41 and triggers at least one state machine 43 by data transmitted via the data channel 41. BZ22. Computer-implemented procedure according to BZ1-BZ21, wherein, prior to completing the route, the person is identified at the service robot 1 based on recognized patterns within the recorded sensor data, and the identified person is associated with a stored monitoring profile and / or the person is re-identified during the recording by the person detection sensor 5 using stored patterns. BZ23. Computer-implemented method according to BZZ1-BZ22, wherein vital data of the person are recorded after identification of the person and / or during completion of the route. BZ24. Device for carrying out the method according to BZ1-BZ23. BZ25. Service robot 1 with a computing unit 3, a sensor (5, 7-9) for monitoring purposes and a memory 2 containing a • Monitoring profile with a time period during which service robot 1 is to travel a route with the person and / or monitor the person, after which the travel along a path with the person is to end, • Path planning module 30, configured to determine the distance to be traveled by the service robot 1 between a start position and a turning position, and to determine a dynamic turning position that sets a new turning position closer to the start position than the previously used turning position. BZ26. Service robot 1 to BZ25, wherein the dynamic turning position determination based on the average speed of the service robot 1 and a remaining time sets a new turning position that is closer to the starting position than the previously used turning position. BZ27. Service robot 1 according to BZ25-BZ26, wherein the dynamic turning position determination based on the direction of movement of the service robot 1 sets a new turning position that is closer to the starting position than the previously used turning position. BZ28. Service robot 1 according to BZ25-BZ27, wherein service robot 1 according to BZ25-BZ26, wherein the dynamic turning position determination based on the time already elapsed and the duration from the monitoring profile sets a new turning position that is closer to the starting position than the previously used turning position. BZ29. Service robot 1 according to BZ25-BZ28, further comprising a map module 31, which contains coordinates for • provides the position data of the starting position and the turning position, as well as for • the monitoring profile for triggering outputs via the output unit 10 of the service robot 1 based on a comparison of position data held in the monitoring profile and current position data of the service robot 1. BZ30. Service robot 1 according to BZ25-BZ29, further comprising a distance control module 37 to maintain a minimum distance between service robot 1 and the person being detected. BZ31. Service robot 1 according to BZ25-BZ30, wherein one of the sensors is a motion detection sensor 5 for detecting the movements of a person. BZ32. Service robot 1 according to BZ25-BZ31, further comprising an observation point model generation model 23 for generating observation points of the recorded person, an observation point evaluation module 25 for evaluating the movements of the recorded person, and a pose determination module 27 for determining poses of the person. BZ33. Service robot 1 according to BZ32, further comprising a feedback generation module 34 for triggering feedback based on prioritized movement deviations by means of an output module 32 and an output unit 10. BZ34. Service robot 1 according to claim BZ25-BZ33, further comprising a • Person identification module 20 for identifying the person at the service robot 1 based on stored patterns within recorded sensor data as well as • a person re-identification module 21 for re-identifying the person during detection by the person detection sensor 5 using stored patterns. BZ35. Service robot 1 according to BZ25-BZ34, with a state machine 43 that triggers outputs from an output unit 10 via a loudspeaker 11 and / or a display 12 when the service robot 1 has reached a turning position. BZ36. Service robot 1 according to BZ25-BZ35, wherein the motion detection sensor 5 is configured to provide data via a data channel 41 to other process nodes 40 by means of a process node 40 or to trigger a state machine 43 with this data. BZ37. Service robot 1 according to BZ36, wherein the provision of the data via a data channel 41 is carried out using shared memory, remote process calls or using data packets with a TCP / IP or UDP header. Example 9: Robot with adapted safety motion control

[0097] The following implementation includes a mobile robot, e.g., a mobile service robot 1, which can be easily moved manually out of the way in situations where it might be obstructing the path in its area of ​​operation. This service robot 1 could be a robot for accompanying or observing people, for performing at least one transport function, for capturing objects, etc. One reason why simply "moving it out of the way" might not work is that a motor control system, for example, attempts to prevent the robot from moving to ensure that it doesn't simply roll away on sloping surfaces. SRF 1. Safety motion controller 60, which is configured to directly or indirectly control at least one motor 61 of a mobile robot (e.g. 1), with a first, second, third and fourth state, wherein • the first state regulates the power supply of the at least one motor 61 in such a way that the force caused by the current flow in the motor 61 and acting on the position of the mobile robot (e.g. 1) in the horizontal plane is greater than the sum of the inertial forces of the mobile robot (e.g. 1) acting in the horizontal plane, and • in the second state, the set current flow in at least one motor 61 is regulated in such a way that a negative acceleration of the mobile robot (e.g. 1) occurs down to a speed of zero, • in the third state and a fourth state. SRF2. Safety motion control 60 according to SRF1, wherein in the third state the set current flow in the at least one motor 61 is regulated such that the force generated by the at least one motor 61 and acting on the position of the mobile robot (e.g. 1) in the horizontal plane corresponds at least to the sum of the rolling resistance and rotor inertia of the at least one motor 61, so that the mobile robot (e.g. 1) essentially remains in its position in the horizontal plane. SRF3. Safety motion control 60 according to SRF1, wherein the third or fourth state is activated by triggering a switch (e.g. 65). SRF4. Safety motion control 60 according to SRF1, wherein the third or fourth state is activated when an inertial sensor determines that the mobile robot (e.g. 1) is on a horizontal plane. SRF5. Safety motion control 60 according to SRF1, wherein in the fourth state the current flow in the at least one motor 61 is regulated such that the force caused by the current flow in the at least one motor 61 and acting on the position of the mobile robot (e.g. 1) in the horizontal plane corresponds approximately to the sum of the counterforces acting in the horizontal plane caused by the inertia of the mobile robot (e.g. 1). SRF6. Safety motion control 60 according to SRF1, wherein in the fourth state the current flow in at least one motor 61 is regulated such that the force caused by the current flow in at least one motor 61 substantially compensates for the rotor inertia of the at least one motor 61. SRF7. Safety motion control 60 according to SRF1-SRF6, wherein the second state is triggered by the detection of an obstacle, by association with a defined position and / or by user interaction during the first state. SRF8. Safety motion control 60 according to SRF1, wherein in the third state the set current flow in the at least one motor 61 is regulated such that the force generated by the motor 61 and acting on the position of the mobile robot (e.g. 1) in the horizontal plane corresponds approximately to the sum of rolling resistance, rotor inertia and at least one other force, so that the mobile robot (e.g. 1) essentially remains in its position in the horizontal plane. SRF9. Safety motion control 60 according to SRF8, wherein the further force is determined by means of an inertial sensor 62. SRF10. Safety motion control 60 according to SRF8-SRF9, wherein the additional force acts on the mobile robot (e.g. 1) from the outside or results essentially from gravity because the mobile robot (e.g. 1) is on an inclined plane. SRF11. Safety motion control 60 according to SRF1, wherein in the third state the motor 61 is controlled in such a way that any back-EMF occurring is compensated by regulating the current to approximately zero amperes. SRF12. Safety motion control 60 according to SRF1, wherein in the fourth state the motor 61 is controlled in such a way that any back-EMF occurring is not compensated by current control. SRF13. Safety motion control 60 according to SRF1-SRF14, wherein the third state is reached when a speed of zero is reached. SRF14. Safety motion control 60 according to SRF1-SRF13, wherein a speed or acceleration is determined by means of a rotation angle sensor 64 which is proportional to the rotational speed or acceleration of at least one drive wheel 63 of the mobile robot (e.g. 1). SRF15. Safety motion control 60 according to SRF1-SRF14, wherein the forces acting on the mobile robot (e.g. 1) are determined by means of rotations measured by the rotation angle sensor 64. SRF16. Safety motion control 60 according to SRF1-SRF12, wherein the forces or accelerations acting on the mobile robot (e.g. 1) are determined by means of an inertial sensor 62. SRF17. Safety motion control 60 according to SRF1-SRF13, with a control memory 66 that stores values ​​for at least one maximum speed, wherein the speed of the mobile robot (e.g. 1) is determined by means of a rotary angle sensor 64 and / or an environmental sensing sensor 6, and if the maximum speed is exceeded by the mobile robot (e.g. 1), the current flow in the at least one motor 61 is limited. SRF18. Safety motion control 60 according to SRF14, wherein the minimum maximum speed depends on the size of a protective field that defines a monitoring area of ​​the environmental detection sensor 6. SRF19. Safety motion control 60 according to SRF1-SRF15, with a memory (e.g. 66) or access to a memory that stores values ​​for at least one maximum speed that the mobile robot (e.g. 1) may exhibit when an obstacle is in a protective field of the environment detection sensor 6 and to which the safety motion control 60 brakes the mobile robot (e.g. 1) accordingly by regulating the current flow in the motor 61. SRF20. Mobile robot (e.g. 1) with a safety motion control according to SRF1-SRF16. SRF21. Mobile robot (e.g. 1) according to SRF17, further comprising a motion detection sensor 5, a vital data detection sensor 7 and / or a radar sensor 9. SRF22. Mobile robot (e.g. 1) according to SRF17-SRF18, further comprising a person identification module 20, a motion capture data processing module 22 and / or an observation point model- Generation module 23, an observation point evaluation module 25 and / or a feedback generation module 34. SF23. Mobile robot (e.g. 1) according to SRF17-SRF19, wherein the sensor data of the motion detection sensor 5, the vital data detection sensor 7 and / or the radar sensor 9 are provided via a process node 40. SRF24. Mobile robot (e.g. 1) according to SRF17-SRF20, with a feedback generation module 34, which is triggered by means of a state machine 43. SRF25. Method for controlling a mobile robot (e.g. 1) by means of a safety motion controller 60, comprising • Completing a course in an environment with stationary and mobile obstacles, • Braking the mobile robot (e.g. 1) down to a speed of zero and thus bringing it to a standstill, • Triggering the safety motion control 60 after the mobile robot (e.g. 1) has slowed down to a speed of zero. SRF26. Method according to SRF 22, wherein the triggering of the safety motion control is carried out by activating a switch (e.g. 65) or evaluating the measurement data of an inertial sensor (62) such that the evaluation of the measurement data of the inertial sensor shows that the mobile robot (e.g. 1) is essentially on a horizontal plane. SRF27. Method according to SRF22-SRF23, wherein the triggering of the safety motion control 60 directly or indirectly regulates the current flow in the at least one motor 61 such that the force caused by the current flow in the at least one motor 61 and acting on the position of the mobile robot (e.g. 1) in the horizontal plane corresponds approximately to the sum of the counterforces acting in the horizontal plane caused by the inertia of the mobile robot (e.g. 1). SRF28. Method according to SRF22-24, wherein the triggering of the safety motion control 60 directly or indirectly regulates the current flow in the at least one motor 61 such that the force produced by the current flow in the at least one motor 61 substantially compensates for the rotor inertia. SRF29. Method according to SRF24-SRF25, wherein the force is measured by force using an inertial sensor 62 or rotary angle sensor 64. SRF30. Method according to SRF22, wherein the braking is caused by detection of at least one mobile obstacle in the detection range of the environment detection sensor 6, by reaching a target position and / or user interaction with a person. SRF31. Method according to SRF27, wherein the detection of the at least one mobile obstacle in the detection range of the environment detection sensor 6 is located in the protective field of the environment detection sensor 6. SRF32. Method according to SRF22-SRF27, wherein the completion of a path by the mobile robot (e.g. 1) in a first state of the safety motion controller 60, the braking in a second state, the assumption of a standstill position in the third state, and further the assumption of a fourth state after triggering a switch (e.g. 65) or evaluation of an inertial sensor 62, wherein the inertial sensor 62 is used to determine that the mobile robot (1) is located on a horizontal plane. SRF33. Safety motion control for carrying out the procedure according to SRF22-SRF29. SRF34. Mobile robot with a safety motion control system according to SRF30. Example 10: System decoupling for technical risk management

[0098] The following implementation reduces the technical risks for a person interacting with a mobile service robot, while also keeping development effort, the number of hardware components, and the complexity of data processing security on the mobile service robot 1 within reasonable limits, for example, with regard to the scope of software validation during development. This is achieved by decoupling the safety-critical systems from the application layer where user interaction primarily takes place, resulting in significantly lower application security requirements, such as eliminating redundant components for failover purposes, less complex sensor data analysis, less complex system testing, etc. 511. Mobile service robot 1 with a computing unit 3 and a memory 2 as well as a safety motion control 60, wherein • the safety motion control 60 reduces the speed of the service robot 1 or influences the direction of movement of the mobile service robot 1 based on sensor data if at least one environmental sensing sensor 6 providing the sensor data detects an obstacle, and • the computing unit 3 accesses the safety motion control 60 or a motor controller 68 via at least one interface (67, 70), • where the access of the computing unit 3 to the safety motion control 60 or the motor controller 68 cannot override the influences of the safety motion control 60 based on the obstacle detection on the speed or direction of movement of the mobile service robot 1. 512. Mobile service robot 1 according to SH, wherein the speed reduction or change of direction of movement of the mobile service robot 1 is effected by means of control of the current flow in at least one motor 61 of the service robot 1. 513. Mobile service robot 1 according to SI2, wherein the speed reduction or change of direction of movement of the mobile service robot 1 is carried out by a motor controller 68. 514. Mobile service robot 1 according to SH, wherein the sensor data is provided by an environment sensing sensor 6, which is a 2D or 3D camera 8, a radar sensor 9, a laser scanner 14 and / or a protective contact strip 69. 515. Mobile service robot 1 according to SH, wherein the obstacle is located in a protective field of an environment detection sensor 6. 516. Mobile service robot 1 according to Sil, wherein the safety motion control evaluates 60 sensor data in a two-channel manner. 517. Mobile service robot 1 according to SI6, wherein one channel transmits the data analogously, another digitally- 518. Mobile service robot 1 according to SI6, wherein the sensor data originates from at least one environmental sensing sensor 6 or at least one rotation angle sensor 64. 519. Mobile service robot 1 according to Sil, with a safety motion controller 60, which has at least one interface (e.g. 67) for two-channel transmission of data from at least one sensor (e.g. 6, 64). 5110. Mobile service robot 1 according to Sil, with a safety motion controller 60, which is configured for continuous monitoring such that, if there is no two-channel transmission between the sensors (e.g. 6, 8, 9, 14, 64, 69) and the safety motion controller, it slows the mobile service robot 1 down to a speed of zero. 5111. Mobile service robot 1 according to SI10, wherein the safety motion control 60 is further configured, to allow a renewed movement of the mobile service robot 1, initiated by the computing unit 3 by means of safety motion control 60 or motor controller 68, only after a reset of the braking command and then a setting of a start command has taken place. 5112. Mobile service robot 1 according to Sil, wherein the computing unit 3 is accessed by an application which is a navigation module 38 or a path planning module 30. Example 11: Pain-dependent operation of a person detection device

[0099] The subsequent implementation in the user interaction is designed to ensure that a person's training with the mobile service robot 1 (or an alternative person detection device 100) is as painless as possible. A person interacting painlessly with the mobile service robot 1 will achieve a greater training effect in a shorter time, which in turn reduces the operating hours of the mobile service robot 1 and thus saves energy. This is achieved by querying the person's pain status and adjusting the operation of the person detection device accordingly. PLI. Computer-implemented method for operating a person detection device 100, comprising • Identification of a person based on recognized patterns within captured sensor data, • Assessment of the person's pain level. PL2. Computer-implemented procedure according to PLI, whereby the pain level is recorded via a display input or via a voice input. PL3. Computer-implemented procedure according to PL 1-2, further comprising an evaluation of the pain level and triggering of an event based on the evaluation. PL4. Computer-implemented method according to PL3, wherein the event comprises an output via an output unit 10. PL5. Computer-implemented method according to PL3-4, wherein the event is a control of a motor controller 68 of the person detection device 100 depending on the evaluation. PL6. Computer-implemented method according to PL3-5, wherein the event includes the transmission of information via a wireless interface 4. PL7. Computer-implemented procedure according to PL3-6, wherein the event includes an adjustment of a monitoring profile with respect to duration and / or distance to be covered during an exercise. PL8. Computer-implemented procedure according to PL7, wherein the monitoring profd is associated with rules stored in memory 2 for evaluating the movements of the identified person. PL9: Computer-implemented procedure according to PL8, wherein the rules associated with the identified person are associated with positions in a coordinate system of a map. PL10. Computer-implemented method according to PL1-PL9, further comprehensive • Detection of the person using a motion detection sensor 5, • Generation of an observation point model for the recorded person using pattern evaluation and rules stored in memory 2, • Evaluation of the recorded movements based on observation points of the observation point model and using rules stored in memory 2. PL11. Computer-implemented procedure according to PL 10, wherein the evaluation of the recorded movements with regard to defined movement deviations is based on observation points of the observation point model and / or derived evaluation points and rules stored in memory 2 for these in a first time interval 51 and output of feedback to the person by means of an output unit 10 in a second time interval 52 following the first time interval 51 regarding the determined movement deviation. PL12. Computer-implemented method according to PL10-PL11, wherein a repetitive movement of the person is recorded over time using the motion detection sensor 5, starting with an initial pose, intermediate poses, and a final pose, each defined by at least one subset of observation points, and wherein the final pose serves as the starting pose for the next repetitive movement. PL13. Computer-implemented method according to PL10-PL12, wherein motion detection takes place during the completion of a path travelled by the detected person using the person detection device 100. PL 14: Device for carrying out the procedure according to PL1-PL13. PL15. Person recording device 100 with one computing unit 3 and one memory 2, • a personal identification module 20 in memory 2 for identifying a person, • a pain assessment module 39 in memory 2 for assessing the pain recorded by the identified person via an input unit 19, wherein, based on the pain assessment, an output is made via an output unit 10, a motor controller 68 of the person detection device 100 is controlled, and an adjustment of a monitoring profile stored in memory 2 is made. and / or information is transmitted via a wireless interface 4. PL16. Person recording device 100 according to PL14, further comprising • a motion detection sensor 5 for detecting the movements of a person, • an observation point model generation module 23 in memory 2 for generating an observation point model of observation points for the recorded person, and an observation point evaluation module 25 for evaluating the observation points of the recorded person, • a map module 31 to provide coordinates of a map associated with the monitoring profile, • Rules in memory 2 for evaluating the recorded movements of the person in a first time interval 5 and the output of feedback via a feedback generation module 34 through an output unit 10 in a second time interval 52. Example 12:

[0100] A method for controlling or operating a mobile robot (e.g. 1) after detecting a fall event of a person who is, for example, performing an exercise with the mobile robot (e.g. 1), is implemented as follows in order to, for example, reduce the risk of false alarms and to ensure that, in the event of a serious injury to the fallen person, the mobile robot 1 does not obstruct helpers: SEI. Computer-implemented method for controlling a mobile robot (e.g. 1) after detecting a fall event of a person, comprising the following steps: • Tracking of a person over time using a motion detection sensor 5, • Evaluation of the movements of the detected person over time with regard to a fall event by comparing the detected movements with patterns stored in memory 2 of the robot (e.g. 1), • Triggering of a signal depending on the evaluation result. SE2. Computer-implemented procedure according to SEI, further comprising a termination of the movement of the mobile robot (e.g. 1) in the event that it moves along a path during the detection of the person. SE3. Computer-implemented procedure according to SE1-SE2, further encompassing the expectation of an input within a defined period. SE4. Computer-implemented procedure according to SE3, further comprising the steering to a target position if no input is provided. SE5. Computer-implemented method according to SEI, wherein person and robot (e.g. 1) move along a path during the detection of the person. SE6. Computer-implemented method according to SEI, wherein the movements of the person are evaluated using an observation point generated from the data of the motion detection sensor 5. The observation point model is implemented. SE7. Computer-implemented procedure according to SEI, wherein the evaluation of the movements includes a threshold comparison and the triggering of the signaling occurs when the threshold is undershot, and the threshold is the height of the person's head above the ground. SE8. Computer-implemented method according to SE7, where the threshold is between approximately 40 and 90 cm. SE9. Computer-implemented method according to SEI, wherein the signaling includes an acoustic signal and / or an optical signal. SE10. Computer-implemented method according to SE9, wherein the acoustic signal is a speech output. SEH. Computer-implemented method according to SE9, wherein the optical signal represents a signaling on a display 12 of the mobile robot (e.g. 1). SE12. Computer-implemented method according to SE9, wherein the optical signal represents a signaling of a light element 18 that covers at least 50% of the circumference of the robot (e.g. 1) in the horizontal plane. SE13. Computer-implemented method according to SE3, wherein the expected input is via the display 12. SE14. Computer-implemented method according to SE5, wherein the target position is in the direction of movement of the robot (e.g. 1) in which it moves during the detection of the person. SE15. Mobile robot (e.g. 1) , configured to perform the procedure according to SE1-SE14. SE16. Mobile robot (e.g. 1) configured to record a fall event of a recorded person over time, to signal the fall event via at least one output unit 10 and to control a target position after recording the fall event depending on an input. Reference sign Service robot 1 Memory 2 Computing unit 3 Wireless interface 4 Motion detection sensor 5 Environmental sensing sensor 6 Vital signs sensor 7 2D or 3D camera 8 Radar sensor 9 Output unit 10 Speaker 11 Display 12 Odometry unit 13 Laser scanner 14 Temperature sensor 15 RFID Transponder 16 RFID reader 17 Lighting element 18 Input unit 19 Personal Identification Module 20 Person Re-Identification Module 21 Motion Capture Data Processing Module 22 Observation Point Model Generation Module 23 Observation Point Monitoring Module 24 Observation Points Evaluation Module 25 Assessment Point Calculation Module 26 Posen Investigation Module 27 Coordinate system transformation module 28 Path planning module 30 Map module 31 Output module 32 Text-to-Speech System 33 Feedback generation module 34 Anonymization module 35 Statistics module 36 Distance control module 37 Navigation module 38 Pain Assessment Module 39 Process node 40 Process node (dedicated with state machine) 40z Process node (dedicated, providing sensor data) 40s Data channel 41 Shared memory 42 State machine 43 State machine (dedicated within process node) 43p first time interval 51 second time interval 52 third time interval 53 fourth time interval 54 fifth time interval 55 final time interval 56 Safety motion control 60 Engine 61 Inertial sensor 62 Drive wheel 63 Rotation angle sensor 64 Emergency stop 65 Control memory 66 Safety motion control interface 67 Motor controller 68 Safety switch strip 69 Motor controller interface 70 Microphone 71 Person registration device 100

Claims

Claims 1. Computer-implemented method for recording and evaluating a person's movements over time and generating feedback to the person, comprehensive • Detection of a person's movements using a motion detection sensor (5), • Generation of an observation point model of observation points for the recorded person, which describe a pose or movement of the person, • Evaluation of the recorded pose or movements with regard to defined deviations based on observation points of the observation point model and / or derived evaluation points in a first time interval (51) using rules stored in memory (2), which further comprises the following procedural steps: o Determination of steps from the evaluation of the movement sequence during the first time interval (51), o Summing of the steps and comparison of the steps with a threshold value, o Ending of the first time interval (51) when the summed steps have reached the threshold value, o Determination of movement and / or pose deviations in the first time interval (51), • Output of feedback to the person in a second time interval (52) based on the identified movement and / or pose deviations.

2. Computer-implemented method according to claim 1, wherein, after determining movement and / or pose deviations in the first time interval (51), a prioritization of the movement and / or pose deviations is carried out and feedback is given to the person on the highest prioritized movement and / or pose deviation in the second time interval (52).

3. Computer-implemented method according to claim 1, further comprising • Detection of a person's movements using a motion detection sensor (5), • Generation of an observation point model of observation points for the recorded person, • Evaluation of the recorded items and / or movements with regard to defined deviations based on observation points of the observation point model and / or derived evaluation points in a third time interval (53) using rules stored in memory (2), which also includes the following procedural steps: o Determination of steps from the evaluation of the movement sequence during the third time interval (53), o Summing of the steps and comparison of the summed steps with a threshold, o Ending of the third time interval (53) when the summed steps have reached the threshold.

4. Computer-implemented method according to claim 1-3, further comprising • Issuance of feedback to the person relating to a movement and / or pose deviation detected in the third time interval (53) in a fourth time interval (54), wherein the movement and / or pose deviation is the highest priority deviation in the first time interval (51), • Output of feedback in a fourth time interval (54) based on the identified movement and / or pose deviations in the third time interval (53).

5. Computer-implemented method according to claims 1-4, which is executed more than once within a time window defined in a monitoring profile.

6. Computer-implemented method according to claims 1-5, comprising a final time interval (55) which, after completion of the recording of the person's movements, includes the output of movement deviations recorded in previous time intervals and / or feedback issued in previous time intervals via an output unit (10).

7. Computer-implemented method according to claim 6, wherein the motion deviations recorded in previous time intervals and / or the feedback output in previous time intervals are aggregated motion deviations and / or aggregated feedback.

8. Computer-implemented method according to claims 1-7, wherein the motion deviations to be detected, the movements and / or poses to be detected and / or the duration of the detection of the motion deviations are stored in or associated with a monitoring profile, wherein the monitoring profile is made available via a wireless interface (4).

9. Computer-implemented method according to claim 8, wherein the third time interval (53) is shorter than the first time interval (51).

10. Computer-implemented method according to claims 1-9, wherein coordinates for performing at least one of the steps from claims 1-4 are associated with a monitoring profile. and automated triggering of the person's movement detection occurs when a comparison of the coordinates directly or indirectly stored in the monitoring profile with coordinates determined by sensors on a map reveals that these coordinates have been reached.

11. Computer-implemented method according to claims 1-10, wherein the monitoring profile is associated with at least two positions on a map and path planning takes place between the two positions.

12. Computer-implemented method according to claims 1-11, wherein the provision of data from the motion detection sensor (5) is carried out at least partially via a process node (40) and a data channel (41) using shared memory, remote process calls or with a TCP / IP or UDP header.

13. Device for carrying out the computer-implemented method according to claims 1-12.

Citation Information

Patent Citations

  • Signal analysis for repetition detection and analysis

    WO2014151700A1

  • Robot as personal trainer

    WO2019070388A2

  • Monitoring the performance of physical exercises

    WO2019228977A1

  • Method and system for capturing the sequence of movement of a person

    WO2020144175A1

  • System for capturing sequences of movements and / or vital parameters of a person

    WO2021038109A1