| 1 | within ; |
|---|
| 2 | package ObsoleteModelica3 |
|---|
| 3 | "Library that contains components from Modelica Standard Library 2.2.2 that have been removed from version 3.0" |
|---|
| 4 | |
|---|
| 5 | annotation (uses(Modelica(version="3.0")), |
|---|
| 6 | Documentation(info="<html> |
|---|
| 7 | <p> |
|---|
| 8 | This package contains models and blocks from the Modelica Standard Library |
|---|
| 9 | version 2.2.2 that are no longer available in version 3.0. |
|---|
| 10 | The conversion script for version 3.0 changes references in existing |
|---|
| 11 | user models automatically to the models and blocks of package |
|---|
| 12 | ObsoleteModelica3. The user should <b>manually</b> replace all |
|---|
| 13 | references to ObsoleteModelica3 in his/her models to the models |
|---|
| 14 | that are recommended in the documentation of the respective model. |
|---|
| 15 | </p> |
|---|
| 16 | |
|---|
| 17 | <p> |
|---|
| 18 | In most cases, this means that a model with the name |
|---|
| 19 | \"ObsoleteModelica3.XXX\" should be renamed to \"Modelica.XXX\" (version 3.0) |
|---|
| 20 | and then a manual adaptation is needed. For example, a reference to |
|---|
| 21 | ObsoleteModelica3.Mechanics.MultiBody.Sensors.AbsoluteSensor |
|---|
| 22 | should be replaced by |
|---|
| 23 | Modelica.Mechanics.MultiBody.Sensors.AbsoluteSensor (version 3.0). |
|---|
| 24 | Since the design of the component has changed (e.g., several |
|---|
| 25 | optional connectors, and no longer one connector where all signals |
|---|
| 26 | are packed together), this requires some changes at the place where |
|---|
| 27 | the model is used (besides the renaming of the underlying class). |
|---|
| 28 | </p> |
|---|
| 29 | |
|---|
| 30 | <p> |
|---|
| 31 | The models in ObsoleteModelica3 are either not according to the Modelica Language |
|---|
| 32 | version 3.0 and higher, or the model was changed to get a better design. |
|---|
| 33 | In all cases, an automatic conversion to the new implementation |
|---|
| 34 | was not feasible, since too complicated. |
|---|
| 35 | </p> |
|---|
| 36 | |
|---|
| 37 | <p> |
|---|
| 38 | In order to easily detect obsolete models and blocks, all of them are specially |
|---|
| 39 | marked in the icon layer with a red box. |
|---|
| 40 | </p> |
|---|
| 41 | |
|---|
| 42 | <p> |
|---|
| 43 | Copyright © 2007-2008, Modelica Association. |
|---|
| 44 | </p> |
|---|
| 45 | <p> |
|---|
| 46 | <i>This Modelica package is <b>free</b> software; it can be redistributed and/or modified |
|---|
| 47 | under the terms of the <b>Modelica license</b>, see the license conditions |
|---|
| 48 | and the accompanying <b>disclaimer</b> |
|---|
| 49 | <a href=\"Modelica://Modelica.UsersGuide.ModelicaLicense\">here</a>.</i> |
|---|
| 50 | </p> |
|---|
| 51 | |
|---|
| 52 | </html>")); |
|---|
| 53 | |
|---|
| 54 | package Blocks |
|---|
| 55 | "Library of basic input/output control blocks (continuous, discrete, logical, table blocks)" |
|---|
| 56 | package Interfaces |
|---|
| 57 | "Library of connectors and partial models for input/output blocks" |
|---|
| 58 | connector RealSignal = Real "Real port (both input/output possible)" |
|---|
| 59 | annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.", |
|---|
| 60 | Documentation(info="<html> |
|---|
| 61 | <p> |
|---|
| 62 | Connector with one signal of type Real (no icon, no input/output prefix). |
|---|
| 63 | </p> |
|---|
| 64 | </html>")); |
|---|
| 65 | connector BooleanSignal = Boolean |
|---|
| 66 | "Boolean port (both input/output possible)" |
|---|
| 67 | annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.", |
|---|
| 68 | Documentation(info="<html> |
|---|
| 69 | <p> |
|---|
| 70 | Connector with one signal of type Boolean (no icon, no input/output prefix). |
|---|
| 71 | </p> |
|---|
| 72 | </html>")); |
|---|
| 73 | connector IntegerSignal = Integer |
|---|
| 74 | "Integer port (both input/output possible)" |
|---|
| 75 | annotation (__Dymola_obsolete="Connector is not valid according to Modelica 3, since input/output prefixes are missing. When using this connector, it is not possible to check for balanced models.", |
|---|
| 76 | Documentation(info="<html> |
|---|
| 77 | <p> |
|---|
| 78 | Connector with one signal of type Icon (no icon, no input/output prefix). |
|---|
| 79 | </p> |
|---|
| 80 | </html>")); |
|---|
| 81 | package Adaptors |
|---|
| 82 | "Obsolete package with components to send signals to a bus or receive signals from a bus (only for backward compatibility)" |
|---|
| 83 | model AdaptorReal |
|---|
| 84 | "Completely obsolete adaptor between 'old' and 'new' Real signal connectors (only for backward compatibility)" |
|---|
| 85 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 86 | ObsoleteModelica3.Blocks.Interfaces.RealSignal newReal |
|---|
| 87 | "Connector of Modelica version 2.1" annotation ( Hide=true, |
|---|
| 88 | Placement(transformation(extent={{100,-10},{120,10}}, rotation=0))); |
|---|
| 89 | RealPort oldReal(final n=1) "Connector of Modelica version 1.6" annotation (Placement( |
|---|
| 90 | transformation(extent={{-120,-10},{-100,10}}, rotation=0))); |
|---|
| 91 | |
|---|
| 92 | annotation(structurallyIncomplete, |
|---|
| 93 | __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed", |
|---|
| 94 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 95 | {100,100}}), graphics={ |
|---|
| 96 | Rectangle( |
|---|
| 97 | extent={{-100,40},{100,-40}}, |
|---|
| 98 | lineColor={0,0,255}, |
|---|
| 99 | fillColor={255,255,255}, |
|---|
| 100 | fillPattern=FillPattern.Solid), |
|---|
| 101 | Text( |
|---|
| 102 | extent={{-144,96},{144,46}}, |
|---|
| 103 | lineColor={0,0,0}, |
|---|
| 104 | textString=""), |
|---|
| 105 | Text( |
|---|
| 106 | extent={{-88,22},{88,-24}}, |
|---|
| 107 | lineColor={0,0,255}, |
|---|
| 108 | fillColor={191,0,0}, |
|---|
| 109 | fillPattern=FillPattern.Solid, |
|---|
| 110 | textString="adaptor"), |
|---|
| 111 | Text( |
|---|
| 112 | extent={{-216,-58},{36,-80}}, |
|---|
| 113 | lineColor={0,0,0}, |
|---|
| 114 | fillColor={255,255,255}, |
|---|
| 115 | fillPattern=FillPattern.Solid, |
|---|
| 116 | textString="port.signal")}), |
|---|
| 117 | Documentation(info="<html> |
|---|
| 118 | <p> |
|---|
| 119 | Completely obsolete adaptor between the Real signal connector |
|---|
| 120 | of version 1.6 and version ≥ 2.1 of the Modelica Standard Library. |
|---|
| 121 | This block is only provided for backward compatibility. |
|---|
| 122 | </p> |
|---|
| 123 | </html> |
|---|
| 124 | ")); |
|---|
| 125 | |
|---|
| 126 | protected |
|---|
| 127 | connector RealPort "Connector with signals of type Real" |
|---|
| 128 | parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true); |
|---|
| 129 | replaceable type SignalType = Real "type of signal"; |
|---|
| 130 | SignalType signal[n] "Real signals" annotation (Hide=true); |
|---|
| 131 | |
|---|
| 132 | end RealPort; |
|---|
| 133 | equation |
|---|
| 134 | newReal = oldReal.signal[1]; |
|---|
| 135 | end AdaptorReal; |
|---|
| 136 | |
|---|
| 137 | model AdaptorBoolean |
|---|
| 138 | "Completely obsolete adaptor between 'old' and 'new' Boolean signal connectors (only for backward compatibility)" |
|---|
| 139 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 140 | ObsoleteModelica3.Blocks.Interfaces.BooleanSignal newBoolean |
|---|
| 141 | "Connector of Modelica version 2.1" |
|---|
| 142 | annotation ( Hide=true, Placement( |
|---|
| 143 | transformation(extent={{100,-10},{120,10}}, rotation=0))); |
|---|
| 144 | BooleanPort oldBoolean(final n=1) "Connector of Modelica version 1.6" annotation (Placement( |
|---|
| 145 | transformation(extent={{-120,-10},{-100,10}}, rotation=0))); |
|---|
| 146 | |
|---|
| 147 | annotation(structurallyIncomplete, |
|---|
| 148 | __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed", |
|---|
| 149 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 150 | {100,100}}), graphics={ |
|---|
| 151 | Rectangle( |
|---|
| 152 | extent={{-100,40},{100,-40}}, |
|---|
| 153 | lineColor={255,0,255}, |
|---|
| 154 | fillColor={255,255,255}, |
|---|
| 155 | fillPattern=FillPattern.Solid), |
|---|
| 156 | Text( |
|---|
| 157 | extent={{-144,96},{144,46}}, |
|---|
| 158 | lineColor={0,0,0}, |
|---|
| 159 | textString=""), |
|---|
| 160 | Text( |
|---|
| 161 | extent={{-88,22},{88,-24}}, |
|---|
| 162 | lineColor={255,0,255}, |
|---|
| 163 | textString="adaptor"), |
|---|
| 164 | Text( |
|---|
| 165 | extent={{-216,-58},{36,-80}}, |
|---|
| 166 | lineColor={0,0,0}, |
|---|
| 167 | fillColor={255,255,255}, |
|---|
| 168 | fillPattern=FillPattern.Solid, |
|---|
| 169 | textString="port.signal")}), |
|---|
| 170 | Documentation(info="<html> |
|---|
| 171 | <p> |
|---|
| 172 | Completely obsolete adaptor between the Real signal connector |
|---|
| 173 | of version 1.6 and version ≥ 2.1 of the Modelica Standard Library. |
|---|
| 174 | This block is only provided for backward compatibility. |
|---|
| 175 | </p> |
|---|
| 176 | </html> |
|---|
| 177 | ")); |
|---|
| 178 | |
|---|
| 179 | protected |
|---|
| 180 | connector BooleanPort "Connector with signals of type Boolean" |
|---|
| 181 | parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true); |
|---|
| 182 | replaceable type SignalType = Boolean "type of signal"; |
|---|
| 183 | SignalType signal[n] "Boolean signals" annotation (Hide=true); |
|---|
| 184 | |
|---|
| 185 | end BooleanPort; |
|---|
| 186 | equation |
|---|
| 187 | |
|---|
| 188 | newBoolean = oldBoolean.signal[1]; |
|---|
| 189 | |
|---|
| 190 | end AdaptorBoolean; |
|---|
| 191 | |
|---|
| 192 | model AdaptorInteger |
|---|
| 193 | "Completely obsolete adaptor between 'old' and 'new' Integer signal connectors (only for backward compatibility)" |
|---|
| 194 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 195 | ObsoleteModelica3.Blocks.Interfaces.IntegerSignal newInteger |
|---|
| 196 | "Connector of Modelica version 2.1" |
|---|
| 197 | annotation ( Hide=true, Placement( |
|---|
| 198 | transformation(extent={{100,-10},{120,10}}, rotation=0))); |
|---|
| 199 | IntegerPort oldInteger(final n=1) "Connector of Modelica version 1.6" annotation (Placement( |
|---|
| 200 | transformation(extent={{-120,-10},{-100,10}}, rotation=0))); |
|---|
| 201 | |
|---|
| 202 | annotation(structurallyIncomplete, |
|---|
| 203 | __Dymola_obsolete="Model is not balanced, so equation check will not work. This model is no longer needed", |
|---|
| 204 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 205 | {100,100}}), graphics={ |
|---|
| 206 | Rectangle( |
|---|
| 207 | extent={{-100,40},{100,-40}}, |
|---|
| 208 | lineColor={255,127,0}, |
|---|
| 209 | fillColor={255,255,255}, |
|---|
| 210 | fillPattern=FillPattern.Solid), |
|---|
| 211 | Text( |
|---|
| 212 | extent={{-144,96},{144,46}}, |
|---|
| 213 | lineColor={0,0,0}, |
|---|
| 214 | textString=""), |
|---|
| 215 | Text( |
|---|
| 216 | extent={{-88,22},{88,-24}}, |
|---|
| 217 | lineColor={255,127,0}, |
|---|
| 218 | textString="adaptor"), |
|---|
| 219 | Text( |
|---|
| 220 | extent={{-216,-58},{36,-80}}, |
|---|
| 221 | lineColor={0,0,0}, |
|---|
| 222 | fillColor={255,255,255}, |
|---|
| 223 | fillPattern=FillPattern.Solid, |
|---|
| 224 | textString="port.signal")}), |
|---|
| 225 | Documentation(info="<html> |
|---|
| 226 | <p> |
|---|
| 227 | Completely obsolete adaptor between the Real signal connector |
|---|
| 228 | of version 1.6 and version ≥ 2.1 of the Modelica Standard Library. |
|---|
| 229 | This block is only provided for backward compatibility. |
|---|
| 230 | </p> |
|---|
| 231 | </html> |
|---|
| 232 | ")); |
|---|
| 233 | |
|---|
| 234 | protected |
|---|
| 235 | connector IntegerPort "Connector with signals of type Integer" |
|---|
| 236 | parameter Integer n=1 "Dimension of signal vector" annotation (Hide=true); |
|---|
| 237 | replaceable type SignalType = Integer "type of signal"; |
|---|
| 238 | SignalType signal[n] "Integer signals" annotation (Hide=true); |
|---|
| 239 | |
|---|
| 240 | end IntegerPort; |
|---|
| 241 | equation |
|---|
| 242 | |
|---|
| 243 | newInteger = oldInteger.signal[1]; |
|---|
| 244 | |
|---|
| 245 | end AdaptorInteger; |
|---|
| 246 | end Adaptors; |
|---|
| 247 | end Interfaces; |
|---|
| 248 | |
|---|
| 249 | package Math "Library of mathematical functions as input/output blocks" |
|---|
| 250 | package UnitConversions |
|---|
| 251 | "Conversion blocks to convert between SI and non-SI unit signals" |
|---|
| 252 | block ConvertAllUnits |
|---|
| 253 | "Obsolete block. Use one of Modelica.Blocks.Math.UnitConversions.XXX instead" |
|---|
| 254 | replaceable block ConversionBlock = |
|---|
| 255 | Modelica.Blocks.Interfaces.PartialConversionBlock |
|---|
| 256 | "Conversion block" |
|---|
| 257 | annotation (choicesAllMatching=true, |
|---|
| 258 | Documentation(info= |
|---|
| 259 | "<html> |
|---|
| 260 | <p> |
|---|
| 261 | Internal replaceable block that is used to construct the |
|---|
| 262 | \"pull down menu\" of the available unit conversions. |
|---|
| 263 | </p> |
|---|
| 264 | </html>")); |
|---|
| 265 | extends ConversionBlock; |
|---|
| 266 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 267 | |
|---|
| 268 | annotation ( |
|---|
| 269 | __Dymola_obsolete="Model is not according to Modelica Language 3.0 since replaceable base class present. " + |
|---|
| 270 | "Use instead one of Modelica.Blocks.Math.UnitConversions.XXX", |
|---|
| 271 | defaultComponentName="convert", |
|---|
| 272 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 273 | {100,100}}), graphics={Line(points={{-90,0},{30,0}}, color= |
|---|
| 274 | {191,0,0}), Polygon( |
|---|
| 275 | points={{90,0},{30,20},{30,-20},{90,0}}, |
|---|
| 276 | lineColor={191,0,0}, |
|---|
| 277 | fillColor={191,0,0}, |
|---|
| 278 | fillPattern=FillPattern.Solid)}), |
|---|
| 279 | Documentation(info="<html> |
|---|
| 280 | <p>This block implements the Modelica.SIunits.Conversions functions as a fixed causality block to |
|---|
| 281 | simplify their use. The block contains a replaceable block class <b>ConversionBlock</b> that can be |
|---|
| 282 | changed to be any of the blocks defined in Modelica.Blocks.Math.UnitConversions, and more generally, any |
|---|
| 283 | blocks that extend from Modelica.Blocks.Interfaces.PartialConversionBlock. |
|---|
| 284 | </p> |
|---|
| 285 | |
|---|
| 286 | <p |
|---|
| 287 | The desired conversion can be selected in the parameter menu |
|---|
| 288 | (the selected units are then displayed in the icon):</p> |
|---|
| 289 | </p> |
|---|
| 290 | |
|---|
| 291 | <p> |
|---|
| 292 | <img src=\"../Modelica/Images/Blocks/ConvertAllUnits.png\"> |
|---|
| 293 | </p> |
|---|
| 294 | |
|---|
| 295 | </html>")); |
|---|
| 296 | end ConvertAllUnits; |
|---|
| 297 | end UnitConversions; |
|---|
| 298 | |
|---|
| 299 | block TwoInputs |
|---|
| 300 | "Obsolete block. Use instead Modelica.Blocks.Math.InverseBlockConstraints" |
|---|
| 301 | extends Modelica.Blocks.Interfaces.BlockIcon; |
|---|
| 302 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 303 | annotation(structurallyIncomplete, |
|---|
| 304 | __Dymola_obsolete="Model is not balanced, i.e., not according to Modelica Language 3.0. Use instead Modelica.Blocks.Math.InverseBlockConstraints", |
|---|
| 305 | Window( |
|---|
| 306 | x=0.15, |
|---|
| 307 | y=0.21, |
|---|
| 308 | width=0.6, |
|---|
| 309 | height=0.6), |
|---|
| 310 | Documentation(info="<HTML> |
|---|
| 311 | <p> |
|---|
| 312 | This block is used to enable asignment of values to variables preliminary |
|---|
| 313 | defined as outputs (e.g. useful for inverse model generation). |
|---|
| 314 | </p> |
|---|
| 315 | |
|---|
| 316 | </HTML> |
|---|
| 317 | "), Icon(coordinateSystem( |
|---|
| 318 | preserveAspectRatio=false, |
|---|
| 319 | extent={{-100,-100},{100,100}}, |
|---|
| 320 | grid={2,2}), graphics={Text( |
|---|
| 321 | extent={{-95,50},{95,-50}}, |
|---|
| 322 | lineColor={0,0,127}, |
|---|
| 323 | textString="=")})); |
|---|
| 324 | Modelica.Blocks.Interfaces.RealInput u1 |
|---|
| 325 | "Connector of first Real input signal" |
|---|
| 326 | annotation ( layer="icon", |
|---|
| 327 | Placement(transformation(extent={{-139.742,-19.0044},{-100,20}}, |
|---|
| 328 | rotation=0))); |
|---|
| 329 | Modelica.Blocks.Interfaces.RealInput u2 |
|---|
| 330 | "Connector of second Real input signal (u1=u2)" |
|---|
| 331 | annotation ( |
|---|
| 332 | layer="icon", Placement(transformation( |
|---|
| 333 | origin={120,0}, |
|---|
| 334 | extent={{-20,-20},{20,20}}, |
|---|
| 335 | rotation=180))); |
|---|
| 336 | equation |
|---|
| 337 | u1 = u2; |
|---|
| 338 | end TwoInputs; |
|---|
| 339 | |
|---|
| 340 | block TwoOutputs |
|---|
| 341 | "Obsolete block. Use instead Modelica.Blocks.Math.InverseBlockConstraints" |
|---|
| 342 | extends Modelica.Blocks.Interfaces.BlockIcon; |
|---|
| 343 | extends ObsoleteModelica3.Icons.ObsoleteBlock; |
|---|
| 344 | annotation(structurallyIncomplete, |
|---|
| 345 | __Dymola_obsolete="Model is not balanced, i.e., not according to Modelica Language 3.0. Use instead Modelica.Blocks.Math.InverseBlockConstraints", |
|---|
| 346 | Window( |
|---|
| 347 | x=0.21, |
|---|
| 348 | y=0.28, |
|---|
| 349 | width=0.6, |
|---|
| 350 | height=0.6), |
|---|
| 351 | Documentation(info=" |
|---|
| 352 | <HTML> |
|---|
| 353 | <p> |
|---|
| 354 | This block is used to enable calculation of values preliminary defined as inputs. |
|---|
| 355 | (e.g. useful for inverse model generation). |
|---|
| 356 | </p> |
|---|
| 357 | |
|---|
| 358 | </HTML> |
|---|
| 359 | "), Icon(coordinateSystem( |
|---|
| 360 | preserveAspectRatio=false, |
|---|
| 361 | extent={{-100,-100},{100,100}}, |
|---|
| 362 | grid={2,2}), graphics={Text( |
|---|
| 363 | extent={{-95,50},{95,-50}}, |
|---|
| 364 | lineColor={0,0,127}, |
|---|
| 365 | textString="=")})); |
|---|
| 366 | output Modelica.Blocks.Interfaces.RealOutput y1 |
|---|
| 367 | "Connector of first Real output signal" |
|---|
| 368 | annotation (Placement(transformation(extent={{100,-10},{120,10}}, |
|---|
| 369 | rotation=0))); |
|---|
| 370 | output Modelica.Blocks.Interfaces.RealOutput y2 |
|---|
| 371 | "Connector of second Real output signal (y1=y2)" |
|---|
| 372 | annotation (Placement( |
|---|
| 373 | transformation( |
|---|
| 374 | origin={-110.366,-0.90289}, |
|---|
| 375 | extent={{-10.0005,-10},{10.0005,10}}, |
|---|
| 376 | rotation=180))); |
|---|
| 377 | equation |
|---|
| 378 | y1 = y2; |
|---|
| 379 | end TwoOutputs; |
|---|
| 380 | end Math; |
|---|
| 381 | |
|---|
| 382 | end Blocks; |
|---|
| 383 | |
|---|
| 384 | package Electrical |
|---|
| 385 | "Library of electrical models (analog, digital, machines, multi-phase)" |
|---|
| 386 | package Analog "Library for analog electrical models" |
|---|
| 387 | package Basic |
|---|
| 388 | "Basic electrical components such as resistor, capacitor, transformer" |
|---|
| 389 | model HeatingResistor |
|---|
| 390 | "Obsolete model. Use Modelica.Electrical.Analog.Basic.HeatingResistor instead" |
|---|
| 391 | extends Modelica.Electrical.Analog.Interfaces.OnePort; |
|---|
| 392 | extends ObsoleteModelica3.Icons.ObsoleteModel; |
|---|
| 393 | |
|---|
| 394 | parameter Modelica.SIunits.Resistance R_ref=1 |
|---|
| 395 | "Resistance at temperature T_ref"; |
|---|
| 396 | parameter Modelica.SIunits.Temperature T_ref=300 |
|---|
| 397 | "Reference temperature"; |
|---|
| 398 | parameter Real alpha(unit="1/K") = 0 |
|---|
| 399 | "Temperature coefficient of resistance"; |
|---|
| 400 | |
|---|
| 401 | Modelica.SIunits.Resistance R |
|---|
| 402 | "Resistance = R_ref*(1 + alpha*(heatPort.T - T_ref));"; |
|---|
| 403 | |
|---|
| 404 | annotation ( |
|---|
| 405 | __Dymola_obsolete="Model equations depend on cardinality(..) which will become obsolete in the Modelica language. Use instead Modelica.Electrical.Analog.Basic.HeatingResistor", |
|---|
| 406 | Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-100, |
|---|
| 407 | -100},{100,100}}), graphics={ |
|---|
| 408 | Line(points={{-110,20},{-85,20}}, color={160,160,164}), |
|---|
| 409 | Polygon( |
|---|
| 410 | points={{-95,23},{-85,20},{-95,17},{-95,23}}, |
|---|
| 411 | lineColor={160,160,164}, |
|---|
| 412 | fillColor={160,160,164}, |
|---|
| 413 | fillPattern=FillPattern.Solid), |
|---|
| 414 | Line(points={{90,20},{115,20}}, color={160,160,164}), |
|---|
| 415 | Line(points={{-125,0},{-115,0}}, color={160,160,164}), |
|---|
| 416 | Line(points={{-120,-5},{-120,5}}, color={160,160,164}), |
|---|
| 417 | Text( |
|---|
| 418 | extent={{-110,25},{-90,45}}, |
|---|
| 419 | lineColor={160,160,164}, |
|---|
| 420 | textString="i"), |
|---|
| 421 | Polygon( |
|---|
| 422 | points={{105,23},{115,20},{105,17},{105,23}}, |
|---|
| 423 | lineColor={160,160,164}, |
|---|
| 424 | fillColor={160,160,164}, |
|---|
| 425 | fillPattern=FillPattern.Solid), |
|---|
| 426 | Line(points={{115,0},{125,0}}, color={160,160,164}), |
|---|
| 427 | Text( |
|---|
| 428 | extent={{90,45},{110,25}}, |
|---|
| 429 | lineColor={160,160,164}, |
|---|
| 430 | textString="i"), |
|---|
| 431 | Rectangle(extent={{-70,30},{70,-30}}), |
|---|
| 432 | Line(points={{-96,0},{-70,0}}), |
|---|
| 433 | Line(points={{70,0},{96,0}}), |
|---|
| 434 | Line(points={{0,-30},{0,-90}}, color={191,0,0}), |
|---|
| 435 | Line(points={{-52,-50},{48,50}}, color={0,0,255}), |
|---|
| 436 | Polygon( |
|---|
| 437 | points={{40,52},{50,42},{54,56},{40,52}}, |
|---|
| 438 | lineColor={0,0,255}, |
|---|
| 439 | fillColor={0,0,255}, |
|---|
| 440 | fillPattern=FillPattern.Solid)}), |
|---|
| 441 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 442 | {100,100}}), graphics={ |
|---|
| 443 | Text(extent={{-142,60},{143,118}}, textString="%name"), |
|---|
| 444 | Line(points={{-90,0},{-70,0}}), |
|---|
| 445 | Line(points={{70,0},{90,0}}), |
|---|
| 446 | Rectangle( |
|---|
| 447 | extent={{-70,30},{70,-30}}, |
|---|
| 448 | lineColor={0,0,255}, |
|---|
| 449 | fillColor={255,255,255}, |
|---|
| 450 | fillPattern=FillPattern.Solid), |
|---|
| 451 | Line(points={{0,-30},{0,-91}}, color={191,0,0}), |
|---|
| 452 | Line(points={{-52,-50},{48,50}}, color={0,0,255}), |
|---|
| 453 | Polygon( |
|---|
| 454 | points={{40,52},{50,42},{54,56},{40,52}}, |
|---|
| 455 | lineColor={0,0,255}, |
|---|
| 456 | fillColor={0,0,255}, |
|---|
| 457 | fillPattern=FillPattern.Solid)}), |
|---|
| 458 | Documentation(info="<HTML> |
|---|
| 459 | <p>This is a model for an electrical resistor where the generated heat |
|---|
| 460 | is dissipated to the environment via connector <b>heatPort</b> and where |
|---|
| 461 | the resistance R is temperature dependent according to the following |
|---|
| 462 | equation:</p> |
|---|
| 463 | <pre> R = R_ref*(1 + alpha*(heatPort.T - T_ref)) |
|---|
| 464 | </pre> |
|---|
| 465 | <p><b>alpha</b> is the <b>temperature coefficient of resistance</b>, which |
|---|
| 466 | is often abbreviated as <b>TCR</b>. In resistor catalogues, it is usually |
|---|
| 467 | defined as <b>X [ppm/K]</b> (parts per million, similarly to per centage) |
|---|
| 468 | meaning <b>X*1.e-6 [1/K]</b>. Resistors are available for 1 .. 7000 ppm/K, |
|---|
| 469 | i.e., alpha = 1e-6 .. 7e-3 1/K;</p> |
|---|
| 470 | <p>When connector <b>heatPort</b> is <b>not</b> connected, the temperature |
|---|
| 471 | dependent behaviour is switched off by setting heatPort.T = T_ref. |
|---|
| 472 | Additionally, the equation <tt>heatPort.Q_flow = 0</tt> is implicitly present |
|---|
| 473 | due to a special rule in Modelica that flow variables of not connected |
|---|
| 474 | connectors are set to zero.</p> |
|---|
| 475 | </HTML> |
|---|
| 476 | ", revisions= |
|---|
| 477 | "<html> |
|---|
| 478 | <ul> |
|---|
| 479 | <li><i> </i> |
|---|
| 480 | </li> |
|---|
| 481 | <li><i> 2002 </i> |
|---|
| 482 | by Anton Haumer<br> initially implemented<br> |
|---|
| 483 | </li> |
|---|
| 484 | </ul> |
|---|
| 485 | </html>"), uses(Modelica(version="2.2.1"))); |
|---|
| 486 | Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPort annotation (Placement( |
|---|
| 487 | transformation( |
|---|
| 488 | origin={0,-100}, |
|---|
| 489 | extent={{10,-10},{-10,10}}, |
|---|
| 490 | rotation=270))); |
|---|
| 491 | equation |
|---|
| 492 | v = R*i; |
|---|
| 493 | |
|---|
| 494 | if cardinality(heatPort) > 0 then |
|---|
| 495 | R = R_ref*(1 + alpha*(heatPort.T - T_ref)); |
|---|
| 496 | heatPort.Q_flow = -v*i; |
|---|
| 497 | else |
|---|
| 498 | /* heatPort is not connected resulting in the |
|---|
| 499 | implicit equation 'heatPort.Q_flow = 0' |
|---|
| 500 | */ |
|---|
| 501 | R = R_ref; |
|---|
| 502 | heatPort.T = T_ref; |
|---|
| 503 | end if; |
|---|
| 504 | end HeatingResistor; |
|---|
| 505 | end Basic; |
|---|
| 506 | end Analog; |
|---|
| 507 | end Electrical; |
|---|
| 508 | |
|---|
| 509 | package Icons "Library of icons" |
|---|
| 510 | partial block ObsoleteBlock |
|---|
| 511 | "Icon for an obsolete block (use only for this case)" |
|---|
| 512 | |
|---|
| 513 | annotation (__Dymola_obsolete="Only used to mark an obsolete block. Do not use otherwise.", |
|---|
| 514 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100, |
|---|
| 515 | -100},{100,100}}), graphics={Rectangle( |
|---|
| 516 | extent={{-102,102},{102,-102}}, |
|---|
| 517 | lineColor={255,0,0}, |
|---|
| 518 | pattern=LinePattern.Dash, |
|---|
| 519 | lineThickness=0.5)}), Documentation(info="<html> |
|---|
| 520 | <p> |
|---|
| 521 | This partial class is intended to design a <em>default icon |
|---|
| 522 | for an obsolete class</em> that will be removed from the |
|---|
| 523 | PowerTrain library later on. |
|---|
| 524 | <p> |
|---|
| 525 | </html>", |
|---|
| 526 | revisions="<html> |
|---|
| 527 | <img src=\"../Extras/Images/dlr_logo.png\" width=60 > |
|---|
| 528 | |
|---|
| 529 | <b> Copyright © 1999-2007, DLR Institute of Robotics and Mechatronics</b> |
|---|
| 530 | </html>")); |
|---|
| 531 | equation |
|---|
| 532 | |
|---|
| 533 | end ObsoleteBlock; |
|---|
| 534 | |
|---|
| 535 | partial model ObsoleteModel |
|---|
| 536 | "Icon for an obsolete model (use only for this case)" |
|---|
| 537 | |
|---|
| 538 | annotation (__Dymola_obsolete="Only used to mark an obsolete model. Do not use otherwise.", |
|---|
| 539 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100, |
|---|
| 540 | -100},{100,100}}), graphics={Rectangle( |
|---|
| 541 | extent={{-102,102},{102,-102}}, |
|---|
| 542 | lineColor={255,0,0}, |
|---|
| 543 | pattern=LinePattern.Dash, |
|---|
| 544 | lineThickness=0.5)}), Documentation(info="<html> |
|---|
| 545 | <p> |
|---|
| 546 | This partial class is intended to design a <em>default icon |
|---|
| 547 | for an obsolete class</em> that will be removed from the |
|---|
| 548 | PowerTrain library later on. |
|---|
| 549 | <p> |
|---|
| 550 | </html>", |
|---|
| 551 | revisions="<html> |
|---|
| 552 | <img src=\"../Extras/Images/dlr_logo.png\" width=60 > |
|---|
| 553 | |
|---|
| 554 | <b> Copyright © 1999-2007, DLR Institute of Robotics and Mechatronics</b> |
|---|
| 555 | </html>")); |
|---|
| 556 | equation |
|---|
| 557 | |
|---|
| 558 | end ObsoleteModel; |
|---|
| 559 | |
|---|
| 560 | partial class Enumeration |
|---|
| 561 | "Obsolete class (icon for an enumeration emulated by a package). Use a real enumeration instead" |
|---|
| 562 | |
|---|
| 563 | annotation (__Dymola_obsolete="Icon for an emulated enumeration. Emulated enumerations are no longer used (only real enumerations)", |
|---|
| 564 | Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, |
|---|
| 565 | {100,100}}), graphics={ |
|---|
| 566 | Text(extent={{-138,164},{138,104}}, textString="%name"), |
|---|
| 567 | Ellipse( |
|---|
| 568 | extent={{-100,100},{100,-100}}, |
|---|
| 569 | lineColor={255,0,127}, |
|---|
| 570 | fillColor={255,255,255}, |
|---|
| 571 | fillPattern=FillPattern.Solid), |
|---|
| 572 | Text( |
|---|
| 573 | extent={{-100,100},{100,-100}}, |
|---|
| 574 | lineColor={255,0,127}, |
|---|
| 575 | fillColor={223,159,191}, |
|---|
| 576 | fillPattern=FillPattern.Solid, |
|---|
| 577 | textString="e")}), |
|---|
| 578 | Documentation(info="<html> |
|---|
| 579 | <p> |
|---|
| 580 | This icon is designed for an <b>enumeration</b> |
|---|
| 581 | (that is emulated by a package). |
|---|
| 582 | </p> |
|---|
| 583 | </html>")); |
|---|
| 584 | end Enumeration; |
|---|
| 585 | end Icons; |
|---|
| 586 | |
|---|
| 587 | package Mechanics |
|---|
| 588 | "Library of 1-dim. and 3-dim. mechanical components (multi-body, rotational, translational)" |
|---|
| 589 | |
|---|
| 590 | package MultiBody "Library to model 3-dimensional mechanical systems" |
|---|
| 591 | package Forces |
|---|
| 592 | "Components that exert forces and/or torques between frames" |
|---|
| 593 | model WorldForceAndTorque |
|---|
| 594 | "Obsolete model. Use instead Modelica.Mechanics.MultiBody.Forces.WorldForceAndTorque" |
|---|
| 595 | |
|---|
| 596 | import SI = Modelica.SIunits; |
|---|
| 597 | import Modelica.Mechanics.MultiBody.Types; |
|---|
| 598 | extends Modelica.Mechanics.MultiBody.Interfaces.PartialOneFrame_b; |
|---|
| 599 | extends ObsoleteModelica3.Icons.ObsoleteModel; |
|---|
| 600 | |
|---|
| 601 | Modelica.Blocks.Interfaces.RealInput load[6] |
|---|
| 602 | "[1:6] = x-, y-, z-coordinates of force and x-, y-, z-coordiantes of torque resolved in world frame" |
|---|
| 603 | annotation (Placement(transformation(extent={{-140,-20},{-100,20}}, |
|---|
| 604 | rotation=0))); |
|---|
| 605 | parameter Boolean animation=true |
|---|
| 606 | "= true, if animation shall be enabled"; |
|---|
| 607 | parameter Real N_to_m(unit="N/m") = world.defaultN_to_m |
|---|
| 608 | " Force arrow scaling (length = force/N_to_m)" |
|---|
| 609 | annotation (Dialog(group="if animation = true", enable=animation)); |
|---|
| 610 | parameter Real Nm_to_m(unit="N.m/m") = world.defaultNm_to_m |
|---|
| 611 | " Torque arrow scaling (length = torque/Nm_to_m)" |
|---|
| 612 | annotation (Dialog(group="if animation = true", enable=animation)); |
|---|
| 613 | input SI.Diameter forceDiameter=world.defaultArrowDiameter |
|---|
| 614 | " Diameter of force arrow" annotation (Dialog(group="if animation = true", enable=animation)); |
|---|
| 615 | input SI.Diameter torqueDiameter=forceDiameter |
|---|
| 616 | " Diameter of torque arrow" annotation (Dialog(group="if animation = true", enable=animation)); |
|---|
| 617 | input Types.Color forceColor=Modelica.Mechanics.MultiBody.Types.Defaults.ForceColor |
|---|
| 618 | " Color of force arrow" annotation (Dialog(group="if animation = true", enable=animation)); |
|---|
| 619 | input Types.Color torqueColor=Modelica.Mechanics.MultiBody.Types.Defaults.TorqueColor |
|---|
| 620 | " Color of torque arrow" annotation (Dialog(group="if animation = true", enable |
|---|