JetPackJoyRide
Loading...
Searching...
No Matches
JetPackJoyRide - Instrument Cluster

Jetracer

📌 About

The Instrument Cluster project aims to design a viable system for a Jetracer car and create a real-time infotainment system for it. The application(s) will run on a Raspberry Pi 4 and use the Controller Area Network (CAN) protocol to receive speed data from a speed sensor, and the I2c protocol as the communication protocol used to control the motors of the car. This project provides hands-on experience in software engineering, including embedded systems, communication protocols, and GUI development with Qt, a framework widely used in the automotive industry.

The project showcase our ability to design and implement real-world software solutions and effectively communicate results.

Code documentation can be found here: JetRacer Documentation


📁 Repo structure

  • Jetracer: ROS2 workspace with the source code running on the raspberryPi
  • JetRacer_container: Contain the Dockerfile to build the project in a container as well as launch script to put the container up with access rights to essential hardware components.
  • ECU_code: code running on the Arduino Uno

🔧 Hardware

  • Raspberry Pi 4: Ideal for handling the computational requirements of real-time GUI and CAN data processing.
  • Jetson nano: Ideal for handling image processing / machine learning (GPU accelerated computation)
  • Arduino uno: Acts as an Electronic control unit collecting speed sensor data and controlling blinker state
  • CAN Bus Interface: MCP2515 for interfacing with the Raspberry Pi 4.
  • Speed Sensor: LM393 infrared speed sensor.
  • Display: LCD display for GUI visualization.

🎯 Goals and Objectives

Main Goal

To develop a functional instrument cluster for the JetRacer car, displaying real-time speed data from a speed sensor via the CAN bus among other sensor and system infos.

Specific Objectives

  • Design and implement a Qt-based graphical user interface (GUI).
  • Integrate a speed sensor system with the Raspberry Pi 4 using the CAN bus protocol.
  • Display real-time speed data on the instrument cluster GUI.
  • Test functionality using realistic driving scenarios.
  • Document the project, including system architecture, design, and implementation.

Bonus Objective: Display battery level on the instrument cluster.