基于Modelica的异步电机-齿轮箱-丝杠阀系统建模及参数求解问询
Modelica阀驱系统建模问题及求解需求
系统描述
我是Modelica新手,计划用现有知识建模一套用于供水射流系统水箱水位控制的阀驱动物理系统。系统包含以下组件:
- 异步电机(asynchronous motor)
- 损耗齿轮箱(lossyGear)
- 丝杠螺母系统(IdealGearR2T)
- 带孔双盘阀:包含一个静盘和一个动盘,通过动盘垂直平移改变过水截面积,实现流量调节
已知机械参数
- 阀盘平移速度v=1.67×10^-4 m/s
- 丝杠螺距p=4mm
- 阀最大平移力F=20kN
- 丝杠螺母系统效率ηv=26%
- 齿轮箱效率ηR=22%,减速比K=560
需求解的参数
- 齿轮箱输出转速nR(rpm)
- 异步电机轴转速nMAS(rpm)
- 齿轮箱输出转矩TR
- 异步电机所需输出转矩TMAS
- 异步电机有效机械功率Pu
当前建模遇到的问题
- 目前需要手动计算电机转速,想确认Modelica是否支持逆建模求解
- 不清楚如何在模型中施加20kN的恒力,该参数对功率计算至关重要
当前模型代码
model Vanne Modelica.Mechanics.Translational.Components.IdealGearR2T idealGearR2T(ratio = 1571) annotation( Placement(visible = true, transformation(origin = {34, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); Modelica.Mechanics.Translational.Sensors.SpeedSensor speedSensor annotation( Placement(visible = true, transformation(origin = {72, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); Modelica.Mechanics.Rotational.Sources.ConstantSpeed constantSpeed(w_fixed(displayUnit = "rpm") = 146.9218164328827) annotation( Placement(visible = true, transformation(origin = {-58, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); Modelica.Mechanics.Rotational.Components.LossyGear lossyGear(lossTable = [0, 0.22, 0.22, 0], ratio = 560) annotation( Placement(visible = true, transformation(origin = {-22, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); Modelica.Mechanics.Rotational.Sensors.SpeedSensor speedSensor1 annotation( Placement(visible = true, transformation(origin = {10, 38}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); Modelica.Mechanics.Translational.Sources.ConstantForce constantForce annotation( Placement(visible = true, transformation(origin = {64, 30}, extent = {{-10, -10}, {10, 10}}, rotation = 0))); equation connect(idealGearR2T.flangeT, speedSensor.flange) annotation( Line(points = {{44, -2}, {62, -2}}, color = {0, 127, 0})); connect(constantSpeed.flange, lossyGear.flange_a) annotation( Line(points = {{-48, -2}, {-32, -2}})); connect(lossyGear.flange_b, idealGearR2T.flangeR) annotation( Line(points = {{-12, -2}, {24, -2}})); connect(speedSensor1.flange, lossyGear.flange_b) annotation( Line(points = {{0, 38}, {-12, 38}, {-12, -2}})); annotation( uses(Modelica(version = "4.0.0"))); end Vanne;
内容的提问来源于stack exchange,提问作者scls
相关产品推荐
相关产品推荐

