Coder Social home page Coder Social logo

Kian Khaneghahi's Projects

audio-transfer-store-and-play-in-an-iot-environment-using-arduino icon audio-transfer-store-and-play-in-an-iot-environment-using-arduino

We use an Arduino Due board and Arduino ESP8266 board to implement a system that uses UART protocol to receive 10 seconds of an 8-KHz, 8-bit depth sampled audio data. (Telephone line quality) and then makes a web server and waits for clients over Wi-Fi, then displays a simple HTML page. Then, it plays audio over DAC for headphones and eventually, stored music won't be wiped after system reset. (Use Flash memory or other storages to store data)

classic-sliding-mode-control-on-a-third-degree-system-with-3-uncertain-parameters icon classic-sliding-mode-control-on-a-third-degree-system-with-3-uncertain-parameters

This project is about implementing the classic sliding mode method for controlling a third degree nonlinear system stated in the report that has 3 uncertain parameters. The first chapter is about designing the sliding mode controller and its parameters. And finally, the second chapter is devoted to simulation and its results. The results show that tracking was done perfectly but with the cost of creating the chattering phenomenon and a big overshoot in the initial moments for the control and error vectors.

distance-measure-with-ultrasonic-sensors-hc-sr04-using-arduino icon distance-measure-with-ultrasonic-sensors-hc-sr04-using-arduino

In this project, the circuit of an HC-SR04 ultrasonic sensor is created from scratch shown in the "HC-SR04 Circuit Design" image and then we program the inner microcontroller to Handle the recieve and transmit procedures. Eventually, the sensor is programmed by an outer microcontroller to measure the distance between the sensor and the obstacle. For the inner (Chinese OTP uController) and outer microcontrollers, an Arduino UNO board and an ESP8266 board are used respectively.

dtmf-tone-detection-using-matlab icon dtmf-tone-detection-using-matlab

This Project was one of the final projects of my Signals and Systems course in the university. A set of Tone Vectors are aligned with each number for them to be heard accurately and without interference. Also, Fourier transforms are used as a reverse model to find numbers based on their tones.

dynamic-sliding-mode-control-on-a-second-degree-system-compared-with-classic-smc icon dynamic-sliding-mode-control-on-a-second-degree-system-compared-with-classic-smc

This project is about implementing the dynamic sliding mode method for controlling a second degree nonlinear system stated in the report that has one uncertain parameter. The first chapter is about designing the sliding mode controller and its parameters for both dynamic and classic SMC. And finally, the second chapter is devoted to simulation and its results and comparing DSMC with CSMC. The results show that the dynamic SMC has less chattering in the control input at the cost of increasing the steady-state error.

fault-estimation-and-ftc-strategies-applied-to-vtol-aerial-vehicles icon fault-estimation-and-ftc-strategies-applied-to-vtol-aerial-vehicles

This project is used to estimate, isolate and diagnose faults for a quadcopter and a PVTOL and also use a methods to control the system by tolerating the fault. Both quadcopter and PVTOL systems have nonlinear dynamics. The ways for fault estimation in this project consist of nonlinear AO and linear PIO for the PVTOL and qLPV PIO for the quadcopter. The nominal controller in both systems uses unit quaternions. For soft fault in both vehicles, a fault accommodation method is implemented where the estimated fault is added to the nominal control signal to cancel the additive fault.

flexible-joint-manipulator-observer-in-the-form-of-a-stable-neural-network icon flexible-joint-manipulator-observer-in-the-form-of-a-stable-neural-network

In this project, an observer in the form of a stable neural network is proposed for any nonlinear MIMO system. As a result of experience, this observer utilizes a nonlinear in parameter neural network (NLPNN) which unlike LPNN, supports systems with higher degree of nonlinearity with no pre-knowledge of its dynamics. The learning rule for this neural network is based on the back-propagation method with a small modification. In addition, in order to guarantee the robustness of the observer, an e-modification term is added. Also, it is noted that there are no hard constraints like SPR on this method. Subsequently, the stability of this neural network observer is guaranteed by Lyapunov's direct method. At the end, the simulation results for a flexible-joint manipulator with this observer is demonstrated.

lipschitz-observer-design-for-a-nonlinear-system icon lipschitz-observer-design-for-a-nonlinear-system

In this project a rather brilliant observer called Thau observer or Lipschitz observer is proposed and designed to estimate the states of a special form of nonlinear systems. All the details regarding the observer design and its simulation are given in "Kian Khaneghahi - Fault Midterm - Q4.pdf" report file.

three-dof-manipulator-control-in-an-iot-environment-using-arduino icon three-dof-manipulator-control-in-an-iot-environment-using-arduino

The aim of this project was to control a 3 degree of freedom (DOF) manipulator from a web user interface and for that 2 arduino boards are needed. The first board is an arduino UNO board that is programmed to control the manipulator servo motors and also get the position(angle) of the motors from their encoders. Additionally, another arduino board is needed that has the hardware needed for connecting to a local wifi network and in this case an ESP8266 board was used. The ESP board should be programmed to first of all connect to a local wifi network by using its username and password and then create a local server and wait for local clients to use the interface and refresh the interface page everytime a client action is made. The interface itself is a simple web gui written in HTML and it has two buttons for each motor (for each direction) and they act as a push button therefore, the motors would stop when we are not pushing their buttons.

using-an-iot-gui-to-control-a-ugv-robot-using-arduino-and-rasberry-pi icon using-an-iot-gui-to-control-a-ugv-robot-using-arduino-and-rasberry-pi

There are two boards involved in this project. The first one was a Rasberry Pi 3 board that was used to interfere directly with the UGV robot and the AUT14.c file was runned within the Rasberry Pi 3 board. Although the UGV robot has 4 wheels the interface and the control sequence are written in a way that it works like a joystick with the options forward, backward, turn right and left.

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.