zoukankan      html  css  js  c++  java
  • 学习笔记(第三周)

    设计任务

    结合本周学习的直流电机机械特性,用Modelica设计和仿真一个直流电机串电阻启动过程,具体要求如下:

    1)电机工作在额定电压和额定磁通下,采用串三段或四段电阻启动,整个启动过程电枢电流中不能超过额定电流的3倍。

    2)选择合适的电阻阻值,选择优化的电阻切除策略,使得在满足条件1的前提下,电机尽可能快速平滑得达到额定点。

    3)所有同学均使用如下统一的直流电机模型,电机的参数为:

    额定电压:240V

    额定电流:16.2A

    额定转矩:29.2N.m

    额定转速:1220 r/min

    转动惯量:1 Kg.m^2

    电枢电阻:0.6 Ohm

    转矩常数(额定磁通):1.8

    电动势常数(额定磁通):0.189

    主要方程

     

    参数计算

    电阻R1的短路过程:短路前电流为i1,转矩为Tm1,转速为n1,短路后电流为i1’;

    电阻R2的短路过程:短路前电流为i2,转矩为Tm2,转速为n2,短路后电流为i2’;

    电阻R3的短路过程:短路前电流为i3,转矩为Tm3,转速为n3,短路后电流为i3’。

    R1短路之前:

    Tm1-Tl=J(dn1/dt)(2PI/60)

    Tm1=Kt*i1

    u=Ke*n1+i1(R+R1+R2+R3)

    R1短路之后:

    Tm1=Kt*i1’

    u=Ke*n1+i1’(R+R2+R3)

    由于电压u不变,则可知i1(R+R1+R2+R3)= i1’(R+R2+R3),即

    i1’/i1=(R+R1+R2+R3)/ (R+R2+R3); 1

    则由此可知:R2,R3短路前后分别可得:

    i2’/i2=(R+R2+R3)/(R+R3);2

    i3’/i3=(R+R3)/R;3

    由题意可知i1,i2,i3均等于额定电流且每次切换电阻时的T2(I2)也基本相同

    令i1’/i1=i2’/i2=i3’/i3=a;4

    由1234可知:

    R1=(a-1)R+2R*(a-1)^2+R*(a-1)^3;

    R2=(a-1)R+R*(a-1)^2;

    R3=(a-1)R;

    综上得R+R1+R2+R3=R*a^3.

    刚启动电机时转速n=0,则可知

    u= i(R+R1+R2+R3)

    i=u/(R+R1+R2+R3)=16.2a

    R+R1+R2+R3=u/16.2a=R*a^3

    则可解得a=2.229

    R1=3.664;R2=1.644;R3=0.737

    每次切换电阻时T2=(1.1~1.2)Tn,切换前电流值应为(1.1~1.2)x16.2A=17.82~19.44A,

    故通过调节切换时间来满足电流最小值不低于17.82A的要求

    仿真编程

    经过多次对切换时间的调整,最终得到以下仿真程序

    model motor1 "An DC Motor Model"

    type Voltage=Real(unit="V");

    type Current=Real(unit="A");

    type Resistance=Real(unit="Ohm");

    type Speed=Real(unit="r/min");

    type Torque=Real(unit="N.m");

    type Inertia=Real(unit="kg.m^2");

    Torque Tm"Torque of the Motor";

    Speed n"Speed of the Motor";

    Current i"Armature Current";

    Voltage u"Voltage Source";

    Resistance R_ad"External Resistance";

    Resistance R1"Start-up Resistance";

    Resistance R2"Start-up Resistance";

    Resistance R3"Start-up Resistance";

    parameter Real J = 1"Total Inertia";

    parameter Real R = 0.6"Armature Resistance";

    parameter Real Kt = 1.8"Torque Constant";

    parameter Real Ke = 0.189"EMF Constant";

    parameter Real Tl = 29.2"Load Torque";

    parameter Real i1=48.6"Maximum Current";

    parameter Real i2=17.8"Minimum Current"; 

    equation 

    Tm-Tl = J * der(n) * 6.28 / 60;

    Tm= Kt * i;

    u= i * (R+R_ad+R1+R2+R3) + Ke * n;

    if time <= 0.1 then

    u = 0;

    R_ad = 0;

    else

    u = 240;

    R_ad = 0;

    end if;

    if time <= 4 then

    R1=3.664;

    else

    R1=0;

    end if;

    if time <= 6.9 then

    R2=1.644;

    else

    R2=0;

    end if;

    if time <= 8 then

    R3=0.737;

    else

    R3=0;

    end if; 

    end motor1;

    simulate(motor1,startTime=0,stopTime=15)

  • 相关阅读:
    OpenCV 在android studio 中的用法
    Python中用requests处理cookies的3种方法
    Jmeter利用正则表达式提取器提取登录cookie供下一步使用
    vue项目 el-tree的界面自定义 实现增删改查操作
    PostgreSQL高可用方案-patroni+etcd+vipmanager(二)
    PostgreSQL高可用方案-patroni+etcd+vipmanager(一)
    【转载】Linux下PostgreSQL主备环境搭建和切换
    一些自定义 PostgreSQL 随机数据生成器 —— Some self-defined PostgreSQL random data generators
    ClickHouse 简单使用(六)
    ClickHouse 简单使用(五)
  • 原文地址:https://www.cnblogs.com/wzh111/p/5272669.html
Copyright © 2011-2022 走看看