## 1 Introduction  
The article describes the implementation of algorithms to determine the position and orientation of the mobile robot in a certain coordinate system without the participation of the GPS positioning system. Authors divided the described task into two subsystems constantly sending messages to each other via the UART bus. The first subsystem consists of programs located in the robot control system and determines the robot's trajectory calculated from the vehicle wheels. This is called wheels odometry and it is widely used in the automotive industry. A general discussion of this solution is described in [1, 2]. Currently, designers of modern solutions to increase the accuracy of the determined robot position, use a combination of many independent positioning systems. Therefore, the authors added to the wheels odometry a vision system. A vision system with an implemented SLAM (Simultaneous Localization and Mapping) algorithm is the most often described in the literature [3]. Visual odometry is a technique used by many different robots. [PERSON] uses 3D-Odometry in the bike robots [4]. [PERSON] et al. deploy odometry in the robot which specializes in the exploration and sampling of the seafloor [5]. Current research indicates that wheels odometry are crucial for robot self-localization [6]. Such an approach may be implemented using not only the camera but also IMU and wheel encoder [7]. [PERSON] et al. proposed a solution based on MEMS IMU efficient in urban areas [8]. [PERSON] et al. proved that Cartesian odometry and PID algorithm may significantly increase the accuracy of path planning [9]. [PERSON] et al. present odometry method to estimate the pose of the robot using ORB features extraction [10]. To increase the accuracy of the self-localization process. [PERSON] et al. proposed a method based on ceiling vision [11]. Current approaches use deep learning techniques to improve visual odometry [12]. [PERSON] et al. proposed a solution which enables application of visual odometry in non-cooperative environment, for example in the night [13]. The partial differential of the pixel grayscale is another method for improving the performance of visual odometry in difficult conditions [14]. In this article, the vision system only provided position corrections, and was geared toward finding characteristic landmarks. The problem with landmarks was studied by [15]. The OpenCV library algorithms are used [16], where the authors use ARTags in augmented reality. Due to the autonomous movement of the robot, the issue of safety arises during the physical interaction of a human with a robot [17]. The vehicle presented in this paper belongs to a group of vehicles called unmanned ground vehicles (UGV), where an important task of their creators is to develop navigation algorithms to improve their ability to operate in difficult terrain [18]. The UGVs are robots that move and make decisions based on various algorithms both deterministic and artificial intelligence. While driving, vehicles use their sensors to avoid obstacles or locate their position in the environment. These abilities make that, this kind of vehicles are increasingly important in terms of replacing humans in many missions that are dangerous for them. The vision system described by the authors aims to remove positioning errors coming from other sensors of the robot. This error is often the cause of slippage. There are studies that reduce slippage not only for wheeled vehicles [19]. To check the correctness of the implemented subsystems, a mobile robot was designed and built [20]. In addition, many tests were performed on the test track. This track was precisely measured and a map was made based on these measurements. Control points and the position of graphic markers--ARTags--were placed on the map. The experiment assumed that the robot autonomously would be able to move from the starting point to the next and subsequent checkpoints with the greatest accuracy.