Bare-Metal Implementation of a Real-Time Distributed Control System Using CAN
dc.contributor.author | Olsson, Anton | |
dc.contributor.author | Sjöberg, Robert | |
dc.contributor.department | Chalmers tekniska högskola / Institutionen för data och informationsteknik | sv |
dc.contributor.department | Chalmers University of Technology / Department of Computer Science and Engineering | en |
dc.contributor.examiner | Larsson-Edefors, Per | |
dc.contributor.supervisor | Jonsson, Jan | |
dc.date.accessioned | 2022-11-29T13:42:17Z | |
dc.date.available | 2022-11-29T13:42:17Z | |
dc.date.issued | 2022 | |
dc.date.submitted | 2020 | |
dc.description.abstract | Distributed control systems consisting of several nodes connected via CAN bus are commonplace in many industrial and automotive settings. These systems often require real-time capabilities and generally utilize a real-time operating system (RTOS) in the nodes to achieve this. This thesis work explored the feasibility of developing a bare-metal implementation based on a previous RTOS implementation. Additionally, we explored any real-time performance advantages of the bare-metal implementation and if there were any compatibility issues in combining bare-metal nodes with RTOS nodes. The thesis work was conducted on a model car with several nodes with specific functions connected via a CAN bus. A node tasked with braking was converted from using an RTOS to a bare-metal implementation. The brake node was tested through a reproducible simulated test run using two different scheduling approaches. It was found that a bare-metal implementation using interrupts produced a more predictable jitter. Faster execution times were also observed due to faster driver implementation. Finally, no issues in combining nodes with different implementations were found. In conclusion, a bare-metal implementation could be beneficial in some applications with low complexity that require a small performance improvement or less jitter. | |
dc.identifier.coursecode | DATX05 | |
dc.identifier.uri | https://odr.chalmers.se/handle/20.500.12380/305837 | |
dc.language.iso | eng | |
dc.setspec.uppsok | Technology | |
dc.subject | Controller Area Network | |
dc.subject | Bare-metal | |
dc.subject | Real-time operating system | |
dc.title | Bare-Metal Implementation of a Real-Time Distributed Control System Using CAN | |
dc.type.degree | Examensarbete för masterexamen | sv |
dc.type.degree | Master's Thesis | en |
dc.type.uppsok | H | |
local.programme | Embedded electronic system design (MPEES), MSc |