zoukankan      html  css  js  c++  java
  • 《机电传动控制》第四周作业

    一、控制策略:

    1、三相异步电动机启动采用自耦变压器降压方法,取Ku=0.65;

    2、调速策略才用调频调速。n=800,Ka=0.545;n=0,Kb=0.075;n=-600,Kc=0.395。(基本是试的)

    3、反相使电机反转。

    二、关键代码(与源代码的改动)

    parameter Real Ku=0.65;

    parameter Real Ka=0.545;

    parameter Real Kb=0.075;

    parameter Real Kc=0.395;

     

    if time <= 100 then

    u_A = 0;

    u_B = 0;

    u_C = 0;

    f_s = 0;

     

    elseif time<=200 then

    f_s = f_N*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ku*Ka;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ku*Ka;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ku*Ka;

     

    elseif time<=1900 then

    f_s = f_N*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ka;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ka;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ka;

     

    elseif time<=1950 then

    f_s = f_N*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ka;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ka;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ka;

     

    elseif time<=2850 then

    f_s = f_N*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ka;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ka;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ka;

     

    elseif time<=3400 then

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Kb;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Kb;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Kb;

    f_s = f_N*Kb;

     

    elseif time<=3560 then

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ku*Kc;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ku*Kc;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ku*Kc;

    f_s = f_N*Ku*Kc;

     

    elseif time<=4950 then

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Kc;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Kc;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Kc;

    f_s = f_N*Kc;

     

    elseif time<=5000 then

    f_s = f_N*P*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ka*P;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ka*P;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ka*P;

     

     

    elseif time<=5800 then

    f_s = f_N*Ka;

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Ka;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Ka;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Ka;

     

    else

    u_A = u_N * 1.414 * sin(2*Pi*f_s*time/1000)*Kb;

    u_B = u_N * 1.414 * sin(2*Pi*f_s*time/1000-2*Pi/3)*Kb;

    u_C = u_N * 1.414 * sin(2*Pi*f_s*time/1000-4*Pi/3)*Kb;

    f_s = f_N*Kb;

     

    end if;

     

    三、仿真结果

     

     

    四、小结

    完成任务在5.8s左右,最大电流在160左右。存在要求匀速但是速度有小范围变动导致时间不那么精准。

  • 相关阅读:
    剑指 Offer——13. 调整数组顺序使奇数位于偶数前面
    剑指 Offer——3. 从尾到头打印链表
    剑指 Offer——2. 替换空格
    剑指 Offer——1. 二维数组中的查找
    LeetCode 905. Sort Array By Parity 按奇偶校验排列数组
    LeetCode 448. Find All Numbers Disappeared in an Array找到所有数组中消失的元素
    SSH 代码笔记
    anaconda3安装caffe
    opencv多版本安装
    人脸文章与数据库
  • 原文地址:https://www.cnblogs.com/zengchuang/p/5299967.html
Copyright © 2011-2022 走看看