Robotic systems are involved in our daily lives and the amount of traction they have received is non-negligible. In spite of their sizeable popularity, the quality of their software is often dismissed. That may hinder an important property of robotic systems: safety. The movement of mobile robots introduces an obvious safety concern. The collision of a robot with various things can lead to disastrous results. By amplifying the development process with formal verification techniques, one can decrease the probability of such failures. In order to facilitate close integration of safety assurance and the development process, we propose a method to develop safe software for ROS 2-powered mobile robots. We conduct a case study by going through all the proposed steps and reporting the results. The case study focuses on a scenario in which mobile robots move from a starting position to the target position. Models of various ROS 2 components utilised in mobile robots are developed. Extensibility is a core property of our model. We show that it allows to verify both single- and multi-robot scenarios. Furthermore, that flexibility allowed us to model two path-finding approaches: one naive approach without collision avoidance and one efficient approach based on the A* algorithm. The proposed method is tightly coupled with modelling, hence, the abstraction will lead to some mismatches between the model and reality. We report such mismatches by deploying the developed software to a simulation environment (i.e. Gazebo) and examining the behavior of the robot(s).
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:mdh-48682 |
Date | January 2020 |
Creators | Sharovarskyi, Kostiantyn |
Publisher | Mälardalens högskola, Akademin för innovation, design och teknik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0016 seconds