CN117940254A - Method for generating a motion control model for a wearable device and electronic device for performing the method - Google Patents

Method for generating a motion control model for a wearable device and electronic device for performing the method Download PDF

Info

Publication number
CN117940254A
CN117940254A CN202280061950.8A CN202280061950A CN117940254A CN 117940254 A CN117940254 A CN 117940254A CN 202280061950 A CN202280061950 A CN 202280061950A CN 117940254 A CN117940254 A CN 117940254A
Authority
CN
China
Prior art keywords
information
user
electronic device
torque
wearable device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280061950.8A
Other languages
Chinese (zh)
Inventor
黄重植
林福万
金成喆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020220104187A external-priority patent/KR20230085061A/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Priority claimed from PCT/KR2022/019609 external-priority patent/WO2023106763A1/en
Publication of CN117940254A publication Critical patent/CN117940254A/en
Pending legal-status Critical Current

Links

Landscapes

  • Telephone Function (AREA)

Abstract

The electronic device according to the embodiment may: providing at least one of target motion information on target motion of the wearable device according to the target time and default torque information mapped to the information on target motion and output by the wearable device to a user; receiving input from the user to modify at least a portion of the default torque information; modified torque information is generated based on the default torque information and the input, and a motion control model for controlling the wearable device is generated based on the information about the target motion and the modified torque information.

Description

Method for generating a motion control model for a wearable device and electronic device for performing the method
Technical Field
Certain example embodiments relate to a technique for generating a motion control model that controls a wearable device.
Background
Changes to the aging society have led to more and more people experiencing inconvenience and pain due to decreased muscle strength or joint problems caused by aging. Accordingly, there is increasing interest in a walking aid that enables an elderly user or patient with reduced muscle strength or joint problems to walk more easily.
Disclosure of Invention
Technical object
According to an example embodiment, an electronic device may include: a communication module including a communication circuit configured to exchange data with an external device; and at least one processor configured to control the electronic device, wherein the at least one processor may be configured to provide at least one of target motion information of the wearable device according to a target period or basic torque information mapped to the target motion information and output by the wearable device to a user of the electronic device, receive input from the user to modify at least a portion of the basic torque information, generate modified torque information based on the basic torque information and the input, and generate a motion control model for controlling the wearable device based on the target motion information and the modified torque information, wherein operation of the wearable device may be controlled based on the motion control model.
According to an example embodiment, a method of generating a motion control model for controlling a wearable device may be provided, the method performed by an electronic device, and may include: providing at least one of target motion information of the wearable device according to a target period or basic torque information mapped to the target motion information and output by the wearable device to a user of the electronic device, receiving an input from the user for modifying at least a portion of the basic torque information, generating modified torque information based on the basic torque information and the input, and generating a motion control model for controlling the wearable device based on the target motion information and the modified torque information, wherein operation of the wearable device may be controlled based on the motion control model.
According to an example embodiment, an electronic device may include: a communication module including a communication circuit configured to exchange data with an external device; and at least one processor configured to control the electronic device, wherein the at least one processor may be configured to receive target motion information of the wearable device during a target period from the wearable device in a state in which the wearable device is worn by a user, receive first torque information from the user regarding a first time within the target period, generate base torque information based on the first torque information, and generate a motion control model for controlling the wearable device based on the target motion information and the base torque information, wherein operation of the wearable device may be controlled based on the motion control model.
Drawings
Fig. 1 is a diagram showing a configuration of a system for providing an exercise program to a user according to an example embodiment.
Fig. 2 is a block diagram of an electronic device in a network environment according to an example embodiment.
Fig. 3a, 3b, 3c and 3d are diagrams illustrating a wearable device according to an example embodiment.
Fig. 4 is a diagram illustrating a wearable device in communication with an electronic device according to an example embodiment.
Fig. 5 and 6 are diagrams illustrating a torque output method of a wearable device according to an example embodiment.
Fig. 7 is a flowchart illustrating a method of generating a motion control model for a wearable device according to an example embodiment.
Fig. 8 illustrates target motion information of a wearable device and basic torque information mapped to the target motion information according to an example embodiment.
Fig. 9 is a flowchart illustrating a method of generating modified torque information based on input received from a user, according to an example embodiment.
FIG. 10 illustrates modified torque information generated based on base torque information and user input according to an example embodiment.
Fig. 11 is a flowchart illustrating a method of loading target motion information and base torque information according to an example embodiment.
Fig. 12 is a flowchart illustrating a method of receiving target motion information using a wearable device according to an example embodiment.
Fig. 13 illustrates a User Interface (UI) screen for receiving torque information about target motion information from a user according to an example embodiment.
Fig. 14 is a flowchart illustrating a method of generating basic torque information based on first torque information and second torque information according to an example embodiment.
Fig. 15 illustrates a UI screen for generating modified torque information based on loaded basic torque information according to an example embodiment.
Fig. 16 is a diagram showing a configuration of a server according to an example embodiment.
Detailed Description
Hereinafter, various example embodiments of the present disclosure will be described with reference to the accompanying drawings. However, this is not intended to limit the disclosure to the particular embodiments, and it should be understood that various modifications, equivalents, and/or alternatives to the embodiments of the disclosure are included.
Fig. 1 is a diagram showing a configuration of a system for providing an exercise program to a user according to an example embodiment.
According to an example embodiment, a system for providing an exercise program to a user may include an electronic device 110, a wearable device 120, an add-on device 130, and a server 140.
According to an example embodiment, the electronic device 110 may be a user terminal that may be directly or indirectly connected to the wearable device 120 using short-range wireless communication. For example, the electronic device 110 may send a control signal to the wearable device 120 for controlling the wearable device 120. The electronic device 110 will be described in detail below with reference to fig. 2, and transmission of control signals will be described in detail below with reference to fig. 4.
According to an example embodiment, the wearable device 120 may provide an assisting force for assisting gait or exercise or a resistance for obstructing gait to a user wearing the wearable device 120. Resistance may be provided to the user to assist the user in performing the exercise. The values of the various control parameters used in the wearable device 120 may be controlled to control the assist force or resistance output by the wearable device 120. The structure and driving method of the wearable device 120 will be described in detail with reference to fig. 3a, 3b, 3c, 3d, 4, 5, and 6.
According to an example embodiment, the electronic device 110 may be connected to the additional device 130 (e.g., the wireless headset 131, the smart watch 132, or the smart glasses 133) using short-range wireless communication. For example, the electronic device 110 may output information indicating the state of the electronic device 110 or the state of the wearable device 120 to the user through the additional device 130. For example, feedback information about the walking state of the user wearing the wearable device 120 may be output through the haptic device, the speaker device, and the display device of the additional device 130.
According to an example embodiment, the electronic device 110 may connect to the server 140 using short range wireless communication or cellular communication. For example, server 140 may include a database in which information regarding a plurality of exercise programs to be provided to a user via wearable device 120 is stored. The exercise program may be based on a motion control model for controlling wearable device 120 to provide a torque to the user that is appropriate for the user's target motion. For example, the server 140 may manage a user account of the user of the electronic device 110 or the wearable device 120. Server 140 may store and manage exercise programs performed by the user in association with user accounts and results of the execution of the exercise programs. An example of the configuration of the server 140 will be described in detail below with reference to fig. 16.
According to an example embodiment, the system may provide the user with an exercise program for the user's desired movement. For example, the user desired motion may be a standardized in-place exercise, such as squat, jerk, or kick. For example, the user desired motion may be exercise performed autonomously by the user.
According to an example embodiment, when a user wearing the wearable device 120 performs a motion, the exercise program may provide a force (or torque) preset to correspond to the motion to the user through the wearable device 120. For example, the force provided to the user may be an assist force. For example, the force provided to the user may be a resistance force. The timing and magnitude of the output of the force provided to the user by wearable device 120 may be controlled by the user modifying an existing exercise program or creating a new exercise program.
According to an example embodiment, a user may generate a motion control model for an exercise program to control wearable device 120 via electronic device 110. For example, the user may generate a motion control model by determining values of control parameters related to torque output during target motion of the wearable device 120. For example, the control parameters may include parameters for adjusting at least one of a magnitude of torque to be output by the wearable device 120, a direction of the torque, a timing of the torque, a deviation angle between joint angles of the wearable device 120, or a sensitivity of a state factor to the joint angles.
According to an example embodiment, in consideration of the difficulty that a user designates values of control parameters one by one in generating a motion control model, a method of obtaining a direction and a magnitude of force desired by the user to be output for predetermined motions among all motions from the user and automatically generating the values of the control parameters based on the obtained information may be used in generating the motion control model. For example, a user may generate a motion control model for a desired motion through the electronic device 110, and the electronic device 110 may control the wearable device 120 through the motion control model to provide an exercise program to the user.
A method of generating the motion control model will be described in detail with reference to fig. 7 to 15.
Fig. 2 is a block diagram of an electronic device in a network environment according to an example embodiment.
Fig. 2 is a block diagram of an electronic device 201 (e.g., electronic device 110 of fig. 1) in a network environment 200 according to an example embodiment. Referring to fig. 2, an electronic device 201 in a network environment 200 may communicate with an electronic device 202 via a first network 298 (e.g., a short-range wireless communication network) or with at least one of an electronic device 204 or a server 208 via a second network 299 (e.g., a long-range wireless communication network). According to an example embodiment, the electronic device 201 may communicate with the electronic device 204 via a server 208. According to an example embodiment, the electronic device 201 may include a processor 220, a memory 230, an input module 250, a sound output module 255, a display module 260, an audio module 270, a sensor module 276, an interface 277, a connection 278, a haptic module 279, a camera module 280, a power management module 288, a battery 289, a communication module 290, a Subscriber Identity Module (SIM) 296, or an antenna module 297. In some embodiments, at least one of the above-described components (e.g., connection end 278) may be omitted from electronic device 201, or one or more other components may be added to electronic device 201. In some embodiments, some of the components described above (e.g., the sensor module 276, the camera module 280, or the antenna module 297) may be integrated into a single component (e.g., the display module 260).
The processor 220 may run, for example, software (e.g., program 240) to control at least one other component (e.g., a hardware component or a software component) of the electronic device 201 that is connected to the processor 220, and may perform various data processing or calculations. According to an example embodiment, as at least part of the data processing or calculation, the processor 220 may store commands or data received from another component (e.g., the sensor module 276 or the communication module 290) into the volatile memory 232, process the commands or data stored in the volatile memory 232, and store the resulting data in the nonvolatile memory 234. According to an example embodiment, the processor 220 may include a main processor 221 (e.g., a Central Processing Unit (CPU) or an Application Processor (AP)) or an auxiliary processor 223 (e.g., a Graphics Processing Unit (GPU), a Neural Processing Unit (NPU), an Image Signal Processor (ISP), a sensor hub processor, or a Communication Processor (CP)) that is operatively independent or combined with the main processor 221. For example, when the electronic device 201 comprises a main processor 221 and an auxiliary processor 223, the auxiliary processor 223 may be adapted to consume less power than the main processor 221 or to be dedicated to a specific function. The auxiliary processor 223 may be implemented separately from the main processor 221 or as part of the main processor 221.
The auxiliary processor 223 (rather than the main processor 221) may control at least some of the functions or states associated with at least one of the components of the electronic device 201 (e.g., the display module 260, the sensor module 276, or the communication module 290) when the main processor 221 is in an inactive (e.g., sleep) state, or the auxiliary processor 223 may control at least some of the functions or states associated with at least one of the components of the electronic device 201 (e.g., the display module 260, the sensor module 276, or the communication module 290) with the main processor 221 when the main processor 221 is in an active state (e.g., running an application). According to an example embodiment, the auxiliary processor 223 (e.g., ISP or CP) may be implemented as part of another component (e.g., camera module 280 or communication module 290) functionally associated with the auxiliary processor 223. According to an example embodiment, the auxiliary processor 223 (e.g., NPU) may include hardware architecture dedicated to Artificial Intelligence (AI) model processing. The artificial intelligence model may be generated through machine learning. Such learning may be performed, for example, by the electronic device 201 where the artificial intelligence model is executed or via a separate server (e.g., server 208). The learning algorithm may include, but is not limited to, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. The artificial intelligence model may include a plurality of artificial neural network layers. The artificial neural network may include, for example, a Deep Neural Network (DNN), a Convolutional Neural Network (CNN), a Recurrent Neural Network (RNN), a boltzmann machine limited (RBM), a Deep Belief Network (DBN), and a bi-directional recurrent deep neural network (BRDNN) or a deep Q network, or a combination of two or more thereof, but is not limited thereto. Additionally or alternatively, the AI model may include software structures in addition to hardware structures.
The memory 230 may store various data used by at least one component of the electronic device 201 (e.g., the processor 220 or the sensor module 276). The various data may include, for example, software (e.g., program 240) and input data or output data for commands associated therewith. Memory 230 may include volatile memory 232 or nonvolatile memory 234.
Program 240 may be stored as software in memory 230 and program 240 may include, for example, an Operating System (OS) 242, middleware 244, or applications 246.
The input module 250 may receive commands or data from outside the electronic device 201 (e.g., a user) to be used by other components of the electronic device 201 (e.g., the processor 220). The input module 250 may include, for example, a microphone, a mouse, a keyboard, keys (e.g., buttons) or a digital pen (e.g., a stylus).
The sound output module 255 may output a sound signal to the outside of the electronic device 201. The sound output module 255 may include, for example, a speaker or a receiver. Speakers may be used for general purposes such as playing multimedia or playing a record. The receiver may be used to receive an incoming call. According to example embodiments, the receiver may be implemented separately from the speaker or as part of the speaker.
The display module 260 may visually provide information to the outside (e.g., user) of the electronic device 201. The display module 260 may include, for example, control circuitry for controlling a display, a holographic device, or a projector, and control circuitry for controlling a corresponding one of the display, the holographic device, and the projector. According to an example embodiment, the display module 260 may include a touch sensor adapted to sense a touch or a pressure sensor adapted to measure the intensity of a force caused by a touch.
The audio module 270 may convert sound into an electrical signal, or vice versa. According to an example embodiment, the audio module 270 may obtain sound via the input module 250, or output sound via the sound output module 255 or an external electronic device (e.g., electronic device 202 such as a speaker or earphone) that is directly connected or wirelessly connected with the electronic device 201.
The sensor module 276 may detect an operational state (e.g., power or temperature) of the electronic device 201 or an environmental state (e.g., a state of a user) external to the electronic device 201 and generate an electrical signal or data value corresponding to the detected state. According to example embodiments, the sensor module 276 may include, for example, a gesture sensor, a gyroscope sensor, an atmospheric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an Infrared (IR) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
Interface 277 may support one or more specific protocols that will be used to connect electronic device 201 directly (e.g., wired) or wirelessly with an external electronic device (e.g., electronic device 202). According to an example embodiment, the interface 277 may include, for example, a High Definition Multimedia Interface (HDMI), a Universal Serial Bus (USB) interface, a Secure Digital (SD) card interface, or an audio interface.
The connection end 278 may include a connector via which the electronic device 201 may be physically connected with an external electronic device (e.g., the electronic device 202). According to example embodiments, the connection end 278 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
The haptic module 279 may convert the electrical signal into mechanical stimulus (e.g., vibration or motion) or electrical stimulus that can be recognized by the user via his or her sense of touch or kinesthetic sense. According to an example embodiment, the haptic module 279 may include, for example, a motor, a piezoelectric element, or an electrostimulator.
The camera module 280 including at least one camera may capture still images and video. According to an example embodiment, the camera module 280 may include one or more lenses, image sensors, ISPs, or flash lamps.
The power management module 288 may manage power to the electronic device 201. According to an example embodiment, the power management module 288 may be implemented as at least part of, for example, a Power Management Integrated Circuit (PMIC).
Battery 289 may power at least one component of electronic device 201. According to an example embodiment, battery 289 may include, for example, a primary non-rechargeable battery, a rechargeable battery, or a fuel cell.
The communication module 290 including communication circuitry may support establishing a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device 201 and an external electronic device (e.g., electronic device 202, electronic device 204, or server 208) and performing communication via the established communication channel. The communication module 290 may include one or more communication processors that operate independently of the processor 220 (e.g., an application processor) and support direct (e.g., wired) or wireless communication. According to an example embodiment, the communication module 290 may include a wireless communication module 292 (e.g., a cellular communication module, a short-range wireless communication module, or a Global Navigation Satellite System (GNSS) communication module) or a wired communication module 294 (e.g., a Local Area Network (LAN) communication module or a Power Line Communication (PLC) module). A respective one of these communication modules may communicate with external electronic device 204 via a first network 298 (e.g., a short-range communication network such as bluetooth, wireless fidelity (Wi-Fi) direct, or infrared data association (IrDA)) or a second network 299 (e.g., a long-range communication network such as a conventional cellular network, a 5G network, a next-generation communication network, the internet, or a computer network (e.g., a LAN or wide-area network (WAN)). These various types of communication modules may be implemented as a single component (e.g., a single chip), or may be implemented as multiple components (e.g., multiple chips) separate from each other. The wireless communication module 292 can identify and authenticate the electronic device 201 in a communication network, such as the first network 298 or the second network 299, using user information (e.g., an International Mobile Subscriber Identity (IMSI)) stored in the SIM 296.
The wireless communication module 292, including communication circuitry, may support a 5G network following a 4G network as well as next generation communication technologies (e.g., new Radio (NR) access technologies). The NR access technology can support enhanced mobile broadband (eMBB), large-scale machine type communications (mMTC), or ultra-reliable low-latency communications (URLLC). The wireless communication module 292 may support high frequency bands (e.g., millimeter-wave bands) to achieve, for example, high data transmission rates. The wireless communication module 292 may support various techniques for ensuring performance over high frequency bands such as, for example, beamforming, massive multiple-input multiple-output (MIMO), full-dimensional MIMO (FD-MIMO), array antennas, analog beamforming, or massive antennas. The wireless communication module 292 may support various requirements specified in the electronic device 201, an external electronic device (e.g., electronic device 204), or a network system (e.g., second network 299). According to an example embodiment, the wireless communication module 292 may support a peak data rate (e.g., 20Gbps or greater) for implementing eMBB, a lost coverage (e.g., 164dB or less) for implementing mMTC, or a U-plane delay (e.g., a round trip of 0.5ms or less, or 1ms or less for each of the Downlink (DL) and Uplink (UL)) for implementing URLLC.
The antenna module 297 may transmit signals or power to or receive signals or power from outside of the electronic device 201 (e.g., an external electronic device). According to an example embodiment, the antenna module 297 may include an antenna including a radiating element including a conductive material or conductive pattern formed in or on a substrate, such as a Printed Circuit Board (PCB). According to an example embodiment, the antenna module 297 may include multiple antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication scheme used in a communication network (such as the first network 298 or the second network 299) may be selected from the plurality of antennas by, for example, the communication module 290. Signals or power may be transmitted or received between the communication module 290 and the external electronic device via the selected at least one antenna. According to example embodiments, further components (e.g., a Radio Frequency Integrated Circuit (RFIC)) other than radiating elements may additionally be formed as part of the antenna module 297 including at least one antenna.
According to an example embodiment, antenna module 297 may form a millimeter wave antenna module. For example, the millimeter-wave antenna module may include a PCB, a Radio Frequency Integrated Circuit (RFIC) disposed on a first surface (e.g., a bottom surface) of the PCB or adjacent to the first surface and capable of supporting a specified high frequency band (e.g., a millimeter-wave band), and a plurality of antennas (e.g., array antennas) disposed on a second surface (e.g., a top surface or a side surface) of the PCB or adjacent to the second surface and capable of transmitting or receiving signals in the specified high frequency band.
At least some of the above components may be interconnected via an inter-peripheral communication scheme (e.g., bus, general Purpose Input Output (GPIO), serial Peripheral Interface (SPI), or Mobile Industrial Processor Interface (MIPI)) and communicatively communicate signals (e.g., commands or data) therebetween.
According to an example embodiment, commands or data may be sent or received between the electronic device 201 and the external electronic device 204 via the server 208 connected to the second network 299. Each of the external electronic device 202 and the external electronic device 204 may be the same type of device as the electronic device 201, or a different type of device from the electronic device 201. According to an example embodiment, all or some of the operations to be performed by the electronic device 201 may be performed at one or more of the external electronic device 202, the external electronic device 204, and the server 208. For example, if the electronic device 201 needs to automatically perform a function or service or should perform a function or service in response to a request from a user or another device, the electronic device 201 may request the one or more external electronic devices to perform at least part of the function or service instead of or in addition to the function or service. The one or more external electronic devices that receive the request may perform the requested at least part of the function or service, or perform additional functions or additional services related to the request, and may transmit the result of the performing to the electronic device 201. The electronic device 201 may provide the results as at least a partial reply to the request with or without further processing of the results. For this purpose, for example, cloud computing technology, distributed computing technology, mobile Edge Computing (MEC) technology, or client-server computing technology may be used. The electronic device 201 may provide ultra-low latency services using, for example, distributed computing or mobile edge computing. In an example embodiment, the external electronic device 204 may include an internet of things (IoT) device. Server 208 may be an intelligent server using machine learning and/or neural networks. According to an example embodiment, the external electronic device 204 or the server 208 may be included in the second network 299. The electronic device 201 may be applied to smart services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology or IoT-related technology.
The electronic device according to example embodiments may be one of various types of electronic devices. The electronic device may include, for example, a portable communication device (e.g., a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a household appliance device. According to an example embodiment of the present disclosure, the electronic device is not limited to those described above.
It should be understood that the various embodiments of the disclosure and the terminology used therein are not intended to limit the technical features set forth herein to the particular embodiments, but rather include various modifications, equivalents or alternatives to the respective embodiments. Like reference numerals may be used for like or related parts throughout the description in connection with the accompanying drawings. It will be understood that a noun in the singular corresponding to a term may include one or more things unless the context clearly indicates otherwise. As used herein, "a or B", "at least one of a and B", "at least one of a or B", "A, B or C", "at least one of A, B and C", and "at least one of A, B or C", each of which may include any or all of the possible combinations of items listed with a corresponding one of the plurality of phrases. Terms such as "1 st" and "2 nd" or "first" and "second" may be used simply to distinguish one element from another element of interest and not to limit the elements in other respects (e.g., importance or order). It will be understood that if the terms "operatively" or "communicatively" are used or the terms "operatively" or "communicatively" are not used, then if an element (e.g., a first element) is referred to as being "coupled to," "connected to," or "connected to" another element (e.g., a second element), it is intended that the element may be directly (e.g., through a wire) connected to the other element, wirelessly connected to the other element, or connected to the other element via at least a third element.
As used in connection with various embodiments of the present disclosure, the term "module" may include an element implemented in hardware, software, or firmware, and may be used interchangeably with other terms (e.g., "logic," "logic block," "portion," or "circuitry"). A module may be a single integrated component adapted to perform one or more functions or a minimal unit or portion of the single integrated component. For example, according to an example embodiment, a module may be implemented in the form of an Application Specific Integrated Circuit (ASIC). Thus, each "module" herein may include circuitry.
The various embodiments set forth herein may be implemented as software (e.g., program 240) comprising one or more instructions stored in a storage medium (e.g., which may include internal memory 236 and/or external memory 238) readable by a machine (e.g., electronic device 201). For example, a processor (e.g., processor 220) of the machine (e.g., electronic device 201) may invoke and execute at least one instruction of the one or more instructions stored in the storage medium. This enables the machine to operate to perform at least one function in accordance with the at least one instruction invoked. The one or more instructions may include code generated by a compiler or code capable of being executed by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, the term "non-transitory" means only that the storage medium is a tangible device and does not include a signal (e.g., electromagnetic waves), but the term does not distinguish between data being semi-permanently stored in the storage medium and data being temporarily stored in the storage medium.
According to example embodiments, methods according to various embodiments of the present disclosure may be included and provided in a computer program product. The computer program product may be used as a product for conducting transactions between sellers and buyers. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disk read only memory (CD-ROM)), or may be distributed (e.g., downloaded or uploaded) online via an application Store (e.g., play Store TM), or may be distributed (e.g., downloaded or uploaded) directly between two user devices (e.g., smart phones). At least some of the computer program product may be temporarily generated if published online, or at least some of the computer program product may be stored at least temporarily in a machine readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a forwarding server.
According to example embodiments, each of the above-described components (e.g., a module or a program) may include a single entity or a plurality of entities, and some of the plurality of entities may be separately provided in different components. According to example embodiments, one or more of the above-described components may be omitted, or one or more other components may be added. Alternatively or additionally, multiple components (e.g., modules or programs) may be integrated into a single component. In this case, according to various embodiments, the integrated component may still perform the one or more functions of each of the plurality of components in the same or similar manner as the corresponding one of the plurality of components performed the one or more functions prior to integration. According to various embodiments, operations performed by a module, a program, or another component may be performed sequentially, in parallel, repeatedly, or in a heuristic manner, or one or more of the operations may be performed in a different order or omitted, or one or more other operations may be added.
Fig. 3a, 3b, 3c and 3d are diagrams illustrating a wearable device according to an example embodiment.
Referring to fig. 3a, 3b, 3c, and 3d, a wearable device 300 (e.g., wearable device 120 of fig. 1) may be worn by a user to assist in a gait (e.g., walking) of the user. For example, the wearable device 300 may be a device for assisting a user's gait (e.g., walking). Further, wearable device 300 may be an exercise device that provides exercise functionality by assisting a user's motion (e.g., gait or exercise) and providing resistance to the user. For example, the resistance provided to the user may be a force actively applied to the user, such as a force output by a device such as a motor. Alternatively, the resistance may not be a force actively applied to the user, but may be a force that resists movement of the user, such as a frictional force. Resistance may also be referred to as exercise load.
Although fig. 3a, 3b, 3c and 3d illustrate a hip-type wearable device 300, the type of wearable device is not limited thereto. The wearable device may be of the type supporting the entire lower limb or of the type supporting a portion of the lower limb. In addition, the wearable device may be one of a type supporting a portion of a lower limb, a type supporting up to a knee, a type supporting up to an ankle, and a type supporting the entire body.
The embodiments described with reference to fig. 3a, 3b, 3c and 3d may be applied to a hip type wearable device, but are not limited thereto, and may be all applied to various types of wearable devices.
According to an example embodiment, the wearable device 300 may include a driver 310, a sensor unit 320 including at least one sensor, an Inertial Measurement Unit (IMU) 330 including at least one sensor, a controller 340, a battery 350, and a communication module 352. For example, the IMU 330 and the controller 340 may be disposed in a main frame of the wearable device 300. For example, the IMU 330 and the controller 340 (including processing circuitry) may be included in a housing that is formed outside of (or attached to) the main frame of the wearable device 300.
The driver 310 may include a motor 314 and a motor driver circuit 312 for driving the motor 314. The sensor unit 320 may include at least one sensor 321. The controller 340 may include a processor 342, a memory 344, and an input interface 346. Although the wearable device 300 is shown in fig. 3c as comprising one sensor 321, one motor driver circuit 312 and one motor 314, this may be provided as an example only, and according to another example as shown in fig. 3d, the wearable device 300-1 may comprise a plurality of sensors 321 and 321-1, a plurality of motor driver circuits 312 and 312-1 and a plurality of motors 314 and 314-1. Furthermore, according to an embodiment, the wearable device 300 may include a plurality of processors. The number of motor driver circuits, the number of motors, or the number of processors may vary depending on the body part on which the wearable device 300 is worn.
The following description of the sensor 321, motor driver circuit 312, and motor 314 is also applicable to the sensor 321-1, motor driver circuit 312-1, and motor 314-1 shown in fig. 3 d.
The driver 310 may drive the hip joint of the user. For example, the driver 310 may be located on the right hip and/or the left hip of the user. The driver 310 may be additionally located on the knee portion and the ankle portion of the user. The driver 310 may include a motor 314 for generating rotational torque and a motor driver circuit 312 for driving the motor 314.
The sensor unit 320 may measure the angle of the user's hip joint during gait. The information about the angle of the hip joint sensed by the sensor unit 320 may include the angle of the right hip joint, the angle of the left hip joint, the difference between the angles of the two hip joints, and the hip joint movement direction. For example, the sensor 321 may be located in the driver 310. Depending on the position of the sensor 321, the sensor unit 320 may additionally measure the angle of the user's knee and the angle of the ankle. The sensor 321 may be an encoder. Information about the angle of the joint measured by the sensor unit 320 may be transmitted to the controller 340.
According to an example embodiment, the sensor unit 320 may include a potentiometer. The potentiometer may sense an R-axis joint angle, an L-axis joint angle, an R-axis joint angular velocity, and an L-axis joint angular velocity according to a gait motion of a user. In this example, the R-axis and the L-axis may be reference axes of the right leg and the left leg of the user, respectively. For example, the R axis and the L axis may be set to be perpendicular to the ground and set such that the front side of the human body has a negative value and the rear side of the human body has a positive value.
The IMU 330 may measure acceleration information and posture information during gait. For example, the IMU 330 may sense X-, Y-, and Z-axis accelerations and X-, Y-, and Z-axis angular velocities (e.g., see X-, Y-, and Z-axes in fig. 5-6) in accordance with a user's gait motion. Acceleration information and pose information measured by the IMU 330 may be sent to the controller 340.
In addition to the sensor unit 320 and the IMU 330 described above, the wearable apparatus 300 may include a sensor (e.g., an Electromyography (EMG) sensor) configured to sense a change in the amount of motion or a change in a bio-signal of the user according to gait motions.
A controller 340 including processing circuitry may control the overall operation of the wearable device 300. For example, the controller 340 may receive information sensed by each of the sensor unit 320 and the IMU 330. The information sensed by the IMU 330 may include acceleration information and posture information, and the information sensed by the sensor unit 320 may include an angle of the right hip joint, an angle of the left hip joint, a difference between angles of the two hip joints, and a hip joint movement direction. According to an example embodiment, the controller 340 may calculate a difference between angles of the two hip joints based on the angle of the right hip joint and the angle of the left hip joint. The controller 340 may generate a signal for controlling the driver 310 based on the sensed information. For example, the generated signal may be an assisting force for assisting the movement of the user. Alternatively, the generated signal may be a resistance for obstructing the movement of the user. Resistance may be provided to the user to assist the user in performing the exercise. In the following description, a negative magnitude of the exercise load (e.g., torque) may indicate resistance, and a positive magnitude thereof may indicate assist force.
In an example, the processor 342 of the controller 340 may control the driver 310 to provide resistance to a user. For example, the driver 310 may provide resistance to a user by applying forward power to the user through the motor 314. Alternatively, the driver 310 may provide resistance to the user using the reverse driving of the motor 314 instead of applying forward power to the user. The reverse driving property of the motor may be a responsiveness of a rotation shaft of the motor to an external force. When the reverse drivability of the motor increases, the motor may more easily respond to an external force acting on the rotation shaft of the motor (i.e., the rotation shaft of the motor may more easily rotate). Even when the same external force is applied to the rotation shaft of the motor, the degree of rotation of the rotation shaft of the motor may be changed according to the degree of reverse driving.
According to an example embodiment, the processor 342 of the controller 340 may control the driver 310 to output a torque (or an assist torque) for assisting the movement of the user. For example, in the hip type wearable device 300, the driver 310 may be provided on each of the left and right hips, and the controller 340 may output a control signal for controlling the driver 310 to generate torque.
The driver 310 may generate torque based on a control signal output by the controller 340. The torque value for generating torque may be externally set or set by the controller 340. For example, to indicate the magnitude of the torque value, the controller 340 may use the magnitude of the current for the signal sent to the driver 310. That is, as the magnitude of the current received by the driver 310 increases, the torque value may increase. As another example, the processor 342 of the controller 340 may send a control signal to the motor driver circuit 312 of the driver 310, and the motor driver circuit 312 may generate a current corresponding to the control signal to control the motor 314.
The battery 350 may power the components of the wearable device 300. The wearable device 300 may also include circuitry (e.g., a Power Management Integrated Circuit (PMIC)) configured to convert and provide power of the battery 350 to the components of the wearable device 300 according to the operating voltage of the components of the wearable device 300. Additionally, the battery 350 may or may not power the motor 314 based on the operating mode of the wearable device 300.
The communication module 352 including the communication circuit may support establishing a direct (or wired) communication channel or a wireless communication channel between the wearable device 300 and an external electronic device, and supporting communication through the established communication channel. The communication module 352 may include one or more communication processors configured to support direct (or wired) communication or wireless communication. According to example embodiments, the communication module 352 may include a wireless communication module (e.g., a cellular communication module, a short-range wireless communication module, or a Global Navigation Satellite System (GNSS) communication module) or a wired communication module (e.g., a Local Area Network (LAN) communication module or a Power Line Communication (PLC) module). Corresponding ones of the communication modules may communicate with external electronic devices via a first network (e.g., a short-range communication network such as bluetooth TM, wireless fidelity (Wi-Fi) direct, or infrared data association (IrDA)) or a second network (e.g., a conventional cellular network, a 5G network, a next-generation communication network, the internet, or a computer network). These various types of communication modules may be implemented as a single component (e.g., a single chip), or may be implemented as multiple components (e.g., multiple chips) separate from each other.
According to an example embodiment, the electronic device 201 described above with reference to fig. 2 may be included in the wearable device 300.
According to an example embodiment, the electronic device 201 described above with reference to fig. 2 may be a separate device physically separated from the wearable device 300, and the electronic device 201 and the wearable device 300 may be connected through short-range wireless communication.
Fig. 4 is a diagram illustrating a wearable device in communication with an electronic device according to an example embodiment.
Referring to fig. 4, the wearable device 300 (e.g., the wearable device 120 of fig. 1) described above with reference to fig. 3a, 3b, 3c, and 3d may communicate with the electronic device 201 (e.g., the electronic device 110 of fig. 1) described above with reference to fig. 2. For example, the electronic device 201 may be an electronic device of a user of the wearable device 300. According to an example embodiment, the wearable device 300 and the electronic device 201 may be connected using a short-range wireless communication method.
The electronic device 201 may display a User Interface (UI) on the display 201-1 for controlling the operation of the wearable device 300. The UI may include, for example, at least one soft key through which the user may control the wearable device 300.
The user may input a command for controlling the operation of the wearable apparatus 300 through the UI on the display 201-1 of the electronic apparatus 201, and the electronic apparatus 201 may generate a control instruction corresponding to the command and transmit the generated control instruction to the wearable apparatus 300. The wearable device 300 may operate according to the received control instruction and transmit the control result to the electronic device 201. The electronic device 201 may display a control complete message on the display 201-1 of the electronic device 201.
Fig. 5 and 6 are diagrams illustrating a torque output method of a wearable device according to an example embodiment.
Referring to fig. 5 and 6, the drivers 310-1 and 310-2 of the wearable device 300 of fig. 3 (e.g., the wearable device 120 of fig. 1) may be disposed near the hip joint of the user, and the controller 340 of the wearable device 300 may be disposed near the lower back of the user. The locations of the drivers 310-1 and 310-2 and the controller 340 are not limited to the example locations shown in fig. 5 and 6.
The wearable device 300 may measure (and/or sense) the left hip angle q_l and the right hip angle q_r of the user. For example, the wearable device 300 may measure the left hip angle q_l of the user through the left encoder and the right hip angle q_r of the user through the right encoder. As shown in fig. 6, the left hip angle q_l may be negative because the user's left leg is before the reference line 620, and the right hip angle q_r may be positive because the user's right leg is after the reference line 620. According to an embodiment, the right hip angle q_r may be negative when the right leg is before the reference line 620, and the left hip angle q_l may be positive when the left leg is after the reference line 620.
According to an example embodiment, the wearable device 300 may obtain the first angle (e.g., q_r) and the second angle (e.g., q_l) by filtering a first original angle (e.g., q_r_raw) of the first joint (e.g., right hip joint) and a second original angle (e.g., q_l_raw) of the second joint (e.g., left hip joint) measured by the sensor unit 320. For example, the wearable device 300 may filter the first original angle and the second original angle based on the first previous angle and the second previous angle measured for the previous time.
According to an example embodiment, the wearable device 300 may determine the torque value τ (t) based on the left hip angle q_l, the right hip angle q_r, the offset angle c, the sensitivity α, the gain κ, and the delay Δt, and control the motor driver circuit 312 of the wearable device 300 to output the determined torque value τ (t). The force provided to the user by the torque value τ (t) may be referred to herein as force feedback. For example, the wearable device 300 may determine the torque value τ (t) based on equation 1 below.
[ Equation 1]
y=sin(q_r)-sin(q_l)
τ(t)=κy(t-△t)
In equation 1, y represents a state factor, q_r represents a right hip joint angle, and q_l represents a left hip joint angle. According to equation 1, the state factor y may be associated with the distance between the two legs. For example, y being "0" may indicate a state (e.g., a crossing state) in which the distance between the legs is "0", and an absolute value of y being a maximum value may indicate a state (e.g., a landing state) in which the angle between the legs is maximum or greater. According to an example embodiment, when q_r and q_l are measured at time t, the state factor may be denoted as y (t).
The gain κ is a parameter indicative of the magnitude and direction of the output torque. As the magnitude of the gain κ increases, greater torque may be output. If the gain κ is negative, a torque serving as a resistance may be output to the user. If the gain κ is positive, a torque serving as an assist force can be output to the user. The delay Δt is a parameter associated with the torque output timing. The value of gain κ and the value of delay Δt may be preset and may be adjusted by a user, the wearable device 300, or the electronic device 201 described above with reference to fig. 2.
The model for outputting the torque used as the assist force to the user using equation 1 may be defined as a torque output model (e.g., a torque output algorithm). The wearable device 300 or the electronic device 201 can determine the magnitude and delay of the torque to be output by inputting the value of the input parameter received through the sensor into the torque output model.
According to an example embodiment, the wearable device 300 or the electronic device 201 may determine the first torque value through the following equation 2 by applying a first gain value and a first delay value to the first state factor y (t), wherein the first gain value and the first delay value may be parameter values determined with respect to the state factor y (t).
[ Equation 2]
τl(t)=κy(t-△t)
τr(t)=-κy(t-△t)
The calculated first torque value may include a value for the first joint and a value for the second joint, since it should be applied to both legs. For example, τ l (t) may be a value for the left hip joint as the second joint, and τ r (t) may be a value for the right hip joint as the first joint. τ l (t) and τ r (t) may be values of the same magnitude and opposite torque directions. The wearable device 300 may control the motor driver circuit 312 of the wearable device 300 to output a torque corresponding to the first torque value.
According to an example embodiment, when a user makes an asymmetric gait with the left and right legs, the wearable device 300 may provide asymmetric torque to the two legs of the user, respectively, to assist in the asymmetric gait (e.g., walking). For example, a leg with a shorter stride width or a slower swing speed may be provided with a stronger assist force. Hereinafter, a leg having a small stride width or a slow swing speed will be referred to as an affected or target leg.
In general, the affected legs may have a shorter swing time or a smaller stride width than the unaffected legs. According to an example embodiment, a method of adjusting the timing of torque acting on an affected leg to assist a user's gait may be considered. For example, the offset angle may be added to the actual joint angle of the affected leg to increase the output time of torque for assisting the swing motion of the affected leg. c may be a value of a parameter indicative of the offset angle between the joint angles. When the offset angle is added to the actual joint angle of the affected leg, the values of the input parameters that are input into the torque output model installed on (and/or applied to) the wearable device 300 may be adjusted. For example, the values of q_r and q_l may be adjusted by the following equation 3. c r represents the offset angle relative to the right hip joint, and c l represents the offset angle relative to the left hip joint.
[ Equation 3]
q-r(t)←q-r(t)+cr
q-l(t))←q-l(t)+cl
According to an example embodiment, the wearable device 300 may filter the state factor to reduce discomfort that a user may experience due to irregular torque output. For example, the wearable device 300 or the electronic device 201 may determine the initial state factor y raw (t) at the current time t based on the first angle of the first joint and the second angle of the second joint, and determine the first state factor y (t) based on the previous state factor y prv and the initial state factor y prv determined with respect to the previous time t-1. The current time t may be a time to process the t-th data (e.g., sample), and the previous time t-1 may be a time to process the t-1 th data. For example, the difference between the current time t and the previous time t-1 may be an operational interval of a processor for generating or processing the corresponding data item. The sensitivity α may be a value of a parameter indicating the sensitivity. For example, the sensitivity value may be continuously adjusted during the test gait. However, the sensitivity value may be preset to a predetermined value to reduce the computational complexity.
According to example embodiments, when a user wearing the wearable device 300 is in a walking state, a torque output method based on the state factor described with reference to equations 1 to 3 may be used. When the user is in an in-place exercise state rather than a walking state, the wearable device 300 may be controlled using a motion control model corresponding to the exercise performed by the user.
Fig. 7 is a flowchart illustrating a method of generating a motion control model for a wearable device according to an example embodiment.
Operations 710 through 760 may be performed by an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2).
In operation 710, the electronic device may load target motion information and base torque information.
According to an example embodiment, the electronic device may receive the previously generated target motion information and base torque information from a server (e.g., server 140 of fig. 1). For example, the electronic device may search for exercises such as squat, jerk, or kick by the server, and the server may transmit target movement information and basic torque information about the found exercises to the electronic device. The target motion information may be a change in motion of a wearable device (e.g., wearable device 120 of fig. 1 and/or wearable device 300 of fig. 3) according to a target period. For example, the target motion information may indicate a change in hip angle of the wearable device. The basic torque information may be information on an output torque of the wearable device output according to the target period. The target motion information and the basic torque information will be described in detail below with reference to fig. 8.
According to example embodiments, the electronic device may load target motion information and base torque information generated by a user through the electronic device. A method of generating target motion information and basic torque information by a user through an electronic device will be described in detail with reference to fig. 11 to 14.
In operation 720, the electronic device may provide at least one of the target motion information or the base torque information to the user. For example, the electronic device may output the target motion information and the base torque information simultaneously through the display. For example, the electronic device may output the base torque information via a display. The user can recognize how the torque is output to the user through the wearable device when performing exercise through the output basic torque information.
According to example embodiments, a user may control an electronic device such that a torque according to basic torque information may be output while a user wearing a wearable device is performing exercises corresponding to a target motion. The control may be a test of the base torque information. For example, when the torque output according to the basic torque information is satisfactory, the user may not modify the basic torque information. For example, when the torque output according to the basic torque information is not satisfactory, the user may modify the basic torque information.
In operation 730, the electronic device may receive an input from a user to modify at least a portion of the base torque information.
According to an example embodiment, the electronic device may receive as input a first torque value from a user regarding a first time within a target period or regarding a first motion within a target motion mapped to the first time. A method of receiving a first torque value from a user regarding a first movement will be described in detail with reference to fig. 9.
According to an example embodiment, the electronic device may receive a drag input of a user for basic torque information output to the display in the form of a track as a modification input for the basic torque information. A method of receiving a drag input of a user will be described in detail with reference to fig. 10.
In operation 740, the electronic device may generate modified torque information based on the base torque information and the input received from the user.
According to an example embodiment, the electronic device may generate torque information about motion not received from the user based on the torque information about motion received directly from the user. For example, when a first torque value is received from a user regarding a first motion within a target motion, the electronic device may determine a second torque value regarding a second motion based on the first torque value. The electronic device may determine the second torque value such that the torque value to be output may naturally vary according to the variation of the motion. The electronic device may generate modified torque information based on the first torque value and the second torque value. A method of generating the modified torque information will be described in detail with reference to fig. 9 and 10.
In operation 750, the electronic device may generate a motion control model for controlling the wearable device based on the target motion information and the modified torque information. The generated motion control model may be stored in the electronic device.
According to an example embodiment, the motion control model may be a model of: the model receives motion information (e.g., joint angle) obtained by a sensor of the wearable device and outputs a value of at least one control parameter for controlling the wearable device to output a desired torque for a corresponding motion.
For example, the user may terminate generating the modified torque information when the torque output according to the modified torque information is satisfactory. The modified torque information that has been adjusted may be referred to as final torque information.
For example, when the torque output according to the modified torque information is not satisfactory, the user may adjust the modified torque information by repeatedly performing the above operations 730 to 750.
According to an example embodiment, the motion control model may include a first model for a left leg of the wearable device and a second model for a right leg of the wearable device.
In operation 760, the electronic device may provide an exercise program to the user by controlling operation of the wearable device based on the values of the control parameters output by the motion control model.
According to an example embodiment, an electronic device may receive a target exercise program received from a user and determine a target motion control model corresponding to the target exercise program from one or more motion control models stored in the electronic device. The electronic device may receive motion information from the wearable device when a user wears the wearable device to perform an exercise, and control the wearable device to output a torque corresponding to the motion information using the motion information and the motion control model. For example, the torque provided to the user may be output by a motor disposed at a joint (e.g., a hip joint) of the wearable device.
Fig. 8 illustrates target motion information of a wearable device and basic torque information mapped to the target motion information according to an example embodiment.
According to an example embodiment, target movement information of a wearable device (e.g., wearable device 120 of fig. 1 or wearable device 300 of fig. 3) and basic torque information mapped to the target movement information may be provided to a user in the form of a table 810. The user can visually observe the target movement information and the basic torque information while performing the exercise. For example, the workout corresponding to table 810 may be a left knee lift of the user. For example, the target period of one left knee lift may be "6" seconds. The table 810 may include left joint angle information 811 and right joint angle information 812 during a target period as target motion information. The table 810 may include left target torque information 821 and right target torque information 822 during a target period (or target movement) as basic torque information.
According to an example embodiment, the basic torque information 831 and 832 (or target motion information) mapped to the target period may be provided to the user in the form of a trajectory (or graphic) 830. In the illustrated example, since the joints of the right leg (e.g., hip joints or knee joints) do not substantially move during the left knee lifting, the values of the right joint angle and the target torque may not change.
According to an example embodiment, the target motion information may be provided to the user in the form of a trajectory along with the base torque information 831 and 832.
According to an example embodiment, a user may generate a motion control model for target motion information and base torque information through an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2), and the wearable device performs exercise using the generated motion control model. For example, when the torque output of the wearable device according to the motion control model is not satisfactory, the user may modify the basic torque information.
For example, the target motion information and the base torque information may be information directly generated by a user of the wearable device. For example, the target motion information and the base torque information may be information generated by another user other than the user of the wearable device. For example, the target movement information and the base torque information may be information received by the electronic device from a server (e.g., server 140 of fig. 1).
Fig. 9 is a flowchart illustrating a method of generating modified torque information based on input received from a user, according to an example embodiment.
According to an example embodiment, operation 730 described above with reference to fig. 7 may include operation 910, which will be described below.
In operation 910, an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2) may receive as input from a user a first torque value for a first time within a target period or a first motion within a target motion mapped to the first time.
For example, in the table 810 described above with reference to fig. 8, the base torque value for the first motion (e.g., 60 degrees left joint angle) mapped to the first time in the first time (e.g., "2" seconds) or the target motion is "2" nm, and the user may input "2.9" nm as the first torque value. The user may input the first torque value in a manner that increases or decreases the value from the base torque value.
According to an example embodiment, operation 740 described above with reference to fig. 7 may include operations 920 and 930, which will be described below. Operation 920 may be performed after operation 910 is performed.
In operation 920, the electronic device may determine an interpolated torque value for at least a portion of the target motion for which a torque value is not specified based on the first torque value.
For example, when the user does not specify a torque value (e.g., a left joint angle of 30 degrees) regarding the target motion corresponding to "1" second in the left joint angle information 811 of the table 810 described with reference to fig. 8, the electronic device may determine an interpolation torque value regarding the target motion. For example, when "2.9" nm is set for "2" seconds and "3" nm is set for "3" seconds, the electronic device may determine a torque value with respect to the target motion corresponding to "1" seconds as an interpolation torque value (e.g., "2.3" nm) based on aspects of the target motion and the change in the set torque value.
In operation 930, the electronic device may generate modified torque information based on the first torque value and the interpolated torque value. For example, the modified torque information may be torque information output by a wearable device (e.g., wearable device 120 of fig. 1 or wearable device 300 of fig. 3) during a target movement (or during a target period).
FIG. 10 illustrates modified torque information generated based on base torque information and user input according to an example embodiment.
In operation 1010, an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2) may provide basic torque information in the form of a track 1011 to a user.
For example, the user may set the torque value output at "3" seconds, which changes in terms of motion, to "3" nm. The points at which aspects of motion change may be referred to as feature points. It may be divided into a first period of increasing torque value and a second period of decreasing torque value based on "3" seconds. Although it is divided into the first period and the second period based on "3" seconds in the illustrated embodiment, the number of divided periods may vary according to the embodiment.
In operation 1020, the user may input a drag input to the electronic device to modify the track 1011a of the first basic torque information corresponding to the first period or the track 1011b of the second basic torque information corresponding to the second period.
According to an exemplary embodiment, a trace 1021 of modified torque information modified by a user is shown. For example, the user may move the track 1021a of the first modified torque information by dragging the track 1011a of the first base torque information upward to increase the torque in the first period. For example, the user may move the trajectory 1021b of the second modified torque information by dragging the trajectory 1011b of the second base torque information downward to reduce the torque in the second period. The electronic device may change the shape of the track based on the drag input of the user. The shape of the trajectory may be determined such that the torque value continuously varies over a corresponding period of time.
According to the trajectory 1021 of the modified torque information, the counterclockwise strong torque can be provided to the user as the exercise load from the beginning portion in the first period in which the user lifts the left knee, and the counterclockwise torque can be quickly reduced from the beginning portion in the second period in which the user lowers the left knee, whereby the torque can be prevented from being used as the assisting force for lowering the left knee.
In operation 1030, the electronic device may convert the trajectory 1021 of the modified torque information into the form of the table 1031. The table 1031 may include left joint angle information 1041 during a target period and left target torque information 1042 during the target period (or during target movement) as target movement information. For example, the left target torque information 1042 may correspond to the trajectory 1021 of the modified torque information.
According to an example embodiment, the electronic device may generate a motion control model based on the table 1031.
Fig. 11 is a flowchart illustrating a method of loading target motion information and base torque information according to an example embodiment.
According to an example embodiment, operation 710 described above with reference to fig. 7 may include operations 1110 to 1130, which will be described below. For example, operations 1110-1130 may relate to a method of generating base torque information by a user of a wearable device (e.g., wearable device 120 of fig. 1 or wearable device 300 of fig. 3). Operations 710 through 760 may be performed by an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2).
In operation 1110, the electronic device may receive target motion information of the wearable device during a target period from the wearable device in a state in which the user wears the wearable device. A method of receiving target motion information from a wearable device by an electronic device will be described in detail below with reference to fig. 12.
According to example embodiments, in a state where the electronic device and the wearable device are connected (or paired) through wireless communication, a user wearing the wearable device may perform a desired exercise during a target period. The wearable device may generate information about the motion performed within the target period through the sensor and transmit the generated motion information to the electronic device. For example, the motion information may be an angle of a hip joint of the user. A method of receiving target motion information by the electronic device will be described in detail below with reference to fig. 12.
In operation 1120, the electronic device may receive first torque information from a user regarding a first time within a target period.
According to an example embodiment, when the target motion information is generated by a wearable device worn by the user, the electronic device may receive the first torque information from the user and associate a first motion corresponding to a time (e.g., a first time) at which the first torque information was received with the first torque information. For example, the first torque information may include a torque output direction (clockwise or counterclockwise). For example, the first torque information may include a magnitude of the output torque.
According to an example embodiment, the electronic device may further comprise a microphone for receiving an utterance of the user. The electronic device may generate first torque information based on the received utterance.
According to example embodiments, after generating the target motion information, a user may input first torque information about a desired first motion (or first time) into the electronic device while observing the target motion information.
A method of receiving the first torque information regarding the first time within the target period will be described in detail below with reference to fig. 13.
In operation 1130, the electronic device may generate base torque information (e.g., target torque information 821 of fig. 8) based on the first torque information.
Fig. 12 is a flowchart illustrating a method of receiving target motion information using a wearable device according to an example embodiment.
According to an example embodiment, the user 1201 may perform the target motion by wearing a wearable device 1210 (e.g., the wearable device 120 of fig. 1 or the wearable device 300 of fig. 3). For example, the user may perform left knee lifting as a target motion. For example, the target motion of "6" seconds may be performed.
When the user is performing a target motion, wearable device 1210 may generate motion information 1220 using the sensor. For example, the motion information 1220 may be a trajectory of the angle of the user's left hip joint. The wearable device 1210 may send the generated motion information 1220 to an electronic device (e.g., the electronic device 110 of fig. 1 or the electronic device 201 of fig. 2).
Fig. 13 illustrates a User Interface (UI) screen for receiving torque information about target motion information from a user according to an example embodiment.
According to example embodiments, a user wearing a wearable device (e.g., wearable device 120 of fig. 1, wearable device 300 of fig. 3, or wearable device 1210 of fig. 12) may perform a target motion by touching start button 1310 on UI screen 1300 output by an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2).
The electronic device may output motion information 1320 on the UI screen 1300 that is received from the wearable device while the user is performing the target motion.
In performing the target movement, the user may input torque information regarding the movement (or time) of the desired torque output (e.g., the first movement 1321) into the electronic device. The point corresponding to the movement of the desired torque output may be a characteristic point. For example, first torque information corresponding to the first motion 1321 may be input through a torque information input interface 1330 provided on the UI screen 1300. For example, the first torque information may include a direction of the output torque. For example, the first torque information may include a magnitude of the output torque.
According to example embodiments, a user may input first torque information into an electronic device not only when performing a target motion but also after performing the target motion.
The user can terminate the generation of the target motion information and the basic torque information by touching the end button 1340 on the UI screen 1300.
Fig. 14 is a flowchart illustrating a method of generating basic torque information based on first torque information and second torque information according to an example embodiment.
According to an example embodiment, operation 1130 described above with reference to fig. 11 may include operations 1410 through 1430, which will be described below. Operations 1410 through 1430 may be performed by an electronic device (e.g., electronic device 110 of fig. 1 or electronic device 201 of fig. 2).
In operation 1410, the electronic device may determine a second time within the target period. For example, the second time may be a time not specified by the user.
In operation 1420, the electronic device may generate second torque information about the second time based on the first time and the first torque information. For example, when the second time is between the first times specified by the user, the second torque information may be generated based on pieces of torque information corresponding to the first times. For example, the second torque information may be generated as a track connecting pieces of torque information corresponding to the first time.
Fig. 15 illustrates a UI screen for generating modified torque information based on basic torque information according to an example embodiment.
According to an example embodiment, in operation 720 described above with reference to fig. 7, a UI screen 1500 output by an electronic device (e.g., the electronic device 110 of fig. 1 or the electronic device 201 of fig. 2) for generating modified torque information based on basic torque information may be provided to a user.
The user can recognize modified torque information (or basic torque information) 1520 output on the UI screen 1500. When the modified torque information 1520 is modified, the modified torque information may be output on the UI screen 1500.
According to an exemplary embodiment, a user may test modified torque information 1520 by wearing a wearable device (e.g., wearable device 120 of fig. 1, wearable device 300 of fig. 3, or wearable device 1210 of fig. 12). For example, the user may touch the application button 1510 to test the modified torque information 1520 output on the UI screen 1500. When the application button 1510 is touched, the electronic device can generate a motion control model corresponding to the modified torque information 1520 and control the operation of the wearable device based on the motion control model.
When the torque output by the wearable device is not satisfactory, the user may repeatedly modify the modified torque information 1520. When the torque output by the wearable device is satisfactory, the user may touch the end modification button 1530. When the end modification button 1530 is touched, the electronic device may generate and store a motion control model corresponding to the modified torque information 1520. The generated motion control model corresponding to the modified torque information 1520 may be a motion control model personalized for the user.
Fig. 16 is a diagram showing a configuration of a server according to an example embodiment.
The server 1600 may include a communicator 1610, a processor 1620 (including processing circuitry), and a memory 1630, where the communicator 1610 includes communication circuitry. For example, server 1600 may be server 140 described above with reference to fig. 1.
The communicator 1610 including the communication circuit may be directly or indirectly connected to the processor 1620 and the memory 1630 and transmit data to and receive data from the processor 1620 and the memory 1630. The communicator 1610 may be directly or indirectly connected to another external device and transmit and receive data to and from the external device.
The communicator 1610 may be implemented as circuitry in the server 1600. For example, the communicator 1610 may include an internal bus and an external bus. In another example, the communicator 1610 may be an element connecting the server 1600 and an external device. Communicator 1610 may be an interface. The communicator 1610 may receive data from external devices and send the data to the processor 1620 and the memory 1630.
The processor 1620, including processing circuitry, may process data received by the communicator 1610 and data stored in the memory 1630. The processors described herein may be hardware-implemented processing devices with physically structured circuitry to perform desired operations. The desired operations may include, for example, code or instructions included in a program. Hardware-implemented data processing means may include, for example, microprocessors, central Processing Units (CPUs), processor cores, multi-core processors, multiprocessors, application Specific Integrated Circuits (ASICs), and Field Programmable Gate Arrays (FPGAs). Each processor herein includes processing circuitry.
Processor 1620 may execute computer readable code (e.g., software) stored in a memory (e.g., memory 1630) and instructions triggered by processor 1620.
The memory 1630 may store therein data received by the communicator 1610 and data processed by the processor 1620. For example, memory 1630 may store programs (or applications or software). The stored program may be a set of grammars encoded and executable by processor 1620 to transmit base torque information corresponding to an exercise program selected by a user from a plurality of exercise programs to an electronic device.
According to an example embodiment, memory 1630 may include at least one of volatile memory, non-volatile memory, random Access Memory (RAM), flash memory, a hard disk drive, and an optical disk drive.
Memory 1630 may store a set of instructions (e.g., software) for operating server 1600. The set of instructions for operating the server 1600 may be executed by the processor 1620. According to an exemplary embodiment, memory 1630 may include a database that includes base torque information for each of the plurality of exercise programs.
According to example embodiments, an electronic device may include a communication module configured to exchange data with an external device, and at least one processor configured to control the electronic device, wherein the processor may be configured to provide at least one of target movement information of the wearable device according to a target period or basic torque information mapped to the target movement information and output by the wearable device to a user of the electronic device, receive an input from the user to modify at least a portion of the basic torque information, generate modified torque information based on the basic torque information and the input, and generate a movement control model for controlling the wearable device based on the target movement information and the modified torque information, wherein operation of the wearable device may be controlled based on the movement control model.
According to an example embodiment, the electronic device may further include a display configured to output the target movement information and the base torque information to a user.
According to an example embodiment, the processor may be configured to receive as input a drag input by a user for basic torque information output to the display in the form of a trajectory.
Each embodiment herein may be used in combination with any other embodiment(s) described herein.
According to an example embodiment, the processor may be configured to receive as input from a user a first torque value with respect to a first time within a target period or a first torque value with respect to a first motion within a target motion mapped to the first time.
According to an example embodiment, the processor may be configured to determine an interpolated torque value for at least a portion of the target motion for which a torque value is not specified based on the first torque value and to generate modified torque information based on the first torque value and the interpolated torque value. As used herein, "based on" encompasses at least based on.
According to an example embodiment, the processor may be configured to generate the motion control model such that when the user performs the target motion while wearing the wearable device, the wearable device may output torque during the target motion based on the modified torque information.
According to an example embodiment, the torque may be output by a motor disposed in a joint of the wearable device.
According to an example embodiment, the motion control model may include a first model for a left leg of the wearable device and a second model for a right leg of the wearable device.
According to an example embodiment, the processor may be configured to receive target movement information of the wearable device during a target period from the wearable device in a state in which the user wears the wearable device, receive first torque information from the user regarding a first time within the target period, and generate the base torque information based on the first torque information.
According to an example embodiment, the processor may be configured to determine a second time within the target period, generate second torque information about the second time based on the first time and the first torque information, and generate the base torque information based on the first torque information and the second torque information.
According to an example embodiment, the first torque information may include at least one of direction information or magnitude information of the torque output at the first time.
According to an example embodiment, the electronic device may further comprise a microphone configured to receive an utterance of the user, wherein the processor is configured to generate the first torque information based on the utterance.
According to an example embodiment, a method performed by an electronic device of generating a motion control model for controlling a wearable device may include: providing at least one of target motion information of the wearable device according to a target period or basic torque information mapped to the target motion information and output by the wearable device to a user of the electronic device, receiving an input from the user for modifying at least a portion of the basic torque information, generating modified torque information based on the basic torque information and the input, and generating a motion control model for controlling the wearable device based on the target motion information and the modified torque information, wherein operation of the wearable device may be controlled based on the motion control model.
According to an example embodiment, receiving input from a user to modify at least a portion of the base torque information may include: a drag input by a user is received as input for basic torque information output to a display in the form of a trace.
According to an example embodiment, receiving input from a user to modify at least a portion of the base torque information may include: a first torque value for a first time within the target period or a first torque value for a first motion within the target motion mapped to the first time is received as input from a user.
According to an example embodiment, generating modified torque information based on the base torque information and the input may include: an interpolated torque value for at least a portion of the target motion for which a torque value is not specified is determined based on the first torque value, and modified torque information is generated based on the first torque value and the interpolated torque value.
According to an example embodiment, generating the motion control model may include generating the motion control model such that when a user performs a target motion while wearing the wearable device, the wearable device outputs torque during the target motion based on the modified torque information.
According to an example embodiment, the method may further comprise: the method includes receiving target motion information of the wearable device during a target period from the wearable device in a state where the user wears the wearable device, receiving first torque information from the user regarding a first time within the target period, and generating base torque information based on the first torque information.
According to an example embodiment, generating the base torque information based on the first torque information may include: the method may include determining a second time within the target period, and generating second torque information about the second time based on the first time and the first torque information, wherein the base torque information may include the first torque information and the second torque information.
According to an example embodiment, an electronic device may include a communication module configured to exchange data with an external device, and at least one processor configured to control the electronic device, wherein the processor may be configured to receive target motion information of the wearable device during a target period from the wearable device in a state in which the wearable device is worn by a user, receive first torque information from the user regarding a first time within the target period, generate base torque information based on the first torque information, and generate a motion control model for controlling the wearable device based on the target motion information and the base torque information, wherein operation of the wearable device may be controlled based on the motion control model.
Embodiments described herein may be implemented using hardware components, software components, and/or combinations thereof. A processing device may be implemented using one or more general purpose or special purpose computers, such as, for example, a processor, controller and Arithmetic Logic Unit (ALU), DSP, microcomputer, field Programmable Gate Array (FPGA), programmable Logic Unit (PLU), microprocessor, or any other device capable of responding to and executing instructions in a defined manner. The processing device may run an Operating System (OS) and one or more software applications running on the OS. The processing device may also access, store, manipulate, process, and create data in response to execution of the software. For simplicity, the description of the processing means is used in the singular; however, those skilled in the art will appreciate that the processing device may include multiple processing elements and multiple types of processing elements. For example, the processing device may include multiple processors, or a single processor and a single controller. In addition, different processing configurations are possible, such as parallel processors.
The software may include a computer program, a piece of code, instructions, or some combination thereof to individually or collectively instruct or configure the processing device to operate as needed. The software and data may be embodied permanently or temporarily in any type of machine, component, physical or virtual equipment, computer storage medium or device, or in a propagated signal wave capable of providing instructions or data to the processing device or a propagated signal wave capable of being interpreted by the processing device. The software may also be distributed over network-connected computer systems so that the software is stored and executed in a distributed fashion. The software and data may be stored by one or more non-transitory computer readable recording media.
The method according to the above-described embodiments may be recorded in a non-transitory computer-readable medium including program instructions for implementing various operations of the above-described embodiments. Media may also include data files, data structures, and the like, alone or in combination with program instructions. The program instructions recorded on the medium may be program instructions specially designed and constructed for the purposes of the embodiments, or they may be of the type well known and available to those having skill in the computer software arts. Examples of non-transitory computer readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks and/or DVDs; magneto-optical media such as optical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random Access Memory (RAM), flash memory, and the like. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
The apparatus described above may be configured to act as one or more software modules in order to perform the operations of the examples described above, and vice versa. The term "software module" as used herein may include various processing circuits and/or executable program instructions. The same applies to "software modules".
As described above, although the embodiments have been described with reference to the limited drawings, those skilled in the art can apply various technical modifications and variations thereto. For example, suitable results may be achieved if the described techniques were performed in a different order and/or if components in the described systems, architectures, devices or circuits were combined in a different manner and/or replaced or supplemented by other components or their equivalents.
While the disclosure has been shown and described with reference to various embodiments, it is to be understood that the various embodiments are intended to be illustrative, and not limiting. It will be further understood by those skilled in the art that various changes in form and details may be made therein without departing from the true spirit and full scope of the disclosure, including the appended claims and their equivalents. It will also be appreciated that any embodiment(s) described herein may be used in combination with any other embodiment(s) described herein.

Claims (15)

1. An electronic device, comprising:
A communication module including a communication circuit configured to exchange data with an external device; and
At least one processor configured to control the electronic device,
Wherein the at least one processor is configured to:
Providing at least one of target movement information of a wearable device based on a target period or at least basic torque information mapped to and output by the wearable device to a user of the electronic device,
An input is received from a user for modifying at least a portion of the base torque information,
Generating modified torque information based on the base torque information and the input, and
A motion control model for controlling the wearable device is generated based on the target motion information and the modified torque information, wherein operation of the wearable device is controlled based on the motion control model.
2. The electronic device of claim 1, further comprising:
And a display configured to output the target movement information and the basic torque information to a user.
3. The electronic device of claim 2, wherein
The at least one processor is configured to receive a drag input by a user for the base torque information output to the display in the form of a trace as at least a portion of the input.
4. The electronic device of claim 2, wherein
The at least one processor is configured to receive, as at least a portion of the input, a first torque value from a user regarding a first time within the target period and/or a first torque value regarding a first motion within a target motion mapped to the first time.
5. The electronic device of claim 4, wherein
The at least one processor is configured to:
determining an interpolated torque value for at least a portion of the target motion with respect to an unspecified torque value based on the first torque value, and
The modified torque information is generated based on the first torque value and the interpolated torque value.
6. The electronic device of claim 1, wherein
The at least one processor is configured to generate the motion control model such that when a user performs a target motion while wearing the wearable device, the wearable device outputs torque during the target motion based on the modified torque information.
7. The electronic device of claim 1, wherein
The torque is output and/or generated by at least a motor disposed in a joint of the wearable device.
8. The electronic device of claim 1, wherein
The motion control model includes a first model for a left leg of the wearable device and a second model for a right leg of the wearable device.
9. The electronic device of claim 1, wherein
The at least one processor is configured to:
receiving the target movement information of the wearable device during the target period from the wearable device in a state where the user wears the wearable device,
Receiving first torque information from a user regarding a first time within the target period, and
The base torque information is generated based on the first torque information.
10. The electronic device of claim 9, wherein
The at least one processor is configured to:
determining a second time within the target period,
Generating second torque information about the second time based on the first time and the first torque information, and
The base torque information is generated based on the first torque information and the second torque information.
11. The electronic device of claim 9, wherein
The first torque information includes at least one of direction information or magnitude information of the torque output at the first time.
12. The electronic device of claim 9, further comprising:
A microphone configured to receive utterances of the user,
Wherein the at least one processor is configured to generate the first torque information based on the utterance.
13. A method performed by an electronic device of generating a motion control model for controlling a wearable device, the method comprising:
providing at least one of target movement information of the wearable device based on a target period or basic torque information mapped to the target movement information and output by the wearable device to a user of the electronic device;
Receiving input from a user for modifying at least a portion of the base torque information;
generating modified torque information based on the base torque information and the input; and
A motion control model for controlling the wearable device is generated based on the target motion information and the modified torque information, wherein operation of the wearable device is controlled based on the motion control model.
14. The method of claim 13, wherein
Receiving input from a user to modify at least a portion of the base torque information includes: a drag input by a user is received for the base torque information output to the display in the form of a trace as at least a portion of the input.
15. The method of claim 13, wherein
Receiving input from a user to modify at least a portion of the base torque information includes: a first torque value for a first time within a target period and/or a first torque value for a first motion within a target motion mapped to the first time is received from a user as at least a portion of the input.
CN202280061950.8A 2021-12-06 2022-12-05 Method for generating a motion control model for a wearable device and electronic device for performing the method Pending CN117940254A (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2021-0173188 2021-12-06
KR10-2022-0104187 2022-08-19
KR1020220104187A KR20230085061A (en) 2021-12-06 2022-08-19 Method for generating motion control model fir wearable device and electronic device performing the method
PCT/KR2022/019609 WO2023106763A1 (en) 2021-12-06 2022-12-05 Method for generating motion control model for wearable apparatus, and electronic apparatus performing said method

Publications (1)

Publication Number Publication Date
CN117940254A true CN117940254A (en) 2024-04-26

Family

ID=90757891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280061950.8A Pending CN117940254A (en) 2021-12-06 2022-12-05 Method for generating a motion control model for a wearable device and electronic device for performing the method

Country Status (1)

Country Link
CN (1) CN117940254A (en)

Similar Documents

Publication Publication Date Title
US20230355138A1 (en) Electronic device and system for assisting user motion
CN113752250A (en) Method and device for controlling robot joint, robot and storage medium
US20240033578A1 (en) Method and system for providing exercise program to user
KR20220001666A (en) Hearable device connected electronic device and operating method thereof
CN117940254A (en) Method for generating a motion control model for a wearable device and electronic device for performing the method
EP4360813A1 (en) Method for generating motion control model for wearable apparatus, and electronic apparatus performing said method
US20230226687A1 (en) Method of determining value of parameter for controlling wearable device and electronic device performing the method
CN118354872A (en) Method for determining a value of a parameter for controlling a wearable device and electronic device for performing the method
US20230201668A1 (en) Method of controlling wearable device based on exercise mode and electronic device performing the method
EP4336512A1 (en) Method and system for providing exercise program to user
KR20230085061A (en) Method for generating motion control model fir wearable device and electronic device performing the method
KR20230086573A (en) Method of determining value of parameter for controlling wearable device and electronic device performing the method
CN118201581A (en) Method for controlling wearable device based on exercise mode and electronic device for executing method
KR20230013385A (en) Electronic apparatus and operating method thereof
KR20230121681A (en) Method for determining value of control parameter and electronic device performing the method
KR20240042953A (en) Wearable device and method for controlling the device
CN117769745A (en) Method and system for providing exercise program to user
KR20230101694A (en) Method for controlling wearable device based on exercise mode and electronic device performing the method
KR20230101685A (en) Method for controlling wearable device based on exercise mode and electronic device performing the method
KR20230065875A (en) Method and system for controlling wearable device based on heart rate of user
KR20240047610A (en) Method for outputting reference video based on sensing information of wearable device and electronic device performing the method
KR20240022958A (en) Method for determining gait state and apparatus performing the method
KR20230054254A (en) Method and system for providing exercise programs to user
US20240033575A1 (en) Wearable electronic device for outputting information on exercise, and control method of wearable electronic device
US20220401815A1 (en) Method for providing workout data using a plurality of electronic devices and electronic devices therefor

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication