PSCAD学习笔记(3)python调用PSCAD自动化库代码解析:仿真波形图自动保存到word

 引言

该学习笔记结合官方文件和个人学习见解撰写,主要分享一些常见实用功能,欢迎讨论、补充、指正。PSCAD相关免费学习资源实属稀缺,如果本文对您有所帮助,麻烦点赞评论支持一下。您的支持是我更新的动力。

前情提要

PSCAD学习笔记(2)——python调用PSCAD自动化库代码解析:组件控制

这里使用官方示例的V463讲解,该示例中的PSCAD模型与SIMPLE V463相同。

Python脚本文件Switching

重要!跳过PSCAD认证!

除了在前篇中提到过需要修改的代码(跳过登录):

pscad = mhrc.automation.launch_pscad(pscad_version=pscad_version, fortran_version=fortran_version)

修改为

pscad = mhrc.automation.launch_pscad(pscad_version=pscad_version, fortran_version=fortran_version, minimize=False, certificate=False)

还需要将下列代码注释掉或删除(跳过license检查):

        # Check if Licensing Cetificate exists, on this computer
        pro = os.path.isfile(r"C:\Users\Public\Documents\Manitoba HVDC Research Centre\Licensing\Licenses\74.xml")
        edu = os.path.isfile(r"C:\Users\Public\Documents\Manitoba HVDC Research Centre\Licensing\Licenses\72.xml")

        # Existing certificate exists!, set PSCAD to use Certificate License
        if(pro or edu):
            pscad.settings(cl_use_advanced='true')
            print("PSCAD is using a Certificate license!")
            
        # No Certificate exists, set PSCAD to use dongle License
        else:
            pscad.settings(cl_use_advanced='false')
            print("PSCAD is using a Dongle license!")   

新建word

如果电脑安装了正版microsoft word,就会新建microsoft word文件;如果是盗版无证书就会失败。

想使用WPS新建word,需要卸载microsoft全家桶。

        # Open Microsoft Word
        word = Word()
        word.new_document()

 在word中写标题

        # Add Title
        word.textParagraph("Appendix 1: TOV Results: Transformer Energizing", 20, True)

        # Save image of breakers and graph to word for reporting
        word.textParagraph("Test 1 Energize T1 with T2 and T3 open", 10, True)

复制波形图粘贴到word

        # Send an image of circuit and graph to word
        main.select_components(x1=1425,y1=634,x2=2394,y2=1240)    # 定位main页面中图形的位置
        main.copy_as_metafile()    # 复制
        main.clear_selection()    # 定位复位

        word.pasteImage()    # 粘贴到word
        word.addPageBreak()    # 插入word分页

 这里主要讲解如何定位波形图框:

 

选中想要截取的波形图框,右键Attributes,Schematic中给出了图框左上角的坐标(1440,918)和宽度576、高度288。还有一种粗糙的快捷方法,那就是将鼠标分别放置在图框的左上角和右下角,软件右下角会显示当前鼠标的坐标。

因此,代码应该写作

        main.select_components(x1=1440,y1=918,x2=1440+576,y2=918+288)

怎么好像和官方对不上呢?让我们运行下看看结果。

运行结果

官方脚本

很明显,官方脚本截取的区域过大了,但是这提示了我们,坐标设置合理的情况是可以清晰截取整个仿真模型的!

修改后的脚本

仅截取了波形图,学会以上操作,面对需要反复运行、保存波形图的工况就可以“偷懒”使用python脚本实现了。

注意:长时间运行python脚本需要禁止电脑熄屏,否则会导致仿真终止。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_GGG_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值