본문 바로가기
KERD
논문KCI 등재

자율 기기를 위한 속도가 제어된 데이터 기반 실시간 스트림 프로세싱

Rate-Controlled Data-Driven Real-Time Stream Processing for an Autonomous Machine

0

조회

0

다운로드

1

인용

0

참고문헌

키워드

초록

Due to advances in machine intelligence and increased demands for autonomous machines, the complexity of the underlying software platform is increasing at a rapid pace, overwhelming the developers with implementation details. We attempt to ease the burden that falls onto the developers by creating a graphical programming framework we named Splash. Splash is designed to provide an effective programming abstraction for autonomous machines that require stream processing. It also enables programmers to specify genuine, end-to-end timing constraints, which the Splash framework automatically monitors for violation. By utilizing the timing constraints, Splash provides three key language semantics: timing semantics, in-order delivery semantics, and rate-controlled data-driven stream processing semantics. These three semantics together collectively serve as a conceptual tool that can hide low-level details from programmers, allowing developers to focus on the main logic of their applications. In this paper, we introduce the three-language semantics in detail and explain their function in association with Splash’s language constructs. Furthermore, we present the internal workings of the Splash programming framework and validate its effectiveness via a lane keeping assist system.

Abstract

Due to advances in machine intelligence and increased demands for autonomous machines, the complexity of the underlying software platform is increasing at a rapid pace, overwhelming the developers with implementation details. We attempt to ease the burden that falls onto the developers by creating a graphical programming framework we named Splash. Splash is designed to provide an effective programming abstraction for autonomous machines that require stream processing. It also enables programmers to specify genuine, end-to-end timing constraints, which the Splash framework automatically monitors for violation. By utilizing the timing constraints, Splash provides three key language semantics: timing semantics, in-order delivery semantics, and rate-controlled data-driven stream processing semantics. These three semantics together collectively serve as a conceptual tool that can hide low-level details from programmers, allowing developers to focus on the main logic of their applications. In this paper, we introduce the three-language semantics in detail and explain their function in association with Splash’s language constructs. Furthermore, we present the internal workings of the Splash programming framework and validate its effectiveness via a lane keeping assist system.

참고문헌 (12)

  1. S. Noh, "Splash: a graphical programming framework for an autonomous machine", 2019 16th International Conference on Ubiquitous Robots (UR) (2019)
  2. R. Gerber, "Guaranteeing real-time requirements with resource-based calibration of periodic processes", IEEE Transactions on Software Engineering, 21(7) (1955)[DOI]
  3. C. Breshears, "The art of Concurrency" (2009), O'Reilly Media, Inc
  4. "Lane Keeping Assist with Lane Detection"[URL]
  5. E. A. Lee, "Dataflow process networks", Proceedings of the IEEE, 83(5), pp.773~801 (1995)
  6. "Vortex OpenSplice documentation"[URL]
  7. "Data Distribution Service (DDS) Version 1.4, formal", 2015-04-10, 2015
  8. "Vortex OpenSplice"[URL]
  9. N. Kim, "Visual Assessment of a Real-Time System Design: A Case Study on a CNC Controller", 17th IEEE Real-Time Systems Symposium (1996)
  10. "Simulink"[URL]
  11. N. d. Lac, C, "RTMaps: real time, multisensor, advanced prototyping software", 3rd National Conference on Control Architectures of Robots (2008)
  12. J. Eker, "Taming heterogeneity - the Ptolemy approach", Proceedings of the IEEE, 91(1), pp.127~144 (2003)

관련 논문AI추천

이 간행물의 다른 논문 (16건)