The installation error of odometer, accidented and smooth ground environment are the main reason which influence the positioning accuracy of odometry of robot. In order to solve this problem, the system error model was defined by UMBmark check algorithm first; Then an identification algorithm based on the measured data from gyroscope which inside in the robot was put forward, which can identify the nonsystematic error that caused by the robots when they move in a straight line. The fuzzy neural network(FNN) model was established by the input of given control and data of odometer, which can correct the serious positioning and direction error that resulted from nonsystematic error. The effective of this approach was proved by the strive robot of Shanghai University finally.