AbstractsComputer Science

Application for Debugging and Calibration of an Underwater Robot

by Patrik Lannebjer




Institution: Mälarden University
Department:
Year: 2014
Keywords: AUV; calibration; debugging; logging; Zlog; Log4c; grammar; lexical analysis; parsing; TCP; UDP; Engineering and Technology; Electrical Engineering, Electronic Engineering, Information Engineering; Computer Systems; Teknik och teknologier; Elektroteknik och elektronik; Datorsystem; Datavetenskap; Computer Science
Record ID: 1355461
Full text PDF: http://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-26132


Abstract

In this thesis we present a suitable way of calibrating and debugging an autonomous underwater vehicle (AUV). The issues that occur when working with an AUV are the inconvenient way of having to constantly recompile the software to change the behavior of the AUV and the lack of feedbacksreceived. If the vehicle does not behave as it should the information needed to be able to trace and fix the problems that occur isin general difficult to retrieve. To tackle this problem a literature study was made on logging libraries, communication protocols as well as AUVs in general. This resulted in identifying a set of existing logging libraries and possible communication protocols. From testing and analyzing these results, Zlog was chosen as the logging library and UDP as the communication protocol. Zlog has then been used in the AUV application to log relevant information on the AUV and UDP allows establishing a connection between the AUV and a desktop program created for Windows to send this logging information to. The desktop program also allows filtering of any incoming logs with the use of a parser. This has been an essential part of the solution to be able to identify specific logging data and help presenting this in a convenient way. To be able to change the format of the log file, the parser has been given a grammar which can be adjusted to adapt to a different log file. Additionally, the desktop application has the ability to send commands to the AUVapplication via the UDP connection to change the behavior of the AUV live.