Skip to content

A Qt Program to Imitate an FPGA which is responsible for trasmitting health info of JetMotors using Serial Communication.

Notifications You must be signed in to change notification settings

slotfi909/JetMotor

Repository files navigation

JetMotor: Aircraft Engine FPGA Simulator

A Qt-based application that simulates FPGA behavior by generating realistic aircraft engine sensor data and transmitting it via serial communication using the specified protocol.

📋 Project Overview

This simulator mimics the functionality of an FPGA unit that collects sensor data from aircraft engines and transmits it through serial ports. It generates synthetic but realistic sensor data following the exact protocol specification for aircraft engine monitoring systems.

🚀 Features

  • Protocol Compliant: Implements the exact serial communication protocol from the specification
  • Realistic Data Generation: Simulates authentic sensor data patterns for all engine parameters
  • Qt-based GUI: User-friendly interface for configuration and control
  • Serial Port Management: Automatic scanning and connection to available serial ports
  • Real-time Simulation: Configurable data transmission rates
  • Multiple Sensor Support: All sensor types from the specification (Oil Pressure, Temperature, Fuel Flow, EGT, etc.)

🛠️ Protocol Specification

The simulator follows the protocol defined in the project documentation:

Message Structure

HEADER:     0xA5 0xA5 0xA5 0xA5 (4 bytes)
MSG COUNTER: UINT8 (1 byte)
ID NUMBER:   UINT8 (1 byte) - Number of data items
[REPEATING DATA BLOCKS]:
  ID:       UINT8 (1 byte)
  RESERVE:  0x00 (1 byte)
  DATA:     UINT32 (4 bytes) - Little-endian
  FACTOR:   UINT32 (4 bytes) - Little-endian
CHECKSUM:   UINT16 (2 bytes) - From MSG COUNTER to last FACTOR
FOOTER:     0x55 (1 byte)

Supported Sensor IDs

ID Parameter Range Unit
0x01 Oil Pressure 0-1000 psi
0x02 Oil Temperature 0-400 °C
0x03 Fuel Flow 0-800 kg/h
0x04 Fuel Level 0-800 kg
0x05 EGT 0-400 °C
0x06 Torque 0-400 N·m
0x07 Indicated Power 0-400 kW
0x0B Motor Speed 0-1000 RPM
... ... ... ...

📸 Application Interface

Screenshot (293) *Main application window showing serial port configuration and data transmission controls* Screenshot (294) *Real-time data generation and transmission monitoring interface*

Note: This simulator is designed for development and testing purposes. Always validate with actual hardware in production environments.

About

A Qt Program to Imitate an FPGA which is responsible for trasmitting health info of JetMotors using Serial Communication.

Resources

Stars

Watchers

Forks

Packages

No packages published