Method, apparatus, device, medium and product for creating a work station
A language model simplifies the creation of pick-and-place work stations by allowing users to input requirements in natural language, automating the simulation and optimization process to reduce time and effort.
Patent Information
- Application Number
- PCT/CN2024/094518
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-21
- Publication Date
- 2025-11-27
AI Technical Summary
The process of designing and optimizing pick-and-place work stations for pick-and-place robots is time-consuming and requires extensive manual input of complex data, leading to increased user effort and time costs due to repeated debugging and parameter modification.
A language model is used to simplify the creation of work stations by allowing users to input requirements in natural language, which automatically generates optimized layouts and simulation results through a natural language processing (NLP) model and application programming interface (API).
This approach significantly reduces the time and effort required to create and optimize work stations by automating the simulation process, enabling users to quickly generate and refine layouts using natural language inputs.
Smart Images

Figure CN2024094518_27112025_PF_FP_ABST
Abstract
Description
METHOD, APPARATUS, DEVICE, MEDIUM AND PRODUCT FOR CREATING A WORK STATIONFIELD
[0001] Embodiments of the present disclosure generally relate to the field of computer technology and in particular, to a method, an apparatus, an electronic device, a computer-readable medium and a computer program product for creating a work station.BACKGROUND
[0002] A pick-and-place robot is a type of industrial robot designed for automated picking and placing items. The pick-and-place robots are widely used in various industries, including manufacturing, e-commerce, pharmaceuticals, and the food and beverage sector. They can perform repetitive and monotonous tasks with high efficiency and precision. These robots use mechanical arms and grippers to quickly and accurately pick up items and place them in designated locations, thereby enhancing productivity and reducing manual labor.
[0003] A work station associated with pick-and-place robots is a working area comprising one or more pick-and-place robots along with their control systems, auxiliary equipment, and other peripheral devices. These workstations are designed to be flexible and customizable to meet the specific needs of different applications and workpieces.SUMMARY
[0004] In general, various example embodiments of the present disclosure provide a method, an apparatus, an electronic device, a computer-readable storage device, and a computer program product for creating a work station.
[0005] In a first aspect, it is provided a method for creating a work station. The method comprises receiving a user input to create the work station, wherein the user input comprises a prompt for a language model representing a plurality of requirements for the work station, and wherein the work station is used for picking and placing items on at least one conveyor by at least one robot. The method further comprises obtaining, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. The method further comprises creating the work station for the plurality of requirements based on the plurality of parameters.
[0006] In a second aspect, it is provided an apparatus for creating a work station. The apparatus comprises a receiving module configured to receive a user input to create the work station, wherein the user input comprises a prompt for a language model representing a plurality of requirements for the work station, and wherein the work station is used for picking and placing items on at least one conveyor by at least one robot. The apparatus further comprises an obtaining module configured to obtain, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. The apparatus further comprises a creating module configured to create the work station for the plurality of requirements based on the plurality of parameters.
[0007] In a third aspect, it is provided an electronics device. The electronics device comprises a processor; and a memory coupled to the processor, wherein the memory has instructions stored therein, and the instructions, when executed by the processor, cause the device to execute actions of the first aspect.
[0008] In a forth aspect, it is provided a computer-readable medium. The computer-readable medium comprises instructions stored therein, which when executed by a processor, cause the processor to perform methods of the first aspect.
[0009] In a fifth aspect, it is provided a computer program product. The computer program product comprises instructions stored therein, which when executed by a processor, cause the processor to perform methods of the first aspect.
[0010] It is to be understood that the Summary is not intended to identify key or essential features of embodiments of the present disclosure, nor is it intended to be used to limit the scope of the present disclosure. Other features of the present disclosure will become readily comprehensible through the description below.DESCRIPTION OF DRAWINGS
[0011] Through the following detailed descriptions with reference to the accompanying drawings, the above and other objectives, features and advantages of the example embodiments disclosed herein will become more comprehensible. In the drawings, several example embodiments disclosed herein will be illustrated in an example and in a non-limiting manner, wherein:
[0012] FIG. 1 illustrates a schematic diagram of an example environment in which a plurality of embodiments of the present disclosure can be implemented;
[0013] FIG. 2 illustrates a detailed diagram of an example environment in which a plurality of embodiments of the present disclosure can be implemented;
[0014] FIG. 3 illustrates an example layout of a work station in accordance with some embodiments of the present disclosure;
[0015] FIG. 4 illustrates a schematic diagram of an example training process for a language model in accordance with some embodiments of the present disclosure;
[0016] FIG. 5 illustrates a flowchart of an example method for creating a work station in accordance with some embodiments of the present disclosure;
[0017] FIG. 6 illustrates a block diagram of an example apparatus for creating a work station in accordance with some embodiments of the present disclosure; and
[0018] FIG. 7 illustrates a block diagram illustrating an electronic device in accordance with some embodiments of the present disclosure.
[0019] Throughout all the drawings, the same or similar reference numerals represent the same or similar elements.DETAILED DESCRIPTION OF EMBODIMENTS
[0020] Principles of the present disclosure will now be described with reference to several example embodiments shown in the drawings. Though example embodiments of the present disclosure are illustrated in the drawings, it is to be understood that the embodiments are described only to facilitate those skilled in the art in better understanding and thereby achieving the present disclosure, rather than to limit the scope of the disclosure in any manner.
[0021] The term comprises "or" includes "and" its variants are to be read as open terms that mean "includes, but is not limited to" . The term "or" is to be read as "and / or" unless the context clearly indicates otherwise. The term "based on" is to be read as "based at least in part on" . The term "being operable to" is to mean a function, an action, a motion or a state can be achieved by an operation induced by a user or an external mechanism. The term "one embodiment" and "an embodiment" are to be read as "at least one embodiment" . The term "another embodiment" is to be read as "at least one other embodiment" . The terms "first" , "second" , and the like may refer to different or same objects. Other definitions, explicit and implicit, may be included below. A definition of a term is consistent throughout the description unless the context clearly indicates otherwise.
[0022] The functions or algorithms described herein may be implemented in software in one embodiment. The software may consist of computer executable instructions stored on computer readable media or computer readable storage device such as one or more non-transitory memories or other type of hardware-based storage devices, either local or networked. Further, such functions correspond to modules, which may be software, hardware, firmware or any combination thereof. Multiple functions may be performed in one or more modules as desired, and the embodiments described are merely examples. The software may be executed on a digital signal processor, ASIC, microprocessor, or other type of processor operating on a computer system, such as a personal computer, server or other computer system, turning such computer system into a specifically programmed machine.
[0023] The functionality can be configured to perform an operation using, for instance, software, hardware, firmware, or the like. For example, the phrase "configured to" can refer to a logic circuit structure of a hardware element that is to implement the associated functionality. The phrase "configured to" can also refer to a logic circuit structure of a hardware element that is to implement the coding design of associated functionality of firmware or software. The term "module" refers to a structural element that can be implemented using any suitable hardware (e.g., a processor, among others) , software (e.g., an application, among others) , firmware, or any combination of hardware, software, and firmware. The term "logic" encompasses any functionality for performing a task. For instance, each operation illustrated in the flowcharts corresponds to logic for performing that operation. An operation can be performed using, software, hardware, firmware, or the like. The terms, "component" , "system" , and the like may refer to computer-related entities, hardware, and software in execution, firmware, or combination thereof. A component may be a process running on a processor, an object, an executable, a program, a function, a subroutine, a computer, or a combination of software and hardware. The term, "processor" may refer to a hardware component, such as a processing unit of a computer system.
[0024] The terms "a" or "an" as used herein, are defined as one or more than one. Also, the use of introductory phrases such as "at least one" and "one or more" in the claims should not be construed to imply that the introduction of another claim element by the indefinite articles "a" or "an" limits any particular claim containing such introduced claim element to disclosures containing only one such element, even when the same claim includes the introductory phrases "one or more" or "at least one" and indefinite articles such as "a" or "an" . The same holds true for the use of definite articles.
[0025] Furthermore, the claimed subject matter may be implemented as a method, apparatus, or article of manufacture using standard programming and engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computing device to implement the disclosed subject matter. Computer-readable storage media can include, but are not limited to, magnetic storage devices, e.g., hard disk, floppy disk, magnetic strips, optical disk, compact disk (CD) , digital versatile disk (DVD) , smart cards, flash memory devices, among others. In contrast, computer-readable media, i.e., not storage media, may additionally include communication media such as transmission media for wireless signals and the like.
[0026] As discussed above, since the pick-and-place robot is used in more and more industries, the initial design, the maintenance of the robots and conveyors, the modification and change of the pick / place work station are required to be more rapid and effective, and to improve the performance of the equipment. Using simulation applications to effectively simulate the construction and optimization of a set of real application scenarios is important. Before the simulation, to achieve an accurate simulation effect, the user must create a solution in a specified order, and will need to input very complex data based on the actual production line requirements, such as many parameters about the robot, conveyor belt, work area, and other necessary components.
[0027] However, because the simulation requires a large amount of data to be collected and to be input in a certain manner, it will consume a lot of time for users. Moreover, the data collected on site may not be able to achieve the optimal result, which will lead to a need to repeatedly debug parameters and modify the information of the workstation, such that a more ideal result may be obtained. The effort of debugging and modifying replies on the working experience of users. This in turn leads to an exponential increase in the user's time cost.
[0028] Therefore, the present disclosure proposed a solution for creating a work station. By implementing the proposed solution, it can simplify the manner of inputting parameters for creating a work station and obtaining the simulation results. It can automatically create and optimize the required simulation work station according to the needs of users. In order to simplify the simulation based on large amount of data, a language model is used to accelerate this process. Based on language model, users can create a work station using natural language, and also get the optimized layout of the work station.
[0029] FIG. 1 illustrates a schematic diagram of an example environment 100 in which a plurality of embodiments of the present disclosure can be implemented. The example environment 100 is only illustrated and is not intended to suggest any limitations as to scope of use or functionality of embodiments of the disclosure described herein.
[0030] As shown in FIG. 1, the example environment 100 comprises a computing device 104. An example of the computing device 104 may be a server or a computer. The computing device 104 may further comprise a language model 108. The language model 108 may be a natural language processing (NLP) model. The language model 108 aims to enable computers to understand, interpret, and produce human language content. The language model 108 encompasses a set of computer algorithms used to process and analyze large amounts of natural language data. The language model 108 can receive prompts (for example, a user input 102) from users and understand what are their needs, and output parameters for creating the work station.
[0031] The computing device 104 may further comprise an application programming interface (API) 110. The computing device 104 may use the API 110 to create the layout of the work station and the simulation result of the work station. The API 110 serves as a bridge between different software components, and allows various programs to interact with each other. For example, the API 110 may access a software product which is capable of creating and simulating the work station. The computing device 104 may output the layout of the work station and the simulation result of the work station, which are generated via the API 110, as an output 106.
[0032] Reference is made to FIG. 2, which illustrates a detailed diagram of an example environment 200 in which a plurality of embodiments of the present disclosure can be implemented. An input 202 in FIG. 2 may correspond to the input 102 in FIG. 1. An output 206 in FIG. 2 may correspond to the output 106 in FIG. 1. An NLP model 208 in FIG. 2 may be an example of the language model 108 in FIG. 1. An API 230 in FIG. 2 may be an example of the API 110 in FIG. 1.
[0033] An overall process may be divided into four stages. At stage 1, which is a training stage for training the NLP model 208. large amounts of data from different configurations and running results may be collected as the basic data for training the NLP 208. These data may comprise natural language prompts, station settings and running results.
[0034] In some example embodiments, the work station setting data may comprise robot, conveyor, camera, input / output (IO) sensor configuration and so on. For example, a position of a sample robot, a sample conveyor, a sample camera and a sample IO sensor in the world coordinate system, the relative relations of the sample robot with the sample conveyor, sample camera and sample IO sensor, a sample robot speed, a sample conveyor speed, a sample trigger signal configuration, sample work area settings and so on. The running result (also referred to as the performance parameters) may comprise a sample cycle time, a sample picking rate, a sample picking total count, a sample place total count, a sample load of each robot, a sample load of each conveyor, a sample missed pick count, a sample missed place count and so on. The trained NLP 208 can output parameters 220 comprising work station setting or the performance parameters.
[0035] At stage 2, by using the API 230, work stations can be established according to the output parameters. A software (for example, the pick master) be used to create the work station automatically after receiving the output parameters extracted by the NLP model 208.
[0036] At stage 3, the work station can be created and optimized very quickly by just input natural language prompts. For example, a user may say: "I want to create one station with two conveyors and one robot, and the pick rate is 100 items / minute" . Then, many optional work stations will be created automatically. The output 206 may comprise a layout 240 of the work station and the performance parameters 250. The performance parameters 250 may comprise a cycle time, a picking rate, a picking total count, a place total count, a load of each robot, a load of each conveyor, a missed pick count, a missed place count and so on.
[0037] The user may choose one if he / she is satisfied. If he / she is not satisfied, for example, he / she is not satisfied with the layout or the performance parameter, he / she may continue to input more detailed parameters, then the updated work station will show up according to the further inputs. As an example, the update may comprise adjusting the position of the robot and / or the conveyors, the starting position for picking up the items, the speed of the robot and so on.
[0038] At stage 4, the state of simulation results may also be displayed directly to the user. This will shorten the waiting time for reviewing the simulation and get a direct overview of the work station (for example, the layout, updated layout and corresponding performance parameters) after inputting the prompts for creating or updating, optimizing the work station.
[0039] Reference is made to FIG. 3, which illustrates an example layout 300 of a work station in accordance with some embodiments of the present disclosure. As shown in FIG. 3. The layout 300 comprise one robot 302 and two conveyors 304 and 306. The robot 302 may pick up one or more items 310 (for example, cookies) at a time from the conveyor 304. The robot 302 may place the one or more items 310 into a container 312 on the conveyor 306. The layout 300 may also comprise the one or more cameras 320 and / or one or more IO sensors.
[0040] In some example embodiments, a cycle time may represent how many times a robot will pick and place items in a period of time (e.g., one minute) . A picking rate may represent how many items a robot will pick and place in a period of time (e.g., one minute) . For example, if the robot can pick three items at a time, the cycle time is 20 times per minute and the period of time is one minute, then the picking rate may be 3 × 20 = 60 per minute.
[0041] A picking total count may represent how may items a robot picks during a period of time. A place total count may represent how may items a robot places during a period of time. A load of each robot may represent the actual number of the items picked and placed by a robot during a period of time. A load of each conveyor may represent the actual number of the items carried by a conveyor during a period of time. A missed pick count may represent missed items which should be picked by a robot during a period of time. A missed place count may represent missed items which should be placed by a robot during a period of time.
[0042] Reference is made to FIG. 4, which illustrates a schematic diagram of an example training process 400 for a language model in accordance with some embodiments of the present disclosure. Training data 402 may be feed into an NLP model 410. The training data 402 may comprise sample prompts 404, sample work station settings 406 and sample running results of the work station 408, which can be referred to the discussions of FIG. 2, and for the purpose of simplification, they will not be described again.
[0043] The NLP 410 may extract the parameters associated with the robots and conveyors for creating work stations based on the training data 402 and output them as the output 412. The back-propagation module 414 may compare the output 412 and a corresponding reference output and compute the cost function. The parameters of the NLP 410 will be adjusted via the back-propagation module 414. These training process will be iteratively in a loop until the cost function satisfies predetermined conditions.
[0044] In some examples, neural network architectures like RNNs (Recurrent Neural Networks) , LSTMs (Long Short-Term Memory networks) , GRUs (Gated Recurrent Units) , or Transformer models may be used. Using pre-trained models like BERT (Bidirectional Encoder Representations from Transformers) may be considered, which have been trained on large corpora and can be fine-tuned for your specific task. In some examples, an NLP framework or library like TensorFlow, PyTorch, or NLTK may be used to build the original NLP model. The layers, activation functions, and parameters of the NLP model may be specified. An appropriate loss function may be used to avoid overfitting. After successful training and evaluation, the MLP model may be deployed to a production environment where it can process real-world data.
[0045] Reference is made to FIG. 5, which illustrates a flowchart of an example method 500 for creating a work station in accordance with some embodiments of the present disclosure. FIG. 5 will be described with reference to FIG. 1.
[0046] At 502, the computing device 104 receives the user input 102 to create the work station. The user input 102 may comprise a prompt for a language model representing a plurality of requirements for the work station. The work station may be used for picking and placing items on at least one conveyor by at least one robot, for example, as described with FIG. 3.
[0047] At 504, the computing device 104 obtains a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. The plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station may be obtained from the language model 108. The plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station may be extracted by the language model 108 based on the user input 102.
[0048] At 506, the computing device 104 may create the work station for the plurality of requirements based on the plurality of parameters. For example, the computing device 104 may use the API 110 to create the work station for the plurality of requirements based on the plurality of parameters. The computing device 104 may output a layout of the work station and performance parameters of the work station as the output 106.
[0049] In some example embodiments, the plurality of requirements may comprise a first number of the at least one conveyor. In some example embodiments, the plurality of requirements may comprise a second number of the at least one robot. In some example embodiments, the plurality of requirements may comprise both the first number and the second number.
[0050] In some example embodiments, the computing device 104 may further input the user input into the language model 108. The computing device 104 may further receive an output from the language model as the plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. In some example embodiments, the language model may be trained by training data comprising sample work station settings and at least one sample performance parameter of a work station.
[0051] In some example embodiments, the sample work station settings may comprise at least one sample conveyor configuration. In some example embodiments, the sample work station settings may comprise at least one sample robot configuration. In some example embodiments, the sample work station settings may comprise at least one sample camera configuration. In some example embodiments, the sample work station settings may comprise at least one sample IO sensor configuration. In some example embodiments, the sample work station settings may comprise any combination of the above items.
[0052] In some example embodiments, the sample work station settings may configure relative relations of the at least one sample robot and the at least one sample conveyor. In some example embodiments, the sample work station settings may configure at least one sample robot speed. In some example embodiments, the sample work station settings may configure at least one sample conveyor speed. In some example embodiments, the sample work station settings may configure at least one sample trigger signal configuration. In some example embodiments, the sample work station settings may configure a position of the at least one sample robot.
[0053] In some example embodiments, the sample work station settings may configure a position of the at least one sample conveyor. In some example embodiments, the sample work station settings may configure a position of the at least one sample camera. In some example embodiments, the sample work station settings may configure a position of the at least one sample IO sensor. In some example embodiments, the sample work station settings may configure sample work area settings. In some example embodiments, the sample work station settings may configure any combination of the above items.
[0054] In some example embodiments, the at least one sample performance parameter of the work station may comprise a cycle time. In some example embodiments, the at least one sample performance parameter of the work station may comprise a picking rate. In some example embodiments, the at least one sample performance parameter of the work station may comprise a picking total count. In some example embodiments, the at least one sample performance parameter of the work station may comprise a place total count. In some example embodiments, the at least one sample performance parameter of the work station may comprise a load of each of the at least one sample robot.
[0055] In some example embodiments, the at least one sample performance parameter of the work station may comprise a load of each of the at least one sample conveyor. In some example embodiments, the at least one sample performance parameter of the work station may comprise a missed pick count. In some example embodiments, the at least one sample performance parameter of the work station may comprise a missed place count. In some example embodiments, the at least one sample performance parameter of the work station may comprise any combination of the above items.
[0056] In some example embodiments, the user input may be a first user input. In some example embodiments, the computing device 104 may receive a second user input to update the work station in response to the simulation of the performance of the work station failing to satisfy at least one of the plurality of requirements. The computing device 104 may update at least one of the layout of the work station or the work station settings to satisfy the at least one of the plurality of requirements. In some example embodiments, the computing device 104 may update the work station based on at least one of the updated layout of the work station or the updated work station settings.
[0057] By implementing the embodiments of the method 500, it can simplify the manner of inputting parameters for creating a work station and obtaining the simulation results. It can automatically create and optimize the required simulation work station according to the needs of users. In order to simplify the simulation based on large amount of data, a language model is used to accelerate this process. Based on language model, users can create a work station using natural language, and also get the optimized layout of the work station.
[0058] Reference is made to FIG. 6, which illustrates a block diagram of an example apparatus 600 for creating a work station in accordance with some embodiments of the present disclosure. The apparatus 600 comprises a receiving module 602 configured to receive a user input to create the work station, wherein the user input comprises a prompt for a language model representing a plurality of requirements for the work station, and wherein the work station is used for picking and placing items on at least one conveyor by at least one robot. The apparatus further comprises an obtaining module 604 configured to obtain, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. The apparatus further comprises a creating module 606 configured to create the work station for the plurality of requirements based on the plurality of parameters.
[0059] In some example embodiments, the plurality of requirements may comprise a first number of the at least one conveyor. In some example embodiments, the plurality of requirements may comprise a second number of the at least one robot. In some example embodiments, the plurality of requirements may comprise both the first number and the second number.
[0060] In some example embodiments, the obtaining module 604 may further comprise a first module configure to input the user input into the language model. The obtaining module 604 may further comprise a second module configure to receive an output from the language model as the plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station. In some example embodiments, the language model may be trained by training data comprising sample work station settings and at least one sample performance parameter of a work station.
[0061] In some example embodiments, the sample work station settings may comprise at least one sample conveyor configuration. In some example embodiments, the sample work station settings may comprise at least one sample robot configuration. In some example embodiments, the sample work station settings may comprise at least one sample camera configuration. In some example embodiments, the sample work station settings may comprise at least one sample IO sensor configuration. In some example embodiments, the sample work station settings may comprise any combination of the above items.
[0062] In some example embodiments, the sample work station settings may configure at least one of the following: relative relations of the at least one sample robot and the at least one sample conveyor; at least one sample robot speed; at least one sample conveyor speed; at least one sample trigger signal configuration; a position of the at least one sample robot; a position of the at least one sample conveyor; a position of the at least one sample camera; a position of the at least one sample IO sensor; or sample work area settings.
[0063] In some example embodiments, the at least one sample performance parameter of the work station may comprise at least one of the following: a cycle time; a picking rate; a picking total count; a place total count; a load of each of the at least one sample robot; a load of each of the at least one sample conveyor; a missed pick count; or a missed place count.
[0064] In some example embodiments, the user input may be a first user input. In some example embodiments, the apparatus 600 may further comprise a third module configured to receive a second user input to update the work station in response to the simulation of the performance of the work station failing to satisfy at least one of the plurality of requirements. The apparatus 600 may further comprise a fourth module configured to update at least one of the layout of the work station or the work station settings to satisfy the at least one of the plurality of requirements.
[0065] In some example embodiments, the apparatus 600 may further comprise a fifth module configured to update the work station based on at least one of the updated layout of the work station or the updated work station settings.
[0066] By implementing the example embodiments of FIG. 6, the manner of inputting parameters for creating a work station and obtaining the simulation results can be simplified. The required simulation work station according to the needs of users can be automatically created and optimized. Thus, a user experience for creating a work station can be improved and costs of time and effort for creating the work station can be saved.
[0067] FIG. 7 illustrates a block diagram illustrating an electronic device 700 in accordance with some embodiments of the present disclosure. As indicated, the device 700 includes a central processing unit (CPU) 701, which can execute various appropriate actions and processing based on the computer program instructions stored in a read-only memory (ROM) 702 or the computer program instructions loaded into a random access memory (RAM) 703 from a storage unit 708. The RAM 703 also stores all kinds of programs and data required by operating the electronic device 700. CPU 701, ROM 702 and RAM 703 are connected to each other via a bus 704, to which an input / output (I / O) interface 705 is also connected.
[0068] A plurality of components in the device 700 are connected to the I / O interface 705, comprising: an input unit 706, such as a keyboard, a mouse and the like; an output unit 707, such as various types of displays, loudspeakers and the like; a storage unit 708, such as a storage disk, an optical disk and the like; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver and the like. The communication unit 709 allows the device 700 to exchange information / data with other devices through computer networks such as Internet and / or various telecommunication networks.
[0069] Each procedure and processing described above, such as the method 500, can be executed by a processing unit 701. For example, in some embodiments, the method 500 can be implemented as computer software programs, which are tangibly included in a machine-readable medium, such as a storage unit 708. In some embodiments, the computer program can be partially or completely loaded and / or installed to the device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded to the RAM 703 and executed by the CPU 701, one or more steps of the above described method 500 are implemented. Alternatively, in other embodiments, the CPU 701 may also be configured in any proper manner to implement the above process / method.
[0070] The present disclosure may be a method, a device, a system and / or a computer program product. The computer program product can include a computer-readable storage medium loaded with computer-readable program instructions thereon for executing various aspects of the present disclosure.
[0071] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. More specific examples (a non-exhaustive list) of the computer readable storage medium would include: a portable computer diskette, a hard disk, a random access memory (RAM) , a read-only memory (ROM) , an erasable programmable read-only memory (EPROM or Flash memory) , a static random access memory (SRAM) , a portable compact disc read-only memory (CD-ROM) , a digital versatile disk (DVD) , a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination thereof. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable) , or electrical signals transmitted through a wire.
[0072] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium, or downloaded to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.
[0073] Computer readable program instructions for carrying out operations of the present disclosure may be assembly instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN) , or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider) . In some embodiments, by means of state information of the computer readable program instructions, an electronic circuitry including, for example, programmable logic circuitry (PLC) , field-programmable gate arrays (FPGA) , or programmable logic arrays (PLA) can be personalized to execute the computer readable program instructions, thereby implementing various aspects of the present disclosure.
[0074] Aspects of the present disclosure are described herein with reference to flowchart and / or block diagrams of methods, apparatus (systems) , and computer program products according to embodiments of the present disclosure. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0075] These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which are executed via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function / act specified in the flowchart and / or block diagram block or blocks.
[0076] The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which are executed on the computer, other programmable apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0077] The flowchart and block diagrams illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, snippet, or portion of codes, which comprises one or more executable instructions for implementing the specified logical function (s) . In some alternative implementations, the functions noted in the block may be implemented in an order different from those illustrated in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or by combinations of special purpose hardware and computer instructions.
[0078] Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are contained in the above discussions, these should not be construed as limitations on the scope of the present disclosure, but rather as descriptions of features that may be specific to particular embodiments. Certain features that are described in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination.
[0079] A person of ordinary skill in the art may be aware that, in combination with the examples described in the embodiments disclosed in this specification, units and algorithm steps can be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on particular applications and design constraints of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of this application.
[0080] It may be clearly understood by a person skilled in the art that, for the purpose of convenient and brief description, for a detailed working process of the foregoing system, apparatus, and unit, refer to a corresponding process in the foregoing method embodiment. Details are not described herein again.
[0081] In the several embodiments provided in this application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the described apparatus embodiment is merely an example. For example, the unit division is merely logical function division and may be other division in actual implementation. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented through some interfaces. The indirect couplings or communication connections between the apparatuses or units may be implemented in electronic, mechanical, or other forms.
[0082] The units described as separate parts may be or may not be physically separate, and parts displayed as units may be or may not be physical units, may be located in one position, or may be distributed on a plurality of network units. Some or all of the units may be selected based on actual requirements to achieve the objectives of the solutions of the embodiments.
[0083] In addition, functional units in the embodiments of this application may be integrated into one processing unit, or each of the units may exist alone physically, or two or more units are integrated into one unit.
[0084] When the functions are implemented in a form of a software functional unit and sold or used as an independent product, the functions may be stored in a computer readable storage medium. Based on such an understanding, the technical solutions in this application essentially, or the part contributing to the prior art, or some of the technical solutions may be implemented in a form of a software product. The computer software product is stored in a storage medium, and includes several instructions for instructing a computer device (which may be a personal computer, a server, a network device, or the like) to perform all or some of the steps of the methods described in the embodiments of this application. The foregoing storage medium includes: any medium that can store program code, such as a USB flash drive, a removable hard disk, a read-only memory (Read-Only Memory, ROM) , a random access memory (Random Access Memory, RAM) , a magnetic disk, or an optical disc.
[0085] The foregoing descriptions are merely specific implementations of this application, but are not intended to limit the protection scope of this application. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in this application shall fall within the protection scope of this application. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.
Claims
1.A method for creating a work station, comprising:receiving a user input to create the work station, wherein the user input comprises a prompt for a language model representing a plurality of requirements for the work station, and wherein the work station is used for picking and placing items on at least one conveyor by at least one robot;obtaining, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station; andcreating the work station for the plurality of requirements based on the plurality of parameters.2.The method of claim 1, wherein the plurality of requirements comprises:a first number of the at least one conveyor; anda second number of the at least one robot.3.The method of claim 1, wherein obtaining, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station comprises:inputting the user input into the language model; andreceiving an output from the language model as the plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station.4.The method of claim 3, wherein the language model is trained by training data comprising sample work station settings and at least one sample performance parameter of a work station.5.The method of claim 4, wherein the sample work station settings comprise at least one of the following:at least one sample conveyor configuration;at least one sample robot configuration;at least one sample camera configuration;at least one sample input / output (IO) sensor configuration.6.The method of claim 5, wherein the sample work station settings configure at least one of the following:relative relations of the at least one sample robot and the at least one sample conveyor;at least one sample robot speed;at least one sample conveyor speed;at least one sample trigger signal configuration;a position of the at least one sample robot;a position of the at least one sample conveyor;a position of the at least one sample camera;a position of the at least one sample IO sensor; orsample work area settings.7.The method of claim 4, wherein the at least one sample performance parameter of the work station comprises at least one of the following:a cycle time;a picking rate;a picking total count;a place total count;a load of each of the at least one sample robot;a load of each of the at least one sample conveyor;a missed pick count; ora missed place count.8.The method of claim 1, wherein creating the work station for the plurality of requirements based on the plurality of parameters comprises:creating a layout of the work station; andoutputting a simulation of a performance of the work station.9.The method of claim 8, wherein the user input is a first user input, and the method further comprises:receiving a second user input to update the work station in response to the simulation of the performance of the work station failing to satisfy at least one of the plurality of requirements; andupdating at least one of the layout of the work station or the work station settings to satisfy the at least one of the plurality of requirements.10.The method of claim 9, further comprising:updating the work station based on at least one of the updated layout of the work station or the updated work station settings.11.An apparatus for creating a work station, comprising:a receiving module configured to receive a user input to create the work station, wherein the user input comprises a prompt for a language model representing a plurality of requirements for the work station, and wherein the work station is used for picking and placing items on at least one conveyor by at least one robot;an obtaining module configured to obtain, by the language model and based on the user input, a plurality of parameters associated with the at least one conveyor and the at least one robot for creating the work station; anda creating module configured to create the work station for the plurality of requirements based on the plurality of parameters.12.An electronic device, comprising:a processor; anda memory coupled to the processor, wherein the memory has instructions stored therein, and the instructions, when executed by the processor, cause the device to execute actions of any of claims 1-10.13.A computer-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform a method of any of claims 1-10.14.A computer program product having instructions stored therein, which when executed by a processor, cause the processor to perform a method of any of claims 1-10.
Citation Information
Patent Citations
A system and a method for programming an in dustrial robot
CN101043980A
Controlling robot based on free-form natural language input
CN112136141A
Simulation method, simulation device, readable storage medium and simulation test platform
CN115329541A
Natural Language Creation Tool for Applications, and an End User Drag and Drop Site-Building Design Canvas for Viewing and Analyzing User Adoption
US20170102861A1
Conversational systems and methods for robotic task identification using natural language
US20210110822A1