Skip to content

Gautham-8066/Virtual-CAN-Bus-Data-Acquisition-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏎️ Virtual CAN Bus Data Acquisition System (Digital Twin)

Python Platform Protocol

A simulation of an automotive CAN (Controller Area Network) architecture running entirely in software. This project implements a Digital Twin of a vehicle's telemetry system, featuring a simulated Engine Control Unit (ECU) and a real-time Dashboard with Signal Processing.Recognizing that real-world sensor data is never clean, we intentionally injected random noise into the simulation to mimic physical interference. The dashboard then processes this raw, jittery stream through a Moving Average Filter to recover and visualize a smooth, accurate signal. Screenshot from 2025-12-06 16-18-33

Screenshot from 2025-12-06 16-19-00

Project Overview

In automotive engineering, testing software on real vehicles is dangerous and expensive. This project solves that by emulating the hardware layer in Linux RAM.

  • The Engine: A Python script acting as an ECU, generating telemetry data (RPM, Speed) with realistic physics (gear shifts, acceleration) and simulated sensor noise.
  • The Network: Uses the Linux Kernel's vcan (Virtual CAN) module to create a virtual twisted-pair copper wire.
  • The Dashboard: A real-time plotting tool that listens to the bus, decodes binary packets, and applies a Moving Average Filter to smooth out the simulated sensor noise.

🛠️ Architecture

The system follows a decoupled Producer-Consumer architecture:

graph LR
    A[Engine Simulator] -- CAN Frame (ID 0x100) --> B((vcan0 Bus))
    B -- Raw Binary --> C[Dashboard DAQ]
    C -- Filtered Data --> D[Real-time Graph]
Loading

About

A simulation of an automotive CAN (Controller Area Network) architecture running entirely in software. This project implements a Digital Twin of a vehicle's telemetry system, featuring a simulated Engine Control Unit (ECU) and a real-time Dashboard with Signal Processing.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages