2023-04-11 Sajjad Meeting Notes

@Taim Al-Dabbagh @Mostafa Hussein

 

Sajjad’s Slides (Matlab Workshop):

  • Simulink model: watertank_comp_design (from matlab documents)

    • Proposed problem: Tank system where the water level as to be changed, and it can be changed using a water pump controlled with a voltage V.

    • Using Matlab blocks, the differential equation representing the problem can be modeled / built out.

  • Drone Example:

    • You should have a plan and a good model

      • Equations for flight dynamics should be organized. These need to be researched and can be found from reading research papers.

      • Also good model for the motors and sensors.

      • This model would be like a control loop.

    • Controller submodule:

      • There also would have to be an extra set of 2 PID for roll and pitch since they affect position as well:

      • MMA (motor mixing algorithm)

    • Estimation Modules that convert sensor inputs and converted them into measurable states:

      • Should have good equations for the sensors. Noise should be simulated in a good manner.

        • Should be using Kalman filters to better estimate the drone state.

    • We already have PID inside ZP3, do we need to still create models for the Roll, pitch yaw thrust?

      • It is good that we have premade controllers, but we should implement them in the plant

    • How to know the equations found online are the correct ones:

      • When finding a research paper, scan what type of vehicle they are controlling. How many motors, the orientation and placement of the motors. Based on that, use equations that apply to our vehicle.

    • Inner loop vs Outer loop controller:

      • Inner loop is faster.

        • Inner loop only is used when affecting roll, pitch and yaw doesn’t affect other modes of movement.

      • However, outer loop would be needed as it is responsible for controlling position which would be affected by roll and pitch for example.

        • Reaction time of outer loop is slower than the inner loop

          • Not constantly checking position, and it takes longer to calculate positions, which is why outer loop tends to be slower.

    • Providing Simulation with outer data:

      • The data has to be in a .mat file and then it has to be loaded to the workplace

      • Use module in simulink called “workspace”?

        • Helps put data from outside of simulation into simulink.

 

Post Questions:

  • Examples of papers to think about for getting equations:

    • Course on Udemy that starts from developing the equations to going into simulation. Uses Python though, but it could be a good starting point. Sajjad can share the link to it.

    • Could also use books, but that can be time wasting. Sajjad can however can share a few books for aircraft flight dynamics.

  • When do you know to make assumptions, and which assumptions do you usually take:

    • Follow research papers. Use the assumptions they use with their models, especially as a beginner.

  • Workflow:

    • Rough, not perfect, but complete loop at the start is good to have.

      • Find some dynamics equations for the vehicles and use them (although not perfect)

    • Then place sensors and have equations for them.

      • After simulate noises even if not perfect.

    • Finally go through the controller

      • Still not perfect just a rough simulations

    • After a rough simulation is completed, go through it again to perfect it.

      • Constantly researching to improve model.

      • Design is a loop, and going through the loop multiple times is a must.

    • Cant work on a single section, make it perfect and move on.

      • After you move on you will probably find something missing in the pervious section.

    • Take your time, the process takes time so do not rush.

  • Is it possible to simulate real time systems in simulink

    • Yes, that is one of the most important things to have a simulation. If things can’t be simulated in real time, then the simulation becomes somewhat obsolete.