Skip to main navigation Skip to search Skip to main content

Hardware-in-the-Loop Simulation of a 3-DoF Quadcopter

Research output: Contribution to journalConference articlepeer-review

Abstract

Hardware-in-the-Loop (HIL) simulation is a practical step in the development and validation of unmanned aerial vehicle (UAV) controllers. This paper investigates 3-DoF quadcopter attitude modelling and control within a Controller Hardware-in-the-Loop (C-HIL) framework. The experimental setup executes the attitude plant model in an OPAL-RT real-time environment and runs a discrete PID controller (PI for yaw) on a TI LaunchXL-F280049C microcontroller, with analog/digital I/O exchange at 1 kHz. The evaluation focuses on step-response tracking and end-to-end timing (latency) in the closed loop. Results show that the embedded PID/PI implementation achieves stable tracking with small steady-state error while revealing real-time implementation effects such as quantization and saturation. Key implementation details (models, scaling, and I/O mapping) are documented to support replication; complete project files are available from the authors upon reasonable request.

Original languageEnglish
Pages (from-to)521-526
Number of pages6
JournalInternational Multi-Conference on Systems, Signals, and Devices, SSD
Issue number2026
DOIs
StatePublished - 2026
Event23rd International Multi-Conference on Systems, Signals and Devices, SSD 2026 - Catania, Italy
Duration: 31 Mar 20261 Apr 2026

Bibliographical note

Publisher Copyright:
© 2026 IEEE.

Keywords

  • Controller-in-the-Loop
  • Hardware-in-the-Loop simulation
  • OPAL-RT
  • PID Control
  • Quadcopter
  • Real-Time Systems

ASJC Scopus subject areas

  • Artificial Intelligence
  • Computer Networks and Communications
  • Information Systems
  • Signal Processing
  • Safety, Risk, Reliability and Quality
  • Control and Optimization

Fingerprint

Dive into the research topics of 'Hardware-in-the-Loop Simulation of a 3-DoF Quadcopter'. Together they form a unique fingerprint.

Cite this