⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 5_phase_srmdriving code.lua

📁 Lua scripting language combined with FEMM 4.0
💻 LUA
字号:
open("5_phase_SRM.FEM")      
mi_saveas("temp.fem")

pi = 3.141592

Im = 5

step =   0.5  -- rotating angle

dofile("SRM_trapezoidal_current_relationship.lua");  -- load current codes

mi_seteditmode("group")
mi_selectgroup(1)
mi_moverotate(0,0, step )


for deg= 0, 40, step do        -- 0, 360, step do    
      
      fi_A = fn_i_A(deg);
      fi_B = fn_i_B(deg);
      fi_C = fn_i_C(deg);
      fi_D = fn_i_D(deg);
      fi_E = fn_i_E(deg);
     
      i_A = fi_A* Im         
      i_B = fi_B* Im
      i_C = fi_C* Im
      i_D = fi_D* Im
      i_E = fi_E* Im

      -- specify current
      mi_modifycircprop("sargi_A",1,i_A)
      mi_modifycircprop("sargi_B",1,i_B)
      mi_modifycircprop("sargi_C",1,i_C)
      mi_modifycircprop("sargi_D",1,i_D)
      mi_modifycircprop("sargi_E",1,i_E)

      -- specify rotor position
      mi_seteditmode("group")
      mi_selectgroup(1)
      mi_moverotate(0,0,step)
      
      mi_analyze(1)
      mi_loadsolution()
     

      -- Maxwell weighted stress tensor torque
      mo_groupselectblock(1)
      Torq = mo_blockintegral(22)
      mo_clearblock()
     
     
      handle = openfile("instantenous_torque.txt","a")     
      write(handle,deg,"    \t",Torq,"   ","\n")
      closefile(handle)
 

      -- flux relationships
      x1,x2,x3,x4,flux_A,x6 = mo_getcircuitproperties("sargi_A");        
      x1,x2,x3,x4,flux_B,x6 = mo_getcircuitproperties("sargi_B");     
      x1,x2,x3,x4,flux_C,x6 = mo_getcircuitproperties("sargi_C");    
      x1,x2,x3,x4,flux_D,x6 = mo_getcircuitproperties("sargi_D");
      x1,x2,x3,x4,flux_E,x6 = mo_getcircuitproperties("sargi_E");

      
      handle = openfile("flux_A.txt","a")     
      write(handle,deg,"    \t",flux_A,"   ","\n")
      closefile(handle)

      handle = openfile("flux_B.txt","a")     
      write(handle,deg,"    \t",flux_B,"   ","\n")
      closefile(handle)

      handle = openfile("flux_C.txt","a")     
      write(handle,deg,"    \t",flux_C,"   ","\n")
      closefile(handle)
 
      handle = openfile("flux_D.txt","a")     
      write(handle,deg,"    \t",flux_D,"   ","\n")
      closefile(handle)   

      handle = openfile("flux_E.txt","a")     
      write(handle,deg,"    \t",flux_E,"   ","\n")
      closefile(handle)     


      -- currents

      handle = openfile("i_A.txt","a")     
      write(handle,deg,"    \t",i_A,"   ","\n")
      closefile(handle)

      handle = openfile("i_B.txt","a")     
      write(handle,deg,"    \t",i_B,"   ","\n")
      closefile(handle)

      handle = openfile("i_C.txt","a")     
      write(handle,deg,"    \t",i_C,"   ","\n")
      closefile(handle)

      handle = openfile("i_D.txt","a")     
      write(handle,deg,"    \t",i_D,"   ","\n")
      closefile(handle)

      handle = openfile("i_E.txt","a")     
      write(handle,deg,"    \t",i_E,"   ","\n")
      closefile(handle)
   
   
      mo_close()

end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -