This video presents a comprehensive intelligent control framework for fixed-wing eVTOL (electric vertical takeoff and landing) aircraft, addressing the challenges of urban air mobility applications. The framework integrates physics-based modeling with data-driven approaches, including a unified control architecture that uses force and control allocation to manage transitions between VTOL and fixed-wing flight modes. Key innovations include adaptive control methods that compensate for environmental disturbances using novel airflow sensors, fault-tolerant rotor configurations optimized for failure scenarios, and neural network-based dynamics approximation for enhanced control intelligence. The research also addresses practical implementation challenges such as actuation delay compensation through predictive control methods, enabling robust performance in real-world digital control systems.
Intelligent Control for Fixed-Wing eVTOL Aircraft | Dr. Xichen Shi, Caltech
Added:so thank you everyone for attending this galaxy colloquium today's speaker is uh ji chen shi uh he's our own uh galaxy phd student but he just defended his thesis successfully so we can maybe call him dr xi ji chen graduated from university of illinois about champagne he actually worked there as an undergraduate researcher with me and he was a direct phd student and then he moved good card tech and after his phd he's supposed to start at waymo as a one of the leading self-driving car software engineer there so jichen now is all yours all right thank you sandra for the introduction the topic i'm presenting today is on the intelligent control for a fixed-wing evito aircraft on ev12 stands for electrical vertical take-up and landing before we dive in first let me give you some motivation and backgrounds on the on the concept here in 2016 do you think uber published a white paper on the concept of urban air mobility which is to reduce travel time in metropolitan areas as you can see on the graphics here traveling from san francisco and san jose takes around two hours by train an hour and 40 minutes by car but just 15 minutes if you're traveling by air on a veto aircraft as for that we need something that can take off and landing vertically at the same time covering longer distance approximately around 50 50 miles in order for inter intercity travels to be usable and it's natural to have a combining fixed wing aircraft and also electrical multirotors because now you can have both efficient longer range flight at the same time using multi-rotors to take off and then vertically but there will be challenges come from using this kind of hybrid concept because now interactions between different rotors and wings will become complex and hard to model in most cases and furthermore the disturbances from the environment could be also complex to model because we're operating very cluttered urban settings so that means the autonomy on board the vehicle will require an enhanced level of precision safety and also intelligence here is a montage of different commercial solutions that have been proposed and built prototype to date you can see most of them having this uh main wing and also more than eight vertical rotors as this hybrid here in the middle of this montage is one of your own cast autonomous flying ambulance project here we show a render of one of our design i eventually built those designs into functional prototypes to test some of the theories that we do for the autonomy aspect so this work is roughly divided into two parts during the first part we'll cover various aspects of fixing evitas talking about about why their benefits why whether where their benefits coming from how to design control system how to improve certain design aspect and in the second part we'll discuss more novel method in learning and also in actuation compensations so let's first lay some foundations and try to understand what is the advantage of having a fixed-wing e-vehicle here uh we can use uh disk momentum theory uh to understand for our daughter in the ascending cover and descending flight how much power is required for a certain area of the rotors generating certain amount of stress by balancing the mass momentum energy equations we can eventually get a relationship calculating the induced power to satisfy those thrust generation needs similarly we can do it for four flight except the cases uh this more complex case here because now your flow can be coming at an angle of attack or suspected rotor plane but nevertheless we can get similar relationship by using the thrust generated also induced velocity from the rotor plane apart from uh induced power there's also rotor profile power which is a power we need to rotate a rotor around uh through the air and also the amount of power you have to overcome by generating certain forces on the wing as well um for battery or electric vehicles we have a battery a model that that determines how much time uh but the battery will discharge given its capacity and the power load now putting everything together what we try to understand is how much power is needed for different flight modes as a simple case for hover flight all your vertical rulers would be balancing out the weight for the aircraft moving on to a veto 4 flight not our loader you'll be tilting the vehicle in the direction of flight at the same time uh the rotors will be satisfying both the weight and also the the drag that's uh caused by having your aircraft moving through the air at the same same time some downward lift may be caused by a downward angle you have on your wing surfaces for more mixed flight modes your wing will be generating most of the lift to counterbalance the weight with any additional lift can be compensated by the vertical rotors and in this case you'll be flying flat and your back crew shoulders can be used for compensating for drag and putting all of those together and use those tools we can we can analyze design such as the dfa 2.0 concept here and here we show this from sketches to the render to actual prototypes and applying those equations on this particular fifth scale prototype shown in the lower right corner here we can understand how much power and the composition power during different flight modes uh from with a range of different flight speed so on the left here showing during a veto only mode as you can see most of the power comes from the loader power they dominate over the aerodynamic powers except at higher higher higher velocity your power basically increase significantly on the other hand for a fixed wing flight mode at higher velocity you're more efficient as in using lower less amount of power here and also in this case the rotor power doesn't dominate a higher speed rather the aerodynamic power will dominate now we can compare them side by side and also incorporate the electric range equation electric batter the battery capacity equations uh to calculate the amount of time your aircraft can stay in the air or we call it the endurance and the the distance your aircraft can travel or the range of it so showing on the left here showing uh the graph on the left here is showing the the power required and also the endurance on the right is a pseudo thrust which is power divided by forward velocity and the range as you can see even in this small fifth skill model we can achieve two times improvements in both range endurance and we can expect this to also hold for larger scale aircrafts but this is the main reason uh using first principles using physics we can understand what is the need for a fixed swing veto hybrid now sorry did you define what afa stands for yeah we did uh flying ambulance that we have at caltech so um having the aircraft now how do we design a control system for it so we already know for a veto multirotor flight your aircraft will be tilting in the direction of flight for the threat generating by the vertical rotors for a cruise light you would have your wing to generate the lift at the same time the back rotors generate thrust flying forward our hybrid flight will have something in between maybe you have some flight at slower spike speed you're flying like a veto a higher flexibility transition into a fixed swing aircraft so there were a lot of works before that i'm trying to understand how to transition from one to the other usually they would require we have two controllers for each flight mode and try to stitch and switch different controls together if it happens to be a tilt angles we can schedule the end the tilting of such angles and and then do their controls accordingly if you have a good models of entire craft you can try to optimize the offline and use the trajectory for the online transition excuse me or if you have enough computation power you can actually solve everything online although in practice it's not very likely due to the complex model and the compensation requirements computation hardware that's typically smaller on these flying vehicles so in our case we propose a framework that's based on feedback control design where we use the same position and velocity position and attitude controllers for throughout different fly modes and just to tie everything together using force allocation and control allocation blocks so introduced here is a very simple six degree of freedom rigid body dynamics model for flying aircraft we can decompose the body forces and torques into the structure components with the sub subscript t and the aerodynamic components with a subscript a now structural components uh usually you can usually use a a model that's a linear in the square of rotation speed uh to calculate the thrust and torque generator of each stressors and we're going to combine them based on their configuration of linear mapping from individual structural forces to the total thruster force and torques for aerodynamics we can use non-dimensional coefficients try to represent the different aerodynamic aspects by calculating the angle of attack angle angular size slip which is the relative angles from the of the wind onto the airplane we can use a blend blended method to blend two linear blend the linear era model with the non-linear one because during the linear region you have this uh um monolithic rise of uh coefficient with respect to some angles and you have a star region and during full uh during the full range from negative 180 to 8180 degrees you will see a more sinusoidal or some sort of trigonometric relationship as you can see this bundle we can tune it to agree pretty well with experimental data tested on wings and airfoils now our architecture consists of several parts first we use the force and torques as control inputs to design position and attitude control now depends on the force that's being commanded we have to allocate the force by determining the attitude rd which will determine how much atomic force we can generate and also thruster force ft the force from all thrusters we can generate and then the control allocation will determine individual structural forces and also aerodynamic surface reflection if there is any using force and taurus design controllers make the problem very easy here just present a simple globally exponential position control by using the force as input we can prove this has a nice properties given that your force commanded can be satisfied within some bound and similarly this is an so3 almost global attitude tracking controllers as uh as as before you can you can achieve globally exponential uh stability uh given that your torque requirement can be satisfied within some bound now the question is how do we how do we generate those forcing torques so for force allocation the first step is determining desired attitude for low speed all we have to do is to ignore the aerodynamic forces and try to align the rotor in the direction of flight that just as a multi-rotor will fly for higher speed you will have to prioritize wing lift by calculating the desired angle of attack and then use try to get a rotation matrix from our current frame to the desired frame and then we can for the looking at the current state of aircraft we can subtract the amount of air downforce that we estimate the aircraft is generating subtract that from our desired force and then let the rest to be satisfied by the thruster forces but oftentimes it's not possible to satisfy all kinds of structural forces so we apply a mass to get to it for example in this case only z or body z and body x force are are achievable or y force are are usually non-achievable now the next problem is control allocation is to given uh the problem is given the thruster and torque what is the individual commands were given to the rotors we know the mapping is a linear mapping w equals bt w is the combined force in torque here we call it the wrench usually we have a feasible control space the maximum amount of thrust your each thruster can generate and that typically looks like a hypercube inside some high dimensional space and by applying a linear mapping to it we can have a polytope that's in r6 for example now we call this feasible control space and this part is the attainable range space so the problem would be graphically given something inside the tangible range space what is the control inside the feasible control space so it can be formulated as a qp to minimize the effort of control at the same time satisfying all the other need and the feasibilities so obviously you can solve that control problem or solve that optimization problem um but it would be actually slower than needed because control allocation happens on the lowest level of entire higher hierarchical architecture and require the fastest update rate so in practice often we will use a simple linear mapping for example a right pseudo inverse the right side of inverse is a optimal solution to the original problem if we don't have an inequality constraint however simply applying this right pseudo inverse onto this polygon attainable space here you wouldn't get the feasible space you would get some space that could lie outside the feasible space meaning you will have saturated control inputs so how do we handle it so one solution we propose is to have a offline optimized inverse mapping bt prime so we can minimize this with some problem set up try to minimize the frequency mortgage to minimize potential efforts of control we also want each loader to have cinnamon similar amount of thrust during allocation so the their deviations are small um and also we can do we can fit a applied range space something like a a hyper rectangle inside this polytope such that we can show in simulation uh by by applying this optimized inverse the the the space you recovered will be always inside the feasible range feasible control space so that we don't have uh we avoid the saturation problems or if you still will have saturation we can also do a recursive control allocation it's by eliminating saturated control signals one by one recursively now here's a simulation by randomly sampling a hundred thousand different wrench insider obtainable range space and look at how the allocation will work using different methods so the pn is the pseudo inverse the quadratic program is solving an optimal optimization and the rca is the recursive control allocations as you can see the pseudo inverse as a baseline computation time of one but you would have to saturate some controls if you're if you're not using the offline method to optimize that inverse map on the other hand optimization will have zero saturation but will have three other magnitude higher computation need rca however would achieve zero percent saturation at very minimum addition to the computation cost now putting the uh proposed architecture through a simulation environment when we're given a very simple velocity profile simply telling the aircraft to go upwards for five meter five seconds at the speed of five meter per second and go forward at the speed of 50 meter per second the aircraft can exhibit a very natural transit trajectory another thing that transition structure wasn't designed before right rather it's exhibited by this architecture intrinsically so you can see in the beginning the allocation tells the aircraft you have to be flat zero pitch going upwards at some point push downwards to gain some speed and we have enough speed to go go back to around zero pitch again for fast forward flat all of this is achieved intrinsically within the architecture now we can also apply this to a real environment by putting in the front of fan array wind tunnel and that can generate uniforms flow up to about 5 8 meter per second in this case so we first have the pilot input some 3d attitude and 2d force commands and then we can achieve some reasonable results by having decent attitude tracking uh having uh flying in front of the wind uh the problem here is that kylo will have to input those manually and he would have uh he would be challenging for him to hold the position at the same time because we have to assume the form the the wind is uniform in our case so how do we improve this uh uh real-time unsteadiness that can occur from the flow so what we propose instead further is a physics-based adaptive method and there were a lot of adaptive control literatures on for example linear parameters models or using composite adaptation by incorporating both tracking and prediction errors for flight control they there are works uh spitting angle attack and angle sideslips online but mostly for estimation purpose not for control but for flight control we can do uh there there has been work done on adapting aerodynamic coefficient or neural network parameters so in our case we know force allocation is the key to to achieve very accurate precision tracking and the key to that is to have an accurate force estimation so in this part we actually use a more comp a simpler vehicle that has multi-rotors and then fake swing and forward rotors at the same time incorporating a novel sensor that can get more information out of the flow using the same rotor model but augmented with the side force so we add the the side force of the rotor that could become significant during forward flight and we use the same linear and quadratic aerodynamic models were suspected to lift and drag before we have this novel sensors that use differential pressures to back out a incidence velocity onto the mainly i'll combine them together we can actually write the body force as a linear combination of the of parameter vectors and also a basis function matrix with this form we can design a composite adaptation scheme that's adapting both the tracking area at the same time the prediction error the prediction error is simply the difference between the measured acceleration after the filtering and also the predicted acceleration of the filtering and we can further augment it via a recursively square method with exponential forgetting so now the adaptation scheme online would be as if it's solving a least square problem with the exponential decaying window so we test this in front of phantom ring wind tunnel in a motion capture environment for feedback position control so the first showcase we'll we'll have here is as the airspeed ramps up we'll see the aircraft align itself with the flow in water to satisfy the additional forces from the aerodynamics of the wing as you can see as a speed ramp up your angle of attack and angular side slip initially unregulated if you actually become regulated towards some some angle determined by the force allocation and the aircraft pitch up slightly to generate the amount of thrust needed a genuine amount of lift needed from the wind now in the second showcase we will tilt the entire wind tunnel from zero to nine degrees and back to zero while keeping the wind speed route to be constant so in this case the wind direction changes as you can see internally the allocation tells the angle of attack and angle side slip to stay rapidly constant but we have a varying pitch from as the aircraft is tilting into the wind and then back flat again to satisfy to to fly uh according to where the wind direction is demanding so we have this simple force controller as before we augment it with a composite adapter controller um we would like to compare it uh with a baseline baseline pd and pid controller where the parameters are fixed now those fixed parameters are obtained through wind tunnel testings and they're fairly accurate for steady state purposes but we'll see for transient effect if they're not they don't perform so well in this experiment case we'll show next we'll be ramping the fan array profile from 0 to 30 to 50 to 70 and then suddenly shut it off that would roughly correspond to 4 6.5 and 9 meter per second wind now if we first look at let's first look at pd versus pid controls the up the upper plot is pd the bottom is pid it flies pretty steadily except every time when a wind ramps up you see a sudden drift from its uh hold of the position now the integral control can comes back over time given this integrated power in that eye term but in the end with a sudden drop off of velocity you will set a huge overshoot from the pid now we can see when we compare pid against the composite adapter controller see the upper graph is the composite adapter control now here was a constant gain so now every time the transient effect from southern ramp up around another wind is minimized basically there's no difference visually from the precision tracking performance when the wind changes and in the end during the shutting shut off your overshoots is also minimized an additional comparison we did is on comparing the constant gain versus when the gain is updated in the recursively square fashion we will we expect lead square to have a better prediction and tracking uh tracking performance but in our case it actually did not improve the performance further and in some cases you can see the the constant gain outperforms the rls uh the recursive least square uh we plot everything together as you can also see in this set of graph here uh to further just to summarize what we have shown in the videos uh from the improvements we have over uh our baselines on the on the adapter controllers and also the prediction performance by using adapter control because now i can predicting the forces the the the magnetic forces as well so next we present a method for veto designs that can make the rotor configurations more tolerant towards rotor failures so we have the same dynamics before except now we focus mostly on the rotor force and torques and we will test and analyze based on a simple rotorcraft this is the aip 1.0 prototype shown here with the rotor defined on the on the graphics here um the prior work on fault tolerant control usually focus on having a backup controller whenever a fault is detected at the at the cost of reducing attitude authorities for example a hexacopter with six shoulders would lose ya'll completely out control completely uh in event of a lot losing a driller but you can recover some of the authorities by having rotor tilting out of the plane so in this work we will focus on the design aspect of it is how to how to get a configuration that's most optimal for for different fader cases so first we define a static cover as as eventually a problem of just reaching zero attitude uh because through force through position and force control the convergence attitude will eventually become zero in aesthetic cover so given the note of uh the definition of knowledgeability as the system's ability to return to a zero state given feasible control inputs we find that for the attitude subsystem for it to be now controllable meaning for it to become stabilized back to zero attitude is required that the thrust the torque zero torque is in the interior of the moment space so what does it mean it means that basically the origin when you have a moment space in r3 your origin has to be on the inside of it so it cannot be on the boundary or on the outside we define this moment space by using the maximum thrust and the rotor configurations and we know this moment space could be determined by some design parameters such as order locations or orientations we define a quality measure of controllability by putting a cuboid that's fixed max center at origin and uh the maximum size of it inside this uh moment space and we define its scale as kappa bar and that's our metric so basically bigger these boxes the bigger the controllability of the aircraft uh in numerous cases are now the file tolerance procedure is listed as follows we first has a set of all possible failures and also parameter space and for each of those elements uh each failure case each design we can we can optimize this convex problem to solve for that metric type of bar we just discussed and then we optimize for the worst case behavior we maximize this metric for the worst case failure case uh worst case loader failures so among all failures what is the minimum and what i'll try to maximize the minimum so here example of that um afa 1.0 but designing the tilt angles symmetrically bounded from 0 to 20 degrees and in this case well it turns out we can have an optimum design parameter of 19 degree and 13 degrees respectively and comparing to the baseline of only a non-tilting of zero degrees we can see the metric the contributing metric improves on all rotor failure cases and especially in case such as failing rotors three and seven uh the baseline case will have that origin on the boundary of the moment meaning it cannot generate um it cannot generate the uh uncoupled moments in different axes whereas we can recover some controllability by having the optimal design as in you can see the origin is on the interior here another case when fading rotors one and eight we can see a significant increase in the moment in the metric uh by fitting this cuboid inside this moment space now for the same failure case 1 8 we do it failure in in in flight and compare the performance of control by perturbing roll pitch and yaw axis separately so what you want to see here is for baseline um the draw pitch perturbations basically have no effects on the overall performance as the position tracking position holding is relatively well except when you perturb yaw during the yeah negative yacht case you have issues tracking the the desired trajectory because the loss authority in the moment space when you have an optimum design now we recover some control authorities so this does not happen anymore all right so before we move to the next part are there any questions okay um so now that uh now let's talk about how do we improve the control intelligence by having um for example learning based method in particular a neural network based method so we so far we have this body force and body torques that we know have to model on and we model it via the thruster forces or non-linear or linear aerodynamic forces and overall we know the thruster force we're pretty confident because they they end up being agreeing with the experiments very well and aerodynamic may not been maybe not so much and it's natural for us to think about a data-driven approach where approximating affine tau a using a deep neural networks and given a lot of research on deep neural networks they've also been a lot of combined new dnn and control work as well people have been using deep neural networks to do system ids on for example helicopter dynamics using neural network to generate trajectories that feed it onto the downstream controller reinforced learning with continuous actions are particularly uh related to control uh for control applications uh also uh we could learn the inverse dynamics through the new dnn and play controller to it or learning the app not functions and in our case we'll present two approach the one is designing a feedback controller when partially your dynamics is represented by dnn and also when your full dynamics is represented by dn how would you design controllers and observers and how to train them respectively so given an l hidden layer v4 network where w is the matrix of the weight parameters of each layer and the v-act is a relu activation function it turns out we can regulate the ellipses of this entire network through some determined constant lambda by applying spectral normalization on each wave layers and for control we know we want to satisfy the desired control as as before our desired forces from the position controller as before and in the case of multirotor it's basically having the thrust the thrust from rotors equal to amount the amount of desired force subtracted by the the aerodynamic contributions so we would quick equate that into solving the control allocation problem again except now our control input shows up on both sides of the equation because adding this additional dnn making the entire problem not finding control so what we propose is using a fixed point iterative method by feeding the control input from the last time step into the neural network and subtract it from the desired force and then do inverse mapping on top of it and turns out in order for this to converge and work the ellipses of the network multiplying by the the singular value of this inverse matrix has to be less than y meaning the entire mapping has to be a contraction so with some assumptions on the projection trajectory are smooth and bounded our controller updates are fast enough for some against some skill factor of our error and also our learning are affected in a sense that has some very bounded learning errors how we can actually prove the entire system system under this controller is globally uh is exponentially stable um given the the gains the learning error balance and also the lipschitz of our network so to to show the results we do we apply the method on the quadrotor drill the intel arrow drone here by doing some data collection first and then do some offline batch training and then deploy the controller online so the first thing we want to show here is that applying spectrum normalization to dns actually gives better generalization for the network now on the upper graph is the vertical forces plotted against the vertical velocity with vertical height so our new domains which is a domain we haven't collected any trading data the spectrally normalized dnns show better smoothness functional predictions whereas the non-spectrum normalized ones actually have this large deviant given the data that hasn't seen before i think practice correspond to a sudden failure of the controller at these at this data point because it hasn't predicted very large and erroneous forces on the bottom graph is when we train the data uh when the vehicles flying across tables we can see the spectrum normalized network has a very clear table boundaries whereas uh the unspectrumized ones doesn't have it and also have a large deviant somewhere in the data space now for close loop control performance we can outperform baselines for example in landing by having having a very smooth and zero speed touchdown on the ground whereas the baseline can't even touch the ground without integrative term or uh because it's not con it's not considering the actual additional cushioning effect similarly for vehicles flying across tables our controllers can get as close to table as they can and the baseline will have the problem accommodating the additional cushioning force from the table also dropping off when it reaches the cliff so in general the pla the method applied on the flight control can also be done on any fully actuated iphone control baseline dynamic system augmented via by a general dnn residual dynamics that's a function of state and control so we can apply the same principle and improve the same stability using using that on that controller the controller is basically the inverse and then feedback in the control input from the last time step now this is all good except the there's a hard constraint on the approximator on this residual on and that is the ellipses of this network has to be less than one over the ellipses of the inverse of that matrix that's already known when this is already known that means this is uh delicious is fixed and in practice there could be a problem in the sense that when you don't know this additional forces and when to come too large or non-smooth this condition wouldn't hold and you wouldn't get a good controller from that so in general we would potentially represent our entire dynamic as a deep neural network then we want to design a controller based on that but the problem with non-alpha and controls how do we do it well theoretically we can do it by just solving this equation we already have the dynamics learned somehow we equate it to some close loop behavior we want to achieve we can solve it we have a controller but instead we propose to represent our controller with another neural network parametrized by theta c now how do we train both networks so we first have to do some data collection and given the method we're going to propose it's our policy this collection can be done by some experts or we can even use the the same controller we have trained controller we have to do some random exploration and during the first stage we will learn the dynamics by looking at the state control and state derivative pairs and doing a supervised learning to figure out what is the transition function so this stage will be learning the parameter theta f for the dynamics network in the next stage using the dynamics network that's already learned we fix that parameter theta f and we feed it into a lyapunov derivative derivative estimator so this is propagating one step forward using our dynamics that's already learned and using our controller that's being learned so we optimize this loss function result this loss function is penalizing um penalizing any negative any negative terms of this expression here so when this when v dot plus alpha v becomes negative oh sorry penalizing any positive returns when this term becomes negative it's considered the system exponentially stable when it's not there could be some issues to it that's why we penalize so overall through this minimizing this loss function we can train the network uh parameter for the controller's theta c but there are often cases that we what we really have is only output y instead of the state x the state x dimension could be unknown for example you could be given a picture of the uh of the drone or some robot and the state that that governs its dynamics could be more than what you believe it is on a drone position velocity and attitude may be sufficient but we encountering wind you could be introducing more states as needed so what we really want is uh to have additional approximations that somehow transform between a normal observation that we already have to potentially more states that we can incorporate into the dynamics so we do that through two additional networks one is called the observation model network parameters by theta h and the observer network parametrized by theta o so these have a general observation model and observer form as in general dynamics models when we convert it into a discrete sense it becomes recurrent network structures so let me explain this in detail here so every time step you're given the observation the current observations you're also giving the prior estimate of your observations and also the prior estimate of your state now your observer network will take those in and output a posterior estimate of the states feed that into the controller together with the current observation the desired observation and the derivative of desired observation and the controller would give out a control control input u together with the posterior astronaut states goes into dynamics that we already learned propagate forward to get the prior estimate of state for the next time step at the same time we'll go into the opposition network to give the estimate of observation for the next next time step and we'll do this recurrently over time so how do we learn it and we learn it using similar methods as best 4 the data collection is also a off part of policy so it can be through some export reject export or some random controllers before to apply this online we'll do this recurrent uh structure as before and when we're doing learning instead of doing uh sampling randomly from the data we actually have to have a sequential trajectory because our formulation r and n we have to train on a trajectory and during the dynamics learning stage we'll be learning the uh we will be we'll be learning dynamics by optimizing the theta uh the dynamics network the observation model network and also the observer network and in the control learning stage we'll fix these three networks and only learn the controller using a similar approach as we discussed earlier except now it's in a discrete sense so so these overall framework can and in principle learn a more general form of dynamics when it's represented by dnn so next we'll uh briefly discuss how do we [Music] accompl compensate for a uh delays in actuation systems so here's the example of such problems uh exists in practice so when i was first implementing our nonlinear controllers on some drones such as the quad rotor and uh fx1 veto here i noticed that when i compare it against the pid controller the pid has additional d term on the derivative of the error here that that's not a that doesn't exist in the non-linear attitude control and the first intuition to have is maybe the only resemblance is in the p4 term on the inertia would have some similar effects uh as the kd term on the pf from the pid so maybe you have to tune the inertia and that's what i did and it turns out it worked pretty good for these bigger drones but when i transformed the smaller drones to an inertia no longer works except we have to tune it 10 times larger than its original intended value and further investigate it noticing that the inertia of smaller drones is several others magnitude smaller and then the bigger ones where well the delays on the motors however are on the similar time skills so then we focus on how to how to the problem must be coming from the delays and how do we compensate for it so delay compensation has a long line of research before people been using pid or pipd controller on linear systems or that there has been a vast work on predictive control by continuously integrating states for future predictions but they would require partial different equation or functional differential equation analysis in our case we'll still propose a predictive controller but we will focus on when the integration is numerical instead of continuous and also our system updates in a sample based or discrete fashion i'll start some mathematical setup uh skips through this but the basic justice there is the original system of what on delayed uh we consider for example we already designed a controller for our orders but we didn't consider the delay we know there's a controller we already designed a bar that's designed for the undulating system that's already making the on-delay system exponentially stable and then we incorporate a delay model so we know in practice at every time sample ti we will be sampling some states we'll be computing we'll be computing a control signal u using this time delta c will finish computing will send over to the actuator with time delta s the system delay now at ti prime the signal reaches the actuator and the actuator has to evolve according to a first order delay dynamics that we propose so the overall model we use here is a sample based first order plus that time model so the first step we do is accommodate for this first order delay and it becomes very simple just like simply having this baseline controller we already have we already designed before and taking the derivative of it and multiplying by this first order time constant this simple addition can accommodate for first order delay uh is converged as fast as this time constant allows but if you want to augment it with an observer then you can actually make it much faster than first order time constant while paying the price of having observer error in your system so we call this a general uh com first order compensator a bar double prime and then we want to incorporate this discrete delay here or the transport delay and the old ways i said before will be modeling the system as the infinite dimensional system because because of this continuous integrative equation doing a continuous predictive control and then we'll have to apply the epnom krasovsky's functional to do analysis but we know in practice control signals are digital often these days and discrete and that the integration done on a computer is also numerical that's also discrete so a more appropriate analysis will be a hybrid system analysis to recall that we have this first order compensator for this great part of the delay that we already designed um so what we want is that ti we want to predict what is this uh we have a sample at ti we want to predict what is state gonna be at ti prime so we do a integration of our information in a around the cutoff fashion so this long-cut integration has this horizon big delta with the summation of delta c and delta s and also h is the step size of the integration we're taking and p is the order of the integration for example rk1 is roughly orders method rk4 is the more accurate first other method and in general the numerical product control mpc is just the first sort of compensator plugged in this predictive state of the future a special case to this npc is when you truncate everything to first order by taking for example letting h equal to big delta you are taking one step integration over this entire range and it becomes a first order approximation so this term is very easy to compute compared to the general predictive formulation now we can do some hybrid stability on the system omitting the details the bottom line is we'll have some nice term that we know will make the system converge because of the nice controllers to it but because we have prediction error we're doing forward prediction we also have sampling error during this discrete sampling stage that's giving us some trouble and we would like to bound these terms somehow and overall we can arrive at a rather complex expression that will determine by how it takes how big the sampling period is and how big the bound of your prediction error would be depending on the order and the step size you're choosing also the model the error in the model you're using so with this uh let's call this uh control the absolute metric if you will using this leaf of metric we can actually get a sufficient condition on sampling type so if you're sampling super fast then your system can have some exponential stability uh under some under on a certain rate of convergence and then we want to analyze what is the computation time effect on the overall metric here so at ti we're we'll try to compensate for this jump here except because we can use different order of the method and also step size the delta c can change and delta c would have potentially affect the total delay so we can express that by by assuming some computation model on how long would be you how long we can use to complete a different prediction uh different rk method and arrive at a a general form of uh the bound that we plug into the metric here that sort of let us analyze how computation time would affect this diagonal metric so so let us do that on the example here the example we use is a double integrator very simple linear dynamics except now it has the delayed model added to it and it's also tracking a variable frequency sounding sort of trajectory making the entire system non-autonomous and non-linear in a sense of time so for this leapfrom metric we just introduced we like to plot it against computation delay delta c and what we want to understand is how a computation time would affect the performance so on the left graph here on each column is different increasing model error and on each row is increasing system delays as you can see you would expect when there when there are very little errors and very little delays it turns out you would favor higher order method over lower order methods first of all and you will favor compute longer because longer computation gives you better accuracy and better accuracy give you better control in the sense of this metric here so this is in the case when sample period is fixed at 0.1 seconds you always update at 0.1 seconds every 0.1 second of the control while you're increasing delays and also uh the modeling error it turns out this this relationship will not hold anymore as a lower order method an rk1 an or order method actually outperforms higher automated and also it's not always good to compute longer because longer computation can also lead to longer delay and longer delay with bigger error a bigger modeling error can give you worse control performance on the other hand if you somehow letting the sampling period equal to the computation delay now is we can update uh as soon as finished computation and then you can see a relationship that reverses in a sense that there there sometimes exists an optimal computation time for for a certain metric that we have here it's not always it's it's almost always beneficial if you can update faster instead of compute longer for better accuracy so in this case uh frequency of control actually helps you more than accuracy of the prediction so that was just plotting against some theoretical bound and we can do this in the simulation as well so in simulation uh we we tracking trajectory we plot the the same computation against the rooming square error of the tracking uh for both the left side is the fixed sampling time the right side is the variable sampling time and you can see for fixing running time you have rk for outperform rq1 and that uh in some cases in the in the simple case uh changing the amount of computation doesn't matter too much because we have very fast computation on these systems but however when you when you change computation when you change the sampling equal to the computation delay it almost always beneficial to have a a lower timing computation so that your frequency would increase so this is corroborated by with the prior results we just shown on the right graph we show some comparison between baseline methods and our proposed methods as you expect our proposed the the full-blown uh npc actually outperforms other method in different uh different lengths of system delays uh what's surprising is that the first order truncation actually works as well with very little combination up until some point a significant delay where the first other approximation wouldn't hold anymore and also what's interesting is the baseline controller would apply naively to the late system actually doesn't perform as well as a pd control so when you don't consider delay your non-linear controller actually does not perform pd control just because the additional term on the derivative there and similarly we have the trend when we when we plotted against a different frequency of our trajectory so the last plot we'll show you here is to understand this first order truncated control and what is the main benefit when can we use it so we combine that when we combine the delay of both transport and first order time constant um and we the vertical axis is the proportion of that total delay that is dynamic delay the first order delay if you will uh so how do we read this graph is a lower total delay uh it doesn't matter how do you model the delay it i lowered a lower delay um all i need is find the total time constant and then and feed that into this truncated controller so it doesn't matter where the source of the delay will come from whether it being dynamic or whether it being transport on higher delay values if it's still from the source of small dynamic delay then the truncated controller will still work pretty well where transport delays will have issues being compensated by the the first order truncation here now we applied that simple method the truncated truncated controller to uh quarter order system as we first have shown an example on on on this smaller drone the general delays on a scale of 100 milliseconds the augmented controller is simply using our non-linear one uh do a numerical derivative and multiply it by sometimes time constant that we can tune so this is a separate work we've done on uh on the newer swarm paper which is using a neural network for swamp swarm planning but the underlying controller was using this delay compensation controller so i thought we don't have actual separate comparison results it turns out that because of the additional air dynamic during interaction the delay becomes significant and thus without compensation it doesn't even work in any of the trajectory tracking tasks all right so to summarize what we discussed we just established why ev toby uh fixed-wing vehicle aircraft is better for the urban air mobility applications we then move on to define a set of uh modules for the unified control architecture for pick 2 and eb tool and we can enhance it with some adaptive method and physics based modeling and using some novel sensors that can measure airflow vectors we have a design strategy that can optimize our rotor configurations so it's better against the rotor failures and then we propose method that when the when the dynamics is partially or fully represented by dnn how do we design and train controllers to it and in the end we have a augmentations that can transform existing controllers for a non for on delay system into controllers that can just uh compensate for dynamic and transport delays that works for uh works on practical digital control systems so with that um this work is uh supported and supervised by my committee uh drill central richard and nissan all the work with collaborative work are listed here if you're interested and with that i conclude my talk and i'll take any questions
Up Next

VTOL Flight Control Simulation: Vertical Takeoff Tutorial
@terrydenery7078
311 views•2024-01-07

Decarbonizing Shipping: New Marine Technologies Explained
@business
138.8K views•2024-11-08

Polymer Environmental Degradation: Mechanisms & Stabilization
@iit
1.8K views•2012-07-10

The Advanced Engineering Behind ASML's EUV Lithography Machines
@veritasium
18.2M views•2025-12-31
Related Study Plans & Knowledge Roadmaps
Structured learning paths in Engineering

















![How To Robot No.3 [RE-UPLOAD] -- Basic Machine Learning](https://i.ytimg.com/vi/GRnixWjdmRE/maxresdefault.jpg)











![HIL Solutions [EP.6] การประยุกต์ใช้Hardware In Loopในการทดสอบผลิตภัณฑ์โดย อ.ศุภลักษณ์ ศรีตา ม.นเรศวร](https://i.ytimg.com/vi_webp/qPLnL2q_KDw/maxresdefault.webp)









