![]() ![]() ![]() Trajectories of the IEEE 39-bus system with different VSGs following the generator Gen1 outage. In the third scenario, the SG at Gen5 is replaced with a VSG with all other generators unchanged.įig. In the second scenario, the SG at Gen5 is instead replaced with an idealized SG, labeled SG2, with a very fast TG time constant of 0.1 s. In the first scenario, all generators are conventional synchronous machines, labeled SG1 with TG time constant of 5 s. The virtual impedance of the VSG is set equal to the SG stator impedance. The inertia values of the VSG and SG are the same. Since the VSG only applies to primary control, auxiliary and secondary controls of the SG, including power system stabilizers and secondary frequency control, are removed. The VSG voltage regulation gain is set equal to the AVR gain of the SG. The VSG droop gain is set equal to the TG gain of the SG. For the comparison, the control parameters are set as follows: The VSG replaces the generator located at bus 34, that is, Gen5. In this configuration, the whole WECS can be seen as an SG, where all the power goes through the swing equation, while in the configuration of the previous section, only the power from ESS goes through the swing equation. Then add the RouterTestingModule (it already includes the MockLocationStrategy) to the imports of the ElementARoutingModule and call withRoutes(routes) to set up your routes.The VSG control is applied to the grid-side converter of the system, while the storage-side DC-DC converter is used to regulate the DC bus voltage and the turbine-side converter maintains its original MPPT function. ![]() ElementA and also define a named router outlet inside the root component of ElementA.Į const routes = Great! How can I use it?įirst set up your routes inside the Web Component, e.g. This means when we navigate to SettingsHome inside ElementA, the browser path won’t be changed and still reads the previous URL. MockLocationStrategy is technically only used for testing purposes, but because it fires simulated location events it is also a great solution for our routing problem. Angular already ships with a great solution for this - the MockLocationStrategy. The second option would be to use routing without displaying the route changes in the Browser URL at all. Using this strategy, the URL can include both the root route and our secondary routes: (elementA:settingsHome) (More about this later). Right now I think the best solution for this would be to use named router outlets inside the Web Component and append them to the current path. Let’s say on our page we route to ComponentA by navigating to the path /component-a The URL now looks like this: īut what if we also want to route to a component INSIDE a Web Component, e.g. Since our Root Application is already using the RouterModule forRoot Angular throws an Error.īesides, it won’t work, because our Web Components are like small standalone Angular Applications and they don’t know if there is a root RouterModule in a different Angular App.Ĭan I even use the Angular Router in my Web Components?īecause the Router modifies the Path of our URL, we would need to handle route changes from multiple outlets across the entire page. In each Web Component we now also want to use the Angular Router, but because they are encapsulated Angular Modules, this is where things get a bit tricky.Ĭan’t i just use RouterModule.forRoot() ? It also implements the RoutingModule to route to ComponentA or ComponentB. Our Root Application is responsible for lazy loading our Web Components and populating the Web Component element tags when we need them. Our index.html looks somewhat like this: But how can you use it’s power in your Angular Web Component?įirst imagine the following Application Structure: RootApplication ├── ComponentA ├── ComponentB ├── WebComponents ├── ElementA │ └── SettingsHome │ └── SettingsProfile └── ElementB └── ElementBComponent The Angular Router is a very powerful tool and very easy to set up in a regular Angular Project. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |