Abstract

Recent developments in computing, sensing, and control have enabled the development of complex robot autonomy systems. Most such stacks involve time-critical tasks such as aerial vehicle control/collision avoidance and several noncritical tasks such as sensor processing and estimation. The vast majority of this software is written in low-level languages such as C/C++ with no formal platform support for expression of timeliness requirements requiring the developer hand-tunes algorithms and manually verify their effectiveness. However, other embedded real-time (RT) systems have successfully leveraged higher level languages such as Java (and its RT variants) for timeliness specification. Such platforms allow developers to specify their requirements and the platform ensures they are met, allowing the developer to focus on algorithm development rather then how they may affect critical system timeliness. In this work, we port a popular Unmanned Aerial Vehicle (UAV) autopilot called Paparazzi UAV to Java and the Real-Time Specification for Java (RTSJ). In simulation, we demonstrate that by leveraging a RT Java Virtual Machine (JVM), which uses Real-Time Operating System (RTOS) scheduling, predictable timeliness can be achieved when compared to a standard JVM.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call