I have long struggled with this concept and seeing FPV views of issues and corrections did not help that much. By 11 minutes in to this video, I understand this far better! I am a visual learner and the bar and 2 motors is a brilliant way to describe PID control. Thank you so much for this video!!!
Great video! Please also limit the I-controller separately. Not only the total PID controller. This will prevent the extreme overcompensation at the end of the video (16:00). In your code the I-controller can increment way to much. You can find an example in the YMFC-AL code.
I would really want to understand about proportional navigation law, and you must be the perfect person in both explaining, designing, and making it!! Yet ANOTHER AWESOME VID DAMN!!
Woooooooow you saved my life ! I am making this exact project (for school, for exam especially) and I was having trouble with the PID but thanks to you, all is pretty clear now ! Thanks so much ! Greatings from France !
It works !!! :D Thanks so much ! But can I have a little bit of help please ? Because I tried with your values (3.55, 0.003, 2.25) and it works (lucky huh ? :p), but how to tune those values more precisely for my project ?
For a perfect PID you coudl use a lot of math. Check this link: iamechatronics.com/notes/general-engineering/466-quantitative-pid-tuning-procedures Basically you should put the bar to oscillate. Once it oscillates you should measure the amplitude (in this case in degrees) and the period. Using this values you could get the real PID values. But once you adn the second axis everything changes so you should make a 4 axis balance for that. It gets quite difficult using the formulas thats why I do it by hand (testing and testing till is ok).
wow first time i see someone makes his own flight controller. I am very interested in control aplications. Good job, waiting to see the finished project.
Normally PID is called in a interrupt routine and must to use volatile variable. Elapsed time change every scan of program but it seems works. Good job.
electronoobs, you are the absolute LEGEND. you make things incredibly intuitive and simple. i love how you teach. i can only strive to be as good as you one day. you're very inspirational! you are truly among the best teachers i've ever seen in my life.
@Electronoobs Nice vid. Well explained, although a little more theory might be welcome to some. Tip: the gyro's are actually already derivative values of the angle. There is no real absolute angular measurement. So the gyro values in degrees per second can be sent straight to Kd whereas the acceleration measurements (without any gyro component) can be fed to Kp and (after integration) to Ki. That should keep you slightly more in control. You may also add a derivative of the accelerometer to Kd but I doubt whether that will really help - it may actually make things worse. Please try and let me know (if you did) whether you see any difference for better or worse. Thanx. :-)
PID (Proportional-Integral-Derivative) control helps maintain consistent RPM (revolutions per minute) across motors to prevent imbalance. Suppose motor 1 on the right side is spinning 40 RPM faster than motor 2 on the left side, despite both receiving the same power. This difference is an error that can lead to instability. To correct it, the PID controller continuously calculates adjustments to the power supply of each motor to reduce the RPM difference. The PID control system works by calculating an 'error' (the difference between desired and actual RPM) and applying corrections in real-time to bring both motors to the same speed. This technique helps keep the system balanced and stable.
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
@@ELECTRONOOBS hi , i just want to know how can i calulate number of 360 degree rotations completed by MPU6050 using arduino . it would be nice if u help me
Greetings, I would like to bring your attention to an important point regarding the motor configuration in a quadcopter. When connecting two opposite motors, they should rotate in the same direction, either clockwise or counterclockwise. However, I noticed that you have set one to rotate clockwise and the other counterclockwise. I understand that you are testing with only two motors, but in a quadcopter, any two opposite motors should rotate in the same direction to ensure proper balance. Thank you for your understanding, and I wish you the best of luck with your testing.
Amazing video! Thank you very much! I'm surprised by how the PID algorithm works. An alternative solution would be to look at the Quadcopter as a damped harmonic oscillator. By measuring the mass and length of the bar with the motors you can calculate the constants for the oscillator in order to be critically damped, so that it goes to the desired position as fast as possible. Also your formula for calculating the angle from the IMU data is quite effective for its simplicity. For just a little more accuracy you can add what's called "delta integration" for getting the angle from the gyro. Instead of angle=rv_new*time the formula would look like angle=1/2*(rv_new+rv_previous)*time. Combining gyro and accelerometer data with a high- and low-pass filter like you did seems to be the ideal solution. I tested the Kalman filter as an alternative, but it does not work better in this case and it is also more complicated. Finally, I have a question to you: How often per second can an arduino read the sensor data? In my experiments with a Raspberry Pi 2 and I2C it is limited to about 400, but the sensor supports up to 1000 read per second.
Thanks for all!. Well, depends of the module i2c comunication. And yes, the MPU6050 is limited at 400kHz Fast Mode I2C for communicating with all registers, which is quite fast and also for the SPI in case of the MPU6000 20MHz SPI serial interface for reading sensor and interrupt register.
can you let me call you " Great Mentor". seem s I don't need to go to school to learn, you fill it. thank you so much. and I am happy that you get the 100k milestone.
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
Thanks for these excellent tutorials and projects ELECTRONOOBS they are extremely well explained, documented and very thorough. A brilliant body of work.
We love this channel and it was one of the reasons to start our own. We are a very new channel and will bring content on control theory, linear systems and systems identification. Keep inspiring people, thank you very much!
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
Excellent video, thanks a lot for sharing. I'm trying to implement using 1 motor only, obviously I've modified the code but the motor just beeps without starting. I can run the motor no problem with the esc calibration code. Anyway I'll keep trying!
What makes the integral action is to add a pole to the system and causes oscillations or at worst becomes unstable. The PD controller is good for DC motors.
The sensor data are degrees per second then in controller it acts on the estimation of the state variables in this case the angles: pitch, roll and yaw. You can use two PID controllers or their variants. Connected in cascade one acts on the posture and the other confirms if it is fit to take off. If you are good at control theory you can use a fuzzy controller
set_point=Serial.parseFloat(); system1=get_Euler(0); Pid(set_point,system1,0.94,.06,.07,100); e=get_PID(0); e1=get_PID(1); //Serial.print("el er es : "); Serial.println(e); //Serial.print("la der es : "); Serial.println(e1); if(e0){ // salida=aumentar pertenencia(Matriz_A2,e); a[8]=P(0); //Serial.print("pertenencia en error : "); //Serial.println(a[8]); pertenencia(Matriz_B2,e1); //Serial.print("pertenencia de la derivada del error : "); b[8]=P(0); //Serial.println(b[8]); a1[8]=t_norma(a[8],b[8],1);// el minimo de los conjuntos difusos //Serial.print("el minimo de los conjuntos : "); //Serial.println(a1[8]); b1[8]=defuzzy(a1[8],Matriz_C2,4 ); // calcucla el valor real //Serial.print("area : "); Serial.println(b1[8]); } }
hi, may i know what the difference between pid_p, pid_i, pid_d and kp, ki, kd in the code? Are you tuning kp, ki and kd only? The calculation for pid_p, pid_i and pid_d, the output is pwm signal with unit us? If yes, how to convert the error in degree unit to pwm? So the motor speed is control by input the pwm signal?
Great video,, but what about the motors electrical characteristics ? for example, how did you know that this is the best voltage to run the motors at ? whats the maximum and minimum voltages to be mapped by the PID computer function ? I may have missed something but I'm curious for an answer ...
Almost everyting explained perfectly, for making it up by yourself :D The only thing I have problems with is the maths behind it. Would be stunning if you could take the time in resarching and explaining it :D
Hi there. Thank you! There is not much math in to this tutorial. The only formula i'be esed is the Euler formula to obtain the angle using acceleration data. More of the math is explained on my webpage here: www.electronoobs.com/eng_robotica_tut6_1.php Then the only time I've used a formula is to apply the complementary filter which is 98% Gyro data and 2% Acc data. The rest is just sum or subtract of PID value. Keep up!
The main function ‘u’ is dependant on the time - t and the proportional and differential function too are functions of time. I don’t understand why the function which will be integrated is a function of torque where the variable ‘tau’ isn’t mentioned anywhere in the main function ‘u’.. I believe its a mistake?
Hello Electronoobs I'd like to know if you have a publication of this experiment to add you as reference in other publication? or did you find this in some publication?
I did not realise gyro and accelerometer readings were combined like that! Is the graph titled ‘MPU6050 data graph’ at time 12.01 on the data sheet or your own work?
Are you using the absolute value of the error because of the zero angle set point or it has to do with the whole PID tuning method?I mean the whole concept is to have the same behavior no matter what the set point is right?
Hello how are you? I am studying electronic engineering. I have a similar project, I am complicated with the equation that describes the system. Could you help me?
Sir, i got just one problem in understanding the code you wrote pwmLeft =throttle +PID; pwmRight =throttle -PID; So, why this + and - PID please tell. By the way your videos have helped me a lot. Thank you Sir
I'm confused now normally PID controller can't control systems withe multiple inputs , so are using two PID controller one for each motors, or somehow you manege to control both motors by only one PID Controller
very good explanation. I am facing one problem, I wish to make a RC V22 osprey, the plane has two profiles one is hovering as a bi-copter and forward movement as a plane, If i wish to use the multiwii what will be the settings? Do the the plane need two Mpu 6050 for hovering as a bicopter and one as a plane? Thank you.
Hi friend, how are you? first, congratulations for the great job. i want to know if you get the transfer function of the system, and maybe would you kind enough to explain me how to make it.
sorry I can't understand the video, because I don't speak English, can I ask why you calculated Total_angle[0] but didn't use it. As for Total_angle[1], why are you calculating in x and y when you are balancing on 1 axis. Thanks very much.
I know this video was released 4years ago. I am a newbie on microcontroller, so I went through the code and i had got an question. Shouldn't we have to divide PID(Output) by 2, before adding/subtracting from throttle of both motors??? Therefore this will lead into zero error quickly???
I am making something very similar to this and using your tutorial... my question is.. what is your sampling frequency? Mine is going too fast and it is too jumpy.
Hello A greeting from you ...At this year I have the 2212 930KV motor , my question is you ever used the ardupilot mission planner software to set up the PID in the multirotor ?...I dont used the arduino board but I used the crius aio pro controller to set up the PID in my motor ...What values did you obtain in your test...would the result be the same if the mission planner software was used?
Hey ! My Arduino quadcopter always go forward at start ... I don't know if PID is the problem but the gyro is calibrated, the motors are Ok and the propellers are mounted correctly
Nice ! Finally someone who use Arduino for more than an LED brightness variator... Great Engineering 😊
Il vient de me sauver mon TIPE pour les concours d'école d'ingé ! :D
Then you should follow @upir
I have long struggled with this concept and seeing FPV views of issues and corrections did not help that much. By 11 minutes in to this video, I understand this far better! I am a visual learner and the bar and 2 motors is a brilliant way to describe PID control. Thank you so much for this video!!!
Great video! Please also limit the I-controller separately. Not only the total PID controller. This will prevent the extreme overcompensation at the end of the video (16:00). In your code the I-controller can increment way to much. You can find an example in the YMFC-AL code.
Thank you very much. I'll improve the code!
I don't think anyone is like electronicnoob while explaining stuff his the best
In my opinion, it is the best video to learn ao to do a drone program with arduino. And we can learn how drone works.
I would really want to understand about proportional navigation law, and you must be the perfect person in both explaining, designing, and making it!!
Yet ANOTHER AWESOME VID DAMN!!
Woooooooow you saved my life ! I am making this exact project (for school, for exam especially) and I was having trouble with the PID but thanks to you, all is pretty clear now !
Thanks so much !
Greatings from France !
Aymeric thanks, I'm glad you say that!
It works !!! :D Thanks so much !
But can I have a little bit of help please ? Because I tried with your values (3.55, 0.003, 2.25) and it works (lucky huh ? :p), but how to tune those values more precisely for my project ?
For a perfect PID you coudl use a lot of math. Check this link: iamechatronics.com/notes/general-engineering/466-quantitative-pid-tuning-procedures
Basically you should put the bar to oscillate. Once it oscillates you should measure the amplitude (in this case in degrees) and the period. Using this values you could get the real PID values. But once you adn the second axis everything changes so you should make a 4 axis balance for that. It gets quite difficult using the formulas thats why I do it by hand (testing and testing till is ok).
You can use Ziegler-Nichols PID method as well. You only need to calculate oscillation frequency and then get the constants from a table quickly.
And here I am 5 Years later doing the same school project...
wow first time i see someone makes his own flight controller. I am very interested in control aplications. Good job, waiting to see the finished project.
Normally PID is called in a interrupt routine and must to use volatile variable. Elapsed time change every scan of program but it seems works. Good job.
Wizards and magicians have nothing on you. Wow! You are such a great teacher.
One of the best Demonstration's OVER PID TUNING . (THANKS A LOT )💗
electronoobs, you are the absolute LEGEND. you make things incredibly intuitive and simple. i love how you teach. i can only strive to be as good as you one day. you're very inspirational! you are truly among the best teachers i've ever seen in my life.
Boss..!! I was working on reading angles from MPU for 2 weeks!! your code did it so properly for me!! thanks!!
@Electronoobs Nice vid. Well explained, although a little more theory might be welcome to some.
Tip: the gyro's are actually already derivative values of the angle. There is no real absolute angular measurement. So the gyro values in degrees per second can be sent straight to Kd whereas the acceleration measurements (without any gyro component) can be fed to Kp and (after integration) to Ki. That should keep you slightly more in control. You may also add a derivative of the accelerometer to Kd but I doubt whether that will really help - it may actually make things worse.
Please try and let me know (if you did) whether you see any difference for better or worse. Thanx. :-)
PID (Proportional-Integral-Derivative) control helps maintain consistent RPM (revolutions per minute) across motors to prevent imbalance. Suppose motor 1 on the right side is spinning 40 RPM faster than motor 2 on the left side, despite both receiving the same power. This difference is an error that can lead to instability. To correct it, the PID controller continuously calculates adjustments to the power supply of each motor to reduce the RPM difference.
The PID control system works by calculating an 'error' (the difference between desired and actual RPM) and applying corrections in real-time to bring both motors to the same speed. This technique helps keep the system balanced and stable.
Love your mountng with rubberband during initial test and build
You are awesome! Awesome! You are helping many DIY enthusiast. Great job. Keep servicing. We owe you a lot.
Thank you!
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
@@ELECTRONOOBS
hi , i just want to know how can i calulate number of 360 degree rotations completed by MPU6050 using arduino . it would be nice if u help me
Nice ! At last someone who use Arduino for more than an LED brightness variator... Great Engineering 😊
this is amazing. it really improved my understanding for control systems engineering.
Greetings,
I would like to bring your attention to an important point regarding the motor configuration in a quadcopter. When connecting two opposite motors, they should rotate in the same direction, either clockwise or counterclockwise.
However, I noticed that you have set one to rotate clockwise and the other counterclockwise. I understand that you are testing with only two motors, but in a quadcopter, any two opposite motors should rotate in the same direction to ensure proper balance.
Thank you for your understanding, and I wish you the best of luck with your testing.
That's the video I had been searching for
Bro this tutorial is hillariously good, I love it! Have been searching the whole web for something like this. Thank you so much!!!
Thank you for the effort on your series of videos - they are an excellent balance of theory and implementation! I very much enjoy them!
Amazing video! Thank you very much! I'm surprised by how the PID algorithm works. An alternative solution would be to look at the Quadcopter as a damped harmonic oscillator. By measuring the mass and length of the bar with the motors you can calculate the constants for the oscillator in order to be critically damped, so that it goes to the desired position as fast as possible. Also your formula for calculating the angle from the IMU data is quite effective for its simplicity. For just a little more accuracy you can add what's called "delta integration" for getting the angle from the gyro. Instead of angle=rv_new*time the formula would look like angle=1/2*(rv_new+rv_previous)*time. Combining gyro and accelerometer data with a high- and low-pass filter like you did seems to be the ideal solution. I tested the Kalman filter as an alternative, but it does not work better in this case and it is also more complicated. Finally, I have a question to you: How often per second can an arduino read the sensor data? In my experiments with a Raspberry Pi 2 and I2C it is limited to about 400, but the sensor supports up to 1000 read per second.
Thanks for all!. Well, depends of the module i2c comunication. And yes, the MPU6050 is limited at 400kHz Fast Mode I2C for communicating with all registers, which is quite fast and also for the SPI in case of the MPU6000 20MHz SPI serial interface for reading sensor and interrupt register.
can you let me call you " Great Mentor". seem s I don't need to go to school to learn, you fill it. thank you so much. and I am happy that you get the 100k milestone.
One of the best declaration videos i've ever seen on TH-cam!
Great work! Thank you.
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
Thanks for these excellent tutorials and projects ELECTRONOOBS they are extremely well explained, documented and very thorough. A brilliant body of work.
nice nice nice THANK YOU Believe me or not there is no teacher like you sir.
I really like your awesome & helpful & great Channel.
Thank you very much, I'm so glad you say that!
Best part is PID tuning.
I really like it.
We love this channel and it was one of the reasons to start our own. We are a very new channel and will bring content on control theory, linear systems and systems identification. Keep inspiring people, thank you very much!
Thanks a lot! The way you explain and the depth of your explanation are just great! Keep it up!
Just amazing ! Wonderful ! So much fun to watch
Thanks! I used your system to make my robot ride in a straight line. Before it went to one direction because the motors are bad quality.
Hello Can you please tell me How to connect all four motors to it and do wee need calibrate ESCs and then do we need to load code for ESC and MPU seperately in the same ARDUINO.
This is amazing! Great explanation! THANK YOU!
Fantastic video, I like your way of explaining things:)! keep up the good work
Very high level of explanation. Helped a lot. Thanks
you are such a good Engineering
you made this so well!!!! are all your videos this good??
Great tutorial about PID control!!
Excellent video, thanks a lot for sharing. I'm trying to implement using 1 motor only, obviously I've modified the code but the motor just beeps without starting. I can run the motor no problem with the esc calibration code. Anyway I'll keep trying!
Great tutorial... Can you please make tutorial on GPS RTH and GPS hold . I don't find any tutorial on it ..
What makes the integral action is to add a pole to the system and causes oscillations or at worst becomes unstable. The PD controller is good for DC motors.
You're right. PD should be better for this case!
I coefficient very important for leveling.
Have you coded antiwindup of I controller?
The sensor data are degrees per second then in controller it acts on the estimation of the state variables in this case the angles: pitch, roll and yaw.
You can use two PID controllers or their variants.
Connected in cascade one acts on the posture and the other confirms if it is fit to take off.
If you are good at control theory you can use a fuzzy controller
set_point=Serial.parseFloat();
system1=get_Euler(0);
Pid(set_point,system1,0.94,.06,.07,100);
e=get_PID(0);
e1=get_PID(1);
//Serial.print("el er es : ");
Serial.println(e);
//Serial.print("la der es : ");
Serial.println(e1);
if(e0){
// salida=aumentar
pertenencia(Matriz_A2,e);
a[8]=P(0);
//Serial.print("pertenencia en error : ");
//Serial.println(a[8]);
pertenencia(Matriz_B2,e1);
//Serial.print("pertenencia de la derivada del error : ");
b[8]=P(0);
//Serial.println(b[8]);
a1[8]=t_norma(a[8],b[8],1);// el minimo de los conjuntos difusos
//Serial.print("el minimo de los conjuntos : ");
//Serial.println(a1[8]);
b1[8]=defuzzy(a1[8],Matriz_C2,4 ); // calcucla el valor real
//Serial.print("area : ");
Serial.println(b1[8]);
}
}
You can consider to use a Anii Windup block to compensate Integral part.
wow u r amazing teacher in TH-cam thank u very much
Luv your channel......!!!!😘😘
You deserve a million subscribers!!!!!!!
hi, may i know what the difference between pid_p, pid_i, pid_d and kp, ki, kd in the code? Are you tuning kp, ki and kd only?
The calculation for pid_p, pid_i and pid_d, the output is pwm signal with unit us? If yes, how to convert the error in degree unit to pwm?
So the motor speed is control by input the pwm signal?
Great video! Thank you for providing these for FREE! :)
Well done colegue! Keep it up !
I have a idea you can tune the PID controller automaticly(auto tuning) to diterminate the the best angle
how?
Excellent Job i like your project good luck
This is amazing. Great explanation.
Great video,,
but what about the motors electrical characteristics ? for example, how did you know that this is the best voltage to run the motors at ? whats the maximum and minimum voltages to be mapped by the PID computer function ? I may have missed something but I'm curious for an answer ...
Two words: Great video!!
thx a lot for explaining in an understandable way that PID control :)
great video and thumbs up for the well commentated code!
Awesome project
Almost everyting explained perfectly, for making it up by yourself :D
The only thing I have problems with is the maths behind it. Would be stunning if you could take the time in resarching and explaining it :D
Hi there. Thank you!
There is not much math in to this tutorial. The only formula i'be esed is the Euler formula to obtain the angle using acceleration data. More of the math is explained on my webpage here: www.electronoobs.com/eng_robotica_tut6_1.php
Then the only time I've used a formula is to apply the complementary filter which is 98% Gyro data and 2% Acc data. The rest is just sum or subtract of PID value.
Keep up!
How I can use this for a two DC motors with a L293D? You can help me please! Diagram Circuit
use ESC for control. l293D does not control how much current is sent to motors.
The main function ‘u’ is dependant on the time - t and the proportional and differential function too are functions of time. I don’t understand why the function which will be integrated is a function of torque where the variable ‘tau’ isn’t mentioned anywhere in the main function ‘u’.. I believe its a mistake?
this is great video and it was very helpfull.tanks electronoobs
Thank you for such detailed explanation. :)
I love this..you are genius 😍😍😍😍
A Very good explanation, but you have made an error in the discretisation of the integral term.
Hello Electronoobs I'd like to know if you have a publication of this experiment to add you as reference in other publication? or did you find this in some publication?
this was very interisting, I am making my own drone and i want to whrite my code myself
Is there any way to calculate the best constant values for Kp, Ki, and Kd please ??
Thanks for this very helpful video by the way !
I did not realise gyro and accelerometer readings were combined like that! Is the graph titled ‘MPU6050 data graph’ at time 12.01 on the data sheet or your own work?
Brilliant!
Maybe I'm asking something stupid or maybe you have already treated it, but how do you control the ESCs from the Arduinos?
can you go more in depth into complementar filters and kalman filters?
Thanks!
Thanks for the tutorial. Are you not getting the MPU6050 drifts after some while Sir?
How do you find the transfer function ?
What a wonderful video. Thanks .
Are you using the absolute value of the error because of the zero angle set point or it has to do with the whole PID tuning method?I mean the whole concept is to have the same behavior no matter what the set point is right?
Great video my friend I have a question, how you find the bests values to kp, ki and kd constants?
Hello how are you?
I am studying electronic engineering. I have a similar project, I am complicated with the equation that describes the system. Could you help me?
Sir, i got just one problem in understanding the code you wrote pwmLeft =throttle +PID;
pwmRight =throttle -PID;
So, why this + and - PID please tell.
By the way your videos have helped me a lot.
Thank you Sir
💕looking for more abut PID💕
I'm confused now normally PID controller can't control systems withe multiple inputs , so are using two PID controller one for each motors, or somehow you manege to control both motors by only one PID Controller
Awesome explanation
This is great information, a very helpful video. Thanks
Can I supply 12v to the esc from a 12v adapter? Btw love you videos
very good explanation. I am facing one problem, I wish to make a RC V22 osprey, the plane has two profiles one is hovering as a bi-copter and forward movement as a plane, If i wish to use the multiwii what will be the settings? Do the the plane need two Mpu 6050 for hovering as a bicopter and one as a plane? Thank you.
Hi friend, how are you? first, congratulations for the great job. i want to know if you get the transfer function of the system, and maybe would you kind enough to explain me how to make it.
sorry I can't understand the video, because I don't speak English, can I ask why you calculated Total_angle[0] but didn't use it. As for Total_angle[1], why are you calculating in x and y when you are balancing on 1 axis. Thanks very much.
in the loop:
total_output = current_output + PID_output;
Servo.write(total_output);
current output = total_output;
Very good video and links, this is huge help. Thank You!
I know this video was released 4years ago. I am a newbie on microcontroller, so I went through the code and i had got an question.
Shouldn't we have to divide PID(Output) by 2, before adding/subtracting from throttle of both motors??? Therefore this will lead into zero error quickly???
Please do a dedicated detailed video on the code
Hello friend, have you tried mathematically modeling the bi-rotor balance?
In the case develop the mathematical plant in time and in Laplace?
I am making something very similar to this and using your tutorial... my question is.. what is your sampling frequency? Mine is going too fast and it is too jumpy.
Can you please clarify why the angles are from -10, 100 degrees? shouldnt it be from 0,360.. or -180,180?
Hello A greeting from you ...At this year I have the 2212 930KV motor , my question is you ever used the ardupilot mission planner software to set up the PID in the multirotor ?...I dont used the arduino board but I used the crius aio pro controller to set up the PID in my motor ...What values did you obtain in your test...would the result be the same if the mission planner software was used?
you rock man :D thanks for sharing your knowledge. you are inspiring. keep it up
Brilliant! Thank you so much for sharing.
You are genius❤️🔥
Hi very nice video tutorial. Please where can we find the next video?
А можно сделать стабилизацию регулировки напряжения с помощью пид регулятора ?
Hi if I use a normal motor driver instead of ESC isnt still possible to control with PID?
Yes.
Hey ! My Arduino quadcopter always go forward at start ... I don't know if PID is the problem but the gyro is calibrated, the motors are Ok and the propellers are mounted correctly
thx for the video :P one question where u write the speed of the motors (if stabilized and gyro does not ask for correction) thx alot