有读者后台留言,希望开发一个物性查询软件,我回复说可以直接使用refprop查询,他说refprop界面操作不方便的确,使用refprop查询要设置项比较多,单位、参数、物质都要选择,且单位、参数、物质更换不灵活。当然你也可以保存设置,下次打开以后可以不用设置,但是总觉得还是不够简单,既然读者有需求,那我就尝试下,做一个界面简单的物性查询小工具。首先我用coolprop库来计算,很快就做出来了,支持R32、R290这些制冷剂计算。但是计算R454C这种非共沸物性就不行了。比如压力2Mpa下,使用coolprop定义R454C组分,一开始我不知道应该用质量分数还是摩尔分数,所以两种方式都试了下:components = 'HEOS::R32[0.215]&
R1234yf[0.785]'
这样运行出来结果:2Mpa压力下,泡点温度(干度=0)为55℃,露点温度为60.51℃。2、按摩尔分数定义:
components = 'HEOS::R32[0.375149546574766]&
R1234yf[0.624850453425234]'
这样运行出来结果:2Mpa压力下,泡点温度(干度=0)为47.07℃,露点温度为54℃。使用refprop的GUI校核一下,2Mpa下,泡点温度46.462℃,露点温度为52.794℃。从这个结果来看,按摩尔分数定义更接近refpropGUI的值后来我用冷媒尺复核了一下,2MPa下露点温度和refpropGUI一致,这说明refprop算出来的没问题,前面判断摩尔分数定义也没问题但是使用coolprop算的R454C露点温度、泡点温度,和实际还是有偏差,我又校核了焓、密度等均有偏差,这个偏差存在可能会导致工程设计不精准。于是我又继续探索一种更精准的方式,那就是部署REFPROP来计算。下载了refprop10,安装到本地,再使用代码调用路径,过尝试了多次均失败,遇到各种各样的错误,我把错误发给AI,一步步排查,最终成功了。可以给大家看下界面,假如计算2Mpa下的露点温度,这和refprop算出来的结果一模一样,这个结果出来很是惊喜,过程还好没放弃除了露点和泡点计算,我们还需要已知其他量算出焓、密度这些,比如知道温度50℃,压力2Mpa下密度多少,用refprop算出来是下面结果有了前面的结果,我们已经掌握了R454C/R454B这种非共沸制冷剂的代码调用方法,为了让软件更友好,我增加了个功能,就是自定义配比组分,定义新混合物,点击定义新混合物后,就出来下面这个界面,在红框内输入混合物名称,这个你可以自己随便取个名字,能区分就行,然后在组分名称和摩尔分数框分别输入这个混合物各组分的制冷剂名称和摩尔分数占比,比如R454C是由R32和R1234yf配比,摩尔分数根据实际修改下。如果超过了2种制冷剂,可以点击添加组分,会跳出第三行,也是一样定义组分名称和摩尔分数。设置好了点击添加混合物,上面空白区域就会出现这个自定义的混合物。返回主界面制冷剂选择下拉框,选择你定义的混合物,就可以计算了前面是单点计算,如果我们有很多数据,一个个算很费劲,那么增加了一个批量计算功能,比如我们已知温度和压力,把数据粘贴到指定区域,点击开始批量计算,就可以。下面这个例子就是粘贴了2组,计算后下方就出现了2组结果。勾选选择列的框,可以把结果导出到Excel表因为调用refprop库,把代码打包为exe过程也尝试多次均失败,后来还是成功了。①制冷剂有常用的预定义的,支持自定义单个制冷剂,还支持自定义混合物,操作非常简单②温度、压力、干度通过下拉框直接选择,单位可以根据自己需要随时变化调用了refprop库进行计算,结果本文已经验证过,与REFPROPGUI算出来的一致;改变数值,下方结果直接出来,速度很快这次掌握了调用方法做出来个物性查询工具,后面我们用python做制冷剂物性计算结果也会更精准,比如改造前期发布的计算压缩机选型、管径计算小工具,实现了所有制冷剂皆可支持,这是一个很好的开始!