Benefits and challenges of data logging for mobile robots
Let us say that by now you have found your niche within robotics, learnt programming for robotics and played around with the basic line follower robot. The next step is to gear up for a real-world deployment of a physical robot platform so that you can get exposure to the deployment challenges and do something meaningful.
When it comes to deploying mobile robotics, an often overlooked but very important component is data logging of various parameters relevant to the robot’s environment. Data logging enables the robot to record a detailed log of the different inputs it receives from its sensors, and the different actions that it takes. In this way, logged data helps predict errors, continuous improvement of the algorithms, and debugging of the robot’s onboard software without having to redo the experiments over and over.
Data-driven approaches allow for repeatability which is beneficial for iterative improvements. In this blog post, we will explore the benefits and challenges of data logging for mobile robots and dispel some common misconceptions about this process.
Why does a mobile robot need to log data?
Data logging is very important for the mobile robot to successfully accomplish the desired task. It allows the robot to record data related to its internal states, the environment, and its performance.
This data can be used to improve the robot’s algorithms and to identify and fix bugs in the code without having to redo the entire experiment each time. Thus, a poorly designed data logging system can lead to data which is incomplete or unreliable, making it extremely difficult to debug and improve the robot’s performance.
Moreover, data logging can be used to analyze historical and current trends of different environmental aspects related to the robot, such as terrain, obstacles, and surrounding objects. This can be used to identify potential risks, plan routes and trajectories, and navigate accordingly.
Data logging is often considered as an after thought when in fact it should be an integral part of the experiment design so as to ensure all relevant parameters are being carefully logged.
Types of data logging for mobile robots
When it comes to data logging for mobile robots, there are two primary types to be aware of: sensor data logging and operational data logging.
Sensor data logs
Sensor data logging involves recording the output and input of any sensor(s) the mobile robot is using during the mission. This data helps to evaluate the robot’s performance, traffic movements, and more. It can also provide insights into the environment the robot is operating in, such as by displaying movements over time.
Operational data logs
Operational data logging is the process of recording a robot’s operating data, such as power usage, temperature monitoring, and any errors that occur. This type of data is used to assess the robot’s overall reliability and performance.
Where does a mobile robot log the data?
Be it the sensor logs, operational logs or both, a mobile robot needs to understand where to log the data. There are primarily two options for generating and storing data logs:
On-board data logging
As the name suggests, this type of logging happens on-board the robot and hence it requires on-board storage. This can be achieved either using a Raspberry Pi with external memory or even with an Arduino microcontroller.
Remote data logging
Think of this as off-board or remote data logging wherein the data to be logged is shipped away from the robot using the Internet or an adhoc Wi-Fi network. This data could then be assimilated either on a base station or on a cloud.
Either of these logging methods works whether or not you control your robot platform using the Robot Operating System (ROS). In case you do use ROS, you can easily log the data using the intrinsic bag format.
Challenges of data logging
Data logging for mobile robots also comes with some challenges, such as:
Security risks: Data logging can bring risks of unauthorized access or data breaches. It is important to use secure data storage and access methods.
Data size: As the data collection process runs over time, the size of the data acquired grows. This can create storage and bandwidth challenges.
Logging frequency: Another challenge that also contributes to the growing data size is the data logging frequency. If the data is logged too frequently, the dataset size explodes much sooner. On the other hand, very infrequent logging may result in very sparse data that may not yield usable analytics.
Data corruption: If the data read-write process is not managed properly while programming the data logger, it can easily corrupt the data rendering the entire data log file or perhaps some parts of it unusable.
Common misconceptions about data logging
There are a few common misconceptions about data logging for mobile robots.
First, there is often the notion that data logging is a time-consuming and expensive process. In reality, data logging can be a relatively easy (just a few lines of code) and affordable undertaking with the right technology.
Second, some people think data logging is only useful for advanced high-end robots. In fact, data logging can be used for a wide range of mobile robots, from basic devices to more advanced ones.
Finally, many people think that data logging has no real benefits and hence, it is often an afterthought. However, as we have seen, data logging can bring numerous advantages and help improve the safety, reliability, and efficiency of robots and should always be intricately considered when designing experiments.
Data logging for mobile robots can be a useful tool for ensuring the safety, reliability, and performance of the technology. While there are some challenges associated with data logging, the benefits far outweigh the negatives. As our robots continue to become more complex, data logging will become increasingly important. Understanding its advantages and challenges will help us to get the most out of our robotic technology.