Giter Site home page Giter Site logo

sh3r4zhassan / active_noise_cancellation_simulink Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 676 KB

This Simulink Model actively cancels an input sound

activenoisecancellation simulink matlab simulation-modeling active-noise-control active-noise-cancelling

active_noise_cancellation_simulink's Introduction

Active_Noise_Cancellation_Simulink

Goal of this ANC model is to remove all the sounds at a point (input). This is achieved by actively cancelling this noise by generating an audio which destructively interferes with it.

Components of the ANC

Functionality of different components used can be seen below

Noise source:

The noise source consists of “from multimedia” block. This is used to take a sound file as input. For files that are stereo, i.e., with 2 channels, "select columns" block is used which selects one of the 2 channels of the file input. This is because the ANC model is designed for mono files.

Primary Path and Secondary path:

The primary path represents the transfer function for the sound in its primary path. This will be the sound which we would hear without active cancellation. Similarly, the "estimated sec. path" represents the transfer function on secondary path. This is used to predict noise and estimate anti-noise. Both functions are polynomials and are adjusted by hit and trial to achieve cancellation on most of the sounds. The sound from secondary path is given as input to the LMS (least mean square) algorithm. The error, that is the sound heard which should have been suppressed, is given to the algorithm in addition. The algorithm calculates coefficients for LMS. The transpose of the output, the LMS coefficients vector is:

  1. Saved to the variable “simout”.
  2. Fed to the LMS filter copy. This generates the cancelling audio which is passed through the transfer function of the secondary path.

The summation of cancelling audio and audio from primary path gives the error which is fed to LMS algorithm. The error and primary sound are fed to a multiplexer to display simultaneously on single scope. A speaker is also attached to error sound.

active_noise_cancellation_simulink's People

Contributors

sh3r4zhassan avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.