Import data from
Simulink model
Calculate M, θi, θf,
rmin, rmax, Imin and Imax
Import motor and
gearbox data
Calculate Tstall, ωmax
Set initial
conditions: θn-1=θi,
ωn-1=0, I=Imax,
D=constant
Start
Initialisation:
Tm=Tstall
Tg=M*g*rmax*sin(θi)
Tf=constant
Td=D*ωn-1
T=Tm-Tf-Tg
Yes No Yes No
ωn-1+(α*dt)>wmax?
ωn=ωn-1+(α*dt)ωn=ωmax
Yes No
Calculate
θn=θn-1+(ωn-1*dt)+(0.5*α*dt2
)
Calculate
θn=θn-1+(ωn-1*dt)+(0.5*α*dt2
)
θn<0? θn<0?
L=Imax*ωn
Exit
Yes
Yes
Calculate
ωL=ωn+((Imax*ωn-1
2
)/Imin)0.5
θ=θf?
ωL<ωn?
L=Imax*ωL
Exit
No
L=Imax*ωn
Exit
Yes
Yes
Calculate
ωL=ωn+((Imax*ωn-1
2
)/Imin)0.5
θ=θf?
ωL<ωn?
L=Imax*ωL
Exit
No
L=Imax*ωn
Exit
Yes
Yes
Calculate
ωL=ωn+((Imax*ωn-1
2
)/Imin)0.5
θ=θf?
ωL<ωn?
L=Imax*ωL
Exit
No
L=Imax*ωn
Exit
Yes
Yes
Calculate
ωL=ωn+((Imax*ωn-1
2
)/Imin)0.5
θ=θf?
ωL<ωn?
L=Imax*ωL
Exit
No
No No No No
Calculate:
Tm=Tstall-(ωn-1*(Tstall/ωmax))
Tg=M*g*r*sin(θn)
Tf=constant
Td=D*ωn-1
T=Tm-Tg-Tf-Td
Calculate:
Tm=Tstall-(ωn-1*(Tstall/ωmax))
Tg=M*g*r*sin(θn)
Tf=constant
Td=D*ωn-1
T=Tm+Tg-Tf-Td
Calculate:
Tm=Tstall-(ωn-1*(Tstall/ωmax))
Tg=M*g*r*sin(θn)
Tf=constant
Td=D*ωn-1
T=Tm-Tg-Tf-Td
Calculate:
Tm=Tstall-(ωn-1*(Tstall/ωmax))
Tg=M*g*r*sin(θn)
Tf=constant
Td=D*ωn-1
T=Tm+Tg-Tf-Td
Calculate
α=T/I
θn-1=θn
ωn-1=ωn

Excel+Matlab flow chart

  • 1.
    Import data from Simulinkmodel Calculate M, θi, θf, rmin, rmax, Imin and Imax Import motor and gearbox data Calculate Tstall, ωmax Set initial conditions: θn-1=θi, ωn-1=0, I=Imax, D=constant Start Initialisation: Tm=Tstall Tg=M*g*rmax*sin(θi) Tf=constant Td=D*ωn-1 T=Tm-Tf-Tg Yes No Yes No ωn-1+(α*dt)>wmax? ωn=ωn-1+(α*dt)ωn=ωmax Yes No Calculate θn=θn-1+(ωn-1*dt)+(0.5*α*dt2 ) Calculate θn=θn-1+(ωn-1*dt)+(0.5*α*dt2 ) θn<0? θn<0? L=Imax*ωn Exit Yes Yes Calculate ωL=ωn+((Imax*ωn-1 2 )/Imin)0.5 θ=θf? ωL<ωn? L=Imax*ωL Exit No L=Imax*ωn Exit Yes Yes Calculate ωL=ωn+((Imax*ωn-1 2 )/Imin)0.5 θ=θf? ωL<ωn? L=Imax*ωL Exit No L=Imax*ωn Exit Yes Yes Calculate ωL=ωn+((Imax*ωn-1 2 )/Imin)0.5 θ=θf? ωL<ωn? L=Imax*ωL Exit No L=Imax*ωn Exit Yes Yes Calculate ωL=ωn+((Imax*ωn-1 2 )/Imin)0.5 θ=θf? ωL<ωn? L=Imax*ωL Exit No No No No No Calculate: Tm=Tstall-(ωn-1*(Tstall/ωmax)) Tg=M*g*r*sin(θn) Tf=constant Td=D*ωn-1 T=Tm-Tg-Tf-Td Calculate: Tm=Tstall-(ωn-1*(Tstall/ωmax)) Tg=M*g*r*sin(θn) Tf=constant Td=D*ωn-1 T=Tm+Tg-Tf-Td Calculate: Tm=Tstall-(ωn-1*(Tstall/ωmax)) Tg=M*g*r*sin(θn) Tf=constant Td=D*ωn-1 T=Tm-Tg-Tf-Td Calculate: Tm=Tstall-(ωn-1*(Tstall/ωmax)) Tg=M*g*r*sin(θn) Tf=constant Td=D*ωn-1 T=Tm+Tg-Tf-Td Calculate α=T/I θn-1=θn ωn-1=ωn