Method for controlling an artificial limb, artificial limb and computer readable storage medium
By collecting environmental terrain information to plan the walking pattern and foot trajectory of the prosthesis, and by adjusting the joint angle using Bézier curves, the problem of unnatural walking of the lower limb prosthesis in complex environments was solved, and a stable and flexible walking effect was achieved.
Patent Information
- Application Number
- CN202310254979.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-09
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2043-03-09
AI Technical Summary
Existing lower limb prostheses are difficult to adapt flexibly to complex environments and cannot sense environmental changes, resulting in unnatural walking for users.
By collecting environmental terrain information, the walking pattern and foot trajectory of the prosthesis are planned, and the joint angle is adjusted in combination with Bézier curves to adapt to different environments.
This enables prostheses to allow for stable and flexible walking in complex environments, improving the user's walking experience and adaptability.
Smart Images

Figure CN116421372B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a method for controlling a prosthesis, a prosthesis and a computer-readable storage medium. Background Art
[0002] With the continuous advancement of science and technology, researchers have developed prosthetic limbs to help disabled people resume normal life, including lower limb prostheses to help disabled people with thigh amputations resume normal walking.
[0003] In the related technology, lower limb prostheses can simply simulate the basic movements of people in the process of walking. Lower limb prostheses can help disabled people with thigh amputations to achieve various basic movements such as walking on flat ground and climbing stairs by actively outputting energy, so that people can walk normally.
[0004] However, the lower limb prosthesis in the above-mentioned manner can only perform some simple walking movements according to a fixed pattern, and has low flexibility, so it is difficult to adapt to human movement in a complex environment. Summary of the invention
[0005] The present application provides a method for controlling a prosthesis, a prosthesis, and a computer-readable storage medium, which can enable a person to walk stably and flexibly in different environments. The technical solution is as follows:
[0006] In a first aspect, a method for controlling a prosthesis is provided, the method comprising:
[0007] Collect environmental terrain information;
[0008] determining a walking mode according to the environmental terrain information;
[0009] planning a foot end trajectory according to the walking pattern;
[0010] The joint angle of the prosthesis is controlled according to the foot end trajectory so that the prosthesis walks along the foot end trajectory.
[0011] In the present application, the trajectory of the foot end of the prosthesis when walking is controlled by combining environmental terrain information, so that the prosthesis can adapt to the movement of people in complex environments, allowing people to walk stably and flexibly in different environments.
[0012] Optionally, planning the foot end trajectory according to the walking mode includes:
[0013] According to the walking mode, obtaining a corresponding sample trajectory from a corresponding relationship between the walking mode and the sample trajectory;
[0014] If the walking mode is a flat ground walking mode, determining the foot end trajectory according to the sample trajectory;
[0015] If the walking mode is one of the stair climbing mode, stair descending mode, slope climbing mode, slope descending mode, and crossing raised obstacle mode, the foot end trajectory is determined according to the environmental terrain information and the sample trajectory.
[0016] Optionally, the prosthesis has a gait cycle, and determining the foot end trajectory according to the sample trajectory comprises:
[0017] When the current gait cycle of the prosthesis is the first gait cycle of the prosthesis, or when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is not the walking on flat ground mode, determining the sample trajectory as the foot end trajectory;
[0018] Alternatively, when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is the walking on flat ground mode, the foot end trajectory is determined according to the current walking speed and the sample trajectory.
[0019] Optionally, the sample trajectory is a Bezier curve, the sample trajectory has n+1 control points, and n is an integer greater than or equal to 2;
[0020] The step of determining the foot end trajectory according to the current walking speed and the sample trajectory includes:
[0021] If the difference between the current walking speed and the preset speed is greater than or equal to the speed difference threshold, dividing the current walking speed by the preset speed to obtain a first coefficient;
[0022] Adjust the n+1 control points of the sample trajectory according to the first coefficients to obtain n+1 first control points;
[0023] Generate Bezier curves corresponding to the n+1 first control points as the foot end trajectory.
[0024] Optionally, the sample trajectory is a Bezier curve, the sample trajectory has n+1 control points, and n is an integer greater than or equal to 2;
[0025] The step of determining the foot end trajectory according to the environmental terrain information and the sample trajectory includes:
[0026] determining a second coefficient according to a difference between the environmental terrain information and the preset terrain information;
[0027] Adjust the n+1 control points of the sample trajectory according to the second coefficient to obtain n+1 second control points;
[0028] Generate Bezier curves corresponding to the n+1 second control points as the foot end trajectory.
[0029] Optionally, the foot end trajectory is the foot end trajectory during the swing phase of the gait cycle of the prosthesis;
[0030] Before collecting the environmental terrain information, the method further includes:
[0031] At the end of the stance phase in the gait cycle of the prosthesis, performing the step of collecting environmental terrain information;
[0032] The controlling the joint angle of the prosthesis according to the foot end trajectory comprises:
[0033] The joint angle of the prosthesis during the swing phase of the gait cycle of the prosthesis is controlled according to the foot end trajectory, so that the prosthesis walks according to the foot end trajectory during the swing phase.
[0034] Optionally, controlling the joint angle of the prosthesis according to the foot end trajectory includes:
[0035] Get the target hip joint angle;
[0036] Dividing the target hip joint angle by h to obtain a target angle, where h is a positive integer;
[0037] Determine the coordinates of each of the h+1 position points in the foot-end trajectory, the h+1 position points divide the foot-end trajectory into h segments, the first position point in the h+1 position points is the starting point of the foot-end trajectory, and the h+1th position point in the h+1 position points is the ending point of the foot-end trajectory;
[0038] Let i be 2, and determine the knee joint angle and the ankle joint angle according to the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle;
[0039] Controlling the knee joint of the prosthesis to move to the knee joint angle and controlling the ankle joint of the prosthesis to move to the ankle joint angle, so that the prosthesis walks along the i-1th track among the h tracks;
[0040] Determine whether i is equal to h+1;
[0041] If i is not equal to h+1, set i=i+1, and re-execute the step of determining the knee joint angle and the ankle joint angle based on the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle and subsequent steps until i is equal to h+1.
[0042] Optionally, the foot end trajectory is a Bezier curve, and determining the coordinates of each of the h+1 position points in the foot end trajectory includes:
[0043] Divide j-1 by h to obtain t, where j is an integer greater than or equal to 1 and less than or equal to h+1;
[0044] The m is used as a scale parameter of the Bezier curve, and according to the m, the coordinates of the j-th position point in the foot end trajectory are obtained through the Bezier curve function of the foot end trajectory.
[0045] In a second aspect, a prosthesis is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the method for controlling the prosthesis described in the first aspect.
[0046] According to a third aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method for controlling a prosthesis according to the first aspect is implemented.
[0047] In a fourth aspect, a computer program product comprising instructions is provided, which, when executed on a computer, enables the computer to execute the steps of the method for controlling a prosthesis as described in the first aspect.
[0048] It can be understood that the beneficial effects of the second, third and fourth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0050] Figure 1 This is a schematic diagram of a foot end trajectory when walking on flat ground provided by an embodiment of the present application;
[0051] Figure 2 This is a schematic diagram of a foot trajectory when climbing stairs provided by an embodiment of the present application;
[0052] Figure 3 This is a schematic diagram of a foot end trajectory when going up a slope provided by an embodiment of the present application;
[0053] Figure 4 is a schematic diagram of a foot end trajectory when crossing a raised obstacle provided by an embodiment of the present application;
[0054] Figure 5 This is a schematic diagram of sensor distribution provided in an embodiment of the present application;
[0055] Figure 6 is a flow chart of a method for controlling a prosthesis provided in an embodiment of the present application;
[0056] Figure 7 is a schematic diagram of a gait cycle provided in an embodiment of the present application;
[0057] Figure 8 is a structural diagram of a lower limb prosthesis provided in an embodiment of the present application;
[0058] Fig. 9 is a schematic diagram of three-dimensional point cloud data and binary image provided by an embodiment of the present application;
[0059] Fig.10 is a schematic diagram of a control point provided in an embodiment of the present application;
[0060] Fig.11 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0061] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.
[0062] It should be understood that the "multiple" mentioned in this application refers to two or more. In the description of this application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in order to facilitate the clear description of the technical solution of this application, the words "first" and "second" are used to distinguish between the same items or similar items with basically the same functions and effects. Those skilled in the art can understand that the words "first" and "second" do not limit the quantity and execution order, and the words "first" and "second" do not limit them to be different.
[0063] The phrases such as "one embodiment" or "some embodiments" described in the present application mean that the specific features, structures or characteristics described in the embodiment are included in one or more embodiments of the present application. Therefore, the phrases such as "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments" that appear in the differences in the present application do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. In addition, the terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0064] Before explaining the embodiments of the present application in detail, the application scenarios of the embodiments of the present application are first described.
[0065] According to the second national sample survey of disabled people in 2006, there are 82.96 million disabled people in China, of which about 31% are physically disabled, with a total number of about 24.12 million. Among them, 11.4% of physically disabled people need to install prosthetic limbs, and the proportion of patients with lower limb amputation is as high as 80%. In order to help disabled people resume normal life, researchers have developed lower limb prostheses (also called thigh prostheses) to help disabled people with lower limb amputation resume normal walking.
[0066] In the related art, lower limb prostheses can simply simulate the basic movements of people during walking. Lower limb prostheses can actively output energy to help disabled people with thigh amputations to achieve a variety of basic movements such as walking on flat ground, climbing stairs, and climbing slopes. However, the walking process is a process of mutual cooperation between the user and the lower limb prosthesis. In the related art, during the walking process, the lower limb prosthesis cannot sense changes in the environment and can only use fixed movements to walk, which makes it difficult for users to walk naturally in complex environments.
[0067] To this end, an embodiment of the present application provides a method for controlling a prosthesis, by planning and adjusting the foot-end trajectory of a lower limb prosthesis (hereinafter referred to as a prosthesis) in different environments, so that a person can use the prosthesis to walk in a complex environment in a natural manner. Specifically, environmental terrain information is collected, a walking mode of the prosthesis is selected based on the environmental terrain information, the foot-end trajectory of the prosthesis is planned based on the walking mode, and finally the prosthesis is controlled to complete walking according to the planned foot-end trajectory. In this case, since the foot-end trajectory of the prosthesis when walking is controlled in combination with the environmental terrain information, the prosthesis can adapt to the movement of people in complex environments, so that people can walk stably and flexibly in different environments.
[0068] In some embodiments, before using the prosthesis, sample trajectories corresponding to various walking modes may be obtained. The sample trajectory corresponding to a certain walking mode is a trajectory that the prosthesis can refer to when walking in this walking mode.
[0069] In other words, a correspondence between walking patterns and sample trajectories can be obtained, and the correspondence can include multiple walking patterns and multiple sample trajectories corresponding to the multiple walking patterns. The correspondence can be constructed by a technician, and after the technician has constructed the correspondence, the technician can pre-set the correspondence in the prosthesis to be used, specifically in the processing module in the prosthesis to be used, for use by the prosthesis during walking.
[0070] For example, the environmental terrain may include one or more of flat ground, stairs, slopes, raised obstacles, etc., and accordingly, the walking mode may include one or more of walking on flat ground, going up stairs, going down stairs, going up slopes, going down slopes, crossing raised obstacles, etc.
[0071] Next, the process of determining the sample trajectories corresponding to each walking mode is explained:
[0072] In order to make the prosthesis walk more humanistic, the four contour parameters d1, d2, d3, and d4 are needed to constrain the planned sample trajectory.
[0073] d1 is the distance the end of the prosthesis moves backward relative to the starting point when walking.
[0074] d3 is the distance the end of the prosthesis moves forward relative to the end point when walking.
[0075] d2 is the length from the starting point to the end point of the prosthesis when walking.
[0076] d4 is the height of the highest point of the prosthetic foot trajectory relative to the line connecting the starting point and the ending point.
[0077] Optionally, the four profile parameters d1, d2, d3, and d4 may be obtained in the following two ways.
[0078] The first method was obtained by technicians by querying open source datasets of lower limb biomechanics, including contour parameters under different walking modes.
[0079] The second method is that after querying the open source data set of lower limb biomechanics to obtain the contour parameters under different walking modes, the technicians adjust the contour parameters in the open source data set according to the user's body posture to adapt to the walking of the prosthesis user.
[0080] For example, the meanings of the four profile parameters d1, d2, d3, and d4 in different walking modes in the world coordinate system are as follows:
[0081] Figure 1 This is a schematic diagram of a foot trajectory when walking on flat ground provided in an embodiment of the present application.
[0082] See also Figure 1 ,When walking on flat ground, d2 represents the step length of the prosthesis, d4 is the height of the highest point of the foot end trajectory relative to the flat ground, d1 is the buffer distance at the starting point, and d3 is the buffer distance at the ending point.
[0083] Figure 2 This is a schematic diagram of a foot trajectory when climbing stairs provided in an embodiment of the present application.
[0084] See also Figure 2 ,When climbing stairs, d2 represents the step length of the prosthesis, d4 is the height of the highest point of the foot end trajectory relative to the line between the starting point and the ending point, d1 is the buffer distance at the starting point, and d3 is the buffer distance at the ending point.
[0085] Figure 3 This is a schematic diagram of a foot trajectory when walking up a slope provided in an embodiment of the present application.
[0086] See also Figure 3 , when going up a slope, d2 represents the step length of the prosthesis, d4 represents the height of the highest point of the foot end trajectory relative to the slope surface, d1 represents the buffer distance at the starting point, and d3 represents the buffer distance at the ending point.
[0087] Figure 4 It is a schematic diagram of a foot trajectory when crossing a raised obstacle provided in an embodiment of the present application.
[0088] See also Figure 4 , when crossing a raised obstacle, d2 represents the step length of the prosthesis, d4 represents the height of the highest point of the foot end trajectory relative to the walking surface, d1 represents the buffer distance at the starting point, and d3 represents the buffer distance at the ending point.
[0089] In the embodiment of the present application, the sample trajectory may be a Bezier curve. In this case, the technician first selects a plurality of control points, and then draws a Bezier curve according to the plurality of control points.
[0090] Control points determine the curvature of the Bezier curve.
[0091] For example, select p0(x0, y0), p1(x1, y1), p2(x2, y2)…p n (x n ,y n ) These n+1 control points. Among them, p0(x0, y0) represents the starting point of the Bezier curve, p n (x n ,yn ) represents the end point of the Bezier curve.
[0092] Optionally, according to p0(x0, y0), p1(x1, y1), p2(x2, y2) ... p n (x n ,y n ) The coordinates of these n+1 control points can be used to obtain the curve parameters of the Bezier curve using the following formula.
[0093]
[0094] Among them, B i,n (t) represents the curve parameter of the Bezier curve, p i Represents the coordinates of the control point, t represents the scale parameter of the Bezier curve, and any value of t can determine a position point on the Bezier curve, that is, the coordinates of each position point on the Bezier curve correspond to a value of t.
[0095] Optionally, the coordinates of the position point on the Bezier curve are obtained by the following formula according to the curve parameters of the Bezier curve and the coordinates of the control point.
[0096]
[0097] Among them, p i (x i ,y i ) represents the coordinates of the control point, B i,n (t) represents the curve parameter of the Bezier curve, BP(t) represents the coordinates of the position point on the Bezier curve, and BP(t) can also be called the Bezier curve function.
[0098] Furthermore, when planning the sample trajectory, the Bezier curve needs to meet the foot trajectory requirements of the user when walking normally. Specifically, the selected control point p i (x i ,y i )The Bezier curve needs to meet the following conditions:
[0099] Condition 1: The coordinates of the position points on the Bezier curve need to conform to the trajectory range of the user's foot end trajectory, that is:
[0100]
[0101]
[0102] It should be noted that the sample trajectories in different walking modes are different, so the coordinates of the control points in different walking modes and the values of the four profile parameters d1, d2, d3, and d4 are different. In the embodiment of the present application, for a certain walking mode, the technician first selects the n+1 control points corresponding to this walking mode and the profile parameters in this walking mode, and then draws the Bezier curve according to the n+1 control points corresponding to this walking mode, and determines whether the drawn Bezier curve satisfies the profile parameter constraints in this walking mode, that is, whether it satisfies the above condition one. In this way, the Bezier curves in different walking modes are verified so that the Bezier curves in different walking modes meet the trajectory range of the user's foot end trajectory.
[0103] For example: If the walking mode is flat ground mode, p i (x i ) represents the horizontal coordinate of the control point, d1 represents the maximum distance the foot end moves backward relative to the starting point in the horizontal direction, d2+d3 represents the maximum distance the foot end moves forward relative to the starting point in the horizontal direction, p i (y i ) represents the ordinate of the control point, and d4 represents the maximum height of the highest point of the Bezier curve relative to the flat ground.
[0104] If the walking mode is stair climbing mode, p i (x i ) represents the horizontal coordinate of the control point, d1 represents the maximum distance that the foot end moves backward relative to the starting point in the direction of the line between the starting point and the ending point, d2+d3 represents the maximum distance that the foot end moves forward relative to the starting point in the direction of the line between the starting point and the ending point, p i (y i ) represents the ordinate of the control point, and d4 represents the height of the highest point of the foot end trajectory relative to the line between the starting point and the ending point.
[0105] If the walking mode is stair down mode, p i (x i ) represents the horizontal coordinate of the control point, d1 represents the maximum distance that the foot end moves backward relative to the starting point in the direction of the line between the starting point and the ending point, d2+d3 represents the maximum distance that the foot end moves forward relative to the starting point in the direction of the line between the starting point and the ending point, p i (y i ) represents the ordinate of the control point, and d4 represents the height of the highest point of the foot end trajectory relative to the line between the starting point and the ending point.
[0106] If the walking mode is uphill mode, p i (x i) represents the horizontal coordinate of the control point, d1 represents the maximum distance the foot end moves backward on the slope relative to the starting point, d2+d3 represents the maximum distance the foot end moves forward on the slope relative to the starting point, p i (y i ) represents the ordinate of the control point, and d4 represents the height of the highest point of the foot end trajectory relative to the slope surface.
[0107] If the walking mode is downhill mode, p i (x i ) represents the horizontal coordinate of the control point, d1 represents the maximum distance the foot end moves backward on the slope relative to the starting point, d2+d3 represents the maximum distance the foot end moves forward on the slope relative to the starting point, p i (y i ) represents the ordinate of the control point, and d4 represents the height of the highest point of the foot end trajectory relative to the slope surface.
[0108] If the walking mode is the mode of crossing raised obstacles, p i (x i ) represents the horizontal coordinate of the control point, d1 represents the maximum distance the foot end moves backward on the walking surface relative to the starting point, d2+d3 represents the maximum distance the foot end moves forward on the walking surface relative to the starting point, p i (y i ) represents the ordinate of the control point, and d4 represents the maximum height of the highest point of the Bezier curve relative to the walking surface.
[0109] Condition 2: Any position point on the Bezier curve except the starting point and the end point must satisfy the velocity continuity and acceleration continuity of the curve, that is, the acceleration change rate of the Bezier parameter curve must satisfy the following formula:
[0110]
[0111] Condition 3: BP top (t) represents the highest point of the Bezier parameter curve. The Bezier curve must satisfy:
[0112] v y (BP(0))=0
[0113] v y (BP(1))=0
[0114] v y (BP top (t))=0
[0115] a y (BP top (t))=0
[0116] Among them, v y(BP(0)) represents the velocity in the y-axis direction at the starting point of the Bezier curve, v y (BP(1)) represents the velocity of the end point of the Bezier curve in the y-axis direction, v y (BP top (t)) represents the speed of the highest point of the Bezier curve in the y-axis direction, a y (BP top (t)) represents the acceleration of the highest point of the Bezier curve in the y-axis direction.
[0117] Furthermore, if the Bezier curve in a certain walking mode meets the above conditions, the Bezier curve is used as the sample trajectory corresponding to the walking mode. If the Bezier curve in a certain walking mode does not meet the above conditions, the technician can adjust the coordinates of the control points or the number of control points to redraw the Bezier curve accordingly until the drawn Bezier curve meets the above conditions and obtains the sample trajectory corresponding to the walking mode.
[0118] Optionally, after obtaining the sample trajectories corresponding to each walking mode, that is, obtaining the correspondence between the walking mode and the sample trajectories, the technician can also input the correspondence into the prosthesis. When the user walks, the prosthesis can switch to different walking modes according to the collected environmental terrain information to use the sample trajectories corresponding to the walking mode to plan the foot end trajectory.
[0119] The method for controlling a prosthesis provided in an embodiment of the present application is explained in detail below.
[0120] Figure 5 is a schematic diagram of sensor distribution provided by an embodiment of the present application. Figure 5 The sensors provided may include: a first inertial sensor, a second inertial sensor, and a depth sensor.
[0121] The depth sensor can be arranged on the prosthesis to detect the distance between the object and the depth sensor. In the embodiment of the present application, the depth sensor can be used to collect environmental terrain information. For example, the depth sensor can be a depth camera.
[0122] The first inertial sensor may be disposed on the healthy thigh to detect the hip joint angle when the healthy thigh swings.
[0123] The second inertial sensor may be disposed on the affected thigh to detect the hip joint angle when the affected thigh swings.
[0124] Figure 6 is a flow chart of a method for controlling a prosthesis provided in an embodiment of the present application. The method is applied to a prosthesis, for example, it can be applied to a processing module in a lower limb prosthesis, see Figure 6, the method comprises the following steps:
[0125] Step 601: The prosthesis collects environmental terrain information.
[0126] The environmental terrain information is used to represent the ground morphology and undulation characteristics. Optionally, the environmental terrain information includes flat ground information, stair information, slope information, raised obstacle information, etc. Among them, the stair information may include the width and height of the stairs, the slope information may include the slope of the slope, etc., and the raised obstacle information may include the width and height of the raised obstacle, etc.
[0127] Optionally, the operation of step 601 may be: receiving environmental terrain data sent by a depth sensor installed on the prosthesis, for example, the environmental terrain data may be three-dimensional point cloud data; converting the environmental terrain data into a binary image, and acquiring environmental terrain information based on the binary image.
[0128] Three-dimensional point cloud data is used to represent the characteristic information of objects in space. Specifically, the coordinates and distribution of objects in space can be represented by a massive set of points. By drawing a large number of points and forming a data set with these points, a three-dimensional model can be established to represent the surface characteristics of the space.
[0129] It should be noted that the embodiment of the present application can collect environmental terrain information at the end of the support phase of the gait cycle of the prosthesis.
[0130] The gait cycle is the process from one side of the foot touching the ground to the other side of the foot touching the ground again during walking. The gait cycle is divided into the stance phase and the swing phase.
[0131] The stance phase refers to the time when the lower limbs are in contact with the ground and bear gravity, accounting for 60% of the gait cycle.
[0132] The swing phase refers to the time from the lower limb leaving the ground and stepping forward to landing again, which accounts for 40% of the walking cycle.
[0133] In order to enable the user to walk continuously, it is necessary to collect environmental terrain information at the end of the swing phase of the gait cycle of the healthy thigh, that is, at the end of the support phase of the gait cycle of the prosthesis, and plan the foot trajectory of the next swing phase of the prosthesis based on this to enable the prosthesis to walk during the swing phase.
[0134] Step 602: The prosthesis determines a walking mode according to the environmental terrain information.
[0135] Optionally, the operation of step 602 may be: the prosthesis identifies the collected environmental terrain information to determine a walking mode corresponding to the environmental terrain information.
[0136] If the environmental terrain information is flat ground information, the walking mode is determined to be a flat ground walking mode.
[0137] If the environmental terrain information is stair information, the stair information is identified to determine whether the walking mode is a stair ascending mode or a stair descending mode.
[0138] If the environmental terrain information is slope information, the slope information is identified to determine whether the walking mode is an up-slope mode or a down-slope mode.
[0139] If the environmental terrain information is raised obstacle information, the walking mode is determined to be a raised obstacle crossing mode.
[0140] Step 603: The prosthesis plans the foot trajectory according to the walking mode.
[0141] In order to ensure that the prosthesis can adapt to the user's walking in different environmental terrains, the corresponding walking mode can be selected according to different environmental terrain information and the foot end trajectory under the walking mode can be planned.
[0142] Optionally, the operation of step 603 may be: the prosthesis obtains a corresponding sample trajectory from the correspondence between the walking mode and the sample trajectory according to the walking mode; if the walking mode is a flat ground mode, the foot end trajectory is determined according to the sample trajectory; if the walking mode is one of the climbing stairs mode, descending stairs mode, climbing slope mode, descending slope mode, and crossing raised obstacle mode, the foot end trajectory is determined according to the environmental terrain information and the sample trajectory.
[0143] Optionally, the prosthesis has a gait cycle. Figure 7 is a schematic diagram of a gait cycle provided in an embodiment of the present application. Figure 7 , a gait cycle is divided into Figure 7 The swing phase and Figure 7 The stance phase shown in (b) starts from the swing phase and ends in the stance phase, wherein θ1 and θ2 represent the thigh angles (i.e., hip joint angles) in the early and late swing phases, respectively, and θ3 and θ4 represent the thigh angles in the early and late stance phases, respectively.
[0144] Optionally, when the walking mode is the walking on flat ground mode, the operation of determining the foot-end trajectory based on the sample trajectory may be: when the walking mode is the walking on flat ground mode, when the current gait cycle of the prosthesis is the first gait cycle of the prosthesis, or when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is not the walking on flat ground mode, the sample trajectory is determined as the foot-end trajectory; or, when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is the walking on flat ground mode, the foot-end trajectory is determined based on the current walking speed and the sample trajectory.
[0145] The current gait cycle of the prosthesis is the first gait cycle of the prosthesis, or the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is not the walking mode on flat ground, which means that the user has just started walking or the user has walked in a flat ground environment. In order to ensure the stability of the user's walking, the sample trajectory is directly determined as the foot end trajectory.
[0146] When the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is the walking mode on flat ground, the prosthesis will detect the current walking speed. Specifically, when the user is walking on flat ground, he or she will adjust his or her walking speed according to different scenarios. For example, when the user is crossing the road, the user will adjust his or her walking speed according to the remaining time of the traffic light in order to cross the road smoothly. In this case, in order to make the user walk more coordinated and natural, the prosthesis will determine the foot end trajectory according to the user's current walking speed and the sample trajectory, so that the prosthesis can walk more in line with the user's wishes.
[0147] Optionally, the sample trajectory is a Bezier curve, and the sample trajectory has n+1 control points, where n is an integer greater than or equal to 2. The operation of the prosthesis determining the foot-end trajectory according to the current walking speed and the sample trajectory may be: if the difference between the current walking speed and the preset speed is less than the speed difference threshold, the sample trajectory is determined as the foot-end trajectory. If the difference between the current walking speed and the preset speed is greater than or equal to the speed difference threshold, the current walking speed is divided by the preset speed to obtain a first coefficient; the n+1 control points of the sample trajectory are adjusted according to the first coefficient to obtain n+1 first control points; and the Bezier curves corresponding to the n+1 first control points are generated as the foot-end trajectory.
[0148] The preset speed is the normal walking speed for reference when planning the sample trajectory corresponding to the flat ground mode.
[0149] Optionally, before determining whether the difference between the current walking speed and the preset speed is greater than or equal to the speed difference threshold, the current walking speed needs to be obtained. The current walking speed can be determined by the user's step length and the duration of a gait cycle. The user's step length can be calculated by the leg length of the healthy thigh and the thigh angle of the healthy thigh during a gait cycle.
[0150] For example, see Figure 7 , the step length is calculated by the thigh swing θ1, θ2, θ3, θ4 and the thigh length during the gait cycle. The calculation formula of the step length is as follows:
[0151] SL=L(sin(θ1)+sin(θ2)+sin(θ3)+Lsin(θ4))
[0152] Among them, L is the leg length of the healthy thigh, which can be obtained by measurement; θ1 is the thigh angle in the early swing phase, θ2 is the thigh angle in the late swing phase, θ3 is the thigh angle in the early support phase, and θ4 is the thigh angle in the late support phase, which can be measured by an inertial sensor; SL is the user's step length.
[0153] After the step length is calculated, the user's current walking speed can be calculated using the following formula:
[0154]
[0155] Wherein, v is the user's current walking speed; T is the duration of a gait cycle, which can be measured by an inertial sensor; and SL is the user's step length.
[0156] After determining the current walking speed of the user, the difference between the current walking speed of the user and the preset speed is calculated and compared with the speed difference threshold.
[0157] If the difference between the current walking speed and the preset speed is less than the speed difference threshold, it means that the user's walking speed does not change much and is close to the normal walking speed, then the sample trajectory can be directly determined as the foot end trajectory.
[0158] If the difference between the current walking speed and the preset speed is greater than or equal to the speed difference threshold, it means that the user's walking speed has changed greatly and is far from the normal walking speed. The sample trajectory can be adjusted according to the ratio of the current walking speed to the preset speed (i.e., the first coefficient) to obtain the foot-end trajectory so that the foot-end trajectory can adapt to the user's current walking speed.
[0159] For example, the speed difference threshold is 0.2v 正常 , where v 正常 Indicates the preset speed. If the difference between the current walking speed and the preset speed is greater than or equal to 0.2v 正常 , then the first coefficient is determined by the following formula:
[0160] k g =v 实时 / v 正常
[0161] Among them, k g represents the first coefficient, v 实时 Indicates the current walking speed.
[0162] The n+1 control points of the sample trajectory are adjusted according to the first coefficient to obtain n+1 first control points. The Bezier curve corresponding to the n+1 first control points is the foot end trajectory.
[0163] For example, the calculation formula of the coordinates of the first control point is as follows:
[0164] p′ gi (x′ gi , y′ gi )=p gi (k g x gi ,y gi ), i∈[0,n]
[0165] Among them, p′ gi (x′ gi , y′ gi ) represents the coordinates of the first control point, k g represents the first coefficient, p gi (x gi ,y gi ) represents the coordinates of the control points of the sample trajectory.
[0166] In this way, the current walking speed is compared with the preset speed, and the foot trajectory is adjusted in real time accordingly, which can meet the user's walking intention and improve the user's walking experience.
[0167] Optionally, the sample trajectory is a Bezier curve, and the sample trajectory has n+1 control points, where n is an integer greater than or equal to 2. When the walking mode is one of the stair climbing mode, the stair descending mode, the slope ascending mode, the slope descending mode, and the raised obstacle crossing mode, the operation of the prosthesis determining the foot end trajectory according to the environmental terrain information and the sample trajectory may be: determining a second coefficient according to a difference between the environmental terrain information and the preset terrain information; adjusting the n+1 control points of the sample trajectory according to the second coefficient to obtain n+1 second control points; and generating a Bezier curve corresponding to the n+1 second control points as the foot end trajectory.
[0168] The preset terrain information is standard environment terrain information that is referenced when planning the sample trajectory.
[0169] When the user is walking, the prosthesis will collect environmental terrain information in real time, and select a walking mode according to the environmental terrain information. The prosthesis will obtain a second coefficient according to the difference between the environmental terrain information and the preset terrain information corresponding to the sample trajectory, and adjust the sample trajectory according to the second coefficient to obtain the foot-end trajectory. Specifically, the sample trajectories corresponding to the walking modes of the stair climbing mode, stair descending mode, slope ascending mode, slope descending mode, and crossing raised obstacle mode are established with reference to the preset terrain information and are not applicable to all environmental terrains. For example, taking the slope as an example, the sample trajectory corresponding to the slope ascending mode is established with reference to the standard slope gradient (i.e., the preset slope gradient). If the slope gradient of the user's current walking is greater than the preset slope gradient of the sample trajectory, then walking with the sample trajectory as the foot-end trajectory will result in a poor walking experience for the user. Therefore, it is necessary to adjust the sample trajectory according to the difference between the environmental terrain information and the preset terrain information to obtain the foot-end trajectory. In this way, the user can walk more safely and stably in complex environmental terrains.
[0170] For example, if the environmental terrain information is stair information, the second coefficient may be determined by the following formula according to the stair width and stair height included in the environmental terrain information and the preset stair width and preset stair height of the sample trajectory:
[0171] k sH =ΔH / H
[0172] k sW =ΔW / W
[0173] Among them, k sH is the second coefficient of stair height, k sW is the second coefficient of the stair width, H is the preset stair height of the sample trajectory, ΔH is the difference between the stair height contained in the environmental terrain information and the preset stair height, W is the preset stair width of the sample trajectory, and ΔW is the difference between the stair width contained in the environmental terrain information and the preset stair width.
[0174] After the second coefficient is determined, n+1 control points of the sample trajectory corresponding to the stair-climbing mode or the stair-descending mode are adjusted according to the second coefficient to obtain n+1 second control points.
[0175] For example, the coordinates of the second control point are calculated as follows:
[0176] p′ si (x′ si , y′ si )=p si (k sW x si , k sH y si ), i = [0, n]
[0177] Among them, p′ si (x′ si , y′ si ) is the coordinate of the second control point, k sH is the second coefficient of stair height, k sW is the second coefficient of the stair width, p si (x si ,y si ) are the coordinates of the control points of the sample trajectory.
[0178] If the environmental terrain information is raised obstacle information, the second coefficient may be determined by the following formula according to the raised obstacle width and raised obstacle height contained in the environmental terrain information and the preset raised obstacle width and preset raised obstacle height of the sample trajectory:
[0179] k sH =ΔH / H
[0180] k sW =ΔW / W
[0181] Among them, k sH is the second coefficient of the height of the raised obstacle, k sW is the second coefficient of the raised obstacle width, H is the preset raised obstacle height of the sample trajectory, ΔH is the difference between the raised obstacle height contained in the environmental terrain information and the preset raised obstacle height, W is the preset raised obstacle width of the sample trajectory, and ΔW is the difference between the raised obstacle width contained in the environmental terrain information and the preset raised obstacle width.
[0182] After the second coefficient is determined, n+1 control points of the sample trajectory corresponding to the mode crossing the raised obstacle may be adjusted according to the second coefficient to obtain n+1 second control points.
[0183] For example, the calculation formula of the coordinates of the second control point is as follows:
[0184] p′ si (x′ si , y′ si )=p si (k sW x si , k sH y si ), i = [1, n]
[0185] Among them, p′ si (x′ si , y′ si ) is the coordinate of the second control point, k sH is the second coefficient of the height of the raised obstacle, ksW is the second coefficient of the width of the raised obstacle, p si (x si ,y si ) are the coordinates of the control points of the sample trajectory.
[0186] If the environmental terrain information is slope information, the second coefficient may be determined by the following formula according to the slope gradient included in the environmental terrain information and the preset slope gradient of the sample trajectory:
[0187]
[0188] Among them, k e is the second coefficient of the slope gradient, is the preset slope of the sample trajectory, It is the difference between the slope gradient included in the environmental terrain information and the preset slope gradient.
[0189] After the second coefficient is determined, n+1 control points of the sample trajectory corresponding to the up-slope mode or the down-slope mode may be adjusted according to the second coefficient to obtain n+1 second control points.
[0190] For example, the calculation formula of the coordinates of the second control point is as follows:
[0191]
[0192] Among them, p′ ei (x′ ei , y′ ei ) is the coordinate of the second control point, k e is the second coefficient of the slope, p ei (x ei ,y ei ) are the coordinates of the control points of the sample trajectory.
[0193] In this way, the sample trajectory is adjusted according to the difference between the environmental terrain information and the preset terrain information to obtain the foot end trajectory, so that the foot end trajectory that is more suitable for the current environmental terrain can be obtained.
[0194] Step 604: The prosthesis controls the joint angles of the prosthesis according to the foot end trajectory, so that the prosthesis walks along the foot end trajectory.
[0195] The joint angle refers to the angle at which the knee and ankle joints of the prosthesis bend when walking.
[0196] The user's walking is a process of cooperation between the hip joint, knee joint and ankle joint. Therefore, the prosthesis can be made to walk along the foot end trajectory by controlling the joint angle of the prosthesis according to the foot end trajectory.
[0197] In some embodiments, the operation of controlling the joint angle of the prosthesis according to the foot end trajectory may include the following steps (1) to (8):
[0198] (1) The prosthesis obtains the target hip joint angle.
[0199] The target hip angle is the hip angle of the unaffected thigh during the swing phase. The target hip angle is estimated as the hip angle of the next affected thigh during the swing phase.
[0200] (2) Divide the target hip joint angle by h to obtain the target angle, where h is a positive integer.
[0201] The foot end trajectory of a gait cycle corresponds to the swing angle of the hip joint in this gait cycle, that is, in a gait cycle, after the hip joint swings to a certain angle, the foot end correspondingly reaches a position point corresponding to the hip joint angle. Divide the target hip joint angle into h parts, each with equal degrees, and the corresponding foot end trajectory is also divided into h segments, and the h segment trajectory corresponds to h+1 position points. For example, h can be set in advance by the technician.
[0202] (3) Determine the coordinates of each of the h+1 position points in the foot end trajectory. The h+1 position points divide the foot end trajectory into h segments. The first position point among the h+1 position points is the starting point of the foot end trajectory, and the h+1th position point among the h+1 position points is the ending point of the foot end trajectory.
[0203] Optionally, the foot-end trajectory is a Bezier curve, and the operation of determining the coordinates of each of the h+1 position points in the foot-end trajectory can be: dividing j-1 by h to obtain m, where j is an integer greater than or equal to 1 and less than or equal to h+1; using m as a scale parameter of the Bezier curve, and according to m, using the Bezier curve function of the foot-end trajectory to obtain the coordinates of the jth position point in the foot-end trajectory.
[0204] The foot end trajectory is divided into h segments. Correspondingly, the foot end trajectory will have h+1 position points, each position point corresponds to a proportional parameter point, that is, the proportional parameter is also divided into h parts. In this case, the proportional parameter point corresponding to the jth position point is (i.e. m), so substituting m as the scale parameter into the Bezier curve function can obtain the coordinates of the jth position point.
[0205] (4) Let i be 2.
[0206] Since the first position point is the initial point of the foot end trajectory, when walking according to the foot end trajectory, the initial position point to be reached is the second position point, so i is initialized to 2.
[0207] (5) Determine the knee joint angle and the ankle joint angle based on the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle.
[0208] The i-th position point is the next position point to be reached, and i-1 times the target angle is the hip joint angle expected to appear when reaching the i-th position point. Therefore, based on the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle, the knee joint angle and ankle joint angle that need to be controlled to reach the i-th position point can be determined.
[0209] Optionally, the knee joint angle and the ankle joint angle can be obtained by kinematic inverse analysis based on the coordinates of the i-th position point and i-1 times the target angle. For example, the calculation formulas for the knee joint angle and the ankle joint angle are as follows:
[0210]
[0211] θ3=arccos(cosθ1p x +sinθ1p y )-θ1
[0212] Among them, θ1, θ2, and θ3 represent the hip joint angle (i.e., i-1 times the target angle), knee joint angle, and ankle joint angle, respectively; a1 and a2 are the thigh length and calf length of the prosthesis, respectively, and a3 is the foot length of the prosthesis. a1, a2, and a3 can be obtained by measurement; p x 、p y are the i-th position point p i (x i ,y i )’s horizontal and vertical coordinates.
[0213] (6) Controlling the knee joint of the prosthesis to move to the knee joint angle and controlling the ankle joint of the prosthesis to move to the ankle joint angle, so that the prosthesis walks along the i-1th trajectory among the h trajectories.
[0214] After the prosthesis walks along the i-1th trajectory among the h-segment trajectory, the prosthetic foot will reach the i-th position point.
[0215] (7) Determine whether i is equal to h+1.
[0216] To judge whether i is equal to h+1 is to judge whether the prosthetic foot has reached the h+1th position point, that is, to judge whether the prosthetic has completed walking of all trajectories in the h-segment trajectory.
[0217] (8) If i is not equal to h+1, set i=i+1 and repeat the above steps (5) to (7) until i is equal to h+1.
[0218] If i is not equal to h+1, it means that the prosthesis has not completed all the trajectories in the h-segment trajectory. At this time, let i=i+1 and re-execute the above steps (5) to (7) so that the prosthesis can continue to complete the next trajectory in the h-segment trajectory. If i is equal to h+1, it means that the prosthesis has completed all the trajectories in the h-segment trajectory, and the operation can be terminated.
[0219] In other embodiments, the foot end trajectory is the foot end trajectory during the swing phase of the prosthesis's gait cycle. In this case, the operation of controlling the joint angle of the prosthesis according to the foot end trajectory may be: controlling the joint angle of the prosthesis during the swing phase of the prosthesis's gait cycle according to the foot end trajectory, so that the prosthesis walks according to the foot end trajectory during the swing phase.
[0220] In this case, the target hip joint angle in step (1) is obtained at the end of the swing phase of the healthy thigh, that is, at the beginning of the swing phase of the affected thigh. In this way, through steps (1) to (8), the prosthesis can be controlled to walk according to the foot end trajectory during the swing phase.
[0221] Figure 8 is a structural diagram of a lower limb prosthesis provided in an embodiment of the present application, see Figure 8 The lower limb prosthesis includes: a receiving cavity, a knee joint actuator, a power button, a processing module, and an ankle joint actuator.
[0222] The receiving cavity is used to place the affected thigh.
[0223] The processing module is used to plan the foot trajectory and control the prosthesis walking.
[0224] The knee joint actuator is used to receive the control instructions sent by the processing module, and control the knee joint of the prosthesis to move to the corresponding knee joint angle according to the control instructions.
[0225] The ankle joint actuator is used to receive the control instruction sent by the processing module, and control the ankle joint of the prosthesis to move to the corresponding ankle joint angle according to the control instruction.
[0226] Specifically, after planning the foot end trajectory, the processing module obtains the knee joint angle and the ankle joint angle according to the kinematic inverse solution, and then sends a first control instruction carrying the knee joint angle to the knee joint actuator, and sends a second control instruction carrying the ankle joint angle to the ankle joint actuator. After receiving the first control instruction, the knee joint actuator controls the knee joint to move to the knee joint angle. After receiving the second control instruction, the ankle joint actuator controls the ankle joint to move to the ankle joint angle.
[0227] The following is an example of a user walking on stairs. The contour parameters are d1=75mm, d2=500mm, d3=75mm, d4=30mm, and the number of control points is 12.
[0228] When the user goes up the stairs, the depth sensor collects the stair data, which can be Fig. 9 The 3D point cloud data shown in Figure (a) is sent to the processing module. The processing module converts the 3D point cloud data into Fig. 9 According to the binary image shown in Figure (b) in FIG. 1 , the height of the stairs is 14.6 cm and the width of the stairs is 27.9 cm.
[0229] After determining the stair height and stair width, the processing module determines that the walking mode is the stair climbing mode, and then determines the second coefficient according to the difference between the preset stair height and preset stair width of the sample trajectory corresponding to the stair climbing mode and the stair width and stair height of the real-time environment terrain information, and adjusts the coordinates of the control point of the sample trajectory according to the second coefficient, see Fig.10 The coordinates of the 12 adjusted control points are (-250mm, 0), (-300mm, 0), (-325mm, 30mm), (-325mm, 30mm), (-325mm, 30mm), (0, 30mm), (0, 30mm), (0, 30mm), (325mm, 36mm), (325mm, 36mm) (300mm, 0), (250mm, 0), and a Bezier curve is drawn based on the 12 control points, which is the foot end trajectory. Afterwards, the processing module performs kinematic inverse solution based on the foot end trajectory and the hip joint angle to obtain the knee joint angle and the ankle joint angle, and controls the knee joint and the ankle joint to move to the knee joint angle and the ankle joint angle respectively, so that the prosthesis can complete the stair climbing process according to the foot end trajectory.
[0230] In the embodiment of the present application, the prosthesis collects environmental terrain information, determines the walking mode according to the environmental terrain information, and plans the foot end trajectory according to the walking mode. Afterwards, the joint angle of the prosthesis is controlled according to the foot end trajectory, so that the prosthesis walks according to the planned foot end trajectory. In this case, since the foot end trajectory of the prosthesis when walking is controlled in combination with the environmental terrain information, the prosthesis can adapt to the movement of people in complex environments, so that people can walk stably and flexibly in different environments.
[0231] Fig.11 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. Fig.11As shown, the computer device 11 includes: a processor 110, a memory 111, and a computer program 112 stored in the memory 111 and executable on the processor 110. When the processor 110 executes the computer program 112, the steps in the method for controlling a prosthesis in the above embodiment are implemented.
[0232] The computer device 11 may be a general-purpose computer device or a special-purpose computer device. In a specific implementation, the computer device 11 may be a prosthesis, and the embodiment of the present application does not limit the type of the computer device 11. Those skilled in the art will understand that Fig.11 This is only an example of the computer device 11 and does not constitute a limitation on the computer device 11. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components, such as input and output devices, network access devices, etc.
[0233] The processor 110 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0234] In some embodiments, the memory 111 may be an internal storage unit of the computer device 11, such as a hard disk or memory of the computer device 11. In other embodiments, the memory 111 may also be an external storage device of the computer device 11, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the computer device 11. Further, the memory 111 may also include both an internal storage unit of the computer device 11 and an external storage device. The memory 111 is used to store an operating system, an application program, a boot loader, data, and other programs. The memory 111 may also be used to temporarily store data that has been output or is to be output.
[0235] An embodiment of the present application also provides a computer device, which includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor, and when the processor executes the computer program, the steps in any of the above-mentioned method embodiments are implemented.
[0236] An embodiment of the present application further provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.
[0237] An embodiment of the present application provides a computer program product, which, when executed on a computer, enables the computer to execute the steps in the above-mentioned method embodiments.
[0238] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above method embodiments, which can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of the above method embodiments can be implemented. Among them, the computer program includes computer program code, which can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device that can carry the computer program code to the camera / terminal device, recording medium, computer memory, ROM (Read-Only Memory), RAM (Random Access Memory), CD-ROM (Compact Disc Read-Only Memory), magnetic tape, floppy disk and optical data storage device. The computer-readable storage medium mentioned in the present application can be a non-volatile storage medium, in other words, it can be a non-transient storage medium.
[0239] It should be understood that all or part of the steps to implement the above embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The computer instructions can be stored in the above-mentioned computer readable storage medium.
[0240] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0241] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0242] In the embodiments provided in the present application, it should be understood that the disclosed devices / computer equipment and methods can be implemented in other ways. For example, the device / computer equipment embodiments described above are only schematic, for example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0243] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0244] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A method for controlling a prosthesis, characterized in that: The method comprises: Collect environmental terrain information; determining a walking mode according to the environmental terrain information; According to the walking mode, a corresponding sample trajectory is obtained from a corresponding relationship between the walking mode and the sample trajectory, wherein the sample trajectory is a Bezier curve, and the sample trajectory has n+1 control points, where n is an integer greater than or equal to 2; If the walking mode is one of the stair climbing mode, stair descending mode, slope climbing mode, slope descending mode, and crossing raised obstacle mode, a second coefficient is determined according to the difference between the environmental terrain information and the preset terrain information; the n+1 control points of the sample trajectory are adjusted according to the second coefficient to obtain n+1 second control points; and a Bezier curve corresponding to the n+1 second control points is generated as the foot end trajectory; The joint angle of the prosthesis is controlled according to the foot end trajectory so that the prosthesis walks along the foot end trajectory.
2. The method according to claim 1, characterized in that After obtaining the corresponding sample trajectory from the corresponding relationship between the walking mode and the sample trajectory according to the walking mode, the method further includes: If the walking mode is a flat ground walking mode, the foot end trajectory is determined according to the sample trajectory.
3. The method according to claim 2, characterized in that The prosthesis has a gait cycle, and determining the foot end trajectory according to the sample trajectory includes: When the current gait cycle of the prosthesis is the first gait cycle of the prosthesis, or when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is not the walking on flat ground mode, determining the sample trajectory as the foot end trajectory; Alternatively, when the current gait cycle of the prosthesis is not the first gait cycle of the prosthesis and the walking mode of the previous gait cycle of the prosthesis is the walking on flat ground mode, the foot end trajectory is determined according to the current walking speed and the sample trajectory.
4. The method according to claim 3, characterized in that The step of determining the foot end trajectory according to the current walking speed and the sample trajectory includes: If the difference between the current walking speed and the preset speed is greater than or equal to the speed difference threshold, dividing the current walking speed by the preset speed to obtain a first coefficient; Adjust the n+1 control points of the sample trajectory according to the first coefficients to obtain n+1 first control points; Generate Bezier curves corresponding to the n+1 first control points as the foot end trajectory.
5. The method according to any one of claims 1 to 4, characterized in that: The foot end trajectory is the foot end trajectory during the swing phase of the gait cycle of the prosthesis; Before collecting the environmental terrain information, the method further includes: At the end of the stance phase in the gait cycle of the prosthesis, performing the step of collecting environmental terrain information; The controlling the joint angle of the prosthesis according to the foot end trajectory comprises: The joint angle of the prosthesis during the swing phase of the gait cycle of the prosthesis is controlled according to the foot end trajectory, so that the prosthesis walks according to the foot end trajectory during the swing phase.
6. The method according to any one of claims 1 to 4, characterized in that: The controlling the joint angle of the prosthesis according to the foot end trajectory comprises: Get the target hip joint angle; Dividing the target hip joint angle by h to obtain a target angle, where h is a positive integer; Determine the coordinates of each of the h+1 position points in the foot-end trajectory, the h+1 position points divide the foot-end trajectory into h segments, the first position point in the h+1 position points is the starting point of the foot-end trajectory, and the h+1th position point in the h+1 position points is the ending point of the foot-end trajectory; Let i be 2, and determine the knee joint angle and the ankle joint angle according to the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle; Controlling the knee joint of the prosthesis to move to the knee joint angle and controlling the ankle joint of the prosthesis to move to the ankle joint angle, so that the prosthesis walks along the i-1th track among the h tracks; Determine whether i is equal to h+1; If i is not equal to h+1, set i=i+1, and re-execute the step of determining the knee joint angle and the ankle joint angle based on the coordinates of the i-th position point among the h+1 position points and i-1 times the target angle and subsequent steps until i is equal to h+1.
7. The method according to claim 6, characterized in that The foot end trajectory is a Bezier curve, and determining the coordinates of each of the h+1 position points in the foot end trajectory includes: Divide j-1 by h to obtain m, where j is an integer greater than or equal to 1 and less than or equal to h+1; The m is used as a scale parameter of the Bezier curve, and according to the m, the coordinates of the j-th position point in the foot end trajectory are obtained through the Bezier curve function of the foot end trajectory.
8. A prosthesis, characterized in that: The prosthesis comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the computer program implements the method according to any one of claims 1 to 7 when executed by the processor.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Lower limb exoskeleton gait planning method and system based on gravity center stability
CN114469655A
Above-knee prosthesis controlled by healthy leg
JP2005230207A
Hybrid terrain-adaptive lower-extremity systems
US20100114329A1
Impedance Parameter Power Control for Lower Limb Assistive Device
US20150127119A1