8. AI Development8. AI Development\8.3 Statement type

8.3  Statement type

The CSR-Rescue uses sequential programming technique. The compiler executes the program statements sequentially in a “top-down” manner. Therefore, the order of the statements in the program plays a very important role in deciding the priority of statements with the same type.

In order to synchronize the virtual robots and maintain real-time data updating, the CSR-Rescue Simulator automatically scans all sensors’ readings in an interval of 60 ms. In other words, all the variables associated with sensors will be updated every 60 ms. Fig. 8-16 shows the program execution flow.

Fig. 8-16: Program execution flow

The priority of each statement is set in statement type.

The type of the statement has to be specified when each new statement is added. There are three types of statements for different requirements, namely default action, non-interrupt action and super action as shown in Fig. 8-17.

Fig. 8-17: Statement types

Default action

v  The default action statement has the lower priority comparing to the Super action. A project can contain many default action statements.

Non-interrupt action

v  The non-interrupt statement has the same priority as the default statement. When the non-interrupt statement is executed, it will not be interrupted or terminated unless:

1.    The exit action condition is met.

2.    The super action statement is executed.

v  When the non-interrupt action is specified, it is necessary to define an exit condition for this action. That means the non-interrupt statement will only be terminated when the specified exit condition is true.

v  A project can contain many non-interrupt action statements.

Super action

v  The super-action statement has the highest priority. Once the condition for the statement is true, it will be executed immediately. All other actions will be interrupted.

v  A project can contain many super action statements.

 

Top of Page