设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1184|回复: 3

[分享] S-Function 的编写教程

[复制链接]

该用户从未签到

尚未签到

发表于 2012-5-18 21:35:49 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
本帖最后由 Kevin_Chen 于 2012-5-18 21:42 编辑
1 t2 _$ L2 i. \% ]# F% ?% V, c7 E
: X$ y) e# E0 \2 i" F' X; R* kSimulink®
0 |( ?: r- M/ p; X基 于 模 型 与 基 于 系 统 的 设 计
3 K8 Q5 U1 f/ j
* y: A( ?( G( s+ G) [5 g. j7 o5 S4 `
目录: Z3 U/ x: q# w$ @. S3 S5 a

1 n8 J+ l+ a% u) @- Z  k/ }4 }8 c: {$ @
S-FUNCTION 概述............................................................................. 1' h1 B8 g" i1 A9 Q/ y. w
什么是 S-FUNCTION............................................................................................. 2
1 C& j, m& F/ Q/ k% u在模型中使用S-FUNCTION................................................................................. 3
" t! v+ p4 c4 o% _向 S-Function 传递参数......................................................... 3
3 ^+ |5 ^& i* O; B6 e何时使用 S-Function............................................................... 4
, R  \- y; u. ?! H9 A+ QS-FUNCTION 的工作原理..................................................................... 5
9 B, p5 U8 t3 T. W' X$ k3 gSimulink 块的数学关系.................................................................. 53 O) v+ H" q2 e
仿真过程................................................................................................. 5
/ u5 f5 ~& c/ i& s, i5 TS-Function 回调程序...................................................................... 6
9 o7 Q6 ]$ u1 z1 @( `$ S; OS-FUNCTION 的实现.................................................................... 8
' q  n8 T5 M' F2 tM-文件的S-Function............................................................ 8
7 W6 ^! j7 b3 l" `7 z6 ?MEX 文件的S-function ................................................................ 8
$ Y. d0 P, s% T) w! NMEX 文件与M-文件的S-function 比较......................................... 9
% i0 F$ Z4 z  p. TS-FUNCTION 的概念........................................................ 10
: Y; O) i6 |4 ]/ n$ o- J% V4 z直接馈通................................................................ 107 s# C. N+ V% Q2 y. ?) a  P0 o
动态维矩阵.................................................................... 10
4 ?7 m  s) h2 c3 W4 o设置采样时间和偏移量............................................11# Z) D3 ~" A5 T" O" R4 ?
S-FUNCTION 范例............................................................... 14
. S+ G+ q8 I3 j' |  A5 Q8 |9 h( L) L0 M! XM 文件S-function 范例............................................. 15! l+ w9 a/ ]: q7 j3 x  Z1 a/ b) D
C S-Function 范例.......................................................... 16& q$ ?. g8 x! v& [% j$ F: ^
Fortran S-Function 范例.............................. 187 s4 m5 q; Z/ m
C++ S-Function 范例........................................................ 18" E8 ~3 }/ B  `
Ada S-Function 范例........................................... 18$ s6 b; @& w- v; ]# z& ^& B8 G. h
编写 M S-FUNCTION............................................. 19$ c: N* w) v8 X( t
概述............................................. 20
" V/ H4 F# l' @% ]/ XS-Function 参数...................................... 20
; N+ j. O4 C4 ?( {8 US-Function 的输出............................... 20
, p3 y7 J6 @1 o2 }( C定义 S-FUNCTION 块特性................................... 222 v/ F4 @, q! y. u6 \/ t9 o
处理 S-FUNCTION 参数........................... 22
( P7 E) Y( t0 L5 V9 }M 文件的S-FUNCTION 范例.................................. 23  ?: X( N+ _( D5 i
范例 1——简单的M 文件S-Function ................................. 23' L* o/ U. |# m  J
范例 2——连续状态S-Function ........................ 25
7 s7 y& n- a2 \* A* L& H范例 3——离散状态S-Function ............................ 27+ y! [+ [" s. k0 j2 n/ A* }
范例 4——混合系统S-Function .................................. 283 f  h  q- w7 s" z9 J
范例 5——变步长S-Function ................................... 314 F" B- |% {$ O* o8 |7 U) k6 e
ii5 s" n& i: t1 S3 h( s) n8 `
使用C 语言编写S-FUNCTION ........................ 33
8 Z$ H; m0 E0 f9 E: s概述.................................................... 34
7 X, h5 k. f+ L2 `( ?/ H- C6 K( m创建 C MEX S-Function................................. 35, ?* l- w' _9 b% S. _
自动生成 S-FUNCTION.......................................... 36
) N7 G/ D/ D5 A, x7 R" L配置生成的 S-Function........................... 37/ Q. b. }- A5 q6 L. v
S-Function Builder 如何生成S-Function............................. 37
) F8 Y6 [8 L# \4 g3 C( E6 c设置 include 路径....................................... 37# w8 Z9 t8 k: K! k& R
S-FUNCTION BUILDER 的对话窗..................................... 397 d9 q2 _0 u" E2 c/ `2 }
Initialization 选卡......................................................... 39
7 i% h- R2 ~4 EData Properties 选卡....................................... 401 F0 I$ m6 }5 L
Libraries 选卡................................................ 428 v% t- D# \  H
Outputs 选卡...................................................... 43  A; f! I9 L2 v3 [
Continuous Derivatives 选卡..................................... 45
# C; B& t3 r: T, f7 }8 l% `Discrete Update 选卡................................................... 468 o; v+ g4 \8 ~% ^: R9 ?$ {
Build Info 选卡.............................................. 47  l- c4 H$ M: ^
一个基本的 C MEX S-FUNCTION 范例................................... 48
- L% w/ e; }' ^" Z+ W% P4 [定义与包含............................................................ 49
4 e, b9 @* i! h, Q, E6 m回调函数的实现................................................... 50( a6 p$ n* L6 O7 @% H
Simulink/Real-Time Workshop 接口................................ 51
6 X! ^; g( @3 ?5 U. \  PBuilding Timestwo 范例.............................. 51
. T9 c; D+ B" W9 I; @  KC S-FUNCTION 模板..................................... 52
" e6 j( [# @" X, p1 cS-Function 源文件必需的内容................................... 52$ r3 W. `/ s  L
SimStruct...................................................... 53
1 a3 }) r4 p4 y' C' Q编译 C S-Function................................... 53
6 [5 L) M) A/ ]/ @0 h& ?4 ESIMULINK 如何与C S-FUNCTION 相互作用............................. 54
, c& B1 K( W& `( J( |# `2 P' E: a( k) t进程层面........................................................... 54" q3 O, Y$ ]+ q  @, v
数据层面.................................................... 56
. c* |. P( y! T: x( S% O8 u编写回调函数........................................................... 59
7 h3 d- `3 s4 s% i3 a将 LEVEL 1 C MEX S-FUNCTION 转换到LEVEL 2 .................... 60
0 j8 u' `) J; {4 F) s创建 C++ S-FUNCTION................................................................. 63
2 v6 ^& v( N+ f! H  ~5 n& f创建 ADA S-FUNCTION................................. 64
3 k6 C" D! H* c$ i! h创建 FORTRAN S-FUNCTION......................... 65  D' l; [; J% P/ N0 P! Z# f
实现块特性................................. 67; t( c8 c% Y1 _: X6 o+ A, J0 P
对话框参数..................................................... 68: P3 |2 ?5 ?2 n1 I. C/ d" O9 _, h9 A
iii% \$ F/ K3 [4 z
可调参数......................................... 68
* D/ B4 @% B6 x3 A: e运行参数..................................................................... 704 A% s9 ^# |# i( E2 Y
创建运行参数......................................................... 702 `: C" m: P  O/ @( W
更新运行参数....................................... 71
9 F1 u$ ]& f  }, D2 r5 ?( C创建输入和输出端口....................................................... 72+ N, w6 J/ B" b9 a) g
创建输入端口..................................... 727 a9 ?3 h; P% c7 ~9 o# c# l
创建输出端口............................................... 73$ d+ [6 w: a. p* V8 z- S0 O, k
输入的标量扩展......................................... 74% t& G$ J4 F, U
掩码多端口 S-Function............................................. 75
  A6 `1 v9 j3 X自定义数据类型............................................... 76: a+ V- s2 [7 n- |' p: ^6 K
采样时间.......................................................... 777 F$ _9 q( k2 C  ]( P4 u/ W0 R# l
基于块的采样时间........................................ 77
3 q1 }5 e$ F( A指定基于端口的采样时间.......................................... 799 N3 M6 C: S8 G! L
基于块与基于端口的混合采样时间 ......................... 81
; x! k4 t) c& j, h9 E多速率 S-Function 块.................................................... 828 n! s2 N( C- i# s( A7 X
多速率 S-Function 块的同步.............................. 83% G" H& L& M- V* s% `& ~* S; z1 A
工作向量....................................... 84
7 Y" |' [$ L2 o$ g* Q' u工作向量与过零检测................................................... 85
$ D, M) t0 n3 g2 C" N4 z0 {包括指针工作向量的范例................................ 85
+ ]- }- J" Z+ Q9 o' r  E+ ^* ]" a1 N内存分配.................................................... 86
! U+ n0 _; X8 v6 ^FUNCTION-CALL 子系统........................... 87' O7 I; {+ ?6 w5 X. W6 s* S5 H
错误处理................................................ 89# a# }1 H5 H- O1 G
防超程代码................................................................ 89
. L  p( {) z  d- Z! iSsSetErrorStatus 的终止条件................................. 90
4 ]: N8 M5 a- K/ ]数组边界检查............................................... 90! K7 j2 _, X& U. D
S-FUNCTION 范例.............................................. 91& p; K4 e) U/ ?9 E8 R+ J
连续状态的 S-Function 范例............................. 92
2 U+ p  A( ^# _离散状态的 S-Function 范例.................................. 93" l! s& X7 @- k5 Y
混合系统的S-Function 范例........................... 932 s4 E1 |" m4 V1 K7 \# `
变步长的 S-Function 范例............................. 94
0 {& Z2 I' x: [过零检测的 S-Function 范例........................... 94
" D! d5 h6 |, l时变连续传递函数的 S-Function 范例........... 94

S-Function.rar

738.26 KB, 下载次数: 9, 下载积分: 威望 -2 点, 学分 -5 点

S函数教程

"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
  • TA的每日心情
    无聊
    2019-12-22 22:50
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    累计签到:172 天
    连续签到:1 天
    发表于 2012-5-18 22:12:54 | 显示全部楼层
    比较老的资料了吧
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

     楼主| 发表于 2012-5-18 22:15:47 | 显示全部楼层
    回复 2# amfk2006 ; ^2 D; P( V, b- B! {/ Y! T
    " e& P- f" C. R
    资料老了些,对初学者还是有用的,毕竟讲的详细,O(∩_∩)O~
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

    该用户从未签到

    尚未签到

    发表于 2012-6-5 22:04:11 | 显示全部楼层
    资料还不错
    "真诚赞赏,手留余香"
    还没有人打赏,支持一下
    帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    招聘斑竹

    小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

    GMT+8, 2026-3-18 12:18

    Powered by Discuz! X3.5 Licensed

    © 2001-2025 Discuz! Team.

    快速回复 返回顶部 返回列表