|
|
@@ -0,0 +1,2048 @@
|
|
|
+<!DOCTYPE html>
|
|
|
+<html>
|
|
|
+<head>
|
|
|
+<script type="text/javascript" src="./js/coder_app.js"></script>
|
|
|
+<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
|
+<script type="text/javascript" src="./rtwreport_utils.js"></script>
|
|
|
+<script type="text/javascript" src="./rtwannotate.js"></script>
|
|
|
+<link rel="stylesheet" type="text/css" href="./css/coder_app.css"/>
|
|
|
+</head>
|
|
|
+<body onload="srcFileOnload();">
|
|
|
+<pre id="code">
|
|
|
+<table class="code" id="codeTbl">
|
|
|
+<tr name="1" id="1">
|
|
|
+<td><a id="l1" class='ln'>1</a></td><td><span class="ct">/*</span></td></tr>
|
|
|
+<tr name="2" id="2">
|
|
|
+<td><a id="l2" class='ln'>2</a></td><td><span class="ct"> * PMSM_Motor_TL3_sf.c</span></td></tr>
|
|
|
+<tr name="3" id="3">
|
|
|
+<td><a id="l3" class='ln'>3</a></td><td><span class="ct"> *</span></td></tr>
|
|
|
+<tr name="4" id="4">
|
|
|
+<td><a id="l4" class='ln'>4</a></td><td><span class="ct"> * Code generation for model "PMSM_Motor_TL3_sf".</span></td></tr>
|
|
|
+<tr name="5" id="5">
|
|
|
+<td><a id="l5" class='ln'>5</a></td><td><span class="ct"> *</span></td></tr>
|
|
|
+<tr name="6" id="6">
|
|
|
+<td><a id="l6" class='ln'>6</a></td><td><span class="ct"> * Model version : 1.825</span></td></tr>
|
|
|
+<tr name="7" id="7">
|
|
|
+<td><a id="l7" class='ln'>7</a></td><td><span class="ct"> * Simulink Coder version : 9.4 (R2020b) 29-Jul-2020</span></td></tr>
|
|
|
+<tr name="8" id="8">
|
|
|
+<td><a id="l8" class='ln'>8</a></td><td><span class="ct"> * C source code generated on : Fri Apr 14 12:51:02 2023</span></td></tr>
|
|
|
+<tr name="9" id="9">
|
|
|
+<td><a id="l9" class='ln'>9</a></td><td><span class="ct"> *</span></td></tr>
|
|
|
+<tr name="10" id="10">
|
|
|
+<td><a id="l10" class='ln'>10</a></td><td><span class="ct"> * Target selection: rtwsfcn.tlc</span></td></tr>
|
|
|
+<tr name="11" id="11">
|
|
|
+<td><a id="l11" class='ln'>11</a></td><td><span class="ct"> * Note: GRT includes extra infrastructure and instrumentation for prototyping</span></td></tr>
|
|
|
+<tr name="12" id="12">
|
|
|
+<td><a id="l12" class='ln'>12</a></td><td><span class="ct"> * Embedded hardware selection: ARM Compatible->ARM Cortex-M</span></td></tr>
|
|
|
+<tr name="13" id="13">
|
|
|
+<td><a id="l13" class='ln'>13</a></td><td><span class="ct"> * Emulation hardware selection:</span></td></tr>
|
|
|
+<tr name="14" id="14">
|
|
|
+<td><a id="l14" class='ln'>14</a></td><td><span class="ct"> * Differs from embedded hardware (MATLAB Host)</span></td></tr>
|
|
|
+<tr name="15" id="15">
|
|
|
+<td><a id="l15" class='ln'>15</a></td><td><span class="ct"> * Code generation objectives:</span></td></tr>
|
|
|
+<tr name="16" id="16">
|
|
|
+<td><a id="l16" class='ln'>16</a></td><td><span class="ct"> * 1. Execution efficiency</span></td></tr>
|
|
|
+<tr name="17" id="17">
|
|
|
+<td><a id="l17" class='ln'>17</a></td><td><span class="ct"> * 2. RAM efficiency</span></td></tr>
|
|
|
+<tr name="18" id="18">
|
|
|
+<td><a id="l18" class='ln'>18</a></td><td><span class="ct"> * Validation result: Not run</span></td></tr>
|
|
|
+<tr name="19" id="19">
|
|
|
+<td><a id="l19" class='ln'>19</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="20" id="20">
|
|
|
+<td><a id="l20" class='ln'>20</a></td><td></td></tr>
|
|
|
+<tr name="21" id="21">
|
|
|
+<td><a id="l21" class='ln'>21</a></td><td><span class="pp">#include <math.h></span></td></tr>
|
|
|
+<tr name="22" id="22">
|
|
|
+<td><a id="l22" class='ln'>22</a></td><td><span class="pp">#include "PMSM_Motor_TL3_sf.h"</span></td></tr>
|
|
|
+<tr name="23" id="23">
|
|
|
+<td><a id="l23" class='ln'>23</a></td><td><span class="pp">#include "PMSM_Motor_TL3_sf_private.h"</span></td></tr>
|
|
|
+<tr name="24" id="24">
|
|
|
+<td><a id="l24" class='ln'>24</a></td><td><span class="pp">#include "simstruc.h"</span></td></tr>
|
|
|
+<tr name="25" id="25">
|
|
|
+<td><a id="l25" class='ln'>25</a></td><td><span class="pp">#include "fixedpoint.h"</span></td></tr>
|
|
|
+<tr name="26" id="26">
|
|
|
+<td><a id="l26" class='ln'>26</a></td><td><span class="pp">#if</span> <a id="26c5" class="tk">defined</a>(<a id="26c13" class="tk">RT_MALLOC</a>) <a id="26c24" class="tk">||</a> <a id="26c27" class="tk">defined</a>(<a id="26c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="27" id="27">
|
|
|
+<td><a id="l27" class='ln'>27</a></td><td></td></tr>
|
|
|
+<tr name="28" id="28">
|
|
|
+<td><a id="l28" class='ln'>28</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="28c13" class="tk">*</a><a id="28c14" class="tk">PMSM_Motor_TL3_malloc</a>(<a id="28c36" class="tk">SimStruct</a> <a id="28c46" class="tk">*</a><a id="28c47" class="tk">S</a>);</td></tr>
|
|
|
+<tr name="29" id="29">
|
|
|
+<td><a id="l29" class='ln'>29</a></td><td></td></tr>
|
|
|
+<tr name="30" id="30">
|
|
|
+<td><a id="l30" class='ln'>30</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="31" id="31">
|
|
|
+<td><a id="l31" class='ln'>31</a></td><td></td></tr>
|
|
|
+<tr name="32" id="32">
|
|
|
+<td><a id="l32" class='ln'>32</a></td><td><span class="pp">#ifndef</span> <a id="32c9" class="tk">__RTW_UTFREE__</a></td></tr>
|
|
|
+<tr name="33" id="33">
|
|
|
+<td><a id="l33" class='ln'>33</a></td><td><span class="pp">#if</span> <a id="33c5" class="tk">defined</a> (<a id="33c14" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="34" id="34">
|
|
|
+<td><a id="l34" class='ln'>34</a></td><td></td></tr>
|
|
|
+<tr name="35" id="35">
|
|
|
+<td><a id="l35" class='ln'>35</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="35c13" class="tk">*</a> <a id="35c15" class="tk">utMalloc</a>(<a id="35c24" class="tk">size_t</a>);</td></tr>
|
|
|
+<tr name="36" id="36">
|
|
|
+<td><a id="l36" class='ln'>36</a></td><td><span class="kw">extern</span> <span class="kw">void</span> <a id="36c13" class="tk">utFree</a>(<span class="kw">void</span> <a id="36c25" class="tk">*</a>);</td></tr>
|
|
|
+<tr name="37" id="37">
|
|
|
+<td><a id="l37" class='ln'>37</a></td><td></td></tr>
|
|
|
+<tr name="38" id="38">
|
|
|
+<td><a id="l38" class='ln'>38</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="39" id="39">
|
|
|
+<td><a id="l39" class='ln'>39</a></td><td><span class="pp">#endif</span> <span class="ct">/* #ifndef __RTW_UTFREE__ */</span></td></tr>
|
|
|
+<tr name="40" id="40">
|
|
|
+<td><a id="l40" class='ln'>40</a></td><td></td></tr>
|
|
|
+<tr name="41" id="41">
|
|
|
+<td><a id="l41" class='ln'>41</a></td><td><span class="ct">/* Forward declaration for local functions */</span></td></tr>
|
|
|
+<tr name="42" id="42">
|
|
|
+<td><a id="l42" class='ln'>42</a></td><td><span class="kw">static</span> <a id="42c8" class="tk">real_T</a> <a id="42c15" class="tk">PMSM_Motor_TL3_rt_atan2d_snf</a>(<a id="42c44" class="tk">real_T</a> <a id="42c51" class="tk">u0</a>, <a id="42c55" class="tk">real_T</a> <a id="42c62" class="tk">u1</a>);</td></tr>
|
|
|
+<tr name="43" id="43">
|
|
|
+<td><a id="l43" class='ln'>43</a></td><td></td></tr>
|
|
|
+<tr name="44" id="44">
|
|
|
+<td><a id="l44" class='ln'>44</a></td><td><span class="pp">#if</span> <a id="44c5" class="tk">defined</a>(<a id="44c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="45" id="45">
|
|
|
+<td><a id="l45" class='ln'>45</a></td><td><span class="pp">#include "rt_nonfinite.c"</span></td></tr>
|
|
|
+<tr name="46" id="46">
|
|
|
+<td><a id="l46" class='ln'>46</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="47" id="47">
|
|
|
+<td><a id="l47" class='ln'>47</a></td><td></td></tr>
|
|
|
+<tr name="48" id="48">
|
|
|
+<td><a id="l48" class='ln'>48</a></td><td><span class="kw">static</span> <span class="kw">const</span> <a id="48c14" class="tk">char_T</a> <a id="48c21" class="tk">*</a><a id="48c22" class="tk">RT_MEMORY_ALLOCATION_ERROR</a> =</td></tr>
|
|
|
+<tr name="49" id="49">
|
|
|
+<td><a id="l49" class='ln'>49</a></td><td> "memory allocation error in generated S-Function";</td></tr>
|
|
|
+<tr name="50" id="50">
|
|
|
+<td><a id="l50" class='ln'>50</a></td><td><span class="kw">static</span> <a id="50c8" class="tk">real_T</a> <a id="50c15" class="tk">PMSM_Motor_TL3_rt_atan2d_snf</a>(<a id="50c44" class="tk">real_T</a> <a id="50c51" class="tk">u0</a>, <a id="50c55" class="tk">real_T</a> <a id="50c62" class="tk">u1</a>)</td></tr>
|
|
|
+<tr name="51" id="51">
|
|
|
+<td><a id="l51" class='ln'>51</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="52" id="52">
|
|
|
+<td><a id="l52" class='ln'>52</a></td><td> <a id="52c3" class="tk">real_T</a> <a id="52c10" class="tk">y</a>;</td></tr>
|
|
|
+<tr name="53" id="53">
|
|
|
+<td><a id="l53" class='ln'>53</a></td><td> <a id="53c3" class="tk">int32_T</a> <a id="53c11" class="tk">u0_0</a>;</td></tr>
|
|
|
+<tr name="54" id="54">
|
|
|
+<td><a id="l54" class='ln'>54</a></td><td> <a id="54c3" class="tk">int32_T</a> <a id="54c11" class="tk">u1_0</a>;</td></tr>
|
|
|
+<tr name="55" id="55">
|
|
|
+<td><a id="l55" class='ln'>55</a></td><td> <span class="kw">if</span> (<a id="55c7" class="tk">rtIsNaN</a>(<a id="55c15" class="tk">u0</a>) <a id="55c19" class="tk">||</a> <a id="55c22" class="tk">rtIsNaN</a>(<a id="55c30" class="tk">u1</a>)) <span class="br">{</span></td></tr>
|
|
|
+<tr name="56" id="56">
|
|
|
+<td><a id="l56" class='ln'>56</a></td><td> <a id="56c5" class="tk">y</a> = (<a id="56c10" class="tk">rtNaN</a>);</td></tr>
|
|
|
+<tr name="57" id="57">
|
|
|
+<td><a id="l57" class='ln'>57</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="57c14" class="tk">rtIsInf</a>(<a id="57c22" class="tk">u0</a>) <a id="57c26" class="tk">&&</a> <a id="57c29" class="tk">rtIsInf</a>(<a id="57c37" class="tk">u1</a>)) <span class="br">{</span></td></tr>
|
|
|
+<tr name="58" id="58">
|
|
|
+<td><a id="l58" class='ln'>58</a></td><td> <span class="kw">if</span> (<a id="58c9" class="tk">u0</a> <a id="58c12" class="tk">></a> 0.0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="59" id="59">
|
|
|
+<td><a id="l59" class='ln'>59</a></td><td> <a id="59c7" class="tk">u0_0</a> = 1;</td></tr>
|
|
|
+<tr name="60" id="60">
|
|
|
+<td><a id="l60" class='ln'>60</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="61" id="61">
|
|
|
+<td><a id="l61" class='ln'>61</a></td><td> <a id="61c7" class="tk">u0_0</a> = <a id="61c14" class="tk">-</a>1;</td></tr>
|
|
|
+<tr name="62" id="62">
|
|
|
+<td><a id="l62" class='ln'>62</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="63" id="63">
|
|
|
+<td><a id="l63" class='ln'>63</a></td><td></td></tr>
|
|
|
+<tr name="64" id="64">
|
|
|
+<td><a id="l64" class='ln'>64</a></td><td> <span class="kw">if</span> (<a id="64c9" class="tk">u1</a> <a id="64c12" class="tk">></a> 0.0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="65" id="65">
|
|
|
+<td><a id="l65" class='ln'>65</a></td><td> <a id="65c7" class="tk">u1_0</a> = 1;</td></tr>
|
|
|
+<tr name="66" id="66">
|
|
|
+<td><a id="l66" class='ln'>66</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="67" id="67">
|
|
|
+<td><a id="l67" class='ln'>67</a></td><td> <a id="67c7" class="tk">u1_0</a> = <a id="67c14" class="tk">-</a>1;</td></tr>
|
|
|
+<tr name="68" id="68">
|
|
|
+<td><a id="l68" class='ln'>68</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="69" id="69">
|
|
|
+<td><a id="l69" class='ln'>69</a></td><td></td></tr>
|
|
|
+<tr name="70" id="70">
|
|
|
+<td><a id="l70" class='ln'>70</a></td><td> <a id="70c5" class="tk">y</a> = <a id="70c9" class="tk">atan2</a>(<a id="70c15" class="tk">u0_0</a>, <a id="70c21" class="tk">u1_0</a>);</td></tr>
|
|
|
+<tr name="71" id="71">
|
|
|
+<td><a id="l71" class='ln'>71</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="71c14" class="tk">u1</a> <a id="71c17" class="tk">==</a> 0.0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="72" id="72">
|
|
|
+<td><a id="l72" class='ln'>72</a></td><td> <span class="kw">if</span> (<a id="72c9" class="tk">u0</a> <a id="72c12" class="tk">></a> 0.0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="73" id="73">
|
|
|
+<td><a id="l73" class='ln'>73</a></td><td> <a id="73c7" class="tk">y</a> = <a id="73c11" class="tk">RT_PI</a> <a id="73c17" class="tk">/</a> 2.0;</td></tr>
|
|
|
+<tr name="74" id="74">
|
|
|
+<td><a id="l74" class='ln'>74</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="kw">if</span> (<a id="74c16" class="tk">u0</a> <a id="74c19" class="tk"><</a> 0.0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="75" id="75">
|
|
|
+<td><a id="l75" class='ln'>75</a></td><td> <a id="75c7" class="tk">y</a> = <a id="75c11" class="tk">-</a>(<a id="75c13" class="tk">RT_PI</a> <a id="75c19" class="tk">/</a> 2.0);</td></tr>
|
|
|
+<tr name="76" id="76">
|
|
|
+<td><a id="l76" class='ln'>76</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="77" id="77">
|
|
|
+<td><a id="l77" class='ln'>77</a></td><td> <a id="77c7" class="tk">y</a> = 0.0;</td></tr>
|
|
|
+<tr name="78" id="78">
|
|
|
+<td><a id="l78" class='ln'>78</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="79" id="79">
|
|
|
+<td><a id="l79" class='ln'>79</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="80" id="80">
|
|
|
+<td><a id="l80" class='ln'>80</a></td><td> <a id="80c5" class="tk">y</a> = <a id="80c9" class="tk">atan2</a>(<a id="80c15" class="tk">u0</a>, <a id="80c19" class="tk">u1</a>);</td></tr>
|
|
|
+<tr name="81" id="81">
|
|
|
+<td><a id="l81" class='ln'>81</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="82" id="82">
|
|
|
+<td><a id="l82" class='ln'>82</a></td><td></td></tr>
|
|
|
+<tr name="83" id="83">
|
|
|
+<td><a id="l83" class='ln'>83</a></td><td> <span class="kw">return</span> <a id="83c10" class="tk">y</a>;</td></tr>
|
|
|
+<tr name="84" id="84">
|
|
|
+<td><a id="l84" class='ln'>84</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="85" id="85">
|
|
|
+<td><a id="l85" class='ln'>85</a></td><td></td></tr>
|
|
|
+<tr name="86" id="86">
|
|
|
+<td><a id="l86" class='ln'>86</a></td><td><span class="ct">/* System initialize for root system: '<Root>' */</span></td></tr>
|
|
|
+<tr name="87" id="87">
|
|
|
+<td><a id="l87" class='ln'>87</a></td><td><span class="pp">#define</span> <a id="87c9" class="tk">MDL_INITIALIZE_CONDITIONS</a></td></tr>
|
|
|
+<tr name="88" id="88">
|
|
|
+<td><a id="l88" class='ln'>88</a></td><td></td></tr>
|
|
|
+<tr name="89" id="89">
|
|
|
+<td><a id="l89" class='ln'>89</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="89c13" class="tk">mdlInitializeConditions</a>(<a id="89c37" class="tk">SimStruct</a> <a id="89c47" class="tk">*</a><a id="89c48" class="tk">S</a>)</td></tr>
|
|
|
+<tr name="90" id="90">
|
|
|
+<td><a id="l90" class='ln'>90</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="91" id="91">
|
|
|
+<td><a id="l91" class='ln'>91</a></td><td> <span class="kw">if</span> (<a id="91c7" class="tk">ssIsFirstInitCond</a>(<a id="91c25" class="tk">S</a>)) <span class="br">{</span></td></tr>
|
|
|
+<tr name="92" id="92">
|
|
|
+<td><a id="l92" class='ln'>92</a></td><td> <a id="92c5" class="tk">B_PMSM_Motor_TL3_T</a> <a id="92c24" class="tk">*</a><a id="92c25" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="93" id="93">
|
|
|
+<td><a id="l93" class='ln'>93</a></td><td> <a id="93c5" class="tk">_rtB</a> = ((<a id="93c14" class="tk">B_PMSM_Motor_TL3_T</a> <a id="93c33" class="tk">*</a>) <a id="93c36" class="tk">ssGetLocalBlockIO</a>(<a id="93c54" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="94" id="94">
|
|
|
+<td><a id="l94" class='ln'>94</a></td><td></td></tr>
|
|
|
+<tr name="95" id="95">
|
|
|
+<td><a id="l95" class='ln'>95</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S11>/Discrete-Time Integrator1' */</span></td></tr>
|
|
|
+<tr name="96" id="96">
|
|
|
+<td><a id="l96" class='ln'>96</a></td><td> ((<a id="96c7" class="tk">real_T</a> <a id="96c14" class="tk">*</a>)<a id="96c16" class="tk">ssGetDWork</a>(<a id="96c27" class="tk">S</a>, 0))[0] = 1.5707963267948966;</td></tr>
|
|
|
+<tr name="97" id="97">
|
|
|
+<td><a id="l97" class='ln'>97</a></td><td></td></tr>
|
|
|
+<tr name="98" id="98">
|
|
|
+<td><a id="l98" class='ln'>98</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S18>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="99" id="99">
|
|
|
+<td><a id="l99" class='ln'>99</a></td><td> ((<a id="99c7" class="tk">real_T</a> <a id="99c14" class="tk">*</a>)<a id="99c16" class="tk">ssGetDWork</a>(<a id="99c27" class="tk">S</a>, 1))[0] = 0.0;</td></tr>
|
|
|
+<tr name="100" id="100">
|
|
|
+<td><a id="l100" class='ln'>100</a></td><td></td></tr>
|
|
|
+<tr name="101" id="101">
|
|
|
+<td><a id="l101" class='ln'>101</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S17>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="102" id="102">
|
|
|
+<td><a id="l102" class='ln'>102</a></td><td> ((<a id="102c7" class="tk">real_T</a> <a id="102c14" class="tk">*</a>)<a id="102c16" class="tk">ssGetDWork</a>(<a id="102c27" class="tk">S</a>, 2))[0] = 0.0;</td></tr>
|
|
|
+<tr name="103" id="103">
|
|
|
+<td><a id="l103" class='ln'>103</a></td><td></td></tr>
|
|
|
+<tr name="104" id="104">
|
|
|
+<td><a id="l104" class='ln'>104</a></td><td> <span class="ct">/* InitializeConditions for S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="105" id="105">
|
|
|
+<td><a id="l105" class='ln'>105</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="106" id="106">
|
|
|
+<td><a id="l106" class='ln'>106</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="107" id="107">
|
|
|
+<td><a id="l107" class='ln'>107</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="108" id="108">
|
|
|
+<td><a id="l108" class='ln'>108</a></td><td> <a id="108c7" class="tk">int32_T</a> <a id="108c15" class="tk">i</a>, <a id="108c18" class="tk">j</a>;</td></tr>
|
|
|
+<tr name="109" id="109">
|
|
|
+<td><a id="l109" class='ln'>109</a></td><td> <a id="109c7" class="tk">real_T</a> <a id="109c14" class="tk">*</a><a id="109c15" class="tk">Ds</a> = (<a id="109c21" class="tk">real_T</a><a id="109c27" class="tk">*</a>)((<span class="kw">void</span><a id="109c35" class="tk">*</a><a id="109c36" class="tk">*</a>) <a id="109c39" class="tk">ssGetDWork</a>(<a id="109c50" class="tk">S</a>, 4))[3];</td></tr>
|
|
|
+<tr name="110" id="110">
|
|
|
+<td><a id="l110" class='ln'>110</a></td><td></td></tr>
|
|
|
+<tr name="111" id="111">
|
|
|
+<td><a id="l111" class='ln'>111</a></td><td> <span class="ct">/* Copy and transpose D */</span></td></tr>
|
|
|
+<tr name="112" id="112">
|
|
|
+<td><a id="l112" class='ln'>112</a></td><td> <span class="kw">for</span> (<a id="112c12" class="tk">i</a>=0; <a id="112c17" class="tk">i</a><a id="112c18" class="tk"><</a>9; <a id="112c22" class="tk">i</a><a id="112c23" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="113" id="113">
|
|
|
+<td><a id="l113" class='ln'>113</a></td><td> <span class="kw">for</span> (<a id="113c14" class="tk">j</a>=0; <a id="113c19" class="tk">j</a><a id="113c20" class="tk"><</a>9; <a id="113c24" class="tk">j</a><a id="113c25" class="tk">++</a>)</td></tr>
|
|
|
+<tr name="114" id="114">
|
|
|
+<td><a id="l114" class='ln'>114</a></td><td> <a id="114c11" class="tk">Ds</a>[<a id="114c14" class="tk">i</a><a id="114c15" class="tk">*</a>9 <a id="114c18" class="tk">+</a> <a id="114c20" class="tk">j</a>] = (<a id="114c26" class="tk">PMSM_Motor_TL3_ConstP</a>.<a id="114c48" class="tk">StateSpace_DS_param</a>[<a id="114c68" class="tk">i</a> <a id="114c70" class="tk">+</a> <a id="114c72" class="tk">j</a><a id="114c73" class="tk">*</a>9]);</td></tr>
|
|
|
+<tr name="115" id="115">
|
|
|
+<td><a id="l115" class='ln'>115</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="116" id="116">
|
|
|
+<td><a id="l116" class='ln'>116</a></td><td></td></tr>
|
|
|
+<tr name="117" id="117">
|
|
|
+<td><a id="l117" class='ln'>117</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="118" id="118">
|
|
|
+<td><a id="l118" class='ln'>118</a></td><td> <span class="ct">/* Switches work vectors */</span></td></tr>
|
|
|
+<tr name="119" id="119">
|
|
|
+<td><a id="l119" class='ln'>119</a></td><td> <a id="119c9" class="tk">int_T</a> <a id="119c15" class="tk">*</a><a id="119c16" class="tk">switch_status</a> = (<a id="119c33" class="tk">int_T</a><a id="119c38" class="tk">*</a>) ((<span class="kw">void</span><a id="119c47" class="tk">*</a><a id="119c48" class="tk">*</a>) <a id="119c51" class="tk">ssGetDWork</a>(<a id="119c62" class="tk">S</a>, 4))[9];</td></tr>
|
|
|
+<tr name="120" id="120">
|
|
|
+<td><a id="l120" class='ln'>120</a></td><td> <a id="120c9" class="tk">int_T</a> <a id="120c15" class="tk">*</a><a id="120c16" class="tk">gState</a> = (<a id="120c26" class="tk">int_T</a><a id="120c31" class="tk">*</a>)((<span class="kw">void</span><a id="120c39" class="tk">*</a><a id="120c40" class="tk">*</a>) <a id="120c43" class="tk">ssGetDWork</a>(<a id="120c54" class="tk">S</a>, 4))[12];</td></tr>
|
|
|
+<tr name="121" id="121">
|
|
|
+<td><a id="l121" class='ln'>121</a></td><td> <a id="121c9" class="tk">real_T</a> <a id="121c16" class="tk">*</a><a id="121c17" class="tk">yswitch</a> = (<a id="121c28" class="tk">real_T</a><a id="121c34" class="tk">*</a>)((<span class="kw">void</span><a id="121c42" class="tk">*</a><a id="121c43" class="tk">*</a>) <a id="121c46" class="tk">ssGetDWork</a>(<a id="121c57" class="tk">S</a>, 4))[19];</td></tr>
|
|
|
+<tr name="122" id="122">
|
|
|
+<td><a id="l122" class='ln'>122</a></td><td> <a id="122c9" class="tk">int_T</a> <a id="122c15" class="tk">*</a><a id="122c16" class="tk">switchTypes</a> = (<a id="122c31" class="tk">int_T</a><a id="122c36" class="tk">*</a>)((<span class="kw">void</span><a id="122c44" class="tk">*</a><a id="122c45" class="tk">*</a>) <a id="122c48" class="tk">ssGetDWork</a>(<a id="122c59" class="tk">S</a>, 4))[20];</td></tr>
|
|
|
+<tr name="123" id="123">
|
|
|
+<td><a id="l123" class='ln'>123</a></td><td> <a id="123c9" class="tk">int_T</a> <a id="123c15" class="tk">*</a><a id="123c16" class="tk">idxOutSw</a> = (<a id="123c28" class="tk">int_T</a><a id="123c33" class="tk">*</a>)((<span class="kw">void</span><a id="123c41" class="tk">*</a><a id="123c42" class="tk">*</a>) <a id="123c45" class="tk">ssGetDWork</a>(<a id="123c56" class="tk">S</a>, 4))[21];</td></tr>
|
|
|
+<tr name="124" id="124">
|
|
|
+<td><a id="l124" class='ln'>124</a></td><td> <a id="124c9" class="tk">int_T</a> <a id="124c15" class="tk">*</a><a id="124c16" class="tk">switch_status_init</a> = (<a id="124c38" class="tk">int_T</a><a id="124c43" class="tk">*</a>) ((<span class="kw">void</span><a id="124c52" class="tk">*</a><a id="124c53" class="tk">*</a>) <a id="124c56" class="tk">ssGetDWork</a>(<a id="124c67" class="tk">S</a>, 4))[10];</td></tr>
|
|
|
+<tr name="125" id="125">
|
|
|
+<td><a id="l125" class='ln'>125</a></td><td></td></tr>
|
|
|
+<tr name="126" id="126">
|
|
|
+<td><a id="l126" class='ln'>126</a></td><td> <span class="ct">/* Initialize work vectors */</span></td></tr>
|
|
|
+<tr name="127" id="127">
|
|
|
+<td><a id="l127" class='ln'>127</a></td><td> <a id="127c9" class="tk">switch_status</a>[0] = 0;</td></tr>
|
|
|
+<tr name="128" id="128">
|
|
|
+<td><a id="l128" class='ln'>128</a></td><td> <a id="128c9" class="tk">switch_status_init</a>[0] = 0;</td></tr>
|
|
|
+<tr name="129" id="129">
|
|
|
+<td><a id="l129" class='ln'>129</a></td><td> <a id="129c9" class="tk">gState</a>[0] = (<a id="129c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="130" id="130">
|
|
|
+<td><a id="l130" class='ln'>130</a></td><td> <a id="130c9" class="tk">yswitch</a>[0] = 1<a id="130c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="131" id="131">
|
|
|
+<td><a id="l131" class='ln'>131</a></td><td> <a id="131c9" class="tk">switchTypes</a>[0] = (<a id="131c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="132" id="132">
|
|
|
+<td><a id="l132" class='ln'>132</a></td><td> <a id="132c9" class="tk">idxOutSw</a>[0] = ((<a id="132c25" class="tk">int_T</a>)0.0) <a id="132c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="133" id="133">
|
|
|
+<td><a id="l133" class='ln'>133</a></td><td> <a id="133c9" class="tk">switch_status</a>[1] = 0;</td></tr>
|
|
|
+<tr name="134" id="134">
|
|
|
+<td><a id="l134" class='ln'>134</a></td><td> <a id="134c9" class="tk">switch_status_init</a>[1] = 0;</td></tr>
|
|
|
+<tr name="135" id="135">
|
|
|
+<td><a id="l135" class='ln'>135</a></td><td> <a id="135c9" class="tk">gState</a>[1] = (<a id="135c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="136" id="136">
|
|
|
+<td><a id="l136" class='ln'>136</a></td><td> <a id="136c9" class="tk">yswitch</a>[1] = 1<a id="136c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="137" id="137">
|
|
|
+<td><a id="l137" class='ln'>137</a></td><td> <a id="137c9" class="tk">switchTypes</a>[1] = (<a id="137c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="138" id="138">
|
|
|
+<td><a id="l138" class='ln'>138</a></td><td> <a id="138c9" class="tk">idxOutSw</a>[1] = ((<a id="138c25" class="tk">int_T</a>)0.0) <a id="138c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="139" id="139">
|
|
|
+<td><a id="l139" class='ln'>139</a></td><td> <a id="139c9" class="tk">switch_status</a>[2] = 0;</td></tr>
|
|
|
+<tr name="140" id="140">
|
|
|
+<td><a id="l140" class='ln'>140</a></td><td> <a id="140c9" class="tk">switch_status_init</a>[2] = 0;</td></tr>
|
|
|
+<tr name="141" id="141">
|
|
|
+<td><a id="l141" class='ln'>141</a></td><td> <a id="141c9" class="tk">gState</a>[2] = (<a id="141c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="142" id="142">
|
|
|
+<td><a id="l142" class='ln'>142</a></td><td> <a id="142c9" class="tk">yswitch</a>[2] = 1<a id="142c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="143" id="143">
|
|
|
+<td><a id="l143" class='ln'>143</a></td><td> <a id="143c9" class="tk">switchTypes</a>[2] = (<a id="143c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="144" id="144">
|
|
|
+<td><a id="l144" class='ln'>144</a></td><td> <a id="144c9" class="tk">idxOutSw</a>[2] = ((<a id="144c25" class="tk">int_T</a>)0.0) <a id="144c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="145" id="145">
|
|
|
+<td><a id="l145" class='ln'>145</a></td><td> <a id="145c9" class="tk">switch_status</a>[3] = 0;</td></tr>
|
|
|
+<tr name="146" id="146">
|
|
|
+<td><a id="l146" class='ln'>146</a></td><td> <a id="146c9" class="tk">switch_status_init</a>[3] = 0;</td></tr>
|
|
|
+<tr name="147" id="147">
|
|
|
+<td><a id="l147" class='ln'>147</a></td><td> <a id="147c9" class="tk">gState</a>[3] = (<a id="147c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="148" id="148">
|
|
|
+<td><a id="l148" class='ln'>148</a></td><td> <a id="148c9" class="tk">yswitch</a>[3] = 1<a id="148c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="149" id="149">
|
|
|
+<td><a id="l149" class='ln'>149</a></td><td> <a id="149c9" class="tk">switchTypes</a>[3] = (<a id="149c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="150" id="150">
|
|
|
+<td><a id="l150" class='ln'>150</a></td><td> <a id="150c9" class="tk">idxOutSw</a>[3] = ((<a id="150c25" class="tk">int_T</a>)0.0) <a id="150c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="151" id="151">
|
|
|
+<td><a id="l151" class='ln'>151</a></td><td> <a id="151c9" class="tk">switch_status</a>[4] = 0;</td></tr>
|
|
|
+<tr name="152" id="152">
|
|
|
+<td><a id="l152" class='ln'>152</a></td><td> <a id="152c9" class="tk">switch_status_init</a>[4] = 0;</td></tr>
|
|
|
+<tr name="153" id="153">
|
|
|
+<td><a id="l153" class='ln'>153</a></td><td> <a id="153c9" class="tk">gState</a>[4] = (<a id="153c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="154" id="154">
|
|
|
+<td><a id="l154" class='ln'>154</a></td><td> <a id="154c9" class="tk">yswitch</a>[4] = 1<a id="154c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="155" id="155">
|
|
|
+<td><a id="l155" class='ln'>155</a></td><td> <a id="155c9" class="tk">switchTypes</a>[4] = (<a id="155c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="156" id="156">
|
|
|
+<td><a id="l156" class='ln'>156</a></td><td> <a id="156c9" class="tk">idxOutSw</a>[4] = ((<a id="156c25" class="tk">int_T</a>)0.0) <a id="156c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="157" id="157">
|
|
|
+<td><a id="l157" class='ln'>157</a></td><td> <a id="157c9" class="tk">switch_status</a>[5] = 0;</td></tr>
|
|
|
+<tr name="158" id="158">
|
|
|
+<td><a id="l158" class='ln'>158</a></td><td> <a id="158c9" class="tk">switch_status_init</a>[5] = 0;</td></tr>
|
|
|
+<tr name="159" id="159">
|
|
|
+<td><a id="l159" class='ln'>159</a></td><td> <a id="159c9" class="tk">gState</a>[5] = (<a id="159c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="160" id="160">
|
|
|
+<td><a id="l160" class='ln'>160</a></td><td> <a id="160c9" class="tk">yswitch</a>[5] = 1<a id="160c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="161" id="161">
|
|
|
+<td><a id="l161" class='ln'>161</a></td><td> <a id="161c9" class="tk">switchTypes</a>[5] = (<a id="161c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="162" id="162">
|
|
|
+<td><a id="l162" class='ln'>162</a></td><td> <a id="162c9" class="tk">idxOutSw</a>[5] = ((<a id="162c25" class="tk">int_T</a>)0.0) <a id="162c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="163" id="163">
|
|
|
+<td><a id="l163" class='ln'>163</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="164" id="164">
|
|
|
+<td><a id="l164" class='ln'>164</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="165" id="165">
|
|
|
+<td><a id="l165" class='ln'>165</a></td><td></td></tr>
|
|
|
+<tr name="166" id="166">
|
|
|
+<td><a id="l166" class='ln'>166</a></td><td> <span class="ct">/* InitializeConditions for UnitDelay: '<S4>/Unit Delay' */</span></td></tr>
|
|
|
+<tr name="167" id="167">
|
|
|
+<td><a id="l167" class='ln'>167</a></td><td> ((<a id="167c7" class="tk">real_T</a> <a id="167c14" class="tk">*</a>)<a id="167c16" class="tk">ssGetDWork</a>(<a id="167c27" class="tk">S</a>, 3))[0] = 0.0;</td></tr>
|
|
|
+<tr name="168" id="168">
|
|
|
+<td><a id="l168" class='ln'>168</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="169" id="169">
|
|
|
+<td><a id="l169" class='ln'>169</a></td><td> <a id="169c5" class="tk">B_PMSM_Motor_TL3_T</a> <a id="169c24" class="tk">*</a><a id="169c25" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="170" id="170">
|
|
|
+<td><a id="l170" class='ln'>170</a></td><td> <a id="170c5" class="tk">_rtB</a> = ((<a id="170c14" class="tk">B_PMSM_Motor_TL3_T</a> <a id="170c33" class="tk">*</a>) <a id="170c36" class="tk">ssGetLocalBlockIO</a>(<a id="170c54" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="171" id="171">
|
|
|
+<td><a id="l171" class='ln'>171</a></td><td></td></tr>
|
|
|
+<tr name="172" id="172">
|
|
|
+<td><a id="l172" class='ln'>172</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S11>/Discrete-Time Integrator1' */</span></td></tr>
|
|
|
+<tr name="173" id="173">
|
|
|
+<td><a id="l173" class='ln'>173</a></td><td> ((<a id="173c7" class="tk">real_T</a> <a id="173c14" class="tk">*</a>)<a id="173c16" class="tk">ssGetDWork</a>(<a id="173c27" class="tk">S</a>, 0))[0] = 1.5707963267948966;</td></tr>
|
|
|
+<tr name="174" id="174">
|
|
|
+<td><a id="l174" class='ln'>174</a></td><td></td></tr>
|
|
|
+<tr name="175" id="175">
|
|
|
+<td><a id="l175" class='ln'>175</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S18>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="176" id="176">
|
|
|
+<td><a id="l176" class='ln'>176</a></td><td> ((<a id="176c7" class="tk">real_T</a> <a id="176c14" class="tk">*</a>)<a id="176c16" class="tk">ssGetDWork</a>(<a id="176c27" class="tk">S</a>, 1))[0] = 0.0;</td></tr>
|
|
|
+<tr name="177" id="177">
|
|
|
+<td><a id="l177" class='ln'>177</a></td><td></td></tr>
|
|
|
+<tr name="178" id="178">
|
|
|
+<td><a id="l178" class='ln'>178</a></td><td> <span class="ct">/* InitializeConditions for DiscreteIntegrator: '<S17>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="179" id="179">
|
|
|
+<td><a id="l179" class='ln'>179</a></td><td> ((<a id="179c7" class="tk">real_T</a> <a id="179c14" class="tk">*</a>)<a id="179c16" class="tk">ssGetDWork</a>(<a id="179c27" class="tk">S</a>, 2))[0] = 0.0;</td></tr>
|
|
|
+<tr name="180" id="180">
|
|
|
+<td><a id="l180" class='ln'>180</a></td><td></td></tr>
|
|
|
+<tr name="181" id="181">
|
|
|
+<td><a id="l181" class='ln'>181</a></td><td> <span class="ct">/* InitializeConditions for S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="182" id="182">
|
|
|
+<td><a id="l182" class='ln'>182</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="183" id="183">
|
|
|
+<td><a id="l183" class='ln'>183</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="184" id="184">
|
|
|
+<td><a id="l184" class='ln'>184</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="185" id="185">
|
|
|
+<td><a id="l185" class='ln'>185</a></td><td> <a id="185c7" class="tk">int32_T</a> <a id="185c15" class="tk">i</a>, <a id="185c18" class="tk">j</a>;</td></tr>
|
|
|
+<tr name="186" id="186">
|
|
|
+<td><a id="l186" class='ln'>186</a></td><td> <a id="186c7" class="tk">real_T</a> <a id="186c14" class="tk">*</a><a id="186c15" class="tk">Ds</a> = (<a id="186c21" class="tk">real_T</a><a id="186c27" class="tk">*</a>)((<span class="kw">void</span><a id="186c35" class="tk">*</a><a id="186c36" class="tk">*</a>) <a id="186c39" class="tk">ssGetDWork</a>(<a id="186c50" class="tk">S</a>, 4))[3];</td></tr>
|
|
|
+<tr name="187" id="187">
|
|
|
+<td><a id="l187" class='ln'>187</a></td><td></td></tr>
|
|
|
+<tr name="188" id="188">
|
|
|
+<td><a id="l188" class='ln'>188</a></td><td> <span class="ct">/* Copy and transpose D */</span></td></tr>
|
|
|
+<tr name="189" id="189">
|
|
|
+<td><a id="l189" class='ln'>189</a></td><td> <span class="kw">for</span> (<a id="189c12" class="tk">i</a>=0; <a id="189c17" class="tk">i</a><a id="189c18" class="tk"><</a>9; <a id="189c22" class="tk">i</a><a id="189c23" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="190" id="190">
|
|
|
+<td><a id="l190" class='ln'>190</a></td><td> <span class="kw">for</span> (<a id="190c14" class="tk">j</a>=0; <a id="190c19" class="tk">j</a><a id="190c20" class="tk"><</a>9; <a id="190c24" class="tk">j</a><a id="190c25" class="tk">++</a>)</td></tr>
|
|
|
+<tr name="191" id="191">
|
|
|
+<td><a id="l191" class='ln'>191</a></td><td> <a id="191c11" class="tk">Ds</a>[<a id="191c14" class="tk">i</a><a id="191c15" class="tk">*</a>9 <a id="191c18" class="tk">+</a> <a id="191c20" class="tk">j</a>] = (<a id="191c26" class="tk">PMSM_Motor_TL3_ConstP</a>.<a id="191c48" class="tk">StateSpace_DS_param</a>[<a id="191c68" class="tk">i</a> <a id="191c70" class="tk">+</a> <a id="191c72" class="tk">j</a><a id="191c73" class="tk">*</a>9]);</td></tr>
|
|
|
+<tr name="192" id="192">
|
|
|
+<td><a id="l192" class='ln'>192</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="193" id="193">
|
|
|
+<td><a id="l193" class='ln'>193</a></td><td></td></tr>
|
|
|
+<tr name="194" id="194">
|
|
|
+<td><a id="l194" class='ln'>194</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="195" id="195">
|
|
|
+<td><a id="l195" class='ln'>195</a></td><td> <span class="ct">/* Switches work vectors */</span></td></tr>
|
|
|
+<tr name="196" id="196">
|
|
|
+<td><a id="l196" class='ln'>196</a></td><td> <a id="196c9" class="tk">int_T</a> <a id="196c15" class="tk">*</a><a id="196c16" class="tk">switch_status</a> = (<a id="196c33" class="tk">int_T</a><a id="196c38" class="tk">*</a>) ((<span class="kw">void</span><a id="196c47" class="tk">*</a><a id="196c48" class="tk">*</a>) <a id="196c51" class="tk">ssGetDWork</a>(<a id="196c62" class="tk">S</a>, 4))[9];</td></tr>
|
|
|
+<tr name="197" id="197">
|
|
|
+<td><a id="l197" class='ln'>197</a></td><td> <a id="197c9" class="tk">int_T</a> <a id="197c15" class="tk">*</a><a id="197c16" class="tk">gState</a> = (<a id="197c26" class="tk">int_T</a><a id="197c31" class="tk">*</a>)((<span class="kw">void</span><a id="197c39" class="tk">*</a><a id="197c40" class="tk">*</a>) <a id="197c43" class="tk">ssGetDWork</a>(<a id="197c54" class="tk">S</a>, 4))[12];</td></tr>
|
|
|
+<tr name="198" id="198">
|
|
|
+<td><a id="l198" class='ln'>198</a></td><td> <a id="198c9" class="tk">real_T</a> <a id="198c16" class="tk">*</a><a id="198c17" class="tk">yswitch</a> = (<a id="198c28" class="tk">real_T</a><a id="198c34" class="tk">*</a>)((<span class="kw">void</span><a id="198c42" class="tk">*</a><a id="198c43" class="tk">*</a>) <a id="198c46" class="tk">ssGetDWork</a>(<a id="198c57" class="tk">S</a>, 4))[19];</td></tr>
|
|
|
+<tr name="199" id="199">
|
|
|
+<td><a id="l199" class='ln'>199</a></td><td> <a id="199c9" class="tk">int_T</a> <a id="199c15" class="tk">*</a><a id="199c16" class="tk">switchTypes</a> = (<a id="199c31" class="tk">int_T</a><a id="199c36" class="tk">*</a>)((<span class="kw">void</span><a id="199c44" class="tk">*</a><a id="199c45" class="tk">*</a>) <a id="199c48" class="tk">ssGetDWork</a>(<a id="199c59" class="tk">S</a>, 4))[20];</td></tr>
|
|
|
+<tr name="200" id="200">
|
|
|
+<td><a id="l200" class='ln'>200</a></td><td> <a id="200c9" class="tk">int_T</a> <a id="200c15" class="tk">*</a><a id="200c16" class="tk">idxOutSw</a> = (<a id="200c28" class="tk">int_T</a><a id="200c33" class="tk">*</a>)((<span class="kw">void</span><a id="200c41" class="tk">*</a><a id="200c42" class="tk">*</a>) <a id="200c45" class="tk">ssGetDWork</a>(<a id="200c56" class="tk">S</a>, 4))[21];</td></tr>
|
|
|
+<tr name="201" id="201">
|
|
|
+<td><a id="l201" class='ln'>201</a></td><td> <a id="201c9" class="tk">int_T</a> <a id="201c15" class="tk">*</a><a id="201c16" class="tk">switch_status_init</a> = (<a id="201c38" class="tk">int_T</a><a id="201c43" class="tk">*</a>) ((<span class="kw">void</span><a id="201c52" class="tk">*</a><a id="201c53" class="tk">*</a>) <a id="201c56" class="tk">ssGetDWork</a>(<a id="201c67" class="tk">S</a>, 4))[10];</td></tr>
|
|
|
+<tr name="202" id="202">
|
|
|
+<td><a id="l202" class='ln'>202</a></td><td></td></tr>
|
|
|
+<tr name="203" id="203">
|
|
|
+<td><a id="l203" class='ln'>203</a></td><td> <span class="ct">/* Initialize work vectors */</span></td></tr>
|
|
|
+<tr name="204" id="204">
|
|
|
+<td><a id="l204" class='ln'>204</a></td><td> <a id="204c9" class="tk">switch_status</a>[0] = 0;</td></tr>
|
|
|
+<tr name="205" id="205">
|
|
|
+<td><a id="l205" class='ln'>205</a></td><td> <a id="205c9" class="tk">switch_status_init</a>[0] = 0;</td></tr>
|
|
|
+<tr name="206" id="206">
|
|
|
+<td><a id="l206" class='ln'>206</a></td><td> <a id="206c9" class="tk">gState</a>[0] = (<a id="206c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="207" id="207">
|
|
|
+<td><a id="l207" class='ln'>207</a></td><td> <a id="207c9" class="tk">yswitch</a>[0] = 1<a id="207c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="208" id="208">
|
|
|
+<td><a id="l208" class='ln'>208</a></td><td> <a id="208c9" class="tk">switchTypes</a>[0] = (<a id="208c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="209" id="209">
|
|
|
+<td><a id="l209" class='ln'>209</a></td><td> <a id="209c9" class="tk">idxOutSw</a>[0] = ((<a id="209c25" class="tk">int_T</a>)0.0) <a id="209c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="210" id="210">
|
|
|
+<td><a id="l210" class='ln'>210</a></td><td> <a id="210c9" class="tk">switch_status</a>[1] = 0;</td></tr>
|
|
|
+<tr name="211" id="211">
|
|
|
+<td><a id="l211" class='ln'>211</a></td><td> <a id="211c9" class="tk">switch_status_init</a>[1] = 0;</td></tr>
|
|
|
+<tr name="212" id="212">
|
|
|
+<td><a id="l212" class='ln'>212</a></td><td> <a id="212c9" class="tk">gState</a>[1] = (<a id="212c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="213" id="213">
|
|
|
+<td><a id="l213" class='ln'>213</a></td><td> <a id="213c9" class="tk">yswitch</a>[1] = 1<a id="213c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="214" id="214">
|
|
|
+<td><a id="l214" class='ln'>214</a></td><td> <a id="214c9" class="tk">switchTypes</a>[1] = (<a id="214c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="215" id="215">
|
|
|
+<td><a id="l215" class='ln'>215</a></td><td> <a id="215c9" class="tk">idxOutSw</a>[1] = ((<a id="215c25" class="tk">int_T</a>)0.0) <a id="215c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="216" id="216">
|
|
|
+<td><a id="l216" class='ln'>216</a></td><td> <a id="216c9" class="tk">switch_status</a>[2] = 0;</td></tr>
|
|
|
+<tr name="217" id="217">
|
|
|
+<td><a id="l217" class='ln'>217</a></td><td> <a id="217c9" class="tk">switch_status_init</a>[2] = 0;</td></tr>
|
|
|
+<tr name="218" id="218">
|
|
|
+<td><a id="l218" class='ln'>218</a></td><td> <a id="218c9" class="tk">gState</a>[2] = (<a id="218c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="219" id="219">
|
|
|
+<td><a id="l219" class='ln'>219</a></td><td> <a id="219c9" class="tk">yswitch</a>[2] = 1<a id="219c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="220" id="220">
|
|
|
+<td><a id="l220" class='ln'>220</a></td><td> <a id="220c9" class="tk">switchTypes</a>[2] = (<a id="220c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="221" id="221">
|
|
|
+<td><a id="l221" class='ln'>221</a></td><td> <a id="221c9" class="tk">idxOutSw</a>[2] = ((<a id="221c25" class="tk">int_T</a>)0.0) <a id="221c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="222" id="222">
|
|
|
+<td><a id="l222" class='ln'>222</a></td><td> <a id="222c9" class="tk">switch_status</a>[3] = 0;</td></tr>
|
|
|
+<tr name="223" id="223">
|
|
|
+<td><a id="l223" class='ln'>223</a></td><td> <a id="223c9" class="tk">switch_status_init</a>[3] = 0;</td></tr>
|
|
|
+<tr name="224" id="224">
|
|
|
+<td><a id="l224" class='ln'>224</a></td><td> <a id="224c9" class="tk">gState</a>[3] = (<a id="224c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="225" id="225">
|
|
|
+<td><a id="l225" class='ln'>225</a></td><td> <a id="225c9" class="tk">yswitch</a>[3] = 1<a id="225c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="226" id="226">
|
|
|
+<td><a id="l226" class='ln'>226</a></td><td> <a id="226c9" class="tk">switchTypes</a>[3] = (<a id="226c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="227" id="227">
|
|
|
+<td><a id="l227" class='ln'>227</a></td><td> <a id="227c9" class="tk">idxOutSw</a>[3] = ((<a id="227c25" class="tk">int_T</a>)0.0) <a id="227c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="228" id="228">
|
|
|
+<td><a id="l228" class='ln'>228</a></td><td> <a id="228c9" class="tk">switch_status</a>[4] = 0;</td></tr>
|
|
|
+<tr name="229" id="229">
|
|
|
+<td><a id="l229" class='ln'>229</a></td><td> <a id="229c9" class="tk">switch_status_init</a>[4] = 0;</td></tr>
|
|
|
+<tr name="230" id="230">
|
|
|
+<td><a id="l230" class='ln'>230</a></td><td> <a id="230c9" class="tk">gState</a>[4] = (<a id="230c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="231" id="231">
|
|
|
+<td><a id="l231" class='ln'>231</a></td><td> <a id="231c9" class="tk">yswitch</a>[4] = 1<a id="231c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="232" id="232">
|
|
|
+<td><a id="l232" class='ln'>232</a></td><td> <a id="232c9" class="tk">switchTypes</a>[4] = (<a id="232c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="233" id="233">
|
|
|
+<td><a id="l233" class='ln'>233</a></td><td> <a id="233c9" class="tk">idxOutSw</a>[4] = ((<a id="233c25" class="tk">int_T</a>)0.0) <a id="233c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="234" id="234">
|
|
|
+<td><a id="l234" class='ln'>234</a></td><td> <a id="234c9" class="tk">switch_status</a>[5] = 0;</td></tr>
|
|
|
+<tr name="235" id="235">
|
|
|
+<td><a id="l235" class='ln'>235</a></td><td> <a id="235c9" class="tk">switch_status_init</a>[5] = 0;</td></tr>
|
|
|
+<tr name="236" id="236">
|
|
|
+<td><a id="l236" class='ln'>236</a></td><td> <a id="236c9" class="tk">gState</a>[5] = (<a id="236c22" class="tk">int_T</a>) 0.0;</td></tr>
|
|
|
+<tr name="237" id="237">
|
|
|
+<td><a id="l237" class='ln'>237</a></td><td> <a id="237c9" class="tk">yswitch</a>[5] = 1<a id="237c23" class="tk">/</a>0.001;</td></tr>
|
|
|
+<tr name="238" id="238">
|
|
|
+<td><a id="l238" class='ln'>238</a></td><td> <a id="238c9" class="tk">switchTypes</a>[5] = (<a id="238c27" class="tk">int_T</a>)7.0;</td></tr>
|
|
|
+<tr name="239" id="239">
|
|
|
+<td><a id="l239" class='ln'>239</a></td><td> <a id="239c9" class="tk">idxOutSw</a>[5] = ((<a id="239c25" class="tk">int_T</a>)0.0) <a id="239c36" class="tk">-</a> 1;</td></tr>
|
|
|
+<tr name="240" id="240">
|
|
|
+<td><a id="l240" class='ln'>240</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="241" id="241">
|
|
|
+<td><a id="l241" class='ln'>241</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="242" id="242">
|
|
|
+<td><a id="l242" class='ln'>242</a></td><td></td></tr>
|
|
|
+<tr name="243" id="243">
|
|
|
+<td><a id="l243" class='ln'>243</a></td><td> <span class="ct">/* InitializeConditions for UnitDelay: '<S4>/Unit Delay' */</span></td></tr>
|
|
|
+<tr name="244" id="244">
|
|
|
+<td><a id="l244" class='ln'>244</a></td><td> ((<a id="244c7" class="tk">real_T</a> <a id="244c14" class="tk">*</a>)<a id="244c16" class="tk">ssGetDWork</a>(<a id="244c27" class="tk">S</a>, 3))[0] = 0.0;</td></tr>
|
|
|
+<tr name="245" id="245">
|
|
|
+<td><a id="l245" class='ln'>245</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="246" id="246">
|
|
|
+<td><a id="l246" class='ln'>246</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="247" id="247">
|
|
|
+<td><a id="l247" class='ln'>247</a></td><td></td></tr>
|
|
|
+<tr name="248" id="248">
|
|
|
+<td><a id="l248" class='ln'>248</a></td><td><span class="ct">/* Start for root system: '<Root>' */</span></td></tr>
|
|
|
+<tr name="249" id="249">
|
|
|
+<td><a id="l249" class='ln'>249</a></td><td><span class="pp">#define</span> <a id="249c9" class="tk">MDL_START</a></td></tr>
|
|
|
+<tr name="250" id="250">
|
|
|
+<td><a id="l250" class='ln'>250</a></td><td></td></tr>
|
|
|
+<tr name="251" id="251">
|
|
|
+<td><a id="l251" class='ln'>251</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="251c13" class="tk">mdlStart</a>(<a id="251c22" class="tk">SimStruct</a> <a id="251c32" class="tk">*</a><a id="251c33" class="tk">S</a>)</td></tr>
|
|
|
+<tr name="252" id="252">
|
|
|
+<td><a id="l252" class='ln'>252</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="253" id="253">
|
|
|
+<td><a id="l253" class='ln'>253</a></td><td> <span class="ct">/* instance underlying S-Function data */</span></td></tr>
|
|
|
+<tr name="254" id="254">
|
|
|
+<td><a id="l254" class='ln'>254</a></td><td><span class="pp">#if</span> <a id="254c5" class="tk">defined</a>(<a id="254c13" class="tk">RT_MALLOC</a>) <a id="254c24" class="tk">||</a> <a id="254c27" class="tk">defined</a>(<a id="254c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="255" id="255">
|
|
|
+<td><a id="l255" class='ln'>255</a></td><td><span class="pp">#if</span> <a id="255c5" class="tk">defined</a>(<a id="255c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="256" id="256">
|
|
|
+<td><a id="l256" class='ln'>256</a></td><td></td></tr>
|
|
|
+<tr name="257" id="257">
|
|
|
+<td><a id="l257" class='ln'>257</a></td><td> <span class="ct">/* non-finites */</span></td></tr>
|
|
|
+<tr name="258" id="258">
|
|
|
+<td><a id="l258" class='ln'>258</a></td><td> <a id="258c3" class="tk">rt_InitInfAndNaN</a>(<span class="kw">sizeof</span>(<a id="258c27" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="259" id="259">
|
|
|
+<td><a id="l259" class='ln'>259</a></td><td></td></tr>
|
|
|
+<tr name="260" id="260">
|
|
|
+<td><a id="l260" class='ln'>260</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="261" id="261">
|
|
|
+<td><a id="l261" class='ln'>261</a></td><td></td></tr>
|
|
|
+<tr name="262" id="262">
|
|
|
+<td><a id="l262" class='ln'>262</a></td><td> <a id="262c3" class="tk">PMSM_Motor_TL3_malloc</a>(<a id="262c25" class="tk">S</a>);</td></tr>
|
|
|
+<tr name="263" id="263">
|
|
|
+<td><a id="l263" class='ln'>263</a></td><td> <span class="kw">if</span> (<a id="263c7" class="tk">ssGetErrorStatus</a>(<a id="263c24" class="tk">S</a>) <a id="263c27" class="tk">!=</a> (<a id="263c31" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
|
|
|
+<tr name="264" id="264">
|
|
|
+<td><a id="l264" class='ln'>264</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="265" id="265">
|
|
|
+<td><a id="l265" class='ln'>265</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="266" id="266">
|
|
|
+<td><a id="l266" class='ln'>266</a></td><td></td></tr>
|
|
|
+<tr name="267" id="267">
|
|
|
+<td><a id="l267" class='ln'>267</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="268" id="268">
|
|
|
+<td><a id="l268" class='ln'>268</a></td><td></td></tr>
|
|
|
+<tr name="269" id="269">
|
|
|
+<td><a id="l269" class='ln'>269</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="270" id="270">
|
|
|
+<td><a id="l270" class='ln'>270</a></td><td> <a id="270c5" class="tk">B_PMSM_Motor_TL3_T</a> <a id="270c24" class="tk">*</a><a id="270c25" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="271" id="271">
|
|
|
+<td><a id="l271" class='ln'>271</a></td><td> <a id="271c5" class="tk">_rtB</a> = ((<a id="271c14" class="tk">B_PMSM_Motor_TL3_T</a> <a id="271c33" class="tk">*</a>) <a id="271c36" class="tk">ssGetLocalBlockIO</a>(<a id="271c54" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="272" id="272">
|
|
|
+<td><a id="l272" class='ln'>272</a></td><td></td></tr>
|
|
|
+<tr name="273" id="273">
|
|
|
+<td><a id="l273" class='ln'>273</a></td><td> <span class="ct">/* Start for S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="274" id="274">
|
|
|
+<td><a id="l274" class='ln'>274</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="275" id="275">
|
|
|
+<td><a id="l275" class='ln'>275</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="276" id="276">
|
|
|
+<td><a id="l276" class='ln'>276</a></td><td></td></tr>
|
|
|
+<tr name="277" id="277">
|
|
|
+<td><a id="l277" class='ln'>277</a></td><td> <span class="ct">/* S-Function block: <S20>/State-Space */</span></td></tr>
|
|
|
+<tr name="278" id="278">
|
|
|
+<td><a id="l278" class='ln'>278</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="279" id="279">
|
|
|
+<td><a id="l279" class='ln'>279</a></td><td> ((<span class="kw">void</span><a id="279c13" class="tk">*</a><a id="279c14" class="tk">*</a>) <a id="279c17" class="tk">ssGetDWork</a>(<a id="279c28" class="tk">S</a>, 4))[3] = (<a id="279c41" class="tk">real_T</a><a id="279c47" class="tk">*</a>)<a id="279c49" class="tk">calloc</a>(9 <a id="279c58" class="tk">*</a> 9, <span class="kw">sizeof</span>(<a id="279c70" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="280" id="280">
|
|
|
+<td><a id="l280" class='ln'>280</a></td><td> ((<span class="kw">void</span><a id="280c13" class="tk">*</a><a id="280c14" class="tk">*</a>) <a id="280c17" class="tk">ssGetDWork</a>(<a id="280c28" class="tk">S</a>, 4))[4] = (<a id="280c41" class="tk">real_T</a><a id="280c47" class="tk">*</a>)<a id="280c49" class="tk">calloc</a>(9, <span class="kw">sizeof</span>(<a id="280c66" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="281" id="281">
|
|
|
+<td><a id="l281" class='ln'>281</a></td><td> ((<span class="kw">void</span><a id="281c13" class="tk">*</a><a id="281c14" class="tk">*</a>) <a id="281c17" class="tk">ssGetDWork</a>(<a id="281c28" class="tk">S</a>, 4))[7] = (<a id="281c41" class="tk">real_T</a><a id="281c47" class="tk">*</a>)<a id="281c49" class="tk">calloc</a>(9, <span class="kw">sizeof</span>(<a id="281c66" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="282" id="282">
|
|
|
+<td><a id="l282" class='ln'>282</a></td><td> ((<span class="kw">void</span><a id="282c13" class="tk">*</a><a id="282c14" class="tk">*</a>) <a id="282c17" class="tk">ssGetDWork</a>(<a id="282c28" class="tk">S</a>, 4))[9] = (<a id="282c41" class="tk">int_T</a><a id="282c46" class="tk">*</a>)<a id="282c48" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="282c65" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="283" id="283">
|
|
|
+<td><a id="l283" class='ln'>283</a></td><td> ((<span class="kw">void</span><a id="283c13" class="tk">*</a><a id="283c14" class="tk">*</a>) <a id="283c17" class="tk">ssGetDWork</a>(<a id="283c28" class="tk">S</a>, 4))[11] = (<a id="283c42" class="tk">int_T</a><a id="283c47" class="tk">*</a>)<a id="283c49" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="283c66" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="284" id="284">
|
|
|
+<td><a id="l284" class='ln'>284</a></td><td> ((<span class="kw">void</span><a id="284c13" class="tk">*</a><a id="284c14" class="tk">*</a>) <a id="284c17" class="tk">ssGetDWork</a>(<a id="284c28" class="tk">S</a>, 4))[12] = (<a id="284c42" class="tk">int_T</a><a id="284c47" class="tk">*</a>)<a id="284c49" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="284c66" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="285" id="285">
|
|
|
+<td><a id="l285" class='ln'>285</a></td><td> ((<span class="kw">void</span><a id="285c13" class="tk">*</a><a id="285c14" class="tk">*</a>) <a id="285c17" class="tk">ssGetDWork</a>(<a id="285c28" class="tk">S</a>, 4))[19] = (<a id="285c42" class="tk">real_T</a><a id="285c48" class="tk">*</a>)<a id="285c50" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="285c67" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="286" id="286">
|
|
|
+<td><a id="l286" class='ln'>286</a></td><td> ((<span class="kw">void</span><a id="286c13" class="tk">*</a><a id="286c14" class="tk">*</a>) <a id="286c17" class="tk">ssGetDWork</a>(<a id="286c28" class="tk">S</a>, 4))[20] = (<a id="286c42" class="tk">int_T</a><a id="286c47" class="tk">*</a>)<a id="286c49" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="286c66" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="287" id="287">
|
|
|
+<td><a id="l287" class='ln'>287</a></td><td> ((<span class="kw">void</span><a id="287c13" class="tk">*</a><a id="287c14" class="tk">*</a>) <a id="287c17" class="tk">ssGetDWork</a>(<a id="287c28" class="tk">S</a>, 4))[21] = (<a id="287c42" class="tk">int_T</a><a id="287c47" class="tk">*</a>)<a id="287c49" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="287c66" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="288" id="288">
|
|
|
+<td><a id="l288" class='ln'>288</a></td><td> ((<span class="kw">void</span><a id="288c13" class="tk">*</a><a id="288c14" class="tk">*</a>) <a id="288c17" class="tk">ssGetDWork</a>(<a id="288c28" class="tk">S</a>, 4))[10] = (<a id="288c42" class="tk">int_T</a><a id="288c47" class="tk">*</a>)<a id="288c49" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="288c66" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="289" id="289">
|
|
|
+<td><a id="l289" class='ln'>289</a></td><td> ((<span class="kw">void</span><a id="289c13" class="tk">*</a><a id="289c14" class="tk">*</a>) <a id="289c17" class="tk">ssGetDWork</a>(<a id="289c28" class="tk">S</a>, 4))[13] = (<a id="289c42" class="tk">real_T</a><a id="289c48" class="tk">*</a>)<a id="289c50" class="tk">calloc</a>(6, <span class="kw">sizeof</span>(<a id="289c67" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="290" id="290">
|
|
|
+<td><a id="l290" class='ln'>290</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="291" id="291">
|
|
|
+<td><a id="l291" class='ln'>291</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="292" id="292">
|
|
|
+<td><a id="l292" class='ln'>292</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="293" id="293">
|
|
|
+<td><a id="l293" class='ln'>293</a></td><td></td></tr>
|
|
|
+<tr name="294" id="294">
|
|
|
+<td><a id="l294" class='ln'>294</a></td><td><span class="ct">/* Outputs for root system: '<Root>' */</span></td></tr>
|
|
|
+<tr name="295" id="295">
|
|
|
+<td><a id="l295" class='ln'>295</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="295c13" class="tk">mdlOutputs</a>(<a id="295c24" class="tk">SimStruct</a> <a id="295c34" class="tk">*</a><a id="295c35" class="tk">S</a>, <a id="295c38" class="tk">int_T</a> <a id="295c44" class="tk">tid</a>)</td></tr>
|
|
|
+<tr name="296" id="296">
|
|
|
+<td><a id="l296" class='ln'>296</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="297" id="297">
|
|
|
+<td><a id="l297" class='ln'>297</a></td><td> <a id="297c3" class="tk">B_PMSM_Motor_TL3_T</a> <a id="297c22" class="tk">*</a><a id="297c23" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="298" id="298">
|
|
|
+<td><a id="l298" class='ln'>298</a></td><td> <a id="298c3" class="tk">real_T</a> <a id="298c10" class="tk">rtb_DataTypeConversion1</a>;</td></tr>
|
|
|
+<tr name="299" id="299">
|
|
|
+<td><a id="l299" class='ln'>299</a></td><td> <a id="299c3" class="tk">real_T</a> <a id="299c10" class="tk">rtb_DataTypeConversion2</a>;</td></tr>
|
|
|
+<tr name="300" id="300">
|
|
|
+<td><a id="l300" class='ln'>300</a></td><td> <a id="300c3" class="tk">real_T</a> <a id="300c10" class="tk">rtb_ElementaryMath_o1_tmp</a>;</td></tr>
|
|
|
+<tr name="301" id="301">
|
|
|
+<td><a id="l301" class='ln'>301</a></td><td> <a id="301c3" class="tk">real_T</a> <a id="301c10" class="tk">rtb_ElementaryMath_o2_tmp</a>;</td></tr>
|
|
|
+<tr name="302" id="302">
|
|
|
+<td><a id="l302" class='ln'>302</a></td><td> <a id="302c3" class="tk">_rtB</a> = ((<a id="302c12" class="tk">B_PMSM_Motor_TL3_T</a> <a id="302c31" class="tk">*</a>) <a id="302c34" class="tk">ssGetLocalBlockIO</a>(<a id="302c52" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="303" id="303">
|
|
|
+<td><a id="l303" class='ln'>303</a></td><td></td></tr>
|
|
|
+<tr name="304" id="304">
|
|
|
+<td><a id="l304" class='ln'>304</a></td><td> <span class="ct">/* Trigonometry: '<S13>/Elementary Math' incorporates:</span></td></tr>
|
|
|
+<tr name="305" id="305">
|
|
|
+<td><a id="l305" class='ln'>305</a></td><td><span class="ct"> * DiscreteIntegrator: '<S11>/Discrete-Time Integrator1'</span></td></tr>
|
|
|
+<tr name="306" id="306">
|
|
|
+<td><a id="l306" class='ln'>306</a></td><td><span class="ct"> * Trigonometry: '<S16>/Trigonometric Function'</span></td></tr>
|
|
|
+<tr name="307" id="307">
|
|
|
+<td><a id="l307" class='ln'>307</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="308" id="308">
|
|
|
+<td><a id="l308" class='ln'>308</a></td><td> <a id="308c3" class="tk">rtb_ElementaryMath_o1_tmp</a> = <a id="308c31" class="tk">sin</a>(((<a id="308c37" class="tk">real_T</a> <a id="308c44" class="tk">*</a>)<a id="308c46" class="tk">ssGetDWork</a>(<a id="308c57" class="tk">S</a>, 0))[0]);</td></tr>
|
|
|
+<tr name="309" id="309">
|
|
|
+<td><a id="l309" class='ln'>309</a></td><td> <a id="309c3" class="tk">rtb_ElementaryMath_o2_tmp</a> = <a id="309c31" class="tk">cos</a>(((<a id="309c37" class="tk">real_T</a> <a id="309c44" class="tk">*</a>)<a id="309c46" class="tk">ssGetDWork</a>(<a id="309c57" class="tk">S</a>, 0))[0]);</td></tr>
|
|
|
+<tr name="310" id="310">
|
|
|
+<td><a id="l310" class='ln'>310</a></td><td></td></tr>
|
|
|
+<tr name="311" id="311">
|
|
|
+<td><a id="l311" class='ln'>311</a></td><td> <span class="ct">/* Fcn: '<S15>/Fcn' incorporates:</span></td></tr>
|
|
|
+<tr name="312" id="312">
|
|
|
+<td><a id="l312" class='ln'>312</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="313" id="313">
|
|
|
+<td><a id="l313" class='ln'>313</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="314" id="314">
|
|
|
+<td><a id="l314" class='ln'>314</a></td><td><span class="ct"> * Trigonometry: '<S13>/Elementary Math'</span></td></tr>
|
|
|
+<tr name="315" id="315">
|
|
|
+<td><a id="l315" class='ln'>315</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="316" id="316">
|
|
|
+<td><a id="l316" class='ln'>316</a></td><td> <a id="316c3" class="tk">_rtB</a>-><a id="316c9" class="tk">Fcn</a> = ((<a id="316c17" class="tk">real_T</a> <a id="316c24" class="tk">*</a>)<a id="316c26" class="tk">ssGetDWork</a>(<a id="316c37" class="tk">S</a>, 1))[0] <a id="316c47" class="tk">*</a> <a id="316c49" class="tk">rtb_ElementaryMath_o2_tmp</a> <a id="316c75" class="tk">+</a></td></tr>
|
|
|
+<tr name="317" id="317">
|
|
|
+<td><a id="l317" class='ln'>317</a></td><td> ((<a id="317c7" class="tk">real_T</a> <a id="317c14" class="tk">*</a>)<a id="317c16" class="tk">ssGetDWork</a>(<a id="317c27" class="tk">S</a>, 2))[0] <a id="317c37" class="tk">*</a> <a id="317c39" class="tk">rtb_ElementaryMath_o1_tmp</a>;</td></tr>
|
|
|
+<tr name="318" id="318">
|
|
|
+<td><a id="l318" class='ln'>318</a></td><td></td></tr>
|
|
|
+<tr name="319" id="319">
|
|
|
+<td><a id="l319" class='ln'>319</a></td><td> <span class="ct">/* Fcn: '<S15>/Fcn1' incorporates:</span></td></tr>
|
|
|
+<tr name="320" id="320">
|
|
|
+<td><a id="l320" class='ln'>320</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="321" id="321">
|
|
|
+<td><a id="l321" class='ln'>321</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="322" id="322">
|
|
|
+<td><a id="l322" class='ln'>322</a></td><td><span class="ct"> * Trigonometry: '<S13>/Elementary Math'</span></td></tr>
|
|
|
+<tr name="323" id="323">
|
|
|
+<td><a id="l323" class='ln'>323</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="324" id="324">
|
|
|
+<td><a id="l324" class='ln'>324</a></td><td> <a id="324c3" class="tk">_rtB</a>-><a id="324c9" class="tk">Fcn1</a> = ((<a id="324c18" class="tk">-</a>((<a id="324c21" class="tk">real_T</a> <a id="324c28" class="tk">*</a>)<a id="324c30" class="tk">ssGetDWork</a>(<a id="324c41" class="tk">S</a>, 1))[0] <a id="324c51" class="tk">-</a> 1.7320508075688772 <a id="324c72" class="tk">*</a></td></tr>
|
|
|
+<tr name="325" id="325">
|
|
|
+<td><a id="l325" class='ln'>325</a></td><td> ((<a id="325c20" class="tk">real_T</a> <a id="325c27" class="tk">*</a>)<a id="325c29" class="tk">ssGetDWork</a>(<a id="325c40" class="tk">S</a>, 2))[0]) <a id="325c51" class="tk">*</a> <a id="325c53" class="tk">rtb_ElementaryMath_o2_tmp</a> <a id="325c79" class="tk">+</a></td></tr>
|
|
|
+<tr name="326" id="326">
|
|
|
+<td><a id="l326" class='ln'>326</a></td><td> (1.7320508075688772 <a id="326c37" class="tk">*</a> ((<a id="326c41" class="tk">real_T</a> <a id="326c48" class="tk">*</a>)<a id="326c50" class="tk">ssGetDWork</a>(<a id="326c61" class="tk">S</a>, 1))[0] <a id="326c71" class="tk">-</a> ((<a id="326c75" class="tk">real_T</a></td></tr>
|
|
|
+<tr name="327" id="327">
|
|
|
+<td><a id="l327" class='ln'>327</a></td><td> <a id="327c5" class="tk">*</a>)<a id="327c7" class="tk">ssGetDWork</a>(<a id="327c18" class="tk">S</a>, 2))[0]) <a id="327c29" class="tk">*</a> <a id="327c31" class="tk">rtb_ElementaryMath_o1_tmp</a>) <a id="327c58" class="tk">*</a> 0.5;</td></tr>
|
|
|
+<tr name="328" id="328">
|
|
|
+<td><a id="l328" class='ln'>328</a></td><td></td></tr>
|
|
|
+<tr name="329" id="329">
|
|
|
+<td><a id="l329" class='ln'>329</a></td><td> <span class="ct">/* S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="330" id="330">
|
|
|
+<td><a id="l330" class='ln'>330</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="331" id="331">
|
|
|
+<td><a id="l331" class='ln'>331</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="332" id="332">
|
|
|
+<td><a id="l332" class='ln'>332</a></td><td></td></tr>
|
|
|
+<tr name="333" id="333">
|
|
|
+<td><a id="l333" class='ln'>333</a></td><td> <span class="ct">/* S-Function block: <S20>/State-Space */</span></td></tr>
|
|
|
+<tr name="334" id="334">
|
|
|
+<td><a id="l334" class='ln'>334</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="335" id="335">
|
|
|
+<td><a id="l335" class='ln'>335</a></td><td> <a id="335c5" class="tk">real_T</a> <a id="335c12" class="tk">accum</a>;</td></tr>
|
|
|
+<tr name="336" id="336">
|
|
|
+<td><a id="l336" class='ln'>336</a></td><td></td></tr>
|
|
|
+<tr name="337" id="337">
|
|
|
+<td><a id="l337" class='ln'>337</a></td><td> <span class="ct">/* Circuit has switches */</span></td></tr>
|
|
|
+<tr name="338" id="338">
|
|
|
+<td><a id="l338" class='ln'>338</a></td><td> <a id="338c5" class="tk">int_T</a> <a id="338c11" class="tk">*</a><a id="338c12" class="tk">switch_status</a> = (<a id="338c29" class="tk">int_T</a><a id="338c34" class="tk">*</a>) ((<span class="kw">void</span><a id="338c43" class="tk">*</a><a id="338c44" class="tk">*</a>) <a id="338c47" class="tk">ssGetDWork</a>(<a id="338c58" class="tk">S</a>, 4))[9];</td></tr>
|
|
|
+<tr name="339" id="339">
|
|
|
+<td><a id="l339" class='ln'>339</a></td><td> <a id="339c5" class="tk">int_T</a> <a id="339c11" class="tk">*</a><a id="339c12" class="tk">switch_status_init</a> = (<a id="339c34" class="tk">int_T</a><a id="339c39" class="tk">*</a>) ((<span class="kw">void</span><a id="339c48" class="tk">*</a><a id="339c49" class="tk">*</a>) <a id="339c52" class="tk">ssGetDWork</a>(<a id="339c63" class="tk">S</a>, 4))[10];</td></tr>
|
|
|
+<tr name="340" id="340">
|
|
|
+<td><a id="l340" class='ln'>340</a></td><td> <a id="340c5" class="tk">int_T</a> <a id="340c11" class="tk">*</a><a id="340c12" class="tk">SwitchChange</a> = (<a id="340c28" class="tk">int_T</a><a id="340c33" class="tk">*</a>) ((<span class="kw">void</span><a id="340c42" class="tk">*</a><a id="340c43" class="tk">*</a>) <a id="340c46" class="tk">ssGetDWork</a>(<a id="340c57" class="tk">S</a>, 4))[11];</td></tr>
|
|
|
+<tr name="341" id="341">
|
|
|
+<td><a id="l341" class='ln'>341</a></td><td> <a id="341c5" class="tk">int_T</a> <a id="341c11" class="tk">*</a><a id="341c12" class="tk">gState</a> = (<a id="341c22" class="tk">int_T</a><a id="341c27" class="tk">*</a>) ((<span class="kw">void</span><a id="341c36" class="tk">*</a><a id="341c37" class="tk">*</a>) <a id="341c40" class="tk">ssGetDWork</a>(<a id="341c51" class="tk">S</a>, 4))[12];</td></tr>
|
|
|
+<tr name="342" id="342">
|
|
|
+<td><a id="l342" class='ln'>342</a></td><td> <a id="342c5" class="tk">real_T</a> <a id="342c12" class="tk">*</a><a id="342c13" class="tk">yswitch</a> = (<a id="342c24" class="tk">real_T</a><a id="342c30" class="tk">*</a>)((<span class="kw">void</span><a id="342c38" class="tk">*</a><a id="342c39" class="tk">*</a>) <a id="342c42" class="tk">ssGetDWork</a>(<a id="342c53" class="tk">S</a>, 4))[19];</td></tr>
|
|
|
+<tr name="343" id="343">
|
|
|
+<td><a id="l343" class='ln'>343</a></td><td> <a id="343c5" class="tk">int_T</a> <a id="343c11" class="tk">*</a><a id="343c12" class="tk">switchTypes</a> = (<a id="343c27" class="tk">int_T</a><a id="343c32" class="tk">*</a>) ((<span class="kw">void</span><a id="343c41" class="tk">*</a><a id="343c42" class="tk">*</a>) <a id="343c45" class="tk">ssGetDWork</a>(<a id="343c56" class="tk">S</a>, 4))[20];</td></tr>
|
|
|
+<tr name="344" id="344">
|
|
|
+<td><a id="l344" class='ln'>344</a></td><td> <a id="344c5" class="tk">int_T</a> <a id="344c11" class="tk">*</a><a id="344c12" class="tk">idxOutSw</a> = (<a id="344c24" class="tk">int_T</a><a id="344c29" class="tk">*</a>) ((<span class="kw">void</span><a id="344c38" class="tk">*</a><a id="344c39" class="tk">*</a>) <a id="344c42" class="tk">ssGetDWork</a>(<a id="344c53" class="tk">S</a>, 4))[21];</td></tr>
|
|
|
+<tr name="345" id="345">
|
|
|
+<td><a id="l345" class='ln'>345</a></td><td> <a id="345c5" class="tk">real_T</a> <a id="345c12" class="tk">*</a><a id="345c13" class="tk">DxCol</a> = (<a id="345c22" class="tk">real_T</a><a id="345c28" class="tk">*</a>)((<span class="kw">void</span><a id="345c36" class="tk">*</a><a id="345c37" class="tk">*</a>) <a id="345c40" class="tk">ssGetDWork</a>(<a id="345c51" class="tk">S</a>, 4))[4];</td></tr>
|
|
|
+<tr name="346" id="346">
|
|
|
+<td><a id="l346" class='ln'>346</a></td><td> <a id="346c5" class="tk">real_T</a> <a id="346c12" class="tk">*</a><a id="346c13" class="tk">tmp2</a> = (<a id="346c21" class="tk">real_T</a><a id="346c27" class="tk">*</a>)((<span class="kw">void</span><a id="346c35" class="tk">*</a><a id="346c36" class="tk">*</a>) <a id="346c39" class="tk">ssGetDWork</a>(<a id="346c50" class="tk">S</a>, 4))[7];</td></tr>
|
|
|
+<tr name="347" id="347">
|
|
|
+<td><a id="l347" class='ln'>347</a></td><td> <a id="347c5" class="tk">real_T</a> <a id="347c12" class="tk">*</a><a id="347c13" class="tk">uswlast</a> = (<a id="347c24" class="tk">real_T</a><a id="347c30" class="tk">*</a>)((<span class="kw">void</span><a id="347c38" class="tk">*</a><a id="347c39" class="tk">*</a>) <a id="347c42" class="tk">ssGetDWork</a>(<a id="347c53" class="tk">S</a>, 4))[13];</td></tr>
|
|
|
+<tr name="348" id="348">
|
|
|
+<td><a id="l348" class='ln'>348</a></td><td> <a id="348c5" class="tk">int_T</a> <a id="348c11" class="tk">newState</a>;</td></tr>
|
|
|
+<tr name="349" id="349">
|
|
|
+<td><a id="l349" class='ln'>349</a></td><td> <a id="349c5" class="tk">int_T</a> <a id="349c11" class="tk">swChanged</a> = 0;</td></tr>
|
|
|
+<tr name="350" id="350">
|
|
|
+<td><a id="l350" class='ln'>350</a></td><td> <span class="kw">int</span> <a id="350c9" class="tk">loopsToDo</a> = 20;</td></tr>
|
|
|
+<tr name="351" id="351">
|
|
|
+<td><a id="l351" class='ln'>351</a></td><td> <a id="351c5" class="tk">real_T</a> <a id="351c12" class="tk">temp</a>;</td></tr>
|
|
|
+<tr name="352" id="352">
|
|
|
+<td><a id="l352" class='ln'>352</a></td><td></td></tr>
|
|
|
+<tr name="353" id="353">
|
|
|
+<td><a id="l353" class='ln'>353</a></td><td> <span class="ct">/* keep an initial copy of switch_status*/</span></td></tr>
|
|
|
+<tr name="354" id="354">
|
|
|
+<td><a id="l354" class='ln'>354</a></td><td> <a id="354c5" class="tk">memcpy</a>(<a id="354c12" class="tk">switch_status_init</a>, <a id="354c32" class="tk">switch_status</a>, 6 <a id="354c49" class="tk">*</a> <span class="kw">sizeof</span>(<a id="354c58" class="tk">int_T</a>));</td></tr>
|
|
|
+<tr name="355" id="355">
|
|
|
+<td><a id="l355" class='ln'>355</a></td><td> <a id="355c5" class="tk">memcpy</a>(<a id="355c12" class="tk">uswlast</a>, <a id="355c21" class="tk">&</a><a id="355c22" class="tk">_rtB</a>-><a id="355c28" class="tk">StateSpace_o1</a>[0], 6<a id="355c47" class="tk">*</a><span class="kw">sizeof</span>(<a id="355c55" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="356" id="356">
|
|
|
+<td><a id="l356" class='ln'>356</a></td><td> <span class="kw">do</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="357" id="357">
|
|
|
+<td><a id="l357" class='ln'>357</a></td><td> <span class="kw">if</span> (<a id="357c11" class="tk">loopsToDo</a> <a id="357c21" class="tk">==</a> 1) <span class="br">{</span> <span class="ct">/* Need to reset some variables: */</span></td></tr>
|
|
|
+<tr name="358" id="358">
|
|
|
+<td><a id="l358" class='ln'>358</a></td><td> <a id="358c9" class="tk">swChanged</a> = 0;</td></tr>
|
|
|
+<tr name="359" id="359">
|
|
|
+<td><a id="l359" class='ln'>359</a></td><td></td></tr>
|
|
|
+<tr name="360" id="360">
|
|
|
+<td><a id="l360" class='ln'>360</a></td><td> <span class="ct">/* return to the original switch status*/</span></td></tr>
|
|
|
+<tr name="361" id="361">
|
|
|
+<td><a id="l361" class='ln'>361</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="362" id="362">
|
|
|
+<td><a id="l362" class='ln'>362</a></td><td> <a id="362c11" class="tk">int_T</a> <a id="362c17" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="363" id="363">
|
|
|
+<td><a id="l363" class='ln'>363</a></td><td> <span class="kw">for</span> (<a id="363c16" class="tk">i1</a>=0; <a id="363c22" class="tk">i1</a> <a id="363c25" class="tk"><</a> 6; <a id="363c30" class="tk">i1</a><a id="363c32" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="364" id="364">
|
|
|
+<td><a id="l364" class='ln'>364</a></td><td> <a id="364c13" class="tk">swChanged</a> = ((<a id="364c27" class="tk">SwitchChange</a>[<a id="364c40" class="tk">i1</a>] = <a id="364c46" class="tk">switch_status_init</a>[<a id="364c65" class="tk">i1</a>] <a id="364c69" class="tk">-</a></td></tr>
|
|
|
+<tr name="365" id="365">
|
|
|
+<td><a id="l365" class='ln'>365</a></td><td> <a id="365c27" class="tk">switch_status</a>[<a id="365c41" class="tk">i1</a>]) <a id="365c46" class="tk">!=</a> 0) <a id="365c52" class="tk">?</a> 1 <a id="365c56" class="tk">:</a> <a id="365c58" class="tk">swChanged</a>;</td></tr>
|
|
|
+<tr name="366" id="366">
|
|
|
+<td><a id="l366" class='ln'>366</a></td><td> <a id="366c13" class="tk">switch_status</a>[<a id="366c27" class="tk">i1</a>] = <a id="366c33" class="tk">switch_status_init</a>[<a id="366c52" class="tk">i1</a>];</td></tr>
|
|
|
+<tr name="367" id="367">
|
|
|
+<td><a id="l367" class='ln'>367</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="368" id="368">
|
|
|
+<td><a id="l368" class='ln'>368</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="369" id="369">
|
|
|
+<td><a id="l369" class='ln'>369</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="370" id="370">
|
|
|
+<td><a id="l370" class='ln'>370</a></td><td> <span class="ct">/*</span></td></tr>
|
|
|
+<tr name="371" id="371">
|
|
|
+<td><a id="l371" class='ln'>371</a></td><td><span class="ct"> * Compute outputs:</span></td></tr>
|
|
|
+<tr name="372" id="372">
|
|
|
+<td><a id="l372" class='ln'>372</a></td><td><span class="ct"> * ---------------</span></td></tr>
|
|
|
+<tr name="373" id="373">
|
|
|
+<td><a id="l373" class='ln'>373</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="374" id="374">
|
|
|
+<td><a id="l374" class='ln'>374</a></td><td> <a id="374c9" class="tk">real_T</a> <a id="374c16" class="tk">*</a><a id="374c17" class="tk">Ds</a> = (<a id="374c23" class="tk">real_T</a><a id="374c29" class="tk">*</a>)((<span class="kw">void</span><a id="374c37" class="tk">*</a><a id="374c38" class="tk">*</a>) <a id="374c41" class="tk">ssGetDWork</a>(<a id="374c52" class="tk">S</a>, 4))[3];</td></tr>
|
|
|
+<tr name="375" id="375">
|
|
|
+<td><a id="l375" class='ln'>375</a></td><td></td></tr>
|
|
|
+<tr name="376" id="376">
|
|
|
+<td><a id="l376" class='ln'>376</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="377" id="377">
|
|
|
+<td><a id="l377" class='ln'>377</a></td><td> <a id="377c11" class="tk">int_T</a> <a id="377c17" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="378" id="378">
|
|
|
+<td><a id="l378" class='ln'>378</a></td><td> <a id="378c11" class="tk">real_T</a> <a id="378c18" class="tk">*</a><a id="378c19" class="tk">y0</a> = <a id="378c24" class="tk">&</a><a id="378c25" class="tk">_rtB</a>-><a id="378c31" class="tk">StateSpace_o1</a>[0];</td></tr>
|
|
|
+<tr name="379" id="379">
|
|
|
+<td><a id="l379" class='ln'>379</a></td><td> <span class="kw">for</span> (<a id="379c16" class="tk">i1</a>=0; <a id="379c22" class="tk">i1</a> <a id="379c25" class="tk"><</a> 9; <a id="379c30" class="tk">i1</a><a id="379c32" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="380" id="380">
|
|
|
+<td><a id="l380" class='ln'>380</a></td><td> <a id="380c13" class="tk">accum</a> = 0.0;</td></tr>
|
|
|
+<tr name="381" id="381">
|
|
|
+<td><a id="l381" class='ln'>381</a></td><td></td></tr>
|
|
|
+<tr name="382" id="382">
|
|
|
+<td><a id="l382" class='ln'>382</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="383" id="383">
|
|
|
+<td><a id="l383" class='ln'>383</a></td><td> <a id="383c15" class="tk">int_T</a> <a id="383c21" class="tk">i2</a>;</td></tr>
|
|
|
+<tr name="384" id="384">
|
|
|
+<td><a id="l384" class='ln'>384</a></td><td> <span class="kw">const</span> <a id="384c21" class="tk">real_T</a> <a id="384c28" class="tk">*</a><a id="384c29" class="tk">u0</a> = <a id="384c34" class="tk">PMSM_Motor_TL3_ConstP</a>.<a id="384c56" class="tk">Constant_Value</a>;</td></tr>
|
|
|
+<tr name="385" id="385">
|
|
|
+<td><a id="l385" class='ln'>385</a></td><td> <span class="kw">for</span> (<a id="385c20" class="tk">i2</a>=0; <a id="385c26" class="tk">i2</a> <a id="385c29" class="tk"><</a> 6; <a id="385c34" class="tk">i2</a><a id="385c36" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="386" id="386">
|
|
|
+<td><a id="l386" class='ln'>386</a></td><td> <a id="386c17" class="tk">accum</a> <a id="386c23" class="tk">+=</a> <a id="386c26" class="tk">*</a>(<a id="386c28" class="tk">Ds</a><a id="386c30" class="tk">++</a>) <a id="386c34" class="tk">*</a> <a id="386c36" class="tk">u0</a>[<a id="386c39" class="tk">i2</a>];</td></tr>
|
|
|
+<tr name="387" id="387">
|
|
|
+<td><a id="l387" class='ln'>387</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="388" id="388">
|
|
|
+<td><a id="l388" class='ln'>388</a></td><td></td></tr>
|
|
|
+<tr name="389" id="389">
|
|
|
+<td><a id="l389" class='ln'>389</a></td><td> <a id="389c15" class="tk">accum</a> <a id="389c21" class="tk">+=</a> <a id="389c24" class="tk">*</a>(<a id="389c26" class="tk">Ds</a><a id="389c28" class="tk">++</a>) <a id="389c32" class="tk">*</a> <a id="389c34" class="tk">_rtB</a>-><a id="389c40" class="tk">Fcn</a>;</td></tr>
|
|
|
+<tr name="390" id="390">
|
|
|
+<td><a id="l390" class='ln'>390</a></td><td> <a id="390c15" class="tk">accum</a> <a id="390c21" class="tk">+=</a> <a id="390c24" class="tk">*</a>(<a id="390c26" class="tk">Ds</a><a id="390c28" class="tk">++</a>) <a id="390c32" class="tk">*</a> <a id="390c34" class="tk">_rtB</a>-><a id="390c40" class="tk">Fcn1</a>;</td></tr>
|
|
|
+<tr name="391" id="391">
|
|
|
+<td><a id="l391" class='ln'>391</a></td><td> <a id="391c15" class="tk">accum</a> <a id="391c21" class="tk">+=</a> <a id="391c24" class="tk">*</a>(<a id="391c26" class="tk">Ds</a><a id="391c28" class="tk">++</a>) <a id="391c32" class="tk">*</a> (<a id="391c35" class="tk">*</a>((<span class="kw">const</span> <a id="391c44" class="tk">real_T</a><a id="391c50" class="tk">*</a><a id="391c51" class="tk">*</a>)<a id="391c53" class="tk">ssGetInputPortSignalPtrs</a>(<a id="391c78" class="tk">S</a>,</td></tr>
|
|
|
+<tr name="392" id="392">
|
|
|
+<td><a id="l392" class='ln'>392</a></td><td> 2)))[0];</td></tr>
|
|
|
+<tr name="393" id="393">
|
|
|
+<td><a id="l393" class='ln'>393</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="394" id="394">
|
|
|
+<td><a id="l394" class='ln'>394</a></td><td></td></tr>
|
|
|
+<tr name="395" id="395">
|
|
|
+<td><a id="l395" class='ln'>395</a></td><td> <a id="395c13" class="tk">y0</a>[<a id="395c16" class="tk">i1</a>] = <a id="395c22" class="tk">accum</a>;</td></tr>
|
|
|
+<tr name="396" id="396">
|
|
|
+<td><a id="l396" class='ln'>396</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="397" id="397">
|
|
|
+<td><a id="l397" class='ln'>397</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="398" id="398">
|
|
|
+<td><a id="l398" class='ln'>398</a></td><td></td></tr>
|
|
|
+<tr name="399" id="399">
|
|
|
+<td><a id="l399" class='ln'>399</a></td><td> <a id="399c9" class="tk">swChanged</a> = 0;</td></tr>
|
|
|
+<tr name="400" id="400">
|
|
|
+<td><a id="l400" class='ln'>400</a></td><td></td></tr>
|
|
|
+<tr name="401" id="401">
|
|
|
+<td><a id="l401" class='ln'>401</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="402" id="402">
|
|
|
+<td><a id="l402" class='ln'>402</a></td><td> <a id="402c11" class="tk">int_T</a> <a id="402c17" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="403" id="403">
|
|
|
+<td><a id="l403" class='ln'>403</a></td><td> <a id="403c11" class="tk">real_T</a> <a id="403c18" class="tk">*</a><a id="403c19" class="tk">y0</a> = <a id="403c24" class="tk">&</a><a id="403c25" class="tk">_rtB</a>-><a id="403c31" class="tk">StateSpace_o1</a>[0];</td></tr>
|
|
|
+<tr name="404" id="404">
|
|
|
+<td><a id="l404" class='ln'>404</a></td><td> <span class="kw">for</span> (<a id="404c16" class="tk">i1</a>=0; <a id="404c22" class="tk">i1</a> <a id="404c25" class="tk"><</a> 6; <a id="404c30" class="tk">i1</a><a id="404c32" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="405" id="405">
|
|
|
+<td><a id="l405" class='ln'>405</a></td><td> <a id="405c13" class="tk">newState</a> = ((<a id="405c26" class="tk">y0</a>[<a id="405c29" class="tk">i1</a>] <a id="405c33" class="tk">></a> 0.0) <a id="405c40" class="tk">&&</a> (<a id="405c44" class="tk">gState</a>[<a id="405c51" class="tk">i1</a>] <a id="405c55" class="tk">></a> 0)) <a id="405c61" class="tk">||</a> (<a id="405c65" class="tk">y0</a>[<a id="405c68" class="tk">i1</a>] <a id="405c72" class="tk"><</a> 0.0) <a id="405c79" class="tk">?</a></td></tr>
|
|
|
+<tr name="406" id="406">
|
|
|
+<td><a id="l406" class='ln'>406</a></td><td> 1 <a id="406c17" class="tk">:</a> (((<a id="406c22" class="tk">y0</a>[<a id="406c25" class="tk">i1</a>] <a id="406c29" class="tk">></a> 0.0) <a id="406c36" class="tk">&&</a> <a id="406c39" class="tk">gState</a>[<a id="406c46" class="tk">i1</a>] <a id="406c50" class="tk">==</a> 0) <a id="406c56" class="tk">?</a> 0 <a id="406c60" class="tk">:</a> <a id="406c62" class="tk">switch_status</a>[<a id="406c76" class="tk">i1</a>]);</td></tr>
|
|
|
+<tr name="407" id="407">
|
|
|
+<td><a id="l407" class='ln'>407</a></td><td> <a id="407c13" class="tk">swChanged</a> = ((<a id="407c27" class="tk">SwitchChange</a>[<a id="407c40" class="tk">i1</a>] = <a id="407c46" class="tk">newState</a> <a id="407c55" class="tk">-</a> <a id="407c57" class="tk">switch_status</a>[<a id="407c71" class="tk">i1</a>]) <a id="407c76" class="tk">!=</a> 0)</td></tr>
|
|
|
+<tr name="408" id="408">
|
|
|
+<td><a id="l408" class='ln'>408</a></td><td> <a id="408c15" class="tk">?</a> 1 <a id="408c19" class="tk">:</a> <a id="408c21" class="tk">swChanged</a>;</td></tr>
|
|
|
+<tr name="409" id="409">
|
|
|
+<td><a id="l409" class='ln'>409</a></td><td> <a id="409c13" class="tk">switch_status</a>[<a id="409c27" class="tk">i1</a>] = <a id="409c33" class="tk">newState</a>;<span class="ct">/* Keep new state */</span></td></tr>
|
|
|
+<tr name="410" id="410">
|
|
|
+<td><a id="l410" class='ln'>410</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="411" id="411">
|
|
|
+<td><a id="l411" class='ln'>411</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="412" id="412">
|
|
|
+<td><a id="l412" class='ln'>412</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="413" id="413">
|
|
|
+<td><a id="l413" class='ln'>413</a></td><td></td></tr>
|
|
|
+<tr name="414" id="414">
|
|
|
+<td><a id="l414" class='ln'>414</a></td><td> <span class="ct">/*</span></td></tr>
|
|
|
+<tr name="415" id="415">
|
|
|
+<td><a id="l415" class='ln'>415</a></td><td><span class="ct"> * Compute new As, Bs, Cs and Ds matrixes:</span></td></tr>
|
|
|
+<tr name="416" id="416">
|
|
|
+<td><a id="l416" class='ln'>416</a></td><td><span class="ct"> * --------------------------------------</span></td></tr>
|
|
|
+<tr name="417" id="417">
|
|
|
+<td><a id="l417" class='ln'>417</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="418" id="418">
|
|
|
+<td><a id="l418" class='ln'>418</a></td><td> <span class="kw">if</span> (<a id="418c11" class="tk">swChanged</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="419" id="419">
|
|
|
+<td><a id="l419" class='ln'>419</a></td><td> <a id="419c9" class="tk">real_T</a> <a id="419c16" class="tk">*</a><a id="419c17" class="tk">Ds</a> = (<a id="419c23" class="tk">real_T</a><a id="419c29" class="tk">*</a>)((<span class="kw">void</span><a id="419c37" class="tk">*</a><a id="419c38" class="tk">*</a>) <a id="419c41" class="tk">ssGetDWork</a>(<a id="419c52" class="tk">S</a>, 4))[3];</td></tr>
|
|
|
+<tr name="420" id="420">
|
|
|
+<td><a id="l420" class='ln'>420</a></td><td> <a id="420c9" class="tk">real_T</a> <a id="420c16" class="tk">a1</a>;</td></tr>
|
|
|
+<tr name="421" id="421">
|
|
|
+<td><a id="l421" class='ln'>421</a></td><td></td></tr>
|
|
|
+<tr name="422" id="422">
|
|
|
+<td><a id="l422" class='ln'>422</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="423" id="423">
|
|
|
+<td><a id="l423" class='ln'>423</a></td><td> <a id="423c11" class="tk">int_T</a> <a id="423c17" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="424" id="424">
|
|
|
+<td><a id="l424" class='ln'>424</a></td><td> <span class="kw">for</span> (<a id="424c16" class="tk">i1</a>=0; <a id="424c22" class="tk">i1</a> <a id="424c25" class="tk"><</a> 6; <a id="424c30" class="tk">i1</a><a id="424c32" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="425" id="425">
|
|
|
+<td><a id="l425" class='ln'>425</a></td><td> <span class="kw">if</span> (<a id="425c17" class="tk">SwitchChange</a>[<a id="425c30" class="tk">i1</a>] <a id="425c34" class="tk">!=</a> 0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="426" id="426">
|
|
|
+<td><a id="l426" class='ln'>426</a></td><td> <a id="426c15" class="tk">a1</a> = 1000.0<a id="426c26" class="tk">*</a><a id="426c27" class="tk">SwitchChange</a>[<a id="426c40" class="tk">i1</a>];</td></tr>
|
|
|
+<tr name="427" id="427">
|
|
|
+<td><a id="l427" class='ln'>427</a></td><td> <a id="427c15" class="tk">temp</a> = 1<a id="427c23" class="tk">/</a>(1<a id="427c26" class="tk">-</a><a id="427c27" class="tk">Ds</a>[<a id="427c30" class="tk">i1</a><a id="427c32" class="tk">*</a>10]<a id="427c36" class="tk">*</a><a id="427c37" class="tk">a1</a>);</td></tr>
|
|
|
+<tr name="428" id="428">
|
|
|
+<td><a id="l428" class='ln'>428</a></td><td></td></tr>
|
|
|
+<tr name="429" id="429">
|
|
|
+<td><a id="l429" class='ln'>429</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="430" id="430">
|
|
|
+<td><a id="l430" class='ln'>430</a></td><td> <a id="430c17" class="tk">int_T</a> <a id="430c23" class="tk">i2</a>;</td></tr>
|
|
|
+<tr name="431" id="431">
|
|
|
+<td><a id="l431" class='ln'>431</a></td><td> <span class="kw">for</span> (<a id="431c22" class="tk">i2</a>=0; <a id="431c28" class="tk">i2</a> <a id="431c31" class="tk"><</a> 9; <a id="431c36" class="tk">i2</a><a id="431c38" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="432" id="432">
|
|
|
+<td><a id="l432" class='ln'>432</a></td><td> <a id="432c19" class="tk">DxCol</a>[<a id="432c25" class="tk">i2</a>]= <a id="432c30" class="tk">Ds</a>[<a id="432c33" class="tk">i2</a> <a id="432c36" class="tk">*</a> 9 <a id="432c40" class="tk">+</a> <a id="432c42" class="tk">i1</a>]<a id="432c45" class="tk">*</a><a id="432c46" class="tk">temp</a><a id="432c50" class="tk">*</a><a id="432c51" class="tk">a1</a>;</td></tr>
|
|
|
+<tr name="433" id="433">
|
|
|
+<td><a id="l433" class='ln'>433</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="434" id="434">
|
|
|
+<td><a id="l434" class='ln'>434</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="435" id="435">
|
|
|
+<td><a id="l435" class='ln'>435</a></td><td></td></tr>
|
|
|
+<tr name="436" id="436">
|
|
|
+<td><a id="l436" class='ln'>436</a></td><td> <a id="436c15" class="tk">DxCol</a>[<a id="436c21" class="tk">i1</a>] = <a id="436c27" class="tk">temp</a>;</td></tr>
|
|
|
+<tr name="437" id="437">
|
|
|
+<td><a id="l437" class='ln'>437</a></td><td></td></tr>
|
|
|
+<tr name="438" id="438">
|
|
|
+<td><a id="l438" class='ln'>438</a></td><td> <span class="ct">/* Copy row nSw of Ds into tmp2 and zero it out in Ds */</span></td></tr>
|
|
|
+<tr name="439" id="439">
|
|
|
+<td><a id="l439" class='ln'>439</a></td><td> <a id="439c15" class="tk">memcpy</a>(<a id="439c22" class="tk">tmp2</a>, <a id="439c28" class="tk">&</a><a id="439c29" class="tk">Ds</a>[<a id="439c32" class="tk">i1</a> <a id="439c35" class="tk">*</a> 9], 9 <a id="439c43" class="tk">*</a> <span class="kw">sizeof</span>(<a id="439c52" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="440" id="440">
|
|
|
+<td><a id="l440" class='ln'>440</a></td><td> <a id="440c15" class="tk">memset</a>(<a id="440c22" class="tk">&</a><a id="440c23" class="tk">Ds</a>[<a id="440c26" class="tk">i1</a> <a id="440c29" class="tk">*</a> 9], '\0', 9 <a id="440c43" class="tk">*</a> <span class="kw">sizeof</span>(<a id="440c52" class="tk">real_T</a>));</td></tr>
|
|
|
+<tr name="441" id="441">
|
|
|
+<td><a id="l441" class='ln'>441</a></td><td></td></tr>
|
|
|
+<tr name="442" id="442">
|
|
|
+<td><a id="l442" class='ln'>442</a></td><td> <span class="ct">/* Cs = Cs + DxCol * tmp1, Ds = Ds + DxCol * tmp2 *******************/</span></td></tr>
|
|
|
+<tr name="443" id="443">
|
|
|
+<td><a id="l443" class='ln'>443</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="444" id="444">
|
|
|
+<td><a id="l444" class='ln'>444</a></td><td> <a id="444c17" class="tk">int_T</a> <a id="444c23" class="tk">i2</a>;</td></tr>
|
|
|
+<tr name="445" id="445">
|
|
|
+<td><a id="l445" class='ln'>445</a></td><td> <span class="kw">for</span> (<a id="445c22" class="tk">i2</a>=0; <a id="445c28" class="tk">i2</a> <a id="445c31" class="tk"><</a> 9; <a id="445c36" class="tk">i2</a><a id="445c38" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="446" id="446">
|
|
|
+<td><a id="l446" class='ln'>446</a></td><td> <a id="446c19" class="tk">a1</a> = <a id="446c24" class="tk">DxCol</a>[<a id="446c30" class="tk">i2</a>];</td></tr>
|
|
|
+<tr name="447" id="447">
|
|
|
+<td><a id="l447" class='ln'>447</a></td><td></td></tr>
|
|
|
+<tr name="448" id="448">
|
|
|
+<td><a id="l448" class='ln'>448</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="449" id="449">
|
|
|
+<td><a id="l449" class='ln'>449</a></td><td> <a id="449c21" class="tk">int_T</a> <a id="449c27" class="tk">i3</a>;</td></tr>
|
|
|
+<tr name="450" id="450">
|
|
|
+<td><a id="l450" class='ln'>450</a></td><td> <span class="kw">for</span> (<a id="450c26" class="tk">i3</a>=0; <a id="450c32" class="tk">i3</a> <a id="450c35" class="tk"><</a> 9; <a id="450c40" class="tk">i3</a><a id="450c42" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="451" id="451">
|
|
|
+<td><a id="l451" class='ln'>451</a></td><td> <a id="451c23" class="tk">Ds</a>[<a id="451c26" class="tk">i2</a> <a id="451c29" class="tk">*</a> 9 <a id="451c33" class="tk">+</a> <a id="451c35" class="tk">i3</a>] <a id="451c39" class="tk">+=</a> <a id="451c42" class="tk">a1</a> <a id="451c45" class="tk">*</a> <a id="451c47" class="tk">tmp2</a>[<a id="451c52" class="tk">i3</a>];</td></tr>
|
|
|
+<tr name="452" id="452">
|
|
|
+<td><a id="l452" class='ln'>452</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="453" id="453">
|
|
|
+<td><a id="l453" class='ln'>453</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="454" id="454">
|
|
|
+<td><a id="l454" class='ln'>454</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="455" id="455">
|
|
|
+<td><a id="l455" class='ln'>455</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="456" id="456">
|
|
|
+<td><a id="l456" class='ln'>456</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="457" id="457">
|
|
|
+<td><a id="l457" class='ln'>457</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="458" id="458">
|
|
|
+<td><a id="l458" class='ln'>458</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="459" id="459">
|
|
|
+<td><a id="l459" class='ln'>459</a></td><td> <span class="br">}</span> <span class="ct">/* if (swChanged) */</span></td></tr>
|
|
|
+<tr name="460" id="460">
|
|
|
+<td><a id="l460" class='ln'>460</a></td><td> <span class="br">}</span> <span class="kw">while</span> (<a id="460c14" class="tk">swChanged</a> <a id="460c24" class="tk">></a> 0 <a id="460c28" class="tk">&&</a> <a id="460c31" class="tk">--</a><a id="460c33" class="tk">loopsToDo</a> <a id="460c43" class="tk">></a> 0);</td></tr>
|
|
|
+<tr name="461" id="461">
|
|
|
+<td><a id="l461" class='ln'>461</a></td><td></td></tr>
|
|
|
+<tr name="462" id="462">
|
|
|
+<td><a id="l462" class='ln'>462</a></td><td> <span class="kw">if</span> (<a id="462c9" class="tk">loopsToDo</a> <a id="462c19" class="tk">==</a> 0) <span class="br">{</span></td></tr>
|
|
|
+<tr name="463" id="463">
|
|
|
+<td><a id="l463" class='ln'>463</a></td><td> <a id="463c7" class="tk">real_T</a> <a id="463c14" class="tk">*</a><a id="463c15" class="tk">Ds</a> = (<a id="463c21" class="tk">real_T</a><a id="463c27" class="tk">*</a>)((<span class="kw">void</span><a id="463c35" class="tk">*</a><a id="463c36" class="tk">*</a>) <a id="463c39" class="tk">ssGetDWork</a>(<a id="463c50" class="tk">S</a>, 4))[3];</td></tr>
|
|
|
+<tr name="464" id="464">
|
|
|
+<td><a id="l464" class='ln'>464</a></td><td></td></tr>
|
|
|
+<tr name="465" id="465">
|
|
|
+<td><a id="l465" class='ln'>465</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="466" id="466">
|
|
|
+<td><a id="l466" class='ln'>466</a></td><td> <a id="466c9" class="tk">int_T</a> <a id="466c15" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="467" id="467">
|
|
|
+<td><a id="l467" class='ln'>467</a></td><td> <a id="467c9" class="tk">real_T</a> <a id="467c16" class="tk">*</a><a id="467c17" class="tk">y0</a> = <a id="467c22" class="tk">&</a><a id="467c23" class="tk">_rtB</a>-><a id="467c29" class="tk">StateSpace_o1</a>[0];</td></tr>
|
|
|
+<tr name="468" id="468">
|
|
|
+<td><a id="l468" class='ln'>468</a></td><td> <span class="kw">for</span> (<a id="468c14" class="tk">i1</a>=0; <a id="468c20" class="tk">i1</a> <a id="468c23" class="tk"><</a> 9; <a id="468c28" class="tk">i1</a><a id="468c30" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="469" id="469">
|
|
|
+<td><a id="l469" class='ln'>469</a></td><td> <a id="469c11" class="tk">accum</a> = 0.0;</td></tr>
|
|
|
+<tr name="470" id="470">
|
|
|
+<td><a id="l470" class='ln'>470</a></td><td></td></tr>
|
|
|
+<tr name="471" id="471">
|
|
|
+<td><a id="l471" class='ln'>471</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="472" id="472">
|
|
|
+<td><a id="l472" class='ln'>472</a></td><td> <a id="472c13" class="tk">int_T</a> <a id="472c19" class="tk">i2</a>;</td></tr>
|
|
|
+<tr name="473" id="473">
|
|
|
+<td><a id="l473" class='ln'>473</a></td><td> <span class="kw">const</span> <a id="473c19" class="tk">real_T</a> <a id="473c26" class="tk">*</a><a id="473c27" class="tk">u0</a> = <a id="473c32" class="tk">PMSM_Motor_TL3_ConstP</a>.<a id="473c54" class="tk">Constant_Value</a>;</td></tr>
|
|
|
+<tr name="474" id="474">
|
|
|
+<td><a id="l474" class='ln'>474</a></td><td> <span class="kw">for</span> (<a id="474c18" class="tk">i2</a>=0; <a id="474c24" class="tk">i2</a> <a id="474c27" class="tk"><</a> 6; <a id="474c32" class="tk">i2</a><a id="474c34" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="475" id="475">
|
|
|
+<td><a id="l475" class='ln'>475</a></td><td> <a id="475c15" class="tk">accum</a> <a id="475c21" class="tk">+=</a> <a id="475c24" class="tk">*</a>(<a id="475c26" class="tk">Ds</a><a id="475c28" class="tk">++</a>) <a id="475c32" class="tk">*</a> <a id="475c34" class="tk">u0</a>[<a id="475c37" class="tk">i2</a>];</td></tr>
|
|
|
+<tr name="476" id="476">
|
|
|
+<td><a id="l476" class='ln'>476</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="477" id="477">
|
|
|
+<td><a id="l477" class='ln'>477</a></td><td></td></tr>
|
|
|
+<tr name="478" id="478">
|
|
|
+<td><a id="l478" class='ln'>478</a></td><td> <a id="478c13" class="tk">accum</a> <a id="478c19" class="tk">+=</a> <a id="478c22" class="tk">*</a>(<a id="478c24" class="tk">Ds</a><a id="478c26" class="tk">++</a>) <a id="478c30" class="tk">*</a> <a id="478c32" class="tk">_rtB</a>-><a id="478c38" class="tk">Fcn</a>;</td></tr>
|
|
|
+<tr name="479" id="479">
|
|
|
+<td><a id="l479" class='ln'>479</a></td><td> <a id="479c13" class="tk">accum</a> <a id="479c19" class="tk">+=</a> <a id="479c22" class="tk">*</a>(<a id="479c24" class="tk">Ds</a><a id="479c26" class="tk">++</a>) <a id="479c30" class="tk">*</a> <a id="479c32" class="tk">_rtB</a>-><a id="479c38" class="tk">Fcn1</a>;</td></tr>
|
|
|
+<tr name="480" id="480">
|
|
|
+<td><a id="l480" class='ln'>480</a></td><td> <a id="480c13" class="tk">accum</a> <a id="480c19" class="tk">+=</a> <a id="480c22" class="tk">*</a>(<a id="480c24" class="tk">Ds</a><a id="480c26" class="tk">++</a>) <a id="480c30" class="tk">*</a> (<a id="480c33" class="tk">*</a>((<span class="kw">const</span> <a id="480c42" class="tk">real_T</a><a id="480c48" class="tk">*</a><a id="480c49" class="tk">*</a>)<a id="480c51" class="tk">ssGetInputPortSignalPtrs</a>(<a id="480c76" class="tk">S</a>, 2)))</td></tr>
|
|
|
+<tr name="481" id="481">
|
|
|
+<td><a id="l481" class='ln'>481</a></td><td> [0];</td></tr>
|
|
|
+<tr name="482" id="482">
|
|
|
+<td><a id="l482" class='ln'>482</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="483" id="483">
|
|
|
+<td><a id="l483" class='ln'>483</a></td><td></td></tr>
|
|
|
+<tr name="484" id="484">
|
|
|
+<td><a id="l484" class='ln'>484</a></td><td> <a id="484c11" class="tk">y0</a>[<a id="484c14" class="tk">i1</a>] = <a id="484c20" class="tk">accum</a>;</td></tr>
|
|
|
+<tr name="485" id="485">
|
|
|
+<td><a id="l485" class='ln'>485</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="486" id="486">
|
|
|
+<td><a id="l486" class='ln'>486</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="487" id="487">
|
|
|
+<td><a id="l487" class='ln'>487</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="488" id="488">
|
|
|
+<td><a id="l488" class='ln'>488</a></td><td></td></tr>
|
|
|
+<tr name="489" id="489">
|
|
|
+<td><a id="l489" class='ln'>489</a></td><td> <span class="ct">/* Output new switches states */</span></td></tr>
|
|
|
+<tr name="490" id="490">
|
|
|
+<td><a id="l490" class='ln'>490</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="491" id="491">
|
|
|
+<td><a id="l491" class='ln'>491</a></td><td> <a id="491c7" class="tk">int_T</a> <a id="491c13" class="tk">i1</a>;</td></tr>
|
|
|
+<tr name="492" id="492">
|
|
|
+<td><a id="l492" class='ln'>492</a></td><td> <a id="492c7" class="tk">real_T</a> <a id="492c14" class="tk">*</a><a id="492c15" class="tk">y1</a> = <a id="492c20" class="tk">&</a><a id="492c21" class="tk">_rtB</a>-><a id="492c27" class="tk">StateSpace_o2</a>[0];</td></tr>
|
|
|
+<tr name="493" id="493">
|
|
|
+<td><a id="l493" class='ln'>493</a></td><td> <span class="kw">for</span> (<a id="493c12" class="tk">i1</a>=0; <a id="493c18" class="tk">i1</a> <a id="493c21" class="tk"><</a> 6; <a id="493c26" class="tk">i1</a><a id="493c28" class="tk">++</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="494" id="494">
|
|
|
+<td><a id="l494" class='ln'>494</a></td><td> <a id="494c9" class="tk">y1</a>[<a id="494c12" class="tk">i1</a>] = (<a id="494c19" class="tk">real_T</a>)<a id="494c26" class="tk">switch_status</a>[<a id="494c40" class="tk">i1</a>];</td></tr>
|
|
|
+<tr name="495" id="495">
|
|
|
+<td><a id="l495" class='ln'>495</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="496" id="496">
|
|
|
+<td><a id="l496" class='ln'>496</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="497" id="497">
|
|
|
+<td><a id="l497" class='ln'>497</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="498" id="498">
|
|
|
+<td><a id="l498" class='ln'>498</a></td><td></td></tr>
|
|
|
+<tr name="499" id="499">
|
|
|
+<td><a id="l499" class='ln'>499</a></td><td> <span class="ct">/* Fcn: '<S13>/Fcn3' incorporates:</span></td></tr>
|
|
|
+<tr name="500" id="500">
|
|
|
+<td><a id="l500" class='ln'>500</a></td><td><span class="ct"> * Fcn: '<S13>/Fcn2'</span></td></tr>
|
|
|
+<tr name="501" id="501">
|
|
|
+<td><a id="l501" class='ln'>501</a></td><td><span class="ct"> * Trigonometry: '<S13>/Elementary Math'</span></td></tr>
|
|
|
+<tr name="502" id="502">
|
|
|
+<td><a id="l502" class='ln'>502</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="503" id="503">
|
|
|
+<td><a id="l503" class='ln'>503</a></td><td> <a id="503c3" class="tk">rtb_DataTypeConversion2</a> = 2.0 <a id="503c33" class="tk">*</a> <a id="503c35" class="tk">_rtB</a>-><a id="503c41" class="tk">StateSpace_o1</a>[6] <a id="503c58" class="tk">+</a> <a id="503c60" class="tk">_rtB</a>-><a id="503c66" class="tk">StateSpace_o1</a>[7];</td></tr>
|
|
|
+<tr name="504" id="504">
|
|
|
+<td><a id="l504" class='ln'>504</a></td><td> <a id="504c3" class="tk">rtb_DataTypeConversion1</a> = (<a id="504c30" class="tk">rtb_DataTypeConversion2</a> <a id="504c54" class="tk">*</a> <a id="504c56" class="tk">rtb_ElementaryMath_o1_tmp</a></td></tr>
|
|
|
+<tr name="505" id="505">
|
|
|
+<td><a id="l505" class='ln'>505</a></td><td> <a id="505c5" class="tk">+</a> <a id="505c7" class="tk">-</a>1.7320508075688772 <a id="505c27" class="tk">*</a> <a id="505c29" class="tk">_rtB</a>-><a id="505c35" class="tk">StateSpace_o1</a>[7] <a id="505c52" class="tk">*</a> <a id="505c54" class="tk">rtb_ElementaryMath_o2_tmp</a>) <a id="505c81" class="tk">*</a></td></tr>
|
|
|
+<tr name="506" id="506">
|
|
|
+<td><a id="l506" class='ln'>506</a></td><td> 0.33333333333333331;</td></tr>
|
|
|
+<tr name="507" id="507">
|
|
|
+<td><a id="l507" class='ln'>507</a></td><td></td></tr>
|
|
|
+<tr name="508" id="508">
|
|
|
+<td><a id="l508" class='ln'>508</a></td><td> <span class="ct">/* Fcn: '<S13>/Fcn2' incorporates:</span></td></tr>
|
|
|
+<tr name="509" id="509">
|
|
|
+<td><a id="l509" class='ln'>509</a></td><td><span class="ct"> * Trigonometry: '<S13>/Elementary Math'</span></td></tr>
|
|
|
+<tr name="510" id="510">
|
|
|
+<td><a id="l510" class='ln'>510</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="511" id="511">
|
|
|
+<td><a id="l511" class='ln'>511</a></td><td> <a id="511c3" class="tk">rtb_DataTypeConversion2</a> = (<a id="511c30" class="tk">rtb_DataTypeConversion2</a> <a id="511c54" class="tk">*</a> <a id="511c56" class="tk">rtb_ElementaryMath_o2_tmp</a></td></tr>
|
|
|
+<tr name="512" id="512">
|
|
|
+<td><a id="l512" class='ln'>512</a></td><td> <a id="512c5" class="tk">+</a> 1.7320508075688772 <a id="512c26" class="tk">*</a> <a id="512c28" class="tk">_rtB</a>-><a id="512c34" class="tk">StateSpace_o1</a>[7] <a id="512c51" class="tk">*</a> <a id="512c53" class="tk">rtb_ElementaryMath_o1_tmp</a>) <a id="512c80" class="tk">*</a></td></tr>
|
|
|
+<tr name="513" id="513">
|
|
|
+<td><a id="l513" class='ln'>513</a></td><td> 0.33333333333333331;</td></tr>
|
|
|
+<tr name="514" id="514">
|
|
|
+<td><a id="l514" class='ln'>514</a></td><td></td></tr>
|
|
|
+<tr name="515" id="515">
|
|
|
+<td><a id="l515" class='ln'>515</a></td><td> <span class="ct">/* Outport: '<Root>/Stator voltage Vs_q (V)' */</span></td></tr>
|
|
|
+<tr name="516" id="516">
|
|
|
+<td><a id="l516" class='ln'>516</a></td><td> ((<a id="516c5" class="tk">real_T</a> <a id="516c12" class="tk">*</a>)<a id="516c14" class="tk">ssGetOutputPortSignal</a>(<a id="516c36" class="tk">S</a>, 5))[0] = <a id="516c48" class="tk">rtb_DataTypeConversion2</a>;</td></tr>
|
|
|
+<tr name="517" id="517">
|
|
|
+<td><a id="l517" class='ln'>517</a></td><td></td></tr>
|
|
|
+<tr name="518" id="518">
|
|
|
+<td><a id="l518" class='ln'>518</a></td><td> <span class="ct">/* Gain: '<S11>/Gain' */</span></td></tr>
|
|
|
+<tr name="519" id="519">
|
|
|
+<td><a id="l519" class='ln'>519</a></td><td> <a id="519c3" class="tk">_rtB</a>-><a id="519c9" class="tk">Gain</a> = 4.0 <a id="519c20" class="tk">*</a> <a id="519c22" class="tk">*</a>((<span class="kw">const</span> <a id="519c31" class="tk">real_T</a> <a id="519c38" class="tk">*</a><a id="519c39" class="tk">*</a>)<a id="519c41" class="tk">ssGetInputPortSignalPtrs</a>(<a id="519c66" class="tk">S</a>, 1))[0];</td></tr>
|
|
|
+<tr name="520" id="520">
|
|
|
+<td><a id="l520" class='ln'>520</a></td><td></td></tr>
|
|
|
+<tr name="521" id="521">
|
|
|
+<td><a id="l521" class='ln'>521</a></td><td> <span class="ct">/* Sum: '<S18>/Sum1' incorporates:</span></td></tr>
|
|
|
+<tr name="522" id="522">
|
|
|
+<td><a id="l522" class='ln'>522</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="523" id="523">
|
|
|
+<td><a id="l523" class='ln'>523</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="524" id="524">
|
|
|
+<td><a id="l524" class='ln'>524</a></td><td><span class="ct"> * Gain: '<S18>/1//Lq'</span></td></tr>
|
|
|
+<tr name="525" id="525">
|
|
|
+<td><a id="l525" class='ln'>525</a></td><td><span class="ct"> * Gain: '<S18>/R//Lq'</span></td></tr>
|
|
|
+<tr name="526" id="526">
|
|
|
+<td><a id="l526" class='ln'>526</a></td><td><span class="ct"> * Gain: '<S18>/lam//Lq'</span></td></tr>
|
|
|
+<tr name="527" id="527">
|
|
|
+<td><a id="l527" class='ln'>527</a></td><td><span class="ct"> * Product: '<S18>/Product1'</span></td></tr>
|
|
|
+<tr name="528" id="528">
|
|
|
+<td><a id="l528" class='ln'>528</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="529" id="529">
|
|
|
+<td><a id="l529" class='ln'>529</a></td><td> <a id="529c3" class="tk">_rtB</a>-><a id="529c9" class="tk">Sum1</a> = ((5617.9775280898875 <a id="529c37" class="tk">*</a> <a id="529c39" class="tk">rtb_DataTypeConversion2</a> <a id="529c63" class="tk">-</a></td></tr>
|
|
|
+<tr name="530" id="530">
|
|
|
+<td><a id="l530" class='ln'>530</a></td><td> 61.797752808988761 <a id="530c37" class="tk">*</a> ((<a id="530c41" class="tk">real_T</a> <a id="530c48" class="tk">*</a>)<a id="530c50" class="tk">ssGetDWork</a>(<a id="530c61" class="tk">S</a>, 1))[0]) <a id="530c72" class="tk">-</a></td></tr>
|
|
|
+<tr name="531" id="531">
|
|
|
+<td><a id="l531" class='ln'>531</a></td><td> ((<a id="531c19" class="tk">real_T</a> <a id="531c26" class="tk">*</a>)<a id="531c28" class="tk">ssGetDWork</a>(<a id="531c39" class="tk">S</a>, 2))[0] <a id="531c49" class="tk">*</a> <a id="531c51" class="tk">_rtB</a>-><a id="531c57" class="tk">Gain</a>) <a id="531c63" class="tk">-</a></td></tr>
|
|
|
+<tr name="532" id="532">
|
|
|
+<td><a id="l532" class='ln'>532</a></td><td> 67.415730337078656 <a id="532c24" class="tk">*</a> <a id="532c26" class="tk">_rtB</a>-><a id="532c32" class="tk">Gain</a>;</td></tr>
|
|
|
+<tr name="533" id="533">
|
|
|
+<td><a id="l533" class='ln'>533</a></td><td></td></tr>
|
|
|
+<tr name="534" id="534">
|
|
|
+<td><a id="l534" class='ln'>534</a></td><td> <span class="ct">/* Sum: '<S17>/Sum' incorporates:</span></td></tr>
|
|
|
+<tr name="535" id="535">
|
|
|
+<td><a id="l535" class='ln'>535</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="536" id="536">
|
|
|
+<td><a id="l536" class='ln'>536</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="537" id="537">
|
|
|
+<td><a id="l537" class='ln'>537</a></td><td><span class="ct"> * Gain: '<S17>/1//Ld'</span></td></tr>
|
|
|
+<tr name="538" id="538">
|
|
|
+<td><a id="l538" class='ln'>538</a></td><td><span class="ct"> * Gain: '<S17>/R//Ld'</span></td></tr>
|
|
|
+<tr name="539" id="539">
|
|
|
+<td><a id="l539" class='ln'>539</a></td><td><span class="ct"> * Product: '<S17>/Product'</span></td></tr>
|
|
|
+<tr name="540" id="540">
|
|
|
+<td><a id="l540" class='ln'>540</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="541" id="541">
|
|
|
+<td><a id="l541" class='ln'>541</a></td><td> <a id="541c3" class="tk">_rtB</a>-><a id="541c9" class="tk">Sum</a> = (5617.9775280898875 <a id="541c35" class="tk">*</a> <a id="541c37" class="tk">rtb_DataTypeConversion1</a> <a id="541c61" class="tk">-</a> 61.797752808988761</td></tr>
|
|
|
+<tr name="542" id="542">
|
|
|
+<td><a id="l542" class='ln'>542</a></td><td> <a id="542c16" class="tk">*</a> ((<a id="542c20" class="tk">real_T</a> <a id="542c27" class="tk">*</a>)<a id="542c29" class="tk">ssGetDWork</a>(<a id="542c40" class="tk">S</a>, 2))[0]) <a id="542c51" class="tk">+</a> <a id="542c53" class="tk">_rtB</a>-><a id="542c59" class="tk">Gain</a> <a id="542c64" class="tk">*</a> ((<a id="542c68" class="tk">real_T</a> <a id="542c75" class="tk">*</a>)</td></tr>
|
|
|
+<tr name="543" id="543">
|
|
|
+<td><a id="l543" class='ln'>543</a></td><td> <a id="543c5" class="tk">ssGetDWork</a>(<a id="543c16" class="tk">S</a>, 1))[0];</td></tr>
|
|
|
+<tr name="544" id="544">
|
|
|
+<td><a id="l544" class='ln'>544</a></td><td></td></tr>
|
|
|
+<tr name="545" id="545">
|
|
|
+<td><a id="l545" class='ln'>545</a></td><td> <span class="ct">/* Outport: '<Root>/Stator voltage Vs_d (V)' */</span></td></tr>
|
|
|
+<tr name="546" id="546">
|
|
|
+<td><a id="l546" class='ln'>546</a></td><td> ((<a id="546c5" class="tk">real_T</a> <a id="546c12" class="tk">*</a>)<a id="546c14" class="tk">ssGetOutputPortSignal</a>(<a id="546c36" class="tk">S</a>, 6))[0] = <a id="546c48" class="tk">rtb_DataTypeConversion1</a>;</td></tr>
|
|
|
+<tr name="547" id="547">
|
|
|
+<td><a id="l547" class='ln'>547</a></td><td></td></tr>
|
|
|
+<tr name="548" id="548">
|
|
|
+<td><a id="l548" class='ln'>548</a></td><td> <span class="ct">/* Sum: '<S4>/Add1' incorporates:</span></td></tr>
|
|
|
+<tr name="549" id="549">
|
|
|
+<td><a id="l549" class='ln'>549</a></td><td><span class="ct"> * Constant: '<S4>/Filter_Constant'</span></td></tr>
|
|
|
+<tr name="550" id="550">
|
|
|
+<td><a id="l550" class='ln'>550</a></td><td><span class="ct"> * Constant: '<S4>/One'</span></td></tr>
|
|
|
+<tr name="551" id="551">
|
|
|
+<td><a id="l551" class='ln'>551</a></td><td><span class="ct"> * Product: '<S4>/Product'</span></td></tr>
|
|
|
+<tr name="552" id="552">
|
|
|
+<td><a id="l552" class='ln'>552</a></td><td><span class="ct"> * Product: '<S4>/Product1'</span></td></tr>
|
|
|
+<tr name="553" id="553">
|
|
|
+<td><a id="l553" class='ln'>553</a></td><td><span class="ct"> * UnitDelay: '<S4>/Unit Delay'</span></td></tr>
|
|
|
+<tr name="554" id="554">
|
|
|
+<td><a id="l554" class='ln'>554</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="555" id="555">
|
|
|
+<td><a id="l555" class='ln'>555</a></td><td> <a id="555c3" class="tk">_rtB</a>-><a id="555c9" class="tk">Add1</a> = <a id="555c16" class="tk">_rtB</a>-><a id="555c22" class="tk">StateSpace_o1</a>[8] <a id="555c39" class="tk">*</a> 0.001 <a id="555c47" class="tk">+</a> 0.999 <a id="555c55" class="tk">*</a> ((<a id="555c59" class="tk">real_T</a> <a id="555c66" class="tk">*</a>)<a id="555c68" class="tk">ssGetDWork</a>(<a id="555c79" class="tk">S</a>,</td></tr>
|
|
|
+<tr name="556" id="556">
|
|
|
+<td><a id="l556" class='ln'>556</a></td><td> 3))[0];</td></tr>
|
|
|
+<tr name="557" id="557">
|
|
|
+<td><a id="l557" class='ln'>557</a></td><td></td></tr>
|
|
|
+<tr name="558" id="558">
|
|
|
+<td><a id="l558" class='ln'>558</a></td><td> <span class="ct">/* Outport: '<Root>/Stator current is_b (A)' */</span></td></tr>
|
|
|
+<tr name="559" id="559">
|
|
|
+<td><a id="l559" class='ln'>559</a></td><td> ((<a id="559c5" class="tk">real_T</a> <a id="559c12" class="tk">*</a>)<a id="559c14" class="tk">ssGetOutputPortSignal</a>(<a id="559c36" class="tk">S</a>, 1))[0] = <a id="559c48" class="tk">_rtB</a>-><a id="559c54" class="tk">Fcn1</a>;</td></tr>
|
|
|
+<tr name="560" id="560">
|
|
|
+<td><a id="l560" class='ln'>560</a></td><td></td></tr>
|
|
|
+<tr name="561" id="561">
|
|
|
+<td><a id="l561" class='ln'>561</a></td><td> <span class="ct">/* Outport: '<Root>/Stator current is_c (A)' incorporates:</span></td></tr>
|
|
|
+<tr name="562" id="562">
|
|
|
+<td><a id="l562" class='ln'>562</a></td><td><span class="ct"> * Sum: '<S15>/Sum'</span></td></tr>
|
|
|
+<tr name="563" id="563">
|
|
|
+<td><a id="l563" class='ln'>563</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="564" id="564">
|
|
|
+<td><a id="l564" class='ln'>564</a></td><td> ((<a id="564c5" class="tk">real_T</a> <a id="564c12" class="tk">*</a>)<a id="564c14" class="tk">ssGetOutputPortSignal</a>(<a id="564c36" class="tk">S</a>, 2))[0] = (0.0 <a id="564c53" class="tk">-</a> <a id="564c55" class="tk">_rtB</a>-><a id="564c61" class="tk">Fcn1</a>) <a id="564c67" class="tk">-</a> <a id="564c69" class="tk">_rtB</a>-><a id="564c75" class="tk">Fcn</a>;</td></tr>
|
|
|
+<tr name="565" id="565">
|
|
|
+<td><a id="l565" class='ln'>565</a></td><td></td></tr>
|
|
|
+<tr name="566" id="566">
|
|
|
+<td><a id="l566" class='ln'>566</a></td><td> <span class="ct">/* Outport: '<Root>/Stator current is_a (A)' */</span></td></tr>
|
|
|
+<tr name="567" id="567">
|
|
|
+<td><a id="l567" class='ln'>567</a></td><td> ((<a id="567c5" class="tk">real_T</a> <a id="567c12" class="tk">*</a>)<a id="567c14" class="tk">ssGetOutputPortSignal</a>(<a id="567c36" class="tk">S</a>, 0))[0] = <a id="567c48" class="tk">_rtB</a>-><a id="567c54" class="tk">Fcn</a>;</td></tr>
|
|
|
+<tr name="568" id="568">
|
|
|
+<td><a id="l568" class='ln'>568</a></td><td></td></tr>
|
|
|
+<tr name="569" id="569">
|
|
|
+<td><a id="l569" class='ln'>569</a></td><td> <span class="ct">/* Outport: '<Root>/Stator current is_d (A)' incorporates:</span></td></tr>
|
|
|
+<tr name="570" id="570">
|
|
|
+<td><a id="l570" class='ln'>570</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="571" id="571">
|
|
|
+<td><a id="l571" class='ln'>571</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="572" id="572">
|
|
|
+<td><a id="l572" class='ln'>572</a></td><td> ((<a id="572c5" class="tk">real_T</a> <a id="572c12" class="tk">*</a>)<a id="572c14" class="tk">ssGetOutputPortSignal</a>(<a id="572c36" class="tk">S</a>, 4))[0] = ((<a id="572c50" class="tk">real_T</a> <a id="572c57" class="tk">*</a>)<a id="572c59" class="tk">ssGetDWork</a>(<a id="572c70" class="tk">S</a>, 2))[0];</td></tr>
|
|
|
+<tr name="573" id="573">
|
|
|
+<td><a id="l573" class='ln'>573</a></td><td></td></tr>
|
|
|
+<tr name="574" id="574">
|
|
|
+<td><a id="l574" class='ln'>574</a></td><td> <span class="ct">/* Outport: '<Root>/Electromagnetic torque Te (N*m)' incorporates:</span></td></tr>
|
|
|
+<tr name="575" id="575">
|
|
|
+<td><a id="l575" class='ln'>575</a></td><td><span class="ct"> * DiscreteIntegrator: '<S17>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="576" id="576">
|
|
|
+<td><a id="l576" class='ln'>576</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="577" id="577">
|
|
|
+<td><a id="l577" class='ln'>577</a></td><td><span class="ct"> * Fcn: '<S9>/Te '</span></td></tr>
|
|
|
+<tr name="578" id="578">
|
|
|
+<td><a id="l578" class='ln'>578</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="579" id="579">
|
|
|
+<td><a id="l579" class='ln'>579</a></td><td> ((<a id="579c5" class="tk">real_T</a> <a id="579c12" class="tk">*</a>)<a id="579c14" class="tk">ssGetOutputPortSignal</a>(<a id="579c36" class="tk">S</a>, 12))[0] = (0.0 <a id="579c54" class="tk">*</a> ((<a id="579c58" class="tk">real_T</a> <a id="579c65" class="tk">*</a>)<a id="579c67" class="tk">ssGetDWork</a>(<a id="579c78" class="tk">S</a>,</td></tr>
|
|
|
+<tr name="580" id="580">
|
|
|
+<td><a id="l580" class='ln'>580</a></td><td> 1))[0] <a id="580c12" class="tk">*</a> ((<a id="580c16" class="tk">real_T</a> <a id="580c23" class="tk">*</a>)<a id="580c25" class="tk">ssGetDWork</a>(<a id="580c36" class="tk">S</a>, 2))[0] <a id="580c46" class="tk">+</a> 0.012 <a id="580c54" class="tk">*</a> ((<a id="580c58" class="tk">real_T</a> <a id="580c65" class="tk">*</a>)<a id="580c67" class="tk">ssGetDWork</a>(<a id="580c78" class="tk">S</a>,</td></tr>
|
|
|
+<tr name="581" id="581">
|
|
|
+<td><a id="l581" class='ln'>581</a></td><td> 1))[0]) <a id="581c13" class="tk">*</a> 6.0;</td></tr>
|
|
|
+<tr name="582" id="582">
|
|
|
+<td><a id="l582" class='ln'>582</a></td><td></td></tr>
|
|
|
+<tr name="583" id="583">
|
|
|
+<td><a id="l583" class='ln'>583</a></td><td> <span class="ct">/* Outport: '<Root>/Stator current is_q (A)' incorporates:</span></td></tr>
|
|
|
+<tr name="584" id="584">
|
|
|
+<td><a id="l584" class='ln'>584</a></td><td><span class="ct"> * DiscreteIntegrator: '<S18>/Discrete-Time Integrator'</span></td></tr>
|
|
|
+<tr name="585" id="585">
|
|
|
+<td><a id="l585" class='ln'>585</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="586" id="586">
|
|
|
+<td><a id="l586" class='ln'>586</a></td><td> ((<a id="586c5" class="tk">real_T</a> <a id="586c12" class="tk">*</a>)<a id="586c14" class="tk">ssGetOutputPortSignal</a>(<a id="586c36" class="tk">S</a>, 3))[0] = ((<a id="586c50" class="tk">real_T</a> <a id="586c57" class="tk">*</a>)<a id="586c59" class="tk">ssGetDWork</a>(<a id="586c70" class="tk">S</a>, 1))[0];</td></tr>
|
|
|
+<tr name="587" id="587">
|
|
|
+<td><a id="l587" class='ln'>587</a></td><td></td></tr>
|
|
|
+<tr name="588" id="588">
|
|
|
+<td><a id="l588" class='ln'>588</a></td><td> <span class="ct">/* Outport: '<Root>/Rotor angle thetam (rad)' incorporates:</span></td></tr>
|
|
|
+<tr name="589" id="589">
|
|
|
+<td><a id="l589" class='ln'>589</a></td><td><span class="ct"> * DiscreteIntegrator: '<S11>/Discrete-Time Integrator1'</span></td></tr>
|
|
|
+<tr name="590" id="590">
|
|
|
+<td><a id="l590" class='ln'>590</a></td><td><span class="ct"> * Fcn: '<S11>/Fcn'</span></td></tr>
|
|
|
+<tr name="591" id="591">
|
|
|
+<td><a id="l591" class='ln'>591</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="592" id="592">
|
|
|
+<td><a id="l592" class='ln'>592</a></td><td> ((<a id="592c5" class="tk">real_T</a> <a id="592c12" class="tk">*</a>)<a id="592c14" class="tk">ssGetOutputPortSignal</a>(<a id="592c36" class="tk">S</a>, 11))[0] = (((<a id="592c52" class="tk">real_T</a> <a id="592c59" class="tk">*</a>)<a id="592c61" class="tk">ssGetDWork</a>(<a id="592c72" class="tk">S</a>, 0))[0]</td></tr>
|
|
|
+<tr name="593" id="593">
|
|
|
+<td><a id="l593" class='ln'>593</a></td><td> <a id="593c5" class="tk">-</a> 1.5707963267948966) <a id="593c27" class="tk">/</a> 4.0;</td></tr>
|
|
|
+<tr name="594" id="594">
|
|
|
+<td><a id="l594" class='ln'>594</a></td><td></td></tr>
|
|
|
+<tr name="595" id="595">
|
|
|
+<td><a id="l595" class='ln'>595</a></td><td> <span class="ct">/* Gain: '<S16>/rad2deg' incorporates:</span></td></tr>
|
|
|
+<tr name="596" id="596">
|
|
|
+<td><a id="l596" class='ln'>596</a></td><td><span class="ct"> * Trigonometry: '<S16>/Trigonometric Function2'</span></td></tr>
|
|
|
+<tr name="597" id="597">
|
|
|
+<td><a id="l597" class='ln'>597</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="598" id="598">
|
|
|
+<td><a id="l598" class='ln'>598</a></td><td> <a id="598c3" class="tk">rtb_DataTypeConversion2</a> = 57.295779513082323 <a id="598c48" class="tk">*</a> <a id="598c50" class="tk">PMSM_Motor_TL3_rt_atan2d_snf</a></td></tr>
|
|
|
+<tr name="599" id="599">
|
|
|
+<td><a id="l599" class='ln'>599</a></td><td> (<a id="599c6" class="tk">rtb_ElementaryMath_o1_tmp</a>, <a id="599c33" class="tk">rtb_ElementaryMath_o2_tmp</a>);</td></tr>
|
|
|
+<tr name="600" id="600">
|
|
|
+<td><a id="l600" class='ln'>600</a></td><td></td></tr>
|
|
|
+<tr name="601" id="601">
|
|
|
+<td><a id="l601" class='ln'>601</a></td><td> <span class="ct">/* Outport: '<Root>/Hall effect signal h_a' incorporates:</span></td></tr>
|
|
|
+<tr name="602" id="602">
|
|
|
+<td><a id="l602" class='ln'>602</a></td><td><span class="ct"> * Constant: '<S12>/Constant'</span></td></tr>
|
|
|
+<tr name="603" id="603">
|
|
|
+<td><a id="l603" class='ln'>603</a></td><td><span class="ct"> * Constant: '<S12>/Constant1'</span></td></tr>
|
|
|
+<tr name="604" id="604">
|
|
|
+<td><a id="l604" class='ln'>604</a></td><td><span class="ct"> * DataTypeConversion: '<S12>/Data Type Conversion'</span></td></tr>
|
|
|
+<tr name="605" id="605">
|
|
|
+<td><a id="l605" class='ln'>605</a></td><td><span class="ct"> * Logic: '<S12>/Logical Operator'</span></td></tr>
|
|
|
+<tr name="606" id="606">
|
|
|
+<td><a id="l606" class='ln'>606</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator1'</span></td></tr>
|
|
|
+<tr name="607" id="607">
|
|
|
+<td><a id="l607" class='ln'>607</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator2'</span></td></tr>
|
|
|
+<tr name="608" id="608">
|
|
|
+<td><a id="l608" class='ln'>608</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="609" id="609">
|
|
|
+<td><a id="l609" class='ln'>609</a></td><td> ((<a id="609c5" class="tk">real_T</a> <a id="609c12" class="tk">*</a>)<a id="609c14" class="tk">ssGetOutputPortSignal</a>(<a id="609c36" class="tk">S</a>, 7))[0] = ((<a id="609c50" class="tk">rtb_DataTypeConversion2</a> <a id="609c74" class="tk">>=</a></td></tr>
|
|
|
+<tr name="610" id="610">
|
|
|
+<td><a id="l610" class='ln'>610</a></td><td> <a id="610c5" class="tk">-</a>60.0) <a id="610c12" class="tk">&&</a> (<a id="610c16" class="tk">rtb_DataTypeConversion2</a> <a id="610c40" class="tk"><=</a> 120.0));</td></tr>
|
|
|
+<tr name="611" id="611">
|
|
|
+<td><a id="l611" class='ln'>611</a></td><td></td></tr>
|
|
|
+<tr name="612" id="612">
|
|
|
+<td><a id="l612" class='ln'>612</a></td><td> <span class="ct">/* Outport: '<Root>/Hall effect signal h_b' incorporates:</span></td></tr>
|
|
|
+<tr name="613" id="613">
|
|
|
+<td><a id="l613" class='ln'>613</a></td><td><span class="ct"> * Constant: '<S12>/Constant2'</span></td></tr>
|
|
|
+<tr name="614" id="614">
|
|
|
+<td><a id="l614" class='ln'>614</a></td><td><span class="ct"> * Constant: '<S12>/Constant3'</span></td></tr>
|
|
|
+<tr name="615" id="615">
|
|
|
+<td><a id="l615" class='ln'>615</a></td><td><span class="ct"> * DataTypeConversion: '<S12>/Data Type Conversion1'</span></td></tr>
|
|
|
+<tr name="616" id="616">
|
|
|
+<td><a id="l616" class='ln'>616</a></td><td><span class="ct"> * Logic: '<S12>/Logical Operator1'</span></td></tr>
|
|
|
+<tr name="617" id="617">
|
|
|
+<td><a id="l617" class='ln'>617</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator3'</span></td></tr>
|
|
|
+<tr name="618" id="618">
|
|
|
+<td><a id="l618" class='ln'>618</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator4'</span></td></tr>
|
|
|
+<tr name="619" id="619">
|
|
|
+<td><a id="l619" class='ln'>619</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="620" id="620">
|
|
|
+<td><a id="l620" class='ln'>620</a></td><td> ((<a id="620c5" class="tk">real_T</a> <a id="620c12" class="tk">*</a>)<a id="620c14" class="tk">ssGetOutputPortSignal</a>(<a id="620c36" class="tk">S</a>, 8))[0] = ((<a id="620c50" class="tk">rtb_DataTypeConversion2</a> <a id="620c74" class="tk">>=</a> 60.0)</td></tr>
|
|
|
+<tr name="621" id="621">
|
|
|
+<td><a id="l621" class='ln'>621</a></td><td> <a id="621c5" class="tk">||</a> (<a id="621c9" class="tk">rtb_DataTypeConversion2</a> <a id="621c33" class="tk"><=</a> <a id="621c36" class="tk">-</a>120.0));</td></tr>
|
|
|
+<tr name="622" id="622">
|
|
|
+<td><a id="l622" class='ln'>622</a></td><td></td></tr>
|
|
|
+<tr name="623" id="623">
|
|
|
+<td><a id="l623" class='ln'>623</a></td><td> <span class="ct">/* Outport: '<Root>/Hall effect signal h_c' incorporates:</span></td></tr>
|
|
|
+<tr name="624" id="624">
|
|
|
+<td><a id="l624" class='ln'>624</a></td><td><span class="ct"> * Constant: '<S12>/Constant4'</span></td></tr>
|
|
|
+<tr name="625" id="625">
|
|
|
+<td><a id="l625" class='ln'>625</a></td><td><span class="ct"> * Constant: '<S12>/Constant5'</span></td></tr>
|
|
|
+<tr name="626" id="626">
|
|
|
+<td><a id="l626" class='ln'>626</a></td><td><span class="ct"> * DataTypeConversion: '<S12>/Data Type Conversion2'</span></td></tr>
|
|
|
+<tr name="627" id="627">
|
|
|
+<td><a id="l627" class='ln'>627</a></td><td><span class="ct"> * Logic: '<S12>/Logical Operator2'</span></td></tr>
|
|
|
+<tr name="628" id="628">
|
|
|
+<td><a id="l628" class='ln'>628</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator5'</span></td></tr>
|
|
|
+<tr name="629" id="629">
|
|
|
+<td><a id="l629" class='ln'>629</a></td><td><span class="ct"> * RelationalOperator: '<S12>/Relational Operator6'</span></td></tr>
|
|
|
+<tr name="630" id="630">
|
|
|
+<td><a id="l630" class='ln'>630</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="631" id="631">
|
|
|
+<td><a id="l631" class='ln'>631</a></td><td> ((<a id="631c5" class="tk">real_T</a> <a id="631c12" class="tk">*</a>)<a id="631c14" class="tk">ssGetOutputPortSignal</a>(<a id="631c36" class="tk">S</a>, 9))[0] = ((<a id="631c50" class="tk">rtb_DataTypeConversion2</a> <a id="631c74" class="tk">>=</a></td></tr>
|
|
|
+<tr name="632" id="632">
|
|
|
+<td><a id="l632" class='ln'>632</a></td><td> <a id="632c5" class="tk">-</a>180.0) <a id="632c13" class="tk">&&</a> (<a id="632c17" class="tk">rtb_DataTypeConversion2</a> <a id="632c41" class="tk"><=</a> 0.0));</td></tr>
|
|
|
+<tr name="633" id="633">
|
|
|
+<td><a id="l633" class='ln'>633</a></td><td></td></tr>
|
|
|
+<tr name="634" id="634">
|
|
|
+<td><a id="l634" class='ln'>634</a></td><td> <span class="ct">/* Outport: '<Root>/Rotor speed wm (rad//s)' */</span></td></tr>
|
|
|
+<tr name="635" id="635">
|
|
|
+<td><a id="l635" class='ln'>635</a></td><td> ((<a id="635c5" class="tk">real_T</a> <a id="635c12" class="tk">*</a>)<a id="635c14" class="tk">ssGetOutputPortSignal</a>(<a id="635c36" class="tk">S</a>, 10))[0] = <a id="635c49" class="tk">*</a>((<span class="kw">const</span> <a id="635c58" class="tk">real_T</a> <a id="635c65" class="tk">*</a><a id="635c66" class="tk">*</a>)</td></tr>
|
|
|
+<tr name="636" id="636">
|
|
|
+<td><a id="l636" class='ln'>636</a></td><td> <a id="636c5" class="tk">ssGetInputPortSignalPtrs</a>(<a id="636c30" class="tk">S</a>, 1))[0];</td></tr>
|
|
|
+<tr name="637" id="637">
|
|
|
+<td><a id="l637" class='ln'>637</a></td><td> <a id="637c3" class="tk">UNUSED_PARAMETER</a>(<a id="637c20" class="tk">tid</a>);</td></tr>
|
|
|
+<tr name="638" id="638">
|
|
|
+<td><a id="l638" class='ln'>638</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="639" id="639">
|
|
|
+<td><a id="l639" class='ln'>639</a></td><td></td></tr>
|
|
|
+<tr name="640" id="640">
|
|
|
+<td><a id="l640" class='ln'>640</a></td><td><span class="ct">/* Update for root system: '<Root>' */</span></td></tr>
|
|
|
+<tr name="641" id="641">
|
|
|
+<td><a id="l641" class='ln'>641</a></td><td><span class="pp">#define</span> <a id="641c9" class="tk">MDL_UPDATE</a></td></tr>
|
|
|
+<tr name="642" id="642">
|
|
|
+<td><a id="l642" class='ln'>642</a></td><td></td></tr>
|
|
|
+<tr name="643" id="643">
|
|
|
+<td><a id="l643" class='ln'>643</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="643c13" class="tk">mdlUpdate</a>(<a id="643c23" class="tk">SimStruct</a> <a id="643c33" class="tk">*</a><a id="643c34" class="tk">S</a>, <a id="643c37" class="tk">int_T</a> <a id="643c43" class="tk">tid</a>)</td></tr>
|
|
|
+<tr name="644" id="644">
|
|
|
+<td><a id="l644" class='ln'>644</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="645" id="645">
|
|
|
+<td><a id="l645" class='ln'>645</a></td><td> <a id="645c3" class="tk">B_PMSM_Motor_TL3_T</a> <a id="645c22" class="tk">*</a><a id="645c23" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="646" id="646">
|
|
|
+<td><a id="l646" class='ln'>646</a></td><td> <a id="646c3" class="tk">_rtB</a> = ((<a id="646c12" class="tk">B_PMSM_Motor_TL3_T</a> <a id="646c31" class="tk">*</a>) <a id="646c34" class="tk">ssGetLocalBlockIO</a>(<a id="646c52" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="647" id="647">
|
|
|
+<td><a id="l647" class='ln'>647</a></td><td></td></tr>
|
|
|
+<tr name="648" id="648">
|
|
|
+<td><a id="l648" class='ln'>648</a></td><td> <span class="ct">/* Update for DiscreteIntegrator: '<S11>/Discrete-Time Integrator1' */</span></td></tr>
|
|
|
+<tr name="649" id="649">
|
|
|
+<td><a id="l649" class='ln'>649</a></td><td> ((<a id="649c5" class="tk">real_T</a> <a id="649c12" class="tk">*</a>)<a id="649c14" class="tk">ssGetDWork</a>(<a id="649c25" class="tk">S</a>, 0))[0] = 5.0E-7 <a id="649c44" class="tk">*</a> <a id="649c46" class="tk">_rtB</a>-><a id="649c52" class="tk">Gain</a> <a id="649c57" class="tk">+</a> ((<a id="649c61" class="tk">real_T</a> <a id="649c68" class="tk">*</a>)<a id="649c70" class="tk">ssGetDWork</a></td></tr>
|
|
|
+<tr name="650" id="650">
|
|
|
+<td><a id="l650" class='ln'>650</a></td><td> (<a id="650c6" class="tk">S</a>, 0))[0];</td></tr>
|
|
|
+<tr name="651" id="651">
|
|
|
+<td><a id="l651" class='ln'>651</a></td><td></td></tr>
|
|
|
+<tr name="652" id="652">
|
|
|
+<td><a id="l652" class='ln'>652</a></td><td> <span class="ct">/* Update for DiscreteIntegrator: '<S18>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="653" id="653">
|
|
|
+<td><a id="l653" class='ln'>653</a></td><td> ((<a id="653c5" class="tk">real_T</a> <a id="653c12" class="tk">*</a>)<a id="653c14" class="tk">ssGetDWork</a>(<a id="653c25" class="tk">S</a>, 1))[0] = 5.0E-7 <a id="653c44" class="tk">*</a> <a id="653c46" class="tk">_rtB</a>-><a id="653c52" class="tk">Sum1</a> <a id="653c57" class="tk">+</a> ((<a id="653c61" class="tk">real_T</a> <a id="653c68" class="tk">*</a>)<a id="653c70" class="tk">ssGetDWork</a></td></tr>
|
|
|
+<tr name="654" id="654">
|
|
|
+<td><a id="l654" class='ln'>654</a></td><td> (<a id="654c6" class="tk">S</a>, 1))[0];</td></tr>
|
|
|
+<tr name="655" id="655">
|
|
|
+<td><a id="l655" class='ln'>655</a></td><td></td></tr>
|
|
|
+<tr name="656" id="656">
|
|
|
+<td><a id="l656" class='ln'>656</a></td><td> <span class="ct">/* Update for DiscreteIntegrator: '<S17>/Discrete-Time Integrator' */</span></td></tr>
|
|
|
+<tr name="657" id="657">
|
|
|
+<td><a id="l657" class='ln'>657</a></td><td> ((<a id="657c5" class="tk">real_T</a> <a id="657c12" class="tk">*</a>)<a id="657c14" class="tk">ssGetDWork</a>(<a id="657c25" class="tk">S</a>, 2))[0] = 5.0E-7 <a id="657c44" class="tk">*</a> <a id="657c46" class="tk">_rtB</a>-><a id="657c52" class="tk">Sum</a> <a id="657c56" class="tk">+</a> ((<a id="657c60" class="tk">real_T</a> <a id="657c67" class="tk">*</a>)<a id="657c69" class="tk">ssGetDWork</a>(<a id="657c80" class="tk">S</a>,</td></tr>
|
|
|
+<tr name="658" id="658">
|
|
|
+<td><a id="l658" class='ln'>658</a></td><td> 2))[0];</td></tr>
|
|
|
+<tr name="659" id="659">
|
|
|
+<td><a id="l659" class='ln'>659</a></td><td></td></tr>
|
|
|
+<tr name="660" id="660">
|
|
|
+<td><a id="l660" class='ln'>660</a></td><td> <span class="ct">/* Update for S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="661" id="661">
|
|
|
+<td><a id="l661" class='ln'>661</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="662" id="662">
|
|
|
+<td><a id="l662" class='ln'>662</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="663" id="663">
|
|
|
+<td><a id="l663" class='ln'>663</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="664" id="664">
|
|
|
+<td><a id="l664" class='ln'>664</a></td><td> <a id="664c5" class="tk">int_T</a> <a id="664c11" class="tk">*</a><a id="664c12" class="tk">gState</a> = (<a id="664c22" class="tk">int_T</a><a id="664c27" class="tk">*</a>)((<span class="kw">void</span><a id="664c35" class="tk">*</a><a id="664c36" class="tk">*</a>) <a id="664c39" class="tk">ssGetDWork</a>(<a id="664c50" class="tk">S</a>, 4))[12];</td></tr>
|
|
|
+<tr name="665" id="665">
|
|
|
+<td><a id="l665" class='ln'>665</a></td><td></td></tr>
|
|
|
+<tr name="666" id="666">
|
|
|
+<td><a id="l666" class='ln'>666</a></td><td> <span class="ct">/* Store switch gates values for next step */</span></td></tr>
|
|
|
+<tr name="667" id="667">
|
|
|
+<td><a id="l667" class='ln'>667</a></td><td> <a id="667c5" class="tk">*</a>(<a id="667c7" class="tk">gState</a><a id="667c13" class="tk">++</a>) = (<a id="667c20" class="tk">int_T</a>) (<a id="667c28" class="tk">*</a>(<span class="kw">const</span> <a id="667c36" class="tk">real_T</a> <a id="667c43" class="tk">*</a><a id="667c44" class="tk">*</a>)<a id="667c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="667c71" class="tk">S</a>, 0))[0];</td></tr>
|
|
|
+<tr name="668" id="668">
|
|
|
+<td><a id="l668" class='ln'>668</a></td><td> <a id="668c5" class="tk">*</a>(<a id="668c7" class="tk">gState</a><a id="668c13" class="tk">++</a>) = (<a id="668c20" class="tk">int_T</a>) (<a id="668c28" class="tk">*</a>(<span class="kw">const</span> <a id="668c36" class="tk">real_T</a> <a id="668c43" class="tk">*</a><a id="668c44" class="tk">*</a>)<a id="668c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="668c71" class="tk">S</a>, 0))[1];</td></tr>
|
|
|
+<tr name="669" id="669">
|
|
|
+<td><a id="l669" class='ln'>669</a></td><td> <a id="669c5" class="tk">*</a>(<a id="669c7" class="tk">gState</a><a id="669c13" class="tk">++</a>) = (<a id="669c20" class="tk">int_T</a>) (<a id="669c28" class="tk">*</a>(<span class="kw">const</span> <a id="669c36" class="tk">real_T</a> <a id="669c43" class="tk">*</a><a id="669c44" class="tk">*</a>)<a id="669c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="669c71" class="tk">S</a>, 0))[2];</td></tr>
|
|
|
+<tr name="670" id="670">
|
|
|
+<td><a id="l670" class='ln'>670</a></td><td> <a id="670c5" class="tk">*</a>(<a id="670c7" class="tk">gState</a><a id="670c13" class="tk">++</a>) = (<a id="670c20" class="tk">int_T</a>) (<a id="670c28" class="tk">*</a>(<span class="kw">const</span> <a id="670c36" class="tk">real_T</a> <a id="670c43" class="tk">*</a><a id="670c44" class="tk">*</a>)<a id="670c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="670c71" class="tk">S</a>, 0))[3];</td></tr>
|
|
|
+<tr name="671" id="671">
|
|
|
+<td><a id="l671" class='ln'>671</a></td><td> <a id="671c5" class="tk">*</a>(<a id="671c7" class="tk">gState</a><a id="671c13" class="tk">++</a>) = (<a id="671c20" class="tk">int_T</a>) (<a id="671c28" class="tk">*</a>(<span class="kw">const</span> <a id="671c36" class="tk">real_T</a> <a id="671c43" class="tk">*</a><a id="671c44" class="tk">*</a>)<a id="671c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="671c71" class="tk">S</a>, 0))[4];</td></tr>
|
|
|
+<tr name="672" id="672">
|
|
|
+<td><a id="l672" class='ln'>672</a></td><td> <a id="672c5" class="tk">*</a>(<a id="672c7" class="tk">gState</a><a id="672c13" class="tk">++</a>) = (<a id="672c20" class="tk">int_T</a>) (<a id="672c28" class="tk">*</a>(<span class="kw">const</span> <a id="672c36" class="tk">real_T</a> <a id="672c43" class="tk">*</a><a id="672c44" class="tk">*</a>)<a id="672c46" class="tk">ssGetInputPortSignalPtrs</a>(<a id="672c71" class="tk">S</a>, 0))[5];</td></tr>
|
|
|
+<tr name="673" id="673">
|
|
|
+<td><a id="l673" class='ln'>673</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="674" id="674">
|
|
|
+<td><a id="l674" class='ln'>674</a></td><td></td></tr>
|
|
|
+<tr name="675" id="675">
|
|
|
+<td><a id="l675" class='ln'>675</a></td><td> <span class="ct">/* Update for UnitDelay: '<S4>/Unit Delay' */</span></td></tr>
|
|
|
+<tr name="676" id="676">
|
|
|
+<td><a id="l676" class='ln'>676</a></td><td> ((<a id="676c5" class="tk">real_T</a> <a id="676c12" class="tk">*</a>)<a id="676c14" class="tk">ssGetDWork</a>(<a id="676c25" class="tk">S</a>, 3))[0] = <a id="676c37" class="tk">_rtB</a>-><a id="676c43" class="tk">Add1</a>;</td></tr>
|
|
|
+<tr name="677" id="677">
|
|
|
+<td><a id="l677" class='ln'>677</a></td><td> <a id="677c3" class="tk">UNUSED_PARAMETER</a>(<a id="677c20" class="tk">tid</a>);</td></tr>
|
|
|
+<tr name="678" id="678">
|
|
|
+<td><a id="l678" class='ln'>678</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="679" id="679">
|
|
|
+<td><a id="l679" class='ln'>679</a></td><td></td></tr>
|
|
|
+<tr name="680" id="680">
|
|
|
+<td><a id="l680" class='ln'>680</a></td><td><span class="ct">/* Termination for root system: '<Root>' */</span></td></tr>
|
|
|
+<tr name="681" id="681">
|
|
|
+<td><a id="l681" class='ln'>681</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="681c13" class="tk">mdlTerminate</a>(<a id="681c26" class="tk">SimStruct</a> <a id="681c36" class="tk">*</a><a id="681c37" class="tk">S</a>)</td></tr>
|
|
|
+<tr name="682" id="682">
|
|
|
+<td><a id="l682" class='ln'>682</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="683" id="683">
|
|
|
+<td><a id="l683" class='ln'>683</a></td><td> <a id="683c3" class="tk">B_PMSM_Motor_TL3_T</a> <a id="683c22" class="tk">*</a><a id="683c23" class="tk">_rtB</a>;</td></tr>
|
|
|
+<tr name="684" id="684">
|
|
|
+<td><a id="l684" class='ln'>684</a></td><td> <a id="684c3" class="tk">_rtB</a> = ((<a id="684c12" class="tk">B_PMSM_Motor_TL3_T</a> <a id="684c31" class="tk">*</a>) <a id="684c34" class="tk">ssGetLocalBlockIO</a>(<a id="684c52" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="685" id="685">
|
|
|
+<td><a id="l685" class='ln'>685</a></td><td></td></tr>
|
|
|
+<tr name="686" id="686">
|
|
|
+<td><a id="l686" class='ln'>686</a></td><td> <span class="ct">/* Terminate for S-Function (sfun_spssw_discc): '<S20>/State-Space' incorporates:</span></td></tr>
|
|
|
+<tr name="687" id="687">
|
|
|
+<td><a id="l687" class='ln'>687</a></td><td><span class="ct"> * Constant: '<S19>/Constant'</span></td></tr>
|
|
|
+<tr name="688" id="688">
|
|
|
+<td><a id="l688" class='ln'>688</a></td><td><span class="ct"> */</span></td></tr>
|
|
|
+<tr name="689" id="689">
|
|
|
+<td><a id="l689" class='ln'>689</a></td><td></td></tr>
|
|
|
+<tr name="690" id="690">
|
|
|
+<td><a id="l690" class='ln'>690</a></td><td> <span class="ct">/* S-Function block: <S20>/State-Space */</span></td></tr>
|
|
|
+<tr name="691" id="691">
|
|
|
+<td><a id="l691" class='ln'>691</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="692" id="692">
|
|
|
+<td><a id="l692" class='ln'>692</a></td><td> <span class="ct">/* Free memory */</span></td></tr>
|
|
|
+<tr name="693" id="693">
|
|
|
+<td><a id="l693" class='ln'>693</a></td><td> <a id="693c5" class="tk">free</a>(((<span class="kw">void</span><a id="693c16" class="tk">*</a><a id="693c17" class="tk">*</a>) <a id="693c20" class="tk">ssGetDWork</a>(<a id="693c31" class="tk">S</a>, 4))[3]);</td></tr>
|
|
|
+<tr name="694" id="694">
|
|
|
+<td><a id="l694" class='ln'>694</a></td><td> <a id="694c5" class="tk">free</a>(((<span class="kw">void</span><a id="694c16" class="tk">*</a><a id="694c17" class="tk">*</a>) <a id="694c20" class="tk">ssGetDWork</a>(<a id="694c31" class="tk">S</a>, 4))[4]);</td></tr>
|
|
|
+<tr name="695" id="695">
|
|
|
+<td><a id="l695" class='ln'>695</a></td><td> <a id="695c5" class="tk">free</a>(((<span class="kw">void</span><a id="695c16" class="tk">*</a><a id="695c17" class="tk">*</a>) <a id="695c20" class="tk">ssGetDWork</a>(<a id="695c31" class="tk">S</a>, 4))[7]);</td></tr>
|
|
|
+<tr name="696" id="696">
|
|
|
+<td><a id="l696" class='ln'>696</a></td><td></td></tr>
|
|
|
+<tr name="697" id="697">
|
|
|
+<td><a id="l697" class='ln'>697</a></td><td> <span class="ct">/*</span></td></tr>
|
|
|
+<tr name="698" id="698">
|
|
|
+<td><a id="l698" class='ln'>698</a></td><td><span class="ct"> * Circuit has switches*/</span></td></tr>
|
|
|
+<tr name="699" id="699">
|
|
|
+<td><a id="l699" class='ln'>699</a></td><td> <a id="699c5" class="tk">free</a>(((<span class="kw">void</span><a id="699c16" class="tk">*</a><a id="699c17" class="tk">*</a>) <a id="699c20" class="tk">ssGetDWork</a>(<a id="699c31" class="tk">S</a>, 4))[12]);</td></tr>
|
|
|
+<tr name="700" id="700">
|
|
|
+<td><a id="l700" class='ln'>700</a></td><td> <a id="700c5" class="tk">free</a>(((<span class="kw">void</span><a id="700c16" class="tk">*</a><a id="700c17" class="tk">*</a>) <a id="700c20" class="tk">ssGetDWork</a>(<a id="700c31" class="tk">S</a>, 4))[9]);</td></tr>
|
|
|
+<tr name="701" id="701">
|
|
|
+<td><a id="l701" class='ln'>701</a></td><td> <a id="701c5" class="tk">free</a>(((<span class="kw">void</span><a id="701c16" class="tk">*</a><a id="701c17" class="tk">*</a>) <a id="701c20" class="tk">ssGetDWork</a>(<a id="701c31" class="tk">S</a>, 4))[11]);</td></tr>
|
|
|
+<tr name="702" id="702">
|
|
|
+<td><a id="l702" class='ln'>702</a></td><td> <a id="702c5" class="tk">free</a>(((<span class="kw">void</span><a id="702c16" class="tk">*</a><a id="702c17" class="tk">*</a>) <a id="702c20" class="tk">ssGetDWork</a>(<a id="702c31" class="tk">S</a>, 4))[10]);</td></tr>
|
|
|
+<tr name="703" id="703">
|
|
|
+<td><a id="l703" class='ln'>703</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="704" id="704">
|
|
|
+<td><a id="l704" class='ln'>704</a></td><td></td></tr>
|
|
|
+<tr name="705" id="705">
|
|
|
+<td><a id="l705" class='ln'>705</a></td><td><span class="pp">#if</span> <a id="705c5" class="tk">defined</a>(<a id="705c13" class="tk">RT_MALLOC</a>) <a id="705c24" class="tk">||</a> <a id="705c27" class="tk">defined</a>(<a id="705c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="706" id="706">
|
|
|
+<td><a id="l706" class='ln'>706</a></td><td></td></tr>
|
|
|
+<tr name="707" id="707">
|
|
|
+<td><a id="l707" class='ln'>707</a></td><td> <span class="kw">if</span> (<a id="707c7" class="tk">ssGetUserData</a>(<a id="707c21" class="tk">S</a>) <a id="707c24" class="tk">!=</a> (<a id="707c28" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
|
|
|
+<tr name="708" id="708">
|
|
|
+<td><a id="l708" class='ln'>708</a></td><td> <a id="708c5" class="tk">rt_FREE</a>(<a id="708c13" class="tk">ssGetLocalBlockIO</a>(<a id="708c31" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="709" id="709">
|
|
|
+<td><a id="l709" class='ln'>709</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="710" id="710">
|
|
|
+<td><a id="l710" class='ln'>710</a></td><td></td></tr>
|
|
|
+<tr name="711" id="711">
|
|
|
+<td><a id="l711" class='ln'>711</a></td><td> <a id="711c3" class="tk">rt_FREE</a>(<a id="711c11" class="tk">ssGetUserData</a>(<a id="711c25" class="tk">S</a>));</td></tr>
|
|
|
+<tr name="712" id="712">
|
|
|
+<td><a id="l712" class='ln'>712</a></td><td></td></tr>
|
|
|
+<tr name="713" id="713">
|
|
|
+<td><a id="l713" class='ln'>713</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="714" id="714">
|
|
|
+<td><a id="l714" class='ln'>714</a></td><td></td></tr>
|
|
|
+<tr name="715" id="715">
|
|
|
+<td><a id="l715" class='ln'>715</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="716" id="716">
|
|
|
+<td><a id="l716" class='ln'>716</a></td><td></td></tr>
|
|
|
+<tr name="717" id="717">
|
|
|
+<td><a id="l717" class='ln'>717</a></td><td><span class="pp">#if</span> <a id="717c5" class="tk">defined</a>(<a id="717c13" class="tk">RT_MALLOC</a>) <a id="717c24" class="tk">||</a> <a id="717c27" class="tk">defined</a>(<a id="717c35" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="718" id="718">
|
|
|
+<td><a id="l718" class='ln'>718</a></td><td><span class="pp">#include "PMSM_Motor_TL3_mid.h"</span></td></tr>
|
|
|
+<tr name="719" id="719">
|
|
|
+<td><a id="l719" class='ln'>719</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="720" id="720">
|
|
|
+<td><a id="l720" class='ln'>720</a></td><td></td></tr>
|
|
|
+<tr name="721" id="721">
|
|
|
+<td><a id="l721" class='ln'>721</a></td><td><span class="ct">/* Function to initialize sizes. */</span></td></tr>
|
|
|
+<tr name="722" id="722">
|
|
|
+<td><a id="l722" class='ln'>722</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="722c13" class="tk">mdlInitializeSizes</a>(<a id="722c32" class="tk">SimStruct</a> <a id="722c42" class="tk">*</a><a id="722c43" class="tk">S</a>)</td></tr>
|
|
|
+<tr name="723" id="723">
|
|
|
+<td><a id="l723" class='ln'>723</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="724" id="724">
|
|
|
+<td><a id="l724" class='ln'>724</a></td><td> <a id="724c3" class="tk">ssSetNumSampleTimes</a>(<a id="724c23" class="tk">S</a>, 1); <span class="ct">/* Number of sample times */</span></td></tr>
|
|
|
+<tr name="725" id="725">
|
|
|
+<td><a id="l725" class='ln'>725</a></td><td> <a id="725c3" class="tk">ssSetNumContStates</a>(<a id="725c22" class="tk">S</a>, 0); <span class="ct">/* Number of continuous states */</span></td></tr>
|
|
|
+<tr name="726" id="726">
|
|
|
+<td><a id="l726" class='ln'>726</a></td><td> <a id="726c3" class="tk">ssSetNumNonsampledZCs</a>(<a id="726c25" class="tk">S</a>, 0); <span class="ct">/* Number of nonsampled ZCs */</span></td></tr>
|
|
|
+<tr name="727" id="727">
|
|
|
+<td><a id="l727" class='ln'>727</a></td><td></td></tr>
|
|
|
+<tr name="728" id="728">
|
|
|
+<td><a id="l728" class='ln'>728</a></td><td> <span class="ct">/* Number of output ports */</span></td></tr>
|
|
|
+<tr name="729" id="729">
|
|
|
+<td><a id="l729" class='ln'>729</a></td><td> <span class="kw">if</span> (<a id="729c7" class="tk">!</a><a id="729c8" class="tk">ssSetNumOutputPorts</a>(<a id="729c28" class="tk">S</a>, 13))</td></tr>
|
|
|
+<tr name="730" id="730">
|
|
|
+<td><a id="l730" class='ln'>730</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="731" id="731">
|
|
|
+<td><a id="l731" class='ln'>731</a></td><td></td></tr>
|
|
|
+<tr name="732" id="732">
|
|
|
+<td><a id="l732" class='ln'>732</a></td><td> <span class="ct">/* outport number: 0 */</span></td></tr>
|
|
|
+<tr name="733" id="733">
|
|
|
+<td><a id="l733" class='ln'>733</a></td><td> <span class="kw">if</span> (<a id="733c7" class="tk">!</a><a id="733c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="733c39" class="tk">S</a>, 0, 1))</td></tr>
|
|
|
+<tr name="734" id="734">
|
|
|
+<td><a id="l734" class='ln'>734</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="735" id="735">
|
|
|
+<td><a id="l735" class='ln'>735</a></td><td> <span class="kw">if</span> (<a id="735c7" class="tk">ssGetSimMode</a>(<a id="735c20" class="tk">S</a>) <a id="735c23" class="tk">!=</a> <a id="735c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="736" id="736">
|
|
|
+<td><a id="l736" class='ln'>736</a></td><td> <a id="736c5" class="tk">ssSetOutputPortDataType</a>(<a id="736c29" class="tk">S</a>, 0, <a id="736c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="737" id="737">
|
|
|
+<td><a id="l737" class='ln'>737</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="738" id="738">
|
|
|
+<td><a id="l738" class='ln'>738</a></td><td></td></tr>
|
|
|
+<tr name="739" id="739">
|
|
|
+<td><a id="l739" class='ln'>739</a></td><td> <a id="739c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="739c29" class="tk">S</a>, 0, 5.0E-7);</td></tr>
|
|
|
+<tr name="740" id="740">
|
|
|
+<td><a id="l740" class='ln'>740</a></td><td> <a id="740c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="740c29" class="tk">S</a>, 0, 0.0);</td></tr>
|
|
|
+<tr name="741" id="741">
|
|
|
+<td><a id="l741" class='ln'>741</a></td><td> <a id="741c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="741c28" class="tk">S</a>, 0, <a id="741c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="742" id="742">
|
|
|
+<td><a id="l742" class='ln'>742</a></td><td></td></tr>
|
|
|
+<tr name="743" id="743">
|
|
|
+<td><a id="l743" class='ln'>743</a></td><td> <span class="ct">/* outport number: 1 */</span></td></tr>
|
|
|
+<tr name="744" id="744">
|
|
|
+<td><a id="l744" class='ln'>744</a></td><td> <span class="kw">if</span> (<a id="744c7" class="tk">!</a><a id="744c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="744c39" class="tk">S</a>, 1, 1))</td></tr>
|
|
|
+<tr name="745" id="745">
|
|
|
+<td><a id="l745" class='ln'>745</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="746" id="746">
|
|
|
+<td><a id="l746" class='ln'>746</a></td><td> <span class="kw">if</span> (<a id="746c7" class="tk">ssGetSimMode</a>(<a id="746c20" class="tk">S</a>) <a id="746c23" class="tk">!=</a> <a id="746c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="747" id="747">
|
|
|
+<td><a id="l747" class='ln'>747</a></td><td> <a id="747c5" class="tk">ssSetOutputPortDataType</a>(<a id="747c29" class="tk">S</a>, 1, <a id="747c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="748" id="748">
|
|
|
+<td><a id="l748" class='ln'>748</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="749" id="749">
|
|
|
+<td><a id="l749" class='ln'>749</a></td><td></td></tr>
|
|
|
+<tr name="750" id="750">
|
|
|
+<td><a id="l750" class='ln'>750</a></td><td> <a id="750c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="750c29" class="tk">S</a>, 1, 5.0E-7);</td></tr>
|
|
|
+<tr name="751" id="751">
|
|
|
+<td><a id="l751" class='ln'>751</a></td><td> <a id="751c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="751c29" class="tk">S</a>, 1, 0.0);</td></tr>
|
|
|
+<tr name="752" id="752">
|
|
|
+<td><a id="l752" class='ln'>752</a></td><td> <a id="752c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="752c28" class="tk">S</a>, 1, <a id="752c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="753" id="753">
|
|
|
+<td><a id="l753" class='ln'>753</a></td><td></td></tr>
|
|
|
+<tr name="754" id="754">
|
|
|
+<td><a id="l754" class='ln'>754</a></td><td> <span class="ct">/* outport number: 2 */</span></td></tr>
|
|
|
+<tr name="755" id="755">
|
|
|
+<td><a id="l755" class='ln'>755</a></td><td> <span class="kw">if</span> (<a id="755c7" class="tk">!</a><a id="755c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="755c39" class="tk">S</a>, 2, 1))</td></tr>
|
|
|
+<tr name="756" id="756">
|
|
|
+<td><a id="l756" class='ln'>756</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="757" id="757">
|
|
|
+<td><a id="l757" class='ln'>757</a></td><td> <span class="kw">if</span> (<a id="757c7" class="tk">ssGetSimMode</a>(<a id="757c20" class="tk">S</a>) <a id="757c23" class="tk">!=</a> <a id="757c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="758" id="758">
|
|
|
+<td><a id="l758" class='ln'>758</a></td><td> <a id="758c5" class="tk">ssSetOutputPortDataType</a>(<a id="758c29" class="tk">S</a>, 2, <a id="758c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="759" id="759">
|
|
|
+<td><a id="l759" class='ln'>759</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="760" id="760">
|
|
|
+<td><a id="l760" class='ln'>760</a></td><td></td></tr>
|
|
|
+<tr name="761" id="761">
|
|
|
+<td><a id="l761" class='ln'>761</a></td><td> <a id="761c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="761c29" class="tk">S</a>, 2, 5.0E-7);</td></tr>
|
|
|
+<tr name="762" id="762">
|
|
|
+<td><a id="l762" class='ln'>762</a></td><td> <a id="762c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="762c29" class="tk">S</a>, 2, 0.0);</td></tr>
|
|
|
+<tr name="763" id="763">
|
|
|
+<td><a id="l763" class='ln'>763</a></td><td> <a id="763c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="763c28" class="tk">S</a>, 2, <a id="763c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="764" id="764">
|
|
|
+<td><a id="l764" class='ln'>764</a></td><td></td></tr>
|
|
|
+<tr name="765" id="765">
|
|
|
+<td><a id="l765" class='ln'>765</a></td><td> <span class="ct">/* outport number: 3 */</span></td></tr>
|
|
|
+<tr name="766" id="766">
|
|
|
+<td><a id="l766" class='ln'>766</a></td><td> <span class="kw">if</span> (<a id="766c7" class="tk">!</a><a id="766c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="766c39" class="tk">S</a>, 3, 1))</td></tr>
|
|
|
+<tr name="767" id="767">
|
|
|
+<td><a id="l767" class='ln'>767</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="768" id="768">
|
|
|
+<td><a id="l768" class='ln'>768</a></td><td> <span class="kw">if</span> (<a id="768c7" class="tk">ssGetSimMode</a>(<a id="768c20" class="tk">S</a>) <a id="768c23" class="tk">!=</a> <a id="768c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="769" id="769">
|
|
|
+<td><a id="l769" class='ln'>769</a></td><td> <a id="769c5" class="tk">ssSetOutputPortDataType</a>(<a id="769c29" class="tk">S</a>, 3, <a id="769c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="770" id="770">
|
|
|
+<td><a id="l770" class='ln'>770</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="771" id="771">
|
|
|
+<td><a id="l771" class='ln'>771</a></td><td></td></tr>
|
|
|
+<tr name="772" id="772">
|
|
|
+<td><a id="l772" class='ln'>772</a></td><td> <a id="772c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="772c29" class="tk">S</a>, 3, 5.0E-7);</td></tr>
|
|
|
+<tr name="773" id="773">
|
|
|
+<td><a id="l773" class='ln'>773</a></td><td> <a id="773c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="773c29" class="tk">S</a>, 3, 0.0);</td></tr>
|
|
|
+<tr name="774" id="774">
|
|
|
+<td><a id="l774" class='ln'>774</a></td><td> <a id="774c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="774c28" class="tk">S</a>, 3, <a id="774c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="775" id="775">
|
|
|
+<td><a id="l775" class='ln'>775</a></td><td></td></tr>
|
|
|
+<tr name="776" id="776">
|
|
|
+<td><a id="l776" class='ln'>776</a></td><td> <span class="ct">/* outport number: 4 */</span></td></tr>
|
|
|
+<tr name="777" id="777">
|
|
|
+<td><a id="l777" class='ln'>777</a></td><td> <span class="kw">if</span> (<a id="777c7" class="tk">!</a><a id="777c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="777c39" class="tk">S</a>, 4, 1))</td></tr>
|
|
|
+<tr name="778" id="778">
|
|
|
+<td><a id="l778" class='ln'>778</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="779" id="779">
|
|
|
+<td><a id="l779" class='ln'>779</a></td><td> <span class="kw">if</span> (<a id="779c7" class="tk">ssGetSimMode</a>(<a id="779c20" class="tk">S</a>) <a id="779c23" class="tk">!=</a> <a id="779c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="780" id="780">
|
|
|
+<td><a id="l780" class='ln'>780</a></td><td> <a id="780c5" class="tk">ssSetOutputPortDataType</a>(<a id="780c29" class="tk">S</a>, 4, <a id="780c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="781" id="781">
|
|
|
+<td><a id="l781" class='ln'>781</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="782" id="782">
|
|
|
+<td><a id="l782" class='ln'>782</a></td><td></td></tr>
|
|
|
+<tr name="783" id="783">
|
|
|
+<td><a id="l783" class='ln'>783</a></td><td> <a id="783c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="783c29" class="tk">S</a>, 4, 5.0E-7);</td></tr>
|
|
|
+<tr name="784" id="784">
|
|
|
+<td><a id="l784" class='ln'>784</a></td><td> <a id="784c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="784c29" class="tk">S</a>, 4, 0.0);</td></tr>
|
|
|
+<tr name="785" id="785">
|
|
|
+<td><a id="l785" class='ln'>785</a></td><td> <a id="785c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="785c28" class="tk">S</a>, 4, <a id="785c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="786" id="786">
|
|
|
+<td><a id="l786" class='ln'>786</a></td><td></td></tr>
|
|
|
+<tr name="787" id="787">
|
|
|
+<td><a id="l787" class='ln'>787</a></td><td> <span class="ct">/* outport number: 5 */</span></td></tr>
|
|
|
+<tr name="788" id="788">
|
|
|
+<td><a id="l788" class='ln'>788</a></td><td> <span class="kw">if</span> (<a id="788c7" class="tk">!</a><a id="788c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="788c39" class="tk">S</a>, 5, 1))</td></tr>
|
|
|
+<tr name="789" id="789">
|
|
|
+<td><a id="l789" class='ln'>789</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="790" id="790">
|
|
|
+<td><a id="l790" class='ln'>790</a></td><td> <span class="kw">if</span> (<a id="790c7" class="tk">ssGetSimMode</a>(<a id="790c20" class="tk">S</a>) <a id="790c23" class="tk">!=</a> <a id="790c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="791" id="791">
|
|
|
+<td><a id="l791" class='ln'>791</a></td><td> <a id="791c5" class="tk">ssSetOutputPortDataType</a>(<a id="791c29" class="tk">S</a>, 5, <a id="791c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="792" id="792">
|
|
|
+<td><a id="l792" class='ln'>792</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="793" id="793">
|
|
|
+<td><a id="l793" class='ln'>793</a></td><td></td></tr>
|
|
|
+<tr name="794" id="794">
|
|
|
+<td><a id="l794" class='ln'>794</a></td><td> <a id="794c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="794c29" class="tk">S</a>, 5, 5.0E-7);</td></tr>
|
|
|
+<tr name="795" id="795">
|
|
|
+<td><a id="l795" class='ln'>795</a></td><td> <a id="795c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="795c29" class="tk">S</a>, 5, 0.0);</td></tr>
|
|
|
+<tr name="796" id="796">
|
|
|
+<td><a id="l796" class='ln'>796</a></td><td> <a id="796c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="796c28" class="tk">S</a>, 5, <a id="796c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="797" id="797">
|
|
|
+<td><a id="l797" class='ln'>797</a></td><td></td></tr>
|
|
|
+<tr name="798" id="798">
|
|
|
+<td><a id="l798" class='ln'>798</a></td><td> <span class="ct">/* outport number: 6 */</span></td></tr>
|
|
|
+<tr name="799" id="799">
|
|
|
+<td><a id="l799" class='ln'>799</a></td><td> <span class="kw">if</span> (<a id="799c7" class="tk">!</a><a id="799c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="799c39" class="tk">S</a>, 6, 1))</td></tr>
|
|
|
+<tr name="800" id="800">
|
|
|
+<td><a id="l800" class='ln'>800</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="801" id="801">
|
|
|
+<td><a id="l801" class='ln'>801</a></td><td> <span class="kw">if</span> (<a id="801c7" class="tk">ssGetSimMode</a>(<a id="801c20" class="tk">S</a>) <a id="801c23" class="tk">!=</a> <a id="801c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="802" id="802">
|
|
|
+<td><a id="l802" class='ln'>802</a></td><td> <a id="802c5" class="tk">ssSetOutputPortDataType</a>(<a id="802c29" class="tk">S</a>, 6, <a id="802c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="803" id="803">
|
|
|
+<td><a id="l803" class='ln'>803</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="804" id="804">
|
|
|
+<td><a id="l804" class='ln'>804</a></td><td></td></tr>
|
|
|
+<tr name="805" id="805">
|
|
|
+<td><a id="l805" class='ln'>805</a></td><td> <a id="805c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="805c29" class="tk">S</a>, 6, 5.0E-7);</td></tr>
|
|
|
+<tr name="806" id="806">
|
|
|
+<td><a id="l806" class='ln'>806</a></td><td> <a id="806c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="806c29" class="tk">S</a>, 6, 0.0);</td></tr>
|
|
|
+<tr name="807" id="807">
|
|
|
+<td><a id="l807" class='ln'>807</a></td><td> <a id="807c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="807c28" class="tk">S</a>, 6, <a id="807c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="808" id="808">
|
|
|
+<td><a id="l808" class='ln'>808</a></td><td></td></tr>
|
|
|
+<tr name="809" id="809">
|
|
|
+<td><a id="l809" class='ln'>809</a></td><td> <span class="ct">/* outport number: 7 */</span></td></tr>
|
|
|
+<tr name="810" id="810">
|
|
|
+<td><a id="l810" class='ln'>810</a></td><td> <span class="kw">if</span> (<a id="810c7" class="tk">!</a><a id="810c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="810c39" class="tk">S</a>, 7, 1))</td></tr>
|
|
|
+<tr name="811" id="811">
|
|
|
+<td><a id="l811" class='ln'>811</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="812" id="812">
|
|
|
+<td><a id="l812" class='ln'>812</a></td><td> <span class="kw">if</span> (<a id="812c7" class="tk">ssGetSimMode</a>(<a id="812c20" class="tk">S</a>) <a id="812c23" class="tk">!=</a> <a id="812c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="813" id="813">
|
|
|
+<td><a id="l813" class='ln'>813</a></td><td> <a id="813c5" class="tk">ssSetOutputPortDataType</a>(<a id="813c29" class="tk">S</a>, 7, <a id="813c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="814" id="814">
|
|
|
+<td><a id="l814" class='ln'>814</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="815" id="815">
|
|
|
+<td><a id="l815" class='ln'>815</a></td><td></td></tr>
|
|
|
+<tr name="816" id="816">
|
|
|
+<td><a id="l816" class='ln'>816</a></td><td> <a id="816c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="816c29" class="tk">S</a>, 7, 5.0E-7);</td></tr>
|
|
|
+<tr name="817" id="817">
|
|
|
+<td><a id="l817" class='ln'>817</a></td><td> <a id="817c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="817c29" class="tk">S</a>, 7, 0.0);</td></tr>
|
|
|
+<tr name="818" id="818">
|
|
|
+<td><a id="l818" class='ln'>818</a></td><td> <a id="818c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="818c28" class="tk">S</a>, 7, <a id="818c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="819" id="819">
|
|
|
+<td><a id="l819" class='ln'>819</a></td><td></td></tr>
|
|
|
+<tr name="820" id="820">
|
|
|
+<td><a id="l820" class='ln'>820</a></td><td> <span class="ct">/* outport number: 8 */</span></td></tr>
|
|
|
+<tr name="821" id="821">
|
|
|
+<td><a id="l821" class='ln'>821</a></td><td> <span class="kw">if</span> (<a id="821c7" class="tk">!</a><a id="821c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="821c39" class="tk">S</a>, 8, 1))</td></tr>
|
|
|
+<tr name="822" id="822">
|
|
|
+<td><a id="l822" class='ln'>822</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="823" id="823">
|
|
|
+<td><a id="l823" class='ln'>823</a></td><td> <span class="kw">if</span> (<a id="823c7" class="tk">ssGetSimMode</a>(<a id="823c20" class="tk">S</a>) <a id="823c23" class="tk">!=</a> <a id="823c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="824" id="824">
|
|
|
+<td><a id="l824" class='ln'>824</a></td><td> <a id="824c5" class="tk">ssSetOutputPortDataType</a>(<a id="824c29" class="tk">S</a>, 8, <a id="824c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="825" id="825">
|
|
|
+<td><a id="l825" class='ln'>825</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="826" id="826">
|
|
|
+<td><a id="l826" class='ln'>826</a></td><td></td></tr>
|
|
|
+<tr name="827" id="827">
|
|
|
+<td><a id="l827" class='ln'>827</a></td><td> <a id="827c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="827c29" class="tk">S</a>, 8, 5.0E-7);</td></tr>
|
|
|
+<tr name="828" id="828">
|
|
|
+<td><a id="l828" class='ln'>828</a></td><td> <a id="828c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="828c29" class="tk">S</a>, 8, 0.0);</td></tr>
|
|
|
+<tr name="829" id="829">
|
|
|
+<td><a id="l829" class='ln'>829</a></td><td> <a id="829c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="829c28" class="tk">S</a>, 8, <a id="829c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="830" id="830">
|
|
|
+<td><a id="l830" class='ln'>830</a></td><td></td></tr>
|
|
|
+<tr name="831" id="831">
|
|
|
+<td><a id="l831" class='ln'>831</a></td><td> <span class="ct">/* outport number: 9 */</span></td></tr>
|
|
|
+<tr name="832" id="832">
|
|
|
+<td><a id="l832" class='ln'>832</a></td><td> <span class="kw">if</span> (<a id="832c7" class="tk">!</a><a id="832c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="832c39" class="tk">S</a>, 9, 1))</td></tr>
|
|
|
+<tr name="833" id="833">
|
|
|
+<td><a id="l833" class='ln'>833</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="834" id="834">
|
|
|
+<td><a id="l834" class='ln'>834</a></td><td> <span class="kw">if</span> (<a id="834c7" class="tk">ssGetSimMode</a>(<a id="834c20" class="tk">S</a>) <a id="834c23" class="tk">!=</a> <a id="834c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="835" id="835">
|
|
|
+<td><a id="l835" class='ln'>835</a></td><td> <a id="835c5" class="tk">ssSetOutputPortDataType</a>(<a id="835c29" class="tk">S</a>, 9, <a id="835c35" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="836" id="836">
|
|
|
+<td><a id="l836" class='ln'>836</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="837" id="837">
|
|
|
+<td><a id="l837" class='ln'>837</a></td><td></td></tr>
|
|
|
+<tr name="838" id="838">
|
|
|
+<td><a id="l838" class='ln'>838</a></td><td> <a id="838c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="838c29" class="tk">S</a>, 9, 5.0E-7);</td></tr>
|
|
|
+<tr name="839" id="839">
|
|
|
+<td><a id="l839" class='ln'>839</a></td><td> <a id="839c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="839c29" class="tk">S</a>, 9, 0.0);</td></tr>
|
|
|
+<tr name="840" id="840">
|
|
|
+<td><a id="l840" class='ln'>840</a></td><td> <a id="840c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="840c28" class="tk">S</a>, 9, <a id="840c34" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="841" id="841">
|
|
|
+<td><a id="l841" class='ln'>841</a></td><td></td></tr>
|
|
|
+<tr name="842" id="842">
|
|
|
+<td><a id="l842" class='ln'>842</a></td><td> <span class="ct">/* outport number: 10 */</span></td></tr>
|
|
|
+<tr name="843" id="843">
|
|
|
+<td><a id="l843" class='ln'>843</a></td><td> <span class="kw">if</span> (<a id="843c7" class="tk">!</a><a id="843c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="843c39" class="tk">S</a>, 10, 1))</td></tr>
|
|
|
+<tr name="844" id="844">
|
|
|
+<td><a id="l844" class='ln'>844</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="845" id="845">
|
|
|
+<td><a id="l845" class='ln'>845</a></td><td> <span class="kw">if</span> (<a id="845c7" class="tk">ssGetSimMode</a>(<a id="845c20" class="tk">S</a>) <a id="845c23" class="tk">!=</a> <a id="845c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="846" id="846">
|
|
|
+<td><a id="l846" class='ln'>846</a></td><td> <a id="846c5" class="tk">ssSetOutputPortDataType</a>(<a id="846c29" class="tk">S</a>, 10, <a id="846c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="847" id="847">
|
|
|
+<td><a id="l847" class='ln'>847</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="848" id="848">
|
|
|
+<td><a id="l848" class='ln'>848</a></td><td></td></tr>
|
|
|
+<tr name="849" id="849">
|
|
|
+<td><a id="l849" class='ln'>849</a></td><td> <a id="849c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="849c29" class="tk">S</a>, 10, 5.0E-7);</td></tr>
|
|
|
+<tr name="850" id="850">
|
|
|
+<td><a id="l850" class='ln'>850</a></td><td> <a id="850c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="850c29" class="tk">S</a>, 10, 0.0);</td></tr>
|
|
|
+<tr name="851" id="851">
|
|
|
+<td><a id="l851" class='ln'>851</a></td><td> <a id="851c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="851c28" class="tk">S</a>, 10, <a id="851c35" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="852" id="852">
|
|
|
+<td><a id="l852" class='ln'>852</a></td><td></td></tr>
|
|
|
+<tr name="853" id="853">
|
|
|
+<td><a id="l853" class='ln'>853</a></td><td> <span class="ct">/* outport number: 11 */</span></td></tr>
|
|
|
+<tr name="854" id="854">
|
|
|
+<td><a id="l854" class='ln'>854</a></td><td> <span class="kw">if</span> (<a id="854c7" class="tk">!</a><a id="854c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="854c39" class="tk">S</a>, 11, 1))</td></tr>
|
|
|
+<tr name="855" id="855">
|
|
|
+<td><a id="l855" class='ln'>855</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="856" id="856">
|
|
|
+<td><a id="l856" class='ln'>856</a></td><td> <span class="kw">if</span> (<a id="856c7" class="tk">ssGetSimMode</a>(<a id="856c20" class="tk">S</a>) <a id="856c23" class="tk">!=</a> <a id="856c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="857" id="857">
|
|
|
+<td><a id="l857" class='ln'>857</a></td><td> <a id="857c5" class="tk">ssSetOutputPortDataType</a>(<a id="857c29" class="tk">S</a>, 11, <a id="857c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="858" id="858">
|
|
|
+<td><a id="l858" class='ln'>858</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="859" id="859">
|
|
|
+<td><a id="l859" class='ln'>859</a></td><td></td></tr>
|
|
|
+<tr name="860" id="860">
|
|
|
+<td><a id="l860" class='ln'>860</a></td><td> <a id="860c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="860c29" class="tk">S</a>, 11, 5.0E-7);</td></tr>
|
|
|
+<tr name="861" id="861">
|
|
|
+<td><a id="l861" class='ln'>861</a></td><td> <a id="861c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="861c29" class="tk">S</a>, 11, 0.0);</td></tr>
|
|
|
+<tr name="862" id="862">
|
|
|
+<td><a id="l862" class='ln'>862</a></td><td> <a id="862c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="862c28" class="tk">S</a>, 11, <a id="862c35" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="863" id="863">
|
|
|
+<td><a id="l863" class='ln'>863</a></td><td></td></tr>
|
|
|
+<tr name="864" id="864">
|
|
|
+<td><a id="l864" class='ln'>864</a></td><td> <span class="ct">/* outport number: 12 */</span></td></tr>
|
|
|
+<tr name="865" id="865">
|
|
|
+<td><a id="l865" class='ln'>865</a></td><td> <span class="kw">if</span> (<a id="865c7" class="tk">!</a><a id="865c8" class="tk">ssSetOutputPortVectorDimension</a>(<a id="865c39" class="tk">S</a>, 12, 1))</td></tr>
|
|
|
+<tr name="866" id="866">
|
|
|
+<td><a id="l866" class='ln'>866</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="867" id="867">
|
|
|
+<td><a id="l867" class='ln'>867</a></td><td> <span class="kw">if</span> (<a id="867c7" class="tk">ssGetSimMode</a>(<a id="867c20" class="tk">S</a>) <a id="867c23" class="tk">!=</a> <a id="867c26" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="868" id="868">
|
|
|
+<td><a id="l868" class='ln'>868</a></td><td> <a id="868c5" class="tk">ssSetOutputPortDataType</a>(<a id="868c29" class="tk">S</a>, 12, <a id="868c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="869" id="869">
|
|
|
+<td><a id="l869" class='ln'>869</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="870" id="870">
|
|
|
+<td><a id="l870" class='ln'>870</a></td><td></td></tr>
|
|
|
+<tr name="871" id="871">
|
|
|
+<td><a id="l871" class='ln'>871</a></td><td> <a id="871c3" class="tk">ssSetOutputPortSampleTime</a>(<a id="871c29" class="tk">S</a>, 12, 5.0E-7);</td></tr>
|
|
|
+<tr name="872" id="872">
|
|
|
+<td><a id="l872" class='ln'>872</a></td><td> <a id="872c3" class="tk">ssSetOutputPortOffsetTime</a>(<a id="872c29" class="tk">S</a>, 12, 0.0);</td></tr>
|
|
|
+<tr name="873" id="873">
|
|
|
+<td><a id="l873" class='ln'>873</a></td><td> <a id="873c3" class="tk">ssSetOutputPortOptimOpts</a>(<a id="873c28" class="tk">S</a>, 12, <a id="873c35" class="tk">SS_REUSABLE_AND_LOCAL</a>);</td></tr>
|
|
|
+<tr name="874" id="874">
|
|
|
+<td><a id="l874" class='ln'>874</a></td><td></td></tr>
|
|
|
+<tr name="875" id="875">
|
|
|
+<td><a id="l875" class='ln'>875</a></td><td> <span class="ct">/* Number of input ports */</span></td></tr>
|
|
|
+<tr name="876" id="876">
|
|
|
+<td><a id="l876" class='ln'>876</a></td><td> <span class="kw">if</span> (<a id="876c7" class="tk">!</a><a id="876c8" class="tk">ssSetNumInputPorts</a>(<a id="876c27" class="tk">S</a>, 3))</td></tr>
|
|
|
+<tr name="877" id="877">
|
|
|
+<td><a id="l877" class='ln'>877</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="878" id="878">
|
|
|
+<td><a id="l878" class='ln'>878</a></td><td></td></tr>
|
|
|
+<tr name="879" id="879">
|
|
|
+<td><a id="l879" class='ln'>879</a></td><td> <span class="ct">/* inport number: 0 */</span></td></tr>
|
|
|
+<tr name="880" id="880">
|
|
|
+<td><a id="l880" class='ln'>880</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="881" id="881">
|
|
|
+<td><a id="l881" class='ln'>881</a></td><td> <span class="kw">if</span> (<a id="881c9" class="tk">!</a><a id="881c10" class="tk">ssSetInputPortVectorDimension</a>(<a id="881c40" class="tk">S</a>, 0, 6))</td></tr>
|
|
|
+<tr name="882" id="882">
|
|
|
+<td><a id="l882" class='ln'>882</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="883" id="883">
|
|
|
+<td><a id="l883" class='ln'>883</a></td><td> <span class="kw">if</span> (<a id="883c9" class="tk">ssGetSimMode</a>(<a id="883c22" class="tk">S</a>) <a id="883c25" class="tk">!=</a> <a id="883c28" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="884" id="884">
|
|
|
+<td><a id="l884" class='ln'>884</a></td><td> <a id="884c7" class="tk">ssSetInputPortDataType</a>(<a id="884c30" class="tk">S</a>, 0, <a id="884c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="885" id="885">
|
|
|
+<td><a id="l885" class='ln'>885</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="886" id="886">
|
|
|
+<td><a id="l886" class='ln'>886</a></td><td></td></tr>
|
|
|
+<tr name="887" id="887">
|
|
|
+<td><a id="l887" class='ln'>887</a></td><td> <a id="887c5" class="tk">ssSetInputPortSampleTime</a>(<a id="887c30" class="tk">S</a>, 0, 5.0E-7);</td></tr>
|
|
|
+<tr name="888" id="888">
|
|
|
+<td><a id="l888" class='ln'>888</a></td><td> <a id="888c5" class="tk">ssSetInputPortOffsetTime</a>(<a id="888c30" class="tk">S</a>, 0, 0.0);</td></tr>
|
|
|
+<tr name="889" id="889">
|
|
|
+<td><a id="l889" class='ln'>889</a></td><td> <a id="889c5" class="tk">ssSetInputPortOverWritable</a>(<a id="889c32" class="tk">S</a>, 0, 0);</td></tr>
|
|
|
+<tr name="890" id="890">
|
|
|
+<td><a id="l890" class='ln'>890</a></td><td> <a id="890c5" class="tk">ssSetInputPortOptimOpts</a>(<a id="890c29" class="tk">S</a>, 0, <a id="890c35" class="tk">SS_NOT_REUSABLE_AND_GLOBAL</a>);</td></tr>
|
|
|
+<tr name="891" id="891">
|
|
|
+<td><a id="l891" class='ln'>891</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="892" id="892">
|
|
|
+<td><a id="l892" class='ln'>892</a></td><td></td></tr>
|
|
|
+<tr name="893" id="893">
|
|
|
+<td><a id="l893" class='ln'>893</a></td><td> <span class="ct">/* inport number: 1 */</span></td></tr>
|
|
|
+<tr name="894" id="894">
|
|
|
+<td><a id="l894" class='ln'>894</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="895" id="895">
|
|
|
+<td><a id="l895" class='ln'>895</a></td><td> <span class="kw">if</span> (<a id="895c9" class="tk">!</a><a id="895c10" class="tk">ssSetInputPortVectorDimension</a>(<a id="895c40" class="tk">S</a>, 1, 1))</td></tr>
|
|
|
+<tr name="896" id="896">
|
|
|
+<td><a id="l896" class='ln'>896</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="897" id="897">
|
|
|
+<td><a id="l897" class='ln'>897</a></td><td> <span class="kw">if</span> (<a id="897c9" class="tk">ssGetSimMode</a>(<a id="897c22" class="tk">S</a>) <a id="897c25" class="tk">!=</a> <a id="897c28" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="898" id="898">
|
|
|
+<td><a id="l898" class='ln'>898</a></td><td> <a id="898c7" class="tk">ssSetInputPortDataType</a>(<a id="898c30" class="tk">S</a>, 1, <a id="898c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="899" id="899">
|
|
|
+<td><a id="l899" class='ln'>899</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="900" id="900">
|
|
|
+<td><a id="l900" class='ln'>900</a></td><td></td></tr>
|
|
|
+<tr name="901" id="901">
|
|
|
+<td><a id="l901" class='ln'>901</a></td><td> <a id="901c5" class="tk">ssSetInputPortDirectFeedThrough</a>(<a id="901c37" class="tk">S</a>, 1, 1);</td></tr>
|
|
|
+<tr name="902" id="902">
|
|
|
+<td><a id="l902" class='ln'>902</a></td><td> <a id="902c5" class="tk">ssSetInputPortSampleTime</a>(<a id="902c30" class="tk">S</a>, 1, 5.0E-7);</td></tr>
|
|
|
+<tr name="903" id="903">
|
|
|
+<td><a id="l903" class='ln'>903</a></td><td> <a id="903c5" class="tk">ssSetInputPortOffsetTime</a>(<a id="903c30" class="tk">S</a>, 1, 0.0);</td></tr>
|
|
|
+<tr name="904" id="904">
|
|
|
+<td><a id="l904" class='ln'>904</a></td><td> <a id="904c5" class="tk">ssSetInputPortOverWritable</a>(<a id="904c32" class="tk">S</a>, 1, 0);</td></tr>
|
|
|
+<tr name="905" id="905">
|
|
|
+<td><a id="l905" class='ln'>905</a></td><td> <a id="905c5" class="tk">ssSetInputPortOptimOpts</a>(<a id="905c29" class="tk">S</a>, 1, <a id="905c35" class="tk">SS_NOT_REUSABLE_AND_GLOBAL</a>);</td></tr>
|
|
|
+<tr name="906" id="906">
|
|
|
+<td><a id="l906" class='ln'>906</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="907" id="907">
|
|
|
+<td><a id="l907" class='ln'>907</a></td><td></td></tr>
|
|
|
+<tr name="908" id="908">
|
|
|
+<td><a id="l908" class='ln'>908</a></td><td> <span class="ct">/* inport number: 2 */</span></td></tr>
|
|
|
+<tr name="909" id="909">
|
|
|
+<td><a id="l909" class='ln'>909</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="910" id="910">
|
|
|
+<td><a id="l910" class='ln'>910</a></td><td> <span class="kw">if</span> (<a id="910c9" class="tk">!</a><a id="910c10" class="tk">ssSetInputPortVectorDimension</a>(<a id="910c40" class="tk">S</a>, 2, 1))</td></tr>
|
|
|
+<tr name="911" id="911">
|
|
|
+<td><a id="l911" class='ln'>911</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="912" id="912">
|
|
|
+<td><a id="l912" class='ln'>912</a></td><td> <span class="kw">if</span> (<a id="912c9" class="tk">ssGetSimMode</a>(<a id="912c22" class="tk">S</a>) <a id="912c25" class="tk">!=</a> <a id="912c28" class="tk">SS_SIMMODE_SIZES_CALL_ONLY</a>) <span class="br">{</span></td></tr>
|
|
|
+<tr name="913" id="913">
|
|
|
+<td><a id="l913" class='ln'>913</a></td><td> <a id="913c7" class="tk">ssSetInputPortDataType</a>(<a id="913c30" class="tk">S</a>, 2, <a id="913c36" class="tk">SS_DOUBLE</a>);</td></tr>
|
|
|
+<tr name="914" id="914">
|
|
|
+<td><a id="l914" class='ln'>914</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="915" id="915">
|
|
|
+<td><a id="l915" class='ln'>915</a></td><td></td></tr>
|
|
|
+<tr name="916" id="916">
|
|
|
+<td><a id="l916" class='ln'>916</a></td><td> <a id="916c5" class="tk">ssSetInputPortDirectFeedThrough</a>(<a id="916c37" class="tk">S</a>, 2, 1);</td></tr>
|
|
|
+<tr name="917" id="917">
|
|
|
+<td><a id="l917" class='ln'>917</a></td><td> <a id="917c5" class="tk">ssSetInputPortSampleTime</a>(<a id="917c30" class="tk">S</a>, 2, 5.0E-7);</td></tr>
|
|
|
+<tr name="918" id="918">
|
|
|
+<td><a id="l918" class='ln'>918</a></td><td> <a id="918c5" class="tk">ssSetInputPortOffsetTime</a>(<a id="918c30" class="tk">S</a>, 2, 0.0);</td></tr>
|
|
|
+<tr name="919" id="919">
|
|
|
+<td><a id="l919" class='ln'>919</a></td><td> <a id="919c5" class="tk">ssSetInputPortOverWritable</a>(<a id="919c32" class="tk">S</a>, 2, 0);</td></tr>
|
|
|
+<tr name="920" id="920">
|
|
|
+<td><a id="l920" class='ln'>920</a></td><td> <a id="920c5" class="tk">ssSetInputPortOptimOpts</a>(<a id="920c29" class="tk">S</a>, 2, <a id="920c35" class="tk">SS_NOT_REUSABLE_AND_GLOBAL</a>);</td></tr>
|
|
|
+<tr name="921" id="921">
|
|
|
+<td><a id="l921" class='ln'>921</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="922" id="922">
|
|
|
+<td><a id="l922" class='ln'>922</a></td><td></td></tr>
|
|
|
+<tr name="923" id="923">
|
|
|
+<td><a id="l923" class='ln'>923</a></td><td> <a id="923c3" class="tk">ssSetRTWGeneratedSFcn</a>(<a id="923c25" class="tk">S</a>, 1); <span class="ct">/* Generated S-function */</span></td></tr>
|
|
|
+<tr name="924" id="924">
|
|
|
+<td><a id="l924" class='ln'>924</a></td><td></td></tr>
|
|
|
+<tr name="925" id="925">
|
|
|
+<td><a id="l925" class='ln'>925</a></td><td> <span class="ct">/* DWork */</span></td></tr>
|
|
|
+<tr name="926" id="926">
|
|
|
+<td><a id="l926" class='ln'>926</a></td><td> <span class="kw">if</span> (<a id="926c7" class="tk">!</a><a id="926c8" class="tk">ssSetNumDWork</a>(<a id="926c22" class="tk">S</a>, 6)) <span class="br">{</span></td></tr>
|
|
|
+<tr name="927" id="927">
|
|
|
+<td><a id="l927" class='ln'>927</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="928" id="928">
|
|
|
+<td><a id="l928" class='ln'>928</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="929" id="929">
|
|
|
+<td><a id="l929" class='ln'>929</a></td><td></td></tr>
|
|
|
+<tr name="930" id="930">
|
|
|
+<td><a id="l930" class='ln'>930</a></td><td> <span class="ct">/* '<S11>/Discrete-Time Integrator1': DSTATE */</span></td></tr>
|
|
|
+<tr name="931" id="931">
|
|
|
+<td><a id="l931" class='ln'>931</a></td><td> <a id="931c3" class="tk">ssSetDWorkName</a>(<a id="931c18" class="tk">S</a>, 0, "DWORK0");</td></tr>
|
|
|
+<tr name="932" id="932">
|
|
|
+<td><a id="l932" class='ln'>932</a></td><td> <a id="932c3" class="tk">ssSetDWorkWidth</a>(<a id="932c19" class="tk">S</a>, 0, 1);</td></tr>
|
|
|
+<tr name="933" id="933">
|
|
|
+<td><a id="l933" class='ln'>933</a></td><td> <a id="933c3" class="tk">ssSetDWorkUsedAsDState</a>(<a id="933c26" class="tk">S</a>, 0, 1);</td></tr>
|
|
|
+<tr name="934" id="934">
|
|
|
+<td><a id="l934" class='ln'>934</a></td><td></td></tr>
|
|
|
+<tr name="935" id="935">
|
|
|
+<td><a id="l935" class='ln'>935</a></td><td> <span class="ct">/* '<S18>/Discrete-Time Integrator': DSTATE */</span></td></tr>
|
|
|
+<tr name="936" id="936">
|
|
|
+<td><a id="l936" class='ln'>936</a></td><td> <a id="936c3" class="tk">ssSetDWorkName</a>(<a id="936c18" class="tk">S</a>, 1, "DWORK1");</td></tr>
|
|
|
+<tr name="937" id="937">
|
|
|
+<td><a id="l937" class='ln'>937</a></td><td> <a id="937c3" class="tk">ssSetDWorkWidth</a>(<a id="937c19" class="tk">S</a>, 1, 1);</td></tr>
|
|
|
+<tr name="938" id="938">
|
|
|
+<td><a id="l938" class='ln'>938</a></td><td> <a id="938c3" class="tk">ssSetDWorkUsedAsDState</a>(<a id="938c26" class="tk">S</a>, 1, 1);</td></tr>
|
|
|
+<tr name="939" id="939">
|
|
|
+<td><a id="l939" class='ln'>939</a></td><td></td></tr>
|
|
|
+<tr name="940" id="940">
|
|
|
+<td><a id="l940" class='ln'>940</a></td><td> <span class="ct">/* '<S17>/Discrete-Time Integrator': DSTATE */</span></td></tr>
|
|
|
+<tr name="941" id="941">
|
|
|
+<td><a id="l941" class='ln'>941</a></td><td> <a id="941c3" class="tk">ssSetDWorkName</a>(<a id="941c18" class="tk">S</a>, 2, "DWORK2");</td></tr>
|
|
|
+<tr name="942" id="942">
|
|
|
+<td><a id="l942" class='ln'>942</a></td><td> <a id="942c3" class="tk">ssSetDWorkWidth</a>(<a id="942c19" class="tk">S</a>, 2, 1);</td></tr>
|
|
|
+<tr name="943" id="943">
|
|
|
+<td><a id="l943" class='ln'>943</a></td><td> <a id="943c3" class="tk">ssSetDWorkUsedAsDState</a>(<a id="943c26" class="tk">S</a>, 2, 1);</td></tr>
|
|
|
+<tr name="944" id="944">
|
|
|
+<td><a id="l944" class='ln'>944</a></td><td></td></tr>
|
|
|
+<tr name="945" id="945">
|
|
|
+<td><a id="l945" class='ln'>945</a></td><td> <span class="ct">/* '<S4>/Unit Delay': DSTATE */</span></td></tr>
|
|
|
+<tr name="946" id="946">
|
|
|
+<td><a id="l946" class='ln'>946</a></td><td> <a id="946c3" class="tk">ssSetDWorkName</a>(<a id="946c18" class="tk">S</a>, 3, "DWORK3");</td></tr>
|
|
|
+<tr name="947" id="947">
|
|
|
+<td><a id="l947" class='ln'>947</a></td><td> <a id="947c3" class="tk">ssSetDWorkWidth</a>(<a id="947c19" class="tk">S</a>, 3, 1);</td></tr>
|
|
|
+<tr name="948" id="948">
|
|
|
+<td><a id="l948" class='ln'>948</a></td><td> <a id="948c3" class="tk">ssSetDWorkUsedAsDState</a>(<a id="948c26" class="tk">S</a>, 3, 1);</td></tr>
|
|
|
+<tr name="949" id="949">
|
|
|
+<td><a id="l949" class='ln'>949</a></td><td></td></tr>
|
|
|
+<tr name="950" id="950">
|
|
|
+<td><a id="l950" class='ln'>950</a></td><td> <span class="ct">/* '<S20>/State-Space': PWORK */</span></td></tr>
|
|
|
+<tr name="951" id="951">
|
|
|
+<td><a id="l951" class='ln'>951</a></td><td> <a id="951c3" class="tk">ssSetDWorkName</a>(<a id="951c18" class="tk">S</a>, 4, "DWORK4");</td></tr>
|
|
|
+<tr name="952" id="952">
|
|
|
+<td><a id="l952" class='ln'>952</a></td><td> <a id="952c3" class="tk">ssSetDWorkWidth</a>(<a id="952c19" class="tk">S</a>, 4, 24);</td></tr>
|
|
|
+<tr name="953" id="953">
|
|
|
+<td><a id="l953" class='ln'>953</a></td><td> <a id="953c3" class="tk">ssSetDWorkDataType</a>(<a id="953c22" class="tk">S</a>, 4, <a id="953c28" class="tk">SS_POINTER</a>);</td></tr>
|
|
|
+<tr name="954" id="954">
|
|
|
+<td><a id="l954" class='ln'>954</a></td><td></td></tr>
|
|
|
+<tr name="955" id="955">
|
|
|
+<td><a id="l955" class='ln'>955</a></td><td> <span class="ct">/* '<S20>/State-Space': IWORK */</span></td></tr>
|
|
|
+<tr name="956" id="956">
|
|
|
+<td><a id="l956" class='ln'>956</a></td><td> <a id="956c3" class="tk">ssSetDWorkName</a>(<a id="956c18" class="tk">S</a>, 5, "DWORK5");</td></tr>
|
|
|
+<tr name="957" id="957">
|
|
|
+<td><a id="l957" class='ln'>957</a></td><td> <a id="957c3" class="tk">ssSetDWorkWidth</a>(<a id="957c19" class="tk">S</a>, 5, 11);</td></tr>
|
|
|
+<tr name="958" id="958">
|
|
|
+<td><a id="l958" class='ln'>958</a></td><td> <a id="958c3" class="tk">ssSetDWorkDataType</a>(<a id="958c22" class="tk">S</a>, 5, <a id="958c28" class="tk">SS_INTEGER</a>);</td></tr>
|
|
|
+<tr name="959" id="959">
|
|
|
+<td><a id="l959" class='ln'>959</a></td><td></td></tr>
|
|
|
+<tr name="960" id="960">
|
|
|
+<td><a id="l960" class='ln'>960</a></td><td> <span class="ct">/* Tunable Parameters */</span></td></tr>
|
|
|
+<tr name="961" id="961">
|
|
|
+<td><a id="l961" class='ln'>961</a></td><td> <a id="961c3" class="tk">ssSetNumSFcnParams</a>(<a id="961c22" class="tk">S</a>, 0);</td></tr>
|
|
|
+<tr name="962" id="962">
|
|
|
+<td><a id="l962" class='ln'>962</a></td><td></td></tr>
|
|
|
+<tr name="963" id="963">
|
|
|
+<td><a id="l963" class='ln'>963</a></td><td> <span class="ct">/* Number of expected parameters */</span></td></tr>
|
|
|
+<tr name="964" id="964">
|
|
|
+<td><a id="l964" class='ln'>964</a></td><td><span class="pp">#if</span> <a id="964c5" class="tk">defined</a>(<a id="964c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="965" id="965">
|
|
|
+<td><a id="l965" class='ln'>965</a></td><td></td></tr>
|
|
|
+<tr name="966" id="966">
|
|
|
+<td><a id="l966" class='ln'>966</a></td><td> <span class="kw">if</span> (<a id="966c7" class="tk">ssGetNumSFcnParams</a>(<a id="966c26" class="tk">S</a>) <a id="966c29" class="tk">==</a> <a id="966c32" class="tk">ssGetSFcnParamsCount</a>(<a id="966c53" class="tk">S</a>)) <span class="br">{</span></td></tr>
|
|
|
+<tr name="967" id="967">
|
|
|
+<td><a id="l967" class='ln'>967</a></td><td></td></tr>
|
|
|
+<tr name="968" id="968">
|
|
|
+<td><a id="l968" class='ln'>968</a></td><td><span class="pp">#if</span> <a id="968c5" class="tk">defined</a>(<a id="968c13" class="tk">MDL_CHECK_PARAMETERS</a>)</td></tr>
|
|
|
+<tr name="969" id="969">
|
|
|
+<td><a id="l969" class='ln'>969</a></td><td></td></tr>
|
|
|
+<tr name="970" id="970">
|
|
|
+<td><a id="l970" class='ln'>970</a></td><td> <a id="970c5" class="tk">mdlCheckParameters</a>(<a id="970c24" class="tk">S</a>);</td></tr>
|
|
|
+<tr name="971" id="971">
|
|
|
+<td><a id="l971" class='ln'>971</a></td><td></td></tr>
|
|
|
+<tr name="972" id="972">
|
|
|
+<td><a id="l972" class='ln'>972</a></td><td><span class="pp">#endif</span> <span class="ct">/* MDL_CHECK_PARAMETERS */</span></td></tr>
|
|
|
+<tr name="973" id="973">
|
|
|
+<td><a id="l973" class='ln'>973</a></td><td></td></tr>
|
|
|
+<tr name="974" id="974">
|
|
|
+<td><a id="l974" class='ln'>974</a></td><td> <span class="kw">if</span> (<a id="974c9" class="tk">ssGetErrorStatus</a>(<a id="974c26" class="tk">S</a>) <a id="974c29" class="tk">!=</a> (<a id="974c33" class="tk">NULL</a>) ) <span class="br">{</span></td></tr>
|
|
|
+<tr name="975" id="975">
|
|
|
+<td><a id="l975" class='ln'>975</a></td><td> <span class="kw">return</span>;</td></tr>
|
|
|
+<tr name="976" id="976">
|
|
|
+<td><a id="l976" class='ln'>976</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="977" id="977">
|
|
|
+<td><a id="l977" class='ln'>977</a></td><td> <span class="br">}</span> <span class="kw">else</span> <span class="br">{</span></td></tr>
|
|
|
+<tr name="978" id="978">
|
|
|
+<td><a id="l978" class='ln'>978</a></td><td> <span class="kw">return</span>; <span class="ct">/* Parameter mismatch will be reported by Simulink */</span></td></tr>
|
|
|
+<tr name="979" id="979">
|
|
|
+<td><a id="l979" class='ln'>979</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="980" id="980">
|
|
|
+<td><a id="l980" class='ln'>980</a></td><td></td></tr>
|
|
|
+<tr name="981" id="981">
|
|
|
+<td><a id="l981" class='ln'>981</a></td><td><span class="pp">#endif</span> <span class="ct">/* MATLAB_MEX_FILE */</span></td></tr>
|
|
|
+<tr name="982" id="982">
|
|
|
+<td><a id="l982" class='ln'>982</a></td><td></td></tr>
|
|
|
+<tr name="983" id="983">
|
|
|
+<td><a id="l983" class='ln'>983</a></td><td> <span class="ct">/* Options */</span></td></tr>
|
|
|
+<tr name="984" id="984">
|
|
|
+<td><a id="l984" class='ln'>984</a></td><td> <a id="984c3" class="tk">ssSetOptions</a>(<a id="984c16" class="tk">S</a>, (<a id="984c20" class="tk">SS_OPTION_RUNTIME_EXCEPTION_FREE_CODE</a> <a id="984c58" class="tk">|</a></td></tr>
|
|
|
+<tr name="985" id="985">
|
|
|
+<td><a id="l985" class='ln'>985</a></td><td> <a id="985c20" class="tk">SS_OPTION_PORT_SAMPLE_TIMES_ASSIGNED</a> ));</td></tr>
|
|
|
+<tr name="986" id="986">
|
|
|
+<td><a id="l986" class='ln'>986</a></td><td></td></tr>
|
|
|
+<tr name="987" id="987">
|
|
|
+<td><a id="l987" class='ln'>987</a></td><td><span class="pp">#if</span> <a id="987c5" class="tk">SS_SFCN_FOR_SIM</a></td></tr>
|
|
|
+<tr name="988" id="988">
|
|
|
+<td><a id="l988" class='ln'>988</a></td><td></td></tr>
|
|
|
+<tr name="989" id="989">
|
|
|
+<td><a id="l989" class='ln'>989</a></td><td> <span class="br">{</span></td></tr>
|
|
|
+<tr name="990" id="990">
|
|
|
+<td><a id="l990" class='ln'>990</a></td><td> <a id="990c5" class="tk">ssSupportsMultipleExecInstances</a>(<a id="990c37" class="tk">S</a>, true);</td></tr>
|
|
|
+<tr name="991" id="991">
|
|
|
+<td><a id="l991" class='ln'>991</a></td><td> <a id="991c5" class="tk">ssHasStateInsideForEachSS</a>(<a id="991c31" class="tk">S</a>, false);</td></tr>
|
|
|
+<tr name="992" id="992">
|
|
|
+<td><a id="l992" class='ln'>992</a></td><td> <span class="br">}</span></td></tr>
|
|
|
+<tr name="993" id="993">
|
|
|
+<td><a id="l993" class='ln'>993</a></td><td></td></tr>
|
|
|
+<tr name="994" id="994">
|
|
|
+<td><a id="l994" class='ln'>994</a></td><td><span class="pp">#endif</span></td></tr>
|
|
|
+<tr name="995" id="995">
|
|
|
+<td><a id="l995" class='ln'>995</a></td><td></td></tr>
|
|
|
+<tr name="996" id="996">
|
|
|
+<td><a id="l996" class='ln'>996</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="997" id="997">
|
|
|
+<td><a id="l997" class='ln'>997</a></td><td></td></tr>
|
|
|
+<tr name="998" id="998">
|
|
|
+<td><a id="l998" class='ln'>998</a></td><td><span class="ct">/* Function to initialize sample times. */</span></td></tr>
|
|
|
+<tr name="999" id="999">
|
|
|
+<td><a id="l999" class='ln'>999</a></td><td><span class="kw">static</span> <span class="kw">void</span> <a id="999c13" class="tk">mdlInitializeSampleTimes</a>(<a id="999c38" class="tk">SimStruct</a> <a id="999c48" class="tk">*</a><a id="999c49" class="tk">S</a>)</td></tr>
|
|
|
+<tr name="1000" id="1000">
|
|
|
+<td><a id="l1000" class='ln'>1000</a></td><td><span class="br">{</span></td></tr>
|
|
|
+<tr name="1001" id="1001">
|
|
|
+<td><a id="l1001" class='ln'>1001</a></td><td> <span class="ct">/* task periods */</span></td></tr>
|
|
|
+<tr name="1002" id="1002">
|
|
|
+<td><a id="l1002" class='ln'>1002</a></td><td> <a id="1002c3" class="tk">ssSetSampleTime</a>(<a id="1002c19" class="tk">S</a>, 0, 5.0E-7);</td></tr>
|
|
|
+<tr name="1003" id="1003">
|
|
|
+<td><a id="l1003" class='ln'>1003</a></td><td></td></tr>
|
|
|
+<tr name="1004" id="1004">
|
|
|
+<td><a id="l1004" class='ln'>1004</a></td><td> <span class="ct">/* task offsets */</span></td></tr>
|
|
|
+<tr name="1005" id="1005">
|
|
|
+<td><a id="l1005" class='ln'>1005</a></td><td> <a id="1005c3" class="tk">ssSetOffsetTime</a>(<a id="1005c19" class="tk">S</a>, 0, 0.0);</td></tr>
|
|
|
+<tr name="1006" id="1006">
|
|
|
+<td><a id="l1006" class='ln'>1006</a></td><td><span class="br">}</span></td></tr>
|
|
|
+<tr name="1007" id="1007">
|
|
|
+<td><a id="l1007" class='ln'>1007</a></td><td></td></tr>
|
|
|
+<tr name="1008" id="1008">
|
|
|
+<td><a id="l1008" class='ln'>1008</a></td><td><span class="pp">#if</span> <a id="1008c5" class="tk">defined</a>(<a id="1008c13" class="tk">MATLAB_MEX_FILE</a>)</td></tr>
|
|
|
+<tr name="1009" id="1009">
|
|
|
+<td><a id="l1009" class='ln'>1009</a></td><td><span class="pp">#include "fixedpoint.c"</span></td></tr>
|
|
|
+<tr name="1010" id="1010">
|
|
|
+<td><a id="l1010" class='ln'>1010</a></td><td><span class="pp">#include "simulink.c"</span></td></tr>
|
|
|
+<tr name="1011" id="1011">
|
|
|
+<td><a id="l1011" class='ln'>1011</a></td><td><span class="pp">#else</span></td></tr>
|
|
|
+<tr name="1012" id="1012">
|
|
|
+<td><a id="l1012" class='ln'>1012</a></td><td><span class="pp">#undef</span> <a id="1012c8" class="tk">S_FUNCTION_NAME</a></td></tr>
|
|
|
+<tr name="1013" id="1013">
|
|
|
+<td><a id="l1013" class='ln'>1013</a></td><td><span class="pp">#define</span> <a id="1013c9" class="tk">S_FUNCTION_NAME</a> <a id="1013c40" class="tk">PMSM_Motor_TL3_sf</a></td></tr>
|
|
|
+<tr name="1014" id="1014">
|
|
|
+<td><a id="l1014" class='ln'>1014</a></td><td><span class="pp">#include "cg_sfun.h"</span></td></tr>
|
|
|
+<tr name="1015" id="1015">
|
|
|
+<td><a id="l1015" class='ln'>1015</a></td><td><span class="pp">#endif</span> <span class="ct">/* defined(MATLAB_MEX_FILE) */</span></td></tr>
|
|
|
+<tr name="1016" id="1016">
|
|
|
+<td><a id="l1016" class='ln'>1016</a></td><td></td></tr>
|
|
|
+</table>
|
|
|
+</pre>
|
|
|
+</body>
|
|
|
+</html>
|