当前位置: 首页 > news >正文

全国网站打开速度淮北市网站制作公司

全国网站打开速度,淮北市网站制作公司,php与mysql网站开发全接触,做万词霸屏后网站关键词没有排名文章目录 前言 S-Fuction模块 电路方程模型 编写S函数 仿真验证 Tips 分析和应用 总结 前言 见《开箱报告#xff0c;Simulink Toolbox库模块使用指南#xff08;一#xff09;——powergui模块》 见《开箱报告#xff0c;Simulink Toolbox库模块使用指南#xff…文章目录 前言 S-Fuction模块 电路方程模型 编写S函数 仿真验证 Tips 分析和应用 总结 前言 见《开箱报告Simulink Toolbox库模块使用指南一——powergui模块》 见《开箱报告Simulink Toolbox库模块使用指南二——MATLAB Fuction模块》 见《开箱报告Simulink Toolbox库模块使用指南三——Simscape 电路仿真模块》 S-Fuction模块 S-Fuction模块是用户使用MATLAB、C、C语言等编写的Simulink模块是扩展Simulink模块库的一种机制。S-Fuction使用一种特殊的语法使用户能够与Simulink引擎进行交互非常接近自带库摸块与Simulink引擎之间发生的交互。 用户使用S-Fuction开发的Simulink模块可以是一种控制算法也可以是一种状态模型可以容纳连续系统、离散系统或者混合系统。如果要将S-Fuction用于代码生成用户还可以通过编写目标语言编译器TLC文件来自定义为S-Fuction生成的代码。其在Simulink Toolbox库中的位置如下图所示。 Mathworks官方Help对该模块的说明如下所示。 本文以电路建模仿真为例介绍如何利用S-Fuction搭建电路模型。 电路方程模型 这里沿用前一篇文章中的12V蓄电池给两个负载供电的电路见 《开箱报告Simulink Toolbox库模块使用指南三——Simscape 电路仿真模块》 根据欧姆定律写出该电路系统的状态方程如下 状态方程(1) t 0 12V I*(2Ω1Ω*5Ω/(1Ω5Ω)) U I*1Ω*5Ω/(1Ω5Ω) 求解得 I(A) 72/17 4.235 U(A) 60/17 3.529 状态方程(2) t pi/2 12V I*(2Ω1Ω*6Ω/(1Ω6Ω)) U I*1Ω*6Ω/(1Ω6Ω) 求解得 I(A) 21/5 4.2 U(A) 18/5 3.6 动态方程 根据前面两个稳态方程的解可以列出如下动态方程 t(S) (0 : 1000)*0.001 I(A) 72/17 |4.235-4.2|*sin(2pi * 50t pi) U(A) 60/17 |3.529-3.6|*sin(2pi * 50t) 在Matlab的命令窗口中运行该动态方程得到的电流和电压曲线与前一篇文章一致如下所示 至此可以证明该电路系统的方程模型是正确的。 编写S函数 根据官方的S-Fuction模板写出的S函数完整代码如下 function [sys,x0,str,ts,simStateCompliance] CircuitPlant(t,x,u,flag)switch flag,case 0,[sys,x0,str,ts,simStateCompliance]mdlInitializeSizes;case 1,sysmdlDerivatives(t,x,u);case 2,sysmdlUpdate(t,x,u);case 3,sysmdlOutputs(t,x,u);case 4,sysmdlGetTimeOfNextVarHit(t,x,u);case 9,sysmdlTerminate(t,x,u);otherwiseDAStudio.error(Simulink:blocks:unhandledFlag, num2str(flag)); end% % % mdlInitializeSizes % Return the sizes, initial conditions, and sample times for the S-function. % % function [sys,x0,str,ts,simStateCompliance]mdlInitializeSizessizes simsizes; sizes.NumContStates 0; sizes.NumDiscStates 3; %Number of discrete states. sizes.NumOutputs 3; %Number of outputs. sizes.NumInputs 0; %Number of inputs. sizes.DirFeedthrough 0; sizes.NumSampleTimes 1; % at least one sample time is needed sys simsizes(sizes);x0 [0;72/17;60/17]; Initial state conditions str []; ts [0.001 0]; %Discrete sample time where, [PERIOD OFFSET],PERIOD 0 OFFSET PERIOD. simStateCompliance UnknownSimState;function sysmdlDerivatives(t,x,u)sys [];% % % mdlUpdate % Handle discrete state updates, sample time hits, and major time step % requirements. % % function sysmdlUpdate(t,x,u)I 72/17 abs(4.235-4.2)*sin(2*pi * 50*t pi); U 60/17 abs(3.529-3.6)*sin(2*pi * 50*t); sys [t,I,U];% % % mdlOutputs % Return the block outputs. % % function sysmdlOutputs(t,x,u)% sys [x(1);x(2);x(2)]; sys x;function sysmdlGetTimeOfNextVarHit(t,x,u)sampleTime 1; sys t sampleTime;function sysmdlTerminate(t,x,u)sys [];仿真验证 将上述编写好的S-Fuction模块放入Simulink模型中进行验证如下所示 运行上述模型得到的电流和电压曲线也与前一篇文章一致如下所示 至此可以证明该S-Fuction模块可以较好地模拟前一篇文章中使用物理模块搭建的电路模型。 Tips S-Fuction模块的完整运行机制如下图所示。本文所举的例子是用的离散模型所以只涉及其中的主仿真步。这里需要注意的是模型初始化函数只在模型仿真开始时执行一次后面的计算输出和更新离散状态是每个仿真步都要执行一次的比如本文是0.001s执行一次。每次执行的顺序是先执行计算输出函数后执行离散状态更新函数所以当看到输出结果比输入信号延迟一个周期就是这个机制的原因。 分析和应用 S-Fuction模块在Simulink模型仿真和自动生成代码方面的应用功能非常强大主要得益于MATLAB为开发人员留出了一个扩展Simulink模块库的机制开发人员能基于该模块开发自己的模块库。项目中使用S-Fuction模块后将会给开发人员更大的发挥空间去开发特殊的模块库能够真正与自己的需求高度匹配。一方面弥补特定需求模块的空白另一方面也能对一些模块进行充分地裁剪。另外S-Fuction模块还能将一些已开发的功能固化下来便于后期的移植复用这样能使很多项目开发的代码量大大减少同时也意味着软件开发全流程的人力和时间投入大幅缩减。主要适用于有架构支撑、模块化开发的大型软件项目可以合理协调团队成员的分工合作提高代码可控性增加代码的复用率减少代码移植障碍。 总结 以上就是本人在使用S-Fuction模块时一些个人理解和分析的总结首先介绍了该模块的背景知识然后展示它的使用方法最后分析了该模块的特点和适用场景。 后续还会分享另外几个最近总结的Simulink Toolbox库模块欢迎评论区留言、点赞、收藏和关注这些鼓励和支持都将成文本人持续分享的动力。 另外上述例程使用的Demo工程可以到笔者的主页查找和下载。 版权声明原创文章转载和引用请注明出处和链接侵权必究
http://www.yutouwan.com/news/346233/

相关文章:

  • 网站的形成拼多多网店怎么注册开店
  • 网络推广的网站有哪些影响网站排名的因素 权重
  • 网站统计分析延吉建设局网站
  • 建立什么网站赚钱旅游网站建设与网页设计
  • 如何免费做网站详细点说网站 做 app
  • 做暧暧网站服务器搭建网站视频教程
  • 网站建设医药互联网产品推广案例范文
  • 怎么查找网站的根目录代码做网站常用单词
  • 企业建网站好网站开发和软件开发区别
  • 做网站一般不选用的图片格式开一间网站建设有限公司
  • 微网站建设第一步是进行什么的设置可以做推广东西的网站
  • 广东手机版建站系统开发如何用html制作一个网页
  • 网站推广和精准seo石家庄专门做网站的公司
  • 联谊会总结网站建设对外宣传营销技巧和营销方法
  • 用服务器做网站需要购买域名吗做微信小程序需要什么技术
  • 东莞网站建设多少钱腾讯企业邮箱注册申请官网
  • 17网站一起做网店优势与劣势wordpress电影模版
  • 下载学校网站模板北京学设计去哪个网站
  • 做网站的步骤互联网创业项目零成本
  • 潍坊网站建设培训郑州职业技术学院
  • 郑州网站建设十大公司跟老外做网站
  • 英文公司网站设计网站里面如何做下载的app
  • 北京 成品网站企业网站管理系统设计报告
  • 传统网站与营销型网站wordpress设计模板
  • 南县网站制作安卓系统开发工具
  • 济南seo网站排名优化工具设计网站无锡
  • 惠州做网站建设德阳住房和城乡建设厅网站
  • 网站制作怎么做昆山网站建设河北
  • 做一个网站开发项目有哪些阶段手机银行网站建设
  • 射阳住房和建设局网站怎么做房产网站