Contact: Jagdish Achara
Multiple software agents can be used to perform the real-time control of electrical grids. The control performance of such solutions is influenced by software non-idealities such as crashes and delays of the software agents, and message losses and delays due to the underlying communication network. To study the effect of these non-idealities on control systems, we present an open-source software testbed, named T-RECS . It uses software containers to test existing software without modification. The communication network among the software containers is emulated using Mininet framework, which allows for real packets being exchanged. The electric resources in the grid are simulated using state-of-the-art models, whereas the grid itself is modeled in the phasor domain. As control agents are run as is and message exchanges are emulated, T-RECS accurately captures the real-world properties of the control framework. We demonstrate the working of T-RECS with the Commelec control framework and show the effect of network non-idealities on the control performance.
We have a version of T-RECS available but there are some missing features. During this semester project, the student will work on incorporating new features to T-RECS. Specifically, in this semester project, we want the student to work on emulating the real communicaiton network in T-RECS using Mininet . Also, the student will study the effect of different network bandwidths, packet losses, and packet delays on the control performance of COMMELEC . Lastly, the student will run a scenario in both the EPFL microgrid and the T-RECS. This will enable student to compare the T-RECS simulation with the real EPFL microgrid run and study the reasons of mismatches if there are any.
- Emulation of real network in T-RECS using Mininet
- Studying the effect of packet lossses and delays
- Comparing the T-RECS run of a control scenario with the microgrid run and analyze the mismatches if there are
- Strong interest in the topic as well as in the learning process
- Knowledge of Mininet, networks, and software development
- Proficient in Python