|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在使用Simulink的过程中,发现很多用户不知道如何、或者没有时间来设置Sum模块的端口。比如,当我看到下面的框图时,让我感觉的相当刺眼:
' v8 Y$ v& B+ N$ Y
0 Y* D+ Z7 i/ V
下面提供一些小Tips,让您的Sum模块看起来更加舒服和便于理解。
3 Q! l% o5 O/ J+ B! z2 U0 V1 [
6 X2 f/ Y' z7 P8 H) U' e- M圆形(Round)Sum模块; S8 Z/ b0 d% \ |" q$ I" `+ y
6 c0 R) @( y! p( r; Y, b h) z$ q从Simulink模块库中拖拽新的Sum模块时,它默认形状是圆形的,并且在左边和下边分别具有一个输入端口:
t* z: C. W9 D) e/ N7 l; d
. r5 P7 U+ P: _% j- G6 d- l
当Sum模块形状设置为Round时,所有的输入端口从上到下均匀的分布,很多同学发现上图的List of signals中有一个"|",不知道这个是做什么的,其实这个是一个占位符(非必须),表示要将这个端口位置空出来,比如
, @8 r5 I" E& G( V1 K
' q2 J4 f; A' j7 X如果我们想在模块上面添加一个端口,就可以这样修改信号列表(去掉那个|,添加三个+++)
, C4 |1 u: ], k- n- m
* ?* O& \3 Z! X2 c8 z! g* M
7 a. t. D* o4 L8 @4 o2 J
方形(Rectangular)Sum模块3 M r; ~* k: G* j! B; T
7 F( Z7 h& R0 T
直接将默认Sum模块的形状修改为Rectangular,效果如下
+ z9 c! V3 S1 u& L
# |6 i& w3 \# N7 D
在使用方形Sum模块时,个人认为,没有任何好的理由使用占位符("|"),因此大部分情况最好将"|"删除, @6 P6 F8 p- W0 r* Z4 u
& A. L! ^* F6 n0 I/ ?* t: I0 u
- H9 l( n! H0 K4 j* C7 c' y9 J4 {! p9 N' SSum模块的信号 v- l5 F2 ]0 h
: C$ I! S; n6 V4 G, D# w& \$ G
有时我们需要对一个向量或数组进行求和,此时可以将List of signs只有一个"+",然后Sum over选择All dimensions(对所有元素求和)* o/ k5 ?! ?" M
! w; d! n/ Y) T& ]: R; w6 ?# N
另外求和模块还可以指定求和的维数方向- h) t0 C" e9 g7 O8 d" Z2 c
+ |$ U% O+ P( n7 x b, b- j
细心的朋友就会发现,以前一直以为Sum模块只能做两或三个数的加法,原来将Sum的端口修改下成一个"+",就可以变成sum函数的功能!其实这条在Product(相乘)模块中也是通用的。! ]8 J: t2 o- T) M2 t, @% H
, B K2 \9 N+ i6 _% J
到底是方形还是圆形呢
# l- |5 L- A7 s2 N. ]
0 p9 t" Q; S) |. t5 N既然方形也可以,圆形也不错,那Sum模块到底使用方形还是圆形呢?其实,这个没有绝对的规则,只是个人习惯而已,但是个人认为:
. {6 }8 g- L; L( H: @(1)当执行从左到右的流程(没有反馈信号)时,使用方形看起来更舒服些,比如/ K& W6 e5 o- _1 U, R, t0 G* S
! v; x# |, k% M' t. B& @/ Z+ C(2)当流程中包含反馈信号时,保持默认的圆形是一个不错的主意:0 {- P' B q( I Q- a, y
) |6 j0 a- x; e |
|