我正在使用Dymola设计一些直流电动机和电源的小模型。完成工作后,我保存了所有内容并关闭了Dymola。下次打开它时,某些(不是全部)连接不再显示。因此,我尝试再次绘制它们,但是Dymola告诉我,这些连接已经存在。当我在“文本”部分中查看连接时,它们仍然存在。
我正在使用Ubuntu 18.04和Dymola版本2019 FD01(64位),2018-10-10。我也尝试在Openmodelica中打开模型。但是也缺少相同的连接。
和文本表示形式:
connect(controlSoftware.s1, switches.s1);
connect(controlSoftware.s12, switches.s12);
connect(controlSoftware.s2, switches.s2);
connect(controlSoftware.r1, switches.r1);
connect(controlSoftware.r2, switches.r2);
connect(switches.p, constantVoltage.p);
connect(switches.pin_n, motorWithCurrentSensor.n);
connect(switches.pin_n1, motorWithCurrentSensor1.n);
connect(controlSoftware.cur1, motorWithCurrentSensor.Currenctsensor);
connect(motorWithCurrentSensor.pin, constantVoltage.n);
connect(motorWithCurrentSensor1.pin, constantVoltage.n);
connect(motorWithCurrentSensor.Speedsensor, controlSoftware.speed1);
connect(controlSoftware.speed2, motorWithCurrentSensor1.Speedsensor);
connect(controlSoftware.cur2, motorWithCurrentSensor1.Currenctsensor);
connect(ground.p, constantVoltage.n);
我该怎么做才能恢复连接?没有图形表示,我很难解决问题。
谢谢您的帮助
最好的问候杰拉德
答案 0 :(得分:2)
我看到您使用的是Ubuntu,实际上(至少)在Dymola2019FD01中存在一个错误,在编写注释坐标时,该错误确实混合了Komma和小数点。因此,如果您进行检查,可能会看到某些图形注释具有{10,5,10}
而不是{10.5,10}
使其无效。我尚未测试过Dymola2020是否已解决此问题,但在此之前,您可以使用变通方法来启动Dymola,如下所示:
#!/bin/sh
export LC_ALL=C
exec /usr/local/bin/dymola-2019FD01-x86_64 $*
即,确保将本地设置为“ C”,以免Dymola引起混淆。
答案 1 :(得分:0)
您可以
或
annotation (Line(points={{0, 0}, {0, 0}}))
使用第二个选项,您的connect语句将首先在代码中如下所示:
connect(controlSoftware.s1, switches.s1) annotation (Line(points={{0, 0}, {0, 0}}));
然后您可以使用图表层重新排列连接点。
答案 2 :(得分:0)
一些背景信息:Modelica中所有组件的图形表示形式位于类定义之后的注释中。对于连接也是如此。
较小的电气示例之一是Modelica.Electrical.Analog.Examples.ShowSaturatingInductor
,您将在其中找到以下连接语句:
connect(SineVoltage1.n, Ground1.p) annotation (Line(points={{-60,-16},{-60,
-16}}, color={0,0,255}));
connect(SineVoltage1.n, SaturatingInductance1.n) annotation (Line(points={{-60,-16},
{-20,-16},{-20,-10}}, color={0,0,255}));
connect(SaturatingInductance1.p, SineVoltage1.p) annotation (Line(points={{-20,10},
{-20,20},{-60,20},{-60,4}}, color={0,0,255}));
connect(Inductance1.p, SineVoltage1.p) annotation (Line(
points={{20,10},{20,20},{-60,20},{-60,4}}, color={0,0,255}));
connect(Inductance1.n, SineVoltage1.n) annotation (Line(
points={{20,-10},{20,-16},{-60,-16}}, color={0,0,255}));
第一部分说明实际连接了哪些连接器。根据这一部分,产生相应的方程式。以下注释包含图形表示。图形部分对于模型起作用不是必需的。看来这部分内容已在您的模型中迷失了。
关于您的问题:恢复图形表示的最简单方法应该是从模型中删除所有connect
语句,然后重新绘制它们。作为替代方案,您可以手动添加注释,也可以通过在图形层中对其进行编辑,但是这两个选项都相当麻烦,这就是为什么我建议删除并重新绘制的原因。