WO2021068840A1 - 一种异构嵌入式表格化处理及执行动作流程的方法和装置 - Google Patents

一种异构嵌入式表格化处理及执行动作流程的方法和装置 Download PDF

Info

Publication number
WO2021068840A1
WO2021068840A1 PCT/CN2020/119383 CN2020119383W WO2021068840A1 WO 2021068840 A1 WO2021068840 A1 WO 2021068840A1 CN 2020119383 W CN2020119383 W CN 2020119383W WO 2021068840 A1 WO2021068840 A1 WO 2021068840A1
Authority
WO
WIPO (PCT)
Prior art keywords
action
flow table
action flow
branch
instruction
Prior art date
Application number
PCT/CN2020/119383
Other languages
English (en)
French (fr)
Inventor
蒋知峰
Original Assignee
上海宝阶智能科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 上海宝阶智能科技有限公司 filed Critical 上海宝阶智能科技有限公司
Priority to JP2022520532A priority Critical patent/JP7338922B2/ja
Priority to DE112020004835.7T priority patent/DE112020004835T5/de
Priority to US17/764,534 priority patent/US11960890B2/en
Publication of WO2021068840A1 publication Critical patent/WO2021068840A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23146Programmable, reconfigurable via microprocessor or coding switches

Definitions

  • the invention belongs to the field of automatic control, and in particular relates to a method and device for heterogeneous embedded table processing and execution of an action flow.
  • text-based program codes such as Basic, Pascal, C, etc.
  • Basic In the field of automatic control, text-based program codes, such as Basic, Pascal, C, etc., are usually used to compile and execute the action flow to realize automatic control.
  • the present invention provides a method for tabulating an action flow, which is used to tabulate an action flow containing multiple flow steps, and is characterized in that it includes: step S1, creating an action flow table; step S2, obtaining actions in sequence The process steps of the process and determine in turn the action flow type corresponding to each process step in the action process; step S3, according to the predetermined process step sequence combination rule, combine the continuous process steps in the action process into at least one corresponding action process Type of flow step sequence; step S4, sequentially obtain the flow step sequence from the action flow, according to the action flow type of the flow step sequence, generate rules in the action flow table based on the predetermined line corresponding to the flow step sequence of the action flow type In step S5, it is judged whether the flow step has been acquired, if it is judged to be otherwise, it returns to step S2, and if it is judged to be yes, the final action flow table is obtained and output.
  • the action flow table includes a condition column and an instruction column.
  • Each action flow table row includes a condition unit in the condition column and an instruction unit in the instruction column.
  • the condition unit is at least used to add a process step for executing judgment in the action flow.
  • the process step is used as the execution condition corresponding to the instruction unit in the same action process table row, and the process step used to add the action to be executed in the action process is used as the action instruction in the instruction unit.
  • the action flow type includes at least an action instruction type action flow
  • the instruction type action flow includes at least one continuous flow step as an action instruction
  • the process step combination rule for the corresponding instruction-type action process is to combine consecutive process steps in the instruction-type action process into an action-instruction-type process step sequence
  • the predetermined line generation rule corresponding to the action-instruction-type process step sequence is: Step A1 , In the action flow table, sequentially generate an action flow table row as the current action flow table row; step A2, add a true value as an execution condition to the condition unit of the current action flow table row; step A3, obtain the corresponding action instructions in sequence
  • the process step in the type process step sequence is added to the instruction unit of the current action flow table row.
  • the method for processing action flows in tabular form according to the present invention may also have such technical features, wherein the action flow type further includes a conditional branch action flow, and the conditional branch action flow includes at least one branch action flow and corresponding to each branch action flow And mutually exclusive execution conditions, the process step combination rule for the conditional branch action process is to combine the branch action process in the conditional branch action process and the execution condition corresponding to the branch action process into a conditional branch process step sequence, and the condition
  • the predetermined row generation rule corresponding to the branching process step sequence is: step B1, according to the conditional branching process step sequence, generate the corresponding action flow table rows in the action flow table in sequence; step B2, corresponding to the conditional branching process step sequence
  • the execution condition of is added to the condition unit of the corresponding action flow table row, and the generated action flow table behavior mutually exclusive relationship is set; step B3, for the conditional branch type flow step sequence, obtain the flow steps in the branch action flow in sequence And sequentially determine the action flow type corresponding to each process step in
  • the method for processing action flows in tabular form according to the present invention may also have such technical features, wherein the action flow type further includes switching branch action flows, and the switching branch action flows include multiple branch action flows, which are used to switch branch action flows.
  • the process step combination rule for the switching branch action process is to switch each branch action process included in the switching branch action process and its corresponding branch index condition They are respectively combined into a switching branch-type process step sequence, and the predetermined line generation rule corresponding to the switching branch-type process step sequence is: Step C1, if the continuous process step before the process step corresponding to the branch switching instruction belongs to the action instruction-type process step sequence, Then the action flow table line generated according to the action instruction type flow step sequence is regarded as the current action flow table line; step C2, the process step corresponding to the branch switching instruction is added as an action instruction to the instruction unit of the current action flow table line; step C3, generate a branch action flow table corresponding to the sequence of switching branch flow steps.
  • the branch action flow table is hierarchically embedded under the current action flow table row.
  • the branch action flow table includes an index column; step C4, for each branch action Flow, sequentially generate branch action flow table rows including index units located in the index column in the branch action flow table, and add branch index conditions to the index unit while creating a sub-action that is hierarchically embedded under the branch action flow table row Flow table; step C5, for each sub-action flow table, sequentially obtain the flow steps in the corresponding branch action flow, and determine in turn the action flow type corresponding to each flow step in the corresponding branch action flow, according to the predetermined sequence of flow steps
  • the combination rule further combines the continuous process steps in the branch action process into at least one sub-process step sequence corresponding to the corresponding action process type, and further generates rules based on the predetermined line corresponding to the process step sequence type in the sub-action process table In the middle sequence, the action flow table rows corresponding to the sub-process step sequence are generated, and the branch switching instruction is used to determine the corresponding branch index condition according to
  • the branch action flow table further includes a switching target column
  • the branch action flow table row further includes a switching target unit located in the switching target column.
  • a process step for setting the value of the target index variable is added to the target unit as a switching instruction.
  • the branch action flow table further includes a branch state column
  • the action flow table row further includes a branch state unit located in the branch state column
  • the branch state An action instruction for assigning a value to the state variable corresponding to the branch action flow is added to the unit.
  • the action flow type also includes a cyclic action flow
  • the cyclic action flow includes execution conditions and loop sub-processes
  • the action flow table also includes loop attributes Column
  • the action flow table row includes a loop attribute unit located in the loop attribute column.
  • the process step combination rule for the loop action process is to combine the execution conditions of the loop action process and the loop sub-process into a loop action process step sequence
  • the predetermined row generation rule corresponding to the sequence of cyclic action flow steps is: step D1, in the action flow table, sequentially generate an action flow table row as the current action flow table row; step D2, add the current flow step as the execution condition to the current action In the condition unit of the process table row, add a loop execution attribute to the loop attribute unit; step D3, sequentially obtain the process steps in the loop sub-process and determine the action flow type corresponding to each process step in the loop sub-process in turn ,
  • the predetermined process step sequence combination rule further combine the continuous process steps in the cyclic action process step sequence into a sub-process step sequence corresponding to the corresponding action process type.
  • the first sub-process step sequence is an action instruction type process step sequence
  • Each process step in the sub-process step sequence is added as an action instruction sequence to the instruction unit of the action flow table row of the corresponding branch action process.
  • the sub-process step sequence is a conditional branch-type process step sequence
  • a sequence corresponding to the corresponding branch action process is generated.
  • the corresponding sub-action flow table, and based on the predetermined line generation rules corresponding to the conditional branching process step sequence the action flow table rows corresponding to the sub-process step sequence are sequentially generated in the sub-action flow table.
  • the sub-action flow table is hierarchically Embedded under the action flow table row corresponding to the branch action flow.
  • the present invention also provides a method for executing an action flow against an action flow table, which is used to execute the action flow according to the action flow table obtained by the method of tabulating the action flow.
  • the method of tabulating the action flow includes: step S1, creating Action flow table; step S2, sequentially obtain the flow steps of the action flow and determine the corresponding action flow type of each flow step in the action flow; step S3, combine the continuous flow in the action flow according to the predetermined flow step sequence combination rule
  • the steps are combined into at least one process step sequence corresponding to the corresponding action process type; step S4, the process step sequence is sequentially obtained from the action process, according to the action process type of the process step sequence, based on the sequence of steps corresponding to the process step sequence with the action process type
  • the corresponding predetermined row generation rules sequentially generate the action flow table rows corresponding to the sequence of flow steps in the action flow table; step S5, judge whether the flow step has been obtained, if the judgment is otherwise, return to step S2, if the judgment is yes, then get The
  • the action flow table includes a condition column and an instruction column.
  • Each action flow table row includes a condition unit located in the condition column and an instruction unit located in the instruction column.
  • the condition unit is used for at least Add the process step that executes the judgment in the action process and use the process step as the execution condition of the instruction unit in the same action process table row.
  • the instruction unit is used to add the process step that executes the action in the action process as the action instruction.
  • the method for executing the action flow in the action flow table includes: step S11, sequentially acquiring the action flow table row from the action flow table as the current action flow table row; step S12, judging whether the execution condition of the condition unit of the current action flow table row is true If it is judged to be otherwise, return to step S11; step S13, obtain and execute the action instruction in the instruction unit of the current action flow table row; step S14, judge whether all flow steps in the action flow table have been executed, and if judged otherwise, return Step S11, if it is judged as yes, the action flow has been executed.
  • the method for tabulating an action flow may also have such technical characteristics.
  • the method for tabulating an action flow further includes: the action flow type includes at least an action instruction type action flow and a conditional branch action flow, and a conditional branch action
  • the process includes at least one branch action process and mutually exclusive execution conditions corresponding to each branch action process.
  • the process step combination rule for the conditional branch action process is to combine the branch action process in the conditional branch action process and correspond to the branch action process
  • the execution condition combination of is a conditional branching process step sequence
  • the predetermined row generation rule corresponding to the conditional branching process step sequence is: Step B1, according to the conditional branching process step sequence, the corresponding action flow table is sequentially generated in the action flow table Line; Step B2, add the execution condition corresponding to the conditional branching process step sequence to the condition unit of the corresponding action flow table row, and set the generated action flow table behavior mutually exclusive relationship;
  • Step B3 for conditional branch Type process step sequence sequentially obtain the process steps in the branch action process and determine the action process type corresponding to each process step in the corresponding branch action process, and further divide the conditional branch process step sequence according to the predetermined process step sequence combination rule
  • the consecutive process steps are combined into at least one sub-process step sequence corresponding to the corresponding action process type.
  • each process step in the sub-process step sequence is regarded as an action instruction sequence Add to the instruction unit of the action flow table row of the corresponding branch action flow.
  • the sub-process step sequence is a conditional branch flow step sequence
  • a sub-action flow table corresponding to the corresponding branch action flow is generated and based on the conditional branch flow
  • the predetermined row generation rule corresponding to the step sequence generates the action flow table rows corresponding to the sub-process step sequence in the sub-action flow table sequentially, and the sub-action flow table is hierarchically embedded under the action flow table row corresponding to the branch action flow
  • the method for executing an action flow for the action flow table further includes: step B11, sequentially acquiring the action flow table row from the action flow table as the current action flow table row; step B12, judging the execution condition of the condition unit of the current action flow table row If it is true, if it is judged otherwise, return to step B11; step B13, obtain and execute the action instruction in
  • the method for tabulating an action flow may also have such technical features.
  • the method for tabulating an action flow further includes: the action flow type further includes a switching branch action flow, and the switching branch action flow includes multiple branch actions.
  • the process, the branch switching instruction used to switch the branch action process and the mutually exclusive branch index conditions corresponding to each branch action process, the process step combination rule for the switching branch action process is to switch each branch included in the branch action process
  • the branch switching instruction is used to determine the corresponding branch index condition according to the target index variable and switch to execute the index unit with the corresponding branch index value.
  • the method for executing the action flow table for the action flow table further includes: step C11, sequentially obtaining the action flow table row from the action flow table as the current action flow table row; step C12, judging the current action flow table row If the execution condition of the condition unit is true, if it is judged to be otherwise, return to step C11; step C13, obtain and judge whether the action instruction in the instruction unit of the current action flow table row is a branch switching instruction, and if so, the branch index of the index unit
  • the action flow table row whose value is consistent with the value of the target index variable is taken as the current action flow table row and returns to step C12, if otherwise, the action instruction is executed; step C14, it is judged whether there is an embedded branch action flow table under the current action flow table row, If it is judged to be yes, the branch action flow table is executed directly The execution of the branch action
  • the method for tabulating an action flow may also have the technical feature that the method for tabulating an action flow further includes: wherein, the branch action flow table further includes a switching target column, and the branch The action flow table row further includes a switch target unit located in the switch target column, and the switch target unit is added with the process step for setting the value of the target index variable as a switch instruction, and the action flow table is executed
  • the action flow method further includes: wherein, in the step C13, the switching instruction of the switching target unit is also obtained and executed.
  • the method for tabulating an action flow may also have the technical feature that the method for tabulating an action flow further includes: wherein, the branch action flow table further includes a branch status column, and the action
  • the flow table row also includes a branch state unit located in the branch state column, and an action instruction for assigning a value to the state variable corresponding to the branch action flow is added to the branch state unit, wherein, in step C13, When obtaining the branch action flow table row in which the branch index value of the index unit is consistent with the value of the target index variable, the action instruction in the branch state unit is also obtained and the state variable is assigned.
  • the method for tabulating an action flow may also have such technical features.
  • the method for tabulating an action flow further includes: the action flow type also includes a cyclic action flow, and the cyclic action flow includes execution conditions and a cyclic sub-process.
  • the action flow table also includes a cycle attribute column, and the action flow table row includes a cycle attribute unit located in the cycle attribute column.
  • the process step combination rule for the cycle action process is to combine the execution conditions of the cycle action process and the cycle sub-process It is a sequence of cyclic action process steps, and the predetermined line generation rule corresponding to the sequence of cyclic action process steps is: step D1, sequentially generate an action process table line in the action process table as the current action process table line; step D2, change the current process Steps are added as execution conditions to the condition unit of the current action flow table row, and a loop execution attribute is added to the loop attribute unit; step D3, sequentially obtain the process steps in the loop sub-process and determine in turn that each process step is in the loop sub-process For the corresponding action flow type in the process, according to the predetermined flow step sequence combination rule, the continuous process steps in the cyclic action process step sequence are further combined into a sub-process step sequence corresponding to the corresponding action flow type.
  • each process step in the sub process step sequence is added as an action instruction sequence to the instruction unit of the action flow table row of the corresponding branch action process.
  • the sub process step sequence is a conditional branch process step sequence, Generate a sub-action flow table corresponding to the corresponding branch action flow, and sequentially generate the action flow table corresponding to the sub-process step sequence in the sub-action flow table based on the predetermined row generation rules corresponding to the conditional branch flow step sequence
  • the sub-action flow table is hierarchically embedded under the action flow table row corresponding to the branch action flow.
  • the method for executing the action flow for the action flow table further includes: step D11, sequentially obtaining the action flow table rows from the action flow table As the current action flow table row; step D12, judge whether the execution condition of the condition unit of the current action flow table row is true, if it is judged otherwise, return to step D11; step D13, obtain and execute the instruction unit of the current action flow table row Step D14, determine whether there is an embedded sub-action flow table under the current action flow table line, if the judgment is yes, execute the sub-action flow table until the sub-action flow table is executed; step D15, judge the current action flow Whether the cycle attribute unit of the table row has the cycle execution attribute, if it is, return to step D12 to repeat the execution of the current action flow table row; step D16, judge whether all the process steps in the action flow table have been executed, if it is judged otherwise, get the current action The next action flow table row whose execution condition in the condition unit of the flow table row is a non-exclusive relationship is taken as the current action flow
  • the present invention also provides an apparatus for tabulating the processing action flow, which is characterized by comprising: a memory for storing a computer program; and a processor for implementing any of claims 1 to 7 when the computer program is executed.
  • the present invention also provides a device for executing an action flow against an action flow chart, which is characterized by comprising: a memory for storing a computer program; and a processor for executing the computer program as claimed in claims 8 to 11 Any one of the methods for executing the action flow against the action flow table.
  • the program length is greatly shortened, the program content is more concise, the utilization of the screen display space is improved, and the complex action process It is easier to browse and edit; at the same time, the multi-column layout makes the separation of different types of process steps higher, which is convenient to find the detailed differences between the action processes, and to find the program errors in time.
  • the generated action flow table retains the details of the original action flow, so the action flow table can be executed after editing, which can realize the control of the complex action flow for manipulation
  • the actions of the physical device and reduce the intermediate steps of program compilation and processing text instructions, and improve the speed of compilation and execution.
  • the action flow table is easy to use the spreadsheet editing tool for processing, and can play and use the convenient functions of the spreadsheet editing tool to compile and process the action flow; and can directly use the existing spreadsheet data as input, reducing manual input And conversion steps.
  • the action flow table is in units of tables, rows, columns and cells. Compared with text instructions, it is easier to set and carry rich format and annotation information, and display and store it to reflect the editing of the action flow more clearly And execution status and program intent.
  • Fig. 1 is a schematic cross-sectional view of a gripping state of an automated production system manipulator in the first embodiment of the present invention
  • FIG. 2 is a schematic cross-sectional view of a machining state of an automated production system machine tool in the first embodiment of the present invention
  • FIG. 3 is a flowchart of the main process in the first embodiment of the present invention.
  • FIG. 4 is a flowchart of a sub-process of a manipulator in the first embodiment of the present invention
  • Figure 5 is a flowchart of a sub-process of the machine tool in the first embodiment of the present invention.
  • Figure 6 is an action flow chart of the main flow in the first embodiment of the present invention.
  • FIG. 7 is an action flow chart of the sub-process of the manipulator in the first embodiment of the present invention.
  • Fig. 8 is an action flow chart of a sub-process of a machine tool in the first embodiment of the present invention.
  • Figure 9 is an action flow table of the main flow in the second embodiment of the present invention.
  • FIG. 10 is an action flow chart of the sub-process of the manipulator in the second embodiment of the present invention.
  • Fig. 11 is an action flow chart of a sub-process of a machine tool in the second embodiment of the present invention.
  • Fig. 12 is an action flow chart of a sub-process of a machine tool in the second embodiment of the present invention.
  • the present invention provides a method for tabulating an action flow.
  • the action flow includes multiple flow steps.
  • the flow steps can be action instructions and/or conditional branch action flows.
  • the conditional branch action flow includes execution conditions.
  • the first branch action process and/or the second branch action process if the execution condition is true, execute the first branch action process, otherwise execute the second branch action process, the method includes: Step 1: Create action flow table, action flow table Including condition columns and instruction columns; Step 2: Add an action flow table row to the action flow table, the action flow table row includes condition units and instruction units corresponding to the condition and instruction columns of the action flow table; Step 3: Get sequentially The process steps of the action process and determine the type of process steps:
  • process step is a conditional branch action process
  • step 2 If the subsequent process step is a conditional branch action process, start from step 1 to process the conditional branch action process, use the action flow table created in step 1 for the conditional branch action process as the second action flow table, and use the created
  • the second action flow table is hierarchically embedded under the action flow table row; after the processing of the conditional branch action flow is completed, the subsequent process steps in the first branch action flow are continued to be processed from step 2;
  • the method for processing the action flow in a table format also includes setting the two or one of the two action flow table rows in a mutually exclusive relationship to reflect the mutually exclusive relationship between the two in the format. step.
  • a connecting line segment is drawn between them to reflect their mutually exclusive relationship.
  • the action flow table row corresponding to the first branch action flow is set differently from the action flow table rows corresponding to other mutually exclusive branch action flows. The symbol mark is used to reflect the mutually exclusive relationship of these branch action processes in the format.
  • process step is an action instruction
  • condition unit of the action flow table row to indicate a condition that is always true, and use a condition that is always true as the execution condition of the subsequent action instruction; and the subsequent actions are sequentially
  • the instruction is added to the instruction unit of the action flow table row; until the subsequent flow step is a conditional branch action flow, return to step 2 to continue processing the subsequent flow steps;
  • condition unit of the action flow table row is set to be empty or set to a constant representing true to indicate a constant value true condition.
  • condition unit of the action process table row corresponding to the second branch action process is set to "Else" that represents a condition that is always true.
  • a condition that always represents true is used as the content of the condition unit of the action flow table and the execution condition of the subsequent action instructions, which can keep the structure of the action flow table neat and consistent with the original action flow logic.
  • the method further includes correspondingly setting the format of the second action flow table to reflect the hierarchical relationship between the second action flow table and the parent action flow table row; in some embodiments of the present invention, for the second action In the condition unit of the action flow table row of the flow table, the indentation width is set correspondingly according to the level of the second action flow table.
  • the action flow further includes a cyclic action flow, and the cyclic action flow is executed cyclically according to a set pattern when the execution conditions are met.
  • the method is characterized in that: the action flow table row further includes a cyclic execution attribute; the method further includes determining that when the action flow corresponding to the action flow table row is a cyclic action flow, setting the action flow table row cyclic execution attribute value according to the circulation mode of the action flow step;
  • the cyclic execution attribute value includes whether to cyclically execute, the cycle of cyclical execution, and/or the cyclically executed task scheduling priority parameter;
  • the method further includes the step of correspondingly setting the format of the action flow table row corresponding to the cyclic action flow to reflect the cyclic execution attribute of the action flow table row;
  • the action process further includes a switching branch action process.
  • the switching branch action process includes a branch switching instruction and a branch action process.
  • the branch switching instruction includes a target index variable.
  • the branch action process includes at least one branch index value.
  • the switch instruction is an action instruction used to judge the value of the target index variable and switch to execute the branch action flow whose branch index value matches the value of the target index variable; the method is characterized in that step 3 also includes: judging if the flow step is To switch the branch action flow, add the branch switching instruction for switching the branch action flow to the instruction unit of the action flow table row, and create a branch action flow table for the switching branch action flow, and embed the branch action flow table hierarchically in the action flow table Under the row; the branch action flow table contains a branch index column.
  • a branch action flow table row is added to the branch action flow table.
  • the branch action flow table row contains the branch action flow table.
  • the index unit corresponding to the index column; the method further includes adding the branch index value of the switching branch action process to the branch index value unit of the branch action process table row; and then in turn for each branch action process included in the switching branch action process from the step 1. Start execution, and embed the action flow table created in step 1 hierarchically under the branch action flow table row corresponding to the branch action flow.
  • the branch switching instruction corresponds to a set of mutually exclusive conditional branch action procedures that compare the value of the branch index and the value of the target index variable, and this set of mutually exclusive conditional branch action procedures can be used as a target index variable The value of is judged and the branch switching action flow that matches the branch index value with the value of the target index variable is switched for processing;
  • branch action flow table further includes a comment column
  • the branch action flow table row contains a comment unit corresponding to the comment column
  • the method further includes the step of setting the content of the comment unit according to the meaning of each branch action flow included in the switching branch action flow ;
  • action flow table embedded under the branch flow table row is aligned with the upper level action flow table containing the branch flow table by column.
  • the action instruction of the action flow further includes an instruction for setting the value of the target index variable.
  • the method is characterized in that: the action flow table further includes a switching target column, and the action flow table row correspondingly also includes a switching target unit,
  • step 3 before adding the action instruction to the instruction unit, it also includes judging if the action instruction is an instruction to set the value of the target index variable, then set the content of the switching target unit according to the instruction to set the value of the target index variable, and set the target index variable Value instructions are no longer added to the steps in the instruction unit of the action flow table row.
  • the switching target column of the set action flow table is located on the right side of the instruction column; by setting the switching target column of the action flow table, the instructions for switching the target branch action flow in the action flow table are independent of other action instructions, and different types are improved.
  • the degree of separation of process steps and can more clearly compare the differences in the switching targets of different branch actions, which helps to detect and avoid program errors in time;
  • the switching branch action process further includes state variables, and the value of the state variable is determined according to the branch action process of the switching branch action process.
  • the method is characterized in that: the branch action process table also includes a branch status column, branch The action flow table row correspondingly includes the branch state unit, and the method further includes acquiring the state variable in the switching branch action flow and setting the branch action flow table corresponding to the branch action flow according to the value of the state variable determined by the branch action flow of the switching branch action flow The step of the content of the branch status unit of the line.
  • branch status column for the branch action flow table, it is possible to compare the differences of different branch action processes more clearly, which helps to detect and avoid program errors in time and quickly and accurately configure the process steps of the branch action process; and helps Improve the separation of process steps, thereby reducing the number of rows in the action flow table and improving the utilization of the screen.
  • the present invention also provides a method for executing an action process according to an action process table.
  • the method includes: step 11, sequentially obtaining action process table rows of the action process table; step 12, judging the action process table rows If the execution condition of the condition unit is true, if yes, perform the following steps, otherwise continue to obtain the next action flow table line and return to step 12 to start execution; step 13, obtain and execute the action instruction in the action flow table line instruction unit; Step 14. Determine whether there is an embedded second action flow table under the action flow table line. If there is, execute the second action flow table from step 11 until the second action flow table is processed; step 15, get and action The flow sheet behavior is the next action flow sheet row of the non-mutually exclusive relationship, and then returns to step 12 to repeat the execution.
  • step 12 of the method also includes judging whether the action flow table row is set with a cyclic execution attribute. If so, when the execution condition in the condition unit of the action flow table row is true, the value of the cyclic execution attribute is determined.
  • the set loop mode repeats the steps in the action flow table through step 12.
  • step 13 of the method further includes when it is determined that the action instruction is a branch switching instruction, obtaining the branch action flow table embedded below the action flow table line containing the branch switching instruction, and looking up the branch action flow table The branch action flow table row whose index unit content matches the value of the target index variable of the branch switching instruction is obtained, and the action flow table embedded below the branch action flow table row is obtained, and the steps of the action flow table are processed from step 11.
  • step 13 of the method further includes the step of acquiring the content of the switching target unit of the action flow table row, and executing the instruction of setting the value of the target index variable in the switching target unit.
  • the instruction for setting the value of the target index variable in the processing switching target unit is executed after the processing of the action instruction in the instruction unit.
  • the method further includes determining whether the branch status unit of the branch action flow table row is set, and if so, obtaining the content of the branch status unit of the branch action flow table row, and setting the branch according to the content of the branch status unit The step of the state variable value of the action flow.
  • the present invention also provides a device for tabulating the action flow.
  • the flow steps of the action flow include an action instruction and a conditional branch action flow.
  • the conditional branch action flow includes execution conditions, a first branch action flow and / Or the second branch action process, if the execution condition is true, the first branch action process is executed, otherwise the second branch action process is executed,
  • the device includes: an action flow table creation section: for creating an action flow table, the action flow table includes conditions Columns and instruction columns; the created action flow table is used for the action flow table row creation part to continue processing; the action flow table row creation part: used to add action flow table rows to the action flow table and call the flow step processing part for processing, actions
  • the flow table row includes condition units and instruction units corresponding to the condition column and instruction column of the action flow table; the created action flow table row is used for the flow step processing unit to continue processing; the flow step processing unit: used to obtain the actions sequentially
  • process step is a conditional branch action process
  • the subsequent process step is a conditional branch action process
  • the conditional branch action process is processed by the action process table creation part
  • the action process table created by the action process table creation part for the conditional branch action process is used as the second action process table, and Embed the created second action flow table hierarchically under the action flow table row; after completing the processing of the conditional branch action flow, the action flow table line creation part continues to process the subsequent process steps in the first branch action flow;
  • process step is an action instruction
  • condition unit of the action process table row to represent a condition that is always true, and use a condition that is always true as the execution condition of the subsequent action instruction
  • subsequent action instruction Add to the instruction unit of the action flow table row; until the subsequent flow step is a conditional branch action flow, continue to process the subsequent flow steps through the action flow table line creation part;
  • the action process also includes a cyclic action process.
  • the cyclic action process is executed cyclically according to a set pattern when the execution conditions are met.
  • the device is characterized in that: the action flow table row also includes the cyclic execution attribute; the device also It includes a cyclic execution attribute setting unit, which is used to determine that when the action flow corresponding to the action flow table row is a cyclic action flow, set the cyclic execution attribute value of the action flow table row according to the cycle mode of the action flow;
  • the action flow also includes a switching branch action flow.
  • the switching branch action flow includes a branch switching instruction and a branch action flow.
  • the branch switching instruction includes a target index variable.
  • the branch action flow contains at least one branch index value.
  • the switch instruction is an action instruction used to judge the value of the target index variable and switch to execute the branch action flow whose branch index value matches the value of the target index variable; the device is characterized in that the device further includes: a branch action flow table creation unit: Used to create a branch action flow table for the switching branch action flow.
  • the branch action flow table contains a branch index column; the created branch action flow table is used for the branch action flow table row creation part to continue processing; the branch action flow table row creation part: It is used to add a branch action flow table row to the branch action flow table for each branch action flow included in the switching branch action flow.
  • the branch action flow table row contains the index unit corresponding to the index column of the branch action flow table; the branch action flow table The row creation part is also used to add the branch index value of the switching branch action flow to the branch index value unit of the branch action flow table row; then the action flow table creation part sequentially processes each branch action flow included in the switching branch action flow , And hierarchically embed the action flow table created in the action flow table creation part under the branch action flow table row corresponding to the branch action flow; the flow step processing part is also used to determine if the flow step is to switch the branch action flow, then Add the branch switching instruction for switching the branch action flow to the instruction unit of the action flow table row, and process the switching branch action flow through the branch action flow table creation part, and the branch action flow table hierarchy created by the branch action flow table creation part The ground is embedded under the action flow table line that contains the branch switching instruction.
  • the action instruction of the action flow also includes an instruction to set the value of the target index variable;
  • the device is characterized in that: the action flow table further includes a switching target column, and the action flow table row correspondingly also includes a switching target unit,
  • the action flow instruction processing unit Before adding the action instruction to the instruction unit, the action flow instruction processing unit also judges that if the action instruction is an instruction to set the value of the target index variable, it sets the content of the switching target unit according to the instruction to set the value of the target index variable, and sets the target index variable Value instructions are no longer added to the instruction unit of the action flow table row.
  • the switching branch action process also includes state variables, and the value of the state variable is determined according to the branch action process of the switching branch action process.
  • the device is characterized in that: the branch action process table also includes a branch status column, branch The action flow table row correspondingly includes the branch state unit, and the branch action flow table line creation part is also used to obtain the state variable of the switching branch action flow and set the branch action flow according to the value of the state variable determined by the branch action flow of the switching branch action flow The content of the branch status unit of the table row.
  • the present invention also provides a device for executing an action flow according to the action flow table.
  • the device includes: an action flow table row acquiring unit for sequentially acquiring the action flow table rows of the action flow table and passing The action flow table row judgment unit continues to process the acquired action flow table row; the action flow table row judgment unit is used to judge whether the execution condition of the condition unit of the acquired action flow table row is true; if it is, it is executed through the action instruction Continue processing; otherwise, continue to obtain the next action flow table row through the action flow table line acquisition part, and then be processed by the action flow table line judgment part; the action instruction execution part is used to obtain and execute the action flow table line instruction unit The action instruction is then processed by the second action flow table processing part; the second action flow table processing part is used to determine whether there is an embedded second action flow table under the action flow table line, and if so, it is directed to the second action flow The table continues to be processed by the action flow table row acquisition unit until the second action flow table is processed, and then continues to be processed by the non
  • the action flow table row judgment unit is also used to judge whether the action flow table row contains the loop execution attribute, and if so, the execution condition in the action flow table row condition unit is true according to the loop execution attribute value
  • the set cycle mode repeatedly executes the action flow table row through the action flow table row judgment part;
  • the action instruction execution unit is also used to determine when the action instruction is a branch switching instruction, obtain the branch action flow table embedded below the action flow table line containing the branch switch instruction, and look up the branch action flow table The branch action flow table row in which the content of the index unit matches the value of the target index variable of the branch switching instruction, and then the branch action flow table row is processed by the branch action flow table row processing part; the branch action flow table row processing part is used for The action flow table embedded below the branch action flow table row is acquired, and the action flow table is processed by the action flow table row acquisition unit.
  • the action instruction execution unit is also used to obtain the content of the switching target unit of the action flow table row, and correspondingly set the value of the target index variable according to the content of the switching target unit.
  • the content of the index unit and the target index variable of the branch switching instruction is also used to determine whether the branch state unit of the branch action flow table row is set. If it is, the content of the branch state unit of the branch action flow table row is obtained, and according to the branch state unit The content sets the value of the state variable of the branch action process;
  • Figures 1 to 2 show a typical automated production system, including a machine tool 200 and a manipulator 300.
  • the machine tool 200 includes a protective door 201.
  • the protective door 201 is closed when the machine is processed and opened after the processing is completed. .
  • the opening position and the closing position of the protective door 201 are provided with sensors for detecting whether the opening or closing of the protective door 201 is in place.
  • the machine tool also includes an output area 202 for receiving the processed workpiece 400.
  • the workpiece 400 slides to the output area 202 after the processing is completed.
  • the output area 202 is provided with a sensor for detecting whether there is a workpiece 400 in the output area 202.
  • the manipulator 300 grabs the workpiece 400 from the output area through the gripper 301 and places it in the workpiece stacking area 500.
  • a sensor is provided on the gripper 301 of the manipulator for detecting whether the workpiece 400 has been grasped.
  • the machine tool's protective door 201 is not opened in place or there is no workpiece in the output area 202, it will prompt "Mechanical manual parts grabbing error alarm”; when the manipulator 300 places the workpiece in the palletizing area If there is a workpiece detected on 301, it will prompt "Machine manual part placement error alarm”.
  • the manipulator 300 is also provided with a red, yellow and green indicator light 202.
  • the green light of the tricolor indicator light 202 is on; when the manipulator 300 is waiting or stopping, the yellow light of the tricolor indicator light 202 is on.
  • the light is on; when the manipulator 300 is in an error state, the red light of the tri-color indicator light 202 is on to indicate the error state.
  • the initial state of the system is set as: the protective door 201 of the machine tool has been closed in place, and there is no workpiece in the machine output area 202; the manipulator 300 has not grabbed the workpiece, and the yellow light of the three-color indicator light 202 is on; the initial value of the variable "machine state” is equal to 100 , Means “machine is stopped”; the initial value of the variable "manipulator state” is equal to 100, which means “manipulator is stopped”.
  • set the "machine start” signal to true, the "manipulator stop” signal to false, and the “machine stop” signal to false; and start to execute the following process steps:
  • Process step 1 is a conditional branch action process, used to determine whether the system is turned on; if so, perform process steps 3, 78, and 153. And these steps are executed cyclically when the system is turned on.
  • Process step 3 is a conditional branch action process, which is used to determine whether the "manipulator stop" signal is true; if it is, perform process steps 5, 6, and 7, otherwise, perform process step 14.
  • Step 5 of the process is an action command to reset the "manipulator stop" signal to false.
  • Step 6 of the process is an action command to set the "manipulator status" equal to 100, that is, "manipulator stopping".
  • Process step 7 is a conditional branch action process, which is used to determine whether the variable "manipulator status" is equal to 400 or 500; if it is, then process step 9 is executed, otherwise, process step 78 is executed.
  • Step 9 of the process is an action instruction to suspend the action of the manipulator.
  • Process step 14 is an action instruction to call the sub-process of the manipulator.
  • the manipulator sub-process is used to switch and execute the corresponding action process according to the state of the manipulator.
  • the first process step executed in the robot sub-process is process step 16.
  • Process step 16 is a conditional branch action process, which is used to determine whether the variable "manipulator status" is equal to 100, that is, "manipulator is stopped”; if yes, perform process steps 18 and 19; otherwise, perform process step 33.
  • Process step 18 is an action command used to set the value of the variable "indicator status" to "yellow light on”.
  • Process step 19 is a conditional branch action process, which is used to determine whether the "manipulator start" signal is true; if so, perform process steps 21 and 22.
  • Process step 21 is an action command used to reset the "manipulator start" signal to false.
  • the process step 22 is a conditional branch action process, which is used to determine whether a workpiece 400 is detected in the gripper 301 of the manipulator; if it is, the process step 23 is executed, otherwise, the process step 24 is executed.
  • Step 23 of the process is an action instruction, which is used to start the action of placing the workpiece by the manipulator.
  • Process step 24 is a conditional branch action process for judging whether the machine tool guard door 201 is opened in place and a workpiece 400 is detected in the machine tool output area 202; if so, the process steps 26 and 27 are executed; otherwise, the process step 30 is executed.
  • Step 26 of the process is an action command, which is used to start the action of the manipulator to grab the workpiece.
  • Step 27 of the process is an action command used to set the "manipulator status" equal to 400, that is, "mechanical manual parts grabbing”.
  • Process step 30 is an action command, used to set the "manipulator status" equal to 300, that is, "mechanical manual parts grabbing error alarm”.
  • Process step 33 is a conditional branch action process, used to determine whether the variable "manipulator status" is equal to 200, that is, "mechanical manual parts grabbing waiting”; if yes, perform process steps 35 and 36, otherwise perform process step 49.
  • Process step 35 is an action command used to set the value of the variable "indicator status" to "yellow light on”.
  • the process step 36 is a conditional branch action process, used to determine whether the "manipulator start" signal is true; if it is, the process steps 38 and 39 are executed.
  • the process step 38 is an action command used to reset the "manipulator start" signal to false.
  • Process step 39 is a conditional branch action process for judging whether the machine tool guard door 201 is opened in place and the workpiece 400 is detected in the machine tool output area 202; if so, the process steps 41 and 42 are executed; otherwise, the process step 45 is executed.
  • Step 41 of the process is an action instruction, which is used to start the action of the manipulator to grab the workpiece.
  • Process step 42 is an action command for setting the "manipulator state" equal to 400, that is, "mechanical manual part grabbing”.
  • Step 45 of the process is an action command used to set the "manipulator status" equal to 300, that is, "manipulator manual parts grabbing error alarm”.
  • Process step 49 is a conditional branch action process for judging whether the variable "manipulator status" is equal to 300, that is, "mechanical manual parts grabbing error alarm”; if yes, proceed to process step 51, otherwise, proceed to process step 53.
  • the flow step 51 is an action instruction used to set the value of the variable "indicator status" to "red light on”.
  • Process step 53 is a conditional branch action process for judging whether the variable "manipulator status" is equal to 400, that is, "mechanical manual parts are being grabbed”; if yes, perform process steps 55 and 56; otherwise, perform process step 62.
  • Process step 55 is an action instruction used to set the value of the variable "indicator status" to "green light on”.
  • the process step 56 is a conditional branch action process, which is used to determine whether the manipulator grasps the workpiece or not; if it is, the process steps 58 and 59 are executed.
  • Process step 58 is an action instruction used to start the action of the manipulator to place the workpiece.
  • Step 59 of the process is an action command for setting the "manipulator status" equal to 500, that is, "mechanical manual parts are being placed”.
  • Process step 62 is a conditional branch action process, used to determine whether the variable "manipulator status" is equal to 500, that is, "mechanical manual parts are placed”; if so, perform process steps 64 and 65, otherwise perform process step 73.
  • Process step 64 is an action instruction used to set the value of the variable "indicator status" to "green light on”.
  • the process step 65 is a conditional branch action process, which is used to determine whether the manipulator placement of the workpiece is completed; if it is, the process step 67 is executed.
  • Process steps 67 conditional branch action processes are used to determine whether a workpiece 400 is detected in the gripper 301 of the manipulator, if yes, process step 68 is executed, otherwise, process step 70 is executed.
  • Process step 68 is an action command for setting the "manipulator status" equal to 600, that is, "manipulator manual part placement error alarm”.
  • the process step 70 is an action instruction for setting the "manipulator state" equal to 200, that is, "the mechanical manual part is waiting for grabbing”.
  • Process step 73 is a conditional branch action process, used to determine whether the variable "manipulator status" is equal to 600, that is, "mechanical manual part placement error alarm”; if so, proceed to process step 74.
  • Process step 74 is an action command used to set the value of the variable "indicator status" to "red light on”.
  • the process step 78 is a conditional branch action process, which is used to determine whether the "machine stop" signal is true; if it is, the process steps 80, 81, and 82 are executed; otherwise, the process step 87 is executed.
  • the flow step 80 is an action command used to reset the "machine stop" signal to false.
  • Step 81 of the process is an action command used to set the "machine tool status" equal to 100, that is, "the machine tool is stopped”.
  • Process step 82 is a conditional branch action process, used to determine whether the variable "machine tool status" is equal to 300, that is, “machine tool processing”; if so, perform process step 83.
  • the flow step 83 is an action command for suspending the action of the machine tool.
  • Process step 87 is an action instruction to call a sub-process of the machine tool, which is used to switch and execute the corresponding action process according to the state of the machine tool.
  • the first process step executed in the machine tool sub-process is process step 89.
  • the process step 89 is a conditional branch action process, which is used to determine whether the variable "machine tool status" is equal to 100, that is, "the machine tool is stopped”; if so, the process step 91 is executed, otherwise, the process step 119 is executed.
  • the process step 91 is a conditional branch action process, which is used to determine whether the "machine start" signal is true; if it is, the process steps 93 and 94 are executed.
  • the process step 93 is an action command used to reset the "machine start" signal to false.
  • the process step 94 is a conditional branch action process, used to determine whether there is a workpiece 400 in the machine output area 202, if there is a workpiece 400, the process step 96 is executed; otherwise, the process step 107 is executed.
  • the process step 96 is a conditional branch action process, which is used to determine whether the protective door 201 of the machine tool is not opened in place, if it is, the process steps 98 and 99 are executed; otherwise, the process steps 103 and 104 are executed.
  • the process step 98 is an action command for opening the protective door of the machine tool.
  • the flow step 99 is an action command, which is used to set the "machine tool status" equal to 400, that is, "the machine tool protective door is opening”.
  • the process step 103 is an action instruction for starting the grasping action of the manipulator 300.
  • the flow step 104 is an action instruction for setting the "machine tool status" equal to 500, that is, "the machine tool workpiece is waiting for grabbing”.
  • the process step 107 is a conditional branch action process, used to determine whether the protective door 201 of the machine tool is not closed in place, if it is, the process steps 109 and 110 are executed; otherwise, the process steps 114 and 115 are executed.
  • Step 109 of the process is an action command for closing the protective door 201 of the machine tool.
  • the process step 110 is an action command used to set the "machine tool status" equal to 200, that is, "the machine tool guard door is closing".
  • the process step 114 is an action instruction for starting machine tool processing.
  • the process step 115 is an action command, which is used to set the "machine tool status" equal to 300, that is, "machine tool processing".
  • the process step 119 is a conditional branch action process, used to determine whether the variable "machine tool status" is equal to 200, that is, "the machine tool guard door is closing"; if so, the process step 121 is executed, otherwise the process step 127 is executed.
  • the process step 121 is a conditional branch action process, used to determine whether the machine tool to the protective door 201 is closed in place, and if it is, the process steps 123 and 124 are executed.
  • the process step 123 is an action instruction used to start machine tool processing.
  • the process step 124 is an action instruction for setting the "machine tool status" equal to 300, that is, "machine tool processing".
  • Process step 127 is a conditional branch action process, used to determine whether the variable "machine tool status" is equal to 300, that is, "machine tool processing”; if it is, process step 129 is executed, otherwise, process step 135 is executed.
  • the process step 129 is a conditional branch action process, used to determine whether the machining of the machine tool has been completed, and if so, the process steps 131 and 132 are executed.
  • the process step 131 is an action command for opening the protective door of the machine tool.
  • the process step 132 is an action command, which is used to set the "machine tool status" equal to 400, that is, "the machine tool protective door is opening".
  • Process step 135 is a conditional branch action process for judging whether the variable "machine tool status" is equal to 400, that is, "machine tool guard door is opening”; if so, perform process step 137, otherwise perform process step 143.
  • the process step 137 is a conditional branch action process, used to determine whether the machine tool to the protective door 201 is opened in place, and if so, the process steps 139 and 140 are executed.
  • the process step 139 is an action instruction for starting the grasping action of the manipulator 300.
  • the process step 140 is an action command used to set the "machine tool status" equal to 500, that is, "the machine tool workpiece is waiting for grabbing”.
  • the process step 143 is a conditional branch action process, which is used to determine whether the variable "machine tool status" is equal to 500, that is, "the machine tool workpiece is waiting for grabbing”; if so, the process step 145 is executed.
  • the process step 145 is a conditional branch action process, which is used to determine whether the gripping action of the manipulator has been performed and there is no workpiece 400 in the machine tool output area 202. If so, the process steps 147 and 148 are executed.
  • the process step 147 is an action command for closing the protective door 201 of the machine tool.
  • the process step 148 is an action command used to set the "machine tool status" equal to 200, that is, "the machine tool guard door is closing".
  • Process step 153 is an action instruction for stopping the action process for 100 milliseconds.
  • a text-based programming language is a more common way of defining the flow of actions.
  • the above-mentioned action flow described in the C language program is provided below.
  • the C language program can be used as the input form of the action flow of the solution of the present invention.
  • the flow step number of the above action flow can correspond to the line number of the following C language program code.
  • Step 1 Create an action flow table 10000 for the main flow.
  • the action flow table 10000 includes a condition column 601 and instructions
  • the action flow table row 10001 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table; to obtain the above flow step 1, because Process step 1 is a conditional branch action process.
  • the execution condition "system boot" of process step 1 is added to the condition unit in row 10001 of the action process table;
  • step 1 of the process indicates that subsequent instructions are cyclically executed under the premise that its execution conditions are met
  • the cyclic execution attribute value of line 10001 of the action process table is set to cyclic execution
  • the content of the condition unit in line 10001 of the action process table corresponds to the left Set a circle with a rotating arrow sign 610 inside, which is the corresponding setting in the cell format according to the cycle execution attribute set in row 10001 of the action flow table to reflect the execution method of step 1 of the process .
  • step 2 start from step 2 to process the branch action flow whose judgment result in step 1 of the flow is true;
  • Step 2 Since the process step 3 is a conditional branch action process, a new action process table 11000 is created for the process step 3, and the action process table 11000 is hierarchically embedded under the action process table row 10001.
  • the action flow table 11000 includes a condition column 601 and a command column 602. Create an action flow table row 11001 for the action flow table 11000.
  • the unit format of the condition unit of the action flow table row 11001 is set accordingly, so that the content of the condition unit of the action flow table row 11001 is compared with the action flow
  • the content of the condition unit in table row 10001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 3 continue to process other process steps in the branch action flow whose judgment result of flow step 3 is true; and from step 4, process the branch action flow whose judgment result of flow step 3 is false.
  • Step 3 Since process step 7 is a conditional branch action process, a new action process table 11100 is created for process step 7, and the action process table 11100 is hierarchically embedded under the action process table row 11001.
  • the action flow table 11100 includes a condition column 601 and a command column 602. Create action flow table row 11101 for action flow table 11100.
  • Action flow table row 11101 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 7 to the action flow table In the condition unit of line 11101, the content of the subsequent action instruction, that is, the content of process step 9 is added to the instruction unit of line 11101 of the action flow table; further, the action flow is adjusted according to the hierarchical relationship between the action flow table 11000 and the action flow table 11100
  • the corresponding setting of the unit format of the condition unit in row 11101 makes the content of the condition unit in row 11101 of the action flow table indented by a set width compared with the content of the condition unit in row 11001 of the action flow table. Reflect the hierarchical relationship between the two.
  • Step 4 Since the process step 14 is to call the action instruction of the robot sub-process, a new action process table line 11002 is created after the action process table line 11001, and a constant "ELSE" representing "true” is added as the action process table line 11002 the content of the condition unit; and add the content of step 14 of the process to the instruction unit in line 11002 of the action flow table.
  • the action flow table row 11001 and the action flow table row 11002 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 11001 and the action flow table row 11002 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 5 Continue to obtain the subsequent action flow and create a new action flow table row 11003 for flow step 78.
  • the action flow table row 11003 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 78 is the conditional branch action process.
  • the execution condition of process step 78 is added to the condition unit in line 11003 of the action flow table, and the content of subsequent action instructions, namely process step 80 and process step 81, is added to line 11003 of the action flow table.
  • the instruction unit In the instruction unit;
  • step 6 onwards continue to process other flow steps in the branch action flow whose judgment result in flow step 78 is true; and from step 7 to process the branch action flows whose judgment result is false in flow step 78.
  • Step 6 Since the process step 82 is a conditional branch action process, a new action process table 11200 is created for the process step 82, and the action process table 11200 is hierarchically embedded under the action process table row 11003.
  • the action flow table 11200 includes a condition column 601 and a command column 602. Create action flow table row 11201 for action flow table 11200.
  • Action flow table row 11201 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 82 to the action flow table In the condition unit of line 11201, the content of the subsequent action instruction, that is, the content of process step 83, is added to the instruction unit of line 11201 of the action process table;
  • the unit format of the condition unit in row 11201 of the action flow table is set accordingly, so that the content of the condition unit in row 11201 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 11003 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 7 Since the process step 87 is the action instruction to call the sub-process of the machine tool, a new action process table line 11004 is created after the action process table line 11003, and a constant "ELSE" representing "true” is added as the action process table line 11004 The content of the condition unit; and the content of step 87 of the process is added to the instruction unit of line 11004 of the action flow table.
  • the action flow table row 11003 and the action flow table row 11004 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 11003 and the action flow table row 11004 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 8 Since the process step 153 is an action instruction, a new action process table line 11005 is created after the action process table line 11004, and a constant "TRUE” representing "true” is added as the content of the condition unit of the action process table line 11005 ; And add the content of flow step 153 to the instruction unit in line 11005 of the action flow table.
  • Step 9 Obtain the first process step in the robot sub-process. Since process step 16 is a conditional branch action process, create a new action process table 20000 for process step 16.
  • the action flow table 20000 includes a condition column 601 and a command column 602.
  • Action flow table row 20001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 16 to the action flow table In the condition unit of line 20001, add the subsequent action instruction, which is the content of process step 18, to the instruction unit of line 20001 of the action flow table; then continue from step 10 to the branch action process that judges the result of process step 16 to be true Other process steps are processed.
  • step 14 starting from step 14 to process the branch action flow whose judgment result in step 16 is false.
  • Step 10 Since the process step 19 is a conditional branch action process, a new action flow table 21000 is created for the process step 19, and the action flow table 21000 is hierarchically embedded under the action flow table row 20000.
  • the action flow table 21000 includes a condition column 601 and a command column 602.
  • Create action flow table row 21001 for action flow table 21000 action flow table row 21001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 19 to the action flow table In the condition unit of line 21001, the content of the subsequent action instruction, that is, the content of process step 21, is added to the instruction unit of line 21001 of the action process table;
  • the unit format of the condition unit in row 21001 of the action flow table is set accordingly, so that the content in the condition unit of row 21001 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 20001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 11 continue to process other flow steps in the branch action flow whose judgment result in flow step 19 is true.
  • Step 11 Since the process step 22 is a conditional branch action process, a new action process table 21100 is created for the process step 22, and the action process table 21100 is hierarchically embedded under the action process table row 21000.
  • the action flow table 21100 includes a condition column 601 and a command column 602. Create action flow table row 21101 for action flow table 21100.
  • Action flow table row 21101 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 22 to the action flow table In the condition unit of line 21101, the content of the subsequent action instruction, that is, the content of process step 23, is added to the instruction unit of line 21101 of the action flow table; further, the action flow is adjusted according to the hierarchical relationship between the action flow table 21000 and the action flow table 21100
  • the corresponding setting of the unit format of the condition unit in row 21101 makes the content of the condition unit in row 21101 of the action flow table indented by a set width compared with the content of the condition unit in row 21001 of the action flow table. Reflect the hierarchical relationship between the two.
  • Step 12 Continue to obtain the subsequent action flow and create a new action flow table row 21102 for flow step 24.
  • the action flow table row 21102 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 24 is the conditional branch action process.
  • the execution condition of process step 24 is added to the condition unit of the action flow table line 21102, and the subsequent action instructions, namely the content of process steps 26 and 27, are added to the action flow table line 21102 instruction In the unit
  • Step 13 Since the process step 30 is an action instruction, a new action process table line 21103 is created after the action process table line 21102, and a constant "ELSE" representing "true” is added as the content of the condition unit of the action process table line 21103 ; And add the content of step 30 of the flow to the instruction unit of line 21103 of the action flow table. Further, since the action flow table row 21102 and the action flow table row 21103 belong to the two mutually exclusive branch action flows of the conditional branch action flow, the mutually exclusive relationship between the action flow table row 21102 and the action flow table row 21103 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 14 Continue to obtain the subsequent action flow and create a new action flow table row 20002 for flow step 33.
  • the action flow table row 20002 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 33 is a conditional branch action process.
  • the execution condition of process step 33 is added to the condition unit of the action flow table row 20002, and the subsequent action instruction, that is, the content of process step 35, is added to the instruction unit of the action flow table row 20002 ; Then continue from step 15 to process other process steps in the branch action process whose judgment result in process step 33 is true.
  • step 18 the branch action flow for which the judgment result of flow step 33 is false is processed.
  • Step 15 Since the process step 36 is a conditional branch action process, a new action process table 22000 is created for the process step 36, and the action process table 22000 is hierarchically embedded under the action process table row 20000.
  • the action flow table 22000 includes a condition column 601 and a command column 602. Create action flow table row 22001 for action flow table 22000.
  • Action flow table row 22001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 36 to the action flow table In the condition unit of line 22001, the content of the subsequent action instruction, that is, the content of process step 38, is added to the instruction unit of line 22001 of the action flow table; further, the action flow is adjusted according to the hierarchical relationship between the action flow table 20000 and the action flow table 22000
  • the corresponding setting of the unit format of the condition unit in row 22001 makes the content of the condition unit in row 22001 of the action flow table indented by a set width compared with the content of the condition unit in row 20002 of the action flow table. Reflect the hierarchical relationship between the two.
  • step 16 continue to process other flow steps in the branch action flow whose judgment result in flow step 36 is true.
  • Step 16 Since the process step 39 is a conditional branch action process, a new action process table 22100 is created for the process step 39, and the action process table 22100 is hierarchically embedded under the action process table row 22000.
  • the action flow table 22100 includes a condition column 601 and a command column 602. Create action flow table row 22101 for action flow table 22100.
  • Action flow table row 22101 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 39 to the action flow table In the condition unit of line 22101, add the content of the subsequent action instructions, namely process steps 41 and 42 to the instruction unit of line 22101 of the action process table;
  • the unit format of the condition unit in row 22101 of the action flow table is set accordingly, so that the content in the condition unit of row 22101 of the action flow table is compared with that in the action flow table.
  • the content of the condition unit in table row 22001 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 17 Since the process step 45 is an action instruction, a new action process table line 22102 is created after line 22101 of the action process table, and a constant "ELSE" representing "true” is added as the content of the condition unit of the action process table line 22102 ; And add the content of step 45 of the flow to the instruction unit of line 22102 of the action flow table.
  • the action flow table row 22101 and the action flow table row 22102 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 22101 and the action flow table row 22102 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 18 Continue to obtain the subsequent action flow and create a new action flow table row 20003 for flow step 49.
  • the action flow table row 20003 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 49 is the conditional branch action process.
  • the execution condition of process step 49 is added to the condition unit in line 20003 of the action flow table, and the subsequent action instruction, that is, the content of process step 51, is added to the instruction unit in line 20003 of the action flow table. ;
  • Step 19 Continue to obtain the subsequent action flow and create a new action flow table row 20004 for flow step 53.
  • the action flow table row 20004 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 53 is the conditional branch action process.
  • the execution condition of process step 53 is added to the condition unit in line 20004 of the action flow table, and the content of the subsequent action instructions, namely process steps and 59, is added to the instruction unit in line 20004 of the action flow table. in;
  • step 20 continue to process other flow steps in the branch action flow whose judgment result in flow step 53 is true.
  • step 21 processing is performed on the branch action flow whose judgment result in flow step 53 is false.
  • Step 20 Since the process step 56 is a conditional branch action process, a new action process table 24000 is created for the process step 56, and the action process table 24000 is hierarchically embedded under the action process table row 20000.
  • the action flow table 24000 includes a condition column 601 and a command column 602.
  • action flow table row 24001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 56 to the action flow table In the condition unit of line 24001, the content of the subsequent action instructions, namely, process steps 58, 59, is added to the instruction unit of line 24001 of the action flow table; further, according to the hierarchical relationship between action flow table 20000 and action flow table 24000
  • the corresponding setting of the unit format of the condition unit on line 24001 of the action flow table makes the content of the condition unit on line 24001 of the action flow table indented by a set width compared with the content of the condition unit on line 20004 of the action flow table. Used to reflect the hierarchical relationship between the two.
  • Step 21 Continue to obtain the subsequent action flow, and create a new action flow table row 20005 for flow step 62.
  • the action flow table row 20005 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 62 is a conditional branch action process.
  • the execution condition of process step 62 is added to the condition unit in line 20005 of the action flow table, and the subsequent action instruction, that is, the content of process step 64, is added to the instruction unit in line 20005 of the action flow table. ;
  • step 22 continue to process other flow steps in the branch action flow whose judgment result in flow step 62 is true.
  • step 25 the branch action flow for which the judgment result of flow step 62 is false is processed.
  • Step 22 Since the process step 65 is a conditional branch action process, a new action process table 25000 is created for the process step 65, and the action process table 25000 is hierarchically embedded under the action process table row 20000.
  • the action flow table 25000 includes a condition column 601 and a command column 602. Create action flow table row 25001 for action flow table 25000, action flow table row 25001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 65 to the action flow table In the condition unit of line 25001;
  • the corresponding setting of the unit format of the condition unit of the action flow table row 25001 makes the content of the condition unit of the action flow table row 25001 compared to the action flow
  • the content of the condition unit in table row 20005 is indented by a set width to reflect the hierarchical relationship between the two. Then, starting from step 23, continue to process other flow steps in the branch action flow whose judgment result in flow step 65 is true.
  • Step 23 Since the process step 67 is a conditional branch action process, a new action process table 25100 is created for the process step 67, and the action process table 25100 is hierarchically embedded under the action process table row 25000.
  • the action flow table 25100 includes a condition column 601 and a command column 602. Create action flow table row 25101 for action flow table 25100, action flow table row 25101 includes condition units and instruction units corresponding to condition column 601 and instruction column 602 of the action flow table; add the execution condition of flow step 67 to the action flow table In the condition unit of line 25101, the content of the subsequent action instruction, that is, the content of process step 68, is added to the instruction unit of line 25101 of the action process table;
  • the corresponding setting of the unit format of the condition unit of the action flow table row 25101 makes the content of the condition unit of the action flow table row 25101 compare to the action flow
  • the content of the condition unit in table row 25001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 24 processing is performed on the branch action flow whose judgment result in flow step 67 is false.
  • Step 24 Since the process step 70 is an action instruction, a new action process table line 25102 is created after line 25101 of the action process table, and a constant "ELSE" representing "true” is added as the content of the condition unit of the action process table line 25102 ; And add the content of flow step 70 to the instruction unit in line 25102 of the action flow table.
  • the action flow table row 25101 and the action flow table row 25102 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 25101 and the action flow table row 25102 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 25 Continue to obtain the subsequent action flow and create a new action flow table row 20006 for flow step 73.
  • the action flow table row 20006 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 73 is the conditional branch action process.
  • the execution condition of process step 73 is added to the condition unit of the action flow table row 20006, and the subsequent action instruction, which is the content of process step 74, is added to the instruction unit of the action flow table row 20006 ;
  • Step 26 Obtain the first process step in the sub-process of the machine tool. Since process step 89 is a conditional branch action process, a new action process table 30000 is created for process step 89.
  • the action flow table 30000 includes a condition column 601 and a command column 602. Create action flow table row 30001 for action flow table 30000.
  • Action flow table row 30001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of step 89 to the action flow table In the condition unit of line 30001;
  • step 27 continue to process other flow steps in the branch action flow whose judgment result in flow step 89 is true.
  • step 33 the branch action flow for which the judgment result of flow step 89 is false is processed.
  • Step 27 Since the process step 91 is a conditional branch action process, a new action process table 31000 is created for the process step 91, and the action process table 31000 is hierarchically embedded under the action process table row 30000.
  • the action flow table 31000 includes a condition column 601 and a command column 602. Create action flow table row 31001 for action flow table 31000.
  • Action flow table row 31001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 91 to the action flow table In the condition unit of line 31001, the content of the subsequent action instruction, that is, the content of process step 93, is added to the instruction unit of line 31001 of the action process table;
  • the unit format of the condition unit in row 31001 of the action flow table is set accordingly, so that the content of the condition unit in row 31001 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 30001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 28 continue to process other flow steps in the branch action flow whose judgment result in flow step 91 is true.
  • Step 28 Since the process step 94 is a conditional branch action process, a new action process table 31100 is created for the process step 94, and the action process table 31100 is hierarchically embedded under the action process table row 31000.
  • the action flow table 31100 includes a condition column 601 and a command column 602. Create action flow table row 31101 for action flow table 31100.
  • Action flow table row 31101 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 94 to the action flow table In the condition unit of line 31101;
  • the unit format of the condition unit in row 31101 of the action flow table is set accordingly, so that the content in the condition unit in row 31101 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 31001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 29 continue to process other flow steps in the branch action flow whose judgment result in flow step 94 is true.
  • step 31 processing is performed on the branch action flow whose judgment result in flow step 94 is false.
  • Step 29 Since the process step 96 is a conditional branch action process, a new action process table 31110 is created for the process step 96, and the action process table 31110 is hierarchically embedded under the action process table row 31100.
  • the action flow table 31110 includes a condition column 601 and a command column 602. Create action flow table row 31111 for action flow table 31110.
  • Action flow table row 31111 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 96 to the action flow table In the condition unit of line 31111, and add the content of the subsequent action instructions, that is, the content of process steps 98 and 99, to the instruction unit of line 31111 of the action process table;
  • the unit format of the condition unit in row 31111 of the action flow table is set accordingly, so that the content in the condition unit in row 31111 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 31101 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 30 Since the flow steps 103 and 104 are action instructions, a new action flow table row 31112 is created after the action flow table row 31111, and a constant "ELSE” representing "true” is added as the action flow table row 31112 condition unit Add the content of steps 103 and 104 to the instruction unit in row 31112 of the action flow table.
  • the action flow table row 31111 and the action flow table row 31112 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 31111 and the action flow table row 31112 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 31 Continue to obtain the subsequent action flow and create a new action flow table row 31102 for flow step 107.
  • the action flow table row 31102 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 107 is the conditional branch action flow.
  • the execution condition of step 107 of the flow is added to the condition unit of the action flow table row 31102, and the subsequent action instructions, namely the content of flow steps 109 and 110, are added to the instruction of the action flow table row 31102 In the unit
  • step 32 processing is performed on the branch action flow whose judgment result in flow step 107 is false.
  • Step 32 Since the flow steps 114 and 115 are action instructions, a new action flow table row 31103 is created after the action flow table row 31102, and a constant "ELSE" representing "true” is added as the action flow table row 31103 condition unit And add the content of steps 114 and 115 of the process to the instruction unit in line 31103 of the action process table.
  • the action flow table row 31102 and the action flow table row 31103 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 31102 and the action flow table row 31103 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 33 Continue to obtain the subsequent action flow and create a new action flow table row 30002 for flow step 119.
  • the action flow table row 30002 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 119 is a conditional branch action process, and the execution condition of process step 119 is added to the condition unit in row 30002 of the action process table;
  • step 34 continue to process other flow steps in the branch action flow whose judgment result in flow step 119 is true.
  • step 35 the branch action flow for which the judgment result of flow step 119 is false is processed.
  • Step 34 Since the process step 121 is a conditional branch action process, a new action process table 32000 is created for the process step 121, and the action process table 32000 is hierarchically embedded under the action process table row 30000.
  • the action flow table 32000 includes a condition column 601 and a command column 602. Create action flow table row 32001 for action flow table 32000.
  • Action flow table row 32001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 121 to the action flow table In the condition unit of row 32001, and add the content of the subsequent action instructions, namely process steps 123 and 124, to the instruction unit of row 32001 of the action flow table;
  • the corresponding setting of the unit format of the condition unit in row 32001 of the action flow table makes the content of the condition unit in row 32001 of the action flow table compare to the action flow.
  • the content of the condition unit in table row 30002 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 35 Continue to obtain the subsequent action flow and create a new action flow table row 30003 for flow step 127.
  • the action flow table row 30003 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 127 is a conditional branch action process, and the execution condition of process step 127 is added to the condition unit in row 30003 of the action process table;
  • step 36 continue to process other flow steps in the branch action flow whose judgment result in flow step 127 is true.
  • step 37 processing is performed on the branch action flow whose judgment result in flow step 127 is false.
  • Step 36 Since the process step 129 is a conditional branch action process, a new action process table 33000 is created for the process step 129, and the action process table 33000 is hierarchically embedded under the action process table row 30000.
  • the action flow table 33000 includes a condition column 601 and a command column 602. Create action flow table row 33001 for action flow table 33000.
  • Action flow table row 33001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 129 to the action flow table In the condition unit of line 33001, add the content of the subsequent action instructions, namely process steps 131 and 132, to the instruction unit of line 33001 of the action process table;
  • the unit format of the condition unit in row 33001 of the action flow table is set accordingly, so that the content of the condition unit in row 33001 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 30003 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 37 Continue to obtain the subsequent action flow, and create a new action flow table row 30004 for flow step 135.
  • the action flow table row 30004 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 135 is a conditional branch action process, and the execution condition of process step 135 is added to the condition unit in row 30004 of the action process table;
  • step 38 continue to process other flow steps in the branch action flow whose judgment result in flow step 135 is true.
  • step 39 processing is performed on the branch action flow whose judgment result in flow step 135 is false.
  • Step 38 Since the process step 137 is a conditional branch action process, a new action process table 34000 is created for the process step 137, and the action process table 34000 is hierarchically embedded under the action process table row 30000.
  • the action flow table 34000 includes a condition column 601 and a command column 602. Create action flow table row 34001 for action flow table 34000.
  • Action flow table row 34001 includes condition units and instruction units corresponding to the condition column 601 and instruction column 602 of the action flow table; add the execution conditions of flow step 137 to the action flow table In the condition unit of line 34001, add the content of the subsequent action instructions, namely process steps 139 and 140, to the instruction unit of line 34001 of the action process table;
  • the unit format of the condition unit in row 34001 of the action flow table is set accordingly, so that the content in the condition unit in row 34001 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 30004 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 39 Continue to obtain the subsequent action flow and create a new action flow table row 30005 for flow step 143.
  • the action flow table row 30005 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table;
  • Step 143 is a conditional branch action process, and the execution condition of process step 143 is added to the condition unit in row 30005 of the action process table;
  • step 40 continue to process other process steps in the branch action process whose judgment result in process step 143 is true.
  • Step 40 Since the process step 145 is a conditional branch action process, a new action process table 35000 is created for the process step 145, and the action process table 35000 is hierarchically embedded under the action process table row 30000.
  • the action flow table 35000 includes a condition column 601 and a command column 602. Create an action flow table row 35001 for the action flow table 35000.
  • the action flow table row 35001 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table; add the execution conditions of flow step 145 to the action flow table In the condition unit of line 35001, add the content of the subsequent action instructions, namely process steps 147 and 148, to the instruction unit of line 35001 of the action process table;
  • the corresponding setting of the unit format of the condition unit of the action flow table row 35001 makes the content in the condition unit of the action flow table row 35001 compare to the action flow
  • the content of the condition unit in table row 30005 is indented by a set width to reflect the hierarchical relationship between the two.
  • steps 1 to 40 illustrate the specific process of tabularizing the detailed action flow of the automated production system in this embodiment by the method of tabularization processing action flow.
  • an action flow table 10000 is created for the main flow in step 1, and 40 action flow table rows are added to the action flow table 10000 through steps 1 to 40 (as shown in Figure 6).
  • the method of processing the action flow in a table is to automatically create an empty action flow table (corresponding to step S1) for the action flow, and gradually add each flow step of the action flow to the action flow table. Finally, a final action flow table equivalent to the action flow is generated.
  • the action flow table row 10001 is generated in step 1 according to the process step 1 of the corresponding cyclic action process, and all subsequent process steps in the cyclic action process are embedded hierarchically Under the action flow table row 10001, the action flow table 11000 performs subsequent action flow table row generation. It can be seen that for a series of process steps that belong to the same cycle in the action flow, an action flow table row will be generated accordingly.
  • This process is equivalent
  • the continuous process steps in the action process are combined into at least one process step sequence corresponding to the corresponding action process type (corresponding to step S3), and the process step sequence is listed in the current action process table Generate the corresponding action flow table row.
  • This process is equivalent to sequentially obtaining the sequence of process steps from the action process, and according to the action flow type of the process step sequence, based on the predetermined line generation rules corresponding to the process step sequence with the action process type, the sequence generation and the sequence are generated in the action process table.
  • the action flow table row corresponding to the sequence of flow steps (corresponding to step S4).
  • step S5 the action flow table corresponding to the entire action process is generated, which is equivalent to judging whether the process steps have been acquired, if the judgment is otherwise, return to step S2, and if the judgment is yes, the final The operation flow table of the operation flow table and output (corresponding to step S5).
  • steps 9 to 40 correspond to the process when processing process step 14 and process step 87, and this process is just for ease of description. Place after step 8.
  • the action flow table includes a condition column and a command column (condition column 601 and command column 602 in FIG. 6).
  • the action flow table row 10001 when the action flow table row 10001 is generated in the action flow table 10000, the action flow table row 10001 includes condition units and instruction units corresponding to the condition column 601 and the instruction column 602 of the action flow table, as shown in FIGS. 6 to It can be seen from FIG. 8 that the condition unit is located in the condition column 601 and the instruction unit is located in the instruction column 602.
  • step 2 for step 3 of the corresponding conditional branch action flow, the execution condition "manipulator stop" is added to the condition unit of the action flow table row 11001, which is equivalent to the condition unit at least for adding in the action flow Execute the judged process step and use the process step as the execution condition.
  • step 2 it can be seen that for process steps 5 and 6 (corresponding to the sequence of process steps corresponding to the action instruction type action process) as action instructions, they will be added to the instruction unit in line 11001 of the action flow table, which is equivalent to the instruction unit Is used to add process steps that execute actions in the action process as action instructions.
  • step S4 of the method for processing an action flow in a tabular form according to the type of the action flow corresponding to the sequence of the flow steps, it is necessary to generate the action flow table row through different predetermined row generation rules.
  • the third process step sequence is an action instruction type process step sequence.
  • step A1 It is equivalent to sequentially generating an action flow table row in the action flow table as the current action flow table row (step A1); adding a true value as an execution condition to the condition unit of the current action flow table row (step A2); obtain in sequence The flow step in the sequence of corresponding action instruction type flow steps is added to the instruction unit of the current action flow table row (step A3).
  • step 2 the subsequent process steps 5 and 6 as action instructions will be added to the instruction unit of the action process line 11001. The same is true for steps 5 and 12. Therefore, for the same action Instructional and continuous process steps will be processed in a unified manner, which is equivalent to the process step combination rule corresponding to these process steps is to combine the continuous process steps in the instruction-based action process into an action instruction-based process step sequence.
  • condition units of these two lines 11001 and 11002 are respectively added with the process step 3 as the execution condition and the constant "ELSE" representing "true".
  • the two lines are set to mutually exclusive relationship, which is equivalent to the branch action
  • the process steps of the execution conditions of the process are respectively added to the condition unit of the corresponding action flow table row, and the generated action flow table behavior mutually exclusive relationship is set (step B2).
  • step 2 and step 3 in the action flow table row 11001, process steps 5, 6, 7, and 9 in sequence, and step 4 is in the action Process table line 11002 is processed for process step 14. Therefore, this process is equivalent to sequentially acquiring the process steps in the branch action process for each branch action process and processing them in sequence (step B3).
  • steps S2, S3, and S4 when processing each branch action flow, it is also to determine the action flow type corresponding to each flow step in the corresponding branch action flow, and further branch actions
  • the continuous process steps corresponding to the same action process type in the process are divided into a sequence of process steps corresponding to the corresponding action process type (equivalent to a sequence of sub-process steps).
  • the processing procedure of process steps 5 and 6 in step 2 is equivalent to taking each process step in the sub-process step sequence as an action
  • the instruction sequence is added to the instruction unit of the action flow table row of the corresponding branch action flow.
  • the action flow table rows corresponding to the sub-flow step sequence are sequentially generated in the sub-action flow table based on the predetermined row generation rule corresponding to the action flow type.
  • the sub-action flow table is hierarchically embedded under the action flow table row corresponding to the branch action flow (for example, the sub-action flow table 11101 is embedded under the action flow table row 11001).
  • the processing method also adopts the predetermined line generation rule.
  • the specific process is the same as the above process, and the action process corresponding to each branch action process is also generated.
  • the table rows are processed sequentially for the flow steps in each branch action flow.
  • step 1 When the action flow type is a cyclic action process, as mentioned in step 1, for the sequence of process steps as a cyclic action process (process step 1 and the cycle sub-processes nested under process step 1 thereafter: process steps 3 to 153 ), first add an action flow table row 10001 to the action flow table 10000, which is equivalent to sequentially generating an action flow table row in the action flow table as the current action flow table row (step D1).
  • step D2 add the execution condition of process step 1 "system startup" to the condition unit in row 10001 of the action flow table, and set a circle with a rotating arrow on the left side of the content of the condition unit in row 10001 of the action flow table.
  • Sign 610 It is equivalent to that the current process step line also includes a cycle attribute unit, the current process step is added as an execution condition to the condition unit of the current action process table line, and a cycle execution attribute is added to the cycle attribute unit (step D2).
  • step 2 because process step 3 is a conditional branch action process, a new action flow table 11000 is created for process step 3. Therefore, when processing the loop sub-process, it is also necessary to deal with each process in the loop sub-process.
  • the action flow type corresponding to the step is determined, and it is the same as the corresponding processing procedure in the predetermined line generation rule of the conditional branch action flow, and further combines the continuous flow steps in the cyclic action flow step sequence according to the predetermined flow step sequence combination rule It is a sequence of sub-process steps corresponding to the corresponding action process type (step D3).
  • each process step in the cyclic sub-process is processed sequentially, it is equivalent to the cyclic sub-process as a sequence of cyclic action process steps, that is, the process step combination rule for the cyclic action process is, the execution condition of the cyclic action process And the cyclic sub-processes are combined into a sequence of cyclic action process steps.
  • the sequence of sub-process steps in the conditional branch action process does not correspond to the action instruction type action process, for example, as shown in the process of process step 3 in step 2, it is equivalent to first generating a sub-action process table corresponding to the cyclic action process. And based on the predetermined row generation rule corresponding to the action flow type, the action flow table rows corresponding to the sub-flow step sequence are sequentially generated in the sub-action flow table.
  • the sub-action flow table is hierarchically embedded under the corresponding action flow table row (for example, the sub-action flow table 11000 is embedded under the action flow table row 10001).
  • each process step in the sub-process step sequence is added to the corresponding branch as the action instruction sequence In the instruction unit of the action flow table row of the action flow.
  • Step 1 Obtain the first action flow table row 10001 of the action flow table 10000, and determine whether the execution condition "system startup" of the condition unit in the action flow table row 10001 is true; if so, further obtain the embedded action flow table row 10001 The lower-level action flow table 11000. And perform the next step;
  • Step 2 Obtain the first action flow table row 11001 of the action flow table 11000, and determine whether the execution condition "manipulator stop" of the condition unit of the action flow table row 11001 is true;
  • Step 3 Obtain the first action flow table row 11101 of the action flow table 11100, and determine whether the execution condition of the condition unit of the action flow table row 11101 is true;
  • Step 4 Since the execution condition of the condition unit in line 11002 of the action flow table is true; therefore, the content in the instruction unit in line 11001 of the action flow table is obtained and executed. Since the action instruction in the instruction unit in line 11001 of the action flow table is to call the manipulator sub-process, the manipulator sub-process is executed from step 9. Since the action flow table row 11002 does not have an embedded lower-level action flow table, step 5 is executed immediately after the execution of the manipulator sub-process is completed.
  • Step 5 Determine whether the execution condition of the condition unit in line 11003 of the action flow table is true
  • step 6 If so, obtain and execute the content in the instruction unit of the action flow table row 11003, and then further obtain the lower-level action flow table 11200 embedded in the action flow table row 11003. And go to step 6; then get the next action flow table row 11005 that is in a non-exclusive relationship with the action flow table row 11003, and go to step 8; otherwise, get the next action flow table row 11004 and go to step 7;
  • Step 6 Obtain the first action flow table row 11201 of the action flow table 11200, and determine whether the execution condition of the condition unit of the action flow table row 11201 is true;
  • Step 7 Since the execution condition of the condition unit in line 11004 of the action flow table is true; therefore, the content in the instruction unit in line 11004 of the action flow table is obtained and executed. Since the action instruction in the instruction unit in line 11004 of the action flow table is to call the machine tool sub-process, the machine tool sub-process starts from step 26. Since the action flow table row 11004 does not have an embedded lower-level action flow table, step 8 is executed immediately after the execution of the machine tool sub-process is completed.
  • Step 8 Since the execution condition of the condition unit in line 11005 of the action flow table is true; therefore, the content in the instruction unit in line 11005 of the action flow table is obtained and executed. Since this is the last flow table row of the main action flow table, and the loop execution attribute value of the action flow table row 10001 is loop execution, return to step 1 to continue execution.
  • Step 9 Obtain the first action flow table row 20001 of the action flow table 20000, and determine whether the execution condition of the condition unit of the action flow table row 20001 is true;
  • Step 10 Obtain the first action flow table row 21001 of the action flow table 21000, and determine whether the execution condition of the condition unit of the action flow table row 21001 is true;
  • Step 11 Obtain the first action flow table row 21101 of the action flow table 21100, and determine whether the execution condition of the condition unit of the action flow table row 21101 is true;
  • Step 12 Determine whether the execution condition of the condition unit in line 21102 of the action flow table is true
  • Step 13 Determine whether the execution condition of the condition unit in line 21103 of the action flow table is true
  • Step 14 Determine whether the execution condition of the condition unit in line 20002 of the action flow table is true
  • Step 15 Obtain the first action flow table row 22001 of the action flow table 22000, and determine whether the execution condition of the condition unit of the action flow table row 22001 is true;
  • Step 16 Obtain the first action flow table row 22101 of the action flow table 22100, and determine whether the execution condition of the condition unit of the action flow table row 22101 is true;
  • Step 17. Determine whether the execution condition of the condition unit in line 22102 of the action flow table is true
  • Step 18 Determine whether the execution condition of the condition unit in line 20003 of the action flow table is true
  • Step 19 Determine whether the execution condition of the condition unit in line 20004 of the action flow table is true
  • Step 20 Determine whether the execution condition of the condition unit in line 24001 of the action flow table is true
  • Step 21 Determine whether the execution condition of the condition unit in line 20005 of the action flow table is true
  • Step 22 Obtain the first action flow table row 25001 of the action flow table 25000, determine whether the execution condition of the action flow table row 25001 condition unit is true; if so, obtain and execute the content in the action flow table row 25001 instruction unit, Then further obtain the lower-level action flow table 25100 embedded in the action flow table row 25001. And perform step 16;
  • Step 23 Obtain the first action flow table row 25101 of the action flow table 25100, and determine whether the execution condition of the condition unit of the action flow table row 25101 is true;
  • Step 24 Determine whether the execution condition of the condition unit in line 25102 of the action flow table is true
  • Step 25 Determine whether the execution condition of the condition unit in line 20006 of the action flow table is true
  • Step 26 Obtain the first action flow table row 30001 of the action flow table 30000, and judge whether the execution condition of the condition unit of the action flow table row 30001 is true;
  • Step 27 Obtain the first action flow table row 31001 of the action flow table 31000, and determine whether the execution condition of the condition unit of the action flow table row 31001 is true;
  • Step 28 Obtain the first action flow table row 31101 of the action flow table 31100, and determine whether the execution condition of the condition unit of the action flow table row 21101 is true;
  • Step 29 Obtain the first action flow table row 31111 of the action flow table 31110, and determine whether the execution condition of the condition unit of the action flow table row 31111 is true;
  • Step 30 Determine whether the execution condition of the condition unit on line 31112 of the action flow table is true
  • Step 31 Determine whether the execution condition of the condition unit in line 31102 of the action flow table is true
  • Step 32 Determine whether the execution condition of the condition unit in line 31103 of the action flow table is true
  • Step 33 Determine whether the execution condition of the condition unit in line 30002 of the action flow table is true
  • Step 34 Obtain the first action flow table row 32001 of the action flow table 32000, and determine whether the execution condition of the condition unit of the action flow table row 32001 is true;
  • Step 35 Determine whether the execution condition of the condition unit in line 30003 of the action flow table is true
  • Step 36 Obtain the first action flow table row 33001 of the action flow table 33000, and judge whether the execution condition of the condition unit of the action flow table row 33001 is true;
  • Step 37 Determine whether the execution condition of the 30004 condition unit of the action flow table is true; if so, obtain and execute the content in the 30004 instruction unit of the action flow table, and then further obtain the action flow
  • Step 38 Obtain the first action flow table row 34001 of the action flow table 34000, and judge whether the execution condition of the condition unit of the action flow table row 34001 is true;
  • Step 39 Determine whether the execution condition of the condition unit in line 30005 of the action flow table is true
  • step 40 If it is, the content in the instruction unit in line 30005 of the action flow table is obtained and executed, and then the lower-level action flow table 35000 embedded in the line 30005 of the action flow table is further obtained. And perform step 40;
  • Step 40 Obtain the first action flow table row 35001 of the action flow table 35000, and determine whether the execution condition of the condition unit of the action flow table row 35001 is true;
  • steps 1 to 40 illustrate the specific execution process of the action flow table corresponding to the automated production system in this embodiment through the method of executing the action flow for the action flow table.
  • the method of executing the action flow for the action flow table is mainly to read each row in the action flow table in turn and determine whether to execute the action instruction in the instruction unit according to the execution conditions in the condition unit.
  • the specific process is roughly It is: sequentially obtain the action flow table row from the action flow table as the current action flow table row (step S11); judge whether the execution condition of the condition unit of the current action flow table row is a true value, if it is judged otherwise, return to step S11 ( Step S12); Obtain and execute the action instructions in the instruction unit of the current action flow table row (Step S13); judge whether all the flow steps in the action flow table have been executed, if the judgment is otherwise, return to step S11, if the judgment is yes, then The operation flow has been executed (step S14).
  • step 2 after obtaining and executing the content in the action flow table row 11001 instruction unit, further obtain The lower-level action flow table 11100 is embedded in the action flow table row 11001 and step 3 is executed. Therefore, this process is equivalent to after step B13. It is also necessary to determine whether there is an embedded sub-action flow table under the current action flow table line. If yes, execute the sub-action flow sheet until the execution of the sub-action flow sheet is completed (step B14).
  • step 2 perform step 3 to complete the action flow table line
  • the next action flow table row 11001 obtained is the next action flow table row 11003 in a non-exclusive relationship, which is equivalent to judging whether all the process steps in the action flow table have been executed.
  • the next action flow table row whose execution condition is non-exclusive relationship in the condition unit of the action flow table row is taken as the current action flow table row and returns to step B12. If the judgment is yes, the action flow has been executed (step B15).
  • step 8 Furthermore, in the case of a cyclic action flow, after the current action flow table line is processed in steps D11 to D14, which are the same as the above steps B11 to B14, an additional judgment of the cyclic attribute unit is required, as in step 8.
  • the loop execution attribute value of line 10001 of the action flow table is loop execution, return to step 1 to continue the implementation loop. It is equivalent to judging whether the loop attribute unit of the current action flow table row has loop execution attributes, and if so, it returns to step D12 to repeat the current action flow table row (step D15). After finishing the processing of step D15, the traversal of the action flow table row is realized through a step D16 which is the same as step B15.
  • the manipulator sub-process and the machine tool sub-process include multiple conditional branch action processes connected in series for judging the state of the manipulator and the machine tool, and select and execute the branch action process consistent with the target state.
  • the manipulator state and the machine tool state are the target index variables.
  • the target state of each branch action process is the branch index value of this branch action process.
  • the branch action process is executed.
  • the branch action flow can also be described by switch..case statement, and multiple mutually exclusive judgment statements expressed by if..else if can be equivalently rewritten as switch..case statements.
  • the following program uses the switch..case statement to rewrite the corresponding command line in the C language program in the first embodiment.
  • the action flow of the two programs is the same.
  • the process step number of the above action flow can be the same as the following C Corresponding to the line number of the language program code.
  • the C language program code of the second embodiment is specifically as follows:
  • Step 1 Create an action flow table 10000 for the main flow.
  • the action flow table 10000 includes a condition column 601, a command column 602 and a switching target column 603; these three columns correspond to the setting column headings "condition", "command” and "Switch target”; add an action flow table row 10001 to the action flow table 10000.
  • the action flow table row 10001 includes the condition unit, command unit and switch corresponding to the condition column 601, instruction column 602 and switching target column 603 of the action flow table Target unit; get the above-mentioned process step 1. Since process step 1 is a conditional branch action process, the execution condition of process step 1 "system startup" is added to the condition unit in line 10001 of the action process table;
  • step 1 of the process indicates that subsequent instructions are cyclically executed under the premise that its execution conditions are met
  • the cyclic execution attribute value of line 10001 of the action process table is set to cyclic execution
  • the content of the condition unit in line 10001 of the action process table corresponds to the left Set a circle with a rotating arrow sign 610 inside, which is the corresponding setting in the cell format according to the cycle execution attribute set in row 10001 of the action flow table to reflect the execution method of step 1 of the process .
  • step 2 start from step 2 to process the branch action flow whose judgment result in step 1 of the flow is true;
  • Step 2 Since the process step 3 is a conditional branch action process, a new action process table 11000 is created for the process step 3, and the action process table 11000 is hierarchically embedded under the action process table row 10001.
  • the action flow table 11000 includes a condition column 601, an instruction column 602, and a switching target column 603. Create an action flow table row 11001 for the action flow table 11000.
  • the action flow table row 11001 includes the condition unit, instruction unit, and switching target unit corresponding to the condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the execution condition of 3 "manipulator stop” is added to the condition unit in line 11001 of the action flow table, and the subsequent action instruction, that is, the content of process step 5, is added to the instruction unit in line 11001 of the action flow table; because process step 6 is set
  • the target index variable "manipulator state" value command therefore, the content of the process step 6 is added to the switching target unit of the action flow table row 11001, and is no longer added to the instruction unit of the action flow table row 11001.
  • the unit format of the condition unit of the action flow table row 11001 is set accordingly, so that the content of the condition unit of the action flow table row 11001 is compared with the action flow
  • the content of the condition unit in table row 10001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 3 continue to process other process steps in the branch action flow whose judgment result of flow step 3 is true; and from step 4, proceed to process the branch action flow whose judgment result of flow step 3 is false.
  • Step 3 Since process step 7 is a conditional branch action process, a new action process table 11100 is created for process step 7, and the action process table 11100 is hierarchically embedded under the action process table row 11001.
  • the action flow table 11100 includes a condition column 601, a command column 602, and a switching target column 603. Create an action flow table row 11101 for the action flow table 11100.
  • the action flow table row 11101 includes condition units, instruction units, and switching target units corresponding to the condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the execution condition of 7 is added to the condition unit of line 11101 of the action flow table, and the subsequent action instruction, that is, the content of process step 9 is added to the instruction unit of line 11101 of the action flow table;
  • the unit format of the condition unit in row 11101 of the action flow table is set accordingly, so that the content of the condition unit in row 11101 of the action flow table is compared with that in the action flow table.
  • the content of the condition unit in table row 11001 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 4 Since the process step 14 is to call the action instruction of the robot sub-process, a new action process table line 11002 is created after the action process table line 11001, and a constant "ELSE" representing "true” is added as the action process table line 11002 the content of the condition unit; and add the content of step 14 of the process to the instruction unit in line 11002 of the action flow table.
  • the action flow table row 11001 and the action flow table row 11002 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 11001 and the action flow table row 11002 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • the action flow table row 11003 includes the condition unit corresponding to the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table, Instruction unit and switching target unit; since process step 78 is a conditional branch action process, the execution condition of process step 78 is added to the condition unit in line 11003 of the action process table, and the subsequent action instruction, namely the content of process step 80, is added to In the instruction unit of line 11003 of the action flow table; because flow step 81 is an instruction to set the value of the target index variable "machine tool status", the content of flow step 81 is added to the switching target unit of line 11003 of the action flow table, instead of Then add it to the instruction unit in line 11003 of the action flow table.
  • step 6 onwards continue to process other flow steps in the branch action flow whose judgment result in flow step 78 is true; and from step 7 to process the branch action flows whose judgment result is false in flow step 78.
  • Step 6 Since the process step 82 is a conditional branch action process, a new action process table 11200 is created for the process step 82, and the action process table 11200 is hierarchically embedded under the action process table row 11003.
  • the action flow table 11200 includes a condition column 601, a command column 602, and a switching target column 603. Create an action flow table row 11201 for the action flow table 11200.
  • the action flow table row 11201 includes the condition unit, instruction unit, and switching target unit corresponding to the condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the execution condition of 82 is added to the condition unit of line 11201 of the action flow table, and the subsequent action instruction, that is, the content of process step 83, is added to the instruction unit of line 11201 of the action flow table;
  • the unit format of the condition unit in row 11201 of the action flow table is set accordingly, so that the content of the condition unit in row 11201 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 11003 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 7 Since the process step 87 is the action instruction to call the sub-process of the machine tool, a new action process table line 11004 is created after the action process table line 11003, and a constant "ELSE" representing "true” is added as the action process table line 11004 The content of the condition unit; and the content of step 87 of the process is added to the instruction unit of line 11004 of the action flow table.
  • the action flow table row 11003 and the action flow table row 11004 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 11003 and the action flow table row 11004 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 8 Since the process step 153 is an action instruction, a new action process table line 11005 is created after the action process table line 11004, and a constant "TRUE” representing "true” is added as the content of the condition unit of the action process table line 11005 ; And add the content of flow step 153 to the instruction unit in line 11005 of the action flow table.
  • Step 9 Since the manipulator sub-process is a switching branch action process, create an action flow table 40000 for this switch branch action process, add an action flow table row 40001 to the action flow table 40000, and add a constant "TRUE” representing "true” "Is added as the content of the condition unit in line 40001 of the action flow table, and multiple mutually exclusive execution conditions for judging the target index variable "manipulator state” are added to the action flow table as a branch switching instruction "switch (manipulator state)" In the instruction unit on line 40001.
  • process step 16 is a branch action process in the switching branch action process, create a branch action process table 41000 for process step 16, and embed the branch action process table 21000 hierarchically in Under the action flow table row 40001; branch action flow table 41000 includes index column 611 and comment column 612; add branch action flow table row 41001, branch action flow table row 41001 and index column 611 and comment column 612 to branch action flow table 41000 Correspondingly, the index unit 6211 and the comment unit 6212 are included; the target value 100 of the manipulator state in the process step 16 is the branch index value of this branch action process, so this branch index value is added to the index unit 6211. The meaning represented by the target value 100 of the manipulator state in step 16 of the process is added to the comment unit 6212.
  • the action flow table 21000 includes a condition column 601, an instruction column 602, and a switching target column 603. Embed the action flow table 21000 hierarchically in the branch action
  • the action flow table row 21001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • each branch action process determines the value of the indicator's state variable through an action instruction assigned to the indicator's state variable, so the indicator's state variable is a state variable.
  • the branch action flow table 41000 further includes a branch state column 613 corresponding to the indicator state variable
  • the branch action flow table row 41001 further includes a branch state unit 6213 corresponding to the branch state column 613.
  • Step 18 of the process is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6213. Then, starting from step 10, continue to process other flow steps in the branch action flow corresponding to flow step 16.
  • step 14 start from step 14 to continue processing for the next branch action flow in the manipulator sub-flow.
  • Step 10 Since process step 19 is a conditional branch action process, add the execution condition of process step 19 to the condition unit in line 21001 of the action process table, and add the subsequent action instruction, that is, the content of process step 21, to the action process table line 21001 instruction unit;
  • step 11 continue to process other flow steps in the branch action flow whose judgment result in flow step 19 is true.
  • Step 11 Since the process step 22 is a conditional branch action process, a new action process table 21100 is created for the process step 22, and the action process table 21100 is hierarchically embedded under the action process table row 21000.
  • the action flow table 21100 includes a condition column 601, an instruction column 602, and a switching target column 603. Create an action flow table row 21101 for the action flow table 21100.
  • the action flow table row 21101 includes condition units, instruction units, and switching target units corresponding to the condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the execution condition of 22 is added to the condition unit of line 21101 of the action flow table, and the subsequent action instruction, that is, the content of process step 23, is added to the instruction unit of line 21101 of the action flow table; further, according to the action flow table 21000 and action
  • the hierarchical relationship of the flow chart 21100 sets the unit format of the condition unit in line 21101 of the action flow table accordingly, so that the content of the condition unit in line 21101 of the action flow table is indented compared to the content of the condition unit in line 21001 of the action flow table.
  • a set width is used to reflect the hierarchical relationship between the two.
  • the action flow table row 21102 includes the condition unit corresponding to the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table, Instruction unit and switching target unit; since process step 24 is a conditional branch action process, the execution condition of process step 24 is added to the condition unit in line 21102 of the action process table, and the content of subsequent action instructions, namely process step 26, is added to In the instruction unit of line 21102 of the action flow table; since process step 27 is an instruction to set the value of the target index variable "manipulator state", the content of process step 27 is added to the switching target unit of line 21102 of the action flow table instead of Add it to the instruction unit in line 21102 of the action flow table.
  • Step 13 Since the process step 30 is an action instruction, a new action flow table row 21103 is created after the action flow table row 21102.
  • the action flow table row 21103 includes the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table.
  • Corresponding condition unit, instruction unit and switching target unit add a constant "ELSE” representing "true” as the content of the condition unit in line 21103 of the action flow table; because step 30 of the process is to set the value of the target index variable "manipulator state" Therefore, the content of step 30 of the process is added to the switching target unit of line 21103 of the action process table, and is no longer added to the instruction unit of line 21103 of the action process table.
  • Step 14 Since the process step 33 is a branch action process in the switching branch action process, add the branch action process table row 41002 to the branch action process table 41000, and the branch action process table row 41002 corresponds to the index column 611 and the comment column 612. Index unit 6221 and annotation unit 6222;
  • the target value 200 of the manipulator state in the process step 33 is the branch index value of this branch action process, so this branch index value is added to the index unit 6221.
  • the meaning represented by the target value 200 of the manipulator state in the process step 33 is added to the comment unit 6222.
  • the action flow table 22000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 22000 is hierarchically embedded under row 41002 of the branch action flow table; and the action flow table 22000 and the action flow table 40000 are further aligned in columns.
  • the action flow table row 22001 includes the condition unit, instruction unit, and switching target unit corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the branch action flow table row 41002 further includes a branch state unit 6223 corresponding to the branch state column 613.
  • the process step 35 is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6223. Then, starting from step 15 continue to process other process steps in the branch action process corresponding to process step 33.
  • step 18 start from step 18 to continue processing for the next branch action flow in the manipulator sub-flow.
  • Step 15 Since process step 36 is a conditional branch action process, add the execution condition of process step 36 to the condition unit of line 21001 of the action process table, and add the content of the subsequent action instruction, which is the content of process step 38, to the action process table line 21001 instruction unit;
  • step 16 continue to process other flow steps in the branch action flow whose judgment result in flow step 36 is true.
  • Step 16 Since the process step 39 is a conditional branch action process, a new action process table 22100 is created for the process step 39, and the action process table 22100 is hierarchically embedded under the action process table row 22000.
  • the action flow table 22100 includes a condition column 601, a command column 602, and a switching target column 603. Create an action flow table row 22101 for the action flow table 22100.
  • the action flow table row 22101 includes condition units, instruction units, and switching target units corresponding to the condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the execution condition of 39 is added to the condition unit of line 22101 of the action flow table, and the subsequent action instruction, that is, the content of process step 41, is added to the instruction unit of line 22101 of the action flow table; because process step 42 is to set the target index variable " Therefore, the content of the process step 42 is added to the switching target unit of the action flow table row 22101, and is no longer added to the instruction unit of the action flow table row 22101.
  • the unit format of the condition unit in row 22101 of the action flow table is set accordingly, so that the content in the condition unit of row 22101 of the action flow table is compared with that in the action flow table.
  • the content of the condition unit in table row 22001 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 17 Since the process step 45 is an action instruction, a new action process table line 22102 is created after line 22101 of the action process table, and a constant "ELSE" representing "true” is added as the content of the condition unit of the action process table line 22102 ; Since the process step 45 is an instruction to set the value of the target index variable "machine tool status", the content of the process step 45 is added to the switching target unit of line 22102 of the action flow table, instead of being added to the line 22102 of the action flow table In the instruction unit.
  • the action flow table row 22101 and the action flow table row 22102 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 22101 and the action flow table row 22102 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 18 Since the process step 49 is a branch action process in the switching branch action process, add the branch action process table row 41003 to the branch action process table 41000, and the branch action process table row 41003 corresponds to the index column 611 and the comment column 612. Index unit 6231 and annotation unit 6232; the target value 300 of the manipulator state in the process step 49 is the branch index value of this branch action process, so this branch index value is added to the index unit 6231. The meaning represented by the target value 300 of the manipulator state in the process step 49 is added to the comment unit 6232.
  • the action flow table 23000 includes a condition column 601, a command column 602, and a switching target column 603.
  • the action flow table 23000 is hierarchically embedded under row 41003 of the branch action flow table; and the action flow table 23000 and the action flow table 40000 are further aligned in columns.
  • the action flow table row 23001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the branch action flow table row 41003 further includes a branch state unit 6233 corresponding to the branch state column 613.
  • the flow step 51 is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6233. Then start from step 19 to continue processing for the next branch action flow in the manipulator sub-flow.
  • Step 19 Since the process step 53 is a branch action process in the switching branch action process, add the branch action process table row 41004 to the branch action process table 41000, and the branch action process table row 41004 corresponds to the index column 611 and the comment column 612. Index unit 6241 and annotation unit 6242;
  • the target value 400 of the manipulator state in the process step 53 is the branch index value of this branch action process, so this branch index value is added to the index unit 6241.
  • the meaning represented by the target value 400 of the manipulator state in the process step 53 is added to the comment unit 6242.
  • the action flow table 24000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 24000 is hierarchically embedded under row 41004 of the branch action flow table; and the action flow table 24000 and the action flow table 40000 are further arranged to be column-aligned.
  • the action flow table row 24001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the branch action flow table row 41004 further includes a branch state unit 6243 corresponding to the branch state column 613.
  • the flow step 55 is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6243. Then, starting from step 20, continue to process other flow steps in the branch action flow corresponding to flow step 53.
  • step 21 start from step 21 to continue processing for the next branch action flow in the manipulator sub-flow.
  • Step 20 Since process step 56 is a conditional branch action process, add the execution condition of process step 56 to the condition unit of the action flow table row 24001, and add the subsequent action instruction, which is the content of process step 58, to the action flow table row In the instruction unit of 24001; because process step 59 is an instruction to set the value of the target index variable "machine tool status", the content of process step 59 is added to the switching target unit in line 24001 of the action process table, instead of being added to the action In the instruction unit at line 24001 of the flow chart.
  • Step 21 Since the process step 62 is a branch action process in the switching branch action process, add the branch action process table row 41005 to the branch action process table 41000, and the branch action process table row 41005 corresponds to the index column 611 and the comment column 612. Index unit 6251 and annotation unit 6252;
  • the target value 500 of the manipulator state in the process step 62 is the branch index value of this branch action process, so this branch index value is added to the index unit 6251.
  • the meaning represented by the target value 500 of the manipulator state in the process step 62 is added to the comment unit 6252.
  • the action flow table 25000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 25000 is hierarchically embedded under row 41005 of the branch action flow table; and the action flow table 25000 and the action flow table 40000 are further aligned in columns.
  • the action flow table row 25001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the branch action flow table row 41005 further includes a branch state unit 6253 corresponding to the branch state column 613.
  • Step 64 of the process is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6253. Then, starting from step 22, continue to process other flow steps in the branch action flow corresponding to flow step 62.
  • step 25 start from step 25 to continue processing for the next branch action flow in the manipulator sub-flow.
  • Step 22 Since process step 65 is a conditional branch action process, add the execution condition of process step 65 to the condition unit in line 25001 of the action process table; then continue from step 23 to the branch action process that judges the result of process step 65 to be true Other process steps in the process.
  • Step 23 Since the process step 67 is a conditional branch action process, a new action process table 25100 is created for the process step 67, and the action process table 25100 is hierarchically embedded under the action process table row 25000.
  • the action flow table 25100 includes a condition column 601, an instruction column 602, and a switching target column 603. Create the action flow table row 25101 for the action flow table 25100.
  • the action flow table row 25101 includes the condition unit, the command unit and the switch target unit corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the execution condition of 67 is added to the condition unit of line 25101 of the action flow table; because process step 68 is an instruction to set the value of the target index variable "machine tool state", the content of process step 68 is added to the switch of line 25101 of the action flow table In the target unit, it is no longer added to the instruction unit in line 25101 of the action flow table.
  • the corresponding setting of the unit format of the condition unit of the action flow table row 25101 makes the content of the condition unit of the action flow table row 25101 compare to the action flow
  • the content of the condition unit in table row 25001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 24 processing is performed on the branch action flow whose judgment result in flow step 67 is false.
  • Step 24 Since the process step 70 is an action instruction, a new action process table line 25102 is created after line 25101 of the action process table, and a constant "ELSE" representing "true” is added as the content of the condition unit of the action process table line 25102 ; Since the process step 70 is an instruction to set the value of the target index variable "machine tool status", the content of the process step 70 is added to the switching target unit of line 25102 of the action flow table, instead of being added to the line 25102 of the action flow table In the instruction unit.
  • the action flow table row 25101 and the action flow table row 25102 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 25101 and the action flow table row 25102 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 25 Since the process step 73 is a branch action process in the switching branch action process, add the branch action process table row 41006 to the branch action process table 41000.
  • the branch action process table row 41006 corresponds to the index column 611 and the comment column 612.
  • the target value 600 of the manipulator state in the process step 73 is the branch index value of this branch action process, so this branch index value is added to the index unit 6261.
  • the meaning represented by the target value 600 of the manipulator state in the process step 73 is added to the comment unit 6262.
  • the action flow table 26000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 26000 is hierarchically embedded under row 41006 of the branch action flow table; and the action flow table 26000 and the action flow table 40000 are further aligned in columns.
  • Action flow table row 26001 includes condition unit, instruction unit and switching target unit corresponding to condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the branch action flow table row 41006 further includes a branch state unit 6263 corresponding to the branch state column 613.
  • the process step 74 is an action instruction for assigning values to the indicator status variables, so the target value of this assignment instruction is set as the content of the branch status unit 6263.
  • Step 26 Since the machine tool sub-process is a switching branch action process, create an action flow table 50000 for this switch branch action process, add an action flow table row 50001 to the action flow table 50000, and add a constant "TRUE” that represents “true” “Is added as the content of the condition unit in line 50001 of the action flow table, and multiple mutually exclusive execution conditions judged for the target index variable "machine tool state” are added to the action flow table as a branch switching instruction "switch (machine tool state)" In the instruction unit on line 50001.
  • process step 89 is a branch action process in the switching branch action process, create a branch action process table 51000 for process step 89, and embed the branch action process table 51000 hierarchically in Under the action flow table row 50001; branch action flow table 51000 includes index column 611 and comment column 612; add branch action flow table row 51001, branch action flow table row 51001 and index column 611 and comment column 612 to branch action flow table 51000 Correspondingly, the index unit 6311 and the comment unit 6312 are included; the target value 100 of the machine tool status in the process step 89 is the branch index value of this branch action process, so this branch index value is added to the index unit 6311. The meaning represented by the target value 100 of the machine tool state in the process step 89 is added to the comment unit 6312.
  • the action flow table 31000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 31000 is hierarchically embedded under the branch action flow table row 51001; and the action flow table 31000 and the action flow table 50000 are further aligned in columns.
  • the action flow table row 31001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the action command of "Machine protective door open” is usually executed when the state of the machine tool is changed, and the signals of "Machine protective door open in place” and “Machine protective door close in place” signals usually change the state of the machine tool Precondition, therefore the state of the machine tool guard door is determined by the specific machine tool state, so the machine tool guard door state can be regarded as a state variable.
  • the action flow table 51000 further includes a branch state column 613 corresponding to the state variable of the machine tool guard door
  • the branch action flow table row 51001 further includes a branch state unit 6313 corresponding to the branch state column 613.
  • step 27 continue to process other flow steps in the branch action flow corresponding to flow step 89.
  • step 33 continue processing for the next branch action flow in the sub-flow of the machine tool.
  • Step 27 Since process step 91 is a conditional branch action process, add the execution condition of process step 91 to the condition unit of line 31001 of the action process table, and add the subsequent action instruction, that is, the content of process step 93, to the action process table line In the instruction unit of 31001;
  • step 28 continue to process other flow steps in the branch action flow whose judgment result in flow step 91 is true.
  • Step 28 Since the process step 94 is a conditional branch action process, a new action process table 31100 is created for the process step 94, and the action process table 31100 is hierarchically embedded under the action process table row 31000.
  • the action flow table 31100 includes a condition column 601, an instruction column 602, and a switching target column 603. Create the action flow table row 31101 for the action flow table 31100.
  • the action flow table row 31101 includes the condition unit, the command unit and the switch target unit corresponding to the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table;
  • the execution condition of 94 is added to the condition unit in row 31101 of the action flow table;
  • the unit format of the condition unit in row 31101 of the action flow table is set accordingly, so that the content in the condition unit in row 31101 of the action flow table is compared with the content in the action flow table.
  • the content of the condition unit in table row 31001 is indented by a set width to reflect the hierarchical relationship between the two.
  • step 29 continue to process other flow steps in the branch action flow whose judgment result in flow step 94 is true.
  • step 31 processing is performed on the branch action flow whose judgment result in flow step 94 is false.
  • Step 29 Since the process step 96 is a conditional branch action process, a new action process table 31110 is created for the process step 96, and the action process table 31110 is hierarchically embedded under the action process table row 31100.
  • the action flow table 31110 includes a condition column 601, an instruction column 602, and a switching target column 603. Create the action flow table row 31111 for the action flow table 31110.
  • the action flow table row 31111 includes the condition unit, the command unit and the switch target unit corresponding to the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table;
  • the execution condition of 96 is added to the condition unit of line 31111 of the action flow table, and the subsequent action instruction, that is, the content of process step 98, is added to the instruction unit of line 31111 of the action flow table; because process step 99 is to set the target index variable " Therefore, the content of step 99 of the process is added to the switching target unit of line 31111 of the action flow table instead of the instruction unit of line 31111 of the action flow table.
  • the unit format of the condition unit in row 31111 of the action flow table is set accordingly, so that the content in the condition unit in row 31111 of the action flow table is compared to the action flow.
  • the content of the condition unit in table row 31101 is indented by a set width to reflect the hierarchical relationship between the two.
  • Step 30 Since the flow steps 103 and 104 are action instructions, a new action flow table row 31112 is created after the action flow table row 31111, and a constant "ELSE” representing "true” is added as the action flow table row 31112 condition unit Add the content of step 103 to the instruction unit in line 31112 of the action flow table. Since flow step 104 is an instruction to set the value of the target index variable "machine tool status", the content of flow step 104 is added to the switching target unit of line 31112 of the action flow table, instead of the instruction of line 31112 of the action flow table Unit.
  • the action flow table row 31111 and the action flow table row 31112 belong to two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 31111 and the action flow table row 31112 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 31 Continue to obtain the subsequent action flow, and create a new action flow table row 31102 for flow step 107.
  • the action flow table row 31102 includes the condition unit corresponding to the condition column 601, the instruction column 602 and the switching target column 603 of the action flow table, Instruction unit and switching target unit; since process step 107 is a conditional branch action process, the execution condition of process step 107 is added to the condition unit in line 31102 of the action process table, and the subsequent action instruction, namely the content of process step 109, is added to In the instruction unit of line 31102 of the action flow table; because process step 110 is an instruction to set the value of the target index variable "machine tool status", the content of process step 110 is added to the switching target unit of line 31102 of the action flow table, instead of Add it to the instruction unit on line 31102 of the action flow table.
  • processing is performed on the branch action flow whose judgment result in flow step 107 is false.
  • Step 32 Since the flow steps 114 and 115 are action instructions, a new action flow table row 31103 is created after the action flow table row 31102, and a constant "ELSE" representing "true” is added as the action flow table row 31103 condition unit Add the content of step 114 to the instruction unit in line 31103 of the action flow table. Since flow step 115 is an instruction to set the value of the target index variable "machine tool status", the content of flow step 115 is added to the switching target unit of line 31103 of the action flow table, instead of the instruction of line 31103 of the action flow table Unit.
  • the action flow table row 31102 and the action flow table row 31103 belong to the two mutually exclusive branch action flows of the conditional branch action flow
  • the mutually exclusive relationship between the action flow table row 31102 and the action flow table row 31103 is set, and corresponding A circular mark is set on the left side of the condition unit of the two action flow table rows and connected with a vertical line to reflect the mutually exclusive relationship between the two in the format.
  • Step 33 Since the process step 119 is a branch action process in the switching branch action process, the branch action process table row 51002 is added to the branch action process table 51000, and the branch action process table row 51002 corresponds to the index column 611 and the comment column 612. Index unit 6321 and comment unit 6322; the target value 200 of the machine tool status in the process step 119 is the branch index value of this branch action process, so this branch index value is added to the index unit 6321. The meaning represented by the target value 200 of the machine tool state in the flow step 119 is added to the comment unit 6322.
  • the action flow table 32000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 32000 is hierarchically embedded under the branch action flow table row 51002; and the action flow table 32000 and the action flow table 50000 are further aligned in columns.
  • the action flow table row 32001 includes the condition unit, instruction unit, and switching target unit corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the action flow table 51000 further includes a branch state column 613 corresponding to the state variable of the machine tool guard door
  • the branch action flow table row 51002 further includes a branch state unit 6323 corresponding to the branch state column 613. Since the machine tool status is set to 200 immediately after the execution of the action command "Machine guard door close" in process step 109 or process step 147, the state of the machine tool guard door can be determined as "Machine machine guard door is closing" when the machine tool status is equal to 200. Therefore, for the branch action flow table row 51002, the content of the branch status unit 6323 is set as "the machine tool guard door is closing".
  • step 34 continue to process other flow steps in the branch action flow corresponding to flow step 119.
  • step 35 continue processing for the next branch action flow in the machine tool sub-flow.
  • Step 34 Since process step 121 is a conditional branch action process, add the execution condition of process step 121 to the condition unit of the action flow table row 32001, and add the subsequent action instruction, which is the content of process step 123, to the action flow table row In the instruction unit of 32001; because process step 124 is an instruction to set the value of the target index variable "machine tool status", the content of process step 124 is added to the switching target unit in line 32001 of the action process table, instead of being added to the action In the instruction unit of line 32001 of the flow chart.
  • Step 35 Since the process step 127 is a branch action process in the switching branch action process, the branch action process table row 51003 is added to the branch action process table 51000, and the branch action process table row 51003 corresponds to the index column 611 and the comment column 612. Index unit 6331 and comment unit 6332; the target value 300 of the machine tool state in the process step 127 is the branch index value of this branch action process, so this branch index value is added to the index unit 6321. The meaning represented by the target value 300 of the machine tool state in the flow step 127 is added to the comment unit 6322.
  • the action flow table 33000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 33000 is hierarchically embedded under the branch action flow table row 51003; and the action flow table 33000 and the action flow table 50000 are further aligned in columns.
  • Action flow table row 33001 includes condition unit, instruction unit and switching target unit corresponding to condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the action flow table 51000 further includes a branch state column 613 corresponding to the state variable of the machine tool guard door
  • the branch action flow table row 51003 further includes a branch state unit 6333 corresponding to the branch state column 613. Since in the process step 121, the machine tool status is set to 300 under the condition that the machine tool protection door is closed in place is true, the status of the machine tool protection door can be determined as "the machine tool protection door is closed" when the machine tool status is equal to 300. Therefore, for the branch action flow table row 51003, the content of the branch status unit 6333 is set as "the machine tool guard door is closed".
  • step 36 continue to process other flow steps in the branch action flow corresponding to flow step 127.
  • step 37 continue processing for the next branch action flow in the machine tool sub-flow.
  • Step 36 Since process step 129 is a conditional branch action process, the execution condition of process step 129 is added to the condition unit of line 33001 of the action process table, and the subsequent action instruction, that is, the content of process step 131, is added to the action process table line In the instruction unit of 33001; because process step 132 is an instruction to set the value of the target index variable "machine tool status", the content of process step 132 is added to the switching target unit in line 33001 of the action process table, instead of being added to the action In the instruction unit on line 33001 of the flow chart.
  • Step 37 Since the process step 135 is a branch action process in the switching branch action process, the branch action process table row 51004 is added to the branch action process table 51000, and the branch action process table row 51004 corresponds to the index column 611 and the comment column 612. Index unit 6341 and comment unit 6342; the target value 400 of the machine tool status in the process step 135 is the branch index value of this branch action process, so this branch index value is added to the index unit 6341. The meaning represented by the target value 400 of the machine tool state in the flow step 135 is added to the comment unit 6342.
  • the action flow table 34000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 34000 is hierarchically embedded under row 51004 of the branch action flow table; and the action flow table 34000 and the action flow table 50000 are further aligned in columns.
  • Action flow table row 34001 includes condition unit, instruction unit, and switching target unit corresponding to condition column 601, instruction column 602, and switching target column 603 of the action flow table;
  • the action flow table 51000 further includes a branch state column 613 corresponding to the state variable of the machine tool guard door
  • the branch action flow table row 5104 further includes a branch state unit 6343 corresponding to the branch state column 613. Since the machine tool status is set to 400 immediately after the execution of the action command "Machine guard door open" in process step 98 or process step 131, the state of the machine tool guard door can be determined as "Machine machine guard door open" when the machine tool status is equal to 400. Therefore, the content of the branch status unit 6343 is set as "the machine tool guard door is opening" for the branch action flow table row 51004.
  • step 38 continue to process other flow steps in the branch action flow corresponding to flow step 135.
  • step 39 continue processing for the next branch action flow in the machine tool sub-flow.
  • Step 38 Since process step 137 is a conditional branch action process, add the execution condition of process step 137 to the condition unit in line 34001 of the action process table, and add the content of the subsequent action instruction, which is the content of process step 139, to the action process table line In the instruction unit of 34001; because process step 140 is an instruction to set the value of the target index variable "machine tool status", the content of process step 140 is added to the switching target unit in line 34001 of the action process table, instead of being added to the action In the instruction unit on line 34001 of the flow chart.
  • Step 39 Since the process step 143 is a branch action process in the switching branch action process, add the branch action process table row 51005 to the branch action process table 51000, and the branch action process table row 51005 corresponds to the index column 611 and the comment column 612. Index unit 6351 and comment unit 6352; the target value 500 of the machine tool state in the process step 143 is the branch index value of this branch action process, so this branch index value is added to the index unit 6351. The meaning represented by the target value 300 of the machine tool state in the process step 143 is added to the comment unit 6352.
  • the action flow table 35000 includes a condition column 601, an instruction column 602, and a switching target column 603.
  • the action flow table 35000 is hierarchically embedded under the branch action flow table row 51005; and the action flow table 35000 and the action flow table 50000 are further aligned in columns.
  • the action flow table row 35001 includes condition units, instruction units, and switching target units corresponding to the condition column 601, the instruction column 602, and the switching target column 603 of the action flow table;
  • the action flow table 51000 further includes a branch state column 613 corresponding to the state variable of the machine tool guard door
  • the branch action flow table row 51005 further includes a branch state unit 6353 corresponding to the branch state column 613. Since in process step 137, the machine tool status is set to 500 under the condition that the machine tool protection door is in place is judged to be true, the status of the machine tool protection door can be determined as "the machine tool protection door is open" when the machine tool status is equal to 500. Therefore, for the branch action flow table row 51005, the content of the branch status unit 6353 is set as "the machine tool guard door has been opened".
  • step 40 continue to process other flow steps in the branch action flow corresponding to flow step 143.
  • Step 40 Since process step 145 is a conditional branch action process, the execution condition of process step 145 is added to the condition unit of the action flow table row 35001, and the subsequent action instruction, namely the content of process step 147, is added to the action flow table row 35001 instruction unit; because process step 148 is an instruction to set the value of the target index variable "machine tool status", the content of process step 148 is added to the switching target unit in line 35001 of the action process table, instead of being added to the action In the instruction unit of line 35001 of the flow chart.
  • steps 1 to 40 illustrate the specific process of tabularizing the detailed action flow of the automated production system in this embodiment by the method of tabularization processing action flow.
  • step 9 when processing the robot sub-process as the switching branch flow, create an action flow table 40000 and add an action flow table row 40001, which will further target Multiple mutually exclusive execution conditions for judging by the target index variable "manipulator state" are added as a branch switching instruction "switch (manipulator state)" to the instruction unit in row 40001 of the action flow table.
  • the branch switching instruction will be added to the instruction unit, which is a kind of action instruction. Therefore, when the branch switching instruction is judged to belong to the switching branch action flow, it is also judged to belong to the action instruction type action flow (that is, it belongs to the action instruction type flow step sequence).
  • the branch switching instruction is processed in the same way as the process step as the action instruction, that is, an action flow table line is sequentially generated in the action flow table as the current action flow table line (step A1); a true value is set As an execution condition, it is added to the condition unit of the current action flow table row (step A2); the process steps in the sequence of corresponding action instruction type flow steps are sequentially acquired and added to the instruction unit of the current action flow table row (step A3).
  • the branch switching instruction belongs to the conditional branch process step sequence, it is similar to the predetermined line generation rule for the conditional branch action process in Embodiment 1. If the first sub-process step sequence corresponds to the action instruction in the conditional branch action process Type action flow, each process step in the sub-process step sequence is added as an action instruction sequence to the instruction unit of the action flow table row of the corresponding branch action flow. Therefore, if the sub-process step sequence is a switching branch-type process step sequence, the switching branch instruction will also be added to the corresponding instruction unit as an action instruction.
  • step C1 the action flow table line generated according to the action instruction type process step sequence is regarded as the current action flow table line (step C1 ).
  • step 9 the multiple mutually exclusive execution conditions for judging the target index variable "manipulator state” are used as a branch switching instruction "switch (manipulator state) "Is added to the instruction unit in line 40001 of the action flow table. Therefore, this process is equivalent to adding the flow step corresponding to the branch switching instruction as an action instruction to the instruction unit of the current action flow table row (step C2).
  • process step 16 is a branch action process in the switching branch action process
  • create a branch action process table 41000 for process step 16 and add a branch action process table to the branch action process table 41000 Line 41001, and add the meaning of the target value 100 of the robot state in step 16 of the process to the index unit 6211 of line 41001 of the action process table.
  • steps 14, 18, 19, etc. correspond to the branch action process.
  • Process steps 33, 49, and 53 create the corresponding action flow table rows. Therefore, this process is equivalent to generating a branch action flow table corresponding to the switching branch process step sequence.
  • the branch action flow table is hierarchically embedded in the current action. Below the flow chart (step C3).
  • step 9 also mentioned that after creating the branch action flow table row 41001, create an action flow table 21000 for the process steps in this branch action flow, and embed the action flow table 21000 hierarchically in the branch action flow table Under line 41001, continue from step 10 to process other process steps in the branch action process corresponding to process step 16.
  • This process is equivalent to generating a branch action flow table row including index units located in the index column in the branch action flow table for each branch action flow, adding the branch index conditions to the index unit and creating a hierarchical embedded in the branch action flow table.
  • the sub-action flow table under the branch action flow table row is equivalent to generating a branch action flow table row including index units located in the index column in the branch action flow table for each branch action flow, adding the branch index conditions to the index unit and creating a hierarchical embedded in the branch action flow table.
  • the predetermined row generation rule corresponding to the switching branch flow step sequence in the second embodiment will also be specific to each A sub-action flow table, which sequentially obtains the process steps in the corresponding branch action process, and determines the corresponding action process type of each process step in the corresponding branch action process, and further divides the branch action process into the branch action process according to the predetermined process step sequence combination rule
  • the successive process steps are respectively combined into at least one sub-process step sequence corresponding to the corresponding action process type, and further based on the predetermined row generation rule corresponding to the process step sequence type, the sequence of the sub-process step sequence is generated in the sub-action process table.
  • the corresponding action flow table row step C5.
  • Step 1 Obtain the first action flow table row 10001 of the action flow table 10000, and determine whether the execution condition "system startup" of the condition unit in the action flow table row 10001 is true; if so, further obtain the embedded action flow table row 10001 The lower-level action flow table 11000. And perform the next step;
  • Step 2 Obtain the first action flow table row 11001 of the action flow table 11000, and determine whether the execution condition "manipulator stop" of the condition unit of the action flow table row 11001 is true;
  • Step 3 Obtain the first action flow table row 11101 of the action flow table 11100, and determine whether the execution condition of the condition unit of the action flow table row 11101 is true;
  • Step 4 Since the execution condition of the condition unit in line 11002 of the action flow table is true; therefore, the content in the instruction unit in line 11001 of the action flow table is obtained and executed. Since the action instruction in the instruction unit in line 11001 of the action flow table is to call the manipulator sub-process, the manipulator sub-process is executed from step 9. Since the action flow table row 11002 does not have an embedded lower-level action flow table, step 5 is executed immediately after the execution of the manipulator sub-process is completed.
  • Step 5 Determine whether the execution condition of the condition unit in line 11003 of the action flow table is true
  • Step 6 Obtain the first action flow table row 11201 of the action flow table 11200, and determine whether the execution condition of the condition unit of the action flow table row 11201 is true;
  • Step 7 Since the execution condition of the condition unit in line 11004 of the action flow table is true; therefore, the content in the instruction unit in line 11004 of the action flow table is obtained and executed. Since the action instruction in the instruction unit in line 11004 of the action flow table is to call the machine tool sub-process, the machine tool sub-process starts from step 26. Since the action flow table row 11004 does not have an embedded lower-level action flow table, step 8 is executed immediately after the execution of the machine tool sub-process is completed.
  • Step 8 Since the execution condition of the condition unit in line 11005 of the action flow table is true; therefore, the content in the instruction unit in line 11005 of the action flow table is obtained and executed. Since this is the last flow table row of the main action flow table, and the loop execution attribute value of the action flow table row 10001 is loop execution, return to step 1 to continue execution.
  • Step 9 Get the first action flow table row 40001 of the action flow table 40000, because the execution condition of the condition unit in the action flow table row 40001 is always true, so immediately execute the content in the action flow table row 40001 instruction unit; 40001 instruction unit
  • the middle is a branch switching instruction, so get the branch action flow table 41000 embedded under the action flow table row 40001, and determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6211 in the branch action flow table row 41001?
  • Step 10 Obtain the first action flow table row 21001 of the action flow table 21000, and determine whether the execution condition of the condition unit of the action flow table row 21001 is true;
  • Step 11 Obtain the first action flow table row 21101 of the action flow table 21100, and determine whether the execution condition of the condition unit of the action flow table row 21101 is true;
  • Step 12 Determine whether the execution condition of the condition unit in line 21102 of the action flow table is true
  • Step 13 Determine whether the execution condition of the condition unit in line 21103 of the action flow table is true
  • Step 14 Determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6221 in row 41002 of the branch action flow table?
  • step 15 If it matches, first obtain the content in the branch status unit 6223, and set the indicator status according to the content in the branch status unit 6223; then obtain the action flow table 22000 embedded under row 41002 of the branch action flow table, and execute step 15;
  • Step 15 Obtain the first action flow table row 22001 of the action flow table 22000, and determine whether the execution condition of the condition unit of the action flow table row 22001 is true;
  • Step 16 Obtain the first action flow table row 22101 of the action flow table 22100, and determine whether the execution condition of the condition unit of the action flow table row 22101 is true;
  • Step 17. Determine whether the execution condition of the condition unit in line 22102 of the action flow table is true
  • Step 18 Determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6231 of the branch action flow table row 41003?
  • Step 19 Determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6241 in row 41004 of the branch action flow table?
  • step 20 If it matches, first obtain the content in the branch status unit 6243, and set the indicator status according to the content in the branch status unit 6243; then obtain the action flow table 24000 embedded under row 41004 of the branch action flow table, and execute step 20;
  • Step 20 Determine whether the execution condition of the 24001 condition unit of the action flow table is true; if so, obtain and execute the content in the 24001 instruction unit of the action flow table;
  • Step 21 Determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6251 in line 41005 of the branch action flow table?
  • Step 22 Obtain the first action flow table row 25001 of the action flow table 25000, and determine whether the execution condition of the condition unit of the action flow table row 25001 is true;
  • Step 23 Obtain the first action flow table row 25101 of the action flow table 25100, and determine whether the execution condition of the condition unit of the action flow table row 25101 is true;
  • Step 24 Determine whether the execution condition of the condition unit in line 25102 of the action flow table is true
  • Step 25 Determine whether the value of the target index variable "manipulator state" matches the content of the index unit 6261 in row 41006 of the branch action flow table?
  • Step 26 Obtain the first action flow table row 50001 of the action flow table 50000. Because the execution condition of the condition unit in the action flow table row 50001 is always true, the content in the action flow table row 50001 instruction unit is executed immediately; 50001 instruction unit The middle is a branch switching instruction, so get the branch action flow table 51000 embedded under the action flow table row 50001, and judge whether the value of the target index variable "machine tool state" matches the content of the index unit 6311 in the branch action flow table row 51001?
  • Step 27 Obtain the first action flow table row 31001 of the action flow table 31000, and determine whether the execution condition of the condition unit of the action flow table row 31001 is true;
  • Step 28 Obtain the first action flow table row 31101 of the action flow table 31100, and determine whether the execution condition of the condition unit of the action flow table row 21101 is true;
  • step 29 If so, obtain and execute the content in the instruction unit of the action flow table row 31101, and then further obtain the lower-level action flow table 31110 embedded in the action flow table row 31101. And go to step 29; otherwise, get the next action flow table row 31102 and go to step 31;
  • Step 29 Obtain the first action flow table row 31111 of the action flow table 31110, and determine whether the execution condition of the condition unit of the action flow table row 31111 is true;
  • Step 30 Determine whether the execution condition of the condition unit on line 31112 of the action flow table is true
  • Step 31 Determine whether the execution condition of the condition unit in line 31102 of the action flow table is true
  • Step 32 Determine whether the execution condition of the condition unit in line 31103 of the action flow table is true
  • Step 33 Determine whether the value of the target index variable "machine tool status" matches the content of the index unit 6321 of the branch action flow table row 51002?
  • Step 34 Obtain the first action flow table row 32001 of the action flow table 32000, and determine whether the execution condition of the condition unit of the action flow table row 32001 is true;
  • Step 35 Determine whether the value of the target index variable "machine tool state" matches the content of the index unit 6331 of the branch action flow table row 51003?
  • Step 36 Obtain the first action flow table row 33001 of the action flow table 33000, and judge whether the execution condition of the condition unit of the action flow table row 33001 is true;
  • Step 37 Determine whether the value of the target index variable "machine tool state" matches the content of the index unit 6341 of the branch action flow table row 51004?
  • Step 38 Obtain the first action flow table row 34001 of the action flow table 34000, and judge whether the execution condition of the condition unit of the action flow table row 34001 is true;
  • Step 39 Determine whether the value of the target index variable "machine tool status" matches the content of the index unit 6351 of the branch action flow table row 51005?
  • Step 40 Obtain the first action flow table row 35001 of the action flow table 35000, and determine whether the execution condition of the condition unit of the action flow table row 35001 is true;
  • steps 1 to 40 illustrate the specific execution process of the action flow table corresponding to the automated production system in the second embodiment by the method of executing the action flow for the action flow table.
  • the method for executing the action flow for the action flow table of the second embodiment is performed on the current action flow table line through steps C11 to C12 which are the same as steps S11 to S12.
  • the action instruction in the instruction unit is a branch switching instruction.
  • it is a branch switching instruction in the 40001 instruction unit, so obtain the branch action flow embedded under row 40001 of the action flow table Table 41000, and determine whether the value of the target index variable "manipulator state" matches the content of index unit 6211 in row 41001 of the branch action flow table? If there is a match, first obtain the content in the branch status unit 6213.
  • this process is equivalent to obtaining and judging whether the action instruction in the instruction unit of the current action flow table row is a branch switching instruction, and if so, obtaining the branch switch instruction embedded in the current action flow table row.
  • Branch action flow table and obtain the branch action flow table row whose branch index value of the index unit is consistent with the value of the target index variable from the branch action flow table row, and further obtain the branch action flow table row that is embedded under the branch action flow table row
  • the first action flow table row of the sub-action flow table is taken as the current action flow table row and returns to step C12, if otherwise, the action instruction (C13) is executed.
  • step 9 the action flow table 21000 embedded under row 41001 of the branch action flow table is also obtained, and step 10 is executed. It is equivalent to judging whether there is an embedded branch action flow table under the current action flow table row, and if it is judged as yes, execute the branch action flow table until the branch action flow table is executed (step C14). After finishing the processing of step C14, the traversal of the action flow table row is realized through a step C15 which is the same as step B15.
  • the action flow table and branch action flow table obtained through the above process can be stored and retrieved in the form of databases, including but not limited to relational databases, XML databases, and object-oriented databases; and can be accessed through classes such as HTML web pages and Excel
  • the electronic form of TM is presented and/or set according to the scheme of the present invention. Further, it is possible to access the action flow table and branch action flow table stored in the database by executing the computer program implemented according to the solution of the present invention on a computer system including a memory and a processor to present, set and/or execute the action flow. Process steps.
  • the computer system also includes I/O ports for connecting external sensors and actuators to manipulate physical equipment such as machine tools and manipulators.
  • the composition of the above-mentioned database, spreadsheet, computer system, sensor and actuator is known, so no further description is needed.
  • the presentation form of the embedded relationship between the branch action flow table row and the action flow table upper and lower levels is not limited to the form shown in Figs. 10-11.
  • the branch action flow table 51000 can be set on the left side of the action flow table 50000, and each branch action flow table row of the branch action flow table 51000 is associated with the action flow table on the right side. Align by line.
  • the branch action flow table row is located on the left side of the action flow table instead of above, the relationship between the two is still a subordinate relationship. That is to say: the action flow table and the branch action flow table described in FIG. 11 and FIG. 12 are logically consistent. Therefore, the two different view forms shown in Fig.
  • Fig. 11 and Fig. 12 can be switched as needed.
  • the form shown in Fig. 11 is adopted, otherwise, Fig. 12 is adopted. form.
  • the display space of the screen can be used more efficiently, the complicated action process is easier to browse and edit, and the separation of different types of process steps is higher, so that it is convenient to find the details of the action process and find the program error in time.
  • a solid circular symbol can be set on the left side of the content of the condition unit of the action flow table row corresponding to the first branch action flow, and the mutually exclusive A hollow circular symbol is set on the left side of the content of the condition unit of the action flow table row corresponding to the other branch action flows to reflect the mutually exclusive relationship of these branch action flows in the format.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

一种异构嵌入式表格化处理及执行动作流程的方法和装置,其特征在于,通过表格化处理动作流程的方法及装置创建动作流程表(S1);顺序获取动作流程的流程步骤(S2);根据预定的流程步骤序列组合规则将动作流程中连续的流程步骤组合为对应有相应动作流程类型的流程步骤序列(S3);进一步基于与具有动作流程类型的流程步骤序列相对应的预定行生成规则在动作流程表中顺序生成与流程步骤序列相对应的动作流程表行(S4),直到所有的流程步骤处理完毕并输出最终的动作流程表。进一步通过针对动作流程表执行动作流程的方法及装置对动作流程表进行执行。对动作流程的处理,可在使复杂动作流程的编辑、处理和执行更加简洁和高效。

Description

一种异构嵌入式表格化处理及执行动作流程的方法和装置 技术领域
本发明属于自动控制领域,具体地涉及一种异构嵌入式表格化处理以及执行动作流程的方法和装置。
背景技术
在自动控制领域,通常采用基于文本的程序代码,例如Basic、Pascal、C等,来编制和执行动作流程,实现自动控制,
然而针对复杂的动作流程,程序代码量往往十分庞大,程序结构非常复杂,可读性较差;此外传统的基于文本的程序不仅编制时输入工作量大,而且在程序的解析或执行时需要首先对大量基于文本的语法指令进行解析处理,例如:IF、THEN、ELSIF、ELSE、END_IF等;这个过程会耗费计算机的资源从而影响了动作流程解析或执行的性能。
发明内容
为解决上述问题,提供一种使复杂的动作流程的编制和/或处理更加简洁和高效的异构嵌入式表格化处理及执行动作流程的方法和装置,本发明采用了如下技术方案:
本发明提供了一种表格化处理动作流程的方法,用于对含有多个流程步骤的动作流程进行表格化处理,其特征在于,包括:步骤S1,创建动作流程表;步骤S2,顺序获取动作流程的流程步骤并依次判定每个流程步骤在动作流程中所对应的动作流程类型;步骤S3,按照预定的流程步骤序列组合规则将动作流程中连续的流程步骤组合为至少一个对应有相应动作流程类型的流程步骤序列;步骤S4,从动作流程中顺序获取流程步骤序列,根据流程步骤序列的动作流程类型,基于与具有该动作流程类型的流程步骤序列相对应的预定行生成规则在动作流程表中顺序生成与流程步骤序列相对应的动作流程表行;步骤S5,判断流程步骤是否被获取完毕,若判断为否则返回步骤S2,若判断为是则得到最终的动作流程表并进行输出,其中,动作流程表包括条件列以及指令列,每个动作流程表行包括一个位于条件列的条件单元以及一个位于指令列的指令单元,条件单元中至少用于添加在动作流程中执行判断的流程步骤并将该流程步骤作为对应同一动作流程表行中的指令单元的执行条件,指令单元中用于添加在动作流程中执行动作的流程步骤作为动作指令。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,动作流程类型至少包括动作指令型动作流程,指令型动作流程包括至少一个连续且作为动作指令的流程步骤,针对对应指令型动作流程的流程步骤组合规则为,将指令型动作流程中连续的流程步骤组合为动作指令型流程步骤序列,与动作指令型流程步骤序列相对应的预定行生成规则为:步骤A1,在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;步骤A2,将一个真值作为执行条件添加到当前动作流程表行的条件单元中;步骤A3,顺序获取相应动作指令型流程步骤序列中的流程步骤添加到当前动作流程表行的指令单元中。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,动作流程类型还包括条件分支动作流程,条件分支动作流程包括至少一个分支动作流程以及对应于各个分支动作流程且互斥的执行条件,针对条件分支动作流程的流程步骤组合规则为,将条件分支动作流程中的分支动作流程及对应于该分支动作流程的执行条件组合为条件分支型流程步骤序列,与条件分支型流程步骤序列所对应的预定行生成规则为:步骤B1,根据条件分支型流程步骤序列在动作流程表中顺序生成相应的动作流程表行;步骤B2,将条件分支型流程步骤序列所对应的执行条件添加至相应的动作流程表行的条件单元中,并设置所生成的各动作流程表行为互斥关系;步骤B3,针对条件分支型流程步骤序列,顺序获取分支动作流程中的流程步骤并依次判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将条件分支型流程步骤序列中连续的流程步骤组合为至少一个对应有相应动作流程类型的子流程步骤序列,若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中,若子流程步骤序列为条件分支型流程步骤序列,生成一个与相应分支动作流程相对应的子动作流程表,并基于与条件分支型流程步骤序列相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,子动作流程表层级地嵌入在与分支动作流程相对应的动作流程表行下。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,动作流程类型还包括切换分支动作流程,切换分支动作流程包括多个分支动作流程、用于切换分支动作流程的分支切换指令以及对应于各个分支动作流程且互斥的分支索引条件,针对切换分支动作流程的流程步骤组合规则为,将切换分支动作流程所包含的每一个分支动作流程及其对应分支索引条件分别组合为切换分支型流程步骤序列,与切换分支型流程步骤序列所对应的预定行生成规则为:步骤C1,若对应分支切换指令的流程步骤之前连续的流程步骤属于动作指令型流程步骤序列,则将根据该动作指令型流程步骤序列生成的动作流程表行作 为当前动作流程表行;步骤C2,将对应分支切换指令的流程步骤作为动作指令添加至当前动作流程表行的指令单元中;步骤C3,生成一个切换分支型流程步骤序列相对应的分支动作流程表,该分支动作流程表层级地嵌入在当前动作流程表行下,分支动作流程表包括索引列;步骤C4,针对每个分支动作流程,在分支动作流程表中顺序生成包括位于索引列的索引单元的分支动作流程表行,并将分支索引条件添加到索引单元中同时创建一个层级地嵌入在分支动作流程表行下的子动作流程表;步骤C5,针对每个子动作流程表,顺序获取相应分支动作流程中的流程步骤,并依次判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将分支动作流程中连续的流程步骤分别组合为至少一个对应有相应动作流程类型的子流程步骤序列,更进一步基于与该流程步骤序列类型相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,分支切换指令用于根据目标索引变量确定对应的分支索引条件并切换执行具有相应分支索引值的索引单元的动作流程表行。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,分支动作流程表还包括切换目标列,分支动作流程表行还包括位于切换目标列的切换目标单元,切换目标单元中添加有用于设置目标索引变量的值的流程步骤作为切换指令。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,分支动作流程表还包括分支状态列,动作流程表行还包括位于分支状态列的分支状态单元,分支状态单元中添加有用于对所述分支动作流程所对应的状态变量进行赋值的动作指令。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,其中,动作流程类型还包括循环动作流程,循环动作流程包括执行条件以及循环子流程,动作流程表还包括循环属性列,动作流程表行中包括一个位于循环属性列中的循环属性单元,针对循环动作流程的流程步骤组合规则为,将循环动作流程的执行条件以及循环子流程组合为循环动作流程步骤序列,与循环动作流程步骤序列所对应的预定行生成规则为:步骤D1,在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;步骤D2,将当前流程步骤作为执行条件添加到当前动作流程表行的条件单元中,并在循环属性单元中添加一个循环执行属性;步骤D3,顺序获取循环子流程中的流程步骤并依次判定每个流程步骤在循环子流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将循环动作流程步骤序列中连续的流程步骤组合为对应有相应动作流程类型的子流程步骤序列,若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中,若子流程步骤序列为条件分支型流程步骤序列,生成一个与相应分支动作流程相对应的子动作流程表,并基于与条件分支型流程步骤序列相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,子动作流程表层级地嵌入在与分支动作流程相对应的动作流程表行下。
本发明还提供了一种针对动作流程表执行动作流程的方法,用于根据通过表格化处理动作流程的方法得到的动作流程表执行动作流程,表格化处理动作流程的方法包括:步骤S1,创建动作流程表;步骤S2,顺序获取动作流程的流程步骤并依次判定每个流程步骤在动作流程中所对应的动作流程类型;步骤S3,按照预定的流程步骤序列组合规则将动作流程中连续的流程步骤组合为至少一个对应有相应动作流程类型的流程步骤序列;步骤S4,从动作流程中顺序获取流程步骤序列,根据流程步骤序列的动作流程类型,基于与具有该动作流程类型的流程步骤序列相对应的预定行生成规则在动作流程表中顺序生成与流程步骤序列相对应的动作流程表行;步骤S5,判断流程步骤是否被获取完毕,若判断为否则返回步骤S2,若判断为是则得到最终的动作流程表并进行输出,其中,动作流程表包括条件列以及指令列,每个动作流程表行包括一个位于条件列的条件单元以及一个位于指令列的指令单元,条件单元中至少用于添加在动作流程中执行判断的流程步骤并将该流程步骤作为对应同一动作流程表行中的指令单元的执行条件,指令单元中用于添加在动作流程中执行动作的流程步骤作为动作指令,针对动作流程表执行动作流程的方法包括:步骤S11,顺序地从动作流程表中获取动作流程表行作为当前动作流程表行;步骤S12,判断当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤S11;步骤S13,获取并执行当前动作流程表行的指令单元中的动作指令;步骤S14,判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则返回步骤S11,若判断为是则动作流程已执行完毕。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,表格化处理动作流程的方法还包括:动作流程类型至少包括动作指令型动作流程以及条件分支动作流程,条件分支动作流程包括至少一个分支动作流程以及对应于各个分支动作流程且互斥的执行条件,针对条件分支动作流程的流程步骤组合规则为,将条件分支动作流程中的分支动作流程及对应于该分支动作流程的执行条件组合为条件分支型流程步骤序列,与条件分支型流程步骤序列所对应的预定行生成规则为:步骤B1,根据条件分支型流程步骤序列在动作流程表中顺序生成相应的动作流程表行;步骤B2,将条件分支型流程步骤序列所对应的执行条件添加至相应的动作流程表行的条件单元中,并设置所生成的各动作流程表行为互斥关 系;步骤B3,针对条件分支型流程步骤序列,顺序获取分支动作流程中的流程步骤并依次判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将条件分支型流程步骤序列中连续的流程步骤组合为至少一个对应有相应动作流程类型的子流程步骤序列,若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中,若子流程步骤序列为条件分支型流程步骤序列,生成一个与相应分支动作流程相对应的子动作流程表,并基于与条件分支型流程步骤序列相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,子动作流程表层级地嵌入在与分支动作流程相对应的动作流程表行下,针对动作流程表执行动作流程的方法还包括:步骤B11,顺序地从动作流程表中获取动作流程表行作为当前动作流程表行;步骤B12,判断当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤B11;步骤B13,获取并执行当前动作流程表行的指令单元中的动作指令;步骤B14,判断当前动作流程表行下是否是有嵌入的子动作流程表,若判断为是则执行子动作流程表直到子动作流程表被执行完毕;步骤B15,判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则获取与当前动作流程表行的条件单元中的执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回步骤B12,若判断为是则动作流程已执行完毕。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,表格化处理动作流程的方法还包括:动作流程类型还包括切换分支动作流程,切换分支动作流程包括多个分支动作流程、用于切换分支动作流程的分支切换指令以及对应于各个分支动作流程且互斥的分支索引条件,针对切换分支动作流程的流程步骤组合规则为,将切换分支动作流程所包含的每一个分支动作流程及其对应分支索引条件分别组合为切换分支型流程步骤序列,与切换分支型流程步骤序列所对应的预定行生成规则为:步骤C1,若对应分支切换指令的流程步骤之前连续的流程步骤属于动作指令型流程步骤序列,则将根据该动作指令型流程步骤序列生成的动作流程表行作为当前动作流程表行;步骤C2,将对应分支切换指令的流程步骤作为动作指令添加至当前动作流程表行的指令单元中;步骤C3,生成一个切换分支型流程步骤序列相对应的分支动作流程表,该分支动作流程表层级地嵌入在当前动作流程表行下,分支动作流程表包括索引列;步骤C4,针对每个分支动作流程,在分支动作流程表中顺序生成包括位于索引列的索引单元的分支动作流程表行,并将分支索引条件添加到索引单元中同时创建一个层级地嵌入在分支动作流程表行下的子动作流程表;步骤C5,针对每个子动作流程表,顺序获取相应分支动作流程中的流程步骤,并依次判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将分支动作流程中连续的流程步骤分别组合为至少一个对应有相应动作流程类型的子流程步骤序列,更进一步基于与该流程步骤序列类型相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,分支切换指令用于根据目标索引变量确定对应的分支索引条件并切换执行具有相应分支索引值的索引单元的动作流程表行,针对动作流程表执行动作流程的方法还包括:步骤C11,顺序地从动作流程表中获取动作流程表行作为当前动作流程表行;步骤C12,判断当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤C11;步骤C13,获取并判断当前动作流程表行的指令单元中的动作指令是否为分支切换指令,若是则将索引单元的分支索引值与目标索引变量的值一致的动作流程表行作为当前动作流程表行并返回步骤C12,若否则执行动作指令;步骤C14,判断当前动作流程表行下是否是有嵌入的分支动作流程表,若判断为是则执行分支动作流程表直到分支动作流程表被执行完毕;步骤C15,判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则获取与当前动作流程表行的条件单元中的执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回步骤C12,若判断为是则动作流程已执行完毕。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,所述表格化处理动作流程的方法还包括:其中,所述分支动作流程表还包括切换目标列,所述分支动作流程表行还包括位于所述切换目标列的切换目标单元,所述切换目标单元中添加有用于设置所述目标索引变量的值的所述流程步骤作为切换指令,所述针对动作流程表执行动作流程的方法还包括:其中,所述步骤C13中还获取所述切换目标单元的所述切换指令并执行。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,所述表格化处理动作流程的方法还包括:其中,所述分支动作流程表还包括分支状态列,所述动作流程表行还包括位于所述分支状态列的分支状态单元,所述分支状态单元中添加有用于对所述分支动作流程所对应的状态变量进行赋值的动作指令,其中,所述步骤C13中在获取所述索引单元的分支索引值与所述目标索引变量的值一致的分支动作流程表行时,还获取所述分支状态单元中的所述动作指令并对所述状态变量进行赋值。
根据本发明提供的表格化处理动作流程的方法,还可以具有这样的技术特征,表格化处理动作流程的方法还包括:动作流程类型还包括循环动作流程,循环动作流程包括执行条件以及循环子流程,动作流程表还包括循环属性列,动作流程表行中包括一个位于循环属性列 中的循环属性单元,针对循环动作流程的流程步骤组合规则为,将循环动作流程的执行条件以及循环子流程组合为循环动作流程步骤序列,与循环动作流程步骤序列所对应的预定行生成规则为:步骤D1,在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;步骤D2,将当前流程步骤作为执行条件添加到当前动作流程表行的条件单元中,并在循环属性单元中添加一个循环执行属性;步骤D3,顺序获取循环子流程中的流程步骤并依次判定每个流程步骤在循环子流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将循环动作流程步骤序列中连续的流程步骤组合为对应有相应动作流程类型的子流程步骤序列,若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中,若子流程步骤序列为条件分支型流程步骤序列,生成一个与相应分支动作流程相对应的子动作流程表,并基于与条件分支型流程步骤序列相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行,子动作流程表层级地嵌入在与分支动作流程相对应的动作流程表行下,针对动作流程表执行动作流程的方法还包括:步骤D11,顺序地从动作流程表中获取动作流程表行作为当前动作流程表行;步骤D12,判断当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤D11;步骤D13,获取并执行当前动作流程表行的指令单元中的动作指令;步骤D14,判断当前动作流程表行下是否是有嵌入的子动作流程表,若判断为是则执行子动作流程表直到子动作流程表被执行完毕;步骤D15,判断当前动作流程表行的循环属性单元中是否具有循环执行属性,若是则返回步骤D12重复执行当前动作流程表行;步骤D16,判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则获取与当前动作流程表行的条件单元中的执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回步骤D12,若判断为是则结束动作流程的执行。
本发明还提供了一种表格化处理动作流程的装置,其特征在于,包括:存储器,用于存储计算机程序;以及处理器,用于在执行计算机程序时,实现如权利要求1至7中任意一项的表格化处理动作流程的方法。
本发明还提供了一种针对动作流程表执行动作流程的装置,其特征在于,包括:存储器,用于存储计算机程序;以及处理器,用于在执行计算机程序时,实现如权利要求8至11中任意一项的针对动作流程表执行动作流程的方法。
发明作用与效果
根据本发明的异构嵌入式表格化处理及执行动作流程的方法和装置,具有以下优点:
1.由于通过将动作流程处理为动作流程表并基于该动作流程表进行执行,因此不再需要像基于文本的高级语言那样对IF、THEN、ELSIF、ELSE、END_IF等冗繁的语法指令进行处理,减少了程序输入的工作量和程序文件的尺寸,而对于计算机而言对数据表格的检索和处理要比文本程序的解析更加快捷,因而提升了计算机处理动作流程的效率。
2.通过对动作流程的表格化,并使动作流程的按条件以及指令分为多列,因而使程序长度大幅缩短,使程序内容更加简洁,提升了屏幕显示空间的利用率,使复杂动作流程更便于浏览和编辑;同时通过多列表格的布局使不同类型的流程步骤的分离度更高,便于发现动作流程之间的细节差异,及时发现程序错误。
3.通过动作流程表与分支动作流程表的层级地嵌入,能够用于精确定义复杂的动作流程,可以替代基于文本的高级语言程序,并使得动作流程的结构更加清晰,改善了复杂动作流程的可读性。
4.通过对复杂动作流程的表格化处理,所生成的动作流程表保留了原有动作流程的细节,因而动作流程表在编辑之后能够被执行,能够实现复杂的动作流程的控制,用于操控实体设备的动作;并减少了程序编译处理文本指令的中间步骤,提升了编译执行的速度。
5.动作流程表便于利用电子表格编辑工具进行处理,能够发挥和利用电子表格编辑工具的便利功能对动作流程进行编制和处理;并能够直接利用已有的电子表格数据作为输入,减少了人工输入和转换的步骤。
6.动作流程表以表、行、列和单元格为单位,相比文本指令,更容易设置和承载丰富的格式以及注释信息,并进行显示呈现以及存储,以更加清晰地反映动作流程的编辑和执行状态和程序的意图。
附图说明
图1是本发明实施例一中的一条自动化生产系统机械手抓取状态的剖面示意图;
图2是本发明实施例一中的一条自动化生产系统机床加工状态的剖面示意图;
图3是本发明实施例一中主流程的流程图;
图4是本发明实施例一中机械手子流程的流程图;
图5是本发明实施例一中机床子流程的流程图;
图6是本发明实施例一中主流程的动作流程表;
图7是本发明实施例一中机械手子流程的动作流程表;
图8是本发明实施例一中机床子流程的动作流程表;
图9是本发明实施例二中主流程的动作流程表;
图10是本发明实施例二中机械手子流程的动作流程表;
图11是本发明实施例二中机床子流程的动作流程表;以及
图12是本发明实施例二中机床子流程的动作流程表。
具体实施方式
作为第一种实施形态,本发明提供了一种表格化处理动作流程的方法,动作流程包括多个流程步骤,流程步骤可以是动作指令和/或条件分支动作流程,条件分支动作流程包括执行条件,第一分支动作流程和/或第二分支动作流程,如果执行条件为true则执行第一分支动作流程,否则执行第二分支动作流程,方法包括:步骤1:创建动作流程表,动作流程表包括条件列和指令列;步骤2:为动作流程表添加一条动作流程表行,动作流程表行包括与动作流程表的条件列和指令列对应的条件单元和指令单元;步骤3:顺序地获取动作流程的流程步骤,并判断流程步骤的类型:
A.如果流程步骤是一个条件分支动作流程,则将条件分支动作流程的执行条件添加到动作流程表行的条件单元中;然后顺序获取条件分支动作流程的第一分支动作流程中的流程步骤并判断:
a)如果后续流程步骤是动作指令,则顺序将后续的动作指令添加到动作流程表行的指令单元中;
b)如果后续流程步骤是条件分支动作流程,则从步骤1开始处理条件分支动作流程,将步骤1中针对条件分支动作流程所创建的动作流程表作为第二动作流程表,并将所创建的第二动作流程表层级地嵌入在动作流程表行之下;在完成条件分支动作流程的处理后从步骤2开始继续处理第一分支动作流程中的后续流程步骤;
获取条件分支动作流程的第二分支动作流程中的流程步骤并针对第二分支动作流程执行步骤2,并设置动作流程表行和针对第二分支动作流程在步骤2中所添加的动作流程表行为互斥关系;然后返回步骤2继续处理后续流程步骤;
进一步地,表格化处理动作流程的方法还包括针对为互斥关系的两个动作流程表行、在格式上对两者或两者之一进行相应地设置、以反映二者的互斥关系的步骤。在本发明的一些实施例中,针对为互斥关系的两个动作流程表行通过在二者之间绘制连接线段以反映二者的互斥关系。在本发明的另一些实施例中,对于连续的多个互斥的分支动作流程,对于首个分支动作流程对应的动作流程表行设置与互斥的其他分支动作流程对应的动作流程表行不同的符号标志,用于在格式上反映这些分支动作流程的互斥的关系。
B.如果流程步骤是一个动作指令,则将动作流程表行的条件单元设置为表示一个永远为true的条件,并将一个永远为true的条件作为后续动作指令的执行条件;并顺序将后续动作指令添加到动作流程表行的指令单元中;直到后续流程步骤是条件分支动作流程时,返回步骤2继续处理后续流程步骤;
在第一种实施形态中,作为本发明一种表格化处理动作流程的方法的另一个方面,动作流程表行的条件单元通过设置为空或设置为一个表示true的常量用于表示一个永远为true的条件。进一步地,针对第二分支动作流程,如果第二分支动作流程的第一个流程步骤是动作指令而不是条件分支动作流程时,将第二分支动作流程对应的动作流程表行的条件单元设置为表示永远为true的条件的“else”。
在本发明的一些实施例中,采用一个永远表示true的条件来作为动作流程表行条件单元的内容和后续动作指令的执行条件,可以使动作流程表的结构保持整齐,并与原动作流程逻辑的一致性;
进一步地,设置第二动作流程表与父级动作流程表按列对齐;
进一步地,方法还包括针对第二动作流程表在格式上进行相应地设置以反映第二动作流程表与父级动作流程表行的层级关系;在本发明的一些实施例中,针对第二动作流程表的动作流程表行的条件单元,根据第二动作流程表的层级相应地设置缩进宽度。
在第一种实施形态中,作为本发明一种表格化处理动作流程的方法的另一个方面,动作流程还包括循环动作流程,循环动作流程在满足执行条件时按照设定的模式循环地执行,方法的特征在于:动作流程表行还包括循环执行属性;方法还包括判断当动作流程表行对应的动作流程为循环动作流程时,根据动作流程的循环模式设置动作流程表行循环执行属性值的步骤;
进一步地,循环执行属性值中包括是否循环执行、循环执行的周期和/或循环执行任务调度优先级参数;
进一步地,方法还包括针对对应于循环动作流程的动作流程表行在格式上进行相应地设置以反映动作流程表行的循环执行属性的步骤;
在第一种实施形态中,动作流程还包括切换分支动作流程,切换分支动作流程包含分支切换指令和分支动作流程,分支切换指令中包括目标索引变量,分支动作流程包含至少一个分支索引值,分支切换指令是用于对目标索引变量的值进行判断并切换执行分支索引值与目标索引变量的值相匹配的分支动作流程的动作指令;方法的特征在于步骤3中还包括:判断如果流程步骤是切换分支动作流程,则将切换分支动作流程的分支切换指令添加到动作流程表行的指令单元中,并针对切换分支动作流程创建分支动作流程表,将分支动作流程表层级地嵌入在动作流程表行之下;分支动作流程表包含分支索引列,针对切换分支动作流程所包含的每一个分支动作流程为分支动作流程表添加分支动作流程表行,分支动作流程表行包含与分支动作流程表的索引列对应的索引单元;方法还包括将切换分支动作流程的分支索引值添加到分支动作流程表行的分支索引值单元中;然后依次针对切换分支动作流程所包含的每一个分支动作流程从步骤1开始执行,并将步骤1中所创建的动作流程表层级地嵌入在分支动作流程对应的分支动作流程表行之下。
在本发明的一些实施例中,分支切换指令对应于一组互斥的比较分支索引值与目标索引变量的值条件分支动作流程,这组互斥的条件分支动作流程可以作为一个对目标索引变量的值进行判断并切换执行分支索引值与目标索引变量的值相匹配的分支切换动作流程进行处理;
进一步地,分支动作流程表还包含注释列,分支动作流程表行包含与注释列对应的注释单元,方法还包括根据切换分支动作流程所包含的每一个分支动作流程的含义设置注释单元内容的步骤;
进一步地,嵌入在分支流程表行下的动作流程表与包含分支流程表的上层动作流程表按列对齐。
在第一种实施形态中,动作流程的动作指令中还包括设置目标索引变量值的指令,方法的特征在于:动作流程表还包括切换目标列,动作流程表行对应地还包括切换目标单元,步骤3中,在将动作指令添加到指令单元中之前还包括判断如果动作指令是设置目标索引变量值的指令,则根据设置目标索引变量值的指令设置切换目标单元的内容,并且设置目标索引变量值的指令不再添加到动作流程表行的指令单元中的步骤。
优选地,设置动作流程表的切换目标列位于指令列的右侧;通过设置动作流程表的切换目标列,使动作流程表中切换目标分支动作流程的指令独立于其他动作指令,提升了不同类型的流程步骤的分离度;并能够更加清晰地比较针对不同分支动作流程切换目标的差异,有助于及时发现和避免程序错误;
在第一种实施形态中,切换分支动作流程还包括状态变量,状态变量的值是根据切换分支动作流程的分支动作流程确定的,方法的特征在于:分支动作流程表还包括分支状态列,分支动作流程表行对应地包括分支状态单元,方法还包括获取切换分支动作流程中的状态变量并根据切换分支动作流程的分支动作流程所确定的状态变量的值设置分支动作流程对应的分支动作流程表行的分支状态单元的内容的步骤。通过为分支动作流程表设置分支状态列,能够更加清晰地比较针对不同分支动作流程的差异,有助于及时发现和避免程序错误和快速和准确地配置分支动作流程的流程步骤;以及有助于提升流程步骤的分离度,从而减少动作流程表的行数,提高屏幕的利用率。
作为第二种实施形态,本发明还提供了一种根据动作流程表执行动作流程的方法,方法包括:步骤11,顺序地获取动作流程表的动作流程表行;步骤12,判断动作流程表行的条件单元的执行条件是否为true,如果是则执行以下步骤,否则继续获取下一动作流程表行并返回步骤12开始执行;步骤13,获取并执行动作流程表行指令单元中的动作指令;步骤14,判断动作流程表行下是否是有嵌入的第二动作流程表,如果有则针对第二动作流程表从步骤11开始执行直到第二动作流程表被处理完成;步骤15,获取与动作流程表行为非互斥关系的下一条动作流程表行,然后返回步骤12重复执行。
在第二种实施形态中,方法的步骤12中还包括判断动作流程表行是否设置有循环执行属性,如果有则在动作流程表行条件单元中的执行条件为true时根据循环执行属性值所设置的循环模式通过步骤12重复执行动作流程表行的步骤。
在第二种实施形态中,方法的步骤13中还包括当判断动作指令是分支切换指令时,获取嵌入在包含分支切换指令的动作流程表行下方的分支动作流程表,并查找分支动作流程表中索引单元内容与分支切换指令的目标索引变量的值相匹配的分支动作流程表行,并获取嵌入在分支动作流程表行下方的动作流程表,并从步骤11开始处理动作流程表的步骤。
在第二种实施形态中,方法的步骤13中还包括获取动作流程表行切换目标单元的内容,并执行切换目标单元中的设置目标索引变量的值的指令的步骤。
优选地,处理切换目标单元中设置目标索引变量的值的指令是在指令单元中的动作指令处理之后执行的。
在第二种实施形态中,方法还包括判断分支动作流程表行的分支状态单元是否被设置,如果是则获取分支动作流程表行的分支状态单元的内容,并根据分支状态单元的内容设置分 支动作流程状态变量值的步骤。
作为第三种实施形态,本发明还提供了一种表格化处理动作流程的装置,动作流程的流程步骤包括动作指令和条件分支动作流程,条件分支动作流程包括执行条件,第一分支动作流程和/或第二分支动作流程,如果执行条件为true则执行第一分支动作流程,否则执行第二分支动作流程,装置包括:动作流程表创建部:用于创建动作流程表,动作流程表包括条件列和指令列;所创建的动作流程表用于供动作流程表行创建部继续处理;动作流程表行创建部:用于为动作流程表添加动作流程表行并调用流程步骤处理部处理,动作流程表行包括与动作流程表的条件列和指令列对应的条件单元和指令单元;所创建的动作流程表行用于供流程步骤处理部继续处理;流程步骤处理部:用于顺序地获取动作流程的流程步骤,并进行判断:
A.如果流程步骤是一个条件分支动作流程,则将条件分支动作流程的执行条件添加到动作流程表行的条件单元中;然后顺序获取条件分支动作流程的第一分支动作流程中的流程步骤并判断:
a)如果后续流程步骤是动作指令,则顺序将后续的动作指令添加到动作流程表行的指令单元中;
b)如果后续流程步骤是条件分支动作流程,则通过动作流程表创建部处理条件分支动作流程,将动作流程表创建部针对条件分支动作流程所创建的动作流程表作为第二动作流程表,并将所创建的第二动作流程表层级地嵌入在动作流程表行之下;在完成条件分支动作流程的处理后通过动作流程表行创建部继续处理第一分支动作流程中的后续流程步骤;
获取条件分支动作流程的第二分支动作流程中的流程步骤并针对第二分支动作流程通过动作流程表行创建部进行处理,并设置动作流程表行和针对第二分支动作流程通过动作流程表行创建部所添加的动作流程表行为互斥关系;然后通过动作流程表行创建部继续处理后续流程步骤;
B.如果流程步骤是一个动作指令,则将动作流程表行的条件单元设置为表示一个永远为true的条件,并将一个永远为true的条件作为后续动作指令的执行条件;并将后续动作指令添加到动作流程表行的指令单元中;直到后续流程步骤是条件分支动作流程时,通过动作流程表行创建部继续处理后续流程步骤;
在第三种实施形态中,动作流程还包括循环动作流程,循环动作流程在满足执行条件时按照设定的模式循环地执行,装置的特征在于:动作流程表行还包括循环执行属性;装置还包括循环执行属性设置部,用于判断当动作流程表行对应的动作流程为循环动作流程时,根据动作流程的循环模式设置动作流程表行循环执行属性值;
在第三种实施形态中,动作流程还包括切换分支动作流程,切换分支动作流程包含分支切换指令和分支动作流程,分支切换指令中包括目标索引变量,分支动作流程包含至少一个分支索引值,分支切换指令是用于对目标索引变量的值进行判断并切换执行分支索引值与目标索引变量的值相匹配的分支动作流程的动作指令;装置的特征在于装置还包括:分支动作流程表创建部:用于针对切换分支动作流程创建分支动作流程表,分支动作流程表包含分支索引列;所创建的分支动作流程表用于供分支动作流程表行创建部继续处理;分支动作流程表行创建部:用于针对切换分支动作流程所包含的每一个分支动作流程为分支动作流程表添加分支动作流程表行,分支动作流程表行包含与分支动作流程表的索引列对应的索引单元;分支动作流程表行创建部还用于将切换分支动作流程的分支索引值添加到分支动作流程表行的分支索引值单元中;然后通过动作流程表创建部依次处理切换分支动作流程所包含的每一个分支动作流程,并将动作流程表创建部中所创建的动作流程表层级地嵌入在分支动作流程对应的分支动作流程表行之下;流程步骤处理部还用于判断如果流程步骤是切换分支动作流程,则将切换分支动作流程的分支切换指令添加到动作流程表行的指令单元中,以及通过分支动作流程表创建部处理切换分支动作流程,并将分支动作流程表创建部所创建的分支动作流程表层级地嵌入在包含分支切换指令的动作流程表行之下。
在第三种实施形态中,动作流程的动作指令中还包括设置目标索引变量值的指令;装置的特征在于:动作流程表还包括切换目标列,动作流程表行对应地还包括切换目标单元,动作流程指令处理部在将动作指令添加到指令单元中之前还判断如果动作指令是设置目标索引变量值的指令,则根据设置目标索引变量值的指令设置切换目标单元的内容,并且设置目标索引变量值的指令不再添加到动作流程表行的指令单元中。
在第三种实施形态中,切换分支动作流程还包括状态变量,状态变量的值是根据切换分支动作流程的分支动作流程确定的,装置的特征在于:分支动作流程表还包括分支状态列,分支动作流程表行对应地包括分支状态单元,分支动作流程表行创建部还用于获取切换分支动作流程的状态变量并根据切换分支动作流程的分支动作流程所确定的状态变量的值设置分支动作流程表行的分支状态单元的内容。
作为第四种实施形态,本发明还提供了一种根据动作流程表执行动作流程的装置,装置包括:动作流程表行获取部,用于顺序地获取动作流程表的动作流程表行,并通过动作流程 表行判断部继续处理所获取的动作流程表行;动作流程表行判断部,用于判断所获取的动作流程表行的条件单元的执行条件是否为true;如果是则通过动作指令执行部继续处理;否则通过动作流程表行获取部继续获取下一动作流程表行,然后由动作流程表行判断部进行处理;动作指令执行部,用于获取并执行动作流程表行指令单元中的动作指令,然后通过第二动作流程表处理部继续处理;第二动作流程表处理部,用于判断动作流程表行下是否是有嵌入的第二动作流程表,如果有则针对第二动作流程表通过动作流程表行获取部继续处理,直到第二动作流程表被处理完成,然后通过非互斥动作流程表行获取部继续处理;非互斥动作流程表行获取部,用于获取与动作流程表行为非互斥关系的下一条动作流程表行,然后通过动作流程表行判断部继续处理;
在第四种实施形态中,动作流程表行判断部还用于判断动作流程表行是否包含循环执行属性,如果有则在动作流程表行条件单元中的执行条件为true时根据循环执行属性值所设置的循环模式通过动作流程表行判断部重复执行动作流程表行;
在第四种实施形态中,动作指令执行部还用于判断当动作指令是分支切换指令时,获取嵌入在包含分支切换指令的动作流程表行下方的分支动作流程表,并查找分支动作流程表中索引单元内容与分支切换指令的目标索引变量的值相匹配的分支动作流程表行,然后通过分支动作流程表行处理部对分支动作流程表行进行处理;分支动作流程表行处理部用于获取嵌入在分支动作流程表行下方的动作流程表,并通过动作流程表行获取部处理动作流程表。
在第四种实施形态中,动作指令执行部还用于获取动作流程表行切换目标单元的内容,并根据切换目标单元的内容对应地设置目标索引变量的值。
在第四种实施形态中,作为本发明一种根据动作流程表执行动作流程的装置的另一个方面,当动作指令执行部执行分支切换指令时,针对索引单元内容与分支切换指令的目标索引变量的值相匹配的分支动作流程表行,还用于判断分支动作流程表行的分支状态单元是否被设置,如果是则获取分支动作流程表行的分支状态单元的内容,并根据分支状态单元的内容设置分支动作流程状态变量值;
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下结合实施例及附图对本发明的异构嵌入式表格化处理及执行动作流程的方法和装置作具体阐述。
<实施例>
附图1~2所示的是一个典型的自动化生产系统,包括一台机床200和一台机械手300,机床200包括防护门201,防护门201在机床加工的时候关闭,并在加工完成之后开启。防护门201的开启位置和关闭位置动作设置有传感器用于检测防护门201的开启或关闭是否到位。机床还包括一个输出区202,用于承接加工完成的工件400,工件400在加工完成后滑落到输出区202,输出区202设置有传感器用于检测输出区202是否有工件400。机械手300通过夹爪301从输出区抓取工件400,并放置到工件码放区500。机械手的夹爪301上设置有传感器用于检测工件400是否已被抓取。当机械手300在准备抓取工件时机床的防护门201没有开启到位或者输出区202中没有工件,则提示“机械手工件抓取错误报警”;当机械手300将工件放置到码垛区之后夹爪301上检测有工件,则提示“机械手工件放置错误报警”。机械手300上还设置有红黄绿三色指示灯202,当机械手300在抓取或放置工件时三色指示灯202的绿灯亮;当机械手300在等待或停止状态时三色指示灯202的黄灯亮;当机械手300在错误状态时三色指示灯202的红灯亮,用于提示错误状态。
下面参考附图3~5说明这个自动化生产系统的详细动作流程:
系统的初始状态设定为:机床的防护门201已经关闭到位,机床输出区202没有工件;机械手300没有抓取工件,三色指示灯202的黄灯亮;变量“机床状态”的初始值等于100,表示“机床停止中”;变量“机械手状态”的初始值等于100,表示“机械手停止中”。此时设置“机床启动”信号为true,“机械手停止”信号为false,“机床停止”信号为false;并开始执行下面的流程步骤:
流程步骤1是一个条件分支动作流程,用于判断系统是否开机;如果是则执行流程步骤3、78、153。并且这些步骤在系统开机的条件下是循环执行的。
流程步骤3是一个条件分支动作流程,用于判断“机械手停止”信号是否为true;如果是则执行流程步骤5、6、7,否则执行流程步骤14。
流程步骤5是一个动作指令,用于复位“机械手停止”信号为false。
流程步骤6是一个动作指令,用于设置“机械手状态”等于100,即“机械手停止中”。
流程步骤7是一个条件分支动作流程,用于判断变量“机械手状态”是否等于400或500;如果是则执行流程步骤9,否则执行流程步骤78。
流程步骤9是一个动作指令,用于暂停机械手的动作。
流程步骤14是一个调用机械手子流程的动作指令。机械手子流程用于根据机械手状态切换执行相应的动作流程。机械手子流程中的第一个被执行的流程步骤是流程步骤16。
流程步骤16是一个条件分支动作流程,用于判断变量“机械手状态”是否等于100,即“机 械手停止中”;如果是则执行流程步骤18、19,否则执行流程步骤33。
流程步骤18是一个用于设置变量“指示灯状态”的值为“黄灯亮”赋值的动作指令。
流程步骤19是一个条件分支动作流程,用于判断“机械手启动”信号是否为true;如果是则执行流程步骤21、22。
流程步骤21是一个动作指令,用于复位“机械手启动”信号为false。
流程步骤22是一个条件分支动作流程,用于判断机械手的夹爪301中是否检测到有工件400;如果是则执行流程步骤23,否则执行流程步骤24。
流程步骤23是一个动作指令,用于启动机械手放置工件的动作。
流程步骤24是一个条件分支动作流程,用于判断是否机床防护门201开启到位而且机床输出区202中检测到有工件400;如果是则执行流程步骤26、27,否则执行流程步骤30。
流程步骤26是一个动作指令,用于启动机械手抓取工件的动作。
流程步骤27是一个动作指令,用于设置“机械手状态”等于400,即“机械手工件抓取中”。
流程步骤30是一个动作指令,用于设置“机械手状态”等于300,即“机械手工件抓取错误报警”。
流程步骤33是一个条件分支动作流程,用于判断变量“机械手状态”是否等于200,即“机械手工件抓取等待中”;如果是则执行流程步骤35、36,否则执行流程步骤49。
流程步骤35是一个用于设置变量“指示灯状态”的值为“黄灯亮”赋值的动作指令。
流程步骤36是一个条件分支动作流程,用于判断“机械手启动”信号是否为true;如果是则执行流程步骤38、39。
流程步骤38是一个动作指令,用于复位“机械手启动”信号为false。
流程步骤39是一个条件分支动作流程,用于判断是否机床防护门201开启到位而且机床输出区202中检测到有工件400;如果是则执行流程步骤41、42,否则执行流程步骤45。
流程步骤41是一个动作指令,用于启动机械手抓取工件的动作。
流程步骤42是一个动作指令,用于设置“机械手状态”等于400,即“机械手工件抓取中”。
流程步骤45是一个动作指令,用于设置“机械手状态”等于300,即“机械手工件抓取错误报警”。
流程步骤49是一个条件分支动作流程,用于判断变量“机械手状态”是否等于300,即“机械手工件抓取错误报警”;如果是则执行流程步骤51,否则执行流程步骤53。
流程步骤51是一个用于设置变量“指示灯状态”的值为“红灯亮”赋值的动作指令。
流程步骤53是一个条件分支动作流程,用于判断变量“机械手状态”是否等于400,即“机械手工件抓取中”;如果是则执行流程步骤55、56,否则执行流程步骤62。
流程步骤55是一个用于设置变量“指示灯状态”的值为“绿灯亮”赋值的动作指令。
流程步骤56是一个条件分支动作流程,用于判断机械手抓取工件动作是否执行完成;如果是则执行流程步骤58、59。
流程步骤58是一个动作指令,用于启动机械手放置工件的动作。
流程步骤59是一个动作指令,用于设置“机械手状态”等于500,即“机械手工件放置中”。
流程步骤62是一个条件分支动作流程,用于判断变量“机械手状态”是否等于500,即“机械手工件放置中”;如果是则执行流程步骤64、65,否则执行流程步骤73。
流程步骤64是一个用于设置变量“指示灯状态”的值为“绿灯亮”赋值的动作指令。
流程步骤65是一个条件分支动作流程,用于判断机械手放置工件动作是否执行完成;如果是则执行流程步骤67。
流程步骤67个条件分支动作流程,用于判断机械手的夹爪301中是否检测到有工件400,果是则执行流程步骤68,否则执行流程步骤70。
流程步骤68是一个动作指令,用于设置“机械手状态”等于600,即“机械手工件放置错误报警”。
流程步骤70是一个动作指令,用于设置“机械手状态”等于200,即“机械手工件抓取等待中”。
流程步骤73是一个条件分支动作流程,用于判断变量“机械手状态”是否等于600,即“机械手工件放置错误报警”;如果是则执行流程步骤74。
流程步骤74是一个用于设置变量“指示灯状态”的值为“红灯亮”赋值的动作指令。
流程步骤78是一个条件分支动作流程,用于判断“机床停止”信号是否为true;如果是则执行流程步骤80、81、82,否则执行流程步骤87。
流程步骤80是一个动作指令,用于复位““机床停止”信号为false。
流程步骤81是一个动作指令,用于设置“机床状态”等于100,即“机床停止中”。
流程步骤82是一个条件分支动作流程,用于判断变量“机床状态”是否等于300,即“机床加工中”;如果是则执行流程步骤83。
流程步骤83是一个动作指令,用于暂停机床的动作。
流程步骤87是一个调用机床子流程的动作指令,用于根据机床状态切换执行相应的动作流 程。机床子流程中的第一个被执行的流程步骤是流程步骤89。
流程步骤89是一个条件分支动作流程,用于判断变量“机床状态”是否等于100,即“机床停止中”;如果是则执行流程步骤91,否则执行流程步骤119。
流程步骤91是一个条件分支动作流程,用于判断“机床启动”信号是否为true;如果是则执行流程步骤93、94。
流程步骤93是一个动作指令,用于复位“机床启动”信号为false。
流程步骤94是一个条件分支动作流程,用于判断机床输出区202中是否有工件400,如果有则执行流程步骤96;否则执行流程步骤107。
流程步骤96是一个条件分支动作流程,用于判断机床的防护门201是否未开启到位,如果是则执行流程步骤98、99;否则执行流程步骤103、104。
流程步骤98是一个动作指令,用于开启机床的防护门。
流程步骤99是一个动作指令,用于设置“机床状态”等于400,即“机床防护门开启中”。
流程步骤103是一个动作指令,用于启动机械手300的抓取动作。
流程步骤104是一个动作指令,用于设置“机床状态”等于500,即“机床工件抓取等待中”。
流程步骤107是一个条件分支动作流程,用于判断机床的防护门201是否未关闭到位,如果是则执行流程步骤109、110;否则执行流程步骤114、115。
流程步骤109是一个动作指令,用于关闭机床的防护门201。
流程步骤110是一个动作指令,用于设置“机床状态”等于200,即“机床防护门关闭中”。
流程步骤114是一个动作指令,用于启动机床加工。
流程步骤115是一个动作指令,用于设置“机床状态”等于300,即“机床加工中”。
流程步骤119是一个条件分支动作流程,用于判断变量“机床状态”是否等于200,即“机床防护门关闭中”;如果是则执行流程步骤121,否则执行流程步骤127。
流程步骤121是一个条件分支动作流程,用于判断机床到防护门201是否关闭到位,如果是则执行流程步骤123、124。
流程步骤123是一个动作指令,用于启动机床加工。
流程步骤124是一个动作指令,用于设置“机床状态”等于300,即“机床加工中”。
流程步骤127是一个条件分支动作流程,用于判断变量“机床状态”是否等于300,即“机床加工中”;如果是则执行流程步骤129,否则执行流程步骤135。
流程步骤129是一个条件分支动作流程,用于判断机床加工是否已完成,如果是则执行流程步骤131、132。
流程步骤131是一个动作指令,用于开启机床的防护门。
流程步骤132是一个动作指令,用于设置“机床状态”等于400,即“机床防护门开启中”。
流程步骤135是一个条件分支动作流程,用于判断变量“机床状态”是否等于400,即“机床防护门开启中”;如果是则执行流程步骤137,否则执行流程步骤143。
流程步骤137是一个条件分支动作流程,用于判断机床到防护门201是否开启到位,如果是则执行流程步骤139、140。
流程步骤139是一个动作指令,用于启动机械手300的抓取动作。
流程步骤140是一个动作指令,用于设置“机床状态”等于500,即“机床工件抓取等待中”。
流程步骤143是一个条件分支动作流程,用于判断变量“机床状态”是否等于500,即“机床工件抓取等待中”;如果是则执行流程步骤145。
流程步骤145是一个条件分支动作流程,用于判断是否机械手抓取动作已经执行完成且机床输出区202中没有工件400,如果是则执行流程步骤147、148。
流程步骤147是一个动作指令,用于关闭机床的防护门201。
流程步骤148是一个动作指令,用于设置“机床状态”等于200,即“机床防护门关闭中”。
流程步骤153是一个动作指令,用于使动作流程停顿100毫秒。
基于文本的编程语言是更为普遍的一种用于定义动作流程的方式。下面提供了用C语言程序所描述的上述动作流程。C语言程序可以作为本发明方案动作流程的输入形式。上述的动作流程的流程步骤号可以与下面的C语言程序代码的行号相对应。
Figure PCTCN2020119383-appb-000001
Figure PCTCN2020119383-appb-000002
Figure PCTCN2020119383-appb-000003
Figure PCTCN2020119383-appb-000004
本实施例中以上述动作流程为例,通过表格化处理动作流程的方法对上述动作流程的各个流程步骤进行表格化处理,下面参考附图6~8对流程步骤的表格化处理过程进行说明:步骤1.针对主流程创建一个动作流程表10000,动作流程表10000包括条件列601和指令
列602;为动作流程表10000添加一条动作流程表行10001,动作流程表行10001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;获取上述的流程步骤1,由于流程步骤1是一个条件分支动作流程,将流程步骤1的执行条件“系统开机”添加到动作流程表行10001的条件单元中;
进一步地,由于流程步骤1表示在满足其执行条件的前提下循环执行后续指令,因此设置动作流程表行10001循环执行属性值为循环执行;并在动作流程表行10001条件单元内容的左侧对应地设置一个圆形的内部为旋转箭头的标志610,这是根据动作流程表行10001所设置的循环执行属性在单元格的格式上所进行的相应设置,用于反映流程步骤1的执行执行方式。
为了更清楚地描述本实施例,动作流程表中的流程步骤对应地在内容前添加了流程步骤的编号,这不代表在实际的实施例中也包含此标注。然后从步骤2开始针对流程步骤1判断结果为true的分支动作流程进行处理;
步骤2.由于流程步骤3为条件分支动作流程,为流程步骤3创建新的动作流程表11000,并将动作流程表11000层级地嵌入在动作流程表行10001之下。动作流程表11000包括条件列601和指令列602。为动作流程表11000创建动作流程表行11001,动作流程表行11001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤3的执行条件“机械手停止”添加到动作流程表行11001的条件单元中,并将后续的动作指令即流程步骤5“机械手停止=false;”和流程步骤6“机械手状态=100;”的内容添加到动作流程表行11001的指令单元中;
进一步地,根据动作流程表10000与动作流程表11000的层级关系对动作流程表行11001的条件单元的单元格式进行的相应设置,使动作流程表行11001的条件单元的中的内容相比动作流程表行10001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤3开始继续针对流程步骤3判断结果为true的分支动作流程中的其他流程步骤进行处理;以及从步骤4开始针对流程步骤3判断结果为false的分支动作流程进 行处理。
步骤3.由于流程步骤7为条件分支动作流程,为流程步骤7创建新的动作流程表11100,并将动作流程表11100层级地嵌入在动作流程表行11001之下。动作流程表11100包括条件列601和指令列602。为动作流程表11100创建动作流程表行11101,动作流程表行11101包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤7的执行条件添加到动作流程表行11101的条件单元中,并将后续的动作指令即流程步骤9的内容添加到动作流程表行11101的指令单元中;进一步地,根据动作流程表11000与动作流程表11100的层级关系对动作流程表行11101的条件单元的单元格式进行的相应设置,使动作流程表行11101的条件单元的中的内容相比动作流程表行11001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤4.由于流程步骤14是调用机械手子流程的动作指令,在动作流程表行11001之后创建新的动作流程表行11002,并将一个表示”true”的常量“ELSE”添加为动作流程表行11002条件单元的内容;并将流程步骤14的内容添加到动作流程表行11002的指令单元中。
进一步地,由于动作流程表行11001和动作流程表行11002属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行11001与动作流程表行11002的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤5.继续获取后续动作流程,为流程步骤78创建新的动作流程表行11003,动作流程表行11003包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤78为条件分支动作流程,将流程步骤78的执行条件添加到动作流程表行11003的条件单元中,并将后续的动作指令即流程步骤80和流程步骤81的内容添加到动作流程表行11003的指令单元中;
然后从步骤6开始继续针对流程步骤78判断结果为true的分支动作流程中的其他流程步骤进行处理;以及从步骤7开始针对流程步骤78判断结果为false的分支动作流程进行处理。
步骤6.由于流程步骤82为条件分支动作流程,为流程步骤82创建新的动作流程表11200,并将动作流程表11200层级地嵌入在动作流程表行11003之下。动作流程表11200包括条件列601和指令列602。为动作流程表11200创建动作流程表行11201,动作流程表行11201包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤82的执行条件添加到动作流程表行11201的条件单元中,并将后续的动作指令即流程步骤83的内容添加到动作流程表行11201的指令单元中;
进一步地,根据动作流程表11000与动作流程表11200的层级关系对动作流程表行11201的条件单元的单元格式进行的相应设置,使动作流程表行11201的条件单元的中的内容相比动作流程表行11003的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤7.由于流程步骤87是调用机床子流程的动作指令,在动作流程表行11003之后创建新的动作流程表行11004,并将一个表示”true”的常量“ELSE”添加为动作流程表行11004条件单元的内容;并将流程步骤87的内容添加到动作流程表行11004的指令单元中。
进一步地,由于动作流程表行11003和动作流程表行11004属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行11003与动作流程表行11004的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤8.由于流程步骤153为动作指令,在动作流程表行11004之后创建新的动作流程表行11005,并将一个表示”true”的常量“TRUE”添加为动作流程表行11005条件单元的内容;并将流程步骤153的内容添加到动作流程表行11005的指令单元中。
步骤9.获取机械手子流程中的第一个流程步骤,由于流程步骤16为条件分支动作流程,为流程步骤16创建新的动作流程表20000。动作流程表20000包括条件列601和指令列602。为动作流程表20000创建动作流程表行20001,动作流程表行20001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤16的执行条件添加到动作流程表行20001的条件单元中,并将后续的动作指令即流程步骤18的内容添加到动作流程表行20001的指令单元中;然后从步骤10开始继续针对流程步骤16判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤14开始针对流程步骤16判断结果为false的分支动作流程进行处理。
步骤10.由于流程步骤19为条件分支动作流程,为流程步骤19创建新的动作流程表21000, 并将动作流程表21000层级地嵌入在动作流程表行20000之下。动作流程表21000包括条件列601和指令列602。为动作流程表21000创建动作流程表行21001,动作流程表行21001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤19的执行条件添加到动作流程表行21001的条件单元中,并将后续的动作指令即流程步骤21的内容添加到动作流程表行21001的指令单元中;
进一步地,根据动作流程表20000与动作流程表21000的层级关系对动作流程表行21001的条件单元的单元格式进行的相应设置,使动作流程表行21001的条件单元的中的内容相比动作流程表行20001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤11开始继续针对流程步骤19判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤11.由于流程步骤22为条件分支动作流程,为流程步骤22创建新的动作流程表21100,并将动作流程表21100层级地嵌入在动作流程表行21000之下。动作流程表21100包括条件列601和指令列602。为动作流程表21100创建动作流程表行21101,动作流程表行21101包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤22的执行条件添加到动作流程表行21101的条件单元中,并将后续的动作指令即流程步骤23的内容添加到动作流程表行21101的指令单元中;进一步地,根据动作流程表21000与动作流程表21100的层级关系对动作流程表行21101的条件单元的单元格式进行的相应设置,使动作流程表行21101的条件单元的中的内容相比动作流程表行21001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤12.继续获取后续动作流程,为流程步骤24创建新的动作流程表行21102,动作流程表行21102包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤24为条件分支动作流程,将流程步骤24的执行条件添加到动作流程表行21102的条件单元中,并将后续的动作指令即流程步骤26、27的内容添加到动作流程表行21102的指令单元中;
步骤13.由于流程步骤30为动作指令,在动作流程表行21102之后创建新的动作流程表行21103,并将一个表示”true”的常量“ELSE”添加为动作流程表行21103条件单元的内容;并将流程步骤30的内容添加到动作流程表行21103的指令单元中。进一步地,由于动作流程表行21102和动作流程表行21103属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行21102与动作流程表行21103的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤14.继续获取后续动作流程,为流程步骤33创建新的动作流程表行20002,动作流程表行20002包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤33为条件分支动作流程,将流程步骤33的执行条件添加到动作流程表行20002的条件单元中,并将后续的动作指令即流程步骤35的内容添加到动作流程表行20002的指令单元中;然后从步骤15开始继续针对流程步骤33判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤18开始针对流程步骤33判断结果为false的分支动作流程进行处理。
步骤15.由于流程步骤36为条件分支动作流程,为流程步骤36创建新的动作流程表22000,并将动作流程表22000层级地嵌入在动作流程表行20000之下。动作流程表22000包括条件列601和指令列602。为动作流程表22000创建动作流程表行22001,动作流程表行22001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤36的执行条件添加到动作流程表行22001的条件单元中,并将后续的动作指令即流程步骤38的内容添加到动作流程表行22001的指令单元中;进一步地,根据动作流程表20000与动作流程表22000的层级关系对动作流程表行22001的条件单元的单元格式进行的相应设置,使动作流程表行22001的条件单元的中的内容相比动作流程表行20002的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤16开始继续针对流程步骤36判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤16.由于流程步骤39为条件分支动作流程,为流程步骤39创建新的动作流程表22100,并将动作流程表22100层级地嵌入在动作流程表行22000之下。动作流程表22100包括条件列601和指令列602。为动作流程表22100创建动作流程表行22101,动作流程表行22101包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤39的执行条件添加到动作流程表行22101的条件单元中,并将后续的动作 指令即流程步骤41、42的内容添加到动作流程表行22101的指令单元中;
进一步地,根据动作流程表22000与动作流程表22100的层级关系对动作流程表行22101的条件单元的单元格式进行的相应设置,使动作流程表行22101的条件单元的中的内容相比动作流程表行22001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤17.由于流程步骤45为动作指令,在动作流程表行22101之后创建新的动作流程表行22102,并将一个表示”true”的常量“ELSE”添加为动作流程表行22102条件单元的内容;并将流程步骤45的内容添加到动作流程表行22102的指令单元中。
进一步地,由于动作流程表行22101和动作流程表行22102属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行22101与动作流程表行22102的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤18.继续获取后续动作流程,为流程步骤49创建新的动作流程表行20003,动作流程表行20003包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤49为条件分支动作流程,将流程步骤49的执行条件添加到动作流程表行20003的条件单元中,并将后续的动作指令即流程步骤51的内容添加到动作流程表行20003的指令单元中;
步骤19.继续获取后续动作流程,为流程步骤53创建新的动作流程表行20004,动作流程表行20004包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤53为条件分支动作流程,将流程步骤53的执行条件添加到动作流程表行20004的条件单元中,并将后续的动作指令即流程步骤、59的内容添加到动作流程表行20004的指令单元中;
然后从步骤20开始继续针对流程步骤53判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤21开始针对流程步骤53判断结果为false的分支动作流程进行处理。
步骤20.由于流程步骤56为条件分支动作流程,为流程步骤56创建新的动作流程表24000,并将动作流程表24000层级地嵌入在动作流程表行20000之下。动作流程表24000包括条件列601和指令列602。为动作流程表24000创建动作流程表行24001,动作流程表行24001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤56的执行条件添加到动作流程表行24001的条件单元中,并将后续的动作指令即流程步骤58、59的内容添加到动作流程表行24001的指令单元中;进一步地,根据动作流程表20000与动作流程表24000的层级关系对动作流程表行24001的条件单元的单元格式进行的相应设置,使动作流程表行24001的条件单元的中的内容相比动作流程表行20004的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤21.继续获取后续动作流程,为流程步骤62创建新的动作流程表行20005,动作流程表行20005包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤62为条件分支动作流程,将流程步骤62的执行条件添加到动作流程表行20005的条件单元中,并将后续的动作指令即流程步骤64的内容添加到动作流程表行20005的指令单元中;
然后从步骤22开始继续针对流程步骤62判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤25开始针对流程步骤62判断结果为false的分支动作流程进行处理。
步骤22.由于流程步骤65为条件分支动作流程,为流程步骤65创建新的动作流程表25000,并将动作流程表25000层级地嵌入在动作流程表行20000之下。动作流程表25000包括条件列601和指令列602。为动作流程表25000创建动作流程表行25001,动作流程表行25001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤65的执行条件添加到动作流程表行25001的条件单元中;
进一步地,根据动作流程表20000与动作流程表25000的层级关系对动作流程表行25001的条件单元的单元格式进行的相应设置,使动作流程表行25001的条件单元的中的内容相比动作流程表行20005的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。然后从步骤23开始继续针对流程步骤65判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤23.由于流程步骤67为条件分支动作流程,为流程步骤67创建新的动作流程表25100,并将动作流程表25100层级地嵌入在动作流程表行25000之下。动作流程表25100包括条件列601和指令列602。为动作流程表25100创建动作流程表行25101,动作流程表行25101包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元; 将流程步骤67的执行条件添加到动作流程表行25101的条件单元中,并将后续的动作指令即流程步骤68的内容添加到动作流程表行25101的指令单元中;
进一步地,根据动作流程表25000与动作流程表25100的层级关系对动作流程表行25101的条件单元的单元格式进行的相应设置,使动作流程表行25101的条件单元的中的内容相比动作流程表行25001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
从步骤24开始针对流程步骤67判断结果为false的分支动作流程进行处理。
步骤24.由于流程步骤70为动作指令,在动作流程表行25101之后创建新的动作流程表行25102,并将一个表示”true”的常量“ELSE”添加为动作流程表行25102条件单元的内容;并将流程步骤70的内容添加到动作流程表行25102的指令单元中。
进一步地,由于动作流程表行25101和动作流程表行25102属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行25101与动作流程表行25102的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤25.继续获取后续动作流程,为流程步骤73创建新的动作流程表行20006,动作流程表行20006包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤73为条件分支动作流程,将流程步骤73的执行条件添加到动作流程表行20006的条件单元中,并将后续的动作指令即流程步骤74的内容添加到动作流程表行20006的指令单元中;
步骤26.获取机床子流程中的第一个流程步骤,由于流程步骤89为条件分支动作流程,为流程步骤89创建新的动作流程表30000。动作流程表30000包括条件列601和指令列602。为动作流程表30000创建动作流程表行30001,动作流程表行30001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤89的执行条件添加到动作流程表行30001的条件单元中;
然后从步骤27开始继续针对流程步骤89判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤33开始针对流程步骤89判断结果为false的分支动作流程进行处理。
步骤27.由于流程步骤91为条件分支动作流程,为流程步骤91创建新的动作流程表31000,并将动作流程表31000层级地嵌入在动作流程表行30000之下。动作流程表31000包括条件列601和指令列602。为动作流程表31000创建动作流程表行31001,动作流程表行31001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤91的执行条件添加到动作流程表行31001的条件单元中,并将后续的动作指令即流程步骤93的内容添加到动作流程表行31001的指令单元中;
进一步地,根据动作流程表30000与动作流程表31000的层级关系对动作流程表行31001的条件单元的单元格式进行的相应设置,使动作流程表行31001的条件单元的中的内容相比动作流程表行30001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤28开始继续针对流程步骤91判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤28.由于流程步骤94为条件分支动作流程,为流程步骤94创建新的动作流程表31100,并将动作流程表31100层级地嵌入在动作流程表行31000之下。动作流程表31100包括条件列601和指令列602。为动作流程表31100创建动作流程表行31101,动作流程表行31101包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤94的执行条件添加到动作流程表行31101的条件单元中;
进一步地,根据动作流程表31000与动作流程表31100的层级关系对动作流程表行31101的条件单元的单元格式进行的相应设置,使动作流程表行31101的条件单元的中的内容相比动作流程表行31001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤29开始继续针对流程步骤94判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤31开始针对流程步骤94判断结果为false的分支动作流程进行处理。
步骤29.由于流程步骤96为条件分支动作流程,为流程步骤96创建新的动作流程表31110,并将动作流程表31110层级地嵌入在动作流程表行31100之下。动作流程表31110包括条件列601和指令列602。为动作流程表31110创建动作流程表行31111,动作流程表行31111包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤96的执行条件添加到动作流程表行31111的条件单元中,并将后续的动作指令即流程步骤98、99的内容添加到动作流程表行31111的指令单元中;
进一步地,根据动作流程表31100与动作流程表31110的层级关系对动作流程表行 31111的条件单元的单元格式进行的相应设置,使动作流程表行31111的条件单元的中的内容相比动作流程表行31101的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤30.由于流程步骤103、104为动作指令,在动作流程表行31111之后创建新的动作流程表行31112,并将一个表示”true”的常量“ELSE”添加为动作流程表行31112条件单元的内容;并将流程步骤103、104的内容添加到动作流程表行31112的指令单元中。进一步地,由于动作流程表行31111和动作流程表行31112属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行31111与动作流程表行31112的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤31.继续获取后续动作流程,为流程步骤107创建新的动作流程表行31102,动作流程表行31102包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤107为条件分支动作流程,将流程步骤107的执行条件添加到动作流程表行31102的条件单元中,并将后续的动作指令即流程步骤109、110的内容添加到动作流程表行31102的指令单元中;
从步骤32开始针对流程步骤107判断结果为false的分支动作流程进行处理。
步骤32.由于流程步骤114、115为动作指令,在动作流程表行31102之后创建新的动作流程表行31103,并将一个表示”true”的常量“ELSE”添加为动作流程表行31103条件单元的内容;并将流程步骤114、115的内容添加到动作流程表行31103的指令单元中。进一步地,由于动作流程表行31102和动作流程表行31103属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行31102与动作流程表行31103的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤33.继续获取后续动作流程,为流程步骤119创建新的动作流程表行30002,动作流程表行30002包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤119为条件分支动作流程,将流程步骤119的执行条件添加到动作流程表行30002的条件单元中;
然后从步骤34开始继续针对流程步骤119判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤35开始针对流程步骤119判断结果为false的分支动作流程进行处理。
步骤34.由于流程步骤121为条件分支动作流程,为流程步骤121创建新的动作流程表32000,并将动作流程表32000层级地嵌入在动作流程表行30000之下。动作流程表32000包括条件列601和指令列602。为动作流程表32000创建动作流程表行32001,动作流程表行32001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤121的执行条件添加到动作流程表行32001的条件单元中,并将后续的动作指令即流程步骤123、124的内容添加到动作流程表行32001的指令单元中;
进一步地,根据动作流程表30000与动作流程表32000的层级关系对动作流程表行32001的条件单元的单元格式进行的相应设置,使动作流程表行32001的条件单元的中的内容相比动作流程表行30002的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤35.继续获取后续动作流程,为流程步骤127创建新的动作流程表行30003,动作流程表行30003包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤127为条件分支动作流程,将流程步骤127的执行条件添加到动作流程表行30003的条件单元中;
然后从步骤36开始继续针对流程步骤127判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤37开始针对流程步骤127判断结果为false的分支动作流程进行处理。
步骤36.由于流程步骤129为条件分支动作流程,为流程步骤129创建新的动作流程表33000,并将动作流程表33000层级地嵌入在动作流程表行30000之下。动作流程表33000包括条件列601和指令列602。为动作流程表33000创建动作流程表行33001,动作流程表行33001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤129的执行条件添加到动作流程表行33001的条件单元中,并将后续的动作指令即流程步骤131、132的内容添加到动作流程表行33001的指令单元中;
进一步地,根据动作流程表30000与动作流程表33000的层级关系对动作流程表行33001的条件单元的单元格式进行的相应设置,使动作流程表行33001的条件单元的中的内容相比动作流程表行30003的条件单元的内容缩进了一个设定的宽度,用于反映 二者的层级关系。
步骤37.继续获取后续动作流程,为流程步骤135创建新的动作流程表行30004,动作流程表行30004包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤135为条件分支动作流程,将流程步骤135的执行条件添加到动作流程表行30004的条件单元中;
然后从步骤38开始继续针对流程步骤135判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤39开始针对流程步骤135判断结果为false的分支动作流程进行处理。
步骤38.由于流程步骤137为条件分支动作流程,为流程步骤137创建新的动作流程表34000,并将动作流程表34000层级地嵌入在动作流程表行30000之下。动作流程表34000包括条件列601和指令列602。为动作流程表34000创建动作流程表行34001,动作流程表行34001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤137的执行条件添加到动作流程表行34001的条件单元中,并将后续的动作指令即流程步骤139、140的内容添加到动作流程表行34001的指令单元中;
进一步地,根据动作流程表30000与动作流程表34000的层级关系对动作流程表行34001的条件单元的单元格式进行的相应设置,使动作流程表行34001的条件单元的中的内容相比动作流程表行30004的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤39.继续获取后续动作流程,为流程步骤143创建新的动作流程表行30005,动作流程表行30005包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;由于流程步骤143为条件分支动作流程,将流程步骤143的执行条件添加到动作流程表行30005的条件单元中;
然后从步骤40开始继续针对流程步骤143判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤40.由于流程步骤145为条件分支动作流程,为流程步骤145创建新的动作流程表35000,并将动作流程表35000层级地嵌入在动作流程表行30000之下。动作流程表35000包括条件列601和指令列602。为动作流程表35000创建动作流程表行35001,动作流程表行35001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元;将流程步骤145的执行条件添加到动作流程表行35001的条件单元中,并将后续的动作指令即流程步骤147、148的内容添加到动作流程表行35001的指令单元中;
进一步地,根据动作流程表30000与动作流程表35000的层级关系对动作流程表行35001的条件单元的单元格式进行的相应设置,使动作流程表行35001的条件单元的中的内容相比动作流程表行30005的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
以上通过步骤1至步骤40,说明了表格化处理动作流程的方法对本实施例中自动化生产系统的详细动作流程进行表格化处理的具体过程,
在上述针对动作流程的表格化处理过程中,根据步骤1中针对主流程创建一个动作流程表10000、进一步通过步骤1至步骤40为该动作流程表10000添加40条动作流程表行(如图6至图8所示)可知,表格化处理动作流程的方法是针对动作流程自动创建一个空的动作流程表(对应步骤S1),通过逐步将动作流程的各个流程步骤添加到该动作流程表中,最终生成一个相当于该动作流程的最终的动作流程表。
在创建空的动作流程表之后,需要顺序地获取动作流程的流程步骤,并判断流程步骤的类型,即流程步骤为动作指令、还是属于条件分支动作流程或循环动作流程,相当于需要判定流程步骤在动作流程中所对应的动作流程类型(对应步骤S2)。
在判定出流程步骤的动作流程类型后,由步骤1中根据对应循环动作流程的流程步骤1生成动作流程表行10001,并为后续所有在该循环动作流程中的流程步骤,通过一个层级地嵌入在动作流程表行10001之下动作流程表11000进行后续的动作流程表行生成可知,针对一系列在动作流程中属于同一个循环的流程步骤,会相应地生成一个动作流程表行,这个过程相当于按照预定的流程步骤序列组合规则将动作流程中连续的流程步骤组合为至少一个对应有相应动作流程类型的流程步骤序列(对应步骤S3),并针对该流程步骤序列在当前的动作流程表中生成相应的动作流程表行。这一点在步骤2至步骤4中针对属于一个条件分支动作流程的流程步骤3、5、6、7、9、14生成相应的动作流程表行11001和动作流程表行11002也可以体现(流程步骤7、9由于是条件分支动作流程中的条件分支动作流程,因此通过一个层级地嵌入在动作流程表行11001之下动作流程表11100进行了处理)。
在此基础上,根据步骤2至步骤8可知,针对作为条件分支动作流程的第一个流程步骤 序列(对应流程步骤3、5、6、7、9、14)、作为条件分支动作流程的第二个流程步骤序列(对应流程步骤78、80、81、82、83、87)以及作为动作指令的流程步骤153(相当于一个作为动作指令型动作流程的第三个流程步骤序列),是顺序地获取这些流程步骤序列并生成相应的动作流程表行11001至11005。这个过程相当于从动作流程中顺序获取流程步骤序列,并根据流程步骤序列的动作流程类型,基于与具有该动作流程类型的流程步骤序列相对应的预定行生成规则在动作流程表中顺序生成与流程步骤序列相对应的动作流程表行(对应步骤S4)。
最后,在获取完所有的流程步骤后,也就生成了对应于整个动作流程的动作流程表,相当于判断流程步骤是否被获取完毕,若判断为否则返回步骤S2,若判断为是则得到最终的动作流程表并进行输出(对应步骤S5)。另外,上述过程在获取到流程步骤153后仍然通过步骤9至40获取流程步骤,实际该步骤9至40对应于在处理流程步骤14以及流程步骤87时的过程,只是为便于描述而将该过程放置于步骤8之后。
本实施例的表格化处理动作流程的方法大致如上,通过这样的方法即可实现动作流程的表格化。接下来,对该表格化处理动作流程的方法进行更详细的阐述:
动作流程表包括条件列、指令列(如图6中条件列601和指令列602)。
本实施例中,在动作流程表10000中生成动作流程表行10001时,该动作流程表行10001包括与动作流程表的条件列601和指令列602对应的条件单元和指令单元,如图6至图8可以看出,条件单元位于条件列601中且指令单元位于指令列602。
根据步骤2可知,针对对应条件分支动作流程的流程步骤3,将该的执行条件“机械手停止”添加到动作流程表行11001的条件单元中,相当于条件单元中至少用于添加在动作流程中执行判断的流程步骤并将该流程步骤作为作为执行条件。
根据步骤2可知,针对作为动作指令的流程步骤5和6(相当于对应为动作指令型动作流程的流程步骤序列),会将其添加到动作流程表行11001的指令单元中,相当于指令单元中用于添加在动作流程中执行动作的流程步骤作为动作指令。
在表格化处理动作流程的方法的步骤S4中,根据流程步骤序列所对应的动作流程类型的不同,需要通过不同的预定行生成规则生成动作流程表行。
当动作流程类型为动作指令型动作流程时(即流程步骤为动作指令),如步骤8中所提及,第三个流程步骤序列(流程步骤153)为动作指令型流程步骤序列,此时在动作流程表行11004之后创建新的动作流程表行11005,并将一个表示”true”的常量“TRUE”添加为动作流程表行11005条件单元的内容;并将流程步骤153的内容添加到动作流程表行11005的指令单元中。相当于在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行(步骤A1);将一个真值作为执行条件添加到当前动作流程表行的条件单元中(步骤A2);顺序获取相应动作指令型流程步骤序列中的流程步骤添加到当前动作流程表行的指令单元中(步骤A3)。
同时,如步骤2中所提及,会将后续作为动作指令的流程步骤5、6添加到动作流程行11001的指令单元中,步骤5、步骤12等步骤中也是同样,因此,针对同为动作指令且连续的流程步骤会统一进行处理,相当于这些流程步骤所对应的流程步骤组合规则为将指令型动作流程中连续的流程步骤组合为动作指令型流程步骤序列。
当动作流程类型为条件分支动作流程时,如步骤2至步骤4所提及,对于作为条件分支动作流程的第一个流程步骤序列(对应流程步骤3、5、6、7、9、14),会针对流程步骤序列的两个分支流程(流程步骤5、6、7、9以及流程步骤14)分别生成对应的动作流程表行11001和11002,相当于针对条件分支动作流程的流程步骤组合规则为将条件分支动作流程中的分支动作流程及对应于该分支动作流程的执行条件组合为条件分支型流程步骤序列,并依次根据每个分支动作流程在动作流程表中顺序生成相应的动作流程表行(步骤B1)。
同时,这两行11001和11002的条件单元分别添加有作为执行条件的流程步骤3和表示”true”的常量“ELSE”,同时这两行对应地设置有互斥关系,相当于将作为分支动作流程的执行条件的流程步骤分别添加至相应的动作流程表行的条件单元中,并设置所生成的各动作流程表行为互斥关系(步骤B2)。
接下来,创建了动作流程表行并且添加好执行条件后,在步骤2及步骤3中,在动作流程表行11001中依次针对流程步骤5、6、7、9进行处理,并且步骤4在动作流程表行11002针对流程步骤14进行处理。因此,这个过程相当于针对每个分支动作流程,顺序获取分支动作流程中的流程步骤并依次进行处理(步骤B3)。
同理地,与步骤S2、S3、S4相对应,在针对每个分支动作流程进行处理时,也同样是判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,进一步将分支动作流程中连续且对应同一动作流程类型的流程步骤划分为一个对应有相应动作流程类型的流程步骤序列(相当于子流程步骤序列)。
若首个子流程步骤序列在条件分支动作流程中对应于动作指令型动作流程,例如步骤2中对流程步骤5、6的处理过程所示,相当于将子流程步骤序列中的各个流程步骤作为动作 指令顺序添加到相应分支动作流程的动作流程表行的指令单元中。
若子流程步骤序列在条件分支动作流程中不对应于动作指令型动作流程,例如步骤3中对流程步骤7、9的处理过程所示,相当于生成一个与相应分支动作流程相对应的子动作流程表,并基于与动作流程类型相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行。其中子动作流程表层级地嵌入在与分支动作流程相对应的动作流程表行下(如子动作流程表11101嵌入在动作流程表行11001下)。
同时,对于作为条件分支动作流程的子流程步骤序列的各个分支动作流程,其处理方式也采用了预定行生成规则,具体过程与上述过程相同,同样是生成对应于每个分支动作流程的动作流程表行并针对每个分支动作流程中的流程步骤顺序地进行处理。
当动作流程类型为循环动作流程时,如步骤1所提及,对于作为循环动作流程的流程步骤序列(流程步骤1以及之后嵌套在在流程步骤1下的循环子流程:流程步骤3至153),首先为动作流程表10000添加一条动作流程表行10001,相当于在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行(步骤D1)。
接下来,将流程步骤1的执行条件“系统开机”添加到动作流程表行10001的条件单元中,并在动作流程表行10001条件单元内容的左侧对应地设置一个圆形的内部为旋转箭头的标志610。相当于当前流程步骤行中还包括循环属性单元,将当前流程步骤作为执行条件添加到当前动作流程表行的条件单元中,并在循环属性单元中添加一个循环执行属性(步骤D2)。
根据步骤2所提及的,由于流程步骤3为条件分支动作流程,为流程步骤3创建新的动作流程表11000,因此,在针对循环子流程进行处理时,也需要对循环子流程中各个流程步骤所对应的动作流程类型进行判定,并且与条件分支动作流程的预定行生成规则中相应的处理过程相同,进一步按照预定的流程步骤序列组合规则进一步将循环动作流程步骤序列中连续的流程步骤组合为对应有相应动作流程类型的子流程步骤序列(步骤D3)。同时,由于对循环子流程中的各个流程步骤进行顺序处理,相当于将该循环子流程作为一个循环动作流程步骤序列,即针对循环动作流程的流程步骤组合规则为,将循环动作流程的执行条件以及循环子流程组合为循环动作流程步骤序列。
若子流程步骤序列在条件分支动作流程中不对应于动作指令型动作流程,例如步骤2中对流程步骤3的处理过程所示,相当于首先生成一个与循环动作流程相对应的子动作流程表,并基于与动作流程类型相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行。其中子动作流程表层级地嵌入在相对应的动作流程表行下(如子动作流程表11000嵌入在动作流程表行10001下)。
若首个子流程步骤序列在条件分支动作流程中对应于动作指令型动作流程,与条件分支动作流程的预定行生成规则相同,将子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中。
接下来,以通过上述表格化处理过程处理得到的动作流程表10000为例,介绍该动作流程表10000的执行动作流程的方法,具体步骤如下:
步骤1.获取动作流程表10000的第一个动作流程表行10001,判断动作流程表行10001条件单元的执行条件“系统开机”是否为true;如果是则进一步获取动作流程表行10001内嵌的下级动作流程表11000。并执行下一步;
步骤2.获取动作流程表11000的第一个动作流程表行11001,判断动作流程表行11001条件单元的执行条件“机械手停止”是否为true;
如果是则获取并执行动作流程表行11001指令单元中的内容“机械手停止=false;”和“机械手状态=100;”,然后进一步获取动作流程表行11001内嵌的下级动作流程表11100。并执行步骤3;然后获取与动作流程表行11001为非互斥关系的下一条动作流程表行11003,并执行步骤5;
否则获取下一个动作流程表行11002并执行步骤4;
步骤3.获取动作流程表11100的第一个动作流程表行11101,判断动作流程表行11101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11101指令单元中的内容。
步骤4.由于动作流程表行11002条件单元的执行条件为true;因此获取并执行动作流程表行11001指令单元中的内容。由于动作流程表行11001指令单元中的动作指令是调用机械手子流程,因此从步骤9开始执行机械手子流程。由于动作流程表行11002没有内嵌的下级动作流程表,因此在机械手子流程执行完成后立即执行步骤5。
步骤5.判断动作流程表行11003条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11003指令单元中的内容,然后进一步获取动作流程表行11003内嵌的下级动作流程表11200。并执行步骤6;然后获取与动作流程表行11003为非互斥关系的下一条动作流程表行11005,并执行步骤8; 否则获取下一个动作流程表行11004并执行步骤7;
步骤6.获取动作流程表11200的第一个动作流程表行11201,判断动作流程表行11201条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11201指令单元中的内容。
步骤7.由于动作流程表行11004条件单元的执行条件为true;因此获取并执行动作流程表行11004指令单元中的内容。由于动作流程表行11004指令单元中的动作指令是调用机床子流程,因此从步骤26开始执行机床子流程。由于动作流程表行11004没有内嵌的下级动作流程表,因此在机床子流程执行完成后立即执行步骤8。
步骤8.由于动作流程表行11005条件单元的执行条件为true;因此获取并执行动作流程表行11005指令单元中的内容。由于这是主动作流程表的最后一个流程表行,且动作流程表行10001的循环执行属性值为循环执行,因此返回步骤1继续执行。
步骤9.获取动作流程表20000的第一个动作流程表行20001,判断动作流程表行20001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20001指令单元中的内容,然后进一步获取动作流程表行20001内嵌的下级动作流程表21000。并执行步骤10;
否则获取下一个动作流程表行20002并执行步骤14;
步骤10.获取动作流程表21000的第一个动作流程表行21001,判断动作流程表行21001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21001指令单元中的内容,然后进一步获取动作流程表行21001内嵌的下级动作流程表21100。并执行步骤11;
步骤11.获取动作流程表21100的第一个动作流程表行21101,判断动作流程表行21101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21101指令单元中的内容;
否则获取下一个动作流程表行21102并执行步骤12;
步骤12.判断动作流程表行21102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21102指令单元中的内容;
否则获取下一个动作流程表行21103并执行步骤13;
步骤13.判断动作流程表行21103条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21103指令单元中的内容;
步骤14.判断动作流程表行20002条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20002指令单元中的内容,然后进一步获取动作流程表行20002内嵌的下级动作流程表22000。并执行步骤15;
否则获取下一个动作流程表行20003并执行步骤18;
步骤15.获取动作流程表22000的第一个动作流程表行22001,判断动作流程表行22001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22001指令单元中的内容,然后进一步获取动作流程表行22001内嵌的下级动作流程表22100。并执行步骤16;
步骤16.获取动作流程表22100的第一个动作流程表行22101,判断动作流程表行22101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22101指令单元中的内容;
否则获取下一个动作流程表行22102并执行步骤17;
步骤17.判断动作流程表行22102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22102指令单元中的内容;
步骤18.判断动作流程表行20003条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20003指令单元中的内容;
否则获取下一个动作流程表行20004,并执行步骤19;
步骤19.判断动作流程表行20004条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20004指令单元中的内容,然后进一步获取动作流程表行20004内嵌的下级动作流程表24000。并执行步骤20;
否则获取下一个动作流程表行20004并执行步骤21;
步骤20.判断动作流程表行24001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行24001指令单元中的内容;
步骤21.判断动作流程表行20005条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20005指令单元中的内容,然后进一步获取动作流程表行20005内嵌的下级动作流程表25000。并执行步骤22;
否则获取下一个动作流程表行20006并执行步骤25;
步骤22.获取动作流程表25000的第一个动作流程表行25001,判断动作流程表行25001条件单元的执行条件是否为true; 如果是则获取并执行动作流程表行25001指令单元中的内容,然后进一步获取动作流程表行25001内嵌的下级动作流程表25100。并执行步骤16;
步骤23.获取动作流程表25100的第一个动作流程表行25101,判断动作流程表行25101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行25101指令单元中的内容;
否则获取下一个动作流程表行25102并执行步骤17;
步骤24.判断动作流程表行25102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行25102指令单元中的内容;
步骤25.判断动作流程表行20006条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行20006指令单元中的内容;
步骤26.获取动作流程表30000的第一个动作流程表行30001,判断动作流程表行30001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行30001指令单元中的内容,然后进一步获取动作流程表行30001内嵌的下级动作流程表31000。并执行步骤27;
否则获取下一个动作流程表行30002并执行步骤33;
步骤27.获取动作流程表31000的第一个动作流程表行31001,判断动作流程表行31001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31001指令单元中的内容,然后进一步获取动作流程表行31001内嵌的下级动作流程表31100。并执行步骤28;
步骤28.获取动作流程表31100的第一个动作流程表行31101,判断动作流程表行21101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31101指令单元中的内容,然后进一步获取动作流程表行31101内嵌的下级动作流程表31110。并执行步骤29;
否则获取下一个动作流程表行31102并执行步骤31;
步骤29.获取动作流程表31110的第一个动作流程表行31111,判断动作流程表行31111条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31111指令单元中的内容;
否则获取下一个动作流程表行31112并执行步骤13;
步骤30.判断动作流程表行31112条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31112指令单元中的内容;
步骤31.判断动作流程表行31102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31102指令单元中的内容;
否则获取下一个动作流程表行31103并执行步骤32;
步骤32.判断动作流程表行31103条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31103指令单元中的内容;
步骤33.判断动作流程表行30002条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行30002指令单元中的内容,然后进一步获取动作流程表行30002内嵌的下级动作流程表32000。并执行步骤34;
否则获取下一个动作流程表行30003并执行步骤35;
步骤34.获取动作流程表32000的第一个动作流程表行32001,判断动作流程表行32001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行32001指令单元中的内容;
步骤35.判断动作流程表行30003条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行30003指令单元中的内容,然后进一步获取动作流程表行30003内嵌的下级动作流程表33000。并执行步骤36;
否则获取下一个动作流程表行30004并执行步骤37;
步骤36.获取动作流程表33000的第一个动作流程表行33001,判断动作流程表行33001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行33001指令单元中的内容;
步骤37.判断动作流程表行30004条件单元的执行条件是否为true;如果是则获取并执行动作流程表行30004指令单元中的内容,然后进一步获取动作流程
表行30004内嵌的下级动作流程表34000。并执行步骤38;
否则获取下一个动作流程表行30005并执行步骤39;
步骤38.获取动作流程表34000的第一个动作流程表行34001,判断动作流程表行34001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行34001指令单元中的内容;
步骤39.判断动作流程表行30005条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行30005指令单元中的内容,然后进一步获取动作流程 表行30005内嵌的下级动作流程表35000。并执行步骤40;
步骤40.获取动作流程表35000的第一个动作流程表行35001,判断动作流程表行35001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行35001指令单元中的内容。
以上通过步骤1至步骤40,说明了通过针对动作流程表执行动作流程的方法对本实施例中对应自动化生产系统的的动作流程表的具体执行过程。
根据该步骤1至步骤40可知,针对动作流程表执行动作流程的方法主要为依次读取动作流程表中的各行并根据条件单元中的执行条件判断是否执行指令单元中的动作指令,具体过程大致为:顺序地从动作流程表中获取动作流程表行作为当前动作流程表行(步骤S11);判断当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤S11(步骤S12);获取并执行当前动作流程表行的指令单元中的动作指令(步骤S13);判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则返回步骤S11,若判断为是则动作流程已执行完毕(步骤S14)。
进一步地,由于在某些动作流程中存在分支动作流程,因此动作流程表行中存在层级地嵌入在动作流程表行下的子动作流程表,此时,在与上述步骤S11至S13相同的步骤B11至B13对当前动作流程表行进行处理后,还需要额外进行子动作流程表的判断,如步骤2中所提及,在获取并执行动作流程表行11001指令单元中的内容后,进一步获取动作流程表行11001内嵌的下级动作流程表11100并执行步骤3,因此,这个过程相当于在步骤B13后,还需要判断当前动作流程表行下是否是有嵌入的子动作流程表,若判断为是则执行子动作流程表直到子动作流程表被执行完毕(步骤B14)。
同时,在存在条件分支动作流程的情况下,除去在步骤S13后额外需要执行步骤B14,原本的步骤S14也需要对应进行修改,如步骤2中所提及,在执行步骤3完成动作流程表行11001的处理后,接下来获取的动作流程表行11001为非互斥关系的下一条动作流程表行11003,相当于判断动作流程表中所有流程步骤是否被执行完毕,若判断为否则获取与当前动作流程表行的条件单元中的执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回步骤B12,若判断为是则动作流程已执行完毕(步骤B15)。
更进一步地,在存在循环动作流程的情况下,在与上述步骤B11至B14相同的步骤D11至D14对当前动作流程表行进行处理后,还需要额外进行循环属性单元的判断,如步骤8中所提及,获取并执行动作流程表行11005指令单元中的内容后,由于动作流程表行10001的循环执行属性值为循环执行,因此返回步骤1继续执行实现循环。相当于判断当前动作流程表行的循环属性单元中是否具有循环执行属性,若是则返回步骤D12重复执行当前动作流程表行(步骤D15)。在结束步骤D15的处理后,通过一个与步骤B15相同的步骤D16实现对动作流程表行的遍历。
<实施例二>
在上述实施例一中,机械手子流程和机床子流程中包括多个串联的条件分支动作流程用于对机械手状态和机床状态进行判断,并选择执行其中与目标状态相一致的分支动作流程。
因此这也可以看做是一个切换分支动作流程,机械手状态和机床状态的即为目标索引变量,在本实施例二中,每个分支动作流程的目标状态即为此分支动作流程的分支索引值,当目标索引变量的值与分支动作流程的分支索引值相匹配时,分支动作流程即被执行。在C语言中分支动作流程也可以用switch..case语句描述,可以等价地将if..else if表示的多个互斥的判断语句改写为switch..case语句。下面的程序中用switch..case语句改写了实施例一中的C语言程序中对应的指令行,前后两个程序的动作流程是一致的,上述的动作流程的流程步骤号可以与下面的C语言程序代码的行号相对应。本实施例二的C语言程序代码具体如下:
Figure PCTCN2020119383-appb-000005
Figure PCTCN2020119383-appb-000006
Figure PCTCN2020119383-appb-000007
Figure PCTCN2020119383-appb-000008
本实施例二中,以针对上述的动作流程进行表格化处理为例,下面参考附图9~11对流程步骤的处理过程进行具体说明:
步骤1.针对主流程创建一个动作流程表10000,动作流程表10000包括条件列601、指令列602和切换目标列603;分别为这三列对应地为设置列标题“条件”、“指令”和“切换目标”;为动作流程表10000添加一条动作流程表行10001,动作流程表行10001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;获取上述的流程步骤1,由于流程步骤1是一个条件分支动作流程,将流程步骤1的执行条件“系统开机”添加到动作流程表行10001的条件单元中;
进一步地,由于流程步骤1表示在满足其执行条件的前提下循环执行后续指令,因此设置动作流程表行10001循环执行属性值为循环执行;并在动作流程表行10001条件单元内容的左侧对应地设置一个圆形的内部为旋转箭头的标志610,这是根据动作流程表行10001所设置的循环执行属性在单元格的格式上所进行的相应设置,用于反映流程步骤1的执行执行方式。
然后从步骤2开始针对流程步骤1判断结果为true的分支动作流程进行处理;
步骤2.由于流程步骤3为条件分支动作流程,为流程步骤3创建新的动作流程表11000,并将动作流程表11000层级地嵌入在动作流程表行10001之下。动作流程表11000包括条件列601、指令列602和切换目标列603。为动作流程表11000创建动作流程表行11001,动作流程表行11001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤3的执行条件“机械手停止”添加到动作流程表行11001的条件单元中,并将后续的动作指令即流程步骤5的内容添加到动作流程表行11001的指令单元中;由于流程步骤6是设置目标索引变量“机械手状态”的值的指令,因此将流程步骤6的内容添加到动作流程表行11001的切换目标单元中,而不再添加到动作流程表行11001的指令单元中。
进一步地,根据动作流程表10000与动作流程表11000的层级关系对动作流程表行11001的条件单元的单元格式进行的相应设置,使动作流程表行11001的条件单元的中的内容相比动作流程表行10001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤3开始继续针对流程步骤3判断结果为true的分支动作流程中的其他流程步骤进行处理;以及从步骤4开始针对流程步骤3判断结果为false的分支动作流程进行处理。
步骤3.由于流程步骤7为条件分支动作流程,为流程步骤7创建新的动作流程表11100, 并将动作流程表11100层级地嵌入在动作流程表行11001之下。动作流程表11100包括条件列601、指令列602和切换目标列603。为动作流程表11100创建动作流程表行11101,动作流程表行11101包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤7的执行条件添加到动作流程表行11101的条件单元中,并将后续的动作指令即流程步骤9的内容添加到动作流程表行11101的指令单元中;
进一步地,根据动作流程表11000与动作流程表11100的层级关系对动作流程表行11101的条件单元的单元格式进行的相应设置,使动作流程表行11101的条件单元的中的内容相比动作流程表行11001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤4.由于流程步骤14是调用机械手子流程的动作指令,在动作流程表行11001之后创建新的动作流程表行11002,并将一个表示”true”的常量“ELSE”添加为动作流程表行11002条件单元的内容;并将流程步骤14的内容添加到动作流程表行11002的指令单元中。
进一步地,由于动作流程表行11001和动作流程表行11002属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行11001与动作流程表行11002的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤5.继续获取后续动作流程,为流程步骤78创建新的动作流程表行11003,动作流程表行11003包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;由于流程步骤78为条件分支动作流程,将流程步骤78的执行条件添加到动作流程表行11003的条件单元中,并将后续的动作指令即流程步骤80的内容添加到动作流程表行11003的指令单元中;由于流程步骤81是设置目标索引变量“机床状态”的值的指令,因此将流程步骤81的内容添加到动作流程表行11003的切换目标单元中,而不再添加到动作流程表行11003的指令单元中。
然后从步骤6开始继续针对流程步骤78判断结果为true的分支动作流程中的其他流程步骤进行处理;以及从步骤7开始针对流程步骤78判断结果为false的分支动作流程进行处理。
步骤6.由于流程步骤82为条件分支动作流程,为流程步骤82创建新的动作流程表11200,并将动作流程表11200层级地嵌入在动作流程表行11003之下。动作流程表11200包括条件列601、指令列602和切换目标列603。为动作流程表11200创建动作流程表行11201,动作流程表行11201包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤82的执行条件添加到动作流程表行11201的条件单元中,并将后续的动作指令即流程步骤83的内容添加到动作流程表行11201的指令单元中;
进一步地,根据动作流程表11000与动作流程表11200的层级关系对动作流程表行11201的条件单元的单元格式进行的相应设置,使动作流程表行11201的条件单元的中的内容相比动作流程表行11003的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤7.由于流程步骤87是调用机床子流程的动作指令,在动作流程表行11003之后创建新的动作流程表行11004,并将一个表示”true”的常量“ELSE”添加为动作流程表行11004条件单元的内容;并将流程步骤87的内容添加到动作流程表行11004的指令单元中。
进一步地,由于动作流程表行11003和动作流程表行11004属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行11003与动作流程表行11004的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤8.由于流程步骤153为动作指令,在动作流程表行11004之后创建新的动作流程表行11005,并将一个表示”true”的常量“TRUE”添加为动作流程表行11005条件单元的内容;并将流程步骤153的内容添加到动作流程表行11005的指令单元中。
步骤9.由于机械手子流程是一个切换分支动作流程,针对这个切换分支动作流程创建一个动作流程表40000,为动作流程表40000添加一个动作流程表行40001,将一个表示”true”的常量“TRUE”添加为动作流程表行40001条件单元的内容,而将针对目标索引变量“机械手状态”进行判断的多个互斥的执行条件作为一个分支切换指令“switch(机械手状态)”添加到动作流程表行40001的指令单元中。
获取机械手子流程中的第一个流程步骤,由于流程步骤16是切换分支动作流程中的一个分支动作流程,为流程步骤16创建一个分支动作流程表41000,将分支动作流程表21000层级地嵌入在动作流程表行40001之下;分支动作流程表41000包括索引列611 和注释列612;为分支动作流程表41000添加分支动作流程表行41001,分支动作流程表行41001与索引列611和注释列612对应的包括索引单元6211和注释单元6212;流程步骤16中的机械手状态的目标值100是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6211中。将流程步骤16中的机械手状态的目标值100所表示的含义添加到注释单元6212中。
针对这个分支动作流程中的流程步骤创建动作流程表21000。动作流程表21000包括条件列601、指令列602和切换目标列603。将动作流程表21000层级地嵌入在分支动作
流程表行41001之下;并进一步地设置动作流程表21000与动作流程表40000按列对齐。为动作流程表21000创建动作流程表行21001,动作流程表行21001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在机械手子流程中,每一个分支动作流程中都通过一个针对指示灯状态变量赋值的动作指令确定了指示灯的状态变量的值,因而指示灯状态变量是一个状态变量。在本发明的一些实施例中,分支动作流程表41000还包括对应于指示灯状态变量的分支状态列613,分支动作流程表行41001还包括对应于分支状态列613的分支状态单元6213。流程步骤18是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6213的内容。然后从步骤10开始继续针对流程步骤16对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤14开始继续针对机械手子流程中的下一个分支动作流程进行处理。
步骤10.由于流程步骤19为条件分支动作流程,将流程步骤19的执行条件添加到动作流程表行21001的条件单元中,并将后续的动作指令即流程步骤21的内容添加到动作流程表行21001的指令单元中;
然后从步骤11开始继续针对流程步骤19判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤11.由于流程步骤22为条件分支动作流程,为流程步骤22创建新的动作流程表21100,并将动作流程表21100层级地嵌入在动作流程表行21000之下。动作流程表21100包括条件列601、指令列602和切换目标列603。为动作流程表21100创建动作流程表行21101,动作流程表行21101包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤22的执行条件添加到动作流程表行21101的条件单元中,并将后续的动作指令即流程步骤23的内容添加到动作流程表行21101的指令单元中;进一步地,根据动作流程表21000与动作流程表21100的层级关系对动作流程表行21101的条件单元的单元格式进行的相应设置,使动作流程表行21101的条件单元的中的内容相比动作流程表行21001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤12.继续获取后续动作流程,为流程步骤24创建新的动作流程表行21102,动作流程表行21102包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;由于流程步骤24为条件分支动作流程,将流程步骤24的执行条件添加到动作流程表行21102的条件单元中,并将后续的动作指令即流程步骤26的内容添加到动作流程表行21102的指令单元中;由于流程步骤27是设置目标索引变量“机械手状态”的值的指令,因此将流程步骤27的内容添加到动作流程表行21102的切换目标单元中,而不再添加到动作流程表行21102的指令单元中。
步骤13.由于流程步骤30为动作指令,在动作流程表行21102之后创建新的动作流程表行21103,动作流程表行21103包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将一个表示”true”的常量“ELSE”添加为动作流程表行21103条件单元的内容;由于流程步骤30是设置目标索引变量“机械手状态”的值的指令,因此将流程步骤30的内容添加到动作流程表行21103的切换目标单元中,而不再添加到动作流程表行21103的指令单元中。
步骤14.由于流程步骤33是切换分支动作流程中的一个分支动作流程,为分支动作流程表41000添加分支动作流程表行41002,分支动作流程表行41002与索引列611和注释列612对应的包括索引单元6221和注释单元6222;
流程步骤33中的机械手状态的目标值200是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6221中。将流程步骤33中的机械手状态的目标值200所表示的含义添加到注释单元6222中。
针对这个分支动作流程中的流程步骤创建动作流程表22000。动作流程表22000包括条件列601、指令列602和切换目标列603。将动作流程表22000层级地嵌入在分支动作流程表行41002之下;并进一步地设置动作流程表22000与动作流程表40000按列对齐。 为动作流程表22000创建动作流程表行22001,动作流程表行22001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,分支动作流程表行41002还包括对应于分支状态列613的分支状态单元6223。流程步骤35是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6223的内容。然后从步骤15开始继续针对流程步骤33对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤18开始继续针对机械手子流程中的下一个分支动作流程进行处理。
步骤15.由于流程步骤36为条件分支动作流程,将流程步骤36的执行条件添加到动作流程表行21001的条件单元中,并将后续的动作指令即流程步骤38的内容添加到动作流程表行21001的指令单元中;
然后从步骤16开始继续针对流程步骤36判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤16.由于流程步骤39为条件分支动作流程,为流程步骤39创建新的动作流程表22100,并将动作流程表22100层级地嵌入在动作流程表行22000之下。动作流程表22100包括条件列601、指令列602和切换目标列603。为动作流程表22100创建动作流程表行22101,动作流程表行22101包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤39的执行条件添加到动作流程表行22101的条件单元中,并将后续的动作指令即流程步骤41的内容添加到动作流程表行22101的指令单元中;由于流程步骤42是设置目标索引变量“机床状态”的值的指令,因此将流程步骤42的内容添加到动作流程表行22101的切换目标单元中,而不再添加到动作流程表行22101的指令单元中。
进一步地,根据动作流程表22000与动作流程表22100的层级关系对动作流程表行22101的条件单元的单元格式进行的相应设置,使动作流程表行22101的条件单元的中的内容相比动作流程表行22001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤17.由于流程步骤45为动作指令,在动作流程表行22101之后创建新的动作流程表行22102,并将一个表示”true”的常量“ELSE”添加为动作流程表行22102条件单元的内容;由于流程步骤45是设置目标索引变量“机床状态”的值的指令,因此将流程步骤45的内容添加到动作流程表行22102的切换目标单元中,而不再添加到动作流程表行22102的指令单元中。
进一步地,由于动作流程表行22101和动作流程表行22102属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行22101与动作流程表行22102的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤18.由于流程步骤49是切换分支动作流程中的一个分支动作流程,为分支动作流程表41000添加分支动作流程表行41003,分支动作流程表行41003与索引列611和注释列612对应的包括索引单元6231和注释单元6232;流程步骤49中的机械手状态的目标值300是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6231中。将流程步骤49中的机械手状态的目标值300所表示的含义添加到注释单元6232中。
针对这个分支动作流程中的流程步骤创建动作流程表23000。动作流程表23000包括条件列601、指令列602和切换目标列603。将动作流程表23000层级地嵌入在分支动作流程表行41003之下;并进一步地设置动作流程表23000与动作流程表40000按列对齐。为动作流程表23000创建动作流程表行23001,动作流程表行23001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,分支动作流程表行41003还包括对应于分支状态列613的分支状态单元6233。流程步骤51是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6233的内容。然后从步骤19开始继续针对机械手子流程中的下一个分支动作流程进行处理。
步骤19.由于流程步骤53是切换分支动作流程中的一个分支动作流程,为分支动作流程表41000添加分支动作流程表行41004,分支动作流程表行41004与索引列611和注释列612对应的包括索引单元6241和注释单元6242;
流程步骤53中的机械手状态的目标值400是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6241中。将流程步骤53中的机械手状态的目标值400所表示的含义添加到注释单元6242中。 针对这个分支动作流程中的流程步骤创建动作流程表24000。动作流程表24000包括条件列601、指令列602和切换目标列603。将动作流程表24000层级地嵌入在分支动作流程表行41004之下;并进一步地设置动作流程表24000与动作流程表40000按列对齐。为动作流程表24000创建动作流程表行24001,动作流程表行24001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,分支动作流程表行41004还包括对应于分支状态列613的分支状态单元6243。流程步骤55是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6243的内容。然后从步骤20开始继续针对流程步骤53对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤21开始继续针对机械手子流程中的下一个分支动作流程进行处理。
步骤20.由于流程步骤56为条件分支动作流程,将流程步骤56的执行条件添加到动作流程表行24001的条件单元中,并将后续的动作指令即流程步骤58的内容添加到动作流程表行24001的指令单元中;由于流程步骤59是设置目标索引变量“机床状态”的值的指令,因此将流程步骤59的内容添加到动作流程表行24001的切换目标单元中,而不再添加到动作流程表行24001的指令单元中。
步骤21.由于流程步骤62是切换分支动作流程中的一个分支动作流程,为分支动作流程表41000添加分支动作流程表行41005,分支动作流程表行41005与索引列611和注释列612对应的包括索引单元6251和注释单元6252;
流程步骤62中的机械手状态的目标值500是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6251中。将流程步骤62中的机械手状态的目标值500所表示的含义添加到注释单元6252中。
针对这个分支动作流程中的流程步骤创建动作流程表25000。动作流程表25000包括条件列601、指令列602和切换目标列603。将动作流程表25000层级地嵌入在分支动作流程表行41005之下;并进一步地设置动作流程表25000与动作流程表40000按列对齐。为动作流程表25000创建动作流程表行25001,动作流程表行25001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,分支动作流程表行41005还包括对应于分支状态列613的分支状态单元6253。流程步骤64是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6253的内容。然后从步骤22开始继续针对流程步骤62对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤25开始继续针对机械手子流程中的下一个分支动作流程进行处理。
步骤22.由于流程步骤65为条件分支动作流程,将流程步骤65的执行条件添加到动作流程表行25001的条件单元中;然后从步骤23开始继续针对流程步骤65判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤23.由于流程步骤67为条件分支动作流程,为流程步骤67创建新的动作流程表25100,并将动作流程表25100层级地嵌入在动作流程表行25000之下。动作流程表25100包括条件列601、指令列602和切换目标列603。为动作流程表25100创建动作流程表行25101,动作流程表行25101包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤67的执行条件添加到动作流程表行25101的条件单元中;由于流程步骤68是设置目标索引变量“机床状态”的值的指令,因此将流程步骤68的内容添加到动作流程表行25101的切换目标单元中,而不再添加到动作流程表行25101的指令单元中。
进一步地,根据动作流程表25000与动作流程表25100的层级关系对动作流程表行25101的条件单元的单元格式进行的相应设置,使动作流程表行25101的条件单元的中的内容相比动作流程表行25001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
从步骤24开始针对流程步骤67判断结果为false的分支动作流程进行处理。
步骤24.由于流程步骤70为动作指令,在动作流程表行25101之后创建新的动作流程表行25102,并将一个表示”true”的常量“ELSE”添加为动作流程表行25102条件单元的内容;由于流程步骤70是设置目标索引变量“机床状态”的值的指令,因此将流程步骤70的内容添加到动作流程表行25102的切换目标单元中,而不再添加到动作流程表行25102的指令单元中。
进一步地,由于动作流程表行25101和动作流程表行25102属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行25101与动作流程表行25102的互 斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤25.由于流程步骤73是切换分支动作流程中的一个分支动作流程,为分支动作流程表41000添加分支动作流程表行41006,分支动作流程表行41006与索引列611和注释列612对应的包括索引单元6261和注释单元6262;流程步骤73中的机械手状态的目标值600是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6261中。将流程步骤73中的机械手状态的目标值600所表示的含义添加到注释单元6262中。
针对这个分支动作流程中的流程步骤创建动作流程表26000。动作流程表26000包括条件列601、指令列602和切换目标列603。将动作流程表26000层级地嵌入在分支动作流程表行41006之下;并进一步地设置动作流程表26000与动作流程表40000按列对齐。为动作流程表26000创建动作流程表行26001,动作流程表行26001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,分支动作流程表行41006还包括对应于分支状态列613的分支状态单元6263。流程步骤74是针对指示灯状态变量赋值的动作指令,因此将这个赋值指令的目标值设置为分支状态单元6263的内容。
步骤26.由于机床子流程是一个切换分支动作流程,针对这个切换分支动作流程创建一个动作流程表50000,为动作流程表50000添加一个动作流程表行50001,将一个表示”true”的常量“TRUE”添加为动作流程表行50001条件单元的内容,而将针对目标索引变量“机床状态”进行判断的多个互斥的执行条件作为一个分支切换指令“switch(机床状态)”添加到动作流程表行50001的指令单元中。
获取机床子流程中的第一个流程步骤,由于流程步骤89是切换分支动作流程中的一个分支动作流程,为流程步骤89创建一个分支动作流程表51000,将分支动作流程表51000层级地嵌入在动作流程表行50001之下;分支动作流程表51000包括索引列611和注释列612;为分支动作流程表51000添加分支动作流程表行51001,分支动作流程表行51001与索引列611和注释列612对应的包括索引单元6311和注释单元6312;流程步骤89中的机床状态的目标值100是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6311中。将流程步骤89中的机床状态的目标值100所表示的含义添加到注释单元6312中。
针对这个分支动作流程中的流程步骤创建动作流程表31000。动作流程表31000包括条件列601、指令列602和切换目标列603。将动作流程表31000层级地嵌入在分支动作流程表行51001之下;并进一步地设置动作流程表31000与动作流程表50000按列对齐。为动作流程表31000创建动作流程表行31001,动作流程表行31001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在机床子流程中,“机床防护门开启”的动作指令通常是在机床状态被改变的同时执行的,以及“机床防护门开启到位”以及“机床防护门关闭到位”信号通常是改变机床状态的前置条件,因此机床防护门的状态是由特定的机床状态确定的,因而机床防护门状态可以看做是一个状态变量。在本发明的一些实施例中,动作流程表51000还包括对应于机床防护门状态变量的分支状态列613,分支动作流程表行51001还包括对应于分支状态列613的分支状态单元6313。但是在设置“机床停止中”状态时,无法通过“机床防护门开启”动作指令以及“机床防护门开启到位”和“机床防护门关闭到位”信号确定机床防护门的状态,因此针对分支动作流程表行51001不设置分支状态单元6313的内容。
然后从步骤27开始继续针对流程步骤89对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤33开始继续针对机床子流程中的下一个分支动作流程进行处理。
步骤27.由于流程步骤91为条件分支动作流程,将流程步骤91的执行条件添加到动作流程表行31001的条件单元中,并将后续的动作指令即流程步骤93的内容添加到动作流程表行31001的指令单元中;
然后从步骤28开始继续针对流程步骤91判断结果为true的分支动作流程中的其他流程步骤进行处理。
步骤28.由于流程步骤94为条件分支动作流程,为流程步骤94创建新的动作流程表31100,并将动作流程表31100层级地嵌入在动作流程表行31000之下。动作流程表31100包括条件列601、指令列602和切换目标列603。为动作流程表31100创建动作流程表行31101,动作流程表行31101包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤94的执行条件添加到 动作流程表行31101的条件单元中;
进一步地,根据动作流程表31000与动作流程表31100的层级关系对动作流程表行31101的条件单元的单元格式进行的相应设置,使动作流程表行31101的条件单元的中的内容相比动作流程表行31001的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
然后从步骤29开始继续针对流程步骤94判断结果为true的分支动作流程中的其他流程步骤进行处理。
以及从步骤31开始针对流程步骤94判断结果为false的分支动作流程进行处理。
步骤29.由于流程步骤96为条件分支动作流程,为流程步骤96创建新的动作流程表31110,并将动作流程表31110层级地嵌入在动作流程表行31100之下。动作流程表31110包括条件列601、指令列602和切换目标列603。为动作流程表31110创建动作流程表行31111,动作流程表行31111包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;将流程步骤96的执行条件添加到动作流程表行31111的条件单元中,并将后续的动作指令即流程步骤98的内容添加到动作流程表行31111的指令单元中;由于流程步骤99是设置目标索引变量“机床状态”的值的指令,因此将流程步骤99的内容添加到动作流程表行31111的切换目标单元中,而不再添加到动作流程表行31111的指令单元中。进一步地,根据动作流程表31100与动作流程表31110的层级关系对动作流程表行31111的条件单元的单元格式进行的相应设置,使动作流程表行31111的条件单元的中的内容相比动作流程表行31101的条件单元的内容缩进了一个设定的宽度,用于反映二者的层级关系。
步骤30.由于流程步骤103、104为动作指令,在动作流程表行31111之后创建新的动作流程表行31112,并将一个表示”true”的常量“ELSE”添加为动作流程表行31112条件单元的内容;并将流程步骤103的内容添加到动作流程表行31112的指令单元中。由于流程步骤104是设置目标索引变量“机床状态”的值的指令,因此将流程步骤104的内容添加到动作流程表行31112的切换目标单元中,而不再添加到动作流程表行31112的指令单元中。
进一步地,由于动作流程表行31111和动作流程表行31112属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行31111与动作流程表行31112的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤31.继续获取后续动作流程,为流程步骤107创建新的动作流程表行31102,动作流程表行31102包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;由于流程步骤107为条件分支动作流程,将流程步骤107的执行条件添加到动作流程表行31102的条件单元中,并将后续的动作指令即流程步骤109的内容添加到动作流程表行31102的指令单元中;由于流程步骤110是设置目标索引变量“机床状态”的值的指令,因此将流程步骤110的内容添加到动作流程表行31102的切换目标单元中,而不再添加到动作流程表行31102的指令单元中。从步骤32开始针对流程步骤107判断结果为false的分支动作流程进行处理。
步骤32.由于流程步骤114、115为动作指令,在动作流程表行31102之后创建新的动作流程表行31103,并将一个表示”true”的常量“ELSE”添加为动作流程表行31103条件单元的内容;并将流程步骤114的内容添加到动作流程表行31103的指令单元中。由于流程步骤115是设置目标索引变量“机床状态”的值的指令,因此将流程步骤115的内容添加到动作流程表行31103的切换目标单元中,而不再添加到动作流程表行31103的指令单元中。
进一步地,由于动作流程表行31102和动作流程表行31103属于条件分支动作流程的两个互斥的分支动作流程,因此设置动作流程表行31102与动作流程表行31103的互斥关系,并相应地在两个动作流程表行条件单元的左侧设置圆形标志并用竖线连接,用于在格式上反映二者的互斥的关系。
步骤33.由于流程步骤119是切换分支动作流程中的一个分支动作流程,为分支动作流程表51000添加分支动作流程表行51002,分支动作流程表行51002与索引列611和注释列612对应的包括索引单元6321和注释单元6322;流程步骤119中的机床状态的目标值200是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6321中。将流程步骤119中的机床状态的目标值200所表示的含义添加到注释单元6322中。
针对这个分支动作流程中的流程步骤创建动作流程表32000。动作流程表32000包括条件列601、指令列602和切换目标列603。将动作流程表32000层级地嵌入在分支动作流程表行51002之下;并进一步地设置动作流程表32000与动作流程表50000按列对齐。 为动作流程表32000创建动作流程表行32001,动作流程表行32001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,动作流程表51000还包括对应于机床防护门状态变量的分支状态列613,分支动作流程表行51002还包括对应于分支状态列613的分支状态单元6323。由于在流程步骤109或流程步骤147执行“机床防护门关闭”的动作指令之后立即将机床状态设置为200,因此在机床状态等于200时机床防护门的状态可以确定为“机床防护门关闭中”,因此针对分支动作流程表行51002设置分支状态单元6323的内容为“机床防护门关闭中”。
然后从步骤34开始继续针对流程步骤119对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤35开始继续针对机床子流程中的下一个分支动作流程进行处理。
步骤34.由于流程步骤121为条件分支动作流程,将流程步骤121的执行条件添加到动作流程表行32001的条件单元中,并将后续的动作指令即流程步骤123的内容添加到动作流程表行32001的指令单元中;由于流程步骤124是设置目标索引变量“机床状态”的值的指令,因此将流程步骤124的内容添加到动作流程表行32001的切换目标单元中,而不再添加到动作流程表行32001的指令单元中。
步骤35.由于流程步骤127是切换分支动作流程中的一个分支动作流程,为分支动作流程表51000添加分支动作流程表行51003,分支动作流程表行51003与索引列611和注释列612对应的包括索引单元6331和注释单元6332;流程步骤127中的机床状态的目标值300是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6321中。将流程步骤127中的机床状态的目标值300所表示的含义添加到注释单元6322中。
针对这个分支动作流程中的流程步骤创建动作流程表33000。动作流程表33000包括条件列601、指令列602和切换目标列603。将动作流程表33000层级地嵌入在分支动作流程表行51003之下;并进一步地设置动作流程表33000与动作流程表50000按列对齐。为动作流程表33000创建动作流程表行33001,动作流程表行33001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,动作流程表51000还包括对应于机床防护门状态变量的分支状态列613,分支动作流程表行51003还包括对应于分支状态列613的分支状态单元6333。由于在流程步骤121是在判断“机床防护门关闭到位”为true的条件下将机床状态设置为300,因此在机床状态等于300时机床防护门的状态可以确定为“机床防护门已关闭”,因此针对分支动作流程表行51003设置分支状态单元6333的内容为“机床防护门已关闭”。
然后从步骤36开始继续针对流程步骤127对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤37开始继续针对机床子流程中的下一个分支动作流程进行处理。
步骤36.由于流程步骤129为条件分支动作流程,将流程步骤129的执行条件添加到动作流程表行33001的条件单元中,并将后续的动作指令即流程步骤131的内容添加到动作流程表行33001的指令单元中;由于流程步骤132是设置目标索引变量“机床状态”的值的指令,因此将流程步骤132的内容添加到动作流程表行33001的切换目标单元中,而不再添加到动作流程表行33001的指令单元中。
步骤37.由于流程步骤135是切换分支动作流程中的一个分支动作流程,为分支动作流程表51000添加分支动作流程表行51004,分支动作流程表行51004与索引列611和注释列612对应的包括索引单元6341和注释单元6342;流程步骤135中的机床状态的目标值400是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6341中。将流程步骤135中的机床状态的目标值400所表示的含义添加到注释单元6342中。
针对这个分支动作流程中的流程步骤创建动作流程表34000。动作流程表34000包括条件列601、指令列602和切换目标列603。将动作流程表34000层级地嵌入在分支动作流程表行51004之下;并进一步地设置动作流程表34000与动作流程表50000按列对齐。为动作流程表34000创建动作流程表行34001,动作流程表行34001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,动作流程表51000还包括对应于机床防护门状态变量的分支状态列613,分支动作流程表行51004还包括对应于分支状态列613的分支状态单元6343。由于在流程步骤98或流程步骤131执行“机床防护门开启”的动作指令之后立 即将机床状态设置为400,因此在机床状态等于400时机床防护门的状态可以确定为“机床防护门开启中”,因此针对分支动作流程表行51004设置分支状态单元6343的内容为“机床防护门开启中”。
然后从步骤38开始继续针对流程步骤135对应的分支动作流程中的其他流程步骤进行处理。
然后从步骤39开始继续针对机床子流程中的下一个分支动作流程进行处理。
步骤38.由于流程步骤137为条件分支动作流程,将流程步骤137的执行条件添加到动作流程表行34001的条件单元中,并将后续的动作指令即流程步骤139的内容添加到动作流程表行34001的指令单元中;由于流程步骤140是设置目标索引变量“机床状态”的值的指令,因此将流程步骤140的内容添加到动作流程表行34001的切换目标单元中,而不再添加到动作流程表行34001的指令单元中。
步骤39.由于流程步骤143是切换分支动作流程中的一个分支动作流程,为分支动作流程表51000添加分支动作流程表行51005,分支动作流程表行51005与索引列611和注释列612对应的包括索引单元6351和注释单元6352;流程步骤143中的机床状态的目标值500是这个分支动作流程的分支索引值,因此将这个分支索引值添加到索引单元6351中。将流程步骤143中的机床状态的目标值300所表示的含义添加到注释单元6352中。
针对这个分支动作流程中的流程步骤创建动作流程表35000。动作流程表35000包括条件列601、指令列602和切换目标列603。将动作流程表35000层级地嵌入在分支动作流程表行51005之下;并进一步地设置动作流程表35000与动作流程表50000按列对齐。为动作流程表35000创建动作流程表行35001,动作流程表行35001包括与动作流程表的条件列601、指令列602和切换目标列603对应的条件单元、指令单元和切换目标单元;
在本发明的一些实施例中,动作流程表51000还包括对应于机床防护门状态变量的分支状态列613,分支动作流程表行51005还包括对应于分支状态列613的分支状态单元6353。由于在流程步骤137是在判断“机床防护门开启到位”为true的条件下将机床状态设置为500,因此在机床状态等于500时机床防护门的状态可以确定为“机床防护门已开启”,因此针对分支动作流程表行51005设置分支状态单元6353的内容为“机床防护门已开启”。
然后从步骤40开始继续针对流程步骤143对应的分支动作流程中的其他流程步骤进行处理。
步骤40.由于流程步骤145为条件分支动作流程,将流程步骤145的执行条件添加到动作流程表行35001的条件单元中,并将后续的动作指令即流程步骤147的内容添加到动作流程表行35001的指令单元中;由于流程步骤148是设置目标索引变量“机床状态”的值的指令,因此将流程步骤148的内容添加到动作流程表行35001的切换目标单元中,而不再添加到动作流程表行35001的指令单元中。
以上通过步骤1至步骤40,说明了表格化处理动作流程的方法对本实施例中自动化生产系统的详细动作流程进行表格化处理的具体过程,
上述针对动作流程的表格化处理过程与实施例一中的过程大致相同,在此不再赘述,具体的区别在于在判定出流程步骤的动作流程类型,当动作流程类型为切换分支动作流程时,相应的流程步骤序列组合规则以及行生成规则有所不同。
当动作流程类型为切换分支动作流程时,如步骤9所示,在对作为切换分支流程的机械手子流程进行处理时,创建一个动作流程表40000,并添加一个动作流程表行40001,进一步将针对目标索引变量“机械手状态”进行判断的多个互斥的执行条件作为一个分支切换指令“switch(机械手状态)”添加到动作流程表行40001的指令单元中。由此可见,分支切换指令会被添加在指令单元中,其属于动作指令的一种。因此,在分支切换指令被判定属于切换分支动作流程的同时,还会被判定属于动作指令型动作流程(即属于动作指令型流程步骤序列)。此时,该分支切换指令就基于与作为动作指令的流程步骤相同的方式进行处理,即在动作流程表中顺序生成一个动作流程表行作为当前动作流程表行(步骤A1);将一个真值作为执行条件添加到当前动作流程表行的条件单元中(步骤A2);顺序获取相应动作指令型流程步骤序列中的流程步骤添加到当前动作流程表行的指令单元中(步骤A3)。
但同时,当分支切换指令属于条件分支型流程步骤序列时,与实施例一中针对条件分支动作流程的预定行生成规则相类似,若首个子流程步骤序列在条件分支动作流程中对应于动作指令型动作流程,就将子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应分支动作流程的动作流程表行的指令单元中。因此若该子流程步骤序列为切换分支型流程步骤序列时,切换分支指令也会作为动作指令添加到相应的指令单元中。上述过程相当于若对应分支切换指令的流程步骤之前连续的流程步骤属于动作指令型流程步骤序列,则将根据该动 作指令型流程步骤序列生成的动作流程表行作为当前动作流程表行(步骤C1)。
其次,创建了动作流程表行并且添加好执行条件后,在步骤9中,将针对目标索引变量“机械手状态”进行判断的多个互斥的执行条件作为一个分支切换指令“switch(机械手状态)”添加到动作流程表行40001的指令单元中。因此,这个过程相当于将对应分支切换指令的流程步骤作为动作指令添加至当前动作流程表行的指令单元中(步骤C2)。
接下来,如步骤9中所提及,由于流程步骤16是切换分支动作流程中的一个分支动作流程,为流程步骤16创建一个分支动作流程表41000,为分支动作流程表41000添加分支动作流程表行41001,并将流程步骤16中的机械手状态的目标值100所表示的含义添加到动作流程表行41001的索引单元6211中,同时步骤14、18、19等均相应地对作为分支动作流程的流程步骤33、49、53进行了相应动作流程表行的创建,因此,该过程相当于生成一个切换分支型流程步骤序列相对应的分支动作流程表,该分支动作流程表层级地嵌入在当前动作流程表行下(步骤C3)。
在此基础上,步骤9中还提及了在创建分支动作流程表行41001后,针对这个分支动作流程中的流程步骤创建动作流程表21000,将动作流程表21000层级地嵌入在分支动作流程表行41001之下,然后从步骤10开始继续针对流程步骤16对应的分支动作流程中的其他流程步骤进行处理。该过程相当于针对每个分支动作流程,在分支动作流程表中顺序生成包括位于索引列的索引单元的分支动作流程表行,并将分支索引条件添加到索引单元中同时创建一个层级地嵌入在分支动作流程表行下的子动作流程表。
另外,在创建子动作流程表后,与实施例一中对应条件分支型流程步骤序列的预定行生成规则类似的,本实施例二对应切换分支型流程步骤序列的预定行生成规则也会针对每个子动作流程表,顺序获取相应分支动作流程中的流程步骤,并依次判定每个流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将分支动作流程中连续的流程步骤分别组合为至少一个对应有相应动作流程类型的子流程步骤序列,更进一步基于与该流程步骤序列类型相对应的预定行生成规则在子动作流程表中顺序生成与子流程步骤序列相对应的动作流程表行(步骤C5)。
接下来,以通过本实施例二的表格化处理过程处理得到的动作流程表10000为例,介绍该动作流程表10000的执行动作流程的方法,具体步骤如下:
步骤1.获取动作流程表10000的第一个动作流程表行10001,判断动作流程表行10001条件单元的执行条件“系统开机”是否为true;如果是则进一步获取动作流程表行10001内嵌的下级动作流程表11000。并执行下一步;
步骤2.获取动作流程表11000的第一个动作流程表行11001,判断动作流程表行11001条件单元的执行条件“机械手停止”是否为true;
如果是则获取并执行动作流程表行11001指令单元中的内容“机械手停止=false;”和切换目标单元中的内容“机械手状态=100;”,然后进一步获取动作流程表行11001内嵌的下级动作流程表11100。并执行步骤3;然后获取与动作流程表行11001为非互斥关系的下一条动作流程表行11003,并执行步骤5;
否则获取下一个动作流程表行11002并执行步骤4;
步骤3.获取动作流程表11100的第一个动作流程表行11101,判断动作流程表行11101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11101指令单元中的内容。
步骤4.由于动作流程表行11002条件单元的执行条件为true;因此获取并执行动作流程表行11001指令单元中的内容。由于动作流程表行11001指令单元中的动作指令是调用机械手子流程,因此从步骤9开始执行机械手子流程。由于动作流程表行11002没有内嵌的下级动作流程表,因此在机械手子流程执行完成后立即执行步骤5。
步骤5.判断动作流程表行11003条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11003指令单元中的内容和切换目标单元中的内容,然后进一步获取动作流程表行11003内嵌的下级动作流程表11200。并执行步骤6;然后获取与动作流程表行11003为非互斥关系的下一条动作流程表行11005,并执行步骤8;
否则获取下一个动作流程表行11004并执行步骤7;
步骤6.获取动作流程表11200的第一个动作流程表行11201,判断动作流程表行11201条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行11201指令单元中的内容。
步骤7.由于动作流程表行11004条件单元的执行条件为true;因此获取并执行动作流程表行11004指令单元中的内容。由于动作流程表行11004指令单元中的动作指令是调用机床子流程,因此从步骤26开始执行机床子流程。由于动作流程表行11004没有内嵌的下级动作流程表,因此在机床子流程执行完成后立即执行步骤8。
步骤8.由于动作流程表行11005条件单元的执行条件为true;因此获取并执行动作流程表行11005指令单元中的内容。由于这是主动作流程表的最后一个流程表行,且动作流程表行10001的循环执行属性值为循环执行,因此返回步骤1继续执行。
步骤9.获取动作流程表40000的第一个动作流程表行40001,因为动作流程表行40001条件单元的执行条件总为true,所以立即执行动作流程表行40001指令单元中的内容;40001指令单元中是分支切换指令,于是获取嵌入在动作流程表行40001下方的分支动作流程表41000,并判断目标索引变量“机械手状态”的值与分支动作流程表行41001的索引单元6211的内容是否匹配?
如果匹配则首先获取分支状态单元6213中的内容,并根据分支状态单元6213中的内容设置指示灯状态;然后获取嵌入在分支动作流程表行41001下方的动作流程表21000,并执行步骤10;
否则执行步骤14;
步骤10.获取动作流程表21000的第一个动作流程表行21001,判断动作流程表行21001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21001指令单元中的内容,然后进一步获取动作流程表行21001内嵌的下级动作流程表21100。并执行步骤11;
步骤11.获取动作流程表21100的第一个动作流程表行21101,判断动作流程表行21101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21101指令单元中的内容;
否则获取下一个动作流程表行21102并执行步骤12;
步骤12.判断动作流程表行21102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21102指令单元中的内容;
否则获取下一个动作流程表行21103并执行步骤13;
步骤13.判断动作流程表行21103条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行21103指令单元中的内容;
步骤14.判断目标索引变量“机械手状态”的值与分支动作流程表行41002的索引单元6221的内容是否匹配?
如果匹配则首先获取分支状态单元6223中的内容,并根据分支状态单元6223中的内容设置指示灯状态;然后获取嵌入在分支动作流程表行41002下方的动作流程表22000,并执行步骤15;
否则执行步骤18;
步骤15.获取动作流程表22000的第一个动作流程表行22001,判断动作流程表行22001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22001指令单元中的内容,然后进一步获取动作流程表行22001内嵌的下级动作流程表22100。并执行步骤16;
步骤16.获取动作流程表22100的第一个动作流程表行22101,判断动作流程表行22101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22101指令单元中的内容;
否则获取下一个动作流程表行22102并执行步骤17;
步骤17.判断动作流程表行22102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行22102指令单元中的内容;
步骤18.判断目标索引变量“机械手状态”的值与分支动作流程表行41003的索引单元6231的内容是否匹配?
如果匹配则获取分支状态单元6233中的内容,并根据分支状态单元6233中的内容设置指示灯状态;
否则执行步骤19;
步骤19.判断目标索引变量“机械手状态”的值与分支动作流程表行41004的索引单元6241的内容是否匹配?
如果匹配则首先获取分支状态单元6243中的内容,并根据分支状态单元6243中的内容设置指示灯状态;然后获取嵌入在分支动作流程表行41004下方的动作流程表24000,并执行步骤20;
否则执行步骤21;
步骤20.判断动作流程表行24001条件单元的执行条件是否为true;如果是则获取并执行动作流程表行24001指令单元中的内容;
步骤21.判断目标索引变量“机械手状态”的值与分支动作流程表行41005的索引单元6251的内容是否匹配?
如果匹配则首先获取分支状态单元6253中的内容,并根据分支状态单元6253中的内容设置指示灯状态;然后获取嵌入在分支动作流程表行41005下方的动作流程表25000, 并执行步骤22;
否则执行步骤25;
步骤22.获取动作流程表25000的第一个动作流程表行25001,判断动作流程表行25001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行25001指令单元中的内容,然后进一步获取动作流程表行25001内嵌的下级动作流程表25100。并执行步骤16;
步骤23.获取动作流程表25100的第一个动作流程表行25101,判断动作流程表行25101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行25101指令单元中的内容;
否则获取下一个动作流程表行25102并执行步骤17;
步骤24.判断动作流程表行25102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行25102指令单元中的内容;
步骤25.判断目标索引变量“机械手状态”的值与分支动作流程表行41006的索引单元6261的内容是否匹配?
如果匹配则获取分支状态单元6263中的内容,并根据分支状态单元6263中的内容设置指示灯状态;
步骤26.获取动作流程表50000的第一个动作流程表行50001,因为动作流程表行50001条件单元的执行条件总为true,所以立即执行动作流程表行50001指令单元中的内容;50001指令单元中是分支切换指令,于是获取嵌入在动作流程表行50001下方的分支动作流程表51000,并判断目标索引变量“机床状态”的值与分支动作流程表行51001的索引单元6311的内容是否匹配?
如果匹配则获取嵌入在分支动作流程表行51001下方的动作流程表31000,并执行步骤27;
否则执行步骤33;
步骤27.获取动作流程表31000的第一个动作流程表行31001,判断动作流程表行31001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31001指令单元中的内容,然后进一步获取动作流程表行31001内嵌的下级动作流程表31100。并执行步骤28;
步骤28.获取动作流程表31100的第一个动作流程表行31101,判断动作流程表行21101条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31101指令单元中的内容,然后进一步获取动作流程表行31101内嵌的下级动作流程表31110。并执行步骤29;否则获取下一个动作流程表行31102并执行步骤31;
步骤29.获取动作流程表31110的第一个动作流程表行31111,判断动作流程表行31111条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31111指令单元中的内容;
否则获取下一个动作流程表行31112并执行步骤13;
步骤30.判断动作流程表行31112条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31112指令单元中的内容;
步骤31.判断动作流程表行31102条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31102指令单元中的内容;
否则获取下一个动作流程表行31103并执行步骤32;
步骤32.判断动作流程表行31103条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行31103指令单元中的内容;
步骤33.判断目标索引变量“机床状态”的值与分支动作流程表行51002的索引单元6321的内容是否匹配?
如果匹配则获取嵌入在分支动作流程表行51002下方的动作流程表32000,并执行步骤34;
否则执行步骤35;
步骤34.获取动作流程表32000的第一个动作流程表行32001,判断动作流程表行32001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行32001指令单元中的内容;
步骤35.判断目标索引变量“机床状态”的值与分支动作流程表行51003的索引单元6331的内容是否匹配?
如果匹配则获取嵌入在分支动作流程表行51003下方的动作流程表33000,并执行步骤36;
否则执行步骤37;
步骤36.获取动作流程表33000的第一个动作流程表行33001,判断动作流程表行33001条 件单元的执行条件是否为true;
如果是则获取并执行动作流程表行33001指令单元中的内容;
步骤37.判断目标索引变量“机床状态”的值与分支动作流程表行51004的索引单元6341的内容是否匹配?
如果匹配则获取嵌入在分支动作流程表行51004下方的动作流程表34000,并执行步骤38;
否则执行步骤39;
步骤38.获取动作流程表34000的第一个动作流程表行34001,判断动作流程表行34001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行34001指令单元中的内容;
步骤39.判断目标索引变量“机床状态”的值与分支动作流程表行51005的索引单元6351的内容是否匹配?
如果匹配则获取嵌入在分支动作流程表行51005下方的动作流程表35000,并执行步骤40;
步骤40.获取动作流程表35000的第一个动作流程表行35001,判断动作流程表行35001条件单元的执行条件是否为true;
如果是则获取并执行动作流程表行35001指令单元中的内容。
以上通过步骤1至步骤40,说明了通过针对动作流程表执行动作流程的方法对本实施例二中对应自动化生产系统的的动作流程表的具体执行过程。
根据该步骤1至步骤40可知,与实施例一相比,本实施例二的针对动作流程表执行动作流程的方法在通过与步骤S11至S12相同的步骤C11至C12对当前动作流程表行进行处理后,还需要判断指令单元中的动作指令是否为分支切换指令,如步骤9中所提及,在40001指令单元中是分支切换指令,于是获取嵌入在动作流程表行40001下方的分支动作流程表41000,并判断目标索引变量“机械手状态”的值与分支动作流程表行41001的索引单元6211的内容是否匹配?如果匹配则首先获取分支状态单元6213中的内容。因此,该过程相当于获取并判断当前动作流程表行的指令单元中的动作指令是否为分支切换指令,若是则获取所述当前动作流程表行下嵌入的与所述分支切换指令对应的所述分支动作流程表,并从该分支动作流程表行中获取所述索引单元的分支索引值与所述目标索引变量的值一致的分支动作流程表行,进一步获取嵌入在该分支动作流程表行下的所述子动作流程表的首个动作流程表行作为当前动作流程表行并返回步骤C12,若否则执行动作指令(C13)。
接下来,在步骤9中还获取嵌入在分支动作流程表行41001下方的动作流程表21000,并执行步骤10。相当于判断当前动作流程表行下是否是有嵌入的分支动作流程表,若判断为是则执行分支动作流程表直到分支动作流程表被执行完毕(步骤C14)。在结束步骤C14的处理后,通过一个与步骤B15相同的步骤C15实现对动作流程表行的遍历。
通过上述过程得到的动作流程表与分支动作流程表可以采用数据库的形式进行存储和检索,这些数据库包括但不限于关系型数据库、XML数据库和面向对象的数据库;以及可以通过类如HTML网页和Excel TM的电子表格按照本发明方案进行呈现和/或设置。进一步地,可以通过在包含存储器、处理器的计算机系统上执行按照本发明方案实现的计算机程序对存储在数据库中的动作流程表与分支动作流程表进行访问以呈现、设置和/或执行动作流程的流程步骤。在另一些实施例中,这个计算机系统还包括I/O端口,用于连接外部的传感器和致动器,以操纵类如机床和机械手的实体设备。上述数据库、电子表格、计算机系统、传感器和致动器的构成是已知的,因此不用进行进一步的描述。
上述实施例仅用于举例说明本发明的具体实施方式,而本发明不限于上述实施例的描述范围。任何熟悉本技术领域的技术人员在本发明揭露的技术范围内可轻易想到的变化或替换,都应该涵盖在本发明权利要求的保护范围之内。
例如,本发明中分支动作流程表行与动作流程表上下层级地嵌入的关系的呈现形式并不局限于附图10~11的形式。在本发明的其他方案中,参考附图12,分支动作流程表51000可以设置在动作流程表50000的左侧,分支动作流程表51000的每一个分支动作流程表行与右侧关联的动作流程表按行对齐。虽然分支动作流程表行位于动作流程表的左侧而不是上方,但是二者的关系仍然是上下级关系。也就是说:附图11与附图12所描述的动作流程表与分支动作流程表在逻辑上是一致的。因此,附图11与附图12这两种不同的视图形式可以根据需要相互切换,比如当屏幕的可视显示较窄或屏幕竖直摆放时采用附图11的形式,反之采用附图12的形式。这样可以更加高效地利用屏幕的显示空间,使复杂动作流程更便于浏览和编辑,以及使不同类型的流程步骤的分离度更高,便于发现动作流程之间的细节差异, 及时发现程序错误。
进一步,参考附图12,对于连续的多个互斥的分支动作流程,可以在首个分支动作流程对应的动作流程表行的条件单元内容的左侧设置实心的圆形符号,而在互斥的其他分支动作流程对应的动作流程表行的条件单元内容的左侧设置空心的圆形符号,用于在格式上反映这些分支动作流程的互斥的关系。

Claims (15)

  1. 一种表格化处理动作流程的方法,用于对含有多个流程步骤的动作流程进行表格化处理,其特征在于,包括:
    步骤S1,创建动作流程表;
    步骤S2,顺序获取所述动作流程的所述流程步骤并依次判定每个所述流程步骤在所述动作流程中所对应的动作流程类型;
    步骤S3,按照预定的流程步骤序列组合规则将所述动作流程中连续的所述流程步骤组合为至少一个对应有相应所述动作流程类型的流程步骤序列;
    步骤S4,从所述动作流程中顺序获取所述流程步骤序列,根据所述流程步骤序列的所述动作流程类型,基于与具有该动作流程类型的流程步骤序列相对应的预定行生成规则在所述动作流程表中顺序生成与所述流程步骤序列相对应的动作流程表行;
    步骤S5,判断所述流程步骤是否被获取完毕,若判断为否则返回所述步骤S2,若判断为是则得到最终的所述动作流程表并进行输出,
    其中,所述动作流程表包括条件列以及指令列,
    每个所述动作流程表行包括一个位于所述条件列的条件单元以及一个位于所述指令列的指令单元,
    所述条件单元中至少用于添加在所述动作流程中执行判断的所述流程步骤并将该流程步骤作为对应同一所述动作流程表行中的所述指令单元的执行条件,
    所述指令单元中用于添加在所述动作流程中执行动作的所述流程步骤作为动作指令。
  2. 根据权利要求1所述的表格化处理动作流程的方法,其特征在于:
    其中,所述动作流程类型至少包括动作指令型动作流程,
    所述指令型动作流程包括至少一个连续且作为动作指令的流程步骤,针对对应所述指令型动作流程的所述流程步骤组合规则为,将所述指令型动作流程中连续的所述流程步骤组合为动作指令型流程步骤序列,
    与所述动作指令型流程步骤序列相对应的所述预定行生成规则为:
    步骤A1,在所述动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;
    步骤A2,将一个真值作为执行条件添加到所述当前动作流程表行的所述条件单元中;
    步骤A3,顺序获取相应所述动作指令型流程步骤序列中的所述流程步骤添加到所述当前动作流程表行的所述指令单元中。
  3. 根据权利要求2所述的表格化处理动作流程的方法,其特征在于:
    其中,所述动作流程类型还包括条件分支动作流程,所述条件分支动作流程包括至少一个分支动作流程以及对应于各个所述分支动作流程且互斥的执行条件,
    针对条件分支动作流程的流程步骤组合规则为,将所述条件分支动作流程中的所述分支动作流程及对应于该分支动作流程的所述执行条件组合为条件分支型流程步骤序列,
    与所述条件分支型流程步骤序列所对应的所述预定行生成规则为:
    步骤B1,根据所述条件分支型流程步骤序列在所述动作流程表中顺序生成相应的动作流程表行;
    步骤B2,将所述条件分支型流程步骤序列所对应的所述执行条件添加至相应的所述动作流程表行的所述条件单元中,并设置所生成的各动作流程表行为互斥关系;
    步骤B3,针对所述条件分支型流程步骤序列,顺序获取所述分支动作流程中的所述流程步骤并依次判定每个所述流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述条件分支型流程步骤序列中连续的所述流程步骤组合为至少一个对应有相应所述动作流程类型的子流程步骤序列,
    若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应所述分支动作流程的所述动作流程表行的所述指令单元中,
    若所述子流程步骤序列为条件分支型流程步骤序列,生成一个与相应所述分支动作流程相对应的子动作流程表,并基于与所述条件分支型流程步骤序列相对应的所述预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述子动作流程表层级地嵌入在与所述分支动作流程相对应的所述动作流程表行下。
  4. 根据权利要求2所述的表格化处理动作流程的方法,其特征在于:
    其中,所述动作流程类型还包括切换分支动作流程,所述切换分支动作流程包括多个分支动作流程、用于切换所述分支动作流程的分支切换指令以及对应于各个所述分支动作流程且互斥的分支索引条件,
    针对所述切换分支动作流程的流程步骤组合规则为,将所述切换分支动作流程所包含的每一个分支动作流程及其对应分支索引条件分别组合为切换分支型流程步骤序列,
    与所述切换分支型流程步骤序列所对应的所述预定行生成规则为:
    步骤C1,若对应所述分支切换指令的所述流程步骤之前连续的所述流程步骤属于所述动作指令型流程步骤序列,则将根据该动作指令型流程步骤序列生成的所述动作流程表行作为当前动作流程表行;
    步骤C2,将对应所述分支切换指令的所述流程步骤作为动作指令添加至所述当前动作流程表行的所述指令单元中;
    步骤C3,生成一个所述切换分支型流程步骤序列相对应的分支动作流程表,该分支动作流程表层级地嵌入在所述当前动作流程表行下,所述分支动作流程表包括索引列;
    步骤C4,针对每个所述分支动作流程,在所述分支动作流程表中顺序生成包括位于所述索引列的索引单元的分支动作流程表行,并将所述分支索引条件添加到所述索引单元中同时创建一个层级地嵌入在所述分支动作流程表行下的子动作流程表;
    步骤C5,针对每个所述子动作流程表,顺序获取相应所述分支动作流程中的所述流程步骤,并依次判定每个所述流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述分支动作流程中连续的所述流程步骤分别组合为至少一个对应有相应所述动作流程类型的子流程步骤序列,更进一步基于与该流程步骤序列类型相对应的预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述分支切换指令用于根据所述目标索引变量确定对应的所述分支索引条件并切换执行具有相应所述分支索引值的索引单元的动作流程表行。
  5. 根据权利要求4所述的表格化处理动作流程的方法,其特征在于:
    其中,所述分支动作流程表还包括切换目标列,所述分支动作流程表行还包括位于所述切换目标列的切换目标单元,
    所述切换目标单元中添加有用于设置所述目标索引变量的值的所述流程步骤作为切换指令。
  6. 根据权利要求4所述的表格化处理动作流程的方法,其特征在于:
    其中,所述分支动作流程表还包括分支状态列,所述动作流程表行还包括位于所述分支状态列的分支状态单元,
    所述分支状态单元中添加有用于对所述分支动作流程所对应的状态变量进行赋值的动作指令。
  7. 根据权利要求2所述的表格化处理动作流程的方法,其特征在于:
    其中,所述动作流程类型还包括循环动作流程,所述循环动作流程包括执行条件以及循环子流程,
    所述动作流程表还包括循环属性列,所述动作流程表行中包括一个位于所述循环属性列中的循环属性单元,
    针对循环动作流程的流程步骤组合规则为,将所述循环动作流程的执行条件以及循环子流程组合为循环动作流程步骤序列,
    与所述循环动作流程步骤序列所对应的所述预定行生成规则为:
    步骤D1,在所述动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;
    步骤D2,将所述当前流程步骤作为执行条件添加到所述当前动作流程表行的所述条件单元中,并在所述循环属性单元中添加一个循环执行属性;
    步骤D3,顺序获取所述循环子流程中的所述流程步骤并依次判定每个所述流程步骤在所述循环子流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述循环动作流程步骤序列中连续的所述流程步骤组合为对应有相应所述动作流程类型的子流程步骤序列,
    若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应所述分支动作流程的所述动作流程表行的所述指令单元中,
    若所述子流程步骤序列为条件分支型流程步骤序列,生成一个与相应所述分支动作流程相对应的子动作流程表,并基于与所述条件分支型流程步骤序列相对应的所述预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述子动作流程表层级地嵌入在与所述分支动作流程相对应的所述动作流程表行下。
  8. 一种针对动作流程表执行动作流程的方法,用于根据通过表格化处理动作流程的方法得到的动作流程表执行动作流程,所述表格化处理动作流程的方法包括:
    步骤S1,创建动作流程表;
    步骤S2,顺序获取所述动作流程的所述流程步骤并依次判定每个所述流程步骤在所述动作流程中所对应的动作流程类型;
    步骤S3,按照预定的流程步骤序列组合规则将所述动作流程中连续的所述流程步骤组合为至少一个对应有相应所述动作流程类型的流程步骤序列;
    步骤S4,从所述动作流程中顺序获取所述流程步骤序列,根据所述流程步骤序列的所述动作流程类型,基于与具有该动作流程类型的流程步骤序列相对应的预定行生成规则在所述动作流程表中顺序生成与所述流程步骤序列相对应的动作流程表行;
    步骤S5,判断所述流程步骤是否被获取完毕,若判断为否则返回所述步骤S2,若判断为是则得到最终的所述动作流程表并进行输出,
    其中,所述动作流程表包括条件列以及指令列,
    每个所述动作流程表行包括一个位于所述条件列的条件单元以及一个位于所述指令列的指令单元,
    所述条件单元中至少用于添加在所述动作流程中执行判断的所述流程步骤并将该流程步骤作为对应同一所述动作流程表行中的所述指令单元的执行条件,
    所述指令单元中用于添加在所述动作流程中执行动作的所述流程步骤作为动作指令,
    所述针对动作流程表执行动作流程的方法包括:
    步骤S11,顺序地从所述动作流程表中获取动作流程表行作为当前动作流程表行;
    步骤S12,判断所述当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤S11;
    步骤S13,获取并执行所述当前动作流程表行的指令单元中的动作指令;
    步骤S14,判断所述动作流程表中所有所述流程步骤是否被执行完毕,若判断为否则返回所述步骤S11,若判断为是则所述动作流程已执行完毕。
  9. 根据权利要求8所述的针对动作流程表执行动作流程的方法,其特征在于,所述表格化处理动作流程的方法还包括:
    所述动作流程类型至少包括动作指令型动作流程以及条件分支动作流程,所述条件分支动作流程包括至少一个分支动作流程以及对应于各个所述分支动作流程且互斥的执行条件,针对条件分支动作流程的流程步骤组合规则为,将所述条件分支动作流程中的所述分支动作流程及对应于该分支动作流程的所述执行条件组合为条件分支型流程步骤序列,
    与所述条件分支型流程步骤序列所对应的所述预定行生成规则为:
    步骤B1,根据所述条件分支型流程步骤序列在所述动作流程表中顺序生成相应的动作流程表行;
    步骤B2,将所述条件分支型流程步骤序列所对应的所述执行条件添加至相应的所述动作流程表行的所述条件单元中,并设置所生成的各动作流程表行为互斥关系;
    步骤B3,针对所述条件分支型流程步骤序列,顺序获取所述分支动作流程中的所述流程步骤并依次判定每个所述流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述条件分支型流程步骤序列中连续的所述流程步骤组合为至少一个对应有相应所述动作流程类型的子流程步骤序列,
    若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应所述分支动作流程的所述动作流程表行的所述指令单元中,
    若所述子流程步骤序列为条件分支型流程步骤序列,生成一个与相应所述分支动作流程相对应的子动作流程表,并基于与所述条件分支型流程步骤序列相对应的所述预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述子动作流程表层级地嵌入在与所述分支动作流程相对应的所述动作流程表行下,
    所述针对动作流程表执行动作流程的方法还包括:
    步骤B11,顺序地从所述动作流程表中获取动作流程表行作为当前动作流程表行;
    步骤B12,判断所述当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤B11;
    步骤B13,获取并执行所述当前动作流程表行的指令单元中的动作指令;
    步骤B14,判断所述当前动作流程表行下是否是有嵌入的所述子动作流程表,若判断为是则执行所述子动作流程表直到所述子动作流程表被执行完毕;
    步骤B15,判断所述动作流程表中所有所述流程步骤是否被执行完毕,若判断为否则获取与所述当前动作流程表行的条件单元中的所述执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回所述步骤B12,若判断为是则所述动作流程已执行完毕。
  10. 根据权利要求8所述的针对动作流程表执行动作流程的方法,其特征在于,所述表格化处理动作流程的方法还包括:
    所述动作流程类型还包括切换分支动作流程,所述切换分支动作流程包括多个分支动作流程、用于切换所述分支动作流程的分支切换指令以及对应于各个所述分支动作流程且互斥的分支索引条件,
    针对所述切换分支动作流程的流程步骤组合规则为,将所述切换分支动作流程所包含的每一个分支动作流程及其对应分支索引条件分别组合为切换分支型流程步骤序列,
    与所述切换分支型流程步骤序列所对应的所述预定行生成规则为:
    步骤C1,若对应所述分支切换指令的所述流程步骤之前连续的所述流程步骤属于所述动作指令型流程步骤序列,则将根据该动作指令型流程步骤序列生成的所述动作流程表行作为当前动作流程表行;
    步骤C2,将对应所述分支切换指令的所述流程步骤作为动作指令添加至所述当前动作流程表行的所述指令单元中;
    步骤C3,生成一个所述切换分支型流程步骤序列相对应的分支动作流程表,该分支动作流程表层级地嵌入在所述当前动作流程表行下,所述分支动作流程表包括索引列;
    步骤C4,针对每个所述分支动作流程,在所述分支动作流程表中顺序生成包括位于所述索引列的索引单元的分支动作流程表行,并将所述分支索引条件添加到所述索引单元中同时创建一个层级地嵌入在所述分支动作流程表行下的子动作流程表;
    步骤C5,针对每个所述子动作流程表,顺序获取相应所述分支动作流程中的所述流程步骤,并依次判定每个所述流程步骤在相应分支动作流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述分支动作流程中连续的所述流程步骤分别组合为至少一个对应有相应所述动作流程类型的子流程步骤序列,更进一步基于与该流程步骤序列类型相对应的预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述分支切换指令用于根据所述目标索引变量确定对应的所述分支索引条件并切换执行具有相应所述分支索引值的索引单元的动作流程表行,
    所述针对动作流程表执行动作流程的方法还包括:
    步骤C11,顺序地从所述动作流程表中获取动作流程表行作为当前动作流程表行;
    步骤C12,判断所述当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤C11;
    步骤C13,获取并判断所述当前动作流程表行的指令单元中的动作指令是否为分支切换指令,若是则获取所述当前动作流程表行下嵌入的与所述分支切换指令对应的所述分支动作流程表,并从该分支动作流程表行中获取所述索引单元的分支索引值与所述目标索引变量的值一致的分支动作流程表行,进一步获取嵌入在该分支动作流程表行下的所述子动作流程表的首个动作流程表行作为当前动作流程表行并返回步骤C12,若否则执行所述动作指令;
    步骤C14,判断所述当前动作流程表行下是否是有嵌入的所述分支动作流程表,若判断为是则执行所述分支动作流程表直到所述分支动作流程表被执行完毕;
    步骤C15,判断所述动作流程表中所有所述流程步骤是否被执行完毕,若判断为否则获取与所述当前动作流程表行的条件单元中的所述执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回所述步骤C12,若判断为是则所述动作流程已执行完毕。
  11. 根据权利要求10所述的针对动作流程表执行动作流程的方法,其特征在于,所述表格化处理动作流程的方法还包括:
    其中,所述分支动作流程表还包括切换目标列,所述分支动作流程表行还包括位于所述切换目标列的切换目标单元,
    所述切换目标单元中添加有用于设置所述目标索引变量的值的所述流程步骤作为切换指令,
    所述针对动作流程表执行动作流程的方法还包括:
    其中,所述步骤C13中还获取所述切换目标单元的所述切换指令并执行。
  12. 根据权利要求10所述的针对动作流程表执行动作流程的方法,其特征在于,所述表格化处理动作流程的方法还包括:
    其中,所述分支动作流程表还包括分支状态列,所述动作流程表行还包括位于所述分支状态列的分支状态单元,
    所述分支状态单元中添加有用于对所述分支动作流程所对应的状态变量进行赋值的动作指令,
    其中,所述步骤C13中在获取所述索引单元的分支索引值与所述目标索引变量的值一致的分支动作流程表行时,还获取所述分支状态单元中的所述动作指令并对所述状态变量进行赋值。
  13. 根据权利要求8所述的针对动作流程表执行动作流程的方法,其特征在于,所述表格化处理动作流程的方法还包括:
    所述动作流程类型还包括循环动作流程,所述循环动作流程包括执行条件以及循环子流程,
    所述动作流程表还包括循环属性列,所述动作流程表行中包括一个位于所述循环属性列中的循环属性单元,
    针对循环动作流程的流程步骤组合规则为,将所述循环动作流程的执行条件以及循环子流程组合为循环动作流程步骤序列,
    与所述循环动作流程步骤序列所对应的所述预定行生成规则为:
    步骤D1,在所述动作流程表中顺序生成一个动作流程表行作为当前动作流程表行;
    步骤D2,将所述当前流程步骤作为执行条件添加到所述当前动作流程表行的所述条件单元中,并在所述循环属性单元中添加一个循环执行属性;
    步骤D3,顺序获取所述循环子流程中的所述流程步骤并依次判定每个所述流程步骤在所述循环子流程中所对应的动作流程类型,按照预定的流程步骤序列组合规则进一步将所述循环动作流程步骤序列中连续的所述流程步骤组合为对应有相应所述动作流程类型的子流程步骤序列,
    若首个子流程步骤序列为动作指令型流程步骤序列,将该子流程步骤序列中的各个流程步骤作为动作指令顺序添加到相应所述分支动作流程的所述动作流程表行的所述指令单元中,
    若所述子流程步骤序列为条件分支型流程步骤序列,生成一个与相应所述分支动作流程相对应的子动作流程表,并基于与所述条件分支型流程步骤序列相对应的所述预定行生成规则在所述子动作流程表中顺序生成与所述子流程步骤序列相对应的动作流程表行,
    所述子动作流程表层级地嵌入在与所述分支动作流程相对应的所述动作流程表行下,
    所述针对动作流程表执行动作流程的方法还包括:
    步骤D11,顺序地从所述动作流程表中获取动作流程表行作为当前动作流程表行;
    步骤D12,判断所述当前动作流程表行的条件单元的执行条件是否为真值,若判断为否则返回步骤D11;
    步骤D13,获取并执行所述当前动作流程表行的指令单元中的动作指令;
    步骤D14,判断所述当前动作流程表行下是否是有嵌入的所述子动作流程表,若判断为是则执行所述子动作流程表直到所述子动作流程表被执行完毕;
    步骤D15,判断所述当前动作流程表行的所述循环属性单元中是否具有循环执行属性,若是则返回所述步骤D12重复执行所述当前动作流程表行;
    步骤D16,判断所述动作流程表中所有所述流程步骤是否被执行完毕,若判断为否则获取与所述当前动作流程表行的条件单元中的所述执行条件为非互斥关系的下一条动作流程表行作为当前动作流程表行并返回所述步骤D12,若判断为是则结束所述动作流程的执行。
  14. 一种表格化处理动作流程的装置,其特征在于,包括:
    存储器,用于存储计算机程序;以及
    处理器,用于在执行所述计算机程序时,实现如权利要求1至7中任意一项所述的表格化处理动作流程的方法。
  15. 一种针对动作流程表执行动作流程的装置,其特征在于,包括:
    存储器,用于存储计算机程序;以及
    处理器,用于在执行所述计算机程序时,实现如权利要求8至11中任意一项所述的针对动作流程表执行动作流程的方法。
PCT/CN2020/119383 2019-10-08 2020-09-30 一种异构嵌入式表格化处理及执行动作流程的方法和装置 WO2021068840A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2022520532A JP7338922B2 (ja) 2019-10-08 2020-09-30 異種埋め込み型の表形式化動作プロセスの処理および実行方法および装置
DE112020004835.7T DE112020004835T5 (de) 2019-10-08 2020-09-30 Heterogenes eingebettetes Verfahren und Vorrichtung zur tabellarischen Verarbeitung und Ausführung eines Operationsflusses
US17/764,534 US11960890B2 (en) 2019-10-08 2020-09-30 Heterogeneous embedded method and device for tabular processing and execution of operation flow

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910949220.1 2019-10-08
CN201910949220.1A CN110632878B (zh) 2019-10-08 2019-10-08 一种异构嵌入式表格化处理及执行动作流程的方法和装置

Publications (1)

Publication Number Publication Date
WO2021068840A1 true WO2021068840A1 (zh) 2021-04-15

Family

ID=68975681

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/119383 WO2021068840A1 (zh) 2019-10-08 2020-09-30 一种异构嵌入式表格化处理及执行动作流程的方法和装置

Country Status (5)

Country Link
US (1) US11960890B2 (zh)
JP (1) JP7338922B2 (zh)
CN (1) CN110632878B (zh)
DE (1) DE112020004835T5 (zh)
WO (1) WO2021068840A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110632878B (zh) 2019-10-08 2022-06-28 上海宝阶智能科技有限公司 一种异构嵌入式表格化处理及执行动作流程的方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031137A1 (en) * 2008-02-13 2010-02-04 Rule Dynamics Inc. Method and system for authoring, publishing and rendering a dynamic interactive web page
CN105867294A (zh) * 2016-06-01 2016-08-17 华自科技股份有限公司 Plc中顺序控制方法与系统
CN107015491A (zh) * 2017-04-13 2017-08-04 北京机械设备研究所 一种顺序控制方法
CN107368055A (zh) * 2017-08-23 2017-11-21 苏州宏软信息技术有限公司 一种用于多零件装置的装配线配方控制系统及其方法
CN108256716A (zh) * 2016-12-29 2018-07-06 同方威视技术股份有限公司 基于表来配置/执行流程和/或原子流程的方法和设备
CN110632878A (zh) * 2019-10-08 2019-12-31 上海宝阶智能科技有限公司 一种异构嵌入式表格化处理及执行动作流程的方法和装置

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ218742A (en) * 1986-06-03 1990-09-26 Fisher & Paykel Programmed logic controller
US5386464A (en) * 1991-12-19 1995-01-31 Telefonaktiebolaget L M Ericsson Feature control system utilizing design oriented state table language
JPH10207698A (ja) * 1997-01-23 1998-08-07 Toshiba Corp ソフトウェア自動生成装置
US6708144B1 (en) * 1997-01-27 2004-03-16 Unisys Corporation Spreadsheet driven I/O buffer synthesis process
DE10054196A1 (de) * 2000-11-02 2002-05-29 Siemens Ag Programmierwerkzeug
US7342942B1 (en) * 2001-02-07 2008-03-11 Cortina Systems, Inc. Multi-service segmentation and reassembly device that maintains only one reassembly context per active output port
KR20050062624A (ko) * 2002-10-18 2005-06-23 도꾸리쯔교세이호징 가가꾸 기쥬쯔 신꼬 기꼬 구조화 지식에 의거한 학습ㆍ사고기계 및 학습ㆍ사고방법과컴퓨터 시스템 및 정보생성방법
US7266088B1 (en) * 2004-03-24 2007-09-04 The United States Of America As Represented By The National Security Agency Method of monitoring and formatting computer network data
CN101180604A (zh) * 2005-02-17 2008-05-14 蒙哥耐特 通过计算机网络传输协议传送文档的数字化表示的方法和系统
US7587665B2 (en) * 2005-03-15 2009-09-08 Microsoft Corporation Method and computer-readable medium for providing spreadsheet-driven key performance indicators
CN1870028A (zh) * 2005-05-26 2006-11-29 株式会社理光 工作流程系统、工作流程处理方法和工作流程处理程序
CN101213560B (zh) * 2005-06-28 2011-06-01 松下电器产业株式会社 验证方法、信息处理装置及集成电路
US8019716B2 (en) * 2006-07-24 2011-09-13 Discovery Machine, Inc. Reflective processing of TMK hierarchies
JP4247264B2 (ja) * 2006-10-06 2009-04-02 ファナック株式会社 工作機械の制御装置
US8069129B2 (en) * 2007-04-10 2011-11-29 Ab Initio Technology Llc Editing and compiling business rules
US20090013259A1 (en) * 2007-07-06 2009-01-08 International Business Machines Corporation Server consolidation using tabular data driven processes filled at least in part using automatically generated inferred data
US8407668B2 (en) * 2007-10-26 2013-03-26 Microsoft Corporation Model based spreadsheet scripting language
US20100077260A1 (en) * 2008-09-22 2010-03-25 Mts Systems Corporation Testing machine with workflow based test procedure
CN101482819A (zh) * 2008-12-30 2009-07-15 西安交通大学 一种表格驱动的普适计算环境编程方法
JP5540537B2 (ja) * 2009-03-24 2014-07-02 株式会社オートネットワーク技術研究所 制御装置、制御方法及びコンピュータプログラム
CN101551654B (zh) * 2009-04-29 2011-01-26 深圳市众为兴数控技术有限公司 一种基于表格编程的开放式机器人控制方法及其系统
CN102270127B (zh) * 2011-05-30 2014-04-16 桂林欧博仪器技术有限公司 分析仪器流程编程和控制的方法
CN102222110A (zh) * 2011-06-28 2011-10-19 用友软件股份有限公司 数据处理装置和数据处理方法
CN102541730B (zh) * 2011-12-08 2014-08-27 北京空间飞行器总体设计部 一种航天器测试脚本语义识别与自动生成方法
US9176951B2 (en) * 2012-04-04 2015-11-03 Pilla Gurumurty Patrudu Mechanism and system for representing and processing activity models
US9182957B2 (en) * 2012-07-10 2015-11-10 Loring Craymer Method and system for automated improvement of parallelism in program compilation
MX2015003376A (es) * 2012-09-20 2016-06-24 Ifwizard Corp Metodo y sistema para simplificar ingenieria del conocimiento.
CN102999816B (zh) * 2012-12-05 2016-02-24 中邮科通信技术股份有限公司 可个性化定制业务流程的工作流引擎
CN103049494B (zh) * 2012-12-07 2017-05-24 华为技术有限公司 一种xml文档的表格存储方法及装置
US9152473B2 (en) * 2012-12-29 2015-10-06 Intel Corporation Table driven multiple passive trip platform passive thermal management
JP6247480B2 (ja) * 2013-09-12 2017-12-13 株式会社東芝 制御装置、制御システムおよび制御方法
JP5842255B2 (ja) * 2013-12-12 2016-01-13 国立大学法人東京工業大学 プログラミング言語による論理回路記述から論理回路を生成するための装置及び方法
DE102014002172A1 (de) * 2014-02-19 2015-08-20 Dräger Medical GmbH Überwachungsmonitor zur elektronischen Überwachung von Sensorsignalen im Rahmen eines Sepsismonitorings, sowie ein entsprechendes Verfahren
CN103823680B (zh) * 2014-02-24 2017-07-18 广州精攻网络科技有限公司 一种游戏业务逻辑引擎的开发方法及装置
CN104267654A (zh) * 2014-08-01 2015-01-07 中南大学 梯形图程序转换成指令表程序及其编译的方法与系统
JP6192877B1 (ja) * 2015-11-25 2017-09-06 株式会社日立製作所 データ処理システム及びデータ処理方法
CN107291606A (zh) * 2016-03-31 2017-10-24 四川大学 演绎最弱前置条件的模型和算法
ITUA20162301A1 (it) * 2016-04-05 2017-10-05 Consorzio Naz Interuniversitario Per Le Telecomunicazioni Metodo per trattare pacchetti dati attraverso una tabella di transizione di stato condizionale ed apparato che lo utilizza
CN106202025A (zh) * 2016-07-21 2016-12-07 深圳艾派网络科技股份有限公司 一种oa工作流程表单定制方法
CN108073395A (zh) * 2016-11-09 2018-05-25 于丙超 一种生成式编程方法
JP6794829B2 (ja) * 2016-12-28 2020-12-02 富士通株式会社 集約支援装置、集約支援方法及び集約支援プログラム
US11354494B2 (en) * 2017-07-10 2022-06-07 Adaptam Inc. Methods and systems for connecting a spreadsheet to external data sources with formulaic specification of data retrieval
CN107679238B (zh) * 2017-10-27 2020-10-09 杭州迪普科技股份有限公司 一种新建对象方法及装置
US11126789B2 (en) * 2017-12-21 2021-09-21 Battelle Energy Alliance, Llc Method to convert a written procedure to structured data, and related systems and methods
CN109472541A (zh) * 2018-09-03 2019-03-15 中新网络信息安全股份有限公司 一种适用于企业级oa的工作流引擎设计方法
CN109447406A (zh) * 2018-09-20 2019-03-08 武汉达梦数据库有限公司 一种创建流程的方法以及创建流程的装置
CN109542556B (zh) * 2018-10-30 2022-04-15 珠海伟诚科技股份有限公司 一种基于Activiti的流程与表单交互方法及系统
JP7265929B2 (ja) * 2019-05-20 2023-04-27 株式会社日立製作所 保守工程フロー生成装置及び保守工程フローの生成方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031137A1 (en) * 2008-02-13 2010-02-04 Rule Dynamics Inc. Method and system for authoring, publishing and rendering a dynamic interactive web page
CN105867294A (zh) * 2016-06-01 2016-08-17 华自科技股份有限公司 Plc中顺序控制方法与系统
CN108256716A (zh) * 2016-12-29 2018-07-06 同方威视技术股份有限公司 基于表来配置/执行流程和/或原子流程的方法和设备
CN107015491A (zh) * 2017-04-13 2017-08-04 北京机械设备研究所 一种顺序控制方法
CN107368055A (zh) * 2017-08-23 2017-11-21 苏州宏软信息技术有限公司 一种用于多零件装置的装配线配方控制系统及其方法
CN110632878A (zh) * 2019-10-08 2019-12-31 上海宝阶智能科技有限公司 一种异构嵌入式表格化处理及执行动作流程的方法和装置

Also Published As

Publication number Publication date
DE112020004835T5 (de) 2022-09-15
US11960890B2 (en) 2024-04-16
JP7338922B2 (ja) 2023-09-05
CN110632878A (zh) 2019-12-31
CN110632878B (zh) 2022-06-28
US20220350601A1 (en) 2022-11-03
JP2022542488A (ja) 2022-10-03

Similar Documents

Publication Publication Date Title
JP2765969B2 (ja) 図式データ駆動型プログラム開発支援装置
EP2555109B1 (en) Search utility program for software developers
CN107766045B (zh) 为机器视觉系统提供可视化程序的装置、系统和方法
CN102508654B (zh) 嵌入式可编程控制器的梯形图编辑器设计方法
US7949995B2 (en) Visual programming method
US10417355B1 (en) Systems and methods for constructing and modifying computer models
CN106293653B (zh) 代码处理方法及装置、计算机可读介质
US11960925B2 (en) Program generating device, program generating method, and information storage medium
KR19990023315A (ko) 링크 맵을 생성하기 위한 데이터 처리 시스템 및 방법
WO2012044958A1 (en) Identification of semantically relevant concepts in a graphical model
CN102591635A (zh) 软件的图形比较显示器
EP2827240A1 (en) Method for generating control-code by a control-code-diagram
JP6372308B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体
CN110968308B (zh) 一种用于改变用于生成源代码的模型的方法
WO2021068840A1 (zh) 一种异构嵌入式表格化处理及执行动作流程的方法和装置
CN111624965A (zh) 一种工业智能制造的组态系统
US7703058B2 (en) Method and system for changing a description for a state transition function of a state machine engine
CN114117645B (zh) 一种舰船总体性能预报集成应用系统
JPH08286901A (ja) ソフトウエア部品の再利用システム
JP2007219649A (ja) ダイヤグラム編集装置
WO2016190444A1 (ja) 情報管理装置並びにファイル管理方法
US10001977B1 (en) System and method for identifying operations based on selected data
Ebert et al. DiNeROS: A Model-Driven Framework for Verifiable ROS Applications with Petri Nets
JP2000231478A (ja) ソフトウェアの自動生成装置および方法、記録媒体
WO2024202057A1 (ja) プログラム開発支援装置、プログラム開発支援方法及びプログラム開発支援プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20874010

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
ENP Entry into the national phase

Ref document number: 2022520532

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 20874010

Country of ref document: EP

Kind code of ref document: A1