Power Grid Simulation and Security Analysis
This week focused on the implementation of power grid simulation using tools like CyHELICS, pandapower, and OpenDSS. Attack vectors were planned and analyzed to enhance security measures. Discussions on the project's scope and objectives were held, with considerations for resource optimization and project focus. The challenges faced in software usability and model lag in OpenDSS were addressed, seeking ways to improve efficiency. Recommendations were made to streamline efforts and ensure project alignment with its original goals.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
Overview of Work Explore CyHELICS, pandapower, and OpenDSS Plan attack vectors and messed with Security Onion Wrote ethics reflection
Actual Work Started working on the Design Document Started implementing using Docker with Helics and Pandapower Talked over possible power grid designs and OpenDSS Planned attack vectors to mirror real world scenarios Talked more over the broad scope of the project and what we want to focus on this semester
Actual work - Tyler Started planning attack vectors to mirror real world scenarios so that the attacks can be more translatable to the real world. Stuff like using Eternal Blue against outdated Windows 10 versions (which does happen), simulating what would happen if a phishing attack is successful, simulating a keystroke injection attack, etc. Started delving more into Security Onion to figure out how to make it work for our use case My recommendation: we drop the use of Security Onion. The original project document does not state anything about defense. If we just want logging, using ElasticSearch is less resource intensive. Otherwise, we will be using a lot of resources just to get Security Onion to function well in a VM network.
Work - Tommy/Matt Accessed OpenDSS-G on the windows VM Watched intro videos on how to create and import models Sante Fe Model: Downloaded/Imported/compiled the model Explored 123Bus Test Case provided in the DSS-G download files Explored how to change, view, and simulate different components in the model Explored how to use DSS-G
Question - Tommy/Matt Is there a way to make large models in OpenDSS-G less laggy/slow Zooming and moving around models is very laggy and takes a long time to load Model compilation also takes a long time Had problems with the software freezing
Architecture Diagram Squares: Dockerized container Clouds: Virtual machines Circles: Programs
Actual Work - Kaya Focused this week on trying to understand how helics, pandapower, and open/pydss will connect and work together. Simulated a couple examples with pandapower to understand output information. Resources: https://www.youtube.com/watch?v=9qbrt_uPkJw https://www.youtube.com/watch?v=HBOppPlgp3Y https://www.youtube.com/watch?v=66SSDhSNV7k&list=PLWIXcESdYmbxuDXSrARFZaqU3qR3JbGR5&index=13
Actual Work - Kaya Runner json defines federates and brokers. Json with pubs and subs. Defines how many federates. Endpoints should be used for message federates, and not for value federates. For multi computer: One computer runs broker, other computers run simulations Add broker address: "broker_address": "tcp://<IP address of broker>", https://docs.helics.org/en/latest/user- guide/examples/advanced_examples/advanced_brokers_multicomputer.html
Actual Work - Kaya Pandapower is simulating energy usage and flow. Open/pydss is simulating the grid, and uses the power usage from pandapower to simulate usage of the grid? Questions: Can pandapower, py_dss and helics communicate through VMs? Would we be able to have pandapower, py_dss and helics all on separate VMs communicating? What are pandapower and py_dss communicating? You aren t supposed to use value federates with endpoints because it could be intercepted, would this be a viable way of simulating a man in the middle attack?
Actual Work - Justin Read up more on Docker and the best way to setup our environment Created Scripts to initialize and tear down entire system Will move to make this work cross VM (Start and Stop Brokers on other vms)
Questions - Justin Besides Youtube videos, are there any formal documentation/resources on how to connect PythonDSS and PandaPower to HELICS? Specifically PandaPower Next Step: Make the Flask Frontend Skeleton
Work - Zach Created a base number of semi/non destructive attack vectors Defined outlines for what each vector would accomplish
Questions - Zach Is there any way to easily reset our whole virtual machine network with a snapshot? So we can implement/test more destructive cyber attacks without having to reset each individual machine after each test.
Next Week's Plan Work on actual connections between the docker instances of PandaPower, HELICS, and PythonDSS