Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

6381 rinda
178KB

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Document>
  3. <Model version="4.8" build="4.8.2.10124">
  4. <Sidops><![CDATA[model 128 184
  5. description '<Information>
  6. <Description>
  7. <Version>4.8</Version>
  8. <IsMainModel>0</IsMainModel>
  9. <KeepParameterValues>False</KeepParameterValues>
  10. <LibraryPath>C:\users\wouter\My Documents\studie\ma\mahd\implementation\SCARA\05_stepper\stepper.emx</LibraryPath>
  11. <TimeStamp>2020-7-23 10:09:09</TimeStamp>
  12. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  13. </Description>
  14. <Attributes>
  15. <GlobalRelations>parameters
  16. real A = 0.05 {m};
  17. real B = 0.05 {m};
  18. variables
  19. real J0_1_BF1[2];
  20. real J1_2_BF1[2];
  21. real J1_2_BF2[2];
  22. real EE1_BF2[2];
  23. initialequations
  24. J0_1_BF1 = [A/2;0];
  25. J1_2_BF1 = [-A/2;0];
  26. J1_2_BF2 = [B/2;0];
  27. EE1_BF2 = [-B/2;0];</GlobalRelations>
  28. </Attributes>
  29. </Information>';
  30. type Mainmodel
  31. end;
  32. implementation bg
  33. submodels
  34. C 528 216
  35. description '<Information>
  36. <Description>
  37. <Version>4.2</Version>
  38. <IsMainModel>1</IsMainModel>
  39. <KeepParameterValues>False</KeepParameterValues>
  40. <LibraryPath>Bond Graph\C.emx</LibraryPath>
  41. <TimeStamp>2011-11-29 15:58:35</TimeStamp>
  42. </Description>
  43. </Information>';
  44. type C
  45. ports
  46. power in p;
  47. signal out state;
  48. restrictions
  49. causality preferred out p;
  50. end;
  51. icon bg bottom
  52. figures
  53. text 'C' 528 216 color 0 18 bold;
  54. end;
  55. implementation eq
  56. parameters
  57. real c = 0.0001;
  58. equations
  59. state = int(p.f);
  60. p.e = state / c;
  61. implementation_end;
  62. C1 712 232
  63. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  64. <LibraryPath>Bond Graph\3D\C-3.emx</LibraryPath>
  65. <TimeStamp>2007-9-25 12:12:8</TimeStamp>
  66. </Description>';
  67. type 'C-3'
  68. ports
  69. power in p [3,1];
  70. signal out state [3,1];
  71. restrictions
  72. causality preferred out p;
  73. end;
  74. icon bg bottom
  75. figures
  76. text 'C' 712 232 color 0 18 bold;
  77. end;
  78. implementation eq
  79. parameters
  80. real c[3,3] = [0.1, 0.0, 0.0; 0.0, 0.1, 0.0; 0.0, 0.0, 0.1] {mN/m};
  81. equations
  82. state = int(p.f);
  83. p.e = inverse(c) *state;
  84. implementation_end;
  85. C2 376 256
  86. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  87. <LibraryPath>Bond Graph\3D\C-3.emx</LibraryPath>
  88. <TimeStamp>2007-9-25 12:12:8</TimeStamp>
  89. </Description>';
  90. type 'C-3'
  91. ports
  92. power in p [3,1];
  93. signal out state [3,1];
  94. restrictions
  95. causality preferred out p;
  96. end;
  97. icon bg bottom
  98. figures
  99. text 'C' 376 256 color 0 18 bold;
  100. end;
  101. implementation eq
  102. parameters
  103. real c[3,3] = [0.1, 0.0, 0.0; 0.0, 0.1, 0.0; 0.0, 0.0, 0.1] {mN/m};
  104. equations
  105. state = int(p.f);
  106. p.e = inverse(c) *state;
  107. implementation_end;
  108. C3 376 208
  109. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  110. <LibraryPath>Bond Graph\2D\C-2.emx</LibraryPath>
  111. <TimeStamp>2007-9-25 12:7:27</TimeStamp>
  112. </Description>';
  113. type 'C-2'
  114. ports
  115. power in p [2,1];
  116. signal out state [2,1];
  117. restrictions
  118. causality preferred out p;
  119. end;
  120. icon bg bottom
  121. figures
  122. text 'C' 376 208 color 0 18 bold;
  123. end;
  124. implementation eq
  125. parameters
  126. real c[2,2] = [0.1, 0.0; 0.0, 0.1] {mN.m/rad};
  127. equations
  128. state = int(p.f);
  129. p.e = inverse(c) *state;
  130. implementation_end;
  131. C4 712 216
  132. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  133. <LibraryPath>Bond Graph\2D\C-2.emx</LibraryPath>
  134. <TimeStamp>2007-9-25 12:7:27</TimeStamp>
  135. </Description>';
  136. type 'C-2'
  137. ports
  138. power in p [2,1];
  139. signal out state [2,1];
  140. restrictions
  141. causality preferred out p;
  142. end;
  143. icon bg top
  144. figures
  145. text 'C' 712 216 color 0 18 bold;
  146. end;
  147. implementation eq
  148. parameters
  149. real c[2,2] = [0.1, 0.0; 0.0, 0.1] {mN.m/rad};
  150. equations
  151. state = int(p.f);
  152. p.e = inverse(c) *state;
  153. implementation_end;
  154. C5 104 216
  155. description '<Information>
  156. <Description>
  157. <Version>4.2</Version>
  158. <IsMainModel>1</IsMainModel>
  159. <KeepParameterValues>False</KeepParameterValues>
  160. <LibraryPath>Bond Graph\C.emx</LibraryPath>
  161. <TimeStamp>2011-11-29 15:58:35</TimeStamp>
  162. </Description>
  163. </Information>';
  164. type C
  165. ports
  166. power in p;
  167. signal out state;
  168. restrictions
  169. causality preferred out p;
  170. end;
  171. icon bg bottom
  172. figures
  173. text 'C' 104 216 color 0 18 bold;
  174. end;
  175. implementation eq
  176. parameters
  177. real c = 0.0001;
  178. equations
  179. state = int(p.f);
  180. p.e = state / c;
  181. implementation_end;
  182. COM 448 192
  183. description '<Information><Description><Version>4.8</Version><IsMainModel>1</IsMainModel><LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath><TimeStamp>2020-7-21 12:24:38</TimeStamp></Description><Attributes><GlobalRelations>parameters
  184. real I [3,1] = [1.6399999999999998e-6; 4.7e-8; 1.61e-6] {N.m.s};
  185. real m = 0.00455 {kg};</GlobalRelations></Attributes></Information>';
  186. type Submodel
  187. ports
  188. signal in Hin [4,4];
  189. signal out Hout [4,4];
  190. power out p [6,1];
  191. end;
  192. icon bg bottom
  193. figures
  194. rectangle 416 176 480 208 color 0 fill 139;
  195. text 'COM' 448 192 color 0 'Clear Sans' 16;
  196. terminals
  197. Hin 464 176 fixed;
  198. p 432 176 fixed;
  199. end;
  200. implementation bg
  201. submodels
  202. AdHi0 544 400
  203. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:3</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  204. type MTF
  205. ports
  206. power in p1 [6,1];
  207. power out p2 [6,1];
  208. signal in H [4,4];
  209. restrictions
  210. causality constraint not_equal p1 p2;
  211. end;
  212. icon bg left
  213. figures
  214. text 'MTF' 544 400 color 0 18 bold;
  215. end;
  216. implementation eq
  217. variables
  218. real onlyRotH[4,4];
  219. code
  220. //Only rotations with respect to the inertial system matter!
  221. onlyRotH = H;
  222. onlyRotH[1,4] = 0;
  223. onlyRotH[2,4] = 0;
  224. onlyRotH[3,4] = 0;
  225. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  226. p1.f = Adjoint(onlyRotH) * p2.f;
  227. implementation_end;
  228. EJS 616 336
  229. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-10-31 11:43:6</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  230. type MGY
  231. ports
  232. power in p1 [6,1];
  233. end;
  234. icon bg top
  235. figures
  236. text 'MGY' 616 336 color 0 18 bold;
  237. end;
  238. implementation eq
  239. //EJS / Gyroscopic effects
  240. parameters
  241. real global I[3];
  242. real global m;
  243. variables
  244. real II[6,6]; //Inertial tensor
  245. real Q[6,6];
  246. real QI[6,6];
  247. real Ia[6];
  248. initialequations
  249. Ia[1:3] = I;
  250. Ia[4:6] = m;
  251. II = diag(Ia);
  252. equations
  253. Q = transpose(adjoint(p1.f));
  254. QI = Q*II;
  255. p1.e = QI*p1.f;implementation_end;
  256. Gravity 624 400
  257. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:26</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  258. type Se
  259. ports
  260. power out p [6,1];
  261. restrictions
  262. causality fixed out p;
  263. end;
  264. icon bg bottom
  265. figures
  266. text 'Se' 624 400 color 0 18 bold;
  267. end;
  268. implementation eq
  269. parameters
  270. real global m;
  271. variables
  272. real effort[6];
  273. equations
  274. effort = [0;0;0;0;0;-g_n*m];
  275. p.e = effort;
  276. implementation_end;
  277. InertialTensor 544 272
  278. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  279. <LibraryPath>Bond Graph\3D\I-3.emx</LibraryPath>
  280. <TimeStamp>2007-9-25 12:12:14</TimeStamp>
  281. </Description>';
  282. type 'I-3'
  283. ports
  284. power in p [6,1];
  285. signal out state [6,1];
  286. restrictions
  287. causality preferred in p;
  288. end;
  289. icon bg bottom
  290. figures
  291. text 'I' 544 272 color 0 18 bold;
  292. end;
  293. implementation eq
  294. parameters
  295. real global I[3];
  296. real global m;
  297. variables
  298. real II[6,6]; //Inertial tensor
  299. real Ia[6];
  300. initialequations
  301. Ia[1:3] = I;
  302. Ia[4:6] = m;
  303. II = diag(Ia);
  304. equations
  305. state = int(p.e); //state = generalized momentum
  306. p.f = inverse(II)*state;
  307. implementation_end;
  308. plug Hin 433.4 496;
  309. plug Hout 691.2 496;
  310. plug p 439.4 336;
  311. Splitter1 544 496
  312. description '<Description><Version>4.0</Version>
  313. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  314. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  315. <IsMainModel>1</IsMainModel>
  316. <KeepParameterValues>False</KeepParameterValues>
  317. </Description>';
  318. knot Splitter
  319. ports
  320. signal knot duplicatable out output [4,4];
  321. signal knot in input [4,4];
  322. end;
  323. icon bg ellipse
  324. figures
  325. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  326. ellipse 539.7 491.7 548.3 500.3 color -1;
  327. terminals
  328. input 544 496 fixed;
  329. end;
  330. implementation eq
  331. equations
  332. collect (output) = input;
  333. implementation_end;
  334. Ta0j 544 336
  335. description '<Description>
  336. <Version>4.0</Version>
  337. <IsMainModel>1</IsMainModel>
  338. <KeepParameterValues>False</KeepParameterValues>
  339. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  340. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  341. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  342. <Description></Description>
  343. </Description>';
  344. knot OneJunction
  345. ports
  346. power knot duplicatable none p [6,1];
  347. signal knot out flow [6,1];
  348. restrictions
  349. causality constraint one_out p;
  350. end;
  351. icon bg bottom
  352. figures
  353. text '1' 544 336 color 0 18 bold;
  354. end;
  355. implementation eq
  356. equations
  357. sum (direct (p.e)) = 0;
  358. equal (collect (p.f));
  359. flow = first (p.f);
  360. implementation_end;
  361. ZeroJunction1 504 336
  362. description '<Information>
  363. <Description>
  364. <Version>4.2</Version>
  365. <IsMainModel>1</IsMainModel>
  366. <KeepParameterValues>False</KeepParameterValues>
  367. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  368. <TimeStamp>2011-11-29 16:45:16</TimeStamp>
  369. </Description>
  370. </Information>';
  371. knot ZeroJunction
  372. ports
  373. power knot duplicatable none p [6,1];
  374. signal knot out effort [6,1];
  375. restrictions
  376. causality constraint one_in p;
  377. end;
  378. icon bg
  379. figures
  380. text '0' 504 336 color 0 18 bold;
  381. end;
  382. implementation eq
  383. equations
  384. sum (direct (p.f)) = 0;
  385. equal (collect (p.e));
  386. effort = first (p.e);
  387. implementation_end;
  388. end;
  389. connections
  390. AdHi0\p2 => Ta0j\p;
  391. Gravity\p => AdHi0\p1;
  392. Hin -> Splitter1\input;
  393. Splitter1\output -> AdHi0\H;
  394. Splitter1\output -> Hout;
  395. Ta0j\p => EJS\p1;
  396. Ta0j\p => InertialTensor\p;
  397. ZeroJunction1\p => p;
  398. ZeroJunction1\p => Ta0j\p;
  399. end;
  400. implementation_end;
  401. COM1 792 184
  402. description '<Information><Description><Version>4.8</Version><IsMainModel>1</IsMainModel><LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath><TimeStamp>2020-7-21 12:24:38</TimeStamp></Description><Attributes><GlobalRelations>parameters
  403. real I [3,1] = [7.583333333333335e-7; 3.645833333333334e-8; 7.364583333333335e-7] {N.m.s};
  404. real m = 0.0035 {kg};</GlobalRelations></Attributes></Information>';
  405. type Submodel
  406. ports
  407. signal in Hin [4,4];
  408. signal out Hout [4,4];
  409. power out p [6,1];
  410. end;
  411. icon bg bottom
  412. figures
  413. rectangle 760 168 824 200 color 0 fill 139;
  414. text 'COM' 792 184 color 0 'Clear Sans' 16;
  415. terminals
  416. Hin 808 168 fixed;
  417. p 776 168 fixed;
  418. end;
  419. implementation bg
  420. submodels
  421. AdHi0 544 400
  422. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:3</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  423. type MTF
  424. ports
  425. power in p1 [6,1];
  426. power out p2 [6,1];
  427. signal in H [4,4];
  428. restrictions
  429. causality constraint not_equal p1 p2;
  430. end;
  431. icon bg left
  432. figures
  433. text 'MTF' 544 400 color 0 18 bold;
  434. end;
  435. implementation eq
  436. variables
  437. real onlyRotH[4,4];
  438. code
  439. //Only rotations with respect to the inertial system matter!
  440. onlyRotH = H;
  441. onlyRotH[1,4] = 0;
  442. onlyRotH[2,4] = 0;
  443. onlyRotH[3,4] = 0;
  444. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  445. p1.f = Adjoint(onlyRotH) * p2.f;
  446. implementation_end;
  447. EJS 616 336
  448. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-10-31 11:43:6</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  449. type MGY
  450. ports
  451. power in p1 [6,1];
  452. end;
  453. icon bg top
  454. figures
  455. text 'MGY' 616 336 color 0 18 bold;
  456. end;
  457. implementation eq
  458. //EJS / Gyroscopic effects
  459. parameters
  460. real global I[3];
  461. real global m;
  462. variables
  463. real II[6,6]; //Inertial tensor
  464. real Q[6,6];
  465. real QI[6,6];
  466. real Ia[6];
  467. initialequations
  468. Ia[1:3] = I;
  469. Ia[4:6] = m;
  470. II = diag(Ia);
  471. equations
  472. Q = transpose(adjoint(p1.f));
  473. QI = Q*II;
  474. p1.e = QI*p1.f;implementation_end;
  475. Gravity 624 400
  476. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:26</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  477. type Se
  478. ports
  479. power out p [6,1];
  480. restrictions
  481. causality fixed out p;
  482. end;
  483. icon bg bottom
  484. figures
  485. text 'Se' 624 400 color 0 18 bold;
  486. end;
  487. implementation eq
  488. parameters
  489. real global m;
  490. variables
  491. real effort[6];
  492. equations
  493. effort = [0;0;0;0;0;-g_n*m];
  494. p.e = effort;
  495. implementation_end;
  496. InertialTensor 544 272
  497. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  498. <LibraryPath>Bond Graph\3D\I-3.emx</LibraryPath>
  499. <TimeStamp>2007-9-25 12:12:14</TimeStamp>
  500. </Description>';
  501. type 'I-3'
  502. ports
  503. power in p [6,1];
  504. signal out state [6,1];
  505. restrictions
  506. causality preferred in p;
  507. end;
  508. icon bg bottom
  509. figures
  510. text 'I' 544 272 color 0 18 bold;
  511. end;
  512. implementation eq
  513. parameters
  514. real global I[3];
  515. real global m;
  516. variables
  517. real II[6,6]; //Inertial tensor
  518. real Ia[6];
  519. initialequations
  520. Ia[1:3] = I;
  521. Ia[4:6] = m;
  522. II = diag(Ia);
  523. equations
  524. state = int(p.e); //state = generalized momentum
  525. p.f = inverse(II)*state;
  526. implementation_end;
  527. plug Hin 433.4 496;
  528. plug Hout 691.2 496;
  529. plug p 439.4 336;
  530. Splitter1 544 496
  531. description '<Description><Version>4.0</Version>
  532. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  533. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  534. <IsMainModel>1</IsMainModel>
  535. <KeepParameterValues>False</KeepParameterValues>
  536. </Description>';
  537. knot Splitter
  538. ports
  539. signal knot duplicatable out output [4,4];
  540. signal knot in input [4,4];
  541. end;
  542. icon bg ellipse
  543. figures
  544. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  545. ellipse 539.7 491.7 548.3 500.3 color -1;
  546. terminals
  547. input 544 496 fixed;
  548. end;
  549. implementation eq
  550. equations
  551. collect (output) = input;
  552. implementation_end;
  553. Ta0j 544 336
  554. description '<Description>
  555. <Version>4.0</Version>
  556. <IsMainModel>1</IsMainModel>
  557. <KeepParameterValues>False</KeepParameterValues>
  558. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  559. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  560. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  561. <Description></Description>
  562. </Description>';
  563. knot OneJunction
  564. ports
  565. power knot duplicatable none p [6,1];
  566. signal knot out flow [6,1];
  567. restrictions
  568. causality constraint one_out p;
  569. end;
  570. icon bg bottom
  571. figures
  572. text '1' 544 336 color 0 18 bold;
  573. end;
  574. implementation eq
  575. equations
  576. sum (direct (p.e)) = 0;
  577. equal (collect (p.f));
  578. flow = first (p.f);
  579. implementation_end;
  580. ZeroJunction1 504 336
  581. description '<Information>
  582. <Description>
  583. <Version>4.2</Version>
  584. <IsMainModel>1</IsMainModel>
  585. <KeepParameterValues>False</KeepParameterValues>
  586. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  587. <TimeStamp>2011-11-29 16:45:16</TimeStamp>
  588. </Description>
  589. </Information>';
  590. knot ZeroJunction
  591. ports
  592. power knot duplicatable none p [6,1];
  593. signal knot out effort [6,1];
  594. restrictions
  595. causality constraint one_in p;
  596. end;
  597. icon bg
  598. figures
  599. text '0' 504 336 color 0 18 bold;
  600. end;
  601. implementation eq
  602. equations
  603. sum (direct (p.f)) = 0;
  604. equal (collect (p.e));
  605. effort = first (p.e);
  606. implementation_end;
  607. end;
  608. connections
  609. AdHi0\p2 => Ta0j\p;
  610. Gravity\p => AdHi0\p1;
  611. Hin -> Splitter1\input;
  612. Splitter1\output -> AdHi0\H;
  613. Splitter1\output -> Hout;
  614. Ta0j\p => EJS\p1;
  615. Ta0j\p => InertialTensor\p;
  616. ZeroJunction1\p => p;
  617. ZeroJunction1\p => Ta0j\p;
  618. end;
  619. implementation_end;
  620. COM2 976 168
  621. description '<Information><Description><Version>4.8</Version><IsMainModel>1</IsMainModel><LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath><TimeStamp>2020-7-21 12:24:38</TimeStamp></Description><Attributes><GlobalRelations>parameters
  622. real I [3,1] = [0.018;0.159;0.159] {mN.m.s};
  623. real m = 0.015 {kg};</GlobalRelations></Attributes></Information>';
  624. type Submodel
  625. ports
  626. signal in Hin [4,4];
  627. signal out Hout [4,4];
  628. power out p [6,1];
  629. end;
  630. icon bg bottom
  631. figures
  632. rectangle 944 152 1008 184 color 0 fill 139;
  633. text 'COM' 976 168 color 0 'Clear Sans' 16;
  634. terminals
  635. Hin 992 152 fixed;
  636. p 960 152 fixed;
  637. end;
  638. implementation bg
  639. submodels
  640. AdHi0 544 400
  641. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:3</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  642. type MTF
  643. ports
  644. power in p1 [6,1];
  645. power out p2 [6,1];
  646. signal in H [4,4];
  647. restrictions
  648. causality constraint not_equal p1 p2;
  649. end;
  650. icon bg left
  651. figures
  652. text 'MTF' 544 400 color 0 18 bold;
  653. end;
  654. implementation eq
  655. variables
  656. real onlyRotH[4,4];
  657. code
  658. //Only rotations with respect to the inertial system matter!
  659. onlyRotH = H;
  660. onlyRotH[1,4] = 0;
  661. onlyRotH[2,4] = 0;
  662. onlyRotH[3,4] = 0;
  663. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  664. p1.f = Adjoint(onlyRotH) * p2.f;
  665. implementation_end;
  666. EJS 616 336
  667. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-10-31 11:43:6</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  668. type MGY
  669. ports
  670. power in p1 [6,1];
  671. end;
  672. icon bg top
  673. figures
  674. text 'MGY' 616 336 color 0 18 bold;
  675. end;
  676. implementation eq
  677. //EJS / Gyroscopic effects
  678. parameters
  679. real global I[3];
  680. real global m;
  681. variables
  682. real II[6,6]; //Inertial tensor
  683. real Q[6,6];
  684. real QI[6,6];
  685. real Ia[6];
  686. initialequations
  687. Ia[1:3] = I;
  688. Ia[4:6] = m;
  689. II = diag(Ia);
  690. equations
  691. Q = transpose(adjoint(p1.f));
  692. QI = Q*II;
  693. p1.e = QI*p1.f;implementation_end;
  694. Gravity 624 400
  695. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:3:26</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  696. type Se
  697. ports
  698. power out p [6,1];
  699. restrictions
  700. causality fixed out p;
  701. end;
  702. icon bg bottom
  703. figures
  704. text 'Se' 624 400 color 0 18 bold;
  705. end;
  706. implementation eq
  707. parameters
  708. real global m;
  709. variables
  710. real effort[6];
  711. equations
  712. effort = [0;0;0;0;0;-g_n*m];
  713. p.e = effort;
  714. implementation_end;
  715. InertialTensor 544 272
  716. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  717. <LibraryPath>Bond Graph\3D\I-3.emx</LibraryPath>
  718. <TimeStamp>2007-9-25 12:12:14</TimeStamp>
  719. </Description>';
  720. type 'I-3'
  721. ports
  722. power in p [6,1];
  723. signal out state [6,1];
  724. restrictions
  725. causality preferred in p;
  726. end;
  727. icon bg bottom
  728. figures
  729. text 'I' 544 272 color 0 18 bold;
  730. end;
  731. implementation eq
  732. parameters
  733. real global I[3];
  734. real global m;
  735. variables
  736. real II[6,6]; //Inertial tensor
  737. real Ia[6];
  738. initialequations
  739. Ia[1:3] = I;
  740. Ia[4:6] = m;
  741. II = diag(Ia);
  742. equations
  743. state = int(p.e); //state = generalized momentum
  744. p.f = inverse(II)*state;
  745. implementation_end;
  746. plug Hin 433.4 496;
  747. plug Hout 691.2 496;
  748. plug p 424 336;
  749. Splitter1 544 496
  750. description '<Description><Version>4.0</Version>
  751. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  752. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  753. <IsMainModel>1</IsMainModel>
  754. <KeepParameterValues>False</KeepParameterValues>
  755. </Description>';
  756. knot Splitter
  757. ports
  758. signal knot duplicatable out output [4,4];
  759. signal knot in input [4,4];
  760. end;
  761. icon bg ellipse
  762. figures
  763. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  764. ellipse 539.7 491.7 548.3 500.3 color -1;
  765. terminals
  766. input 544 496 fixed;
  767. end;
  768. implementation eq
  769. equations
  770. collect (output) = input;
  771. implementation_end;
  772. Ta0j 544 336
  773. description '<Description>
  774. <Version>4.0</Version>
  775. <IsMainModel>1</IsMainModel>
  776. <KeepParameterValues>False</KeepParameterValues>
  777. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  778. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  779. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  780. <Description></Description>
  781. </Description>';
  782. knot OneJunction
  783. ports
  784. power knot duplicatable none p [6,1];
  785. signal knot out flow [6,1];
  786. restrictions
  787. causality constraint one_out p;
  788. end;
  789. icon bg bottom
  790. figures
  791. text '1' 544 336 color 0 18 bold;
  792. end;
  793. implementation eq
  794. equations
  795. sum (direct (p.e)) = 0;
  796. equal (collect (p.f));
  797. flow = first (p.f);
  798. implementation_end;
  799. ZeroJunction1 480 336
  800. description '<Information>
  801. <Description>
  802. <Version>4.2</Version>
  803. <IsMainModel>1</IsMainModel>
  804. <KeepParameterValues>False</KeepParameterValues>
  805. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  806. <TimeStamp>2011-11-29 16:45:16</TimeStamp>
  807. </Description>
  808. </Information>';
  809. knot ZeroJunction
  810. ports
  811. power knot duplicatable none p [6,1];
  812. signal knot out effort [6,1];
  813. restrictions
  814. causality constraint one_in p;
  815. end;
  816. icon bg
  817. figures
  818. text '0' 480 336 color 0 18 bold;
  819. end;
  820. implementation eq
  821. equations
  822. sum (direct (p.f)) = 0;
  823. equal (collect (p.e));
  824. effort = first (p.e);
  825. implementation_end;
  826. end;
  827. connections
  828. AdHi0\p2 => Ta0j\p;
  829. Gravity\p => AdHi0\p1;
  830. Hin -> Splitter1\input;
  831. Splitter1\output -> AdHi0\H;
  832. Splitter1\output -> Hout;
  833. Ta0j\p => EJS\p1;
  834. Ta0j\p => InertialTensor\p;
  835. ZeroJunction1\p => p;
  836. ZeroJunction1\p => Ta0j\p;
  837. end;
  838. implementation_end;
  839. Ground 144 104
  840. description '<Information>
  841. <Description>
  842. <Version>4.8</Version>
  843. <IsMainModel>1</IsMainModel>
  844. <LibraryPath>Bond Graph\MR\Ground.emx</LibraryPath>
  845. <TimeStamp>2020-7-23 09:30:51</TimeStamp>
  846. </Description>
  847. </Information>';
  848. type Submodel
  849. ports
  850. power in p [6,1];
  851. signal out output [4,4];
  852. end;
  853. icon bg bottom
  854. figures
  855. line 108 96.5 124 112.5 color 0 fill 15132390;
  856. line 116 96.5 132 112.5 color 0 fill 15132390;
  857. line 100 96.5 116 112.5 color 0 fill 15132390;
  858. line 140 112.5 124 96.5 color 0 fill 15132390;
  859. line 148 112.5 132 96.5 color 0 fill 15132390;
  860. line 156 112.5 140 96.5 color 0 fill 15132390;
  861. line 172 112.5 156 96.5 color 0 fill 15132390;
  862. line 164 112.5 148 96.5 color 0 fill 15132390;
  863. line 180 112.5 164 96.5 color 0 fill 15132390;
  864. line 188 112.5 172 96.5 color 0 fill 15132390;
  865. line 100 96.5 188 96.5 color 0 fill 15132390 width 2;
  866. line 180 96.5 188 104.5 color 0 fill 15132390;
  867. line 100 104.5 108 112.5 color 0 fill 15132390;
  868. terminals
  869. p 124 96.5 fixed;
  870. output 156 96.5 fixed;
  871. end;
  872. implementation bg
  873. submodels
  874. plug p 240 88;
  875. plug output 240 120;
  876. OneJunction2 192 88
  877. description '<Information>
  878. <Description>
  879. <Version>4.2</Version>
  880. <IsMainModel>1</IsMainModel>
  881. <KeepParameterValues>False</KeepParameterValues>
  882. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  883. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  884. </Description>
  885. </Information>';
  886. knot OneJunction
  887. ports
  888. power knot duplicatable none p [6,1];
  889. signal knot out flow [6,1];
  890. restrictions
  891. causality constraint one_out p;
  892. end;
  893. icon bg
  894. figures
  895. text '1' 192 88 color 0 18 bold;
  896. end;
  897. implementation eq
  898. equations
  899. sum (direct (p.e)) = 0;
  900. equal (collect (p.f));
  901. flow = first (p.f);
  902. implementation_end;
  903. Sf2 136 88
  904. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  905. <LibraryPath>Bond Graph\2D\Sf-2.emx</LibraryPath>
  906. <TimeStamp>2007-9-25 12:7:5</TimeStamp>
  907. </Description>';
  908. type 'Sf-2'
  909. ports
  910. power out p [6,1];
  911. restrictions
  912. causality fixed in p;
  913. end;
  914. icon bg bottom
  915. figures
  916. text 'Sf' 136 88 color 0 18 bold;
  917. end;
  918. implementation eq
  919. parameters
  920. real flow[6,1] = 0;
  921. variables
  922. real effort [6];
  923. equations
  924. p.f = flow;
  925. effort = p.e;
  926. implementation_end;
  927. Zero 144 120
  928. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  929. <LibraryPath>Signal\Sources\Zero.emx</LibraryPath>
  930. <TimeStamp>2007-9-27 15:54:36</TimeStamp>
  931. </Description>
  932. ';
  933. type Zero
  934. ports
  935. signal out output [4,4];
  936. end;
  937. icon bg bottom
  938. figures
  939. rectangle 128.1 104 159.9 136 color 0 fill 15132390;
  940. text '0' 144 120 color 16711680 18 bold;
  941. end;
  942. implementation eq
  943. equations
  944. output = eye(4);implementation_end;
  945. end;
  946. connections
  947. p => OneJunction2\p;
  948. Sf2\p => OneJunction2\p;
  949. Zero\output -> output;
  950. end;
  951. implementation_end;
  952. inverse_kinematics1 344 536
  953. description '<Information>
  954. <Description>
  955. <Version>4.8</Version>
  956. <LibraryPath>SCARA\inverse_kinematics_v1.emx</LibraryPath>
  957. <IsMainModel>1</IsMainModel>
  958. <KeepParameterValues>False</KeepParameterValues>
  959. <TimeStamp>2020-7-10 12:26:18</TimeStamp>
  960. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  961. </Description>
  962. </Information>';
  963. type 'Submodel-Equation'
  964. ports
  965. signal in input [2,1] {m} ;
  966. signal out angle1 {rad} ;
  967. signal out angle2 {rad} ;
  968. signal out a {rad} ;
  969. signal out b {rad} ;
  970. signal out c {rad} ;
  971. signal out phi {rad} ;
  972. signal out abs_angle2;
  973. end;
  974. implementation eq
  975. parameters
  976. real A_length = 0.065 {m}; // length of first arm
  977. real B_length = 0.05 {m}; // length of second arm
  978. real to_rad = 1 {rad};
  979. variables
  980. real x {m}, y {m};
  981. real C_length {m}; // length to x and y.
  982. equations
  983. x = input[1];
  984. y = input[2];
  985. phi = atan2(y, x);
  986. C_length = sqrt(x^2 + y^2);
  987. a = arccos ((B_length^2 + C_length^2 - A_length^2) / (2 * B_length * C_length));
  988. b = arccos ((A_length^2 + C_length^2 - B_length^2) / (2 * A_length * C_length));
  989. c = arccos ((A_length^2 + B_length^2 - C_length^2) / (2 * A_length * B_length));
  990. angle1 = b + phi;
  991. abs_angle2 = angle1 - pi * to_rad + c;
  992. angle2 = c - pi * to_rad;
  993. implementation_end;
  994. Joint 264 104
  995. description '<Information>
  996. <Description>
  997. <Version>4.8</Version>
  998. <IsMainModel>1</IsMainModel>
  999. <LibraryPath>Bond Graph\MR\joint-v3.emx</LibraryPath>
  1000. <TimeStamp>2020-7-21 12:08:53</TimeStamp>
  1001. </Description>
  1002. </Information>';
  1003. type 'Submodel-v3'
  1004. ports
  1005. power in Pin [6,1];
  1006. power in Pdiff [6,1];
  1007. signal in Hin [4,4];
  1008. signal out Hout [4,4];
  1009. signal out Hdiff [4,4];
  1010. power out Pout [6,1];
  1011. end;
  1012. icon bg bottom
  1013. figures
  1014. rectangle 240 72 288 136 color 0 fill 14745599;
  1015. text 'Joint' 264 104 color 0 'Clear Sans' 16;
  1016. terminals
  1017. Pin 288 88 fixed;
  1018. Hin 240 120 fixed;
  1019. Hout 288 120 fixed;
  1020. Pout 240 88 fixed;
  1021. end;
  1022. implementation bg
  1023. submodels
  1024. AdHji 424 424
  1025. description '<Description>
  1026. <Version>4.0</Version>
  1027. <IsMainModel>1</IsMainModel>
  1028. <KeepParameterValues>False</KeepParameterValues>
  1029. <LibraryPath>Bond Graph\MTF.emx</LibraryPath>
  1030. <TimeStamp>2007-9-25 12:3:3</TimeStamp>
  1031. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1032. </Description>';
  1033. type MTF
  1034. ports
  1035. power out p1 [6,1];
  1036. power in p2 [6,1];
  1037. signal in H [4,4];
  1038. restrictions
  1039. causality constraint not_equal p1 p2;
  1040. end;
  1041. icon bg bottom
  1042. figures
  1043. text 'MTF' 424 424 color 0 18 bold;
  1044. end;
  1045. implementation eq
  1046. equations
  1047. p2.e = transpose(Adjoint(H)) * p1.e;
  1048. p1.f = Adjoint(H) * p2.f;implementation_end;
  1049. FlowSensor2 184 311.9
  1050. description '<Information>
  1051. <Description>
  1052. <Version>4.2</Version>
  1053. <IsMainModel>1</IsMainModel>
  1054. <KeepParameterValues>False</KeepParameterValues>
  1055. <LibraryPath>Bond Graph\FlowSensor.emx</LibraryPath>
  1056. <TimeStamp>2011-11-29 15:50:53</TimeStamp>
  1057. </Description>
  1058. </Information>';
  1059. knot FlowSensor
  1060. ports
  1061. power knot in p1 [6,1];
  1062. power knot out p2 [6,1];
  1063. signal knot out flow [6,1];
  1064. restrictions
  1065. causality constraint not_equal p1 p2;
  1066. end;
  1067. icon bg ellipse
  1068. figures
  1069. ellipse 177.1 304.8 190.9 319.1 color 0 fill 16777215;
  1070. text 'f' 184 311.2 color 0;
  1071. end;
  1072. implementation eq
  1073. equations
  1074. p2.f = p1.f;
  1075. p1.e = p2.e;
  1076. flow = p1.f;
  1077. implementation_end;
  1078. Hmatrix 256 312
  1079. description '<Information><Description><Version>4.0</Version><LibraryPath>Template\Submodel-Equation.emx</LibraryPath><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><TimeStamp>2007-11-1 22:32:1</TimeStamp><AllowLibraryUpdate>False</AllowLibraryUpdate></Description></Information>';
  1080. type 'Submodel-Equation'
  1081. ports
  1082. signal in flow [6,1];
  1083. signal out H [4,4];
  1084. end;
  1085. icon bg
  1086. figures
  1087. rectangle 224 296 288 328 color 0 fill 15132390;
  1088. text 'name' 256 312 color 0 'Clear Sans' 16;
  1089. end;
  1090. implementation eq
  1091. parameters
  1092. real init[4] = [1;0;0;0];
  1093. variables
  1094. real q[4]; //quaternions
  1095. real W[3,4]; //Quaternion Rates Matrix
  1096. real R[3,3]; //Rotation Matrix
  1097. real p[3]; //Position Vector
  1098. real dq[4];
  1099. real Wb[3,4];
  1100. equations
  1101. dq = transpose(Wb) * flow[1:3] ./ 2;
  1102. q = int(dq,init);
  1103. p = int(flow[4:6]);
  1104. W = [-q[2], q[1], -q[4], q[3];
  1105. -q[3], q[4], q[1], -q[2];
  1106. -q[4], -q[3], q[2], q[1]];
  1107. Wb = [ -q[2], q[1], q[4], -q[3];
  1108. -q[3], -q[4], q[1], q[2];
  1109. -q[4], q[3], -q[2], q[1]];
  1110. R = [q[1]^2+q[2]^2-q[3]^2-q[4]^2, 2*(q[2]*q[3]+q[1]*q[4]), 2*(q[2]*q[4]-q[1]*q[3]);
  1111. 2*(q[2]*q[3]-q[1]*q[4]), q[1]^2-q[2]^2+q[3]^2-q[4]^2, 2*(q[3]*q[4]+q[1]*q[2]);
  1112. 2*(q[2]*q[4]+q[1]*q[3]), 2*(q[3]*q[4]-q[1]*q[2]), q[1]^2-q[2]^2-q[3]^2+q[4]^2];
  1113. H = homogeneous(R,p);
  1114. implementation_end;
  1115. MatrixMul 320 576
  1116. description '<Description>
  1117. <Version>4.0</Version>
  1118. <IsMainModel>1</IsMainModel>
  1119. <KeepParameterValues>False</KeepParameterValues>
  1120. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  1121. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  1122. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1123. </Description>';
  1124. type Gain
  1125. ports
  1126. signal in input1 [4,4];
  1127. signal out output [4,4];
  1128. signal in input2 [4,4];
  1129. end;
  1130. icon bg bottom
  1131. figures
  1132. rectangle 304.1 560 335.9 592 color 0 fill 15132390;
  1133. text 'X' 320 576 color 16711680 16 bold;
  1134. end;
  1135. implementation eq
  1136. equations
  1137. output = input2*input1; implementation_end;
  1138. plug Pin 492.1 424;
  1139. plug Pdiff 184 225;
  1140. plug Hin 130.8 576;
  1141. plug Hout 478.4 576;
  1142. plug Hdiff 320 222;
  1143. plug Pout 134.7 424;
  1144. Splitter2 320 312
  1145. description '<Description><Version>4.0</Version>
  1146. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  1147. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  1148. <IsMainModel>1</IsMainModel>
  1149. <KeepParameterValues>False</KeepParameterValues>
  1150. </Description>';
  1151. knot Splitter
  1152. ports
  1153. signal knot duplicatable out output [4,4];
  1154. signal knot in input [4,4];
  1155. end;
  1156. icon bg ellipse
  1157. figures
  1158. ellipse 316.8 308.8 323.2 315.2 color -1 fill 0;
  1159. ellipse 315.7 307.7 324.3 316.3 color -1;
  1160. terminals
  1161. input 320 312 fixed;
  1162. end;
  1163. implementation eq
  1164. equations
  1165. collect (output) = input;
  1166. implementation_end;
  1167. Wbai 184 424
  1168. description '<Description>
  1169. <Version>4.0</Version>
  1170. <IsMainModel>1</IsMainModel>
  1171. <KeepParameterValues>False</KeepParameterValues>
  1172. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  1173. <TimeStamp>2007-9-27 9:51:43</TimeStamp>
  1174. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1175. </Description>';
  1176. knot ZeroJunction
  1177. ports
  1178. power knot duplicatable none p [6,1];
  1179. signal knot out effort [6,1];
  1180. restrictions
  1181. causality constraint one_in p;
  1182. end;
  1183. icon bg bottom
  1184. figures
  1185. text '0' 184 424 color 0 18 bold;
  1186. end;
  1187. implementation eq
  1188. equations
  1189. sum (direct (p.f)) = 0;
  1190. equal (collect (p.e));
  1191. effort = first (p.e);
  1192. implementation_end;
  1193. end;
  1194. connections
  1195. FlowSensor2\flow -> Hmatrix\flow;
  1196. FlowSensor2\p2 => Wbai\p;
  1197. Hin -> MatrixMul\input2;
  1198. Hmatrix\H -> Splitter2\input;
  1199. MatrixMul\output -> Hout;
  1200. Pdiff => FlowSensor2\p1;
  1201. Pin => AdHji\p2;
  1202. Splitter2\output -> AdHji\H 424 312;
  1203. Splitter2\output -> Hdiff;
  1204. Splitter2\output -> MatrixMul\input1;
  1205. Wbai\p <= AdHji\p1;
  1206. Wbai\p => Pout;
  1207. end;
  1208. implementation_end;
  1209. Joint1 608 104
  1210. description '<Information>
  1211. <Description>
  1212. <Version>4.8</Version>
  1213. <IsMainModel>1</IsMainModel>
  1214. <LibraryPath>Bond Graph\MR\joint-v3.emx</LibraryPath>
  1215. <TimeStamp>2020-7-21 12:08:53</TimeStamp>
  1216. </Description>
  1217. </Information>';
  1218. type 'Submodel-v3'
  1219. ports
  1220. power in Pin [6,1];
  1221. power in Pdiff [6,1];
  1222. signal in Hin [4,4];
  1223. signal out Hout [4,4];
  1224. signal out Hdiff [4,4];
  1225. power out Pout [6,1];
  1226. end;
  1227. icon bg bottom
  1228. figures
  1229. rectangle 584 72 632 136 color 0 fill 14745599;
  1230. text 'Joint' 608 104 color 0 'Clear Sans' 16;
  1231. terminals
  1232. Pin 632 88 fixed;
  1233. Hin 584 120 fixed;
  1234. Hout 632 120 fixed;
  1235. Pout 584 88 fixed;
  1236. end;
  1237. implementation bg
  1238. submodels
  1239. AdHji 424 424
  1240. description '<Description>
  1241. <Version>4.0</Version>
  1242. <IsMainModel>1</IsMainModel>
  1243. <KeepParameterValues>False</KeepParameterValues>
  1244. <LibraryPath>Bond Graph\MTF.emx</LibraryPath>
  1245. <TimeStamp>2007-9-25 12:3:3</TimeStamp>
  1246. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1247. </Description>';
  1248. type MTF
  1249. ports
  1250. power out p1 [6,1];
  1251. power in p2 [6,1];
  1252. signal in H [4,4];
  1253. restrictions
  1254. causality constraint not_equal p1 p2;
  1255. end;
  1256. icon bg bottom
  1257. figures
  1258. text 'MTF' 424 424 color 0 18 bold;
  1259. end;
  1260. implementation eq
  1261. equations
  1262. p2.e = transpose(Adjoint(H)) * p1.e;
  1263. p1.f = Adjoint(H) * p2.f;implementation_end;
  1264. FlowSensor2 184 311.9
  1265. description '<Information>
  1266. <Description>
  1267. <Version>4.2</Version>
  1268. <IsMainModel>1</IsMainModel>
  1269. <KeepParameterValues>False</KeepParameterValues>
  1270. <LibraryPath>Bond Graph\FlowSensor.emx</LibraryPath>
  1271. <TimeStamp>2011-11-29 15:50:53</TimeStamp>
  1272. </Description>
  1273. </Information>';
  1274. knot FlowSensor
  1275. ports
  1276. power knot in p1 [6,1];
  1277. power knot out p2 [6,1];
  1278. signal knot out flow [6,1];
  1279. restrictions
  1280. causality constraint not_equal p1 p2;
  1281. end;
  1282. icon bg ellipse
  1283. figures
  1284. ellipse 177.1 304.8 190.9 319.1 color 0 fill 16777215;
  1285. text 'f' 184 311.2 color 0;
  1286. end;
  1287. implementation eq
  1288. equations
  1289. p2.f = p1.f;
  1290. p1.e = p2.e;
  1291. flow = p1.f;
  1292. implementation_end;
  1293. Hmatrix 256 312
  1294. description '<Information><Description><Version>4.0</Version><LibraryPath>Template\Submodel-Equation.emx</LibraryPath><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><TimeStamp>2007-11-1 22:32:1</TimeStamp><AllowLibraryUpdate>False</AllowLibraryUpdate></Description></Information>';
  1295. type 'Submodel-Equation'
  1296. ports
  1297. signal in flow [6,1];
  1298. signal out H [4,4];
  1299. end;
  1300. icon bg
  1301. figures
  1302. rectangle 224 296 288 328 color 0 fill 15132390;
  1303. text 'name' 256 312 color 0 'Clear Sans' 16;
  1304. end;
  1305. implementation eq
  1306. parameters
  1307. real init[4] = [1;0;0;0];
  1308. variables
  1309. real q[4]; //quaternions
  1310. real W[3,4]; //Quaternion Rates Matrix
  1311. real R[3,3]; //Rotation Matrix
  1312. real p[3]; //Position Vector
  1313. real dq[4];
  1314. real Wb[3,4];
  1315. equations
  1316. dq = transpose(Wb) * flow[1:3] ./ 2;
  1317. q = int(dq,init);
  1318. p = int(flow[4:6]);
  1319. W = [-q[2], q[1], -q[4], q[3];
  1320. -q[3], q[4], q[1], -q[2];
  1321. -q[4], -q[3], q[2], q[1]];
  1322. Wb = [ -q[2], q[1], q[4], -q[3];
  1323. -q[3], -q[4], q[1], q[2];
  1324. -q[4], q[3], -q[2], q[1]];
  1325. R = [q[1]^2+q[2]^2-q[3]^2-q[4]^2, 2*(q[2]*q[3]+q[1]*q[4]), 2*(q[2]*q[4]-q[1]*q[3]);
  1326. 2*(q[2]*q[3]-q[1]*q[4]), q[1]^2-q[2]^2+q[3]^2-q[4]^2, 2*(q[3]*q[4]+q[1]*q[2]);
  1327. 2*(q[2]*q[4]+q[1]*q[3]), 2*(q[3]*q[4]-q[1]*q[2]), q[1]^2-q[2]^2-q[3]^2+q[4]^2];
  1328. H = homogeneous(R,p);
  1329. implementation_end;
  1330. MatrixMul 320 576
  1331. description '<Description>
  1332. <Version>4.0</Version>
  1333. <IsMainModel>1</IsMainModel>
  1334. <KeepParameterValues>False</KeepParameterValues>
  1335. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  1336. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  1337. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1338. </Description>';
  1339. type Gain
  1340. ports
  1341. signal in input1 [4,4];
  1342. signal out output [4,4];
  1343. signal in input2 [4,4];
  1344. end;
  1345. icon bg bottom
  1346. figures
  1347. rectangle 304.1 560 335.9 592 color 0 fill 15132390;
  1348. text 'X' 320 576 color 16711680 16 bold;
  1349. end;
  1350. implementation eq
  1351. equations
  1352. output = input2*input1; implementation_end;
  1353. plug Pin 492.1 424;
  1354. plug Pdiff 184 225;
  1355. plug Hin 130.8 576;
  1356. plug Hout 478.4 576;
  1357. plug Hdiff 320 222;
  1358. plug Pout 134.7 424;
  1359. Splitter2 320 312
  1360. description '<Description><Version>4.0</Version>
  1361. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  1362. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  1363. <IsMainModel>1</IsMainModel>
  1364. <KeepParameterValues>False</KeepParameterValues>
  1365. </Description>';
  1366. knot Splitter
  1367. ports
  1368. signal knot duplicatable out output [4,4];
  1369. signal knot in input [4,4];
  1370. end;
  1371. icon bg ellipse
  1372. figures
  1373. ellipse 316.8 308.8 323.2 315.2 color -1 fill 0;
  1374. ellipse 315.7 307.7 324.3 316.3 color -1;
  1375. terminals
  1376. input 320 312 fixed;
  1377. end;
  1378. implementation eq
  1379. equations
  1380. collect (output) = input;
  1381. implementation_end;
  1382. Wbai 184 424
  1383. description '<Description>
  1384. <Version>4.0</Version>
  1385. <IsMainModel>1</IsMainModel>
  1386. <KeepParameterValues>False</KeepParameterValues>
  1387. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  1388. <TimeStamp>2007-9-27 9:51:43</TimeStamp>
  1389. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1390. </Description>';
  1391. knot ZeroJunction
  1392. ports
  1393. power knot duplicatable none p [6,1];
  1394. signal knot out effort [6,1];
  1395. restrictions
  1396. causality constraint one_in p;
  1397. end;
  1398. icon bg bottom
  1399. figures
  1400. text '0' 184 424 color 0 18 bold;
  1401. end;
  1402. implementation eq
  1403. equations
  1404. sum (direct (p.f)) = 0;
  1405. equal (collect (p.e));
  1406. effort = first (p.e);
  1407. implementation_end;
  1408. end;
  1409. connections
  1410. FlowSensor2\flow -> Hmatrix\flow;
  1411. FlowSensor2\p2 => Wbai\p;
  1412. Hin -> MatrixMul\input2;
  1413. Hmatrix\H -> Splitter2\input;
  1414. MatrixMul\output -> Hout;
  1415. Pdiff => FlowSensor2\p1;
  1416. Pin => AdHji\p2;
  1417. Splitter2\output -> AdHji\H 424 312;
  1418. Splitter2\output -> Hdiff;
  1419. Splitter2\output -> MatrixMul\input1;
  1420. Wbai\p <= AdHji\p1;
  1421. Wbai\p => Pout;
  1422. end;
  1423. implementation_end;
  1424. Link 360 104
  1425. description '<Information>
  1426. <Description>
  1427. <Version>4.8</Version>
  1428. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1429. <IsMainModel>1</IsMainModel>
  1430. <KeepParameterValues>False</KeepParameterValues>
  1431. <TimeStamp>2020-7-21 11:14:41</TimeStamp>
  1432. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1433. </Description>
  1434. </Information>';
  1435. type 'Submodel-Equation'
  1436. ports
  1437. signal in Hin [4,4];
  1438. signal out Hout [4,4];
  1439. power in Pin [6,1];
  1440. power out Pout [6,1];
  1441. restrictions
  1442. causality constraint not_equal Pin Pout;
  1443. end;
  1444. icon bg bottom
  1445. figures
  1446. rectangle 328 80 392 128 color 0 fill 8454041;
  1447. text 'Link' 360 104 color 0 'Clear Sans' 16;
  1448. terminals
  1449. Hin 328 120 fixed;
  1450. Hout 392 120 fixed;
  1451. Pin 392 88 fixed;
  1452. Pout 328 88 fixed;
  1453. end;
  1454. implementation eq
  1455. parameters
  1456. real offset[6]= [0;0;0;0;0.0325;0]; //coordinates of joint_1
  1457. variables
  1458. real Hab[4,4];
  1459. real AdHab[6,6];
  1460. real R[3,3];
  1461. real omega[3];
  1462. initialequations
  1463. omega = offset[1:3];
  1464. R = dll('EulerAngles.dll','RotationMatrixFromEulXYZs',omega);
  1465. Hab = homogeneous(R,offset[4:6]);
  1466. AdHab = Adjoint(Hab);
  1467. equations
  1468. Hout = Hin * Hab;
  1469. Pout.e = transpose(AdHab) * Pin.e;
  1470. Pin.f = AdHab * Pout.f;
  1471. implementation_end;
  1472. Link1 528 104
  1473. description '<Information>
  1474. <Description>
  1475. <Version>4.8</Version>
  1476. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1477. <IsMainModel>1</IsMainModel>
  1478. <KeepParameterValues>False</KeepParameterValues>
  1479. <TimeStamp>2020-7-21 11:14:41</TimeStamp>
  1480. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1481. </Description>
  1482. </Information>';
  1483. type 'Submodel-Equation'
  1484. ports
  1485. signal in Hin [4,4];
  1486. signal out Hout [4,4];
  1487. power in Pin [6,1];
  1488. power out Pout [6,1];
  1489. restrictions
  1490. causality constraint not_equal Pin Pout;
  1491. end;
  1492. icon bg bottom
  1493. figures
  1494. rectangle 496 80 560 128 color 0 fill 8454041;
  1495. text 'Link' 528 104 color 0 'Clear Sans' 16;
  1496. terminals
  1497. Hin 496 120 fixed;
  1498. Hout 560 120 fixed;
  1499. Pin 560 88 fixed;
  1500. Pout 496 88 fixed;
  1501. end;
  1502. implementation eq
  1503. parameters
  1504. real offset[6]= [0;0;0;0;0.0325;0]; //coordinates of joint_1
  1505. variables
  1506. real Hab[4,4];
  1507. real AdHab[6,6];
  1508. real R[3,3];
  1509. real omega[3];
  1510. initialequations
  1511. omega = offset[1:3];
  1512. R = dll('EulerAngles.dll','RotationMatrixFromEulXYZr',omega);
  1513. Hab = homogeneous(R,offset[4:6]);
  1514. AdHab = Adjoint(Hab);
  1515. equations
  1516. Hout = Hin * Hab;
  1517. Pout.e = transpose(AdHab) * Pin.e;
  1518. Pin.f = AdHab * Pout.f;
  1519. implementation_end;
  1520. Link2 696 104
  1521. description '<Information>
  1522. <Description>
  1523. <Version>4.8</Version>
  1524. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1525. <IsMainModel>1</IsMainModel>
  1526. <KeepParameterValues>False</KeepParameterValues>
  1527. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1528. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1529. </Description>
  1530. </Information>';
  1531. type 'Submodel-Equation'
  1532. ports
  1533. signal in Hin [4,4];
  1534. signal out Hout [4,4];
  1535. power in Pin [6,1];
  1536. power out Pout [6,1];
  1537. restrictions
  1538. causality constraint not_equal Pin Pout;
  1539. end;
  1540. icon bg bottom
  1541. figures
  1542. rectangle 664 80 728 128 color 0 fill 8454041;
  1543. text 'Link' 696 104 color 0 'Clear Sans' 16;
  1544. terminals
  1545. Hin 664 120 fixed;
  1546. Hout 728 120 fixed;
  1547. Pin 728 88 fixed;
  1548. Pout 664 88 fixed;
  1549. end;
  1550. implementation eq
  1551. parameters
  1552. real offset[3]= [0;0.025;0]; //coordinates of joint_1
  1553. variables
  1554. real Hab[4,4];
  1555. real AdHab[6,6];
  1556. equations
  1557. Hab = homogeneous(eye(3),offset);
  1558. AdHab = Adjoint(eye(3),offset);
  1559. Hout = Hin * Hab;
  1560. Pout.e = transpose(AdHab) * Pin.e;
  1561. Pin.f = AdHab * Pout.f;
  1562. implementation_end;
  1563. Link3 872 104
  1564. description '<Information>
  1565. <Description>
  1566. <Version>4.8</Version>
  1567. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1568. <IsMainModel>1</IsMainModel>
  1569. <KeepParameterValues>False</KeepParameterValues>
  1570. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1571. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1572. </Description>
  1573. </Information>';
  1574. type 'Submodel-Equation'
  1575. ports
  1576. signal in Hin [4,4];
  1577. signal out Hout [4,4];
  1578. power in Pin [6,1];
  1579. power out Pout [6,1];
  1580. restrictions
  1581. causality constraint not_equal Pin Pout;
  1582. end;
  1583. icon bg bottom
  1584. figures
  1585. rectangle 840 80 904 128 color 0 fill 8454041;
  1586. text 'Link' 872 104 color 0 'Clear Sans' 16;
  1587. terminals
  1588. Hin 840 120 fixed;
  1589. Hout 904 120 fixed;
  1590. Pin 904 88 fixed;
  1591. Pout 840 88 fixed;
  1592. end;
  1593. implementation eq
  1594. parameters
  1595. real offset[3]= [0;0.025;0]; //coordinates of joint_1
  1596. variables
  1597. real Hab[4,4];
  1598. real AdHab[6,6];
  1599. equations
  1600. Hab = homogeneous(eye(3),offset);
  1601. AdHab = Adjoint(eye(3),offset);
  1602. Hout = Hin * Hab;
  1603. Pout.e = transpose(AdHab) * Pin.e;
  1604. Pin.f = AdHab * Pout.f;
  1605. implementation_end;
  1606. Negate1 344 456
  1607. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1608. <LibraryPath>Signal\Block Diagram\Negate.emx</LibraryPath>
  1609. <TimeStamp>2007-9-26 12:14:11</TimeStamp>
  1610. </Description>';
  1611. type Negate
  1612. ports
  1613. signal in input;
  1614. signal out output;
  1615. end;
  1616. icon bg bottom
  1617. figures
  1618. rectangle 328 440 360 472 color 0 fill 15132390;
  1619. text '-1' 344 456 color 16711680 16 bold;
  1620. end;
  1621. implementation eq
  1622. equations
  1623. output = - input;
  1624. implementation_end;
  1625. Negate2 592 536
  1626. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1627. <LibraryPath>Signal\Block Diagram\Negate.emx</LibraryPath>
  1628. <TimeStamp>2007-9-26 12:14:11</TimeStamp>
  1629. </Description>';
  1630. type Negate
  1631. ports
  1632. signal in input;
  1633. signal out output;
  1634. end;
  1635. icon bg bottom
  1636. figures
  1637. rectangle 576 520 608 552 color 0 fill 15132390;
  1638. text '-1' 592 536 color 16711680 16 bold;
  1639. end;
  1640. implementation eq
  1641. equations
  1642. output = - input;
  1643. implementation_end;
  1644. new_joint1 448 264
  1645. description '<Description><Version>4.0</Version>
  1646. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1647. <IsMainModel>1</IsMainModel>
  1648. <KeepParameterValues>False</KeepParameterValues>
  1649. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1650. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1651. </Description>';
  1652. type 'Submodel-Equation'
  1653. ports
  1654. signal in input [4,4];
  1655. end;
  1656. implementation eq
  1657. variables
  1658. real position[3];
  1659. real rotation[3];
  1660. real R[3,3];
  1661. equations
  1662. position = input[1:3,4];
  1663. rotation = dll('EulerAngles.dll','EulXYZsFromHMatrix',input);
  1664. //[input[3,2];input[1,3];input[2,1]];
  1665. R = input[1:3,1:3];implementation_end;
  1666. new_joint2 792 240
  1667. description '<Description><Version>4.0</Version>
  1668. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1669. <IsMainModel>1</IsMainModel>
  1670. <KeepParameterValues>False</KeepParameterValues>
  1671. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1672. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1673. </Description>';
  1674. type 'Submodel-Equation'
  1675. ports
  1676. signal in input [4,4];
  1677. end;
  1678. implementation eq
  1679. variables
  1680. real position[3];
  1681. real rotation[3];
  1682. real R[3,3];
  1683. equations
  1684. // start typing here
  1685. position = input[1:3,4];
  1686. rotation = [input[3,2];input[1,3];input[2,1]];
  1687. R = input[1:3,1:3];implementation_end;
  1688. new_joint3 1088 168
  1689. description '<Description><Version>4.0</Version>
  1690. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1691. <IsMainModel>1</IsMainModel>
  1692. <KeepParameterValues>False</KeepParameterValues>
  1693. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1694. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1695. </Description>';
  1696. type 'Submodel-Equation'
  1697. ports
  1698. signal in input [4,4];
  1699. end;
  1700. implementation eq
  1701. variables
  1702. real position[3];
  1703. real rotation[3];
  1704. real R[3,3];
  1705. equations
  1706. position = input[1:3,4];
  1707. rotation = [input[3,2];input[1,3];input[2,1]];
  1708. R = input[1:3,1:3];implementation_end;
  1709. OneJunction1 432 88
  1710. description '<Information>
  1711. <Description>
  1712. <Version>4.2</Version>
  1713. <IsMainModel>1</IsMainModel>
  1714. <KeepParameterValues>False</KeepParameterValues>
  1715. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1716. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1717. </Description>
  1718. </Information>';
  1719. knot OneJunction
  1720. ports
  1721. power knot duplicatable none p [6,1];
  1722. signal knot out flow [6,1];
  1723. restrictions
  1724. causality constraint one_out p;
  1725. end;
  1726. icon bg
  1727. figures
  1728. text '1' 432 88 color 0 18 bold;
  1729. end;
  1730. implementation eq
  1731. equations
  1732. sum (direct (p.e)) = 0;
  1733. equal (collect (p.f));
  1734. flow = first (p.f);
  1735. implementation_end;
  1736. OneJunction11 592 336
  1737. description '<Information>
  1738. <Description>
  1739. <Version>4.2</Version>
  1740. <IsMainModel>1</IsMainModel>
  1741. <KeepParameterValues>False</KeepParameterValues>
  1742. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1743. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1744. </Description>
  1745. </Information>';
  1746. knot OneJunction
  1747. ports
  1748. rotation knot duplicatable none p [1];
  1749. signal knot out flow [1];
  1750. restrictions
  1751. causality constraint one_out p;
  1752. end;
  1753. icon bg
  1754. figures
  1755. text '1' 592 336 color 0 18 bold;
  1756. end;
  1757. implementation eq
  1758. equations
  1759. sum (direct (p.e)) = 0;
  1760. equal (collect (p.f));
  1761. flow = first (p.f);
  1762. implementation_end;
  1763. OneJunction12 960 88
  1764. description '<Information>
  1765. <Description>
  1766. <Version>4.2</Version>
  1767. <IsMainModel>1</IsMainModel>
  1768. <KeepParameterValues>False</KeepParameterValues>
  1769. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1770. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1771. </Description>
  1772. </Information>';
  1773. knot OneJunction
  1774. ports
  1775. power knot duplicatable none p [6,1];
  1776. signal knot out flow [6,1];
  1777. restrictions
  1778. causality constraint one_out p;
  1779. end;
  1780. icon bg
  1781. figures
  1782. text '1' 960 88 color 0 18 bold;
  1783. end;
  1784. implementation eq
  1785. equations
  1786. sum (direct (p.e)) = 0;
  1787. equal (collect (p.f));
  1788. flow = first (p.f);
  1789. implementation_end;
  1790. OneJunction14 184 328
  1791. description '<Information>
  1792. <Description>
  1793. <Version>4.2</Version>
  1794. <IsMainModel>1</IsMainModel>
  1795. <KeepParameterValues>False</KeepParameterValues>
  1796. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1797. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1798. </Description>
  1799. </Information>';
  1800. knot OneJunction
  1801. ports
  1802. rotation knot duplicatable none p [1];
  1803. signal knot out flow [1];
  1804. restrictions
  1805. causality constraint one_out p;
  1806. end;
  1807. icon bg
  1808. figures
  1809. text '1' 184 328 color 0 18 bold;
  1810. end;
  1811. implementation eq
  1812. equations
  1813. sum (direct (p.e)) = 0;
  1814. equal (collect (p.f));
  1815. flow = first (p.f);
  1816. implementation_end;
  1817. OneJunction17 528 264
  1818. description '<Information>
  1819. <Description>
  1820. <Version>4.2</Version>
  1821. <IsMainModel>1</IsMainModel>
  1822. <KeepParameterValues>False</KeepParameterValues>
  1823. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1824. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1825. </Description>
  1826. </Information>';
  1827. knot OneJunction
  1828. ports
  1829. rotation knot duplicatable none p [1];
  1830. signal knot out flow [1];
  1831. restrictions
  1832. causality constraint one_out p;
  1833. end;
  1834. icon bg
  1835. figures
  1836. text '1' 528 264 color 0 18 bold;
  1837. end;
  1838. implementation eq
  1839. equations
  1840. sum (direct (p.e)) = 0;
  1841. equal (collect (p.f));
  1842. flow = first (p.f);
  1843. implementation_end;
  1844. OneJunction3 776 88
  1845. description '<Information>
  1846. <Description>
  1847. <Version>4.2</Version>
  1848. <IsMainModel>1</IsMainModel>
  1849. <KeepParameterValues>False</KeepParameterValues>
  1850. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1851. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1852. </Description>
  1853. </Information>';
  1854. knot OneJunction
  1855. ports
  1856. power knot duplicatable none p [6,1];
  1857. signal knot out flow [6,1];
  1858. restrictions
  1859. causality constraint one_out p;
  1860. end;
  1861. icon bg
  1862. figures
  1863. text '1' 776 88 color 0 18 bold;
  1864. end;
  1865. implementation eq
  1866. equations
  1867. sum (direct (p.e)) = 0;
  1868. equal (collect (p.f));
  1869. flow = first (p.f);
  1870. implementation_end;
  1871. OneJunction4 664 216
  1872. description '<Information>
  1873. <Description>
  1874. <Version>4.2</Version>
  1875. <IsMainModel>1</IsMainModel>
  1876. <KeepParameterValues>False</KeepParameterValues>
  1877. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1878. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1879. </Description>
  1880. </Information>';
  1881. knot OneJunction
  1882. ports
  1883. power knot duplicatable none p [2,1];
  1884. signal knot out flow [2,1];
  1885. restrictions
  1886. causality constraint one_out p;
  1887. end;
  1888. icon bg
  1889. figures
  1890. text '1' 664 216 color 0 18 bold;
  1891. end;
  1892. implementation eq
  1893. equations
  1894. sum (direct (p.e)) = 0;
  1895. equal (collect (p.f));
  1896. flow = first (p.f);
  1897. implementation_end;
  1898. OneJunction5 329 224
  1899. description '<Information>
  1900. <Description>
  1901. <Version>4.2</Version>
  1902. <IsMainModel>1</IsMainModel>
  1903. <KeepParameterValues>False</KeepParameterValues>
  1904. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1905. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1906. </Description>
  1907. </Information>';
  1908. knot OneJunction
  1909. ports
  1910. power knot duplicatable none p [2,1];
  1911. signal knot out flow [2,1];
  1912. restrictions
  1913. causality constraint one_out p;
  1914. end;
  1915. icon bg
  1916. figures
  1917. text '1' 329 224 color 0 18 bold;
  1918. end;
  1919. implementation eq
  1920. equations
  1921. sum (direct (p.e)) = 0;
  1922. equal (collect (p.f));
  1923. flow = first (p.f);
  1924. implementation_end;
  1925. OneJunction6 329 240
  1926. description '<Information>
  1927. <Description>
  1928. <Version>4.2</Version>
  1929. <IsMainModel>1</IsMainModel>
  1930. <KeepParameterValues>False</KeepParameterValues>
  1931. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1932. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1933. </Description>
  1934. </Information>';
  1935. knot OneJunction
  1936. ports
  1937. power knot duplicatable none p [3,1];
  1938. signal knot out flow [3,1];
  1939. restrictions
  1940. causality constraint one_out p;
  1941. end;
  1942. icon bg
  1943. figures
  1944. text '1' 329 240 color 0 18 bold;
  1945. end;
  1946. implementation eq
  1947. equations
  1948. sum (direct (p.e)) = 0;
  1949. equal (collect (p.f));
  1950. flow = first (p.f);
  1951. implementation_end;
  1952. OneJunction7 664 232
  1953. description '<Information>
  1954. <Description>
  1955. <Version>4.2</Version>
  1956. <IsMainModel>1</IsMainModel>
  1957. <KeepParameterValues>False</KeepParameterValues>
  1958. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1959. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1960. </Description>
  1961. </Information>';
  1962. knot OneJunction
  1963. ports
  1964. power knot duplicatable none p [3,1];
  1965. signal knot out flow [3,1];
  1966. restrictions
  1967. causality constraint one_out p;
  1968. end;
  1969. icon bg
  1970. figures
  1971. text '1' 664 232 color 0 18 bold;
  1972. end;
  1973. implementation eq
  1974. equations
  1975. sum (direct (p.e)) = 0;
  1976. equal (collect (p.f));
  1977. flow = first (p.f);
  1978. implementation_end;
  1979. OneJunction8 104 264
  1980. description '<Information>
  1981. <Description>
  1982. <Version>4.2</Version>
  1983. <IsMainModel>1</IsMainModel>
  1984. <KeepParameterValues>False</KeepParameterValues>
  1985. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1986. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1987. </Description>
  1988. </Information>';
  1989. knot OneJunction
  1990. ports
  1991. rotation knot duplicatable none p [1];
  1992. signal knot out flow [1];
  1993. restrictions
  1994. causality constraint one_out p;
  1995. end;
  1996. icon bg
  1997. figures
  1998. text '1' 104 264 color 0 18 bold;
  1999. end;
  2000. implementation eq
  2001. equations
  2002. sum (direct (p.e)) = 0;
  2003. equal (collect (p.f));
  2004. flow = first (p.f);
  2005. implementation_end;
  2006. PowerMux 264 198
  2007. specifications active 'rot_x'
  2008. specification 'rot_x'
  2009. description '<Information>
  2010. <Description>
  2011. <Version>4.8</Version>
  2012. <LibraryPath>Bond Graph\MR\PowerMux-Rotation.emx</LibraryPath>
  2013. <TimeStamp>2020-7-20 14:35:23</TimeStamp>
  2014. <IsMainModel>1</IsMainModel>
  2015. <KeepParameterValues>False</KeepParameterValues>
  2016. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2017. </Description>
  2018. </Information>';
  2019. type 'PowerMux-Rotation'
  2020. ports
  2021. power in input;
  2022. power out output [6,1];
  2023. power in input_rot2 [2,1];
  2024. power in input_pos3 [3,1];
  2025. restrictions
  2026. causality constraint not_equal input output;
  2027. causality constraint not_equal input_rot2 output;
  2028. causality constraint not_equal input_pos3 output;
  2029. end;
  2030. icon bg bottom
  2031. figures
  2032. line 240 200 288 200 color 0 width 2;
  2033. rectangle 240 192 288 204 color -1;
  2034. text '1' 258 195 color 8421504 8;
  2035. terminals
  2036. input 248 200 fixed;
  2037. output 264 200 fixed;
  2038. input_rot2 280 200 fixed;
  2039. input_pos3 264 200 fixed;
  2040. end;
  2041. implementation eq
  2042. equations
  2043. output.e[1] = input.e;
  2044. output.e[2:3] = input_rot2.e;
  2045. output.e[4:6] = input_pos3.e;
  2046. output.f[1] = input.f;
  2047. output.f[2:3] = input_rot2.f;
  2048. output.f[4:6] = input_pos3.f;implementation_end;
  2049. specification_end;
  2050. specification 'rot_y'
  2051. description '<Description>
  2052. <Version>4.1</Version>
  2053. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2054. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2055. <IsMainModel>1</IsMainModel>
  2056. <KeepParameterValues>False</KeepParameterValues>
  2057. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2058. </Description>';
  2059. type PowerMux
  2060. ports
  2061. power in input;
  2062. power out output [6,1];
  2063. power in input_rot2 [2,1];
  2064. power in input_pos3 [3,1];
  2065. restrictions
  2066. causality constraint not_equal input output;
  2067. end;
  2068. icon bg bottom
  2069. figures
  2070. line 808 216 808 264 color 0 width 2;
  2071. rectangle 804 216 816 264 color -1;
  2072. text '1' 813 234 color 8421504 8;
  2073. terminals
  2074. input 808 224 fixed;
  2075. output 808 240 fixed;
  2076. input_rot2 808 256 fixed;
  2077. input_pos3 808 240 fixed;
  2078. end;
  2079. implementation eq
  2080. equations
  2081. output.e[1] = input_rot2.e[1];
  2082. output.e[2] = input.e;
  2083. output.e[3] = input_rot2.e[2];
  2084. output.e[4:6] = input_pos3.e;
  2085. output.f[1] = input_rot2.f[1];
  2086. output.f[2] = input.f;
  2087. output.f[3] = input_rot2.f[2];
  2088. output.f[4:6] = input_pos3.f;implementation_end;
  2089. specification_end;
  2090. specification 'rot_z'
  2091. description '<Description>
  2092. <Version>4.1</Version>
  2093. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2094. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2095. <IsMainModel>1</IsMainModel>
  2096. <KeepParameterValues>False</KeepParameterValues>
  2097. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2098. </Description>';
  2099. type PowerMux
  2100. ports
  2101. power in input;
  2102. power out output [6,1];
  2103. power in input_rot2 [2,1];
  2104. power in input_pos3 [3,1];
  2105. restrictions
  2106. causality constraint not_equal input output;
  2107. end;
  2108. icon bg bottom
  2109. figures
  2110. line 808 216 808 264 color 0 width 2;
  2111. rectangle 804 216 816 264 color -1;
  2112. text '1' 813 234 color 8421504 8;
  2113. terminals
  2114. input 808 224 fixed;
  2115. output 808 240 fixed;
  2116. input_rot2 808 256 fixed;
  2117. input_pos3 808 240 fixed;
  2118. end;
  2119. implementation eq
  2120. equations
  2121. output.e[3] = input.e;
  2122. output.e[1:2] = input_rot2.e;
  2123. output.e[4:6] = input_pos3.e;
  2124. output.f[3] = input.f;
  2125. output.f[1:2] = input_rot2.f;
  2126. output.f[4:6] = input_pos3.f;implementation_end;
  2127. specification_end;
  2128. end;
  2129. PowerMux1 608 190
  2130. specifications active 'rot_x'
  2131. specification 'rot_x'
  2132. description '<Information>
  2133. <Description>
  2134. <Version>4.8</Version>
  2135. <LibraryPath>Bond Graph\MR\PowerMux-Rotation.emx</LibraryPath>
  2136. <TimeStamp>2020-7-20 14:35:23</TimeStamp>
  2137. <IsMainModel>1</IsMainModel>
  2138. <KeepParameterValues>False</KeepParameterValues>
  2139. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2140. </Description>
  2141. </Information>';
  2142. type 'PowerMux-Rotation'
  2143. ports
  2144. power in input;
  2145. power out output [6,1];
  2146. power in input_rot2 [2,1];
  2147. power in input_pos3 [3,1];
  2148. restrictions
  2149. causality constraint not_equal input output;
  2150. causality constraint not_equal input_rot2 output;
  2151. causality constraint not_equal input_pos3 output;
  2152. end;
  2153. icon bg bottom
  2154. figures
  2155. line 584 192 632 192 color 0 width 2;
  2156. rectangle 584 184 632 196 color -1;
  2157. text '1' 602 187 color 8421504 8;
  2158. terminals
  2159. input 592 192 fixed;
  2160. output 608 192 fixed;
  2161. input_rot2 624 192 fixed;
  2162. input_pos3 608 192 fixed;
  2163. end;
  2164. implementation eq
  2165. equations
  2166. output.e[1] = input.e;
  2167. output.e[2:3] = input_rot2.e;
  2168. output.e[4:6] = input_pos3.e;
  2169. output.f[1] = input.f;
  2170. output.f[2:3] = input_rot2.f;
  2171. output.f[4:6] = input_pos3.f;implementation_end;
  2172. specification_end;
  2173. specification 'rot_y'
  2174. description '<Description>
  2175. <Version>4.1</Version>
  2176. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2177. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2178. <IsMainModel>1</IsMainModel>
  2179. <KeepParameterValues>False</KeepParameterValues>
  2180. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2181. </Description>';
  2182. type PowerMux
  2183. ports
  2184. power in input;
  2185. power out output [6,1];
  2186. power in input_rot2 [2,1];
  2187. power in input_pos3 [3,1];
  2188. restrictions
  2189. causality constraint not_equal input output;
  2190. end;
  2191. icon bg bottom
  2192. figures
  2193. line 808 216 808 264 color 0 width 2;
  2194. rectangle 804 216 816 264 color -1;
  2195. text '1' 813 234 color 8421504 8;
  2196. terminals
  2197. input 808 224 fixed;
  2198. output 808 240 fixed;
  2199. input_rot2 808 256 fixed;
  2200. input_pos3 808 240 fixed;
  2201. end;
  2202. implementation eq
  2203. equations
  2204. output.e[1] = input_rot2.e[1];
  2205. output.e[2] = input.e;
  2206. output.e[3] = input_rot2.e[2];
  2207. output.e[4:6] = input_pos3.e;
  2208. output.f[1] = input_rot2.f[1];
  2209. output.f[2] = input.f;
  2210. output.f[3] = input_rot2.f[2];
  2211. output.f[4:6] = input_pos3.f;implementation_end;
  2212. specification_end;
  2213. specification 'rot_z'
  2214. description '<Description>
  2215. <Version>4.1</Version>
  2216. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2217. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2218. <IsMainModel>1</IsMainModel>
  2219. <KeepParameterValues>False</KeepParameterValues>
  2220. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2221. </Description>';
  2222. type PowerMux
  2223. ports
  2224. power in input;
  2225. power out output [6,1];
  2226. power in input_rot2 [2,1];
  2227. power in input_pos3 [3,1];
  2228. restrictions
  2229. causality constraint not_equal input output;
  2230. end;
  2231. icon bg bottom
  2232. figures
  2233. line 808 216 808 264 color 0 width 2;
  2234. rectangle 804 216 816 264 color -1;
  2235. text '1' 813 234 color 8421504 8;
  2236. terminals
  2237. input 808 224 fixed;
  2238. output 808 240 fixed;
  2239. input_rot2 808 256 fixed;
  2240. input_pos3 808 240 fixed;
  2241. end;
  2242. implementation eq
  2243. equations
  2244. output.e[3] = input.e;
  2245. output.e[1:2] = input_rot2.e;
  2246. output.e[4:6] = input_pos3.e;
  2247. output.f[3] = input.f;
  2248. output.f[1:2] = input_rot2.f;
  2249. output.f[4:6] = input_pos3.f;implementation_end;
  2250. specification_end;
  2251. end;
  2252. R1 528 312
  2253. description '<Information>
  2254. <Description>
  2255. <Version>4.2</Version>
  2256. <IsMainModel>1</IsMainModel>
  2257. <KeepParameterValues>False</KeepParameterValues>
  2258. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2259. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2260. </Description>
  2261. </Information>';
  2262. type R
  2263. ports
  2264. power in p;
  2265. end;
  2266. icon bg bottom
  2267. figures
  2268. text 'R' 528 312 color 0 18 bold;
  2269. end;
  2270. implementation eq
  2271. parameters
  2272. real r = 25;
  2273. equations
  2274. p.e = r * p.f;
  2275. implementation_end;
  2276. R2 329 168
  2277. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2278. <LibraryPath>Bond Graph\2D\R-2.emx</LibraryPath>
  2279. <TimeStamp>2007-9-25 12:6:54</TimeStamp>
  2280. </Description>';
  2281. type 'R-2'
  2282. ports
  2283. power in p [2,1];
  2284. end;
  2285. icon bg bottom
  2286. figures
  2287. text 'R' 329 168 color 0 18 bold;
  2288. end;
  2289. implementation eq
  2290. parameters
  2291. real r[2,2] = [1.0, 0.0; 0.0, 1.0] {kN.m.s/rad};
  2292. equations
  2293. p.e = r * p.f;
  2294. implementation_end;
  2295. R3 329 296
  2296. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2297. <LibraryPath>Bond Graph\3D\R-3.emx</LibraryPath>
  2298. <TimeStamp>2007-9-25 12:11:54</TimeStamp>
  2299. </Description>';
  2300. type 'R-3'
  2301. ports
  2302. power in p [3,1];
  2303. end;
  2304. icon bg bottom
  2305. figures
  2306. text 'R' 329 296 color 0 18 bold;
  2307. end;
  2308. implementation eq
  2309. parameters
  2310. real r[3,3] = [1.0, 0.0, 0.0; 0.0, 1.0, 0.0; 0.0, 0.0, 1.0] {kN.s/m};
  2311. equations
  2312. p.e = r * p.f;
  2313. implementation_end;
  2314. R4 664 160
  2315. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2316. <LibraryPath>Bond Graph\2D\R-2.emx</LibraryPath>
  2317. <TimeStamp>2007-9-25 12:6:54</TimeStamp>
  2318. </Description>';
  2319. type 'R-2'
  2320. ports
  2321. power in p [2,1];
  2322. end;
  2323. icon bg top
  2324. figures
  2325. text 'R' 664 160 color 0 18 bold;
  2326. end;
  2327. implementation eq
  2328. parameters
  2329. real r[2,2] = [1.0, 0.0; 0.0, 1.0] {kN.m.s/rad};
  2330. equations
  2331. p.e = r * p.f;
  2332. implementation_end;
  2333. R5 664 280
  2334. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2335. <LibraryPath>Bond Graph\3D\R-3.emx</LibraryPath>
  2336. <TimeStamp>2007-9-25 12:11:54</TimeStamp>
  2337. </Description>';
  2338. type 'R-3'
  2339. ports
  2340. power in p [3,1];
  2341. end;
  2342. icon bg bottom
  2343. figures
  2344. text 'R' 664 280 color 0 18 bold;
  2345. end;
  2346. implementation eq
  2347. parameters
  2348. real r[3,3] = [1.0, 0.0, 0.0; 0.0, 1.0, 0.0; 0.0, 0.0, 1.0] {kN.s/m};
  2349. equations
  2350. p.e = r * p.f;
  2351. implementation_end;
  2352. R6 104 312
  2353. description '<Information>
  2354. <Description>
  2355. <Version>4.2</Version>
  2356. <IsMainModel>1</IsMainModel>
  2357. <KeepParameterValues>False</KeepParameterValues>
  2358. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2359. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2360. </Description>
  2361. </Information>';
  2362. type R
  2363. ports
  2364. power in p;
  2365. end;
  2366. icon bg bottom
  2367. figures
  2368. text 'R' 104 312 color 0 18 bold;
  2369. end;
  2370. implementation eq
  2371. parameters
  2372. real r = 25;
  2373. equations
  2374. p.e = r * p.f;
  2375. implementation_end;
  2376. rectanglepath 176 536
  2377. description '<Information>
  2378. <Description>
  2379. <Version>4.8</Version>
  2380. <LibraryPath>setpoint\rectanglepath.emx</LibraryPath>
  2381. <IsMainModel>1</IsMainModel>
  2382. <KeepParameterValues>False</KeepParameterValues>
  2383. <TimeStamp>2020-7-10 12:30:38</TimeStamp>
  2384. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  2385. </Description>
  2386. </Information>';
  2387. type 'Submodel-Equation'
  2388. ports
  2389. signal out output [2,1];
  2390. end;
  2391. implementation eq
  2392. /*
  2393. This will generate coordinates for the box that has to be drawn
  2394. */
  2395. parameters
  2396. real w = 0.07{m} ;
  2397. real h = 0.05 {m};
  2398. real t = 0.5 {s};
  2399. real origin[2] = [0.01,0.03]{m};
  2400. variables
  2401. real v {m/s};
  2402. real t_w {s};
  2403. real t_h {s};
  2404. real period {s};
  2405. initialequations
  2406. v = (2*w + 2*h)/t;
  2407. t_w = w / v;
  2408. t_h = h / v;
  2409. equations
  2410. period = floor(time / t) * t;
  2411. output[1] = v*(ramp(period+t_h) - ramp(period + t_w+t_h) - ramp(period + t_w + t_h + t_h)) + origin[1];
  2412. output[2] = v*(ramp(period) - ramp(period + t_h) - ramp(period + t_h + t_w) + ramp(period + 2 * t_h + t_w))+ origin[2];
  2413. implementation_end;
  2414. rectanglepath1 344 640
  2415. description '<Information>
  2416. <Description>
  2417. <Version>4.8</Version>
  2418. <LibraryPath>setpoint\rectanglepath.emx</LibraryPath>
  2419. <IsMainModel>1</IsMainModel>
  2420. <KeepParameterValues>False</KeepParameterValues>
  2421. <TimeStamp>2020-7-10 12:30:38</TimeStamp>
  2422. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  2423. </Description>
  2424. </Information>';
  2425. type 'Submodel-Equation'
  2426. ports
  2427. signal out output [2,1];
  2428. end;
  2429. icon bg
  2430. figures
  2431. rectangle 288 624 400 656 color 0 fill 15132390;
  2432. text 'name' 344 640 color 0 'Clear Sans' 16;
  2433. end;
  2434. implementation eq
  2435. /*
  2436. This will generate coordinates for the box that has to be drawn
  2437. */
  2438. parameters
  2439. real w = 0.07{m} ;
  2440. real h = 0.05 {m};
  2441. real t = 1 {s};
  2442. real origin[2] = [0.01,0.03]{m};
  2443. variables
  2444. real v {m/s};
  2445. real t_w {s};
  2446. real t_h {s};
  2447. real period {s};
  2448. boolean y;
  2449. initialequations
  2450. v = (2*w + 2*h)/t;
  2451. t_w = w / v;
  2452. t_h = h / v;
  2453. code
  2454. y = frequencyevent (t,0);
  2455. period = t - time + floor(time / t) * t;
  2456. if period < t_w or time < 4 then
  2457. output = origin;
  2458. else
  2459. if period < t_w + t_h then
  2460. output = origin + [w;0];
  2461. else
  2462. if period < 2 * t_w + t_h then
  2463. output = origin + [w;h];
  2464. else
  2465. output = origin + [0;h];
  2466. end;
  2467. end;
  2468. end;
  2469. //output[1] = v*(ramp(period+t_h) - ramp(period + t_w+t_h) - ramp(period + t_w + t_h + t_h)) + origin[1];
  2470. //output[2] = v*(ramp(period) - ramp(period + t_h) - ramp(period + t_h + t_w) + ramp(period + 2 * t_h + t_w))+ origin[2];
  2471. implementation_end;
  2472. Splitter1 464 120
  2473. description '<Description><Version>4.0</Version>
  2474. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2475. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2476. <IsMainModel>1</IsMainModel>
  2477. <KeepParameterValues>False</KeepParameterValues>
  2478. </Description>';
  2479. knot Splitter
  2480. ports
  2481. signal knot duplicatable out output [4,4];
  2482. signal knot in input [4,4];
  2483. end;
  2484. icon bg ellipse
  2485. figures
  2486. ellipse 460.8 116.8 467.2 123.2 color -1 fill 0;
  2487. ellipse 459.7 115.7 468.3 124.3 color -1;
  2488. terminals
  2489. input 464 120 fixed;
  2490. end;
  2491. implementation eq
  2492. equations
  2493. collect (output) = input;
  2494. implementation_end;
  2495. Splitter2 808 120
  2496. description '<Description><Version>4.0</Version>
  2497. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2498. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2499. <IsMainModel>1</IsMainModel>
  2500. <KeepParameterValues>False</KeepParameterValues>
  2501. </Description>';
  2502. knot Splitter
  2503. ports
  2504. signal knot duplicatable out output [4,4];
  2505. signal knot in input [4,4];
  2506. end;
  2507. icon bg ellipse
  2508. figures
  2509. ellipse 804.8 116.8 811.2 123.2 color -1 fill 0;
  2510. ellipse 803.7 115.7 812.3 124.3 color -1;
  2511. terminals
  2512. input 808 120 fixed;
  2513. end;
  2514. implementation eq
  2515. equations
  2516. collect (output) = input;
  2517. implementation_end;
  2518. stepper_control 184 456
  2519. description '<Information>
  2520. <Description>
  2521. <Version>4.8</Version>
  2522. <IsMainModel>1</IsMainModel>
  2523. <LibraryPath>Motor\stepper_control.emx</LibraryPath>
  2524. <TimeStamp>2020-7-22 15:25:26</TimeStamp>
  2525. </Description>
  2526. </Information>';
  2527. type Submodel
  2528. ports
  2529. signal in setpoint {rad} ;
  2530. signal out output {rad} ;
  2531. end;
  2532. implementation bg
  2533. submodels
  2534. Acceleration_int 648 336
  2535. description '<Information>
  2536. <Description>
  2537. <Version>4.3</Version>
  2538. <IsMainModel>1</IsMainModel>
  2539. <KeepParameterValues>False</KeepParameterValues>
  2540. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  2541. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  2542. </Description>
  2543. </Information>';
  2544. type Integrate
  2545. ports
  2546. signal in input;
  2547. signal out output;
  2548. end;
  2549. icon bg bottom
  2550. figures
  2551. rectangle 632 320 664 352 color 0 fill 15132390;
  2552. text '∫' 648 336.3 color 16711680 'Lucida Sans' 21 italic;
  2553. end;
  2554. implementation eq
  2555. parameters
  2556. real initial = 0; // initial value
  2557. equations
  2558. output = int (input, initial);
  2559. implementation_end;
  2560. Acceleration_limit 568 336
  2561. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2562. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  2563. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  2564. </Description>';
  2565. type 'SignalLimiter-Limit'
  2566. ports
  2567. signal in input;
  2568. signal out output;
  2569. end;
  2570. icon bg bottom
  2571. figures
  2572. group
  2573. rectangle 552 320 584 352 color 0 fill 15132390;
  2574. line 567.9 324.5 567.9 349 color 0 fill 15132390;
  2575. line 555 336.2 580.7 336.2 color 0 fill 15132390;
  2576. spline 561.9 343.1 573.9 329.4 color 16711680 fill 15132390 width 2;
  2577. spline 573.3 330.2 581.9 329.8 color 16711680 fill 15132390 width 2;
  2578. spline 555 343.6 561.9 343.1 color 16711680 fill 15132390 width 2;
  2579. end;
  2580. end;
  2581. implementation eq
  2582. parameters
  2583. real maximum = 300;
  2584. real minimum = -300;
  2585. equations
  2586. output = limit (input, minimum, maximum);
  2587. implementation_end;
  2588. plug setpoint 136 336;
  2589. plug output 791 336;
  2590. PlusMinus1 240 336
  2591. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2592. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  2593. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  2594. </Description>';
  2595. knot PlusMinus
  2596. ports
  2597. signal knot duplicatable in plus [1];
  2598. signal knot duplicatable in minus [1];
  2599. signal knot out output [1];
  2600. end;
  2601. icon bg ellipse
  2602. figures
  2603. ellipse 232 328 248 344 color 0 fill 16777215;
  2604. end;
  2605. implementation eq
  2606. equations
  2607. output = sum (collect (plus)) - sum (collect (minus));
  2608. implementation_end;
  2609. PlusMinus2 432 336
  2610. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2611. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  2612. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  2613. </Description>';
  2614. knot PlusMinus
  2615. ports
  2616. signal knot duplicatable in plus [1];
  2617. signal knot duplicatable in minus [1];
  2618. signal knot out output [1];
  2619. end;
  2620. icon bg ellipse
  2621. figures
  2622. ellipse 424 328 440 344 color 0 fill 16777215;
  2623. end;
  2624. implementation eq
  2625. equations
  2626. output = sum (collect (plus)) - sum (collect (minus));
  2627. implementation_end;
  2628. Position_control 296 336
  2629. description '<Description>
  2630. <Version>4.0</Version>
  2631. <IsMainModel>1</IsMainModel>
  2632. <KeepParameterValues>False</KeepParameterValues>
  2633. <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
  2634. <TimeStamp>2008-1-17 10:49:7</TimeStamp>
  2635. </Description>';
  2636. type PD
  2637. ports
  2638. signal in error;
  2639. signal out output;
  2640. end;
  2641. icon bg bottom
  2642. figures
  2643. rectangle 280 320 312 352 color 0 fill 15132390;
  2644. text 'PD' 296.5 336.1 color 16711680 18 bold;
  2645. end;
  2646. implementation eq
  2647. parameters
  2648. real kp = 4 {}; // Proportional gain
  2649. real tauD = 100 {s}; // Derivative time constant: tauD > 0
  2650. real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
  2651. real maximum = 25;
  2652. variables
  2653. real state, rate;
  2654. equations
  2655. rate = (kp * error - output) / (beta * tauD);
  2656. state = int (rate);
  2657. output = state + kp * error / beta;
  2658. implementation_end;
  2659. Splitter3 688 336
  2660. description '<Description><Version>4.0</Version>
  2661. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2662. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2663. <IsMainModel>1</IsMainModel>
  2664. <KeepParameterValues>False</KeepParameterValues>
  2665. </Description>';
  2666. knot Splitter
  2667. ports
  2668. signal knot duplicatable out output [1];
  2669. signal knot in input [1];
  2670. end;
  2671. icon bg ellipse
  2672. figures
  2673. ellipse 684.8 332.8 691.2 339.2 color -1 fill 0;
  2674. ellipse 683.7 331.7 692.3 340.3 color -1;
  2675. terminals
  2676. input 688 336 fixed;
  2677. end;
  2678. implementation eq
  2679. equations
  2680. collect (output) = input;
  2681. implementation_end;
  2682. Splitter4 752 336
  2683. description '<Description><Version>4.0</Version>
  2684. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2685. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2686. <IsMainModel>1</IsMainModel>
  2687. <KeepParameterValues>False</KeepParameterValues>
  2688. </Description>';
  2689. knot Splitter
  2690. ports
  2691. signal knot duplicatable out output [1];
  2692. signal knot in input [1];
  2693. end;
  2694. icon bg ellipse
  2695. figures
  2696. ellipse 748.8 332.8 755.2 339.2 color -1 fill 0;
  2697. ellipse 747.7 331.7 756.3 340.3 color -1;
  2698. terminals
  2699. input 752 336 fixed;
  2700. end;
  2701. implementation eq
  2702. equations
  2703. collect (output) = input;
  2704. implementation_end;
  2705. Velocity_control 480 336
  2706. description '<Description>
  2707. <Version>4.0</Version>
  2708. <IsMainModel>1</IsMainModel>
  2709. <KeepParameterValues>False</KeepParameterValues>
  2710. <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
  2711. <TimeStamp>2008-1-17 10:49:7</TimeStamp>
  2712. </Description>';
  2713. type PD
  2714. ports
  2715. signal in error;
  2716. signal out output;
  2717. end;
  2718. icon bg bottom
  2719. figures
  2720. rectangle 464 320 496 352 color 0 fill 15132390;
  2721. text 'PD' 480.5 336.1 color 16711680 18 bold;
  2722. end;
  2723. implementation eq
  2724. parameters
  2725. real kp = 12 {}; // Proportional gain
  2726. real tauD = 10 {s}; // Derivative time constant: tauD > 0
  2727. real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
  2728. real maximum = 100;
  2729. variables
  2730. real state, rate;
  2731. equations
  2732. rate = (kp * error - output) / (beta * tauD);
  2733. state = int (rate);
  2734. output = state + kp * error / beta;
  2735. implementation_end;
  2736. Velocity_int 720 336
  2737. description '<Information>
  2738. <Description>
  2739. <Version>4.3</Version>
  2740. <IsMainModel>1</IsMainModel>
  2741. <KeepParameterValues>False</KeepParameterValues>
  2742. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  2743. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  2744. </Description>
  2745. </Information>';
  2746. type Integrate
  2747. ports
  2748. signal in input;
  2749. signal out output;
  2750. end;
  2751. icon bg bottom
  2752. figures
  2753. rectangle 704 320 736 352 color 0 fill 15132390;
  2754. text '∫' 720 336.3 color 16711680 'Lucida Sans' 21 italic;
  2755. end;
  2756. implementation eq
  2757. parameters
  2758. real initial = 0; // initial value
  2759. equations
  2760. output = int (input, initial);
  2761. implementation_end;
  2762. Velocity_limit 376 336
  2763. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2764. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  2765. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  2766. </Description>';
  2767. type 'SignalLimiter-Limit'
  2768. ports
  2769. signal in input;
  2770. signal out output;
  2771. end;
  2772. icon bg bottom
  2773. figures
  2774. group
  2775. rectangle 360 320 392 352 color 0 fill 15132390;
  2776. line 375.9 324.5 375.9 349 color 0 fill 15132390;
  2777. line 363 336.2 388.7 336.2 color 0 fill 15132390;
  2778. spline 369.9 343.1 381.9 329.4 color 16711680 fill 15132390 width 2;
  2779. spline 381.3 330.2 389.9 329.8 color 16711680 fill 15132390 width 2;
  2780. spline 363 343.6 369.9 343.1 color 16711680 fill 15132390 width 2;
  2781. end;
  2782. end;
  2783. implementation eq
  2784. parameters
  2785. real maximum = 25;
  2786. real minimum = -25;
  2787. equations
  2788. output = limit (input, minimum, maximum);
  2789. implementation_end;
  2790. end;
  2791. connections
  2792. Acceleration_int\output -> Splitter3\input;
  2793. Acceleration_limit\output -> Acceleration_int\input;
  2794. PlusMinus1\output -> Position_control\error;
  2795. PlusMinus2\output -> Velocity_control\error;
  2796. Position_control\output -> Velocity_limit\input;
  2797. setpoint -> PlusMinus1\plus;
  2798. Splitter3\output -> PlusMinus2\minus 688 288 432 288;
  2799. Splitter3\output -> Velocity_int\input;
  2800. Splitter4\output -> output;
  2801. Splitter4\output -> PlusMinus1\minus 752 400 240 400;
  2802. Velocity_control\output -> Acceleration_limit\input;
  2803. Velocity_int\output -> Splitter4\input;
  2804. Velocity_limit\output -> PlusMinus2\plus;
  2805. end;
  2806. implementation_end;
  2807. stepper_control1 592 456
  2808. description '<Information>
  2809. <Description>
  2810. <Version>4.8</Version>
  2811. <IsMainModel>1</IsMainModel>
  2812. <LibraryPath>Motor\stepper_control.emx</LibraryPath>
  2813. <TimeStamp>2020-7-22 15:25:26</TimeStamp>
  2814. </Description>
  2815. </Information>';
  2816. type Submodel
  2817. ports
  2818. signal in setpoint {rad} ;
  2819. signal out output {rad} ;
  2820. end;
  2821. implementation bg
  2822. submodels
  2823. Acceleration_int 648 336
  2824. description '<Information>
  2825. <Description>
  2826. <Version>4.3</Version>
  2827. <IsMainModel>1</IsMainModel>
  2828. <KeepParameterValues>False</KeepParameterValues>
  2829. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  2830. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  2831. </Description>
  2832. </Information>';
  2833. type Integrate
  2834. ports
  2835. signal in input;
  2836. signal out output;
  2837. end;
  2838. icon bg bottom
  2839. figures
  2840. rectangle 632 320 664 352 color 0 fill 15132390;
  2841. text '∫' 648 336.3 color 16711680 'Lucida Sans' 21 italic;
  2842. end;
  2843. implementation eq
  2844. parameters
  2845. real initial = 0; // initial value
  2846. equations
  2847. output = int (input, initial);
  2848. implementation_end;
  2849. Acceleration_limit 568 336
  2850. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2851. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  2852. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  2853. </Description>';
  2854. type 'SignalLimiter-Limit'
  2855. ports
  2856. signal in input;
  2857. signal out output;
  2858. end;
  2859. icon bg bottom
  2860. figures
  2861. group
  2862. rectangle 552 320 584 352 color 0 fill 15132390;
  2863. line 567.9 324.5 567.9 349 color 0 fill 15132390;
  2864. line 555 336.2 580.7 336.2 color 0 fill 15132390;
  2865. spline 561.9 343.1 573.9 329.4 color 16711680 fill 15132390 width 2;
  2866. spline 573.3 330.2 581.9 329.8 color 16711680 fill 15132390 width 2;
  2867. spline 555 343.6 561.9 343.1 color 16711680 fill 15132390 width 2;
  2868. end;
  2869. end;
  2870. implementation eq
  2871. parameters
  2872. real maximum = 300;
  2873. real minimum = -300;
  2874. equations
  2875. output = limit (input, minimum, maximum);
  2876. implementation_end;
  2877. plug setpoint 136 336;
  2878. plug output 791 336;
  2879. PlusMinus1 240 336
  2880. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2881. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  2882. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  2883. </Description>';
  2884. knot PlusMinus
  2885. ports
  2886. signal knot duplicatable in plus [1];
  2887. signal knot duplicatable in minus [1];
  2888. signal knot out output [1];
  2889. end;
  2890. icon bg ellipse
  2891. figures
  2892. ellipse 232 328 248 344 color 0 fill 16777215;
  2893. end;
  2894. implementation eq
  2895. equations
  2896. output = sum (collect (plus)) - sum (collect (minus));
  2897. implementation_end;
  2898. PlusMinus2 432 336
  2899. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2900. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  2901. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  2902. </Description>';
  2903. knot PlusMinus
  2904. ports
  2905. signal knot duplicatable in plus [1];
  2906. signal knot duplicatable in minus [1];
  2907. signal knot out output [1];
  2908. end;
  2909. icon bg ellipse
  2910. figures
  2911. ellipse 424 328 440 344 color 0 fill 16777215;
  2912. end;
  2913. implementation eq
  2914. equations
  2915. output = sum (collect (plus)) - sum (collect (minus));
  2916. implementation_end;
  2917. Position_control 296 336
  2918. description '<Description>
  2919. <Version>4.0</Version>
  2920. <IsMainModel>1</IsMainModel>
  2921. <KeepParameterValues>False</KeepParameterValues>
  2922. <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
  2923. <TimeStamp>2008-1-17 10:49:7</TimeStamp>
  2924. </Description>';
  2925. type PD
  2926. ports
  2927. signal in error;
  2928. signal out output;
  2929. end;
  2930. icon bg bottom
  2931. figures
  2932. rectangle 280 320 312 352 color 0 fill 15132390;
  2933. text 'PD' 296.5 336.1 color 16711680 18 bold;
  2934. end;
  2935. implementation eq
  2936. parameters
  2937. real kp = 4 {}; // Proportional gain
  2938. real tauD = 100 {s}; // Derivative time constant: tauD > 0
  2939. real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
  2940. real maximum = 25;
  2941. variables
  2942. real state, rate;
  2943. equations
  2944. rate = (kp * error - output) / (beta * tauD);
  2945. state = int (rate);
  2946. output = state + kp * error / beta;
  2947. implementation_end;
  2948. Splitter3 688 336
  2949. description '<Description><Version>4.0</Version>
  2950. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2951. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2952. <IsMainModel>1</IsMainModel>
  2953. <KeepParameterValues>False</KeepParameterValues>
  2954. </Description>';
  2955. knot Splitter
  2956. ports
  2957. signal knot duplicatable out output [1];
  2958. signal knot in input [1];
  2959. end;
  2960. icon bg ellipse
  2961. figures
  2962. ellipse 684.8 332.8 691.2 339.2 color -1 fill 0;
  2963. ellipse 683.7 331.7 692.3 340.3 color -1;
  2964. terminals
  2965. input 688 336 fixed;
  2966. end;
  2967. implementation eq
  2968. equations
  2969. collect (output) = input;
  2970. implementation_end;
  2971. Splitter4 752 336
  2972. description '<Description><Version>4.0</Version>
  2973. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2974. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2975. <IsMainModel>1</IsMainModel>
  2976. <KeepParameterValues>False</KeepParameterValues>
  2977. </Description>';
  2978. knot Splitter
  2979. ports
  2980. signal knot duplicatable out output [1];
  2981. signal knot in input [1];
  2982. end;
  2983. icon bg ellipse
  2984. figures
  2985. ellipse 748.8 332.8 755.2 339.2 color -1 fill 0;
  2986. ellipse 747.7 331.7 756.3 340.3 color -1;
  2987. terminals
  2988. input 752 336 fixed;
  2989. end;
  2990. implementation eq
  2991. equations
  2992. collect (output) = input;
  2993. implementation_end;
  2994. Velocity_control 480 336
  2995. description '<Description>
  2996. <Version>4.0</Version>
  2997. <IsMainModel>1</IsMainModel>
  2998. <KeepParameterValues>False</KeepParameterValues>
  2999. <LibraryPath>Signal\Control\PID Control\Continuous\PD.emx</LibraryPath>
  3000. <TimeStamp>2008-1-17 10:49:7</TimeStamp>
  3001. </Description>';
  3002. type PD
  3003. ports
  3004. signal in error;
  3005. signal out output;
  3006. end;
  3007. icon bg bottom
  3008. figures
  3009. rectangle 464 320 496 352 color 0 fill 15132390;
  3010. text 'PD' 480.5 336.1 color 16711680 18 bold;
  3011. end;
  3012. implementation eq
  3013. parameters
  3014. real kp = 12 {}; // Proportional gain
  3015. real tauD = 10 {s}; // Derivative time constant: tauD > 0
  3016. real beta = 0.4 {}; // Tameness constant: 0 < beta << 1
  3017. real maximum = 100;
  3018. variables
  3019. real state, rate;
  3020. equations
  3021. rate = (kp * error - output) / (beta * tauD);
  3022. state = int (rate);
  3023. output = state + kp * error / beta;
  3024. implementation_end;
  3025. Velocity_int 720 336
  3026. description '<Information>
  3027. <Description>
  3028. <Version>4.3</Version>
  3029. <IsMainModel>1</IsMainModel>
  3030. <KeepParameterValues>False</KeepParameterValues>
  3031. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  3032. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  3033. </Description>
  3034. </Information>';
  3035. type Integrate
  3036. ports
  3037. signal in input;
  3038. signal out output;
  3039. end;
  3040. icon bg bottom
  3041. figures
  3042. rectangle 704 320 736 352 color 0 fill 15132390;
  3043. text '∫' 720 336.3 color 16711680 'Lucida Sans' 21 italic;
  3044. end;
  3045. implementation eq
  3046. parameters
  3047. real initial = 0; // initial value
  3048. equations
  3049. output = int (input, initial);
  3050. implementation_end;
  3051. Velocity_limit 376 336
  3052. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  3053. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  3054. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  3055. </Description>';
  3056. type 'SignalLimiter-Limit'
  3057. ports
  3058. signal in input;
  3059. signal out output;
  3060. end;
  3061. icon bg bottom
  3062. figures
  3063. group
  3064. rectangle 360 320 392 352 color 0 fill 15132390;
  3065. line 375.9 324.5 375.9 349 color 0 fill 15132390;
  3066. line 363 336.2 388.7 336.2 color 0 fill 15132390;
  3067. spline 369.9 343.1 381.9 329.4 color 16711680 fill 15132390 width 2;
  3068. spline 381.3 330.2 389.9 329.8 color 16711680 fill 15132390 width 2;
  3069. spline 363 343.6 369.9 343.1 color 16711680 fill 15132390 width 2;
  3070. end;
  3071. end;
  3072. implementation eq
  3073. parameters
  3074. real maximum = 25;
  3075. real minimum = -25;
  3076. equations
  3077. output = limit (input, minimum, maximum);
  3078. implementation_end;
  3079. end;
  3080. connections
  3081. Acceleration_int\output -> Splitter3\input;
  3082. Acceleration_limit\output -> Acceleration_int\input;
  3083. PlusMinus1\output -> Position_control\error;
  3084. PlusMinus2\output -> Velocity_control\error;
  3085. Position_control\output -> Velocity_limit\input;
  3086. setpoint -> PlusMinus1\plus;
  3087. Splitter3\output -> PlusMinus2\minus 688 288 432 288;
  3088. Splitter3\output -> Velocity_int\input;
  3089. Splitter4\output -> output;
  3090. Splitter4\output -> PlusMinus1\minus 752 400 240 400;
  3091. Velocity_control\output -> Acceleration_limit\input;
  3092. Velocity_int\output -> Splitter4\input;
  3093. Velocity_limit\output -> PlusMinus2\plus;
  3094. end;
  3095. implementation_end;
  3096. stepper_model 184 376
  3097. description '<Information>
  3098. <Description>
  3099. <Version>4.8</Version>
  3100. <IsMainModel>1</IsMainModel>
  3101. <LibraryPath>Motor\stepper_model.emx</LibraryPath>
  3102. <TimeStamp>2020-7-22 15:25:37</TimeStamp>
  3103. </Description>
  3104. <Attributes>
  3105. <GlobalRelations>parameters
  3106. real I_phase = 3.4 {mH};
  3107. real R_phase = 2.9 {ohm};
  3108. real u_max = 3.4 {V};
  3109. real RotorInertia = 5.6e-6 {kg.m2};
  3110. real StepperMass = 0.29 {kg};
  3111. real angle_step = 1.8 {deg};
  3112. real n_phase = 2 {none};
  3113. real fluxLinkage = 0.0022 {Wb};
  3114. real detentTorque = 0.01 {N.m};
  3115. variables
  3116. real omega;
  3117. real p; // rotor division
  3118. initialequations
  3119. p = 2 * pi / (2 * n_phase * angle_step);
  3120. omega = 200;</GlobalRelations>
  3121. </Attributes>
  3122. </Information>';
  3123. type Submodel
  3124. ports
  3125. signal in angle;
  3126. rotation out p;
  3127. end;
  3128. implementation bg
  3129. submodels
  3130. I 224 104
  3131. description '<Information>
  3132. <Description>
  3133. <Version>4.2</Version>
  3134. <IsMainModel>1</IsMainModel>
  3135. <KeepParameterValues>False</KeepParameterValues>
  3136. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3137. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3138. </Description>
  3139. </Information>';
  3140. type I
  3141. ports
  3142. power in p;
  3143. signal out state;
  3144. restrictions
  3145. causality preferred in p;
  3146. end;
  3147. icon bg bottom
  3148. figures
  3149. text 'I' 224 104 color 0 18 bold;
  3150. end;
  3151. implementation eq
  3152. parameters
  3153. real global I_phase;
  3154. equations
  3155. state = int(p.e);
  3156. p.f = state / I_phase;
  3157. implementation_end;
  3158. I1 272 328
  3159. description '<Information>
  3160. <Description>
  3161. <Version>4.2</Version>
  3162. <IsMainModel>1</IsMainModel>
  3163. <KeepParameterValues>False</KeepParameterValues>
  3164. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3165. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3166. </Description>
  3167. </Information>';
  3168. type I
  3169. ports
  3170. power in p;
  3171. signal out state;
  3172. restrictions
  3173. causality preferred in p;
  3174. end;
  3175. icon bg bottom
  3176. figures
  3177. text 'I' 272 328 color 0 18 bold;
  3178. end;
  3179. implementation eq
  3180. parameters
  3181. real global I_phase;
  3182. equations
  3183. state = int(p.e);
  3184. p.f = state / I_phase;
  3185. implementation_end;
  3186. I2 416 160
  3187. description '<Information>
  3188. <Description>
  3189. <Version>4.2</Version>
  3190. <IsMainModel>1</IsMainModel>
  3191. <KeepParameterValues>False</KeepParameterValues>
  3192. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3193. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3194. </Description>
  3195. </Information>';
  3196. type I
  3197. ports
  3198. power in p;
  3199. signal out state;
  3200. restrictions
  3201. causality preferred in p;
  3202. end;
  3203. icon bg bottom
  3204. figures
  3205. text 'I' 416 160 color 0 18 bold;
  3206. end;
  3207. implementation eq
  3208. parameters
  3209. real i = 8e-5 {kg.m2};
  3210. real global RotorInertia;
  3211. equations
  3212. state = int(p.e);
  3213. p.f = state / (RotorInertia);
  3214. implementation_end;
  3215. MGY_a 320 160
  3216. description '<Information>
  3217. <Description>
  3218. <Version>4.2</Version>
  3219. <IsMainModel>1</IsMainModel>
  3220. <KeepParameterValues>False</KeepParameterValues>
  3221. <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
  3222. <TimeStamp>2011-11-29 16:03:53</TimeStamp>
  3223. </Description>
  3224. </Information>';
  3225. type MGY
  3226. ports
  3227. power in p1;
  3228. power out p2;
  3229. signal in r;
  3230. restrictions
  3231. causality constraint equal p1 p2;
  3232. end;
  3233. icon bg bottom
  3234. figures
  3235. text 'MGY' 320 160 color 0 18 bold;
  3236. end;
  3237. implementation eq
  3238. equations
  3239. p1.e = r * p2.f;
  3240. p2.e = r * p1.f;
  3241. implementation_end;
  3242. MGY_b 320 272
  3243. description '<Information>
  3244. <Description>
  3245. <Version>4.2</Version>
  3246. <IsMainModel>1</IsMainModel>
  3247. <KeepParameterValues>False</KeepParameterValues>
  3248. <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
  3249. <TimeStamp>2011-11-29 16:03:53</TimeStamp>
  3250. </Description>
  3251. </Information>';
  3252. type MGY
  3253. ports
  3254. power in p1;
  3255. power out p2;
  3256. signal in r;
  3257. restrictions
  3258. causality constraint equal p1 p2;
  3259. end;
  3260. icon bg bottom
  3261. figures
  3262. text 'MGY' 320 272 color 0 18 bold;
  3263. end;
  3264. implementation eq
  3265. equations
  3266. p1.e = r * p2.f;
  3267. p2.e = r * p1.f;
  3268. implementation_end;
  3269. MSe_a 176 160
  3270. description '<Information>
  3271. <Description>
  3272. <Version>4.2</Version>
  3273. <IsMainModel>1</IsMainModel>
  3274. <KeepParameterValues>False</KeepParameterValues>
  3275. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  3276. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  3277. </Description>
  3278. </Information>';
  3279. type MSe
  3280. ports
  3281. electric out p;
  3282. signal in effort;
  3283. restrictions
  3284. causality fixed out p;
  3285. end;
  3286. icon bg bottom
  3287. figures
  3288. text 'MSe' 176 160 color 0 18 bold;
  3289. end;
  3290. implementation eq
  3291. variables
  3292. real flow;
  3293. equations
  3294. p.e = effort;
  3295. flow = p.f;
  3296. implementation_end;
  3297. MSe_b 176 272
  3298. description '<Information>
  3299. <Description>
  3300. <Version>4.2</Version>
  3301. <IsMainModel>1</IsMainModel>
  3302. <KeepParameterValues>False</KeepParameterValues>
  3303. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  3304. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  3305. </Description>
  3306. </Information>';
  3307. type MSe
  3308. ports
  3309. electric out p;
  3310. signal in effort;
  3311. restrictions
  3312. causality fixed out p;
  3313. end;
  3314. icon bg bottom
  3315. figures
  3316. text 'MSe' 176 272 color 0 18 bold;
  3317. end;
  3318. implementation eq
  3319. variables
  3320. real flow;
  3321. equations
  3322. p.e = effort;
  3323. flow = p.f;
  3324. implementation_end;
  3325. plug angle 72 216;
  3326. plug p 560 216;
  3327. OneJunction1 504 216
  3328. description '<Information>
  3329. <Description>
  3330. <Version>4.2</Version>
  3331. <IsMainModel>1</IsMainModel>
  3332. <KeepParameterValues>False</KeepParameterValues>
  3333. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3334. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3335. </Description>
  3336. </Information>';
  3337. knot OneJunction
  3338. ports
  3339. rotation knot duplicatable none p [1];
  3340. signal knot out flow [1];
  3341. restrictions
  3342. causality constraint one_out p;
  3343. end;
  3344. icon bg
  3345. figures
  3346. text '1' 504 216 color 0 18 bold;
  3347. end;
  3348. implementation eq
  3349. equations
  3350. sum (direct (p.e)) = 0;
  3351. equal (collect (p.f));
  3352. flow = first (p.f);
  3353. implementation_end;
  3354. OneJunction2 248 160
  3355. description '<Information>
  3356. <Description>
  3357. <Version>4.2</Version>
  3358. <IsMainModel>1</IsMainModel>
  3359. <KeepParameterValues>False</KeepParameterValues>
  3360. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3361. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3362. </Description>
  3363. </Information>';
  3364. knot OneJunction
  3365. ports
  3366. electric knot duplicatable none p [1];
  3367. signal knot out flow [1];
  3368. restrictions
  3369. causality constraint one_out p;
  3370. end;
  3371. icon bg
  3372. figures
  3373. text '1' 248 160 color 0 18 bold;
  3374. end;
  3375. implementation eq
  3376. equations
  3377. sum (direct (p.e)) = 0;
  3378. equal (collect (p.f));
  3379. flow = first (p.f);
  3380. implementation_end;
  3381. OneJunction3 248 272
  3382. description '<Information>
  3383. <Description>
  3384. <Version>4.2</Version>
  3385. <IsMainModel>1</IsMainModel>
  3386. <KeepParameterValues>False</KeepParameterValues>
  3387. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3388. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3389. </Description>
  3390. </Information>';
  3391. knot OneJunction
  3392. ports
  3393. electric knot duplicatable none p [1];
  3394. signal knot out flow [1];
  3395. restrictions
  3396. causality constraint one_out p;
  3397. end;
  3398. icon bg
  3399. figures
  3400. text '1' 248 272 color 0 18 bold;
  3401. end;
  3402. implementation eq
  3403. equations
  3404. sum (direct (p.e)) = 0;
  3405. equal (collect (p.f));
  3406. flow = first (p.f);
  3407. implementation_end;
  3408. OneJunction4 416 216
  3409. description '<Information>
  3410. <Description>
  3411. <Version>4.2</Version>
  3412. <IsMainModel>1</IsMainModel>
  3413. <KeepParameterValues>False</KeepParameterValues>
  3414. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3415. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3416. </Description>
  3417. </Information>';
  3418. knot OneJunction
  3419. ports
  3420. rotation knot duplicatable none p [1];
  3421. signal knot out flow [1];
  3422. restrictions
  3423. causality constraint one_out p;
  3424. end;
  3425. icon bg
  3426. figures
  3427. text '1' 416 216 color 0 18 bold;
  3428. end;
  3429. implementation eq
  3430. equations
  3431. sum (direct (p.e)) = 0;
  3432. equal (collect (p.f));
  3433. flow = first (p.f);
  3434. implementation_end;
  3435. phase_control 176 216
  3436. description '<Description><Version>4.0</Version>
  3437. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  3438. <IsMainModel>1</IsMainModel>
  3439. <KeepParameterValues>False</KeepParameterValues>
  3440. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  3441. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  3442. </Description>';
  3443. type Submodel
  3444. ports
  3445. signal in angle;
  3446. signal out a;
  3447. signal out b;
  3448. end;
  3449. icon bg
  3450. figures
  3451. rectangle 136 200 216 232 color 0 fill 15132390;
  3452. text 'name' 176 216 color 0 'Clear Sans' 16;
  3453. end;
  3454. implementation eq
  3455. parameters
  3456. real global u_max {V};
  3457. real global angle_step;
  3458. real max_a {m/s2};
  3459. variables
  3460. real current_angle;
  3461. real c,s;
  3462. real global p;
  3463. boolean hidden eventa, eventb;
  3464. equations
  3465. a = u_max * (cos (p*angle));
  3466. eventa = event(a);
  3467. b = u_max * -(sin (p*angle));
  3468. eventb = event(b);
  3469. current_angle = angle;
  3470. implementation_end;
  3471. R 272 104
  3472. description '<Information>
  3473. <Description>
  3474. <Version>4.2</Version>
  3475. <IsMainModel>1</IsMainModel>
  3476. <KeepParameterValues>False</KeepParameterValues>
  3477. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  3478. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  3479. </Description>
  3480. </Information>';
  3481. type R
  3482. ports
  3483. power in p;
  3484. end;
  3485. icon bg bottom
  3486. figures
  3487. text 'R' 272 104 color 0 18 bold;
  3488. end;
  3489. implementation eq
  3490. parameters
  3491. real global R_phase;
  3492. equations
  3493. p.e = R_phase * p.f;
  3494. implementation_end;
  3495. R1 224 328
  3496. description '<Information>
  3497. <Description>
  3498. <Version>4.2</Version>
  3499. <IsMainModel>1</IsMainModel>
  3500. <KeepParameterValues>False</KeepParameterValues>
  3501. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  3502. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  3503. </Description>
  3504. </Information>';
  3505. type R
  3506. ports
  3507. power in p;
  3508. end;
  3509. icon bg bottom
  3510. figures
  3511. text 'R' 224 328 color 0 18 bold;
  3512. end;
  3513. implementation eq
  3514. parameters
  3515. real global R_phase;
  3516. equations
  3517. p.e = R_phase * p.f;
  3518. implementation_end;
  3519. R2 488 264
  3520. description '<Information>
  3521. <Description>
  3522. <Version>4.2</Version>
  3523. <IsMainModel>1</IsMainModel>
  3524. <KeepParameterValues>False</KeepParameterValues>
  3525. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  3526. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  3527. </Description>
  3528. </Information>';
  3529. type R
  3530. ports
  3531. power in p;
  3532. end;
  3533. icon bg bottom
  3534. figures
  3535. text 'R' 488 264 color 0 18 bold;
  3536. end;
  3537. implementation eq
  3538. parameters
  3539. real r = 1.0e-3;
  3540. equations
  3541. p.e = r * p.f;
  3542. implementation_end;
  3543. RotorAngle 320 216
  3544. description '<Description><Version>4.0</Version>
  3545. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  3546. <IsMainModel>1</IsMainModel>
  3547. <KeepParameterValues>False</KeepParameterValues>
  3548. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  3549. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  3550. </Description>';
  3551. type Submodel
  3552. ports
  3553. signal out output_b;
  3554. signal out output_a;
  3555. signal in omega {rad/s} ;
  3556. signal out output_d;
  3557. end;
  3558. icon bg
  3559. figures
  3560. rectangle 280 200 360 232 color 0 fill 15132390;
  3561. text 'name' 320 216 color 0 'Clear Sans' 16;
  3562. end;
  3563. implementation eq
  3564. parameters
  3565. real global fluxLinkage;
  3566. real global detentTorque;
  3567. variables
  3568. real global p;
  3569. real angle {rad};
  3570. equations
  3571. angle = int(omega);
  3572. output_a = -p * fluxLinkage * sin(p * angle);
  3573. output_b = p * fluxLinkage * sin(p * angle - pi / 2);
  3574. output_d = detentTorque * sin(2 * p * angle);
  3575. implementation_end;
  3576. Se 416 272
  3577. description '<Information>
  3578. <Description>
  3579. <Version>4.2</Version>
  3580. <IsMainModel>1</IsMainModel>
  3581. <KeepParameterValues>False</KeepParameterValues>
  3582. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  3583. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  3584. </Description>
  3585. </Information>';
  3586. type MSe
  3587. ports
  3588. power out p;
  3589. signal in effort;
  3590. restrictions
  3591. causality fixed out p;
  3592. end;
  3593. icon bg bottom
  3594. figures
  3595. text 'MSe' 416 272 color 0 18 bold;
  3596. end;
  3597. implementation eq
  3598. variables
  3599. real flow;
  3600. equations
  3601. p.e = effort;
  3602. flow = p.f;
  3603. implementation_end;
  3604. end;
  3605. connections
  3606. angle -> phase_control\angle;
  3607. I2\p <= OneJunction4\p;
  3608. MGY_a\p2 => OneJunction4\p;
  3609. MGY_b\p2 => OneJunction4\p;
  3610. MSe_b\p => OneJunction3\p;
  3611. OneJunction1\p => p;
  3612. OneJunction2\p <= MSe_a\p;
  3613. OneJunction2\p => I\p;
  3614. OneJunction2\p => MGY_a\p1;
  3615. OneJunction2\p => R\p;
  3616. OneJunction3\p => I1\p;
  3617. OneJunction3\p => MGY_b\p1;
  3618. OneJunction3\p => R1\p;
  3619. OneJunction4\flow -> RotorAngle\omega;
  3620. OneJunction4\p => OneJunction1\p;
  3621. OneJunction4\p => R2\p;
  3622. phase_control\a -> MSe_a\effort;
  3623. phase_control\b -> MSe_b\effort;
  3624. RotorAngle\output_a -> MGY_a\r;
  3625. RotorAngle\output_b -> MGY_b\r;
  3626. RotorAngle\output_d -> Se\effort;
  3627. Se\p => OneJunction4\p;
  3628. end;
  3629. implementation_end;
  3630. stepper_model1 592 376
  3631. description '<Information>
  3632. <Description>
  3633. <Version>4.8</Version>
  3634. <IsMainModel>1</IsMainModel>
  3635. <LibraryPath>Motor\stepper_model.emx</LibraryPath>
  3636. <TimeStamp>2020-7-22 15:25:37</TimeStamp>
  3637. </Description>
  3638. <Attributes>
  3639. <GlobalRelations>parameters
  3640. real I_phase = 3.4 {mH};
  3641. real R_phase = 2.9 {ohm};
  3642. real u_max = 3.4 {V};
  3643. real RotorInertia = 5.6e-6 {kg.m2};
  3644. real StepperMass = 0.29 {kg};
  3645. real angle_step = 1.8 {deg};
  3646. real n_phase = 2 {none};
  3647. real fluxLinkage = 0.0022 {Wb};
  3648. real detentTorque = 0.01 {N.m};
  3649. variables
  3650. real omega;
  3651. real p; // rotor division
  3652. initialequations
  3653. p = 2 * pi / (2 * n_phase * angle_step);
  3654. omega = 200;</GlobalRelations>
  3655. </Attributes>
  3656. </Information>';
  3657. type Submodel
  3658. ports
  3659. signal in angle;
  3660. rotation out p;
  3661. end;
  3662. implementation bg
  3663. submodels
  3664. I 560 104
  3665. description '<Information>
  3666. <Description>
  3667. <Version>4.2</Version>
  3668. <IsMainModel>1</IsMainModel>
  3669. <KeepParameterValues>False</KeepParameterValues>
  3670. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3671. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3672. </Description>
  3673. </Information>';
  3674. type I
  3675. ports
  3676. power in p;
  3677. signal out state;
  3678. restrictions
  3679. causality preferred in p;
  3680. end;
  3681. icon bg bottom
  3682. figures
  3683. text 'I' 560 104 color 0 18 bold;
  3684. end;
  3685. implementation eq
  3686. parameters
  3687. real global I_phase;
  3688. equations
  3689. state = int(p.e);
  3690. p.f = state / I_phase;
  3691. implementation_end;
  3692. I1 608 328
  3693. description '<Information>
  3694. <Description>
  3695. <Version>4.2</Version>
  3696. <IsMainModel>1</IsMainModel>
  3697. <KeepParameterValues>False</KeepParameterValues>
  3698. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3699. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3700. </Description>
  3701. </Information>';
  3702. type I
  3703. ports
  3704. power in p;
  3705. signal out state;
  3706. restrictions
  3707. causality preferred in p;
  3708. end;
  3709. icon bg bottom
  3710. figures
  3711. text 'I' 608 328 color 0 18 bold;
  3712. end;
  3713. implementation eq
  3714. parameters
  3715. real global I_phase;
  3716. equations
  3717. state = int(p.e);
  3718. p.f = state / I_phase;
  3719. implementation_end;
  3720. I2 752 160
  3721. description '<Information>
  3722. <Description>
  3723. <Version>4.2</Version>
  3724. <IsMainModel>1</IsMainModel>
  3725. <KeepParameterValues>False</KeepParameterValues>
  3726. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  3727. <TimeStamp>2011-11-29 15:55:55</TimeStamp>
  3728. </Description>
  3729. </Information>';
  3730. type I
  3731. ports
  3732. power in p;
  3733. signal out state;
  3734. restrictions
  3735. causality preferred in p;
  3736. end;
  3737. icon bg bottom
  3738. figures
  3739. text 'I' 752 160 color 0 18 bold;
  3740. end;
  3741. implementation eq
  3742. parameters
  3743. real i = 8e-5 {kg.m2};
  3744. real global RotorInertia;
  3745. equations
  3746. state = int(p.e);
  3747. p.f = state / (RotorInertia);
  3748. implementation_end;
  3749. MGY_a 656 160
  3750. description '<Information>
  3751. <Description>
  3752. <Version>4.2</Version>
  3753. <IsMainModel>1</IsMainModel>
  3754. <KeepParameterValues>False</KeepParameterValues>
  3755. <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
  3756. <TimeStamp>2011-11-29 16:03:53</TimeStamp>
  3757. </Description>
  3758. </Information>';
  3759. type MGY
  3760. ports
  3761. power in p1;
  3762. power out p2;
  3763. signal in r;
  3764. restrictions
  3765. causality constraint equal p1 p2;
  3766. end;
  3767. icon bg bottom
  3768. figures
  3769. text 'MGY' 656 160 color 0 18 bold;
  3770. end;
  3771. implementation eq
  3772. equations
  3773. p1.e = r * p2.f;
  3774. p2.e = r * p1.f;
  3775. implementation_end;
  3776. MGY_b 656 272
  3777. description '<Information>
  3778. <Description>
  3779. <Version>4.2</Version>
  3780. <IsMainModel>1</IsMainModel>
  3781. <KeepParameterValues>False</KeepParameterValues>
  3782. <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
  3783. <TimeStamp>2011-11-29 16:03:53</TimeStamp>
  3784. </Description>
  3785. </Information>';
  3786. type MGY
  3787. ports
  3788. power in p1;
  3789. power out p2;
  3790. signal in r;
  3791. restrictions
  3792. causality constraint equal p1 p2;
  3793. end;
  3794. icon bg bottom
  3795. figures
  3796. text 'MGY' 656 272 color 0 18 bold;
  3797. end;
  3798. implementation eq
  3799. equations
  3800. p1.e = r * p2.f;
  3801. p2.e = r * p1.f;
  3802. implementation_end;
  3803. MSe_a 512 160
  3804. description '<Information>
  3805. <Description>
  3806. <Version>4.2</Version>
  3807. <IsMainModel>1</IsMainModel>
  3808. <KeepParameterValues>False</KeepParameterValues>
  3809. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  3810. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  3811. </Description>
  3812. </Information>';
  3813. type MSe
  3814. ports
  3815. electric out p;
  3816. signal in effort;
  3817. restrictions
  3818. causality fixed out p;
  3819. end;
  3820. icon bg bottom
  3821. figures
  3822. text 'MSe' 512 160 color 0 18 bold;
  3823. end;
  3824. implementation eq
  3825. variables
  3826. real flow;
  3827. equations
  3828. p.e = effort;
  3829. flow = p.f;
  3830. implementation_end;
  3831. MSe_b 512 272
  3832. description '<Information>
  3833. <Description>
  3834. <Version>4.2</Version>
  3835. <IsMainModel>1</IsMainModel>
  3836. <KeepParameterValues>False</KeepParameterValues>
  3837. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  3838. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  3839. </Description>
  3840. </Information>';
  3841. type MSe
  3842. ports
  3843. electric out p;
  3844. signal in effort;
  3845. restrictions
  3846. causality fixed out p;
  3847. end;
  3848. icon bg bottom
  3849. figures
  3850. text 'MSe' 512 272 color 0 18 bold;
  3851. end;
  3852. implementation eq
  3853. variables
  3854. real flow;
  3855. equations
  3856. p.e = effort;
  3857. flow = p.f;
  3858. implementation_end;
  3859. plug angle 200 216;
  3860. plug p 1472 216;
  3861. OneJunction1 840 216
  3862. description '<Information>
  3863. <Description>
  3864. <Version>4.2</Version>
  3865. <IsMainModel>1</IsMainModel>
  3866. <KeepParameterValues>False</KeepParameterValues>
  3867. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3868. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3869. </Description>
  3870. </Information>';
  3871. knot OneJunction
  3872. ports
  3873. rotation knot duplicatable none p [1];
  3874. signal knot out flow [1];
  3875. restrictions
  3876. causality constraint one_out p;
  3877. end;
  3878. icon bg
  3879. figures
  3880. text '1' 840 216 color 0 18 bold;
  3881. end;
  3882. implementation eq
  3883. equations
  3884. sum (direct (p.e)) = 0;
  3885. equal (collect (p.f));
  3886. flow = first (p.f);
  3887. implementation_end;
  3888. OneJunction2 584 160
  3889. description '<Information>
  3890. <Description>
  3891. <Version>4.2</Version>
  3892. <IsMainModel>1</IsMainModel>
  3893. <KeepParameterValues>False</KeepParameterValues>
  3894. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3895. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3896. </Description>
  3897. </Information>';
  3898. knot OneJunction
  3899. ports
  3900. electric knot duplicatable none p [1];
  3901. signal knot out flow [1];
  3902. restrictions
  3903. causality constraint one_out p;
  3904. end;
  3905. icon bg
  3906. figures
  3907. text '1' 584 160 color 0 18 bold;
  3908. end;
  3909. implementation eq
  3910. equations
  3911. sum (direct (p.e)) = 0;
  3912. equal (collect (p.f));
  3913. flow = first (p.f);
  3914. implementation_end;
  3915. OneJunction3 584 272
  3916. description '<Information>
  3917. <Description>
  3918. <Version>4.2</Version>
  3919. <IsMainModel>1</IsMainModel>
  3920. <KeepParameterValues>False</KeepParameterValues>
  3921. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3922. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3923. </Description>
  3924. </Information>';
  3925. knot OneJunction
  3926. ports
  3927. electric knot duplicatable none p [1];
  3928. signal knot out flow [1];
  3929. restrictions
  3930. causality constraint one_out p;
  3931. end;
  3932. icon bg
  3933. figures
  3934. text '1' 584 272 color 0 18 bold;
  3935. end;
  3936. implementation eq
  3937. equations
  3938. sum (direct (p.e)) = 0;
  3939. equal (collect (p.f));
  3940. flow = first (p.f);
  3941. implementation_end;
  3942. OneJunction4 752 216
  3943. description '<Information>
  3944. <Description>
  3945. <Version>4.2</Version>
  3946. <IsMainModel>1</IsMainModel>
  3947. <KeepParameterValues>False</KeepParameterValues>
  3948. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  3949. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  3950. </Description>
  3951. </Information>';
  3952. knot OneJunction
  3953. ports
  3954. rotation knot duplicatable none p [1];
  3955. signal knot out flow [1];
  3956. restrictions
  3957. causality constraint one_out p;
  3958. end;
  3959. icon bg
  3960. figures
  3961. text '1' 752 216 color 0 18 bold;
  3962. end;
  3963. implementation eq
  3964. equations
  3965. sum (direct (p.e)) = 0;
  3966. equal (collect (p.f));
  3967. flow = first (p.f);
  3968. implementation_end;
  3969. phase_control 512 216
  3970. description '<Description><Version>4.0</Version>
  3971. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  3972. <IsMainModel>1</IsMainModel>
  3973. <KeepParameterValues>False</KeepParameterValues>
  3974. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  3975. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  3976. </Description>';
  3977. type Submodel
  3978. ports
  3979. signal in angle;
  3980. signal out a;
  3981. signal out b;
  3982. end;
  3983. icon bg
  3984. figures
  3985. rectangle 472 200 552 232 color 0 fill 15132390;
  3986. text 'name' 512 216 color 0 'Clear Sans' 16;
  3987. end;
  3988. implementation eq
  3989. parameters
  3990. real global u_max {V};
  3991. real global angle_step;
  3992. real max_a {m/s2};
  3993. variables
  3994. real current_angle;
  3995. real c,s;
  3996. real global p;
  3997. boolean hidden eventa, eventb;
  3998. equations
  3999. a = u_max * (cos (p*angle));
  4000. eventa = event(a);
  4001. b = u_max * -(sin (p*angle));
  4002. eventb = event(b);
  4003. current_angle = angle;
  4004. implementation_end;
  4005. R 608 104
  4006. description '<Information>
  4007. <Description>
  4008. <Version>4.2</Version>
  4009. <IsMainModel>1</IsMainModel>
  4010. <KeepParameterValues>False</KeepParameterValues>
  4011. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  4012. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  4013. </Description>
  4014. </Information>';
  4015. type R
  4016. ports
  4017. power in p;
  4018. end;
  4019. icon bg bottom
  4020. figures
  4021. text 'R' 608 104 color 0 18 bold;
  4022. end;
  4023. implementation eq
  4024. parameters
  4025. real global R_phase;
  4026. equations
  4027. p.e = R_phase * p.f;
  4028. implementation_end;
  4029. R1 560 328
  4030. description '<Information>
  4031. <Description>
  4032. <Version>4.2</Version>
  4033. <IsMainModel>1</IsMainModel>
  4034. <KeepParameterValues>False</KeepParameterValues>
  4035. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  4036. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  4037. </Description>
  4038. </Information>';
  4039. type R
  4040. ports
  4041. power in p;
  4042. end;
  4043. icon bg bottom
  4044. figures
  4045. text 'R' 560 328 color 0 18 bold;
  4046. end;
  4047. implementation eq
  4048. parameters
  4049. real global R_phase;
  4050. equations
  4051. p.e = R_phase * p.f;
  4052. implementation_end;
  4053. R2 824 264
  4054. description '<Information>
  4055. <Description>
  4056. <Version>4.2</Version>
  4057. <IsMainModel>1</IsMainModel>
  4058. <KeepParameterValues>False</KeepParameterValues>
  4059. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  4060. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  4061. </Description>
  4062. </Information>';
  4063. type R
  4064. ports
  4065. power in p;
  4066. end;
  4067. icon bg bottom
  4068. figures
  4069. text 'R' 824 264 color 0 18 bold;
  4070. end;
  4071. implementation eq
  4072. parameters
  4073. real r = 1.0e-3;
  4074. equations
  4075. p.e = r * p.f;
  4076. implementation_end;
  4077. RotorAngle 656 216
  4078. description '<Description><Version>4.0</Version>
  4079. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  4080. <IsMainModel>1</IsMainModel>
  4081. <KeepParameterValues>False</KeepParameterValues>
  4082. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  4083. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  4084. </Description>';
  4085. type Submodel
  4086. ports
  4087. signal out output_b;
  4088. signal out output_a;
  4089. signal in omega {rad/s} ;
  4090. signal out output_d;
  4091. end;
  4092. icon bg
  4093. figures
  4094. rectangle 616 200 696 232 color 0 fill 15132390;
  4095. text 'name' 656 216 color 0 'Clear Sans' 16;
  4096. end;
  4097. implementation eq
  4098. parameters
  4099. real global fluxLinkage;
  4100. real global detentTorque;
  4101. variables
  4102. real global p;
  4103. real angle {rad};
  4104. equations
  4105. angle = int(omega);
  4106. output_a = -p * fluxLinkage * sin(p * angle);
  4107. output_b = p * fluxLinkage * sin(p * angle - pi / 2);
  4108. output_d = detentTorque * sin(2 * p * angle);
  4109. implementation_end;
  4110. Se 752 272
  4111. description '<Information>
  4112. <Description>
  4113. <Version>4.2</Version>
  4114. <IsMainModel>1</IsMainModel>
  4115. <KeepParameterValues>False</KeepParameterValues>
  4116. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  4117. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  4118. </Description>
  4119. </Information>';
  4120. type MSe
  4121. ports
  4122. power out p;
  4123. signal in effort;
  4124. restrictions
  4125. causality fixed out p;
  4126. end;
  4127. icon bg bottom
  4128. figures
  4129. text 'MSe' 752 272 color 0 18 bold;
  4130. end;
  4131. implementation eq
  4132. variables
  4133. real flow;
  4134. equations
  4135. p.e = effort;
  4136. flow = p.f;
  4137. implementation_end;
  4138. end;
  4139. connections
  4140. angle -> phase_control\angle;
  4141. I2\p <= OneJunction4\p;
  4142. MGY_a\p2 => OneJunction4\p;
  4143. MGY_b\p2 => OneJunction4\p;
  4144. MSe_b\p => OneJunction3\p;
  4145. OneJunction1\p => p;
  4146. OneJunction2\p <= MSe_a\p;
  4147. OneJunction2\p => I\p;
  4148. OneJunction2\p => MGY_a\p1;
  4149. OneJunction2\p => R\p;
  4150. OneJunction3\p => I1\p;
  4151. OneJunction3\p => MGY_b\p1;
  4152. OneJunction3\p => R1\p;
  4153. OneJunction4\flow -> RotorAngle\omega;
  4154. OneJunction4\p => OneJunction1\p;
  4155. OneJunction4\p => R2\p;
  4156. phase_control\a -> MSe_a\effort;
  4157. phase_control\b -> MSe_b\effort;
  4158. RotorAngle\output_a -> MGY_a\r;
  4159. RotorAngle\output_b -> MGY_b\r;
  4160. RotorAngle\output_d -> Se\effort;
  4161. Se\p => OneJunction4\p;
  4162. end;
  4163. implementation_end;
  4164. ZeroJunction2 592 264
  4165. description '<Information>
  4166. <Description>
  4167. <Version>4.2</Version>
  4168. <IsMainModel>1</IsMainModel>
  4169. <KeepParameterValues>False</KeepParameterValues>
  4170. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  4171. <TimeStamp>2011-11-29 16:45:16</TimeStamp>
  4172. </Description>
  4173. </Information>';
  4174. knot ZeroJunction
  4175. ports
  4176. rotation knot duplicatable none p [1];
  4177. signal knot out effort [1];
  4178. restrictions
  4179. causality constraint one_in p;
  4180. end;
  4181. icon bg
  4182. figures
  4183. text '0' 592 264 color 0 18 bold;
  4184. end;
  4185. implementation eq
  4186. equations
  4187. sum (direct (p.f)) = 0;
  4188. equal (collect (p.e));
  4189. effort = first (p.e);
  4190. implementation_end;
  4191. ZeroJunction3 184 264
  4192. description '<Information>
  4193. <Description>
  4194. <Version>4.2</Version>
  4195. <IsMainModel>1</IsMainModel>
  4196. <KeepParameterValues>False</KeepParameterValues>
  4197. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  4198. <TimeStamp>2011-11-29 16:45:16</TimeStamp>
  4199. </Description>
  4200. </Information>';
  4201. knot ZeroJunction
  4202. ports
  4203. rotation knot duplicatable none p [1];
  4204. signal knot out effort [1];
  4205. restrictions
  4206. causality constraint one_in p;
  4207. end;
  4208. icon bg
  4209. figures
  4210. text '0' 184 264 color 0 18 bold;
  4211. end;
  4212. implementation eq
  4213. equations
  4214. sum (direct (p.f)) = 0;
  4215. equal (collect (p.e));
  4216. effort = first (p.e);
  4217. implementation_end;
  4218. end;
  4219. connections
  4220. C1\p <= OneJunction7\p;
  4221. C2\p <= OneJunction6\p;
  4222. COM\Hout -> new_joint1\input;
  4223. COM1\Hout -> new_joint2\input;
  4224. COM2\Hin <- Link3\Hout 992 120;
  4225. COM2\Hout -> new_joint3\input;
  4226. COM2\p => OneJunction12\p;
  4227. Ground\output -> Joint\Hin;
  4228. inverse_kinematics1\angle1 -> Negate1\input;
  4229. inverse_kinematics1\angle2 -> Negate2\input;
  4230. Joint\Hout -> Link\Hin;
  4231. Joint\Pdiff <= PowerMux\output;
  4232. Joint\Pin <= Link\Pout;
  4233. Joint\Pout => Ground\p;
  4234. Link\Pin <= OneJunction1\p;
  4235. Link1\Hout -> Joint1\Hin;
  4236. Link1\Pin <= Joint1\Pout;
  4237. Link1\Pout => OneJunction1\p;
  4238. Link2\Hin <- Joint1\Hout;
  4239. Link2\Hout -> Splitter2\input;
  4240. Link2\Pin <= OneJunction3\p;
  4241. Link2\Pout => Joint1\Pin;
  4242. Link3\Pin <= OneJunction12\p;
  4243. Link3\Pout => OneJunction3\p;
  4244. Negate1\output -> stepper_control\setpoint;
  4245. Negate2\output -> stepper_control1\setpoint;
  4246. OneJunction1\p <= COM\p;
  4247. OneJunction11\p => ZeroJunction2\p;
  4248. OneJunction14\p => ZeroJunction3\p;
  4249. OneJunction17\p => C\p;
  4250. OneJunction3\p <= COM1\p;
  4251. OneJunction4\p => C4\p;
  4252. OneJunction4\p => R4\p;
  4253. OneJunction5\p => C3\p;
  4254. OneJunction5\p => R2\p;
  4255. OneJunction6\p => R3\p;
  4256. OneJunction7\p => R5\p;
  4257. OneJunction8\p => C5\p;
  4258. PowerMux\input_pos3 <= OneJunction6\p;
  4259. PowerMux\input_rot2 <= OneJunction5\p;
  4260. PowerMux1\input_pos3 <= OneJunction7\p;
  4261. PowerMux1\input_rot2 <= OneJunction4\p;
  4262. PowerMux1\output => Joint1\Pdiff;
  4263. R1\p <= OneJunction17\p;
  4264. R6\p <= OneJunction8\p;
  4265. rectanglepath1\output -> inverse_kinematics1\input;
  4266. Splitter1\input <- Link\Hout;
  4267. Splitter1\output -> COM\Hin;
  4268. Splitter1\output -> Link1\Hin;
  4269. Splitter2\output -> COM1\Hin;
  4270. Splitter2\output -> Link3\Hin;
  4271. stepper_control\output -> stepper_model\angle;
  4272. stepper_control1\output -> stepper_model1\angle;
  4273. stepper_model\p => OneJunction14\p;
  4274. stepper_model1\p => OneJunction11\p;
  4275. ZeroJunction2\p => OneJunction17\p;
  4276. ZeroJunction2\p => PowerMux1\input;
  4277. ZeroJunction3\p => OneJunction8\p;
  4278. ZeroJunction3\p => PowerMux\input;
  4279. end;
  4280. implementation_end;
  4281. ]]>
  4282. </Sidops>
  4283. </Model>
  4284. <Experiments>
  4285. <DefaultExperiment><![CDATA[Experiment 1]]>
  4286. </DefaultExperiment>
  4287. <Experiment>
  4288. <Name>Experiment 1</Name>
  4289. <CreatedBy></CreatedBy>
  4290. <Info></Info>
  4291. <ExpData>
  4292. <VersionNumber>4.8</VersionNumber>
  4293. <ModelProperties>
  4294. <ModelProperty section="GenSimProps" entry="ClearVarsAtStart" value="1"/>
  4295. </ModelProperties>
  4296. <Variables>
  4297. <Constants>
  4298. </Constants>
  4299. <Parameters>
  4300. <Variable>
  4301. <Name>stepper_model\phase_control\max_a</Name>
  4302. <Unit>m/s2</Unit>
  4303. <Value>0</Value>
  4304. </Variable>
  4305. <Variable>
  4306. <Name>stepper_model1\phase_control\max_a</Name>
  4307. <Unit>m/s2</Unit>
  4308. <Value>0</Value>
  4309. </Variable>
  4310. </Parameters>
  4311. <Initials>
  4312. <Variable>
  4313. <Name>C1\state_initial</Name>
  4314. <Rows>3</Rows>
  4315. <Columns>1</Columns>
  4316. <Value>0 0 0</Value>
  4317. </Variable>
  4318. <Variable>
  4319. <Name>C2\state_initial</Name>
  4320. <Rows>3</Rows>
  4321. <Columns>1</Columns>
  4322. <Value>0 0 0</Value>
  4323. </Variable>
  4324. <Variable>
  4325. <Name>C3\state_initial</Name>
  4326. <Rows>2</Rows>
  4327. <Columns>1</Columns>
  4328. <Value>0 0</Value>
  4329. </Variable>
  4330. <Variable>
  4331. <Name>C4\state_initial</Name>
  4332. <Rows>2</Rows>
  4333. <Columns>1</Columns>
  4334. <Value>0 0</Value>
  4335. </Variable>
  4336. <Variable>
  4337. <Name>C5\state_initial</Name>
  4338. <Value>0</Value>
  4339. </Variable>
  4340. <Variable>
  4341. <Name>COM1\InertialTensor\state_initial</Name>
  4342. <Rows>6</Rows>
  4343. <Columns>1</Columns>
  4344. <Value>0 0 0 0 0 0</Value>
  4345. </Variable>
  4346. <Variable>
  4347. <Name>COM\InertialTensor\state_initial</Name>
  4348. <Rows>6</Rows>
  4349. <Columns>1</Columns>
  4350. <Value>0 0 0 0 0 0</Value>
  4351. </Variable>
  4352. <Variable>
  4353. <Name>C\state_initial</Name>
  4354. <Value>0</Value>
  4355. </Variable>
  4356. <Variable>
  4357. <Name>Joint1\Hmatrix\p_initial</Name>
  4358. <Rows>3</Rows>
  4359. <Columns>1</Columns>
  4360. <Value>0 0 0</Value>
  4361. </Variable>
  4362. <Variable>
  4363. <Name>Joint\Hmatrix\p_initial</Name>
  4364. <Rows>3</Rows>
  4365. <Columns>1</Columns>
  4366. <Value>0 0 0</Value>
  4367. </Variable>
  4368. <Variable>
  4369. <Name>stepper_control1\Position_control\state_initial</Name>
  4370. <Value>0</Value>
  4371. </Variable>
  4372. <Variable>
  4373. <Name>stepper_control1\Velocity_control\state_initial</Name>
  4374. <Value>0</Value>
  4375. </Variable>
  4376. <Variable>
  4377. <Name>stepper_control\Position_control\state_initial</Name>
  4378. <Value>0</Value>
  4379. </Variable>
  4380. <Variable>
  4381. <Name>stepper_control\Velocity_control\state_initial</Name>
  4382. <Value>0</Value>
  4383. </Variable>
  4384. <Variable>
  4385. <Name>stepper_model1\I1\state_initial</Name>
  4386. <Value>0</Value>
  4387. </Variable>
  4388. <Variable>
  4389. <Name>stepper_model1\I2\state_initial</Name>
  4390. <Value>0</Value>
  4391. </Variable>
  4392. <Variable>
  4393. <Name>stepper_model1\I\state_initial</Name>
  4394. <Value>0</Value>
  4395. </Variable>
  4396. <Variable>
  4397. <Name>stepper_model1\RotorAngle\angle_initial</Name>
  4398. <Unit>rad</Unit>
  4399. <Value>0</Value>
  4400. </Variable>
  4401. <Variable>
  4402. <Name>stepper_model\I1\state_initial</Name>
  4403. <Value>0</Value>
  4404. </Variable>
  4405. <Variable>
  4406. <Name>stepper_model\I2\state_initial</Name>
  4407. <Value>0</Value>
  4408. </Variable>
  4409. <Variable>
  4410. <Name>stepper_model\I\state_initial</Name>
  4411. <Value>0</Value>
  4412. </Variable>
  4413. <Variable>
  4414. <Name>stepper_model\RotorAngle\angle_initial</Name>
  4415. <Unit>rad</Unit>
  4416. <Value>0</Value>
  4417. </Variable>
  4418. <Variable>
  4419. <Name>COM2\InertialTensor\p.e_initial</Name>
  4420. <Rows>6</Rows>
  4421. <Columns>1</Columns>
  4422. <Value>0 0 0 0 0 0</Value>
  4423. </Variable>
  4424. </Initials>
  4425. </Variables>
  4426. <PlotSpecs>
  4427. <VarNames>
  4428. <VarName>time</VarName>
  4429. <VarName>new_joint1\position[1]</VarName>
  4430. <VarName>new_joint1\position[2]</VarName>
  4431. <VarName>new_joint1\position[3]</VarName>
  4432. <VarName>new_joint1\R[1,3]</VarName>
  4433. <VarName>new_joint1\R[2,3]</VarName>
  4434. <VarName>new_joint1\R[3,3]</VarName>
  4435. <VarName>new_joint1\R[1,2]</VarName>
  4436. <VarName>new_joint1\R[2,2]</VarName>
  4437. <VarName>new_joint1\R[3,2]</VarName>
  4438. <VarName>new_joint2\R[1,3]</VarName>
  4439. <VarName>new_joint2\R[2,3]</VarName>
  4440. <VarName>new_joint2\R[3,3]</VarName>
  4441. <VarName>new_joint2\R[1,2]</VarName>
  4442. <VarName>new_joint2\R[2,2]</VarName>
  4443. <VarName>new_joint2\R[3,2]</VarName>
  4444. <VarName>new_joint2\position[1]</VarName>
  4445. <VarName>new_joint2\position[2]</VarName>
  4446. <VarName>new_joint2\position[3]</VarName>
  4447. <VarName>new_joint3\position[3]</VarName>
  4448. <VarName>new_joint3\position[2]</VarName>
  4449. <VarName>rectanglepath1\output[2]</VarName>
  4450. <VarName>rectanglepath1\output[1]</VarName>
  4451. <VarName>stepper_control\Acceleration_int\output</VarName>
  4452. <VarName>stepper_control\Acceleration_int\input</VarName>
  4453. <VarName>stepper_control\Velocity_int\output</VarName>
  4454. <VarName>stepper_control1\Acceleration_int\output</VarName>
  4455. <VarName>stepper_control1\Acceleration_int\input</VarName>
  4456. <VarName>stepper_control1\Velocity_int\output</VarName>
  4457. <VarName>Submodel3\dimension[1]</VarName>
  4458. <VarName>Submodel3\dimension[2]</VarName>
  4459. <VarName>Submodel3\dimension[3]</VarName>
  4460. <VarName>Submodel4\dimension[1]</VarName>
  4461. <VarName>Submodel4\dimension[2]</VarName>
  4462. <VarName>Submodel4\dimension[3]</VarName>
  4463. <VarName>Step\output</VarName>
  4464. <VarName>Integrate2\output</VarName>
  4465. <VarName>motor_joint2\SignalLimiter2\output</VarName>
  4466. </VarNames>
  4467. <Plots>
  4468. <Plot>
  4469. <PlotType>D3DPlot</PlotType>
  4470. <BasePlot>
  4471. <PlotId>1</PlotId>
  4472. <UseWindowsBGColor>false</UseWindowsBGColor>
  4473. <BGColor>16777215</BGColor>
  4474. <PlotIsVisible>true</PlotIsVisible>
  4475. </BasePlot>
  4476. <PlotTitle>3D Animation</PlotTitle>
  4477. <RenderQuality>137</RenderQuality>
  4478. <ShowGrid>true</ShowGrid>
  4479. <ShowFPS>false</ShowFPS>
  4480. <BackgroundColor>4294967295</BackgroundColor>
  4481. <SceneBackgroundImage>Gradients\BlueWhite.png</SceneBackgroundImage>
  4482. <ApplyTextureBackground>true</ApplyTextureBackground>
  4483. <FrameScale>1.0</FrameScale>
  4484. <FrameThickness>1.0</FrameThickness>
  4485. <MainFrame>
  4486. <Frame>
  4487. <ScaleValue>
  4488. <X>
  4489. <Value>1</Value>
  4490. </X>
  4491. <Y>
  4492. <Value>1</Value>
  4493. </Y>
  4494. <Z>
  4495. <Value>1</Value>
  4496. </Z>
  4497. </ScaleValue>
  4498. <ShowReferenceFrame>true</ShowReferenceFrame>
  4499. <Name>Reference Frame</Name>
  4500. <Position>
  4501. </Position>
  4502. <Orientation>
  4503. <Angles>
  4504. </Angles>
  4505. <OrientationType>Bryant</OrientationType>
  4506. </Orientation>
  4507. <LockX>false</LockX>
  4508. <LockY>false</LockY>
  4509. <LockZ>false</LockZ>
  4510. <LockXPitch>false</LockXPitch>
  4511. <LockYYaw>false</LockYYaw>
  4512. <LockZRoll>false</LockZRoll>
  4513. <Childs>
  4514. <Frame>
  4515. <ScaleValue>
  4516. <X>
  4517. <Value>1</Value>
  4518. </X>
  4519. <Y>
  4520. <Value>1</Value>
  4521. </Y>
  4522. <Z>
  4523. <Value>1</Value>
  4524. </Z>
  4525. </ScaleValue>
  4526. <ShowReferenceFrame>false</ShowReferenceFrame>
  4527. <Name>Default Lights and Cameras</Name>
  4528. <Position>
  4529. </Position>
  4530. <Orientation>
  4531. <Angles>
  4532. </Angles>
  4533. <OrientationType>Bryant</OrientationType>
  4534. </Orientation>
  4535. <LockX>false</LockX>
  4536. <LockY>false</LockY>
  4537. <LockZ>false</LockZ>
  4538. <LockXPitch>false</LockXPitch>
  4539. <LockYYaw>false</LockYYaw>
  4540. <LockZRoll>false</LockZRoll>
  4541. <Childs>
  4542. <Light>
  4543. <ShowReferenceFrame>false</ShowReferenceFrame>
  4544. <Name>Ambient</Name>
  4545. <Position>
  4546. </Position>
  4547. <Orientation>
  4548. <ZAxis>
  4549. <Z>
  4550. <Value>1</Value>
  4551. </Z>
  4552. </ZAxis>
  4553. <YAxis>
  4554. <Y>
  4555. <Value>1</Value>
  4556. </Y>
  4557. </YAxis>
  4558. <OrientationType>Direct3D</OrientationType>
  4559. </Orientation>
  4560. <LockX>false</LockX>
  4561. <LockY>false</LockY>
  4562. <LockZ>false</LockZ>
  4563. <LockXPitch>false</LockXPitch>
  4564. <LockYYaw>false</LockYYaw>
  4565. <LockZRoll>false</LockZRoll>
  4566. <Childs>
  4567. </Childs>
  4568. <LightType>0</LightType>
  4569. <LightColor>
  4570. <Color>
  4571. <X>
  4572. <Value>0.3</Value>
  4573. </X>
  4574. <Y>
  4575. <Value>0.3</Value>
  4576. </Y>
  4577. <Z>
  4578. <Value>0.3</Value>
  4579. </Z>
  4580. </Color>
  4581. <Offset>
  4582. </Offset>
  4583. <Multipliers>
  4584. <X>
  4585. <Value>1</Value>
  4586. </X>
  4587. <Y>
  4588. <Value>1</Value>
  4589. </Y>
  4590. <Z>
  4591. <Value>1</Value>
  4592. </Z>
  4593. </Multipliers>
  4594. <Direct3DColorRange>true</Direct3DColorRange>
  4595. </LightColor>
  4596. <AmbientLight>
  4597. <Color>
  4598. <X>
  4599. <Value>0.3</Value>
  4600. </X>
  4601. <Y>
  4602. <Value>0.3</Value>
  4603. </Y>
  4604. <Z>
  4605. <Value>0.3</Value>
  4606. </Z>
  4607. </Color>
  4608. <Offset>
  4609. </Offset>
  4610. <Multipliers>
  4611. <X>
  4612. <Value>1</Value>
  4613. </X>
  4614. <Y>
  4615. <Value>1</Value>
  4616. </Y>
  4617. <Z>
  4618. <Value>1</Value>
  4619. </Z>
  4620. </Multipliers>
  4621. <Direct3DColorRange>true</Direct3DColorRange>
  4622. </AmbientLight>
  4623. <AmbientOn>true</AmbientOn>
  4624. <DiffuseOn>false</DiffuseOn>
  4625. <SpecularOn>false</SpecularOn>
  4626. </Light>
  4627. <Light>
  4628. <ShowReferenceFrame>false</ShowReferenceFrame>
  4629. <Name>Parallel</Name>
  4630. <Position>
  4631. <X>
  4632. <Value>-3</Value>
  4633. </X>
  4634. <Y>
  4635. <Value>5</Value>
  4636. </Y>
  4637. <Z>
  4638. <Value>3</Value>
  4639. </Z>
  4640. </Position>
  4641. <Orientation>
  4642. <ZAxis>
  4643. <X>
  4644. <Value>0.457495710997814</Value>
  4645. </X>
  4646. <Y>
  4647. <Value>-0.762492851663023</Value>
  4648. </Y>
  4649. <Z>
  4650. <Value>-0.457495710997814</Value>
  4651. </Z>
  4652. </ZAxis>
  4653. <YAxis>
  4654. <X>
  4655. <Value>0.235379601434674</Value>
  4656. </X>
  4657. <Y>
  4658. <Value>-0.392299335724456</Value>
  4659. </Y>
  4660. <Z>
  4661. <Value>0.889211827642101</Value>
  4662. </Z>
  4663. </YAxis>
  4664. <OrientationType>Direct3D</OrientationType>
  4665. </Orientation>
  4666. <LockX>false</LockX>
  4667. <LockY>false</LockY>
  4668. <LockZ>false</LockZ>
  4669. <LockXPitch>false</LockXPitch>
  4670. <LockYYaw>false</LockYYaw>
  4671. <LockZRoll>false</LockZRoll>
  4672. <Childs>
  4673. </Childs>
  4674. <LightType>3</LightType>
  4675. <LightColor>
  4676. <Color>
  4677. <X>
  4678. <Value>0.5</Value>
  4679. </X>
  4680. <Y>
  4681. <Value>0.5</Value>
  4682. </Y>
  4683. <Z>
  4684. <Value>0.5</Value>
  4685. </Z>
  4686. </Color>
  4687. <Offset>
  4688. </Offset>
  4689. <Multipliers>
  4690. <X>
  4691. <Value>1</Value>
  4692. </X>
  4693. <Y>
  4694. <Value>1</Value>
  4695. </Y>
  4696. <Z>
  4697. <Value>1</Value>
  4698. </Z>
  4699. </Multipliers>
  4700. <Direct3DColorRange>true</Direct3DColorRange>
  4701. </LightColor>
  4702. <Attenuation>
  4703. <Constant>
  4704. <Value>1.0</Value>
  4705. </Constant>
  4706. <Linear>
  4707. <Value>0.0</Value>
  4708. </Linear>
  4709. <Quadratic>
  4710. <Value>0.0</Value>
  4711. </Quadratic>
  4712. </Attenuation>
  4713. <DiffuseLight>
  4714. <Color>
  4715. <X>
  4716. <Value>0.5</Value>
  4717. </X>
  4718. <Y>
  4719. <Value>0.5</Value>
  4720. </Y>
  4721. <Z>
  4722. <Value>0.5</Value>
  4723. </Z>
  4724. </Color>
  4725. <Offset>
  4726. </Offset>
  4727. <Multipliers>
  4728. <X>
  4729. <Value>1</Value>
  4730. </X>
  4731. <Y>
  4732. <Value>1</Value>
  4733. </Y>
  4734. <Z>
  4735. <Value>1</Value>
  4736. </Z>
  4737. </Multipliers>
  4738. <Direct3DColorRange>true</Direct3DColorRange>
  4739. </DiffuseLight>
  4740. <SpecularLight>
  4741. <Color>
  4742. <X>
  4743. <Value>0.5</Value>
  4744. </X>
  4745. <Y>
  4746. <Value>0.5</Value>
  4747. </Y>
  4748. <Z>
  4749. <Value>0.5</Value>
  4750. </Z>
  4751. </Color>
  4752. <Offset>
  4753. </Offset>
  4754. <Multipliers>
  4755. <X>
  4756. <Value>1</Value>
  4757. </X>
  4758. <Y>
  4759. <Value>1</Value>
  4760. </Y>
  4761. <Z>
  4762. <Value>1</Value>
  4763. </Z>
  4764. </Multipliers>
  4765. <Direct3DColorRange>true</Direct3DColorRange>
  4766. </SpecularLight>
  4767. <AmbientOn>false</AmbientOn>
  4768. <DiffuseOn>true</DiffuseOn>
  4769. <SpecularOn>true</SpecularOn>
  4770. </Light>
  4771. <Light>
  4772. <ShowReferenceFrame>false</ShowReferenceFrame>
  4773. <Name>Spot Light 1</Name>
  4774. <Position>
  4775. <X>
  4776. <Value>-3</Value>
  4777. </X>
  4778. <Y>
  4779. <Value>-5</Value>
  4780. </Y>
  4781. <Z>
  4782. <Value>1</Value>
  4783. </Z>
  4784. </Position>
  4785. <Orientation>
  4786. <ZAxis>
  4787. <X>
  4788. <Value>0.50709255283711</Value>
  4789. </X>
  4790. <Y>
  4791. <Value>0.845154254728517</Value>
  4792. </Y>
  4793. <Z>
  4794. <Value>-0.169030850945703</Value>
  4795. </Z>
  4796. </ZAxis>
  4797. <YAxis>
  4798. <X>
  4799. <Value>0.0869656553478673</Value>
  4800. </X>
  4801. <Y>
  4802. <Value>0.144942758913112</Value>
  4803. </Y>
  4804. <Z>
  4805. <Value>0.985610760609162</Value>
  4806. </Z>
  4807. </YAxis>
  4808. <OrientationType>Direct3D</OrientationType>
  4809. </Orientation>
  4810. <LockX>false</LockX>
  4811. <LockY>false</LockY>
  4812. <LockZ>false</LockZ>
  4813. <LockXPitch>false</LockXPitch>
  4814. <LockYYaw>false</LockYYaw>
  4815. <LockZRoll>false</LockZRoll>
  4816. <Childs>
  4817. </Childs>
  4818. <LightType>2</LightType>
  4819. <LightColor>
  4820. <Color>
  4821. <X>
  4822. <Value>0.5</Value>
  4823. </X>
  4824. <Y>
  4825. <Value>0.5</Value>
  4826. </Y>
  4827. <Z>
  4828. <Value>0.5</Value>
  4829. </Z>
  4830. </Color>
  4831. <Offset>
  4832. </Offset>
  4833. <Multipliers>
  4834. <X>
  4835. <Value>1</Value>
  4836. </X>
  4837. <Y>
  4838. <Value>1</Value>
  4839. </Y>
  4840. <Z>
  4841. <Value>1</Value>
  4842. </Z>
  4843. </Multipliers>
  4844. <Direct3DColorRange>true</Direct3DColorRange>
  4845. </LightColor>
  4846. <Attenuation>
  4847. <Constant>
  4848. <Value>1.0</Value>
  4849. </Constant>
  4850. <Linear>
  4851. <Value>0.05</Value>
  4852. </Linear>
  4853. <Quadratic>
  4854. <Value>0.05</Value>
  4855. </Quadratic>
  4856. </Attenuation>
  4857. <Umbra>
  4858. <Value>1.0471975511965976</Value>
  4859. </Umbra>
  4860. <Penumbra>
  4861. <Value>1.0471975511965976</Value>
  4862. </Penumbra>
  4863. <SpotExponent>0.0</SpotExponent>
  4864. <DiffuseLight>
  4865. <Color>
  4866. <X>
  4867. <Value>0.5</Value>
  4868. </X>
  4869. <Y>
  4870. <Value>0.5</Value>
  4871. </Y>
  4872. <Z>
  4873. <Value>0.5</Value>
  4874. </Z>
  4875. </Color>
  4876. <Offset>
  4877. </Offset>
  4878. <Multipliers>
  4879. <X>
  4880. <Value>1</Value>
  4881. </X>
  4882. <Y>
  4883. <Value>1</Value>
  4884. </Y>
  4885. <Z>
  4886. <Value>1</Value>
  4887. </Z>
  4888. </Multipliers>
  4889. <Direct3DColorRange>true</Direct3DColorRange>
  4890. </DiffuseLight>
  4891. <SpecularLight>
  4892. <Color>
  4893. <X>
  4894. <Value>0.5</Value>
  4895. </X>
  4896. <Y>
  4897. <Value>0.5</Value>
  4898. </Y>
  4899. <Z>
  4900. <Value>0.5</Value>
  4901. </Z>
  4902. </Color>
  4903. <Offset>
  4904. </Offset>
  4905. <Multipliers>
  4906. <X>
  4907. <Value>1</Value>
  4908. </X>
  4909. <Y>
  4910. <Value>1</Value>
  4911. </Y>
  4912. <Z>
  4913. <Value>1</Value>
  4914. </Z>
  4915. </Multipliers>
  4916. <Direct3DColorRange>true</Direct3DColorRange>
  4917. </SpecularLight>
  4918. <AmbientOn>false</AmbientOn>
  4919. <DiffuseOn>true</DiffuseOn>
  4920. <SpecularOn>true</SpecularOn>
  4921. </Light>
  4922. <Light>
  4923. <ShowReferenceFrame>false</ShowReferenceFrame>
  4924. <Name>Spot Light 2</Name>
  4925. <Position>
  4926. <X>
  4927. <Value>2</Value>
  4928. </X>
  4929. <Y>
  4930. <Value>-3</Value>
  4931. </Y>
  4932. <Z>
  4933. <Value>-1</Value>
  4934. </Z>
  4935. </Position>
  4936. <Orientation>
  4937. <ZAxis>
  4938. <X>
  4939. <Value>-0.534522483824849</Value>
  4940. </X>
  4941. <Y>
  4942. <Value>0.801783725737273</Value>
  4943. </Y>
  4944. <Z>
  4945. <Value>0.267261241912424</Value>
  4946. </Z>
  4947. </ZAxis>
  4948. <YAxis>
  4949. <X>
  4950. <Value>0.14824986333222</Value>
  4951. </X>
  4952. <Y>
  4953. <Value>-0.22237479499833</Value>
  4954. </Y>
  4955. <Z>
  4956. <Value>0.963624111659432</Value>
  4957. </Z>
  4958. </YAxis>
  4959. <OrientationType>Direct3D</OrientationType>
  4960. </Orientation>
  4961. <LockX>false</LockX>
  4962. <LockY>false</LockY>
  4963. <LockZ>false</LockZ>
  4964. <LockXPitch>false</LockXPitch>
  4965. <LockYYaw>false</LockYYaw>
  4966. <LockZRoll>false</LockZRoll>
  4967. <Childs>
  4968. </Childs>
  4969. <LightType>2</LightType>
  4970. <LightColor>
  4971. <Color>
  4972. <X>
  4973. <Value>1</Value>
  4974. </X>
  4975. <Y>
  4976. <Value>1</Value>
  4977. </Y>
  4978. <Z>
  4979. <Value>1</Value>
  4980. </Z>
  4981. </Color>
  4982. <Offset>
  4983. </Offset>
  4984. <Multipliers>
  4985. <X>
  4986. <Value>1</Value>
  4987. </X>
  4988. <Y>
  4989. <Value>1</Value>
  4990. </Y>
  4991. <Z>
  4992. <Value>1</Value>
  4993. </Z>
  4994. </Multipliers>
  4995. <Direct3DColorRange>true</Direct3DColorRange>
  4996. </LightColor>
  4997. <Attenuation>
  4998. <Constant>
  4999. <Value>1.0</Value>
  5000. </Constant>
  5001. <Linear>
  5002. <Value>0.05</Value>
  5003. </Linear>
  5004. <Quadratic>
  5005. <Value>0.05</Value>
  5006. </Quadratic>
  5007. </Attenuation>
  5008. <Umbra>
  5009. <Value>1.5707963267948966</Value>
  5010. </Umbra>
  5011. <Penumbra>
  5012. <Value>1.5707963267948966</Value>
  5013. </Penumbra>
  5014. <SpotExponent>0.0</SpotExponent>
  5015. <DiffuseLight>
  5016. <Color>
  5017. <X>
  5018. <Value>1</Value>
  5019. </X>
  5020. <Y>
  5021. <Value>1</Value>
  5022. </Y>
  5023. <Z>
  5024. <Value>1</Value>
  5025. </Z>
  5026. </Color>
  5027. <Offset>
  5028. </Offset>
  5029. <Multipliers>
  5030. <X>
  5031. <Value>1</Value>
  5032. </X>
  5033. <Y>
  5034. <Value>1</Value>
  5035. </Y>
  5036. <Z>
  5037. <Value>1</Value>
  5038. </Z>
  5039. </Multipliers>
  5040. <Direct3DColorRange>true</Direct3DColorRange>
  5041. </DiffuseLight>
  5042. <SpecularLight>
  5043. <Color>
  5044. <X>
  5045. <Value>0.5</Value>
  5046. </X>
  5047. <Y>
  5048. <Value>0.5</Value>
  5049. </Y>
  5050. <Z>
  5051. <Value>0.5</Value>
  5052. </Z>
  5053. </Color>
  5054. <Offset>
  5055. </Offset>
  5056. <Multipliers>
  5057. <X>
  5058. <Value>1</Value>
  5059. </X>
  5060. <Y>
  5061. <Value>1</Value>
  5062. </Y>
  5063. <Z>
  5064. <Value>1</Value>
  5065. </Z>
  5066. </Multipliers>
  5067. <Direct3DColorRange>true</Direct3DColorRange>
  5068. </SpecularLight>
  5069. <AmbientOn>false</AmbientOn>
  5070. <DiffuseOn>true</DiffuseOn>
  5071. <SpecularOn>true</SpecularOn>
  5072. </Light>
  5073. <Camera>
  5074. <ShowReferenceFrame>false</ShowReferenceFrame>
  5075. <Name>Camera Looking at Origin</Name>
  5076. <Position>
  5077. <X>
  5078. <Value>3.04292494817788</Value>
  5079. </X>
  5080. <Y>
  5081. <Value>-0.198158420944799</Value>
  5082. </Y>
  5083. <Z>
  5084. <Value>2.86669745787175</Value>
  5085. </Z>
  5086. </Position>
  5087. <Orientation>
  5088. <ZAxis>
  5089. <X>
  5090. <Value>-0.727053165168863</Value>
  5091. </X>
  5092. <Y>
  5093. <Value>0.0473464543511177</Value>
  5094. </Y>
  5095. <Z>
  5096. <Value>-0.684946719298892</Value>
  5097. </Z>
  5098. </ZAxis>
  5099. <YAxis>
  5100. <X>
  5101. <Value>-0.6834989786941</Value>
  5102. </X>
  5103. <Y>
  5104. <Value>0.0445101606651553</Value>
  5105. </Y>
  5106. <Z>
  5107. <Value>0.728593159260835</Value>
  5108. </Z>
  5109. </YAxis>
  5110. <OrientationType>Direct3D</OrientationType>
  5111. </Orientation>
  5112. <LockX>false</LockX>
  5113. <LockY>false</LockY>
  5114. <LockZ>false</LockZ>
  5115. <LockXPitch>false</LockXPitch>
  5116. <LockYYaw>false</LockYYaw>
  5117. <LockZRoll>false</LockZRoll>
  5118. <Childs>
  5119. </Childs>
  5120. <FrontPlane>0.01</FrontPlane>
  5121. <BackPlane>100.0</BackPlane>
  5122. <AutoFrontBack>true</AutoFrontBack>
  5123. <Field>0.003926990816987242</Field>
  5124. <Fieldy>45.0</Fieldy>
  5125. <PlaneLeft>-10.0</PlaneLeft>
  5126. <PlaneRight>10.0</PlaneRight>
  5127. <PlaneTop>10.0</PlaneTop>
  5128. <PlaneBottom>-10.0</PlaneBottom>
  5129. <UseLookatPosition>true</UseLookatPosition>
  5130. <LookatPosition>
  5131. <X>
  5132. <Value>-9.99200722162641e-016</Value>
  5133. </X>
  5134. <Y>
  5135. <Value>1.76247905159244e-015</Value>
  5136. </Y>
  5137. <Z>
  5138. <Value>-3.05678199886544e-015</Value>
  5139. </Z>
  5140. </LookatPosition>
  5141. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  5142. <LookUpVector>
  5143. <Z>
  5144. <Value>1</Value>
  5145. </Z>
  5146. </LookUpVector>
  5147. <RightHand>true</RightHand>
  5148. <Perspective>true</Perspective>
  5149. <IsSelectedCamera>true</IsSelectedCamera>
  5150. </Camera>
  5151. <Camera>
  5152. <ShowReferenceFrame>false</ShowReferenceFrame>
  5153. <Name>Front(XY)-Camera</Name>
  5154. <Position>
  5155. <Z>
  5156. <Value>10</Value>
  5157. </Z>
  5158. </Position>
  5159. <Orientation>
  5160. <ZAxis>
  5161. <Z>
  5162. <Value>-1</Value>
  5163. </Z>
  5164. </ZAxis>
  5165. <YAxis>
  5166. <Y>
  5167. <Value>1</Value>
  5168. </Y>
  5169. </YAxis>
  5170. <OrientationType>Direct3D</OrientationType>
  5171. </Orientation>
  5172. <LockX>false</LockX>
  5173. <LockY>false</LockY>
  5174. <LockZ>false</LockZ>
  5175. <LockXPitch>false</LockXPitch>
  5176. <LockYYaw>false</LockYYaw>
  5177. <LockZRoll>false</LockZRoll>
  5178. <Childs>
  5179. </Childs>
  5180. <FrontPlane>0.01</FrontPlane>
  5181. <BackPlane>100.0</BackPlane>
  5182. <AutoFrontBack>true</AutoFrontBack>
  5183. <Field>9.999999999999998</Field>
  5184. <Fieldy>45.0</Fieldy>
  5185. <PlaneLeft>-9.999999999999998</PlaneLeft>
  5186. <PlaneRight>9.999999999999998</PlaneRight>
  5187. <PlaneTop>9.999999999999998</PlaneTop>
  5188. <PlaneBottom>-9.999999999999998</PlaneBottom>
  5189. <UseLookatPosition>true</UseLookatPosition>
  5190. <LookatPosition>
  5191. </LookatPosition>
  5192. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  5193. <LookUpVector>
  5194. <Y>
  5195. <Value>1</Value>
  5196. </Y>
  5197. </LookUpVector>
  5198. <RightHand>true</RightHand>
  5199. <Perspective>false</Perspective>
  5200. <IsSelectedCamera>false</IsSelectedCamera>
  5201. </Camera>
  5202. <Camera>
  5203. <ShowReferenceFrame>false</ShowReferenceFrame>
  5204. <Name>Side(YZ)-Camera</Name>
  5205. <Position>
  5206. <X>
  5207. <Value>10</Value>
  5208. </X>
  5209. </Position>
  5210. <Orientation>
  5211. <ZAxis>
  5212. <X>
  5213. <Value>-1</Value>
  5214. </X>
  5215. </ZAxis>
  5216. <YAxis>
  5217. <Z>
  5218. <Value>1</Value>
  5219. </Z>
  5220. </YAxis>
  5221. <OrientationType>Direct3D</OrientationType>
  5222. </Orientation>
  5223. <LockX>false</LockX>
  5224. <LockY>false</LockY>
  5225. <LockZ>false</LockZ>
  5226. <LockXPitch>false</LockXPitch>
  5227. <LockYYaw>false</LockYYaw>
  5228. <LockZRoll>false</LockZRoll>
  5229. <Childs>
  5230. </Childs>
  5231. <FrontPlane>0.01</FrontPlane>
  5232. <BackPlane>100.0</BackPlane>
  5233. <AutoFrontBack>true</AutoFrontBack>
  5234. <Field>9.999999999999998</Field>
  5235. <Fieldy>45.0</Fieldy>
  5236. <PlaneLeft>-9.999999999999998</PlaneLeft>
  5237. <PlaneRight>9.999999999999998</PlaneRight>
  5238. <PlaneTop>9.999999999999998</PlaneTop>
  5239. <PlaneBottom>-9.999999999999998</PlaneBottom>
  5240. <UseLookatPosition>true</UseLookatPosition>
  5241. <LookatPosition>
  5242. </LookatPosition>
  5243. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  5244. <LookUpVector>
  5245. <Z>
  5246. <Value>1</Value>
  5247. </Z>
  5248. </LookUpVector>
  5249. <RightHand>true</RightHand>
  5250. <Perspective>false</Perspective>
  5251. <IsSelectedCamera>false</IsSelectedCamera>
  5252. </Camera>
  5253. <Camera>
  5254. <ShowReferenceFrame>false</ShowReferenceFrame>
  5255. <Name>Top(XZ)-Camera</Name>
  5256. <Position>
  5257. <Y>
  5258. <Value>10</Value>
  5259. </Y>
  5260. </Position>
  5261. <Orientation>
  5262. <ZAxis>
  5263. <Y>
  5264. <Value>-1</Value>
  5265. </Y>
  5266. </ZAxis>
  5267. <YAxis>
  5268. <X>
  5269. <Value>1</Value>
  5270. </X>
  5271. </YAxis>
  5272. <OrientationType>Direct3D</OrientationType>
  5273. </Orientation>
  5274. <LockX>false</LockX>
  5275. <LockY>false</LockY>
  5276. <LockZ>false</LockZ>
  5277. <LockXPitch>false</LockXPitch>
  5278. <LockYYaw>false</LockYYaw>
  5279. <LockZRoll>false</LockZRoll>
  5280. <Childs>
  5281. </Childs>
  5282. <FrontPlane>0.01</FrontPlane>
  5283. <BackPlane>100.0</BackPlane>
  5284. <AutoFrontBack>true</AutoFrontBack>
  5285. <Field>9.999999999999998</Field>
  5286. <Fieldy>45.0</Fieldy>
  5287. <PlaneLeft>-9.999999999999998</PlaneLeft>
  5288. <PlaneRight>9.999999999999998</PlaneRight>
  5289. <PlaneTop>9.999999999999998</PlaneTop>
  5290. <PlaneBottom>-9.999999999999998</PlaneBottom>
  5291. <UseLookatPosition>true</UseLookatPosition>
  5292. <LookatPosition>
  5293. </LookatPosition>
  5294. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  5295. <LookUpVector>
  5296. <X>
  5297. <Value>1</Value>
  5298. </X>
  5299. </LookUpVector>
  5300. <RightHand>true</RightHand>
  5301. <Perspective>false</Perspective>
  5302. <IsSelectedCamera>false</IsSelectedCamera>
  5303. </Camera>
  5304. </Childs>
  5305. </Frame>
  5306. <Frame>
  5307. <ScaleValue>
  5308. <X>
  5309. <Value>1</Value>
  5310. </X>
  5311. <Y>
  5312. <Value>1</Value>
  5313. </Y>
  5314. <Z>
  5315. <Value>1</Value>
  5316. </Z>
  5317. </ScaleValue>
  5318. <ShowReferenceFrame>false</ShowReferenceFrame>
  5319. <Name>Scenery</Name>
  5320. <Position>
  5321. </Position>
  5322. <Orientation>
  5323. <Angles>
  5324. </Angles>
  5325. <OrientationType>Bryant</OrientationType>
  5326. </Orientation>
  5327. <LockX>false</LockX>
  5328. <LockY>false</LockY>
  5329. <LockZ>false</LockZ>
  5330. <LockXPitch>false</LockXPitch>
  5331. <LockYYaw>false</LockYYaw>
  5332. <LockZRoll>false</LockZRoll>
  5333. <Childs>
  5334. <Frame>
  5335. <ScaleValue>
  5336. <X>
  5337. <Value>10</Value>
  5338. </X>
  5339. <Y>
  5340. <Value>10</Value>
  5341. </Y>
  5342. <Z>
  5343. <Value>10</Value>
  5344. </Z>
  5345. </ScaleValue>
  5346. <ShowReferenceFrame>false</ShowReferenceFrame>
  5347. <Name>Reference Frame</Name>
  5348. <Position>
  5349. </Position>
  5350. <Orientation>
  5351. <Angles>
  5352. </Angles>
  5353. <OrientationType>Bryant</OrientationType>
  5354. </Orientation>
  5355. <LockX>false</LockX>
  5356. <LockY>false</LockY>
  5357. <LockZ>false</LockZ>
  5358. <LockXPitch>false</LockXPitch>
  5359. <LockYYaw>false</LockYYaw>
  5360. <LockZRoll>false</LockZRoll>
  5361. <Childs>
  5362. <Cube>
  5363. <Center>Center</Center>
  5364. <RibLength>1.0</RibLength>
  5365. <ShowInnerSide>true</ShowInnerSide>
  5366. <Accuracy>4</Accuracy>
  5367. <ScaleValue>
  5368. <X>
  5369. <VariableName>Submodel3\dimension[1]</VariableName>
  5370. <Value>0.005</Value>
  5371. </X>
  5372. <Y>
  5373. <VariableName>Submodel3\dimension[2]</VariableName>
  5374. <Value>0.065</Value>
  5375. </Y>
  5376. <Z>
  5377. <VariableName>Submodel3\dimension[3]</VariableName>
  5378. <Value>0.01</Value>
  5379. </Z>
  5380. </ScaleValue>
  5381. <OverrideColor>true</OverrideColor>
  5382. <MeshColor>
  5383. <X>
  5384. <Value>1</Value>
  5385. </X>
  5386. <Y>
  5387. <Value>1</Value>
  5388. </Y>
  5389. <Z>
  5390. <Value>1</Value>
  5391. </Z>
  5392. </MeshColor>
  5393. <Alpha>1.0</Alpha>
  5394. <MeshColorMultipliers>
  5395. <X>
  5396. <Value>1</Value>
  5397. </X>
  5398. <Y>
  5399. <Value>1</Value>
  5400. </Y>
  5401. <Z>
  5402. <Value>1</Value>
  5403. </Z>
  5404. </MeshColorMultipliers>
  5405. <MeshColorOffsets>
  5406. </MeshColorOffsets>
  5407. <Direct3DColorRange>true</Direct3DColorRange>
  5408. <SpecularColor>
  5409. <X>
  5410. <Value>0.498039215686275</Value>
  5411. </X>
  5412. <Y>
  5413. <Value>0.498039215686275</Value>
  5414. </Y>
  5415. <Z>
  5416. <Value>0.498039215686275</Value>
  5417. </Z>
  5418. </SpecularColor>
  5419. <EmissiveColor>
  5420. </EmissiveColor>
  5421. <ShininessPower>
  5422. <Value>14.298713684082</Value>
  5423. </ShininessPower>
  5424. <OverrideQuality>false</OverrideQuality>
  5425. <ShowReferenceFrame>false</ShowReferenceFrame>
  5426. <Name>Block</Name>
  5427. <Position>
  5428. <X>
  5429. <VariableName>new_joint1\position[1]</VariableName>
  5430. <Value>0.0</Value>
  5431. </X>
  5432. <Y>
  5433. <VariableName>new_joint1\position[2]</VariableName>
  5434. <Value>0.004779004084536204</Value>
  5435. </Y>
  5436. <Z>
  5437. <VariableName>new_joint1\position[3]</VariableName>
  5438. <Value>0.032131984037075616</Value>
  5439. </Z>
  5440. </Position>
  5441. <Orientation>
  5442. <ZAxis>
  5443. <X>
  5444. <VariableName>new_joint1\R[1,3]</VariableName>
  5445. <Value>0.0</Value>
  5446. </X>
  5447. <Y>
  5448. <VariableName>new_joint1\R[2,3]</VariableName>
  5449. <Value>-0.9891507613546217</Value>
  5450. </Y>
  5451. <Z>
  5452. <VariableName>new_joint1\R[3,3]</VariableName>
  5453. <Value>0.14690395267511475</Value>
  5454. </Z>
  5455. </ZAxis>
  5456. <YAxis>
  5457. <X>
  5458. <VariableName>new_joint1\R[1,2]</VariableName>
  5459. <Value>0.0</Value>
  5460. </X>
  5461. <Y>
  5462. <VariableName>new_joint1\R[2,2]</VariableName>
  5463. <Value>0.14690395267511475</Value>
  5464. </Y>
  5465. <Z>
  5466. <VariableName>new_joint1\R[3,2]</VariableName>
  5467. <Value>0.9891507613546217</Value>
  5468. </Z>
  5469. </YAxis>
  5470. <OrientationType>Matrix</OrientationType>
  5471. </Orientation>
  5472. <LockX>false</LockX>
  5473. <LockY>false</LockY>
  5474. <LockZ>false</LockZ>
  5475. <LockXPitch>false</LockXPitch>
  5476. <LockYYaw>false</LockYYaw>
  5477. <LockZRoll>false</LockZRoll>
  5478. <Childs>
  5479. </Childs>
  5480. </Cube>
  5481. <Cube>
  5482. <Center>Center</Center>
  5483. <RibLength>1.0</RibLength>
  5484. <ShowInnerSide>true</ShowInnerSide>
  5485. <Accuracy>4</Accuracy>
  5486. <ScaleValue>
  5487. <X>
  5488. <VariableName>Submodel4\dimension[1]</VariableName>
  5489. <Value>0.005</Value>
  5490. </X>
  5491. <Y>
  5492. <VariableName>Submodel4\dimension[2]</VariableName>
  5493. <Value>0.05</Value>
  5494. </Y>
  5495. <Z>
  5496. <VariableName>Submodel4\dimension[3]</VariableName>
  5497. <Value>0.01</Value>
  5498. </Z>
  5499. </ScaleValue>
  5500. <OverrideColor>true</OverrideColor>
  5501. <MeshColor>
  5502. <X>
  5503. <Value>1</Value>
  5504. </X>
  5505. <Y>
  5506. <Value>1</Value>
  5507. </Y>
  5508. <Z>
  5509. <Value>1</Value>
  5510. </Z>
  5511. </MeshColor>
  5512. <Alpha>1.0</Alpha>
  5513. <MeshColorMultipliers>
  5514. <X>
  5515. <Value>1</Value>
  5516. </X>
  5517. <Y>
  5518. <Value>1</Value>
  5519. </Y>
  5520. <Z>
  5521. <Value>1</Value>
  5522. </Z>
  5523. </MeshColorMultipliers>
  5524. <MeshColorOffsets>
  5525. </MeshColorOffsets>
  5526. <Direct3DColorRange>true</Direct3DColorRange>
  5527. <SpecularColor>
  5528. <X>
  5529. <Value>0.5</Value>
  5530. </X>
  5531. <Y>
  5532. <Value>0.5</Value>
  5533. </Y>
  5534. <Z>
  5535. <Value>0.5</Value>
  5536. </Z>
  5537. </SpecularColor>
  5538. <EmissiveColor>
  5539. </EmissiveColor>
  5540. <ShininessPower>
  5541. <Value>15</Value>
  5542. </ShininessPower>
  5543. <OverrideQuality>false</OverrideQuality>
  5544. <ShowReferenceFrame>false</ShowReferenceFrame>
  5545. <Name>Block</Name>
  5546. <Position>
  5547. <X>
  5548. <VariableName>new_joint2\position[1]</VariableName>
  5549. <Value>0.0</Value>
  5550. </X>
  5551. <Y>
  5552. <VariableName>new_joint2\position[2]</VariableName>
  5553. <Value>0.03341576943552989</Value>
  5554. </Y>
  5555. <Z>
  5556. <VariableName>new_joint2\position[3]</VariableName>
  5557. <Value>0.05682777438151479</Value>
  5558. </Z>
  5559. </Position>
  5560. <Orientation>
  5561. <ZAxis>
  5562. <X>
  5563. <VariableName>new_joint2\R[1,3]</VariableName>
  5564. <Value>0.0</Value>
  5565. </X>
  5566. <Y>
  5567. <VariableName>new_joint2\R[2,3]</VariableName>
  5568. <Value>0.29812485436275077</Value>
  5569. </Y>
  5570. <Z>
  5571. <VariableName>new_joint2\R[3,3]</VariableName>
  5572. <Value>0.9545268834407906</Value>
  5573. </Z>
  5574. </ZAxis>
  5575. <YAxis>
  5576. <X>
  5577. <VariableName>new_joint2\R[1,2]</VariableName>
  5578. <Value>0.0</Value>
  5579. </X>
  5580. <Y>
  5581. <VariableName>new_joint2\R[2,2]</VariableName>
  5582. <Value>0.9545268834407906</Value>
  5583. </Y>
  5584. <Z>
  5585. <VariableName>new_joint2\R[3,2]</VariableName>
  5586. <Value>-0.29812485436275077</Value>
  5587. </Z>
  5588. </YAxis>
  5589. <OrientationType>Matrix</OrientationType>
  5590. </Orientation>
  5591. <LockX>false</LockX>
  5592. <LockY>false</LockY>
  5593. <LockZ>false</LockZ>
  5594. <LockXPitch>false</LockXPitch>
  5595. <LockYYaw>false</LockYYaw>
  5596. <LockZRoll>false</LockZRoll>
  5597. <Childs>
  5598. </Childs>
  5599. </Cube>
  5600. </Childs>
  5601. </Frame>
  5602. </Childs>
  5603. </Frame>
  5604. </Childs>
  5605. </Frame>
  5606. </MainFrame>
  5607. </Plot>
  5608. <Plot>
  5609. <PlotType>GraphPlot</PlotType>
  5610. <BasePlot>
  5611. <PlotId>2</PlotId>
  5612. <UseWindowsBGColor>false</UseWindowsBGColor>
  5613. <BGColor>16777215</BGColor>
  5614. <PlotIsVisible>true</PlotIsVisible>
  5615. </BasePlot>
  5616. <Grid>
  5617. <DrawGrid>true</DrawGrid>
  5618. <GridColor>15780518</GridColor>
  5619. <GridBorderLineColor>12624260</GridBorderLineColor>
  5620. <GridZeroLineColor>0</GridZeroLineColor>
  5621. <XTicks>10</XTicks>
  5622. <YTicks>10</YTicks>
  5623. <ZTicks>10</ZTicks>
  5624. <Use3DLook>false</Use3DLook>
  5625. </Grid>
  5626. <PlotBGColor>16777215</PlotBGColor>
  5627. <ShowPlotTitle>true</ShowPlotTitle>
  5628. <TitlePosition>1</TitlePosition>
  5629. <PlotTitle>model(2)</PlotTitle>
  5630. <ShowXValues>true</ShowXValues>
  5631. <Fonts>
  5632. <TitleFont>
  5633. <Name>Arial</Name>
  5634. <Height>12</Height>
  5635. <PitchFamily>34</PitchFamily>
  5636. <Weight>400</Weight>
  5637. <Italic>0</Italic>
  5638. <UnderLine>0</UnderLine>
  5639. <StrikeOut>0</StrikeOut>
  5640. <Color>0</Color>
  5641. </TitleFont>
  5642. <LabelFont>
  5643. <Name>Arial</Name>
  5644. <Height>12</Height>
  5645. <PitchFamily>34</PitchFamily>
  5646. <Weight>400</Weight>
  5647. <Italic>0</Italic>
  5648. <UnderLine>0</UnderLine>
  5649. <StrikeOut>0</StrikeOut>
  5650. <Color>0</Color>
  5651. </LabelFont>
  5652. <ValuesFont>
  5653. <Name>Arial</Name>
  5654. <Height>10</Height>
  5655. <PitchFamily>34</PitchFamily>
  5656. <Weight>400</Weight>
  5657. <Italic>0</Italic>
  5658. <UnderLine>0</UnderLine>
  5659. <StrikeOut>0</StrikeOut>
  5660. <Color>0</Color>
  5661. </ValuesFont>
  5662. <LegendFont>
  5663. <Name>Arial</Name>
  5664. <Height>12</Height>
  5665. <PitchFamily>34</PitchFamily>
  5666. <Weight>400</Weight>
  5667. <Italic>0</Italic>
  5668. <UnderLine>0</UnderLine>
  5669. <StrikeOut>0</StrikeOut>
  5670. <Color>0</Color>
  5671. </LegendFont>
  5672. </Fonts>
  5673. <SharedXAxis>true</SharedXAxis>
  5674. <SharedYAxis>true</SharedYAxis>
  5675. <SharedZAxis>false</SharedZAxis>
  5676. <XAxes>
  5677. <Axis>
  5678. <Minimum>-0.04000000000000001</Minimum>
  5679. <Maximum>0.15999999999999998</Maximum>
  5680. <Linear>true</Linear>
  5681. <Scaling>1</Scaling>
  5682. <Label>position[2]</Label>
  5683. </Axis>
  5684. </XAxes>
  5685. <YAxes>
  5686. <Axis>
  5687. <Minimum>-0.020000000000000004</Minimum>
  5688. <Maximum>0.07999999999999999</Maximum>
  5689. <Linear>true</Linear>
  5690. <Scaling>1</Scaling>
  5691. <Label>Simulated path</Label>
  5692. </Axis>
  5693. <Axis>
  5694. <Minimum>-0.06</Minimum>
  5695. <Maximum>0.14</Maximum>
  5696. <Linear>true</Linear>
  5697. <Scaling>1</Scaling>
  5698. <Label>Given Path</Label>
  5699. </Axis>
  5700. </YAxes>
  5701. <ZAxes>
  5702. </ZAxes>
  5703. <Curves>
  5704. <Curve>
  5705. <LineColor>3355111</LineColor>
  5706. <LineStyle>1</LineStyle>
  5707. <TickColor>3355111</TickColor>
  5708. <TickStyle>0</TickStyle>
  5709. <CurveVisible>true</CurveVisible>
  5710. <PixelThresshold>1</PixelThresshold>
  5711. <LineThickness>1</LineThickness>
  5712. <LineOrder>1</LineOrder>
  5713. <ShowYValues>true</ShowYValues>
  5714. <XCurveData>
  5715. <ShowUnit>true</ShowUnit>
  5716. <VarName>new_joint3\position[2]</VarName>
  5717. </XCurveData>
  5718. <YCurveData>
  5719. <ShowUnit>true</ShowUnit>
  5720. <VarName>new_joint3\position[3]</VarName>
  5721. </YCurveData>
  5722. </Curve>
  5723. <Curve>
  5724. <LineColor>6076255</LineColor>
  5725. <LineStyle>1</LineStyle>
  5726. <TickColor>6076255</TickColor>
  5727. <TickStyle>0</TickStyle>
  5728. <CurveVisible>true</CurveVisible>
  5729. <PixelThresshold>1</PixelThresshold>
  5730. <LineThickness>1</LineThickness>
  5731. <LineOrder>1</LineOrder>
  5732. <ShowYValues>true</ShowYValues>
  5733. <XCurveData>
  5734. <ShowUnit>true</ShowUnit>
  5735. <VarName>rectanglepath1\output[1]</VarName>
  5736. </XCurveData>
  5737. <YCurveData>
  5738. <ShowUnit>true</ShowUnit>
  5739. <VarName>rectanglepath1\output[2]</VarName>
  5740. </YCurveData>
  5741. </Curve>
  5742. </Curves>
  5743. <Legenda>
  5744. <ShowLegenda>true</ShowLegenda>
  5745. <BorderPenColor>0</BorderPenColor>
  5746. <BackgroundColor>16777215</BackgroundColor>
  5747. </Legenda>
  5748. </Plot>
  5749. <Plot>
  5750. <PlotType>GraphPlot</PlotType>
  5751. <BasePlot>
  5752. <PlotId>4</PlotId>
  5753. <UseWindowsBGColor>false</UseWindowsBGColor>
  5754. <BGColor>16777215</BGColor>
  5755. <PlotIsVisible>true</PlotIsVisible>
  5756. </BasePlot>
  5757. <Grid>
  5758. <DrawGrid>true</DrawGrid>
  5759. <GridColor>15780518</GridColor>
  5760. <GridBorderLineColor>12624260</GridBorderLineColor>
  5761. <GridZeroLineColor>0</GridZeroLineColor>
  5762. <XTicks>10</XTicks>
  5763. <YTicks>10</YTicks>
  5764. <ZTicks>10</ZTicks>
  5765. <Use3DLook>false</Use3DLook>
  5766. </Grid>
  5767. <PlotBGColor>16777215</PlotBGColor>
  5768. <ShowPlotTitle>true</ShowPlotTitle>
  5769. <TitlePosition>1</TitlePosition>
  5770. <PlotTitle>model</PlotTitle>
  5771. <ShowXValues>true</ShowXValues>
  5772. <Fonts>
  5773. <TitleFont>
  5774. <Name>Arial</Name>
  5775. <Height>12</Height>
  5776. <PitchFamily>34</PitchFamily>
  5777. <Weight>400</Weight>
  5778. <Italic>0</Italic>
  5779. <UnderLine>0</UnderLine>
  5780. <StrikeOut>0</StrikeOut>
  5781. <Color>0</Color>
  5782. </TitleFont>
  5783. <LabelFont>
  5784. <Name>Arial</Name>
  5785. <Height>12</Height>
  5786. <PitchFamily>34</PitchFamily>
  5787. <Weight>400</Weight>
  5788. <Italic>0</Italic>
  5789. <UnderLine>0</UnderLine>
  5790. <StrikeOut>0</StrikeOut>
  5791. <Color>0</Color>
  5792. </LabelFont>
  5793. <ValuesFont>
  5794. <Name>Arial</Name>
  5795. <Height>10</Height>
  5796. <PitchFamily>34</PitchFamily>
  5797. <Weight>400</Weight>
  5798. <Italic>0</Italic>
  5799. <UnderLine>0</UnderLine>
  5800. <StrikeOut>0</StrikeOut>
  5801. <Color>0</Color>
  5802. </ValuesFont>
  5803. <LegendFont>
  5804. <Name>Arial</Name>
  5805. <Height>12</Height>
  5806. <PitchFamily>34</PitchFamily>
  5807. <Weight>400</Weight>
  5808. <Italic>0</Italic>
  5809. <UnderLine>0</UnderLine>
  5810. <StrikeOut>0</StrikeOut>
  5811. <Color>0</Color>
  5812. </LegendFont>
  5813. </Fonts>
  5814. <SharedXAxis>true</SharedXAxis>
  5815. <SharedYAxis>true</SharedYAxis>
  5816. <SharedZAxis>false</SharedZAxis>
  5817. <XAxes>
  5818. <Axis>
  5819. <Minimum>0.8</Minimum>
  5820. <Maximum>1.5</Maximum>
  5821. <Linear>true</Linear>
  5822. <Scaling>0</Scaling>
  5823. <Label>time</Label>
  5824. </Axis>
  5825. </XAxes>
  5826. <YAxes>
  5827. <Axis>
  5828. <Minimum>-1.7999999999999985</Minimum>
  5829. <Maximum>-0.7999999999999988</Maximum>
  5830. <Linear>true</Linear>
  5831. <Scaling>1</Scaling>
  5832. <Label>output</Label>
  5833. </Axis>
  5834. <Axis>
  5835. <Minimum>-2.5</Minimum>
  5836. <Maximum>2.5</Maximum>
  5837. <Linear>true</Linear>
  5838. <Scaling>1</Scaling>
  5839. <Label>output</Label>
  5840. </Axis>
  5841. <Axis>
  5842. <Minimum>-2.5</Minimum>
  5843. <Maximum>2.5</Maximum>
  5844. <Linear>true</Linear>
  5845. <Scaling>1</Scaling>
  5846. <Label>output</Label>
  5847. </Axis>
  5848. </YAxes>
  5849. <ZAxes>
  5850. </ZAxes>
  5851. <Curves>
  5852. <Curve>
  5853. <LineColor>3355111</LineColor>
  5854. <LineStyle>1</LineStyle>
  5855. <TickColor>3355111</TickColor>
  5856. <TickStyle>0</TickStyle>
  5857. <CurveVisible>true</CurveVisible>
  5858. <PixelThresshold>1</PixelThresshold>
  5859. <LineThickness>1</LineThickness>
  5860. <LineOrder>1</LineOrder>
  5861. <ShowYValues>true</ShowYValues>
  5862. <XCurveData>
  5863. <ShowUnit>true</ShowUnit>
  5864. <VarName>time</VarName>
  5865. </XCurveData>
  5866. <YCurveData>
  5867. <ShowUnit>true</ShowUnit>
  5868. <VarName>Step\output</VarName>
  5869. </YCurveData>
  5870. </Curve>
  5871. <Curve>
  5872. <LineColor>6076255</LineColor>
  5873. <LineStyle>1</LineStyle>
  5874. <TickColor>6076255</TickColor>
  5875. <TickStyle>0</TickStyle>
  5876. <CurveVisible>true</CurveVisible>
  5877. <PixelThresshold>1</PixelThresshold>
  5878. <LineThickness>1</LineThickness>
  5879. <LineOrder>1</LineOrder>
  5880. <ShowYValues>true</ShowYValues>
  5881. <XCurveData>
  5882. <ShowUnit>true</ShowUnit>
  5883. <VarName>time</VarName>
  5884. </XCurveData>
  5885. <YCurveData>
  5886. <ShowUnit>true</ShowUnit>
  5887. <VarName>Integrate2\output</VarName>
  5888. <MulOffsetMValue>-1.0</MulOffsetMValue>
  5889. </YCurveData>
  5890. </Curve>
  5891. <Curve>
  5892. <LineColor>12553035</LineColor>
  5893. <LineStyle>1</LineStyle>
  5894. <TickColor>12553035</TickColor>
  5895. <TickStyle>0</TickStyle>
  5896. <CurveVisible>true</CurveVisible>
  5897. <PixelThresshold>1</PixelThresshold>
  5898. <LineThickness>1</LineThickness>
  5899. <LineOrder>1</LineOrder>
  5900. <ShowYValues>true</ShowYValues>
  5901. <XCurveData>
  5902. <ShowUnit>true</ShowUnit>
  5903. <VarName>time</VarName>
  5904. </XCurveData>
  5905. <YCurveData>
  5906. <ShowUnit>true</ShowUnit>
  5907. <VarName>motor_joint2\SignalLimiter2\output</VarName>
  5908. </YCurveData>
  5909. </Curve>
  5910. </Curves>
  5911. <Legenda>
  5912. <ShowLegenda>true</ShowLegenda>
  5913. <Position>
  5914. <X>0.9365808823529411</X>
  5915. <Y>0.0811764705882353</Y>
  5916. </Position>
  5917. <BorderPenColor>0</BorderPenColor>
  5918. <BackgroundColor>16777215</BackgroundColor>
  5919. </Legenda>
  5920. </Plot>
  5921. <Plot>
  5922. <PlotType>GraphPlot</PlotType>
  5923. <BasePlot>
  5924. <PlotId>5</PlotId>
  5925. <UseWindowsBGColor>false</UseWindowsBGColor>
  5926. <BGColor>16777215</BGColor>
  5927. <PlotIsVisible>true</PlotIsVisible>
  5928. </BasePlot>
  5929. <Grid>
  5930. <DrawGrid>true</DrawGrid>
  5931. <GridColor>15780518</GridColor>
  5932. <GridBorderLineColor>12624260</GridBorderLineColor>
  5933. <GridZeroLineColor>0</GridZeroLineColor>
  5934. <XTicks>10</XTicks>
  5935. <YTicks>10</YTicks>
  5936. <ZTicks>10</ZTicks>
  5937. <Use3DLook>false</Use3DLook>
  5938. </Grid>
  5939. <PlotBGColor>16777215</PlotBGColor>
  5940. <ShowPlotTitle>true</ShowPlotTitle>
  5941. <TitlePosition>1</TitlePosition>
  5942. <PlotTitle>model</PlotTitle>
  5943. <ShowXValues>true</ShowXValues>
  5944. <Fonts>
  5945. <TitleFont>
  5946. <Name>Arial</Name>
  5947. <Height>12</Height>
  5948. <PitchFamily>34</PitchFamily>
  5949. <Weight>400</Weight>
  5950. <Italic>0</Italic>
  5951. <UnderLine>0</UnderLine>
  5952. <StrikeOut>0</StrikeOut>
  5953. <Color>0</Color>
  5954. </TitleFont>
  5955. <LabelFont>
  5956. <Name>Arial</Name>
  5957. <Height>12</Height>
  5958. <PitchFamily>34</PitchFamily>
  5959. <Weight>400</Weight>
  5960. <Italic>0</Italic>
  5961. <UnderLine>0</UnderLine>
  5962. <StrikeOut>0</StrikeOut>
  5963. <Color>0</Color>
  5964. </LabelFont>
  5965. <ValuesFont>
  5966. <Name>Arial</Name>
  5967. <Height>10</Height>
  5968. <PitchFamily>34</PitchFamily>
  5969. <Weight>400</Weight>
  5970. <Italic>0</Italic>
  5971. <UnderLine>0</UnderLine>
  5972. <StrikeOut>0</StrikeOut>
  5973. <Color>0</Color>
  5974. </ValuesFont>
  5975. <LegendFont>
  5976. <Name>Arial</Name>
  5977. <Height>12</Height>
  5978. <PitchFamily>34</PitchFamily>
  5979. <Weight>400</Weight>
  5980. <Italic>0</Italic>
  5981. <UnderLine>0</UnderLine>
  5982. <StrikeOut>0</StrikeOut>
  5983. <Color>0</Color>
  5984. </LegendFont>
  5985. </Fonts>
  5986. <SharedXAxis>true</SharedXAxis>
  5987. <SharedYAxis>true</SharedYAxis>
  5988. <SharedZAxis>false</SharedZAxis>
  5989. <XAxes>
  5990. <Axis>
  5991. <Minimum>0.0</Minimum>
  5992. <Maximum>0.13434062268478064</Maximum>
  5993. <Linear>true</Linear>
  5994. <Scaling>3</Scaling>
  5995. <Label>time</Label>
  5996. </Axis>
  5997. </XAxes>
  5998. <YAxes>
  5999. <Axis>
  6000. <Minimum>-500.0</Minimum>
  6001. <Maximum>500.0</Maximum>
  6002. <Linear>true</Linear>
  6003. <Scaling>1</Scaling>
  6004. <Label>v 1</Label>
  6005. </Axis>
  6006. <Axis>
  6007. <Minimum>-3.79912966828766</Minimum>
  6008. <Maximum>0.0</Maximum>
  6009. <Linear>true</Linear>
  6010. <Scaling>1</Scaling>
  6011. <Label>a 1</Label>
  6012. </Axis>
  6013. <Axis>
  6014. <Minimum>-3.79912966828766</Minimum>
  6015. <Maximum>0.0</Maximum>
  6016. <Linear>true</Linear>
  6017. <Scaling>1</Scaling>
  6018. <Label>x 1</Label>
  6019. </Axis>
  6020. <Axis>
  6021. <Minimum>-3.79912966828766</Minimum>
  6022. <Maximum>0.0</Maximum>
  6023. <Linear>true</Linear>
  6024. <Scaling>1</Scaling>
  6025. <Label>v 2</Label>
  6026. </Axis>
  6027. <Axis>
  6028. <Minimum>-3.79912966828766</Minimum>
  6029. <Maximum>0.0</Maximum>
  6030. <Linear>true</Linear>
  6031. <Scaling>1</Scaling>
  6032. <Label>a 2</Label>
  6033. </Axis>
  6034. <Axis>
  6035. <Minimum>-3.79912966828766</Minimum>
  6036. <Maximum>0.0</Maximum>
  6037. <Linear>true</Linear>
  6038. <Scaling>1</Scaling>
  6039. <Label>x 2</Label>
  6040. </Axis>
  6041. </YAxes>
  6042. <ZAxes>
  6043. </ZAxes>
  6044. <Curves>
  6045. <Curve>
  6046. <LineColor>3355111</LineColor>
  6047. <LineStyle>1</LineStyle>
  6048. <TickColor>3355111</TickColor>
  6049. <TickStyle>0</TickStyle>
  6050. <CurveVisible>true</CurveVisible>
  6051. <PixelThresshold>1</PixelThresshold>
  6052. <LineThickness>1</LineThickness>
  6053. <LineOrder>1</LineOrder>
  6054. <ShowYValues>true</ShowYValues>
  6055. <XCurveData>
  6056. <ShowUnit>true</ShowUnit>
  6057. <VarName>time</VarName>
  6058. </XCurveData>
  6059. <YCurveData>
  6060. <ShowUnit>true</ShowUnit>
  6061. <VarName>stepper_control\Acceleration_int\output</VarName>
  6062. </YCurveData>
  6063. </Curve>
  6064. <Curve>
  6065. <LineColor>6076255</LineColor>
  6066. <LineStyle>1</LineStyle>
  6067. <TickColor>6076255</TickColor>
  6068. <TickStyle>0</TickStyle>
  6069. <CurveVisible>true</CurveVisible>
  6070. <PixelThresshold>1</PixelThresshold>
  6071. <LineThickness>1</LineThickness>
  6072. <LineOrder>1</LineOrder>
  6073. <ShowYValues>true</ShowYValues>
  6074. <XCurveData>
  6075. <ShowUnit>true</ShowUnit>
  6076. <VarName>time</VarName>
  6077. </XCurveData>
  6078. <YCurveData>
  6079. <ShowUnit>true</ShowUnit>
  6080. <VarName>stepper_control\Acceleration_int\input</VarName>
  6081. </YCurveData>
  6082. </Curve>
  6083. <Curve>
  6084. <LineColor>12553035</LineColor>
  6085. <LineStyle>1</LineStyle>
  6086. <TickColor>12553035</TickColor>
  6087. <TickStyle>0</TickStyle>
  6088. <CurveVisible>true</CurveVisible>
  6089. <PixelThresshold>1</PixelThresshold>
  6090. <LineThickness>1</LineThickness>
  6091. <LineOrder>1</LineOrder>
  6092. <ShowYValues>true</ShowYValues>
  6093. <XCurveData>
  6094. <ShowUnit>true</ShowUnit>
  6095. <VarName>time</VarName>
  6096. </XCurveData>
  6097. <YCurveData>
  6098. <ShowUnit>true</ShowUnit>
  6099. <VarName>stepper_control\Velocity_int\output</VarName>
  6100. </YCurveData>
  6101. </Curve>
  6102. <Curve>
  6103. <LineColor>15086320</LineColor>
  6104. <LineStyle>1</LineStyle>
  6105. <TickColor>15086320</TickColor>
  6106. <TickStyle>0</TickStyle>
  6107. <CurveVisible>true</CurveVisible>
  6108. <PixelThresshold>1</PixelThresshold>
  6109. <LineThickness>1</LineThickness>
  6110. <LineOrder>1</LineOrder>
  6111. <ShowYValues>true</ShowYValues>
  6112. <XCurveData>
  6113. <ShowUnit>true</ShowUnit>
  6114. <VarName>time</VarName>
  6115. </XCurveData>
  6116. <YCurveData>
  6117. <ShowUnit>true</ShowUnit>
  6118. <VarName>stepper_control1\Acceleration_int\output</VarName>
  6119. </YCurveData>
  6120. </Curve>
  6121. <Curve>
  6122. <LineColor>15790150</LineColor>
  6123. <LineStyle>1</LineStyle>
  6124. <TickColor>15790150</TickColor>
  6125. <TickStyle>0</TickStyle>
  6126. <CurveVisible>true</CurveVisible>
  6127. <PixelThresshold>1</PixelThresshold>
  6128. <LineThickness>1</LineThickness>
  6129. <LineOrder>1</LineOrder>
  6130. <ShowYValues>true</ShowYValues>
  6131. <XCurveData>
  6132. <ShowUnit>true</ShowUnit>
  6133. <VarName>time</VarName>
  6134. </XCurveData>
  6135. <YCurveData>
  6136. <ShowUnit>true</ShowUnit>
  6137. <VarName>stepper_control1\Acceleration_int\input</VarName>
  6138. </YCurveData>
  6139. </Curve>
  6140. <Curve>
  6141. <LineColor>1696255</LineColor>
  6142. <LineStyle>1</LineStyle>
  6143. <TickColor>1696255</TickColor>
  6144. <TickStyle>0</TickStyle>
  6145. <CurveVisible>true</CurveVisible>
  6146. <PixelThresshold>1</PixelThresshold>
  6147. <LineThickness>1</LineThickness>
  6148. <LineOrder>1</LineOrder>
  6149. <ShowYValues>true</ShowYValues>
  6150. <XCurveData>
  6151. <ShowUnit>true</ShowUnit>
  6152. <VarName>time</VarName>
  6153. </XCurveData>
  6154. <YCurveData>
  6155. <ShowUnit>true</ShowUnit>
  6156. <VarName>stepper_control1\Velocity_int\output</VarName>
  6157. </YCurveData>
  6158. </Curve>
  6159. </Curves>
  6160. <Legenda>
  6161. <ShowLegenda>true</ShowLegenda>
  6162. <BorderPenColor>0</BorderPenColor>
  6163. <BackgroundColor>16777215</BackgroundColor>
  6164. </Legenda>
  6165. </Plot>
  6166. </Plots>
  6167. <PlotPanels>
  6168. <PlotPanel>
  6169. <PlotPanelId>1</PlotPanelId>
  6170. <PlotPanelVisible>true</PlotPanelVisible>
  6171. <Name>Window 1</Name>
  6172. <Tiling>0</Tiling>
  6173. <PlotIds>
  6174. <PlotId>2</PlotId>
  6175. <PlotId>4</PlotId>
  6176. </PlotIds>
  6177. <ToggleState>Base</ToggleState>
  6178. </PlotPanel>
  6179. <PlotPanel>
  6180. <PlotPanelId>2</PlotPanelId>
  6181. <PlotPanelVisible>true</PlotPanelVisible>
  6182. <Name>Window 2</Name>
  6183. <Tiling>0</Tiling>
  6184. <PlotIds>
  6185. <PlotId>1</PlotId>
  6186. </PlotIds>
  6187. <ToggleState>Base</ToggleState>
  6188. </PlotPanel>
  6189. <PlotPanel>
  6190. <PlotPanelId>3</PlotPanelId>
  6191. <PlotPanelVisible>true</PlotPanelVisible>
  6192. <Name>Window 3</Name>
  6193. <Tiling>2</Tiling>
  6194. <PlotIds>
  6195. <PlotId>5</PlotId>
  6196. </PlotIds>
  6197. <ToggleState>StripChart</ToggleState>
  6198. </PlotPanel>
  6199. </PlotPanels>
  6200. <WindowRectangles virtualDesktopWidth="5760" virtualDesktopHeight="1080">
  6201. <WindowRectangle monitor="2" left="1920" top="0" right="3840" bottom="1080" plotpanelid="1">
  6202. 0.0744792 0.00462963 0.86875 0.755556
  6203. </WindowRectangle>
  6204. <WindowRectangle monitor="1" left="-1920" top="0" right="0" bottom="1080" plotpanelid="2">
  6205. 0.130729 0.0842593 0.846354 0.864815
  6206. </WindowRectangle>
  6207. <WindowRectangle monitor="0" left="0" top="0" right="1920" bottom="1080" plotpanelid="3">
  6208. 0.05625 0.175926 0.806771 0.9
  6209. </WindowRectangle>
  6210. </WindowRectangles>
  6211. </PlotSpecs>
  6212. <RunSpecs>
  6213. <SimulatorSettings>
  6214. <StartTime>0.0</StartTime>
  6215. <FinishTime>15.0</FinishTime>
  6216. <AllowPassFinishTime>false</AllowPassFinishTime>
  6217. <Warp>false</Warp>
  6218. <FPGonio>false</FPGonio>
  6219. <UseOutputAfterEach>false</UseOutputAfterEach>
  6220. <OutputAfterEach>0.1</OutputAfterEach>
  6221. <EventEpsilon>1.0e-6</EventEpsilon>
  6222. <AlgebraicTolerance>1.0e-7</AlgebraicTolerance>
  6223. <SteadyStateAnalysis>false</SteadyStateAnalysis>
  6224. <UpdateHoldInstructions>true</UpdateHoldInstructions>
  6225. </SimulatorSettings>
  6226. <IntegrationMethods>
  6227. <IntegrationMethod>
  6228. <Name>Euler</Name>
  6229. <StepSize>0.01</StepSize>
  6230. <AutoStepSize>false</AutoStepSize>
  6231. </IntegrationMethod>
  6232. <IntegrationMethod>
  6233. <Name>BackwardEuler</Name>
  6234. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  6235. <RelativeTolerance>1.0e-5</RelativeTolerance>
  6236. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  6237. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  6238. <StepSize>0.01</StepSize>
  6239. <Alpha>1.0</Alpha>
  6240. </IntegrationMethod>
  6241. <IntegrationMethod>
  6242. <Name>AdamsBashforth</Name>
  6243. <StepSize>0.01</StepSize>
  6244. <AutoStepSize>false</AutoStepSize>
  6245. </IntegrationMethod>
  6246. <IntegrationMethod>
  6247. <Name>RungeKutta2</Name>
  6248. <StepSize>0.01</StepSize>
  6249. <AutoStepSize>false</AutoStepSize>
  6250. </IntegrationMethod>
  6251. <IntegrationMethod>
  6252. <Name>RungeKutta4</Name>
  6253. <StepSize>0.01</StepSize>
  6254. <AutoStepSize>false</AutoStepSize>
  6255. </IntegrationMethod>
  6256. <IntegrationMethod>
  6257. <Name>RungeKutta8</Name>
  6258. <UseInitialStepSize>false</UseInitialStepSize>
  6259. <InitialStepSize>0.0</InitialStepSize>
  6260. <UseMaximumStepSize>false</UseMaximumStepSize>
  6261. <MaximumStepSize>0.0</MaximumStepSize>
  6262. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  6263. <RelativeTolerance>1.0e-6</RelativeTolerance>
  6264. <SafetyFactor>0.9</SafetyFactor>
  6265. <Factor1>0.33</Factor1>
  6266. <Factor2>6.0</Factor2>
  6267. <Beta>0.0</Beta>
  6268. <UseMaxNrSteps>false</UseMaxNrSteps>
  6269. <MaxNrSteps>100000</MaxNrSteps>
  6270. <UseStiffDetection>false</UseStiffDetection>
  6271. <MaxNrStiffnessSteps>1000</MaxNrStiffnessSteps>
  6272. </IntegrationMethod>
  6273. <IntegrationMethod>
  6274. <Name>RungeKuttaFehlberg</Name>
  6275. <UseInitialStepSize>false</UseInitialStepSize>
  6276. <InitialStepSize>0.0</InitialStepSize>
  6277. <UseMaximumStepSize>false</UseMaximumStepSize>
  6278. <MaximumStepSize>0.0</MaximumStepSize>
  6279. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  6280. <RelativeTolerance>1.0e-6</RelativeTolerance>
  6281. </IntegrationMethod>
  6282. <IntegrationMethod>
  6283. <Name>VodeAdams</Name>
  6284. <UseInitialStepSize>false</UseInitialStepSize>
  6285. <InitialStepSize>0.0</InitialStepSize>
  6286. <UseMaximumStepSize>false</UseMaximumStepSize>
  6287. <MaximumStepSize>0.0</MaximumStepSize>
  6288. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  6289. <RelativeTolerance>1.0e-6</RelativeTolerance>
  6290. <VodeUseBDF>true</VodeUseBDF>
  6291. <VodeUseNewton>true</VodeUseNewton>
  6292. </IntegrationMethod>
  6293. <IntegrationMethod>
  6294. <Name>BDFMethod</Name>
  6295. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  6296. <RelativeTolerance>1.0e-5</RelativeTolerance>
  6297. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  6298. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  6299. <UseInitialStepSize>false</UseInitialStepSize>
  6300. <InitialStepSize>0.0</InitialStepSize>
  6301. <UseMaximumStepSize>false</UseMaximumStepSize>
  6302. <MaximumStepSize>0.0</MaximumStepSize>
  6303. </IntegrationMethod>
  6304. <IntegrationMethod>
  6305. <Name>MeBDFiMethod</Name>
  6306. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  6307. <RelativeTolerance>1.0e-5</RelativeTolerance>
  6308. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  6309. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  6310. <UseInitialStepSize>false</UseInitialStepSize>
  6311. <InitialStepSize>0.0</InitialStepSize>
  6312. <UseMaximumStepSize>false</UseMaximumStepSize>
  6313. <MaximumStepSize>0.0</MaximumStepSize>
  6314. </IntegrationMethod>
  6315. <SelectedIntegrationMethod>8</SelectedIntegrationMethod>
  6316. </IntegrationMethods>
  6317. </RunSpecs>
  6318. <MultipleRun>
  6319. <NrSteps>10</NrSteps>
  6320. <CopyFromStates>false</CopyFromStates>
  6321. <JoinParameterVariation>true</JoinParameterVariation>
  6322. <ClearAfterRun>true</ClearAfterRun>
  6323. <RedrawAfterRun>false</RedrawAfterRun>
  6324. <DrawDuringSimulation>true</DrawDuringSimulation>
  6325. <ActionBeforeOptimization>0</ActionBeforeOptimization>
  6326. <CompareValue>0.0</CompareValue>
  6327. <UseCompareValue>true</UseCompareValue>
  6328. <MultipleRunType>MultipleRun</MultipleRunType>
  6329. <Minimize>true</Minimize>
  6330. <OptimizationVariable></OptimizationVariable>
  6331. <ResulVarUsage>UseEndValue</ResulVarUsage>
  6332. <Tolerance>0.001</Tolerance>
  6333. <OptimizationMethod>BroydonFletcherGoldfarbShanno</OptimizationMethod>
  6334. <MultipleRunVariables>
  6335. </MultipleRunVariables>
  6336. </MultipleRun>
  6337. <ExportData>
  6338. <WriteAsText>true</WriteAsText>
  6339. <ReadAsText>true</ReadAsText>
  6340. <WriteHeader>true</WriteHeader>
  6341. <ReadHeader>true</ReadHeader>
  6342. <ReadFilename></ReadFilename>
  6343. <WriteFilename></WriteFilename>
  6344. <DoWrite>false</DoWrite>
  6345. <ExportVariables>
  6346. </ExportVariables>
  6347. <ImportVariables>
  6348. </ImportVariables>
  6349. </ExportData>
  6350. <BreakPoints>
  6351. </BreakPoints>
  6352. <AnimationPlayback>
  6353. <PlaybackSpeed>1.0</PlaybackSpeed>
  6354. </AnimationPlayback>
  6355. </ExpData>
  6356. </Experiment>
  6357. </Experiments>
  6358. </Document>