IP Library Granted Patent US 12,643,230
Granted Patent B2
US 12,643,230 · App. 18/038,645 · Granted Jun 2, 2026

Motion learning system and method for programming at least one robotic device

Inventors: Nicolas Gautier (Le Plessis-Robinson, FR); Bruno Morisset (Le Plessis-Robinson, FR); Vincent Rafin (Le Plessis-Robinson, FR)
Assignee: MBDA FRANCE
B25J9/163B25J9/1658B25J9/1664B25J9/1671B25J13/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,643,230
App. No.
18/038,645
Granted
Jun 2, 2026
Kind
B2
Abstract

The invention relates to a system which comprises a workspace ( 3 ) storage module ( 5 ), at least one pointer ( 6 ) respectively associated with a gripper ( 4 ) of a robotic device ( 2 ), a module ( 8 ) for capturing the trajectory performed by the at least one pointer ( 6 ), a post-processing module ( 10 ) for determining a compatible trajectory of the one or more grippers ( 4 ), and a saving module ( 11 ), configured to save the compatible trajectory of each of the robotic devices ( 2 ).

Claims (55)

1 . A method for learning motion for programming at least one robotic device equipped with at least one effector and having at least one degree of freedom of motion, the robotic device or devices being intended to evolve in a workspace, characterised in that it comprises the following steps:

a storage step, implemented by a workspace storage module, consisting in storing parameters representative of the workspace in which the robotic device or devices are intended to evolve;

at least one step of driving at least one pointer, implemented by at least one user, the user or users driving at least one pointer associated respectively with an effector of a robotic device, the pointer or each of the pointers being driven by the user or users along a trajectory which is intended to be made in the workspace by the effector or by each of the effectors, the pointer or each of the pointers being representative of one or more functions to be made by the effector or effectors with which the pointer or each of the pointers is associated;

a trajectory capture step, implemented by a trajectory capture module, consisting in storing the trajectory made by the pointer or by each of the pointers as well as in storing parameters of the trajectory made by the pointer or by each of the pointers;

a post-processing step, implemented by a post-processing module, consisting in determining for each of the robotic devices:

a trajectory compatible of the effector or effectors with the degree or degrees of freedom of motion of the robotic device or of each of the robotic devices from the trajectory made by the pointer or by each of the pointers stored in the trajectory capture step and

compatible parameters of said compatible trajectory of the effector or effectors from the parameters stored in the trajectory capture step;

a saving step, implemented by a saving module, consisting in saving the compatible trajectory and the compatible parameters of the robotic device or of each of the robotic devices; and

a step for visualizing the trajectory, implemented by a visualisation module for visualizing the trajectory, consisting in visualizing the trajectory made by the pointer or by each of the pointers with respect to the parameters representative of the workspace, the visualisation step comprising an alerting sub-step implemented by an alert sub-module, the alerting sub-step consisting in alerting the user of an incompatible trajectory of the pointer or of at least one of the pointers, the trajectory being incompatible when the degree or the degrees of freedom of the robotic device or devices do not allow said trajectory to be made by the robotic device or devices with which the pointer or pointers are associated.

2 . The method according to claim 1 ,

characterised in that it further comprises a program generation step, implemented by a program generation module, consisting in generating and saving a program from the compatible trajectory and the compatible parameters saved by the saving module, the program having a language compatible with a language allowing the robotic device or devices to be set in motion.

3 . The method according to claim 1 ,

characterised in that the post-processing step comprises:

a first display sub-step, implemented by a first display sub-module consisting in displaying points of the trajectory made by the pointer or by each of the pointers;

a second display sub-step, implemented by a second display sub-module, consisting in displaying the workspace from the parameters representative of the workspace stored in the storage step;

a third display sub-step, implemented by a second display sub-module, consisting in displaying the parameters of the trajectory made by the pointer or by each of the pointers;

an input sub-step, implemented by an input sub-module, consisting in allowing a user to modify points of the trajectory stored in the trajectory capture step and/or to modify the parameters of the trajectory stored in the trajectory capture step in order to obtain said compatible trajectory for the effector or for each of the effectors of the robotic device or of each of the robotic devices and/or said compatible parameters.

4 . The method according to claim 1 ,

characterised in that the post-processing step comprises a simulation sub-step, implemented by a simulation sub-module, consisting in simulating said compatible trajectory of the effector or of each of the effectors of the robotic device or robotic devices as well as the workspace on the basis of parameters representative of the workspace.

5 . The method according to claim 1 ,

characterised in that the post-processing step comprises a reproduction sub-step, implemented by a reproduction sub-module, consisting in transmitting to the robotic device or to the robotic devices control commands representative of the trajectory of the pointer or of each of the pointers to cause the effector or effectors of the robotic device or of each of the robotic devices to simultaneously reproduce the trajectory of the pointer or of each of the pointers driven by the user or the users, in order to obtain said compatible trajectory for the effector or for each of the effectors of the robotic device or of each of the robotic devices and/or said compatible parameters.

6 . The method according to claim 1 ,

characterised in that the alerting sub-step consists in alerting the user of an incompatible trajectory of the pointer or of at least one of the pointers with respect to the parameters representative of the workspace in which the robotic device or devices are intended to evolve.

7 . A motion learning system for programming at least one robotic device equipped with at least one effector and having at least one degree of freedom of motion, wherein the robotic device or devices are intended to evolve in a workspace,

characterised in that it comprises:

a workspace storage module, configured to store parameters representative of the workspace;

at least one pointer, the pointer or each of the pointers being associated respectively with an effector of a robotic device, the pointer or each of the pointers being configured so as to be driven by at least one user according to a trajectory which is intended to be made in the workspace by the effector or by each of the effectors, the pointer or each of the pointers being representative of one or more functions to be carried out by the effector or by the effectors with which the pointer or each of the pointers is associated;

a trajectory capture module configured to store the trajectory made by the pointer or by each of the pointers and to store parameters of the trajectory made by the pointer or by each of the pointers;

a post-processing module, configured to determine for each of the robotic devices:

a compatible trajectory of the effector or effectors with the degree or degrees of freedom of motion of the robotic device or of each of the robotic devices from the trajectory made by the pointer or by each of the pointers stored by the trajectory capture module and

compatible parameters of said compatible trajectory of the effector or effectors from the parameters stored by the trajectory capture module;

a saving module, configured to save the compatible trajectory and the compatible parameters of the robotic device or of each of the robotic devices; and

a visualisation module for visualizing the trajectory, the visualisation module configured to visualise the trajectory made by the pointer or by each of the pointers with respect to the parameters representative of the workspace, the visualisation module comprising an alert sub-module configured to alert the user of an incompatible trajectory of the pointer or of at least one of the pointers, the trajectory being incompatible if the degree or the degrees of freedom of the robotic device or devices do not allow said trajectory to be made by the effector or effectors with which the pointer or pointers are associated.

8 . The system according to claim 7 ,

characterised in that it further comprises a program generation module, configured to generate and save a program from the compatible trajectory and the compatible parameters saved by the saving module, the program having a language compatible with a language allowing a set in motion of the robotic device or devices.

9 . The system according to claim 7 ,

characterised in that the post-processing module comprises:

a first display sub-module, configured to display points of the trajectory made by the pointer or by each of the pointers and stored by the trajectory capture module;

a second display sub-module, configured to display the workspace from parameters representative of the workspace stored by the storage module;

a third display sub-module, configured to display the parameters of the trajectory made by the pointer or by each of the pointers and stored by the trajectory capture module;

an input sub-module, configured to allow a user to modify points of the trajectory stored by the trajectory capture module and/or modify the parameters of the trajectory stored by the trajectory capture module to obtain said compatible trajectory for the effector or for each of the effectors of the robotic device or of each of the robotic devices and/or said compatible parameters.

10 . The system according to claim 7 ,

characterised in that the post-processing module comprises a simulation sub-module, configured to simulate said compatible trajectory of the effector or of each of the effectors of the robotic device or robotic devices and the workspace from parameters representative of the workspace.

11 . The system according to claim 10 ,

characterised in that the simulation sub-module comprises an augmented reality simulation unit.

12 . The system according to claim 7 ,

characterised in that the post-processing module comprises a reproduction sub-module, configured to transmit to the robotic device or to the robotic devices control commands representative of the trajectory of the pointer or of each of the pointers, to cause the effector or effectors of the robotic device or of each of the robotic devices to simultaneously reproduce the trajectory of the pointer or of each of the pointers riven by the user or the users, to obtain said compatible trajectory for the effector or for each of the effectors of the robotic device or of each of the robotic devices and/or said compatible parameters.

13 . The system according to claim 7 ,

characterised in that the visualisation module comprises an augmented reality simulation sub-module.

14 . The system according to claim 7 ,

characterised in that the alert sub-module is configured to alert the user to an incompatible trajectory of the pointer or at least one of the pointers with respect to the parameters representative of the workspace in which the robotic device or devices are intended to evolve.

15 . A robotic system, characterised in that it comprises:

a learning system according to claim 1 ,

the at least one robotic device equipped with the at least one effector and having the at least one degree of freedom of motion, and

an execution module, configured to cause the robotic device or each of the robotic devices to execute the compatible trajectory and the compatible parameters saved by the saving module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2023
From: GAUTIER, NICOLAS; MORISSET, BRUNO; RAFIN, VINCENT
To: MBDA FRANCE
Reel/Frame 063752/0710 →
Priority Claims (1)
FR FR2012363 · Nov 30, 2020 · national
Continuity (1)
Related Publication 20240001542A1 · Jan 4, 2024
References Cited (29)
US 9272418B1 · Guerin et al. · 2016 [cited by applicant]
US 11813749B2 · Wang · 2023 [cited by examiner]
US 20160059407A1 · Sonoda · 2016 [cited by applicant]
US 20190086907A1 · Oestergaard et al. · 2019 [cited by applicant]
US 20190278295A1 · Matsuno et al. · 2019 [cited by applicant]
US 20190321983A1 · Chen et al. · 2019 [cited by applicant]
US 20200180156A1 · Hayaishi et al. · 2020 [cited by applicant]
US 20200316779A1 · Truebenbach · 2020 [cited by examiner]
US 20220161431A1 · Meister · 2022 [cited by examiner]
US 20230278211A1 · Koyama · 2023 [cited by examiner]
CN 210361314U · 2020 [cited by examiner]
JP 2005135095A · 2005 [cited by applicant]
JP 200934813A · 2009 [cited by applicant]
JP 2016047591A · 2016 [cited by applicant]
JP 2019188477A · 2019 [cited by applicant]
WO WO2017085811A1 · 2017 [cited by applicant]
WO WO2017086364A1 · 2017 [cited by applicant]
WO WO2018097223A1 · 2018 [cited by applicant]
WO WO2020073680A1 · 2020 [cited by applicant]
Machine translation of CN210361314U. [cited by examiner]
Hung, Pham Ngoc et al., “ [cited by applicant]
Praveena, Pragathi et al., “ [cited by applicant]
International Search Report and Written Opinion for corresponding PCT Application No. PCT/FR2021/052084, mailed Feb. 11, 2022, Machine Translation of Written Opinion (5 sheets). [cited by applicant]
Safeea, Mohammad, et al., “On-line collision avoidance for collaborative robot manipulators by adjusting off-line generated paths: an industrial use case”, Robotics and Autonomous Systems, vol. 119 (2019) pp. 278-288. [cited by applicant]
Aleotti, Jacopo, et al., “ [cited by applicant]
Billard, Aude, et al., “ [cited by applicant]
Kyrarini, Maria, et al., “ [cited by applicant]
Rahmatizadeh, Rouhollah, et al., “ [cited by applicant]
Wikipedia, “Programming by demonstration”, https://en.wikipedia.org/wiki/Programming_by_demonstration, retrieved Jul. 24, 2024 (5 sheets). [cited by applicant]