gwu-cs-iot / collaboration

Spring '20 IoT - systems and security class. This is the collaborative half of the class.
https://www2.seas.gwu.edu/~gparmer/classes/2020-01-01-Internet-of-Things-Systems-Security.html
MIT License
14 stars 26 forks source link

Paper discussion: 13b. End-to-End Analysis and Design of a Drone Flight Controller #102

Open gkahl opened 4 years ago

gkahl commented 4 years ago

Please add your feedback and reviews below.

Edit: As everyone has said, I think we can all agree that the equations and timing analysis explanation was overly complicated. We will be looking at these equations tomorrow, and hopefully I can break them down into easier to digest bites.

@mralexjacobson Alex Jacobson had a good question on what is exactly meant by composability easing the end to end calculation time. @ericwendt Eric Wendt brought up good points about how security would affect the timing requirements, and whether there is a default task running. He also asked about how the pipes are modeled, hopefully this will be cleared up during the presentation. @lrshpak Lily Shpack asked about how turning off noncritical functions off affects the drone, how the pipe model is an improvement, and whether the pipe communication model slows down the drone. I hope to address these during the explanation of the pipes.

jacobcannizzaro commented 4 years ago

Reviewer: Jacob Cannizzaro Type: Comprehend/Skim

Problem: If there aren’t timing guarantees between sensors and drone processing, then the system can fail. If there isn’t a bounded wait on between sensor readings and virtual or physical actuation, then an autonomous drone may lose control in the air.

Main Contributions: This paper introduces a pipe model that is able to take a set of tasks, and with analyzation, produce a set of time periods and budgets for those tasks that need to be done. This is implemented within a refactoring of a real-time flight controller called Cleanflight used for autonomous drone control. The Experiments show that the system is able to keep latencies within the bounds of the analyzed time budgets.

mralexjacobson commented 4 years ago

Reviewer: Alex Jacobson Type: comprehend/skim

Problem: In order to achieve an autonomous drone, there are constraints on the data. Specifically, data freshness and reaction time. The drone must be able to react to input data within a certain time frame: the data it is reacting to must still be relevant! Likewise, if the drone is to react to data, that data must be fresh enough: You don’t want the drone to react to altitude data indicating that the drone is too low if the drone is currently at a safe altitude (the altitude data is no longer fresh).

Solution: The author’s were able to solve the problem and meet the time constraints. They did this by taking drone software that accepts human inputs, and adapting it to run on their own in house operating system. Using the remaining cores of the processor, data will be gathered and piped into the drone software that is expecting human inputs.

Questions: I find it difficult to understand all the calculations that somehow achieve the stated goal. Also, the paper states that composability is a key aspect of the pipe model since is eases the end to end time calculation. My question regards the use of the term eases. Does that mean decreases, as in “composability is a key aspect of the pipe model since it decreases the end to end time calculation”?

chandaweia commented 4 years ago

Reviewer: Cuidi Wei Review Type: Comprehension/Skim Problem: End-to-end delay between sensing, processing, and actuation have great impacts on embedded and cyber-physical applications. Therefore, how to satisfy both schedulability and end-to-end semantics is a big problem to solve.

Main contributions: This paper proposes a composable pipe model for sensor data processing and actuation tasks to guarantee bounded end-to-end processing and communication delay amongst a set of independently activated tasks assigned to bandwidth-preserving server. Also, the paper provides a method to derive task periods and budgets and do the reimplementation and evaluation of the Cleanflight flight controller on the Quest RTOS.

AkinoriKahata commented 4 years ago

Reviewer: Akinori Kahata Review type: Comprehension/skim

  1. The problem being solved.
    • Some applications of Cyber-Physical systems, which are consist of many sensors and actuators, have time constraints from starting input data to finishing output by actuators. During input and output, there are many tasks, and each task has a dependency on other tasks. To keep the time constraint of application, RTOS of the cyber-physical system should control and manage CPU and memories to execute each task in the time constraint.
  2. The main contributions.
    • This paper proposed the RTOS Quest, which manages each task for keeping time constraints, such as End to End reaction time and freshness time. The researchers showed the result of the evaluation that Quest can manage the tasks of Cleanflight better than time constraint. Also, they showed the result of Quest is better than Linux RTOS.
grahamschock commented 4 years ago

Reviewer: Graham Schock Review type: Comprehension/skim

The Problem Being Solved Cyber physical systems rely on a lot of sensor data and produce a lot of actuation in order to interact with the physical world. A lot of this data is communicated through a task pipeline. A task pipeline is a set of data processing elements that are connected where the output of one is fed into the other. However, cyber physical systems have strict deadlines as timing guarantees are crucial. This is especially true in a drone.

Main Contributions This paper brings up a new pipe model that factors in tasks, scheduling and communication between components. They are able to determine freshness time of this model within a drone flight controller. Furthermore, they provide experimental validity and show that they are able to meet deadlines.

ericwendt commented 4 years ago

Reviewer: Eric Wendt Review type: Critical

Problem being solved For a device such as a drone, it is imperative that commands issued to it are being completed in a timely fashion. Latency must be reduced wherever possible to avoid risk of crashing.

Main Contribution The main contribution of this paper is to provide a framework for device interactivity in drone controllers. There are many points of failure that can result in a task not being completely fast enough, or even being completed at all. Three latency examples they address are processing, communication, and scheduling latency. Processing refers to "the time it takes for a task to translate raw input to a processed output." Communication refers to the time it takes to transfer data. Scheduling is the time it takes to schedule events. This paper provides many equations for predicting the worst case times that events will be processed.

Critiques

Questions

nikorev commented 4 years ago

Reviewer: Niko Reveliotis Review Type: Comprehension (Skim Edition)

Problem Being Solved

Cyberphysical systems follow the procedure of sensing, processing, and actuation. This paper refers to this procedure as the processing pipeline between sensing and actuation. With more advanced machines containing more complex sensors and actuators, it is imperative that we complete this process within a suitable timeframe to ensure the data is fresh and the actuation is accurate. Failure to adhere to this strict timeframe can create system instability as the actuation won't be accurate to the current state of the machine.

In this paper they apply this concept to a drone, and show how their pipeline can ensure that all deadlines are met, keeping the drone stable.

Main Contributions Because they were outlined so clearly, I decided to quote the listed contributions listed from the introduction

lrshpak commented 4 years ago

Reviewer: Lily Shpak Review Type: Critical

Problem Being Solved

The authors of this paper want to develop a system that has end-to-end timing guarantees and is supported by real-time task pipelines. They want to do this so they can easily and securely relay data from sensors to the computational piece of the device. Since lots of cyber-physical devices have sensors that are critical to the function of the device, this is an important problem to solve.

Main Contributions

The authors use an autonomous drone that uses a firmware called CleanFlight. They modeled the flight control with a set of real-time periodic tasks. They also use a communication model with implicit communication. The authors also use pipes to send the information between the sensors.

Questions

  1. The authors said they turned off nontime-critical functions for testing such as the black box, but isn't that still an important feature that could affect actuation?
  2. Will the memory space needed for the communication pipe slow down the operation of the drone?
  3. Why is using pipes for communication better than what already was in place?

Critiques

  1. I thought there were a lot of equations in this paper that clouded what was actually being solved in the paper.
  2. I thought it was good how they immediately introduced their testing model. I think this makes it easier to understand background knowledge on the topic because you have a tangible example of a device that has this problem.