Sicnce that applications of robots become more complex and task of robots becomes more diverse,it is required that mobile robots not only have a realible task execution system,but also have the certain reasoning ability.An approach is presented to design the task execution and reasoning system for mobile robot based on Petri nets(PNs).The purpose is to short the development cycle and to avoid logic errors in designing robot system.The main contents are as follows:1.A propositional logic reasoning method is proposed for knowledge reasoning of robots based on PNs.After a robot's environment and the inference rules are expresed by a PN,reasoning method is presented for a given observation sequence based on the PN.Furthermore,for uncertain reasoning problem,a method is obtained based on the PN model and the joint probability.2.For the system whose successor function is known,the PN is designed to describe the premise,consequence and cost of the actions.Consequently,an action planning method is given via this PN and the A* algorithm.It can be used to obtain the action sequence from an initial state to a target state.3.The tasks of vehicle robots are decomposed into small functional units and represented by PN building blocks with a unified structure.The method is presented to link PN building blocks with external transitions.As a result,the execute PN(EPN)of a robot is obtained to realize the design of the task execution system.The C programs for executing EPNs and PN building blocks are also designed.4.Wumpus World is taken as an illustraction example.An automatic vehicle is built up and used as the mobile robot to perform experiments.Futher,the experimental result display platform is designed with Matlab.Finally,Its task execution and reasoning system is designed based on the proposed reasoning method and EPN,and the methods are verified by experiments.The approach can use the intuitive and understandable advantages of PNs to express the process of task execution.Meanwhile,it is convenient to use PNs analysis tools for program verification.Moreover,the incidence matrix can be used to transform complex calculation into linear algebraic calculation,which is convenient to adapt to various programming environments. |