推荐产品
  Maple 12
- 数学、建模
MapleSim
- 高性能多领域物理建模和仿真工具
Maple Toolbox for MATLAB
- Matlab双向接口工具箱
BlockBuilder for Simulink
- Simulink模块输出工具箱
BlockImporter for Simulink
- Simulink 模块导入工具箱
Grid Computing Toolbox
- 网格计算工具箱
Global Optimization Toolbox
- 全局优化工具箱
Financial Modeling Toolbox
- 金融建模工具箱
DynaFlexPro 4.0
- 多体动力学建模系统
Maple - NAG Connector
- NAG 数值库接口
MapleNet 12
- Maple网络解决方案
Maple T.A. 4
- 在线考试和自动评估系统
更多产品...
    应用节选
  汽车工业
机器人和航空航天
数字化设计
金融分析
科学计算
高校教育
  问题留言、索取资料
申请试用Maplesoft产品
返回首页Maplesoft Products : Maple 12 : 控制系统设计
 
 
Professional
Previous Home Next
 

控制系统设计
The new Dynamic Systems package, included with Maple 12, offers a large selection of analytic and graphing tools for linear time-invariant systems, which are essential steps in control systems development.

系统对象表示

  • Create transfer function, differential or difference equation, state-space, and zero-pole-gain models
  • Verify, query, and edit model content and options
  • Easily convert from one model form to another

图形分析

  • Graph time and frequency domain responses
  • Generate root-locus and root-contour plots
  • Plot the zeros and poles of a linear system

系统操作程序

  • Compute the controllability and observability matrices and grammians
  • Determine gain and phase margins
  • Determine gain and phase crossover frequencies
  • Perform similarity transformations and state reductions on state-space matrices and systems
  • Generate the Routh table of a polynomial

信号生成工具

  • Multiple waveforms for the generation of chirp, ramp, sinc, sinusoidal, step, square, and triangular test signals

模拟

  • Perform continuous and discrete system simulations
  • Calculate the frequency response and impulse response of a syste

 

 

使用示例:

新增加的函数包:动力系统包/Dynamic Systems Package 

使用动力系统包,首先加载 DynamicSystems:

> restart; -1

> with(DynamicSystems); 1

[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
[AlgEquation, BodePlot, CharacteristicPolynomial, Chirp, Coefficients, ControllabilityMatrix, Controllable, DiffEquation, DiscretePlot, FrequencyResponse, GainMargin, Grammians, ImpulseResponse, Impul...
(1.1)

应用示例: 直流电机 

Maple 12 新增加动力系统包(DynamicSystems package),用户可以定义和分析线性定常系统。

通过下面的一个应用示例,简要介绍如何使用这个函数包。

通过下面的一个应用示例,简要介绍如何使用这个函数包。

给出直流电机的微分方程组,我们希望获得传递函数和系统的状态空间模型。然后在 Maple 中生成一个 Simulink S-Function,并对比一下 Simulink 和 Maple 的结果,可以发现 Maple 更具优势。直流电机转换电子信号为机械运动。

Image

定义控制行为和对应参数的两个微分方程。

代码:

定义控制行为和对应参数的两个微分方程。

代码:

> `:=`(deq, [`+`(`*`(L, `*`(diff(i(t), t))), `*`(R, `*`(i(t)))) = `+`(v(t), `-`(`*`(K, `*`(diff(theta(t), t))))), `+`(`*`(J, `*`(diff(theta(t), t, t))), `*`(b, `*`(diff(theta(t), t)))) = `*`(K, `*`(i(t)...

[`+`(`*`(L, `*`(diff(i(t), t))), `*`(R, `*`(i(t)))) = `+`(v(t), `-`(`*`(K, `*`(diff(theta(t), t))))), `+`(`*`(J, `*`(diff(diff(theta(t), t), t))), `*`(b, `*`(diff(theta(t), t)))) = `*`(K, `*`(i(t)))] (1.2)

> `:=`(params, [J = 0.1e-1, K = 0.1e-1, L = .5, R = 1, b = .1])

[J = 0.1e-1, K = 0.1e-1, L = .5, R = 1, b = .1] (1.3)

在这个函数包中,所有的操作都是在系统对象中,数据结构包含系统的信息,用户可获得下列类型的信息:

- 微分方程
- 变换函数
- 状态空间
- 零点/极点/增益模型列表
- 传递函数系数列表

利用上面定义的方程组创建一个系统对象:

代码:

> `:=`(sys, DiffEquation(deq, [v(t)], [theta(t), i(t)]))

module () export de, inputcount, outputcount, statecount, sampletime, discrete, systemname, inputvariable, outputvariable, statevariable, systemtype, ModulePrint; end module (1.4)

输出中的第一个参数是微分方程组列表,后面的参数分别是输入变量和输出变量列表。在本示例中输入是电压,输出是轴的转角位置,和电流消耗。


我们可以使用 PrintSystem 命令观察系统对象的属性。


代码:

> PrintSystem(sys)

(1.5)

我们同样可以在不同的表达式之间转换,例如  

代码: 

`:=`(sys, DiffEquation(deq, [v(t)], [theta(t), i(t)])) 

(1.6)

PrintSystem(sys) 


(1.7)

`:=`(tf1, TransferFunction(sys)) 

(1.8)

PrintSystem(tf1) 


(1.9)

`:=`(ss1, StateSpace(sys)) 

(1.10)
 

 

PrintSystem(ss1) 

(1.11)

注意:当我们在进行转换时,系统是符号形式的,也就是说,如果存在一些未定的参数,我们仍然可以进行转换。 数包还含有许多分析程序,下面是振幅图和相位波特图。

BodePlot(sys, parameters = params) 

Plot_2d

PhasePlot(sys, parameters = params) 

Plot_2d

RootLocusPlot(sys, 0 .. 1000, parameters = params)
RootLocusPlot(sys, 0 .. 1000, parameters = params)
 

Plot_2d

ResponsePlot(sys, [Step()], parameters = params)
ResponsePlot(sys, [Step()], parameters = params)

Plot_2d

我们单独给出参数值的列表,因此我们可以不同参数集合对应的图形。我们保持让模型独立于参数值。同样,我们不要指定波特图中的频率范围,程序会自动确定最佳的范围。 下面是另外一个例子,我们应用一个特定的正弦输入信号,然后画出输出信号图。

> ResponsePlot(sys, sin(t), parameters = params)
Plot_2d

以上仅示范部分功能,想了解完整的命令列表,参见:

> help(

价格咨询:Sales@cca-es.com 电话:021-64716031 技术支持:maple@cca-es.com
Copyright © CCA, All Rights Reserved. | 沪ICP备06014131号
© Maplesoft, a division of Waterloo Maple Inc. 2006. | Privacy | Trademarks