We got motivation to make gimbal because it is used in most of application. Specially it used to stablize the camera and we know that in today's word how much the importance of camera?. Almost camera is used every where in every application for instance it is used in drones,vehcles etc. It is very useful for those who make videos of snowboarding, skiing, playing basketball and other sports, People who love to take videos of their cats and follow them around the house to capture crazy and funny moments. and it is also very useful for professional videographers.



HIGH LEVEL DESIGN:

Working principle of a gimbal is very simple.It uses MPU6050 Gyroscope sensor which detects the motion of body and genrates a signal and it goes to microcontroler.That microconroler controls the motors accordingly.



  • Major components used in project and their brief description.

  • Atmega328 IC
  • The Atmega328 is a very popular microcontroller chip produced by Atmel. It is an 8-bit microcontroller that has 32K of flash memory, 1K of EEPROM, and 2K of internal SRAM. The Atmega328 has 28 pins.It has 14 digital I/O pins, of which 6 can be used as PWM outputs and 6 analog input pins. These I/O pins account for 20 of the pins.


    Pin Configuration

  • 2 Servo Motors
  • A servo motor is a rotary actuator or motor that allows for a precise control in terms of angular position, acceleration and velocity, capabilities that a regular motor does not have.The function of the servo motor is to receive a control signal that represents a desired output position of the servo shaft and apply power to its DC motor until its shaft turns to that position. A servo motor is controlled by controlling its position using Pulse Width Modulation Technique. The width of the pulse applied to the motor is varied and send for a fixed amount of time.The pulse width determines the angular position of the servo motor. For example a pulse width of 1 ms causes a angular position of 0 degrees, whereas a pulse width of 2 ms causes a angular width of 180 degrees.

    Pin configuration





  • MPU6050 Gyro Sensor
  • It combines 3-axis Gyroscope, 3-axis Accelerometer and Digital Motion Processor all in small package. Also, it has additional feature of on-chip Temperature sensor. It has I2C bus interface to communicate with the microcontrollers.

    Pin configuration




    Communication Protocol:


    This module uses I2C protocol in order to communicate with arduino nano, the MPU6050 sensor will collect the data and that data will be communicated with arduino nano to perform specific task.



    Bill of material used in project





    Deligation of Tasks

    Almost We worked togeather in project making.


    We have visited the following webpages for our refrence,guidence as well as for understanding.

    We are thankful to following webpages holders,really speaking these webpages were very helpful.

  • "http://fab.cba.mit.edu/classes/863.16/section.Harvard/people/Liu/Gimbal/Gimbal.html"

  • https://github.com/rkubera/ServoGimbal

  • https://howtomechatronics.com/projects/diy-arduino-gimbal-self-stabilizing-platform/

  • https://www.youtube.com/watch?v=acnLgZ4MiiI

  • https://www.robotshop.com/community/blog/show/how-to-use-multiwii-as-a-servo-based-gimbal-stabilizer


  • DESIGN

    Electrical Circuit Design

    In the following electrical schemetic we have used Atmega328 for controlling the motors and execute the signal given by gyro sensor then it will genrate a signal that will operate motors accordingly.We have used Gyro Sensor(mpu6050) that will sence the motin for that we have used 8 pin female connector.We have used crystal oscilator.Which is used in the microprocessors and microcontrollers for providing the clock signals.We have used two 3 pin male connectors for servo motors and 2 pin male connector for source (battery).



    Electrical Schemetic of Eagle:





    PCB Layout

    After schemetic we moved to PCB Board design.In the board design we faced difficulty in to make comapct size of board. We routed and derouted again and again in order to make it very compact so that the handle should be in small size and it can be hold in hand very easily.

    Printed Circuit Board Layout




    For printing the board We have to make image in .png extension for traces,outline and drills.


    Printed Circuit Board Traces





    Printed Circuit Board outline





    Printed Circuit Board Drills




    After milling the board we started to solder the printed board.


    Now our board is completely ready.After this we moved to Boat Loader.That was very joyful moment for us when board successfully boot loaded.




    Challanges that we faced:


    After completion of our PCB soldering we have checked our project either it is working properly or not, we faced a big challange that our project was not working properly, when we uploaded the program to Atmega328 IC, at start MPU6050 sensor detected the motion to a very small interval of time and the Servo motors were trying to balance the system, after that MPU6050 failed to detect the motion and no data appears on Serial Monitor. Then we reset the System and again we met with the same problem like previous one which we have discussed.This was the time where we stuck to a point upto one week. To make our project functional,we decided to use Arduino nano and we keep on working towards our project completion.The schematic and PCB layouts of second PCB are as under.


    Schemetic:




    Board:




             Traces                                     Outline                            Drills 



    Software Development

    Here is the flow chart of our program.


    Design of finished Product

    Our project is hand-handeled product,For that we made handle in compact size so that it can be handled in hand easily. First we made the mechanical drying




    After completing the mechanical drawing we moved to solid works design.



    After making handle, we made square bracket type shape for roll motion and clamp for pitch motion.



    Results


    Here is the Link of vedio of our project.


    Challenges Faced in Routing


    This was our first time to have work on Eagle PCB designing software, At start we faced several problems in routing process like, small distances between traces and components which actually creates a problems for PCB Milling Machine, then our instructor guided us about these issues. So before printing our PCB we left little spaces between traces and components so that it becomes easier for PCB Milling Machine. Also, during routing we faced hindrances to have work as professional student but with passage of time we learnt alot, how to tackle and deal with issues in routing phase.

    Challenging Faced In Bootloader


    After designing our first PCB in which we used Atmega328 IC and other components which are mandatory in our project, we move towards bootloading pocess and we met with a problem burning the bootloader program. After that we start thinking about.. (How to debug the error?) and we took a multimeter in order to check connectivity between different components and traces on the PCB. troubleshooting the PCB we have successfully done with bootloader stage.


    Conclusions

    We have learent alot of new things in this subject. Before this we don't know about how to make Printed Circuit Board(PCB), How to work on eagle sowfware. Now we are fully able to make PCB and work on Eagle software. Additionally we learnt about the machine which is used for printing the boards. That is "Roland monoFab SRM-20 Milling machine". On the other hand we learnt how to deal with SMD components in soldering, choosing the pakage of particular component. In short now we are able to work on any project of Electronics .

    Appendix

    Here we have different files which are created in order to accomplish our task like, Solid work files, Eagle circuits/PCB Layout files, Arduino Code and rml files. One can easily access these files by just clicking on the pictures. This will help you in better understanding.

                                            
                  STL files.zip          PCB files.zip       Arduino code.zip        RML files.zip


    Special thanks to :
    Instructor: Dr Muhammad Asim Ali(Assitant Professor)
    Department of Electrical Engineering
    Sukkur IBA University

    Supervisor:Engr: Aizaz Ali Larik(Lab Engineer)
    Department of Electrical Engineering
    Sukkur IBA University

    Supervisor:Engr: Nadir Ali(Fab Lab Assistant)
    Department of Electrical Engineering
    Sukkur IBA University