您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

4869 行
135KB

  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\03_motor\motor_physics2.emx</LibraryPath>
  11. <TimeStamp>2020-7-20 15:58:21</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. Base1 720 184
  35. description '<Information><Description><Version>4.8</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><AllowLibraryUpdate>True</AllowLibraryUpdate><LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath><TimeStamp>2020-7-20 15:56:10</TimeStamp><Description>Base</Description></Description><Attributes><GlobalRelations>parameters
  36. real I [3,1] = [7.583333333333335e-7; 3.645833333333334e-8; 7.364583333333335e-7] {N.m.s};
  37. real m = 0.0035 {kg};</GlobalRelations></Attributes></Information>';
  38. type Submodel
  39. ports
  40. power out p [6,1];
  41. signal in Hin [4,4];
  42. signal out Hout [4,4];
  43. end;
  44. icon bg ellipse bottom
  45. figures
  46. ellipse 696 160 744 208 color 0 fill 16777215 width 2;
  47. line 696 184 744 184 color 0 fill 16777215;
  48. line 720 160 720 208 color 0 fill 16777215;
  49. terminals
  50. p 704 160 fixed;
  51. Hin 736 160 fixed;
  52. Hout 744 216 fixed;
  53. end;
  54. implementation bg
  55. submodels
  56. AdHi0 544 400
  57. 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>';
  58. type MTF
  59. ports
  60. power in p1 [6,1];
  61. power out p2 [6,1];
  62. signal in H [4,4];
  63. restrictions
  64. causality constraint not_equal p1 p2;
  65. end;
  66. icon bg left
  67. figures
  68. text 'MTF' 544 400 color 0 18 bold;
  69. end;
  70. implementation eq
  71. variables
  72. real onlyRotH[4,4];
  73. code
  74. //Only rotations with respect to the inertial system matter!
  75. onlyRotH = H;
  76. onlyRotH[1,4] = 0;
  77. onlyRotH[2,4] = 0;
  78. onlyRotH[3,4] = 0;
  79. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  80. p1.f = Adjoint(onlyRotH) * p2.f;
  81. implementation_end;
  82. EJS 616 336
  83. 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>';
  84. type MGY
  85. ports
  86. power in p1 [6,1];
  87. end;
  88. icon bg top
  89. figures
  90. text 'MGY' 616 336 color 0 18 bold;
  91. end;
  92. implementation eq
  93. //EJS / Gyroscopic effects
  94. parameters
  95. real global I[3];
  96. real global m;
  97. variables
  98. real II[6,6]; //Inertial tensor
  99. real Q[6,6];
  100. real QI[6,6];
  101. real Ia[6];
  102. initialequations
  103. Ia[1:3] = I;
  104. Ia[4:6] = m;
  105. II = diag(Ia);
  106. equations
  107. Q = transpose(adjoint(p1.f));
  108. QI = Q*II;
  109. p1.e = QI*p1.f;implementation_end;
  110. Gravity 616 400
  111. 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>';
  112. type Se
  113. ports
  114. power out p [6,1];
  115. restrictions
  116. causality fixed out p;
  117. end;
  118. icon bg bottom
  119. figures
  120. text 'Se' 616 400 color 0 18 bold;
  121. end;
  122. implementation eq
  123. parameters
  124. real global m;
  125. variables
  126. real effort[6];
  127. equations
  128. effort = [0;0;0;0;0;-g_n*m];
  129. p.e = effort;
  130. implementation_end;
  131. InertialTensor 544 288
  132. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:2:12</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  133. type I
  134. ports
  135. power in p [6,1];
  136. signal out state [6,1];
  137. restrictions
  138. causality preferred in p;
  139. end;
  140. icon bg top
  141. figures
  142. text 'I' 544 288 color 0 18 bold;
  143. end;
  144. implementation eq
  145. parameters
  146. real global I[3];
  147. real global m;
  148. variables
  149. real II[6,6]; //Inertial tensor
  150. real Ia[6];
  151. initialequations
  152. Ia[1:3] = I;
  153. Ia[4:6] = m;
  154. II = diag(Ia);
  155. equations
  156. state = int(p.e); //state = generalized momentum
  157. p.f = inverse(II)*state;
  158. implementation_end;
  159. plug p 472 336;
  160. plug Hin 472 496;
  161. plug Hout 640 496;
  162. Splitter1 544 496
  163. description '<Description><Version>4.0</Version>
  164. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  165. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  166. <IsMainModel>1</IsMainModel>
  167. <KeepParameterValues>False</KeepParameterValues>
  168. </Description>';
  169. knot Splitter
  170. ports
  171. signal knot duplicatable out output [4,4];
  172. signal knot in input [4,4];
  173. end;
  174. icon bg ellipse
  175. figures
  176. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  177. ellipse 539.7 491.7 548.3 500.3 color -1;
  178. terminals
  179. input 544 496 fixed;
  180. end;
  181. implementation eq
  182. equations
  183. collect (output) = input;
  184. implementation_end;
  185. Ta0j 544 336
  186. description '<Description>
  187. <Version>4.0</Version>
  188. <IsMainModel>1</IsMainModel>
  189. <KeepParameterValues>False</KeepParameterValues>
  190. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  191. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  192. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  193. <Description></Description>
  194. </Description>';
  195. knot OneJunction
  196. ports
  197. power knot duplicatable none p [6,1];
  198. signal knot out flow [6,1];
  199. restrictions
  200. causality constraint one_out p;
  201. end;
  202. icon bg bottom
  203. figures
  204. text '1' 544 336 color 0 18 bold;
  205. end;
  206. implementation eq
  207. equations
  208. sum (direct (p.e)) = 0;
  209. equal (collect (p.f));
  210. flow = first (p.f);
  211. implementation_end;
  212. end;
  213. connections
  214. AdHi0\p2 => Ta0j\p;
  215. Gravity\p => AdHi0\p1;
  216. Hin -> Splitter1\input;
  217. InertialTensor\p <= Ta0j\p;
  218. p <= Ta0j\p;
  219. Splitter1\output -> AdHi0\H;
  220. Splitter1\output -> Hout;
  221. Ta0j\p => EJS\p1;
  222. end;
  223. parameterrelations
  224. InertialTensor\I = I;
  225. InterialTensor\m = m;
  226. EJS\I = I;
  227. EJS\m = m;
  228. AdHik\COMdim = COMdim;
  229. AdHik1\COMdim = COMdim;
  230. Hij\dim = dim;
  231. Gravity\m=m;parameterrelations_end;
  232. figures
  233. text 'b = current link (body)
  234. a = previous link (body)
  235. i = Body fixed frame, fixed in joint with previous link
  236. j = Body fixed frame, fixed in joint with next link
  237. k = Body fixed frame, principal inertial frame
  238. 0 = inertial system
  239. ' 288 280 color 0;
  240. implementation_end;
  241. Base2 912 120
  242. description '<Information><Description><Version>4.8</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><AllowLibraryUpdate>True</AllowLibraryUpdate><LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath><TimeStamp>2020-7-20 15:56:10</TimeStamp><Description>Base</Description></Description><Attributes><GlobalRelations>parameters
  243. real I [3,1] = [0;0;0] {N.m.s};
  244. real m = 0.015 {kg};</GlobalRelations></Attributes></Information>';
  245. type Submodel
  246. ports
  247. power out p [6,1];
  248. signal in Hin [4,4];
  249. signal out Hout [4,4];
  250. end;
  251. icon bg ellipse bottom
  252. figures
  253. ellipse 888 96 936 144 color 0 fill 16777215 width 2;
  254. line 888 120 936 120 color 0 fill 16777215;
  255. line 912 96 912 144 color 0 fill 16777215;
  256. terminals
  257. p 896 96 fixed;
  258. Hin 928 96 fixed;
  259. Hout 936 152 fixed;
  260. end;
  261. implementation bg
  262. submodels
  263. AdHi0 544 400
  264. 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>';
  265. type MTF
  266. ports
  267. power in p1 [6,1];
  268. power out p2 [6,1];
  269. signal in H [4,4];
  270. restrictions
  271. causality constraint not_equal p1 p2;
  272. end;
  273. icon bg left
  274. figures
  275. text 'MTF' 544 400 color 0 18 bold;
  276. end;
  277. implementation eq
  278. variables
  279. real onlyRotH[4,4];
  280. code
  281. //Only rotations with respect to the inertial system matter!
  282. onlyRotH = H;
  283. onlyRotH[1,4] = 0;
  284. onlyRotH[2,4] = 0;
  285. onlyRotH[3,4] = 0;
  286. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  287. p1.f = Adjoint(onlyRotH) * p2.f;
  288. implementation_end;
  289. EJS 616 336
  290. 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>';
  291. type MGY
  292. ports
  293. power in p1 [6,1];
  294. end;
  295. icon bg top
  296. figures
  297. text 'MGY' 616 336 color 0 18 bold;
  298. end;
  299. implementation eq
  300. //EJS / Gyroscopic effects
  301. parameters
  302. real global I[3];
  303. real global m;
  304. variables
  305. real II[6,6]; //Inertial tensor
  306. real Q[6,6];
  307. real QI[6,6];
  308. real Ia[6];
  309. initialequations
  310. Ia[1:3] = I;
  311. Ia[4:6] = m;
  312. II = diag(Ia);
  313. equations
  314. Q = transpose(adjoint(p1.f));
  315. QI = Q*II;
  316. p1.e = QI*p1.f;implementation_end;
  317. Gravity 616 400
  318. 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>';
  319. type Se
  320. ports
  321. power out p [6,1];
  322. restrictions
  323. causality fixed out p;
  324. end;
  325. icon bg bottom
  326. figures
  327. text 'Se' 616 400 color 0 18 bold;
  328. end;
  329. implementation eq
  330. parameters
  331. real global m;
  332. variables
  333. real effort[6];
  334. equations
  335. effort = [0;0;0;0;0;-g_n*m];
  336. p.e = effort;
  337. implementation_end;
  338. InertialTensor 544 288
  339. description '<Information><Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues><LibraryPath></LibraryPath><TimeStamp>2007-9-25 12:2:12</TimeStamp><AllowLibraryUpdate>True</AllowLibraryUpdate></Description></Information>';
  340. type I
  341. ports
  342. power in p [6,1];
  343. signal out state [6,1];
  344. restrictions
  345. causality preferred in p;
  346. end;
  347. icon bg top
  348. figures
  349. text 'I' 544 288 color 0 18 bold;
  350. end;
  351. implementation eq
  352. parameters
  353. real global I[3];
  354. real global m;
  355. variables
  356. real II[6,6]; //Inertial tensor
  357. real Ia[6];
  358. initialequations
  359. Ia[1:3] = I;
  360. Ia[4:6] = m;
  361. II = diag(Ia);
  362. equations
  363. state = int(p.e); //state = generalized momentum
  364. p.f = inverse(II)*state;
  365. implementation_end;
  366. plug p 472 336;
  367. plug Hin 472 496;
  368. plug Hout 640 496;
  369. Splitter1 544 496
  370. description '<Description><Version>4.0</Version>
  371. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  372. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  373. <IsMainModel>1</IsMainModel>
  374. <KeepParameterValues>False</KeepParameterValues>
  375. </Description>';
  376. knot Splitter
  377. ports
  378. signal knot duplicatable out output [4,4];
  379. signal knot in input [4,4];
  380. end;
  381. icon bg ellipse
  382. figures
  383. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  384. ellipse 539.7 491.7 548.3 500.3 color -1;
  385. terminals
  386. input 544 496 fixed;
  387. end;
  388. implementation eq
  389. equations
  390. collect (output) = input;
  391. implementation_end;
  392. Ta0j 544 336
  393. description '<Description>
  394. <Version>4.0</Version>
  395. <IsMainModel>1</IsMainModel>
  396. <KeepParameterValues>False</KeepParameterValues>
  397. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  398. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  399. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  400. <Description></Description>
  401. </Description>';
  402. knot OneJunction
  403. ports
  404. power knot duplicatable none p [6,1];
  405. signal knot out flow [6,1];
  406. restrictions
  407. causality constraint one_out p;
  408. end;
  409. icon bg bottom
  410. figures
  411. text '1' 544 336 color 0 18 bold;
  412. end;
  413. implementation eq
  414. equations
  415. sum (direct (p.e)) = 0;
  416. equal (collect (p.f));
  417. flow = first (p.f);
  418. implementation_end;
  419. end;
  420. connections
  421. AdHi0\p2 => Ta0j\p;
  422. Gravity\p => AdHi0\p1;
  423. Hin -> Splitter1\input;
  424. InertialTensor\p <= Ta0j\p;
  425. p <= Ta0j\p;
  426. Splitter1\output -> AdHi0\H;
  427. Splitter1\output -> Hout;
  428. Ta0j\p => EJS\p1;
  429. end;
  430. parameterrelations
  431. InertialTensor\I = I;
  432. InterialTensor\m = m;
  433. EJS\I = I;
  434. EJS\m = m;
  435. AdHik\COMdim = COMdim;
  436. AdHik1\COMdim = COMdim;
  437. Hij\dim = dim;
  438. Gravity\m=m;parameterrelations_end;
  439. figures
  440. text 'b = current link (body)
  441. a = previous link (body)
  442. i = Body fixed frame, fixed in joint with previous link
  443. j = Body fixed frame, fixed in joint with next link
  444. k = Body fixed frame, principal inertial frame
  445. 0 = inertial system
  446. ' 288 280 color 0;
  447. implementation_end;
  448. Base3 376 184
  449. description '<Information>
  450. <Description>
  451. <Version>4.8</Version>
  452. <IsMainModel>1</IsMainModel>
  453. <KeepParameterValues>False</KeepParameterValues>
  454. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  455. <LibraryPath>Bond Graph\MR\center_of_mass_v2.emx</LibraryPath>
  456. <TimeStamp>2020-7-20 14:44:13</TimeStamp>
  457. <Description>Base</Description>
  458. </Description>
  459. <Attributes>
  460. <GlobalRelations>parameters
  461. real I [3,1] = [1.6399999999999998e-6; 4.7e-8; 1.61e-6] {N.m.s};
  462. real m = 0.00455 {kg};</GlobalRelations>
  463. </Attributes>
  464. </Information>';
  465. type Submodel
  466. ports
  467. power out p [6,1];
  468. signal in Hin [4,4];
  469. signal out Hout [4,4];
  470. end;
  471. icon bg ellipse bottom
  472. figures
  473. ellipse 352 160 400 208 color 0 fill 16777215 width 2;
  474. line 352 184 400 184 color 0 fill 16777215;
  475. line 376 160 376 208 color 0 fill 16777215;
  476. terminals
  477. p 360 160 fixed;
  478. Hin 392 160 fixed;
  479. end;
  480. implementation bg
  481. submodels
  482. AdHi0 544 400
  483. description '<Description>
  484. <Version>4.0</Version>
  485. <IsMainModel>1</IsMainModel>
  486. <KeepParameterValues>False</KeepParameterValues>
  487. <LibraryPath>Bond Graph\MTF.emx</LibraryPath>
  488. <TimeStamp>2007-9-25 12:3:3</TimeStamp>
  489. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  490. </Description>';
  491. type MTF
  492. ports
  493. power in p1 [6,1];
  494. power out p2 [6,1];
  495. signal in H [4,4];
  496. restrictions
  497. causality constraint not_equal p1 p2;
  498. end;
  499. icon bg left
  500. figures
  501. text 'MTF' 544 400 color 0 18 bold;
  502. end;
  503. implementation eq
  504. variables
  505. real onlyRotH[4,4];
  506. code
  507. //Only rotations with respect to the inertial system matter!
  508. onlyRotH = H;
  509. onlyRotH[1,4] = 0;
  510. onlyRotH[2,4] = 0;
  511. onlyRotH[3,4] = 0;
  512. p2.e = transpose(Adjoint(onlyRotH)) * p1.e;
  513. p1.f = Adjoint(onlyRotH) * p2.f;
  514. implementation_end;
  515. EJS 616 336
  516. description '<Description>
  517. <Version>4.0</Version>
  518. <IsMainModel>1</IsMainModel>
  519. <KeepParameterValues>False</KeepParameterValues>
  520. <LibraryPath>Bond Graph\MGY.emx</LibraryPath>
  521. <TimeStamp>2007-10-31 11:43:6</TimeStamp>
  522. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  523. </Description>';
  524. type MGY
  525. ports
  526. power in p1 [6,1];
  527. end;
  528. icon bg top
  529. figures
  530. text 'MGY' 616 336 color 0 18 bold;
  531. end;
  532. implementation eq
  533. //EJS / Gyroscopic effects
  534. parameters
  535. real global I[3];
  536. real global m;
  537. variables
  538. real II[6,6]; //Inertial tensor
  539. real Q[6,6];
  540. real QI[6,6];
  541. real Ia[6];
  542. initialequations
  543. Ia[1:3] = I;
  544. Ia[4:6] = m;
  545. II = diag(Ia);
  546. equations
  547. Q = transpose(adjoint(p1.f));
  548. QI = Q*II;
  549. p1.e = QI*p1.f;implementation_end;
  550. Gravity 616 400
  551. description '<Description>
  552. <Version>4.0</Version>
  553. <IsMainModel>1</IsMainModel>
  554. <KeepParameterValues>False</KeepParameterValues>
  555. <LibraryPath>Bond Graph\Se.emx</LibraryPath>
  556. <TimeStamp>2007-9-25 12:3:26</TimeStamp>
  557. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  558. </Description>';
  559. type Se
  560. ports
  561. power out p [6,1];
  562. restrictions
  563. causality fixed out p;
  564. end;
  565. icon bg bottom
  566. figures
  567. text 'Se' 616 400 color 0 18 bold;
  568. end;
  569. implementation eq
  570. parameters
  571. real global m;
  572. variables
  573. real effort[6];
  574. equations
  575. effort = [0;0;0;0;0;-g_n*m];
  576. p.e = effort;
  577. implementation_end;
  578. InertialTensor 544 288
  579. description '<Description>
  580. <Version>4.0</Version>
  581. <IsMainModel>1</IsMainModel>
  582. <KeepParameterValues>False</KeepParameterValues>
  583. <LibraryPath>Bond Graph\I.emx</LibraryPath>
  584. <TimeStamp>2007-9-25 12:2:12</TimeStamp>
  585. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  586. </Description>';
  587. type I
  588. ports
  589. power in p [6,1];
  590. signal out state [6,1];
  591. restrictions
  592. causality preferred in p;
  593. end;
  594. icon bg top
  595. figures
  596. text 'I' 544 288 color 0 18 bold;
  597. end;
  598. implementation eq
  599. parameters
  600. real global I[3];
  601. real global m;
  602. variables
  603. real II[6,6]; //Inertial tensor
  604. real Ia[6];
  605. initialequations
  606. Ia[1:3] = I;
  607. Ia[4:6] = m;
  608. II = diag(Ia);
  609. equations
  610. state = int(p.e); //state = generalized momentum
  611. p.f = inverse(II)*state;
  612. implementation_end;
  613. plug p 472 336;
  614. plug Hin 472 496;
  615. plug Hout 640 496;
  616. Splitter1 544 496
  617. description '<Description><Version>4.0</Version>
  618. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  619. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  620. <IsMainModel>1</IsMainModel>
  621. <KeepParameterValues>False</KeepParameterValues>
  622. </Description>';
  623. knot Splitter
  624. ports
  625. signal knot duplicatable out output [4,4];
  626. signal knot in input [4,4];
  627. end;
  628. icon bg ellipse
  629. figures
  630. ellipse 540.8 492.8 547.2 499.2 color -1 fill 0;
  631. ellipse 539.7 491.7 548.3 500.3 color -1;
  632. terminals
  633. input 544 496 fixed;
  634. end;
  635. implementation eq
  636. equations
  637. collect (output) = input;
  638. implementation_end;
  639. Ta0j 544 336
  640. description '<Description>
  641. <Version>4.0</Version>
  642. <IsMainModel>1</IsMainModel>
  643. <KeepParameterValues>False</KeepParameterValues>
  644. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  645. <TimeStamp>2007-9-27 9:51:18</TimeStamp>
  646. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  647. <Description></Description>
  648. </Description>';
  649. knot OneJunction
  650. ports
  651. power knot duplicatable none p [6,1];
  652. signal knot out flow [6,1];
  653. restrictions
  654. causality constraint one_out p;
  655. end;
  656. icon bg bottom
  657. figures
  658. text '1' 544 336 color 0 18 bold;
  659. end;
  660. implementation eq
  661. equations
  662. sum (direct (p.e)) = 0;
  663. equal (collect (p.f));
  664. flow = first (p.f);
  665. implementation_end;
  666. end;
  667. connections
  668. AdHi0\p2 => Ta0j\p;
  669. Gravity\p => AdHi0\p1;
  670. Hin -> Splitter1\input;
  671. InertialTensor\p <= Ta0j\p;
  672. p <= Ta0j\p;
  673. Splitter1\output -> AdHi0\H;
  674. Splitter1\output -> Hout;
  675. Ta0j\p => EJS\p1;
  676. end;
  677. parameterrelations
  678. InertialTensor\I = I;
  679. InterialTensor\m = m;
  680. EJS\I = I;
  681. EJS\m = m;
  682. AdHik\COMdim = COMdim;
  683. AdHik1\COMdim = COMdim;
  684. Hij\dim = dim;
  685. Gravity\m=m;parameterrelations_end;
  686. figures
  687. text 'b = current link (body)
  688. a = previous link (body)
  689. i = Body fixed frame, fixed in joint with previous link
  690. j = Body fixed frame, fixed in joint with next link
  691. k = Body fixed frame, principal inertial frame
  692. 0 = inertial system
  693. ' 288 280 color 0;
  694. implementation_end;
  695. C1 640 264
  696. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  697. <LibraryPath>Bond Graph\3D\C-3.emx</LibraryPath>
  698. <TimeStamp>2007-9-25 12:12:8</TimeStamp>
  699. </Description>';
  700. type 'C-3'
  701. ports
  702. power in p [3,1];
  703. signal out state [3,1];
  704. restrictions
  705. causality preferred out p;
  706. end;
  707. icon bg bottom
  708. figures
  709. text 'C' 640 264 color 0 18 bold;
  710. end;
  711. implementation eq
  712. parameters
  713. real c[3,3] = [0.1, 0.0, 0.0; 0.0, 0.1, 0.0; 0.0, 0.0, 0.1] {N/m};
  714. equations
  715. state = int(p.f);
  716. p.e = inverse(c) *state;
  717. implementation_end;
  718. C2 304 272
  719. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  720. <LibraryPath>Bond Graph\3D\C-3.emx</LibraryPath>
  721. <TimeStamp>2007-9-25 12:12:8</TimeStamp>
  722. </Description>';
  723. type 'C-3'
  724. ports
  725. power in p [3,1];
  726. signal out state [3,1];
  727. restrictions
  728. causality preferred out p;
  729. end;
  730. icon bg bottom
  731. figures
  732. text 'C' 304 272 color 0 18 bold;
  733. end;
  734. implementation eq
  735. parameters
  736. real c[3,3] = [0.1, 0.0, 0.0; 0.0, 0.1, 0.0; 0.0, 0.0, 0.1] {N/m};
  737. equations
  738. state = int(p.f);
  739. p.e = inverse(c) *state;
  740. implementation_end;
  741. C3 304 224
  742. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  743. <LibraryPath>Bond Graph\2D\C-2.emx</LibraryPath>
  744. <TimeStamp>2007-9-25 12:7:27</TimeStamp>
  745. </Description>';
  746. type 'C-2'
  747. ports
  748. power in p [2,1];
  749. signal out state [2,1];
  750. restrictions
  751. causality preferred out p;
  752. end;
  753. icon bg bottom
  754. figures
  755. text 'C' 304 224 color 0 18 bold;
  756. end;
  757. implementation eq
  758. parameters
  759. real c[2,2] = [0.1, 0.0; 0.0, 0.1] {mN.m/rad};
  760. equations
  761. state = int(p.f);
  762. p.e = inverse(c) *state;
  763. implementation_end;
  764. C4 640 216
  765. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  766. <LibraryPath>Bond Graph\2D\C-2.emx</LibraryPath>
  767. <TimeStamp>2007-9-25 12:7:27</TimeStamp>
  768. </Description>';
  769. type 'C-2'
  770. ports
  771. power in p [2,1];
  772. signal out state [2,1];
  773. restrictions
  774. causality preferred out p;
  775. end;
  776. icon bg bottom
  777. figures
  778. text 'C' 640 216 color 0 18 bold;
  779. end;
  780. implementation eq
  781. parameters
  782. real c[2,2] = [0.1, 0.0; 0.0, 0.1] {mN.m/rad};
  783. equations
  784. state = int(p.f);
  785. p.e = inverse(c) *state;
  786. implementation_end;
  787. Integrate 176 288
  788. description '<Information>
  789. <Description>
  790. <Version>4.3</Version>
  791. <IsMainModel>1</IsMainModel>
  792. <KeepParameterValues>False</KeepParameterValues>
  793. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  794. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  795. </Description>
  796. </Information>';
  797. type Integrate
  798. ports
  799. signal in input;
  800. signal out output;
  801. end;
  802. icon bg bottom
  803. figures
  804. rectangle 160 272 192 304 color 0 fill 15132390;
  805. text '∫' 176 288.3 color 16711680 'Lucida Sans' 21 italic;
  806. end;
  807. implementation eq
  808. parameters
  809. real initial = 0; // initial value
  810. equations
  811. output = int (input, initial);
  812. implementation_end;
  813. Integrate1 520 352
  814. description '<Information>
  815. <Description>
  816. <Version>4.3</Version>
  817. <IsMainModel>1</IsMainModel>
  818. <KeepParameterValues>False</KeepParameterValues>
  819. <LibraryPath>Signal\Block Diagram\Integrate.emx</LibraryPath>
  820. <TimeStamp>2013-3-8 14:47:42</TimeStamp>
  821. </Description>
  822. </Information>';
  823. type Integrate
  824. ports
  825. signal in input;
  826. signal out output;
  827. end;
  828. icon bg bottom
  829. figures
  830. rectangle 504 336 536 368 color 0 fill 15132390;
  831. text '∫' 520 352.3 color 16711680 'Lucida Sans' 21 italic;
  832. end;
  833. implementation eq
  834. parameters
  835. real initial = 0; // initial value
  836. equations
  837. output = int (input, initial);
  838. implementation_end;
  839. inverse_kinematics1 272 520
  840. description '<Information>
  841. <Description>
  842. <Version>4.8</Version>
  843. <LibraryPath>SCARA\inverse_kinematics_v1.emx</LibraryPath>
  844. <IsMainModel>1</IsMainModel>
  845. <KeepParameterValues>False</KeepParameterValues>
  846. <TimeStamp>2020-7-10 12:26:18</TimeStamp>
  847. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  848. </Description>
  849. </Information>';
  850. type 'Submodel-Equation'
  851. ports
  852. signal in input [2,1] {m} ;
  853. signal out angle1 {rad} ;
  854. signal out angle2 {rad} ;
  855. signal out a {rad} ;
  856. signal out b {rad} ;
  857. signal out c {rad} ;
  858. signal out phi {rad} ;
  859. signal out abs_angle2;
  860. end;
  861. implementation eq
  862. parameters
  863. real A_length = 0.065 {m}; // length of first arm
  864. real B_length = 0.05 {m}; // length of second arm
  865. real to_rad = 1 {rad};
  866. variables
  867. real x {m}, y {m};
  868. real C_length {m}; // length to x and y.
  869. real angle_sum {rad}; // test angle
  870. equations
  871. x = input[1];
  872. y = input[2];
  873. phi = atan2(y, x);
  874. C_length = sqrt(x^2 + y^2);
  875. a = arccos ((B_length^2 + C_length^2 - A_length^2) / (2 * B_length * C_length));
  876. b = arccos ((A_length^2 + C_length^2 - B_length^2) / (2 * A_length * C_length));
  877. c = arccos ((A_length^2 + B_length^2 - C_length^2) / (2 * A_length * B_length));
  878. angle1 = b + phi;
  879. abs_angle2 = angle1 - pi * to_rad + c;
  880. angle2 = c - pi * to_rad;
  881. implementation_end;
  882. Joint1 200 120
  883. description '<Information>
  884. <Description>
  885. <Version>4.8</Version>
  886. <IsMainModel>1</IsMainModel>
  887. <LibraryPath>Bond Graph\MR\joint-v3.emx</LibraryPath>
  888. <TimeStamp>2020-7-20 14:25:50</TimeStamp>
  889. </Description>
  890. </Information>';
  891. type 'Submodel-v3'
  892. ports
  893. power in Pin [6,1];
  894. signal in Hin [4,4];
  895. power in Pdiff [6,1];
  896. signal out Hout [4,4];
  897. power out Pout [6,1];
  898. end;
  899. icon bg bottom
  900. figures
  901. rectangle 176 88 224 152 color 0 fill 14745599;
  902. text 'Joint' 200 120 color 0 'Clear Sans' 16;
  903. terminals
  904. Pin 224 104 fixed;
  905. Hin 176 136 fixed;
  906. Hout 224 136 fixed;
  907. Pout 176 104 fixed;
  908. end;
  909. implementation bg
  910. submodels
  911. AdHji 424 424
  912. description '<Description>
  913. <Version>4.0</Version>
  914. <IsMainModel>1</IsMainModel>
  915. <KeepParameterValues>False</KeepParameterValues>
  916. <LibraryPath>Bond Graph\MTF.emx</LibraryPath>
  917. <TimeStamp>2007-9-25 12:3:3</TimeStamp>
  918. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  919. </Description>';
  920. type MTF
  921. ports
  922. power out p1 [6,1];
  923. power in p2 [6,1];
  924. signal in H [4,4];
  925. restrictions
  926. causality constraint not_equal p1 p2;
  927. end;
  928. icon bg bottom
  929. figures
  930. text 'MTF' 424 424 color 0 18 bold;
  931. end;
  932. implementation eq
  933. equations
  934. p2.e = transpose(Adjoint(H)) * p1.e;
  935. p1.f = Adjoint(H) * p2.f;implementation_end;
  936. FlowSensor2 240 271.9
  937. description '<Information>
  938. <Description>
  939. <Version>4.2</Version>
  940. <IsMainModel>1</IsMainModel>
  941. <KeepParameterValues>False</KeepParameterValues>
  942. <LibraryPath>Bond Graph\FlowSensor.emx</LibraryPath>
  943. <TimeStamp>2011-11-29 15:50:53</TimeStamp>
  944. </Description>
  945. </Information>';
  946. knot FlowSensor
  947. ports
  948. power knot in p1 [6,1];
  949. power knot out p2 [6,1];
  950. signal knot out flow [6,1];
  951. restrictions
  952. causality constraint not_equal p1 p2;
  953. end;
  954. icon bg ellipse
  955. figures
  956. ellipse 233.1 264.8 246.9 279.1 color 0 fill 16777215;
  957. text 'f' 240 271.2 color 0;
  958. end;
  959. implementation eq
  960. equations
  961. p2.f = p1.f;
  962. p1.e = p2.e;
  963. flow = p1.f;
  964. implementation_end;
  965. Hmatrix 320 272
  966. 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>';
  967. type 'Submodel-Equation'
  968. ports
  969. signal in flow [6,1];
  970. signal out H [4,4];
  971. end;
  972. implementation eq
  973. parameters
  974. real init[4] = [1;0;0;0];
  975. variables
  976. real q[4]; //quaternions
  977. real W[3,4]; //Quaternion Rates Matrix
  978. real R[3,3]; //Rotation Matrix
  979. real p[3]; //Position Vector
  980. equations
  981. ddt(q,init) = transpose(W) * flow[1:3] ./ 2;
  982. p = int(flow[4:6]);
  983. W = [-q[2], q[1], -q[4], q[3];
  984. -q[3], q[4], q[1], -q[2];
  985. -q[4], -q[3], q[2], q[1]];
  986. 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]);
  987. 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]);
  988. 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];
  989. H = homogeneous(R,p);
  990. implementation_end;
  991. MatrixMul 320 576
  992. description '<Description>
  993. <Version>4.0</Version>
  994. <IsMainModel>1</IsMainModel>
  995. <KeepParameterValues>False</KeepParameterValues>
  996. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  997. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  998. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  999. </Description>';
  1000. type Gain
  1001. ports
  1002. signal in input1 [4,4];
  1003. signal out output [4,4];
  1004. signal in input2 [4,4];
  1005. end;
  1006. icon bg bottom
  1007. figures
  1008. rectangle 304.1 560 335.9 592 color 0 fill 15132390;
  1009. text 'X' 320 576 color 16711680 16 bold;
  1010. end;
  1011. implementation eq
  1012. equations
  1013. output = input2*input1; implementation_end;
  1014. plug Hin 121.4 576;
  1015. plug Pdiff 240 220;
  1016. plug Hout 491.2 576;
  1017. plug Pout 119.4 424;
  1018. plug Pin 485.6 424;
  1019. Splitter2 320 312
  1020. description '<Description><Version>4.0</Version>
  1021. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  1022. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  1023. <IsMainModel>1</IsMainModel>
  1024. <KeepParameterValues>False</KeepParameterValues>
  1025. </Description>';
  1026. knot Splitter
  1027. ports
  1028. signal knot duplicatable out output [4,4];
  1029. signal knot in input [4,4];
  1030. end;
  1031. icon bg ellipse
  1032. figures
  1033. ellipse 316.8 308.8 323.2 315.2 color -1 fill 0;
  1034. ellipse 315.7 307.7 324.3 316.3 color -1;
  1035. terminals
  1036. input 320 312 fixed;
  1037. end;
  1038. implementation eq
  1039. equations
  1040. collect (output) = input;
  1041. implementation_end;
  1042. Wbai 240 424
  1043. description '<Description>
  1044. <Version>4.0</Version>
  1045. <IsMainModel>1</IsMainModel>
  1046. <KeepParameterValues>False</KeepParameterValues>
  1047. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  1048. <TimeStamp>2007-9-27 9:51:43</TimeStamp>
  1049. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1050. </Description>';
  1051. knot ZeroJunction
  1052. ports
  1053. power knot duplicatable none p [6,1];
  1054. signal knot out effort [6,1];
  1055. restrictions
  1056. causality constraint one_in p;
  1057. end;
  1058. icon bg bottom
  1059. figures
  1060. text '0' 240 424 color 0 18 bold;
  1061. end;
  1062. implementation eq
  1063. equations
  1064. sum (direct (p.f)) = 0;
  1065. equal (collect (p.e));
  1066. effort = first (p.e);
  1067. implementation_end;
  1068. end;
  1069. connections
  1070. FlowSensor2\flow -> Hmatrix\flow;
  1071. FlowSensor2\p2 => Wbai\p;
  1072. Hin -> MatrixMul\input2;
  1073. Hmatrix\H -> Splitter2\input;
  1074. MatrixMul\output -> Hout;
  1075. Pdiff => FlowSensor2\p1;
  1076. Pin => AdHji\p2;
  1077. Splitter2\output -> AdHji\H 424 312;
  1078. Splitter2\output -> MatrixMul\input1;
  1079. Wbai\p <= AdHji\p1;
  1080. Wbai\p => Pout;
  1081. end;
  1082. parameterrelations
  1083. EndstopMin\Rendstop = Rendstop;
  1084. EndstopMin\Cendstop = Cendstop;
  1085. EndstopMin\InitialPos = InitialPos;
  1086. EndstopMin\EndstopPos = MinEndstopPos;
  1087. EndstopMax\Rendstop = Rendstop;
  1088. EndstopMax\Cendstop = Cendstop;
  1089. EndstopMax\InitialPos = InitialPos;
  1090. EndstopMax\EndstopPos = MaxEndstopPos;
  1091. Rjoint\Rjoint= Rjoint;
  1092. Integrate\init = InitialPos;
  1093. uTbai\Rconstraint = Rconstraint;
  1094. uTbai\Cconstraint = Cconstraint;
  1095. parameterrelations_end;
  1096. implementation_end;
  1097. Joint2 536 120
  1098. description '<Information>
  1099. <Description>
  1100. <Version>4.8</Version>
  1101. <IsMainModel>1</IsMainModel>
  1102. <LibraryPath>Bond Graph\MR\joint-v3.emx</LibraryPath>
  1103. <TimeStamp>2020-7-20 14:25:50</TimeStamp>
  1104. </Description>
  1105. </Information>';
  1106. type 'Submodel-v3'
  1107. ports
  1108. power in Pin [6,1];
  1109. signal in Hin [4,4];
  1110. power in Pdiff [6,1];
  1111. signal out Hout [4,4];
  1112. power out Pout [6,1];
  1113. end;
  1114. icon bg bottom
  1115. figures
  1116. rectangle 512 88 560 152 color 0 fill 14745599;
  1117. text 'Joint' 536 120 color 0 'Clear Sans' 16;
  1118. terminals
  1119. Pin 560 104 fixed;
  1120. Hin 512 136 fixed;
  1121. Hout 560 136 fixed;
  1122. Pout 512 104 fixed;
  1123. end;
  1124. implementation bg
  1125. submodels
  1126. AdHji 424 424
  1127. description '<Description>
  1128. <Version>4.0</Version>
  1129. <IsMainModel>1</IsMainModel>
  1130. <KeepParameterValues>False</KeepParameterValues>
  1131. <LibraryPath>Bond Graph\MTF.emx</LibraryPath>
  1132. <TimeStamp>2007-9-25 12:3:3</TimeStamp>
  1133. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1134. </Description>';
  1135. type MTF
  1136. ports
  1137. power out p1 [6,1];
  1138. power in p2 [6,1];
  1139. signal in H [4,4];
  1140. restrictions
  1141. causality constraint not_equal p1 p2;
  1142. end;
  1143. icon bg bottom
  1144. figures
  1145. text 'MTF' 424 424 color 0 18 bold;
  1146. end;
  1147. implementation eq
  1148. equations
  1149. p2.e = transpose(Adjoint(H)) * p1.e;
  1150. p1.f = Adjoint(H) * p2.f;implementation_end;
  1151. FlowSensor2 240 271.9
  1152. description '<Information>
  1153. <Description>
  1154. <Version>4.2</Version>
  1155. <IsMainModel>1</IsMainModel>
  1156. <KeepParameterValues>False</KeepParameterValues>
  1157. <LibraryPath>Bond Graph\FlowSensor.emx</LibraryPath>
  1158. <TimeStamp>2011-11-29 15:50:53</TimeStamp>
  1159. </Description>
  1160. </Information>';
  1161. knot FlowSensor
  1162. ports
  1163. power knot in p1 [6,1];
  1164. power knot out p2 [6,1];
  1165. signal knot out flow [6,1];
  1166. restrictions
  1167. causality constraint not_equal p1 p2;
  1168. end;
  1169. icon bg ellipse
  1170. figures
  1171. ellipse 233.1 264.8 246.9 279.1 color 0 fill 16777215;
  1172. text 'f' 240 271.2 color 0;
  1173. end;
  1174. implementation eq
  1175. equations
  1176. p2.f = p1.f;
  1177. p1.e = p2.e;
  1178. flow = p1.f;
  1179. implementation_end;
  1180. Hmatrix 320 272
  1181. 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>';
  1182. type 'Submodel-Equation'
  1183. ports
  1184. signal in flow [6,1];
  1185. signal out H [4,4];
  1186. end;
  1187. implementation eq
  1188. parameters
  1189. real init[4] = [1;0;0;0];
  1190. variables
  1191. real q[4]; //quaternions
  1192. real W[3,4]; //Quaternion Rates Matrix
  1193. real R[3,3]; //Rotation Matrix
  1194. real p[3]; //Position Vector
  1195. equations
  1196. ddt(q,init) = transpose(W) * flow[1:3] ./ 2;
  1197. p = int(flow[4:6]);
  1198. W = [-q[2], q[1], -q[4], q[3];
  1199. -q[3], q[4], q[1], -q[2];
  1200. -q[4], -q[3], q[2], q[1]];
  1201. 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]);
  1202. 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]);
  1203. 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];
  1204. H = homogeneous(R,p);
  1205. implementation_end;
  1206. MatrixMul 320 576
  1207. description '<Description>
  1208. <Version>4.0</Version>
  1209. <IsMainModel>1</IsMainModel>
  1210. <KeepParameterValues>False</KeepParameterValues>
  1211. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  1212. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  1213. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1214. </Description>';
  1215. type Gain
  1216. ports
  1217. signal in input1 [4,4];
  1218. signal out output [4,4];
  1219. signal in input2 [4,4];
  1220. end;
  1221. icon bg bottom
  1222. figures
  1223. rectangle 304.1 560 335.9 592 color 0 fill 15132390;
  1224. text 'X' 320 576 color 16711680 16 bold;
  1225. end;
  1226. implementation eq
  1227. equations
  1228. output = input2*input1; implementation_end;
  1229. plug Hin 121.4 576;
  1230. plug Pdiff 240 220;
  1231. plug Hout 491.2 576;
  1232. plug Pout 119.4 424;
  1233. plug Pin 485.6 424;
  1234. Splitter2 320 312
  1235. description '<Description><Version>4.0</Version>
  1236. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  1237. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  1238. <IsMainModel>1</IsMainModel>
  1239. <KeepParameterValues>False</KeepParameterValues>
  1240. </Description>';
  1241. knot Splitter
  1242. ports
  1243. signal knot duplicatable out output [4,4];
  1244. signal knot in input [4,4];
  1245. end;
  1246. icon bg ellipse
  1247. figures
  1248. ellipse 316.8 308.8 323.2 315.2 color -1 fill 0;
  1249. ellipse 315.7 307.7 324.3 316.3 color -1;
  1250. terminals
  1251. input 320 312 fixed;
  1252. end;
  1253. implementation eq
  1254. equations
  1255. collect (output) = input;
  1256. implementation_end;
  1257. Wbai 240 424
  1258. description '<Description>
  1259. <Version>4.0</Version>
  1260. <IsMainModel>1</IsMainModel>
  1261. <KeepParameterValues>False</KeepParameterValues>
  1262. <LibraryPath>Bond Graph\ZeroJunction.emx</LibraryPath>
  1263. <TimeStamp>2007-9-27 9:51:43</TimeStamp>
  1264. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1265. </Description>';
  1266. knot ZeroJunction
  1267. ports
  1268. power knot duplicatable none p [6,1];
  1269. signal knot out effort [6,1];
  1270. restrictions
  1271. causality constraint one_in p;
  1272. end;
  1273. icon bg bottom
  1274. figures
  1275. text '0' 240 424 color 0 18 bold;
  1276. end;
  1277. implementation eq
  1278. equations
  1279. sum (direct (p.f)) = 0;
  1280. equal (collect (p.e));
  1281. effort = first (p.e);
  1282. implementation_end;
  1283. end;
  1284. connections
  1285. FlowSensor2\flow -> Hmatrix\flow;
  1286. FlowSensor2\p2 => Wbai\p;
  1287. Hin -> MatrixMul\input2;
  1288. Hmatrix\H -> Splitter2\input;
  1289. MatrixMul\output -> Hout;
  1290. Pdiff => FlowSensor2\p1;
  1291. Pin => AdHji\p2;
  1292. Splitter2\output -> AdHji\H 424 312;
  1293. Splitter2\output -> MatrixMul\input1;
  1294. Wbai\p <= AdHji\p1;
  1295. Wbai\p => Pout;
  1296. end;
  1297. parameterrelations
  1298. EndstopMin\Rendstop = Rendstop;
  1299. EndstopMin\Cendstop = Cendstop;
  1300. EndstopMin\InitialPos = InitialPos;
  1301. EndstopMin\EndstopPos = MinEndstopPos;
  1302. EndstopMax\Rendstop = Rendstop;
  1303. EndstopMax\Cendstop = Cendstop;
  1304. EndstopMax\InitialPos = InitialPos;
  1305. EndstopMax\EndstopPos = MaxEndstopPos;
  1306. Rjoint\Rjoint= Rjoint;
  1307. Integrate\init = InitialPos;
  1308. uTbai\Rconstraint = Rconstraint;
  1309. uTbai\Cconstraint = Cconstraint;
  1310. parameterrelations_end;
  1311. implementation_end;
  1312. Link 280 120
  1313. description '<Information>
  1314. <Description>
  1315. <Version>4.8</Version>
  1316. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1317. <IsMainModel>1</IsMainModel>
  1318. <KeepParameterValues>False</KeepParameterValues>
  1319. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1320. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1321. </Description>
  1322. </Information>';
  1323. type 'Submodel-Equation'
  1324. ports
  1325. signal in Hin [4,4];
  1326. signal out Hout [4,4];
  1327. power in Pin [6,1];
  1328. power out Pout [6,1];
  1329. restrictions
  1330. causality constraint not_equal Pin Pout;
  1331. end;
  1332. icon bg bottom
  1333. figures
  1334. rectangle 248 96 312 144 color 0 fill 8454041;
  1335. text 'Link' 280 120 color 0 'Clear Sans' 16;
  1336. terminals
  1337. Hin 248 136 fixed;
  1338. Hout 312 136 fixed;
  1339. Pin 312 104 fixed;
  1340. Pout 248 104 fixed;
  1341. end;
  1342. implementation eq
  1343. parameters
  1344. real offset[3]= [0;0.0325;0]; //coordinates of joint_1
  1345. variables
  1346. real Hab[4,4];
  1347. real AdHab[6,6];
  1348. equations
  1349. Hab = homogeneous(eye(3),offset);
  1350. AdHab = Adjoint(eye(3),offset);
  1351. Hout = Hin * Hab;
  1352. Pout.e = transpose(AdHab) * Pin.e;
  1353. Pin.f = AdHab * Pout.f;
  1354. implementation_end;
  1355. Link1 456 120
  1356. description '<Information>
  1357. <Description>
  1358. <Version>4.8</Version>
  1359. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1360. <IsMainModel>1</IsMainModel>
  1361. <KeepParameterValues>False</KeepParameterValues>
  1362. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1363. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1364. </Description>
  1365. </Information>';
  1366. type 'Submodel-Equation'
  1367. ports
  1368. signal in Hin [4,4];
  1369. signal out Hout [4,4];
  1370. power in Pin [6,1];
  1371. power out Pout [6,1];
  1372. restrictions
  1373. causality constraint not_equal Pin Pout;
  1374. end;
  1375. icon bg bottom
  1376. figures
  1377. rectangle 424 96 488 144 color 0 fill 8454041;
  1378. text 'Link' 456 120 color 0 'Clear Sans' 16;
  1379. terminals
  1380. Hin 424 136 fixed;
  1381. Hout 488 136 fixed;
  1382. Pin 488 104 fixed;
  1383. Pout 424 104 fixed;
  1384. end;
  1385. implementation eq
  1386. parameters
  1387. real offset[3]= [0;0.0325;0]; //coordinates of joint_1
  1388. variables
  1389. real Hab[4,4];
  1390. real AdHab[6,6];
  1391. equations
  1392. Hab = homogeneous(eye(3),offset);
  1393. AdHab = Adjoint(eye(3),offset);
  1394. Hout = Hin * Hab;
  1395. Pout.e = transpose(AdHab) * Pin.e;
  1396. Pin.f = AdHab * Pout.f;
  1397. implementation_end;
  1398. Link2 624 120
  1399. description '<Information>
  1400. <Description>
  1401. <Version>4.8</Version>
  1402. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1403. <IsMainModel>1</IsMainModel>
  1404. <KeepParameterValues>False</KeepParameterValues>
  1405. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1406. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1407. </Description>
  1408. </Information>';
  1409. type 'Submodel-Equation'
  1410. ports
  1411. signal in Hin [4,4];
  1412. signal out Hout [4,4];
  1413. power in Pin [6,1];
  1414. power out Pout [6,1];
  1415. restrictions
  1416. causality constraint not_equal Pin Pout;
  1417. end;
  1418. icon bg bottom
  1419. figures
  1420. rectangle 592 96 656 144 color 0 fill 8454041;
  1421. text 'Link' 624 120 color 0 'Clear Sans' 16;
  1422. terminals
  1423. Hin 592 136 fixed;
  1424. Hout 656 136 fixed;
  1425. Pin 656 104 fixed;
  1426. Pout 592 104 fixed;
  1427. end;
  1428. implementation eq
  1429. parameters
  1430. real offset[3]= [0;0.025;0]; //coordinates of joint_1
  1431. variables
  1432. real Hab[4,4];
  1433. real AdHab[6,6];
  1434. equations
  1435. Hab = homogeneous(eye(3),offset);
  1436. AdHab = Adjoint(eye(3),offset);
  1437. Hout = Hin * Hab;
  1438. Pout.e = transpose(AdHab) * Pin.e;
  1439. Pin.f = AdHab * Pout.f;
  1440. implementation_end;
  1441. Link3 800 120
  1442. description '<Information>
  1443. <Description>
  1444. <Version>4.8</Version>
  1445. <LibraryPath>Bond Graph\MR\link-v3.emx</LibraryPath>
  1446. <IsMainModel>1</IsMainModel>
  1447. <KeepParameterValues>False</KeepParameterValues>
  1448. <TimeStamp>2020-7-19 15:22:34</TimeStamp>
  1449. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1450. </Description>
  1451. </Information>';
  1452. type 'Submodel-Equation'
  1453. ports
  1454. signal in Hin [4,4];
  1455. signal out Hout [4,4];
  1456. power in Pin [6,1];
  1457. power out Pout [6,1];
  1458. restrictions
  1459. causality constraint not_equal Pin Pout;
  1460. end;
  1461. icon bg bottom
  1462. figures
  1463. rectangle 768 96 832 144 color 0 fill 8454041;
  1464. text 'Link' 800 120 color 0 'Clear Sans' 16;
  1465. terminals
  1466. Hin 768 136 fixed;
  1467. Hout 832 136 fixed;
  1468. Pin 832 104 fixed;
  1469. Pout 768 104 fixed;
  1470. end;
  1471. implementation eq
  1472. parameters
  1473. real offset[3]= [0;0.025;0]; //coordinates of joint_1
  1474. variables
  1475. real Hab[4,4];
  1476. real AdHab[6,6];
  1477. equations
  1478. Hab = homogeneous(eye(3),offset);
  1479. AdHab = Adjoint(eye(3),offset);
  1480. Hout = Hin * Hab;
  1481. Pout.e = transpose(AdHab) * Pin.e;
  1482. Pin.f = AdHab * Pout.f;
  1483. implementation_end;
  1484. Negate1 272 448
  1485. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1486. <LibraryPath>Signal\Block Diagram\Negate.emx</LibraryPath>
  1487. <TimeStamp>2007-9-26 12:14:11</TimeStamp>
  1488. </Description>';
  1489. type Negate
  1490. ports
  1491. signal in input;
  1492. signal out output;
  1493. end;
  1494. icon bg bottom
  1495. figures
  1496. rectangle 256 432 288 464 color 0 fill 15132390;
  1497. text '-1' 272 448 color 16711680 16 bold;
  1498. end;
  1499. implementation eq
  1500. equations
  1501. output = - input;
  1502. implementation_end;
  1503. Negate2 520 520
  1504. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1505. <LibraryPath>Signal\Block Diagram\Negate.emx</LibraryPath>
  1506. <TimeStamp>2007-9-26 12:14:11</TimeStamp>
  1507. </Description>';
  1508. type Negate
  1509. ports
  1510. signal in input;
  1511. signal out output;
  1512. end;
  1513. icon bg bottom
  1514. figures
  1515. rectangle 504 504 536 536 color 0 fill 15132390;
  1516. text '-1' 520 520 color 16711680 16 bold;
  1517. end;
  1518. implementation eq
  1519. equations
  1520. output = - input;
  1521. implementation_end;
  1522. new_joint1 376 256
  1523. description '<Description><Version>4.0</Version>
  1524. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1525. <IsMainModel>1</IsMainModel>
  1526. <KeepParameterValues>False</KeepParameterValues>
  1527. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1528. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1529. </Description>';
  1530. type 'Submodel-Equation'
  1531. ports
  1532. signal in input [4,4];
  1533. signal out output;
  1534. end;
  1535. implementation eq
  1536. variables
  1537. real position[3];
  1538. real rotation[3];
  1539. real R[3,3];
  1540. equations
  1541. position = input[1:3,4];
  1542. rotation = dll('EulerAngles.dll','EulXYZsFromHMatrix',input);
  1543. //[input[3,2];input[1,3];input[2,1]];
  1544. R = input[1:3,1:3];implementation_end;
  1545. new_joint2 824 288
  1546. description '<Description><Version>4.0</Version>
  1547. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1548. <IsMainModel>1</IsMainModel>
  1549. <KeepParameterValues>False</KeepParameterValues>
  1550. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1551. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1552. </Description>';
  1553. type 'Submodel-Equation'
  1554. ports
  1555. signal in input [4,4];
  1556. signal out output;
  1557. end;
  1558. implementation eq
  1559. variables
  1560. real position[3];
  1561. real rotation[3];
  1562. real R[3,3];
  1563. equations
  1564. // start typing here
  1565. position = input[1:3,4];
  1566. rotation = [input[3,2];input[1,3];input[2,1]];
  1567. R = input[1:3,1:3];implementation_end;
  1568. new_joint3 1008 152
  1569. description '<Description><Version>4.0</Version>
  1570. <LibraryPath>Template\Submodel-Equation.emx</LibraryPath>
  1571. <IsMainModel>1</IsMainModel>
  1572. <KeepParameterValues>False</KeepParameterValues>
  1573. <TimeStamp>2007-11-1 22:32:1</TimeStamp>
  1574. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  1575. </Description>';
  1576. type 'Submodel-Equation'
  1577. ports
  1578. signal in input [4,4];
  1579. signal out output;
  1580. end;
  1581. implementation eq
  1582. variables
  1583. real position[3];
  1584. real rotation[3];
  1585. real R[3,3];
  1586. equations
  1587. position = input[1:3,4];
  1588. rotation = [input[3,2];input[1,3];input[2,1]];
  1589. R = input[1:3,1:3];implementation_end;
  1590. OneJunction1 360 104
  1591. description '<Information>
  1592. <Description>
  1593. <Version>4.2</Version>
  1594. <IsMainModel>1</IsMainModel>
  1595. <KeepParameterValues>False</KeepParameterValues>
  1596. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1597. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1598. </Description>
  1599. </Information>';
  1600. knot OneJunction
  1601. ports
  1602. power knot duplicatable none p [6,1];
  1603. signal knot out flow [6,1];
  1604. restrictions
  1605. causality constraint one_out p;
  1606. end;
  1607. icon bg
  1608. figures
  1609. text '1' 360 104 color 0 18 bold;
  1610. end;
  1611. implementation eq
  1612. equations
  1613. sum (direct (p.e)) = 0;
  1614. equal (collect (p.f));
  1615. flow = first (p.f);
  1616. implementation_end;
  1617. OneJunction17 520 288
  1618. description '<Information>
  1619. <Description>
  1620. <Version>4.2</Version>
  1621. <IsMainModel>1</IsMainModel>
  1622. <KeepParameterValues>False</KeepParameterValues>
  1623. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1624. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1625. </Description>
  1626. </Information>';
  1627. knot OneJunction
  1628. ports
  1629. power knot duplicatable none p [1];
  1630. signal knot out flow [1];
  1631. restrictions
  1632. causality constraint one_out p;
  1633. end;
  1634. icon bg
  1635. figures
  1636. text '1' 520 288 color 0 18 bold;
  1637. end;
  1638. implementation eq
  1639. equations
  1640. sum (direct (p.e)) = 0;
  1641. equal (collect (p.f));
  1642. flow = first (p.f);
  1643. implementation_end;
  1644. OneJunction2 120 104
  1645. description '<Information>
  1646. <Description>
  1647. <Version>4.2</Version>
  1648. <IsMainModel>1</IsMainModel>
  1649. <KeepParameterValues>False</KeepParameterValues>
  1650. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1651. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1652. </Description>
  1653. </Information>';
  1654. knot OneJunction
  1655. ports
  1656. power knot duplicatable none p [6,1];
  1657. signal knot out flow [6,1];
  1658. restrictions
  1659. causality constraint one_out p;
  1660. end;
  1661. icon bg
  1662. figures
  1663. text '1' 120 104 color 0 18 bold;
  1664. end;
  1665. implementation eq
  1666. equations
  1667. sum (direct (p.e)) = 0;
  1668. equal (collect (p.f));
  1669. flow = first (p.f);
  1670. implementation_end;
  1671. OneJunction3 704 104
  1672. description '<Information>
  1673. <Description>
  1674. <Version>4.2</Version>
  1675. <IsMainModel>1</IsMainModel>
  1676. <KeepParameterValues>False</KeepParameterValues>
  1677. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1678. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1679. </Description>
  1680. </Information>';
  1681. knot OneJunction
  1682. ports
  1683. power knot duplicatable none p [6,1];
  1684. signal knot out flow [6,1];
  1685. restrictions
  1686. causality constraint one_out p;
  1687. end;
  1688. icon bg
  1689. figures
  1690. text '1' 704 104 color 0 18 bold;
  1691. end;
  1692. implementation eq
  1693. equations
  1694. sum (direct (p.e)) = 0;
  1695. equal (collect (p.f));
  1696. flow = first (p.f);
  1697. implementation_end;
  1698. OneJunction4 593 232
  1699. description '<Information>
  1700. <Description>
  1701. <Version>4.2</Version>
  1702. <IsMainModel>1</IsMainModel>
  1703. <KeepParameterValues>False</KeepParameterValues>
  1704. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1705. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1706. </Description>
  1707. </Information>';
  1708. knot OneJunction
  1709. ports
  1710. power knot duplicatable none p [2,1];
  1711. signal knot out flow [2,1];
  1712. restrictions
  1713. causality constraint one_out p;
  1714. end;
  1715. icon bg
  1716. figures
  1717. text '1' 593 232 color 0 18 bold;
  1718. end;
  1719. implementation eq
  1720. equations
  1721. sum (direct (p.e)) = 0;
  1722. equal (collect (p.f));
  1723. flow = first (p.f);
  1724. implementation_end;
  1725. OneJunction5 257 240
  1726. description '<Information>
  1727. <Description>
  1728. <Version>4.2</Version>
  1729. <IsMainModel>1</IsMainModel>
  1730. <KeepParameterValues>False</KeepParameterValues>
  1731. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1732. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1733. </Description>
  1734. </Information>';
  1735. knot OneJunction
  1736. ports
  1737. power knot duplicatable none p [2,1];
  1738. signal knot out flow [2,1];
  1739. restrictions
  1740. causality constraint one_out p;
  1741. end;
  1742. icon bg
  1743. figures
  1744. text '1' 257 240 color 0 18 bold;
  1745. end;
  1746. implementation eq
  1747. equations
  1748. sum (direct (p.e)) = 0;
  1749. equal (collect (p.f));
  1750. flow = first (p.f);
  1751. implementation_end;
  1752. OneJunction6 257 256
  1753. description '<Information>
  1754. <Description>
  1755. <Version>4.2</Version>
  1756. <IsMainModel>1</IsMainModel>
  1757. <KeepParameterValues>False</KeepParameterValues>
  1758. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1759. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1760. </Description>
  1761. </Information>';
  1762. knot OneJunction
  1763. ports
  1764. power knot duplicatable none p [3,1];
  1765. signal knot out flow [3,1];
  1766. restrictions
  1767. causality constraint one_out p;
  1768. end;
  1769. icon bg
  1770. figures
  1771. text '1' 257 256 color 0 18 bold;
  1772. end;
  1773. implementation eq
  1774. equations
  1775. sum (direct (p.e)) = 0;
  1776. equal (collect (p.f));
  1777. flow = first (p.f);
  1778. implementation_end;
  1779. OneJunction7 593 248
  1780. description '<Information>
  1781. <Description>
  1782. <Version>4.2</Version>
  1783. <IsMainModel>1</IsMainModel>
  1784. <KeepParameterValues>False</KeepParameterValues>
  1785. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  1786. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  1787. </Description>
  1788. </Information>';
  1789. knot OneJunction
  1790. ports
  1791. power knot duplicatable none p [3,1];
  1792. signal knot out flow [3,1];
  1793. restrictions
  1794. causality constraint one_out p;
  1795. end;
  1796. icon bg
  1797. figures
  1798. text '1' 593 248 color 0 18 bold;
  1799. end;
  1800. implementation eq
  1801. equations
  1802. sum (direct (p.e)) = 0;
  1803. equal (collect (p.f));
  1804. flow = first (p.f);
  1805. implementation_end;
  1806. PID2 200 384
  1807. description '<Description>
  1808. <Version>4.0</Version>
  1809. <IsMainModel>1</IsMainModel>
  1810. <KeepParameterValues>False</KeepParameterValues>
  1811. <LibraryPath>Signal\Control\PID Control\Continuous\PID.emx</LibraryPath>
  1812. <TimeStamp>2008-1-17 10:49:30</TimeStamp>
  1813. </Description>';
  1814. type PID
  1815. ports
  1816. signal in error;
  1817. signal out output;
  1818. end;
  1819. icon bg bottom
  1820. figures
  1821. rectangle 184 368 216 400 color 0 fill 15132390;
  1822. text 'PID' 200 383.5 color 16711680 18 bold;
  1823. end;
  1824. implementation eq
  1825. parameters
  1826. real kp = 0.05 {}; // Proportional gain
  1827. real tauD = 1.0 {s}; // Derivative time constant: tauD > 0
  1828. real beta = 0.001 {}; // Tameness constant: 0 < beta << 1
  1829. real tauI = 0.05{s}; // Integral time constant: tauI > 0
  1830. variables
  1831. real pdout, pdrate, pdstate;
  1832. real pirate, pistate;
  1833. equations
  1834. pdrate = (kp * error - pdout) / (beta * tauD);
  1835. pdstate = int (pdrate);
  1836. pdout = pdstate + (kp * error / beta);
  1837. pirate = pdout / tauI;
  1838. pistate = int (pirate);
  1839. output = pistate + pdout;
  1840. implementation_end;
  1841. PID3 576 432
  1842. description '<Description>
  1843. <Version>4.0</Version>
  1844. <IsMainModel>1</IsMainModel>
  1845. <KeepParameterValues>False</KeepParameterValues>
  1846. <LibraryPath>Signal\Control\PID Control\Continuous\PID.emx</LibraryPath>
  1847. <TimeStamp>2008-1-17 10:49:30</TimeStamp>
  1848. </Description>';
  1849. type PID
  1850. ports
  1851. signal in error;
  1852. signal out output;
  1853. end;
  1854. icon bg bottom
  1855. figures
  1856. rectangle 560 416 592 448 color 0 fill 15132390;
  1857. text 'PID' 576 431.5 color 16711680 18 bold;
  1858. end;
  1859. implementation eq
  1860. parameters
  1861. real kp = 0.02 {}; // Proportional gain
  1862. real tauD = 2 {s}; // Derivative time constant: tauD > 0
  1863. real beta = 0.001 {}; // Tameness constant: 0 < beta << 1
  1864. real tauI = 0.05 {s}; // Integral time constant: tauI > 0
  1865. variables
  1866. real pdout, pdrate, pdstate;
  1867. real pirate, pistate;
  1868. equations
  1869. pdrate = (kp * error - pdout) / (beta * tauD);
  1870. pdstate = int (pdrate);
  1871. pdout = pdstate + (kp * error / beta);
  1872. pirate = pdout / tauI;
  1873. pistate = int (pirate);
  1874. output = pistate + pdout;implementation_end;
  1875. PlusMinus4 272 384
  1876. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1877. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  1878. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  1879. </Description>';
  1880. knot PlusMinus
  1881. ports
  1882. signal knot duplicatable in plus [1];
  1883. signal knot duplicatable in minus [1];
  1884. signal knot out output [1];
  1885. end;
  1886. icon bg ellipse
  1887. figures
  1888. ellipse 264 376 280 392 color 0 fill 16777215;
  1889. end;
  1890. implementation eq
  1891. equations
  1892. output = sum (collect (plus)) - sum (collect (minus));
  1893. implementation_end;
  1894. PlusMinus5 520 432
  1895. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  1896. <LibraryPath>Signal\Block Diagram\PlusMinus.emx</LibraryPath>
  1897. <TimeStamp>2007-9-27 10:15:13</TimeStamp>
  1898. </Description>';
  1899. knot PlusMinus
  1900. ports
  1901. signal knot duplicatable in plus [1];
  1902. signal knot duplicatable in minus [1];
  1903. signal knot out output [1];
  1904. end;
  1905. icon bg ellipse
  1906. figures
  1907. ellipse 512 424 528 440 color 0 fill 16777215;
  1908. end;
  1909. implementation eq
  1910. equations
  1911. output = sum (collect (plus)) - sum (collect (minus));
  1912. implementation_end;
  1913. PowerMux 200 214
  1914. specifications active 'rot_x'
  1915. specification 'rot_x'
  1916. description '<Information>
  1917. <Description>
  1918. <Version>4.8</Version>
  1919. <LibraryPath>Bond Graph\MR\PowerMux-Rotation.emx</LibraryPath>
  1920. <TimeStamp>2020-7-20 14:35:23</TimeStamp>
  1921. <IsMainModel>1</IsMainModel>
  1922. <KeepParameterValues>False</KeepParameterValues>
  1923. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1924. </Description>
  1925. </Information>';
  1926. type 'PowerMux-Rotation'
  1927. ports
  1928. power in input;
  1929. power out output [6,1];
  1930. power in input_rot2 [2,1];
  1931. power in input_pos3 [3,1];
  1932. restrictions
  1933. causality constraint not_equal input output;
  1934. causality constraint not_equal input_rot2 output;
  1935. causality constraint not_equal input_pos3 output;
  1936. end;
  1937. icon bg bottom
  1938. figures
  1939. line 176 216 224 216 color 0 width 2;
  1940. rectangle 176 208 224 220 color -1;
  1941. text '1' 194 211 color 8421504 8;
  1942. terminals
  1943. input 184 216 fixed;
  1944. output 200 216 fixed;
  1945. input_rot2 216 216 fixed;
  1946. input_pos3 200 216 fixed;
  1947. end;
  1948. implementation eq
  1949. equations
  1950. output.e[1] = input.e;
  1951. output.e[2:3] = input_rot2.e;
  1952. output.e[4:6] = input_pos3.e;
  1953. output.f[1] = input.f;
  1954. output.f[2:3] = input_rot2.f;
  1955. output.f[4:6] = input_pos3.f;implementation_end;
  1956. specification_end;
  1957. specification 'rot_y'
  1958. description '<Description>
  1959. <Version>4.1</Version>
  1960. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  1961. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  1962. <IsMainModel>1</IsMainModel>
  1963. <KeepParameterValues>False</KeepParameterValues>
  1964. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  1965. </Description>';
  1966. type PowerMux
  1967. ports
  1968. power in input;
  1969. power out output [6,1];
  1970. power in input_rot2 [2,1];
  1971. power in input_pos3 [3,1];
  1972. restrictions
  1973. causality constraint not_equal input output;
  1974. end;
  1975. icon bg bottom
  1976. figures
  1977. line 808 216 808 264 color 0 width 2;
  1978. rectangle 804 216 816 264 color -1;
  1979. text '1' 813 234 color 8421504 8;
  1980. terminals
  1981. input 808 224 fixed;
  1982. output 808 240 fixed;
  1983. input_rot2 808 256 fixed;
  1984. input_pos3 808 240 fixed;
  1985. end;
  1986. implementation eq
  1987. equations
  1988. output.e[1] = input_rot2.e[1];
  1989. output.e[2] = input.e;
  1990. output.e[3] = input_rot2.e[2];
  1991. output.e[4:6] = input_pos3.e;
  1992. output.f[1] = input_rot2.f[1];
  1993. output.f[2] = input.f;
  1994. output.f[3] = input_rot2.f[2];
  1995. output.f[4:6] = input_pos3.f;implementation_end;
  1996. specification_end;
  1997. specification 'rot_z'
  1998. description '<Description>
  1999. <Version>4.1</Version>
  2000. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2001. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2002. <IsMainModel>1</IsMainModel>
  2003. <KeepParameterValues>False</KeepParameterValues>
  2004. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2005. </Description>';
  2006. type PowerMux
  2007. ports
  2008. power in input;
  2009. power out output [6,1];
  2010. power in input_rot2 [2,1];
  2011. power in input_pos3 [3,1];
  2012. restrictions
  2013. causality constraint not_equal input output;
  2014. end;
  2015. icon bg bottom
  2016. figures
  2017. line 808 216 808 264 color 0 width 2;
  2018. rectangle 804 216 816 264 color -1;
  2019. text '1' 813 234 color 8421504 8;
  2020. terminals
  2021. input 808 224 fixed;
  2022. output 808 240 fixed;
  2023. input_rot2 808 256 fixed;
  2024. input_pos3 808 240 fixed;
  2025. end;
  2026. implementation eq
  2027. equations
  2028. output.e[3] = input.e;
  2029. output.e[1:2] = input_rot2.e;
  2030. output.e[4:6] = input_pos3.e;
  2031. output.f[3] = input.f;
  2032. output.f[1:2] = input_rot2.f;
  2033. output.f[4:6] = input_pos3.f;implementation_end;
  2034. specification_end;
  2035. end;
  2036. PowerMux1 536 206
  2037. specifications active 'rot_x'
  2038. specification 'rot_x'
  2039. description '<Information>
  2040. <Description>
  2041. <Version>4.8</Version>
  2042. <LibraryPath>Bond Graph\MR\PowerMux-Rotation.emx</LibraryPath>
  2043. <TimeStamp>2020-7-20 14:35:23</TimeStamp>
  2044. <IsMainModel>1</IsMainModel>
  2045. <KeepParameterValues>False</KeepParameterValues>
  2046. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2047. </Description>
  2048. </Information>';
  2049. type 'PowerMux-Rotation'
  2050. ports
  2051. power in input;
  2052. power out output [6,1];
  2053. power in input_rot2 [2,1];
  2054. power in input_pos3 [3,1];
  2055. restrictions
  2056. causality constraint not_equal input output;
  2057. causality constraint not_equal input_rot2 output;
  2058. causality constraint not_equal input_pos3 output;
  2059. end;
  2060. icon bg bottom
  2061. figures
  2062. line 512 208 560 208 color 0 width 2;
  2063. rectangle 512 200 560 212 color -1;
  2064. text '1' 530 203 color 8421504 8;
  2065. terminals
  2066. input 520 208 fixed;
  2067. output 536 208 fixed;
  2068. input_rot2 552 208 fixed;
  2069. input_pos3 536 208 fixed;
  2070. end;
  2071. implementation eq
  2072. equations
  2073. output.e[1] = input.e;
  2074. output.e[2:3] = input_rot2.e;
  2075. output.e[4:6] = input_pos3.e;
  2076. output.f[1] = input.f;
  2077. output.f[2:3] = input_rot2.f;
  2078. output.f[4:6] = input_pos3.f;implementation_end;
  2079. specification_end;
  2080. specification 'rot_y'
  2081. description '<Description>
  2082. <Version>4.1</Version>
  2083. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2084. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2085. <IsMainModel>1</IsMainModel>
  2086. <KeepParameterValues>False</KeepParameterValues>
  2087. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2088. </Description>';
  2089. type PowerMux
  2090. ports
  2091. power in input;
  2092. power out output [6,1];
  2093. power in input_rot2 [2,1];
  2094. power in input_pos3 [3,1];
  2095. restrictions
  2096. causality constraint not_equal input output;
  2097. end;
  2098. icon bg bottom
  2099. figures
  2100. line 808 216 808 264 color 0 width 2;
  2101. rectangle 804 216 816 264 color -1;
  2102. text '1' 813 234 color 8421504 8;
  2103. terminals
  2104. input 808 224 fixed;
  2105. output 808 240 fixed;
  2106. input_rot2 808 256 fixed;
  2107. input_pos3 808 240 fixed;
  2108. end;
  2109. implementation eq
  2110. equations
  2111. output.e[1] = input_rot2.e[1];
  2112. output.e[2] = input.e;
  2113. output.e[3] = input_rot2.e[2];
  2114. output.e[4:6] = input_pos3.e;
  2115. output.f[1] = input_rot2.f[1];
  2116. output.f[2] = input.f;
  2117. output.f[3] = input_rot2.f[2];
  2118. output.f[4:6] = input_pos3.f;implementation_end;
  2119. specification_end;
  2120. specification 'rot_z'
  2121. description '<Description>
  2122. <Version>4.1</Version>
  2123. <LibraryPath>Bond Graph\PowerMux.emx</LibraryPath>
  2124. <TimeStamp>2011-3-4 15:12:50</TimeStamp>
  2125. <IsMainModel>1</IsMainModel>
  2126. <KeepParameterValues>False</KeepParameterValues>
  2127. <AllowLibraryUpdate>True</AllowLibraryUpdate>
  2128. </Description>';
  2129. type PowerMux
  2130. ports
  2131. power in input;
  2132. power out output [6,1];
  2133. power in input_rot2 [2,1];
  2134. power in input_pos3 [3,1];
  2135. restrictions
  2136. causality constraint not_equal input output;
  2137. end;
  2138. icon bg bottom
  2139. figures
  2140. line 808 216 808 264 color 0 width 2;
  2141. rectangle 804 216 816 264 color -1;
  2142. text '1' 813 234 color 8421504 8;
  2143. terminals
  2144. input 808 224 fixed;
  2145. output 808 240 fixed;
  2146. input_rot2 808 256 fixed;
  2147. input_pos3 808 240 fixed;
  2148. end;
  2149. implementation eq
  2150. equations
  2151. output.e[3] = input.e;
  2152. output.e[1:2] = input_rot2.e;
  2153. output.e[4:6] = input_pos3.e;
  2154. output.f[3] = input.f;
  2155. output.f[1:2] = input_rot2.f;
  2156. output.f[4:6] = input_pos3.f;implementation_end;
  2157. specification_end;
  2158. end;
  2159. R 64 288
  2160. description '<Information>
  2161. <Description>
  2162. <Version>4.2</Version>
  2163. <IsMainModel>1</IsMainModel>
  2164. <KeepParameterValues>False</KeepParameterValues>
  2165. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2166. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2167. </Description>
  2168. </Information>';
  2169. type R
  2170. ports
  2171. power in p;
  2172. end;
  2173. icon bg bottom
  2174. figures
  2175. text 'R' 64 288 color 0 18 bold;
  2176. end;
  2177. implementation eq
  2178. parameters
  2179. real r = 0.01;
  2180. equations
  2181. p.e = r * p.f;
  2182. implementation_end;
  2183. R1 464 288
  2184. description '<Information>
  2185. <Description>
  2186. <Version>4.2</Version>
  2187. <IsMainModel>1</IsMainModel>
  2188. <KeepParameterValues>False</KeepParameterValues>
  2189. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2190. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2191. </Description>
  2192. </Information>';
  2193. type R
  2194. ports
  2195. power in p;
  2196. end;
  2197. icon bg bottom
  2198. figures
  2199. text 'R' 464 288 color 0 18 bold;
  2200. end;
  2201. implementation eq
  2202. parameters
  2203. real r = 0.01;
  2204. equations
  2205. p.e = r * p.f;
  2206. implementation_end;
  2207. R2 257 184
  2208. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2209. <LibraryPath>Bond Graph\2D\R-2.emx</LibraryPath>
  2210. <TimeStamp>2007-9-25 12:6:54</TimeStamp>
  2211. </Description>';
  2212. type 'R-2'
  2213. ports
  2214. power in p [2,1];
  2215. end;
  2216. icon bg bottom
  2217. figures
  2218. text 'R' 257 184 color 0 18 bold;
  2219. end;
  2220. implementation eq
  2221. parameters
  2222. real r[2,2] = [1.0, 0.0; 0.0, 1.0] {kN.m.s/rad};
  2223. equations
  2224. p.e = r * p.f;
  2225. implementation_end;
  2226. R3 257 312
  2227. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2228. <LibraryPath>Bond Graph\3D\R-3.emx</LibraryPath>
  2229. <TimeStamp>2007-9-25 12:11:54</TimeStamp>
  2230. </Description>';
  2231. type 'R-3'
  2232. ports
  2233. power in p [3,1];
  2234. end;
  2235. icon bg bottom
  2236. figures
  2237. text 'R' 257 312 color 0 18 bold;
  2238. end;
  2239. implementation eq
  2240. parameters
  2241. 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};
  2242. equations
  2243. p.e = r * p.f;
  2244. implementation_end;
  2245. R4 593 176
  2246. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2247. <LibraryPath>Bond Graph\2D\R-2.emx</LibraryPath>
  2248. <TimeStamp>2007-9-25 12:6:54</TimeStamp>
  2249. </Description>';
  2250. type 'R-2'
  2251. ports
  2252. power in p [2,1];
  2253. end;
  2254. icon bg bottom
  2255. figures
  2256. text 'R' 593 176 color 0 18 bold;
  2257. end;
  2258. implementation eq
  2259. parameters
  2260. real r[2,2] = [1.0, 0.0; 0.0, 1.0] {kN.m.s/rad};
  2261. equations
  2262. p.e = r * p.f;
  2263. implementation_end;
  2264. R5 593 304
  2265. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2266. <LibraryPath>Bond Graph\3D\R-3.emx</LibraryPath>
  2267. <TimeStamp>2007-9-25 12:11:54</TimeStamp>
  2268. </Description>';
  2269. type 'R-3'
  2270. ports
  2271. power in p [3,1];
  2272. end;
  2273. icon bg bottom
  2274. figures
  2275. text 'R' 593 304 color 0 18 bold;
  2276. end;
  2277. implementation eq
  2278. parameters
  2279. 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};
  2280. equations
  2281. p.e = r * p.f;
  2282. implementation_end;
  2283. rectanglepath 272 584
  2284. description '<Information>
  2285. <Description>
  2286. <Version>4.8</Version>
  2287. <LibraryPath>setpoint\rectanglepath.emx</LibraryPath>
  2288. <IsMainModel>1</IsMainModel>
  2289. <KeepParameterValues>False</KeepParameterValues>
  2290. <TimeStamp>2020-7-10 12:30:38</TimeStamp>
  2291. <AllowLibraryUpdate>False</AllowLibraryUpdate>
  2292. </Description>
  2293. </Information>';
  2294. type 'Submodel-Equation'
  2295. ports
  2296. signal out output [2,1];
  2297. end;
  2298. implementation eq
  2299. /*
  2300. This will generate coordinates for the box that has to be drawn
  2301. */
  2302. parameters
  2303. real w = 0.07{m} ;
  2304. real h = 0.05 {m};
  2305. real t = 0.5 {s};
  2306. real origin[2] = [0.01,0.03]{m};
  2307. variables
  2308. real v {m/s};
  2309. real t_w {s};
  2310. real t_h {s};
  2311. real period {s};
  2312. real test1, test2, test3;
  2313. initialequations
  2314. v = (2*w + 2*h)/t;
  2315. t_w = w / v;
  2316. t_h = h / v;
  2317. equations
  2318. period = floor(time / t) * t;
  2319. output[1] = v*(ramp(period+t_h) - ramp(period + t_w+t_h) - ramp(period + t_w + t_h + t_h)) + origin[1];
  2320. output[2] = v*(ramp(period) - ramp(period + t_h) - ramp(period + t_h + t_w) + ramp(period + 2 * t_h + t_w))+ origin[2];
  2321. implementation_end;
  2322. Sf2 64 104
  2323. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2324. <LibraryPath>Bond Graph\2D\Sf-2.emx</LibraryPath>
  2325. <TimeStamp>2007-9-25 12:7:5</TimeStamp>
  2326. </Description>';
  2327. type 'Sf-2'
  2328. ports
  2329. power out p [6,1];
  2330. restrictions
  2331. causality fixed in p;
  2332. end;
  2333. icon bg bottom
  2334. figures
  2335. text 'Sf' 64 104 color 0 18 bold;
  2336. end;
  2337. implementation eq
  2338. parameters
  2339. real flow[6,1] = 0;
  2340. variables
  2341. real effort [6];
  2342. equations
  2343. p.f = flow;
  2344. effort = p.e;
  2345. implementation_end;
  2346. Splitter1 392 136
  2347. description '<Description><Version>4.0</Version>
  2348. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2349. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2350. <IsMainModel>1</IsMainModel>
  2351. <KeepParameterValues>False</KeepParameterValues>
  2352. </Description>';
  2353. knot Splitter
  2354. ports
  2355. signal knot duplicatable out output [4,4];
  2356. signal knot in input [4,4];
  2357. end;
  2358. icon bg ellipse
  2359. figures
  2360. ellipse 388.8 132.8 395.2 139.2 color -1 fill 0;
  2361. ellipse 387.7 131.7 396.3 140.3 color -1;
  2362. terminals
  2363. input 392 136 fixed;
  2364. end;
  2365. implementation eq
  2366. equations
  2367. collect (output) = input;
  2368. implementation_end;
  2369. Splitter2 736 136
  2370. description '<Description><Version>4.0</Version>
  2371. <LibraryPath>Signal\Block Diagram\Splitter.emx</LibraryPath>
  2372. <TimeStamp>2008-01-17 11:28:29</TimeStamp>
  2373. <IsMainModel>1</IsMainModel>
  2374. <KeepParameterValues>False</KeepParameterValues>
  2375. </Description>';
  2376. knot Splitter
  2377. ports
  2378. signal knot duplicatable out output [4,4];
  2379. signal knot in input [4,4];
  2380. end;
  2381. icon bg ellipse
  2382. figures
  2383. ellipse 732.8 132.8 739.2 139.2 color -1 fill 0;
  2384. ellipse 731.7 131.7 740.3 140.3 color -1;
  2385. terminals
  2386. input 736 136 fixed;
  2387. end;
  2388. implementation eq
  2389. equations
  2390. collect (output) = input;
  2391. implementation_end;
  2392. Submodel2 112 384
  2393. description '<Description>
  2394. <Version>4.8</Version>
  2395. <IsMainModel>1</IsMainModel>
  2396. </Description>';
  2397. type Submodel
  2398. ports
  2399. signal in input;
  2400. power out p2;
  2401. end;
  2402. implementation bg
  2403. submodels
  2404. Gain1 552 88
  2405. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2406. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  2407. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  2408. </Description>';
  2409. type Gain
  2410. ports
  2411. signal in input;
  2412. signal out output;
  2413. end;
  2414. icon bg bottom
  2415. figures
  2416. rectangle 536.1 72 567.9 104 color 0 fill 15132390;
  2417. text 'K' 552 88 color 16711680 16 bold;
  2418. end;
  2419. implementation eq
  2420. parameters
  2421. real K = 12.0; // gain
  2422. equations
  2423. output = K * input;
  2424. implementation_end;
  2425. GY 624 184
  2426. description '<Information>
  2427. <Description>
  2428. <Version>4.2</Version>
  2429. <IsMainModel>1</IsMainModel>
  2430. <KeepParameterValues>False</KeepParameterValues>
  2431. <LibraryPath>Bond Graph\GY.emx</LibraryPath>
  2432. <TimeStamp>2011-11-29 15:53:45</TimeStamp>
  2433. </Description>
  2434. </Information>';
  2435. type GY
  2436. ports
  2437. power in p1;
  2438. power out p2;
  2439. restrictions
  2440. causality constraint equal p1 p2;
  2441. end;
  2442. icon bg bottom
  2443. figures
  2444. text 'GY' 624 184 color 0 18 bold;
  2445. end;
  2446. implementation eq
  2447. parameters
  2448. real r = 0.127;
  2449. equations
  2450. p1.e = r * p2.f;
  2451. p2.e = r * p1.f;
  2452. implementation_end;
  2453. MSe 624 88
  2454. description '<Information>
  2455. <Description>
  2456. <Version>4.2</Version>
  2457. <IsMainModel>1</IsMainModel>
  2458. <KeepParameterValues>False</KeepParameterValues>
  2459. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  2460. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  2461. </Description>
  2462. </Information>';
  2463. type MSe
  2464. ports
  2465. power out p;
  2466. signal in effort;
  2467. restrictions
  2468. causality fixed out p;
  2469. end;
  2470. icon bg bottom
  2471. figures
  2472. text 'MSe' 624 88 color 0 18 bold;
  2473. end;
  2474. implementation eq
  2475. variables
  2476. real flow;
  2477. equations
  2478. p.e = effort;
  2479. flow = p.f;
  2480. implementation_end;
  2481. plug input 424 88;
  2482. plug p2 624 220;
  2483. OneJunction2 624 136
  2484. description '<Information>
  2485. <Description>
  2486. <Version>4.2</Version>
  2487. <IsMainModel>1</IsMainModel>
  2488. <KeepParameterValues>False</KeepParameterValues>
  2489. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  2490. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  2491. </Description>
  2492. </Information>';
  2493. knot OneJunction
  2494. ports
  2495. power knot duplicatable none p [1];
  2496. signal knot out flow [1];
  2497. restrictions
  2498. causality constraint one_out p;
  2499. end;
  2500. icon bg
  2501. figures
  2502. text '1' 624 136 color 0 18 bold;
  2503. end;
  2504. implementation eq
  2505. equations
  2506. sum (direct (p.e)) = 0;
  2507. equal (collect (p.f));
  2508. flow = first (p.f);
  2509. implementation_end;
  2510. R 664 136
  2511. description '<Information>
  2512. <Description>
  2513. <Version>4.2</Version>
  2514. <IsMainModel>1</IsMainModel>
  2515. <KeepParameterValues>False</KeepParameterValues>
  2516. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2517. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2518. </Description>
  2519. </Information>';
  2520. type R
  2521. ports
  2522. power in p;
  2523. end;
  2524. icon bg bottom
  2525. figures
  2526. text 'R' 664 136 color 0 18 bold;
  2527. end;
  2528. implementation eq
  2529. parameters
  2530. real r = 0.08;
  2531. equations
  2532. p.e = r * p.f;
  2533. implementation_end;
  2534. SignalLimiter2 488 88
  2535. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2536. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  2537. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  2538. </Description>';
  2539. type 'SignalLimiter-Limit'
  2540. ports
  2541. signal in input;
  2542. signal out output;
  2543. end;
  2544. icon bg bottom
  2545. figures
  2546. group
  2547. rectangle 472 72 504 104 color 0 fill 15132390;
  2548. line 487.9 76.5 487.9 101 color 0 fill 15132390;
  2549. line 475 88.2 500.7 88.2 color 0 fill 15132390;
  2550. spline 481.9 95.1 493.9 81.4 color 16711680 fill 15132390 width 2;
  2551. spline 493.3 82.2 501.9 81.8 color 16711680 fill 15132390 width 2;
  2552. spline 475 95.6 481.9 95.1 color 16711680 fill 15132390 width 2;
  2553. end;
  2554. end;
  2555. implementation eq
  2556. parameters
  2557. real maximum = 1;
  2558. real minimum = -1;
  2559. equations
  2560. output = limit (input, minimum, maximum);
  2561. implementation_end;
  2562. end;
  2563. connections
  2564. Gain1\output -> MSe\effort;
  2565. GY\p2 => p2;
  2566. input -> SignalLimiter2\input;
  2567. MSe\p => OneJunction2\p;
  2568. OneJunction2\p => GY\p1;
  2569. R\p <= OneJunction2\p;
  2570. SignalLimiter2\output -> Gain1\input;
  2571. end;
  2572. implementation_end;
  2573. Submodel5 664 432
  2574. description '<Description>
  2575. <Version>4.8</Version>
  2576. <IsMainModel>1</IsMainModel>
  2577. </Description>';
  2578. type Submodel
  2579. ports
  2580. signal in input;
  2581. power out p2;
  2582. end;
  2583. implementation bg
  2584. submodels
  2585. Gain1 552 88
  2586. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2587. <LibraryPath>Signal\Block Diagram\Gain.emx</LibraryPath>
  2588. <TimeStamp>2007-9-26 12:15:12</TimeStamp>
  2589. </Description>';
  2590. type Gain
  2591. ports
  2592. signal in input;
  2593. signal out output;
  2594. end;
  2595. icon bg bottom
  2596. figures
  2597. rectangle 536.1 72 567.9 104 color 0 fill 15132390;
  2598. text 'K' 552 88 color 16711680 16 bold;
  2599. end;
  2600. implementation eq
  2601. parameters
  2602. real K = 12.0; // gain
  2603. equations
  2604. output = K * input;
  2605. implementation_end;
  2606. GY 624 184
  2607. description '<Information>
  2608. <Description>
  2609. <Version>4.2</Version>
  2610. <IsMainModel>1</IsMainModel>
  2611. <KeepParameterValues>False</KeepParameterValues>
  2612. <LibraryPath>Bond Graph\GY.emx</LibraryPath>
  2613. <TimeStamp>2011-11-29 15:53:45</TimeStamp>
  2614. </Description>
  2615. </Information>';
  2616. type GY
  2617. ports
  2618. power in p1;
  2619. power out p2;
  2620. restrictions
  2621. causality constraint equal p1 p2;
  2622. end;
  2623. icon bg bottom
  2624. figures
  2625. text 'GY' 624 184 color 0 18 bold;
  2626. end;
  2627. implementation eq
  2628. parameters
  2629. real r = 0.127;
  2630. equations
  2631. p1.e = r * p2.f;
  2632. p2.e = r * p1.f;
  2633. implementation_end;
  2634. MSe 624 88
  2635. description '<Information>
  2636. <Description>
  2637. <Version>4.2</Version>
  2638. <IsMainModel>1</IsMainModel>
  2639. <KeepParameterValues>False</KeepParameterValues>
  2640. <LibraryPath>Bond Graph\MSe.emx</LibraryPath>
  2641. <TimeStamp>2011-11-29 16:12:33</TimeStamp>
  2642. </Description>
  2643. </Information>';
  2644. type MSe
  2645. ports
  2646. power out p;
  2647. signal in effort;
  2648. restrictions
  2649. causality fixed out p;
  2650. end;
  2651. icon bg bottom
  2652. figures
  2653. text 'MSe' 624 88 color 0 18 bold;
  2654. end;
  2655. implementation eq
  2656. variables
  2657. real flow;
  2658. equations
  2659. p.e = effort;
  2660. flow = p.f;
  2661. implementation_end;
  2662. plug input 424 88;
  2663. plug p2 624 220;
  2664. OneJunction2 624 136
  2665. description '<Information>
  2666. <Description>
  2667. <Version>4.2</Version>
  2668. <IsMainModel>1</IsMainModel>
  2669. <KeepParameterValues>False</KeepParameterValues>
  2670. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  2671. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  2672. </Description>
  2673. </Information>';
  2674. knot OneJunction
  2675. ports
  2676. power knot duplicatable none p [1];
  2677. signal knot out flow [1];
  2678. restrictions
  2679. causality constraint one_out p;
  2680. end;
  2681. icon bg
  2682. figures
  2683. text '1' 624 136 color 0 18 bold;
  2684. end;
  2685. implementation eq
  2686. equations
  2687. sum (direct (p.e)) = 0;
  2688. equal (collect (p.f));
  2689. flow = first (p.f);
  2690. implementation_end;
  2691. R 664 136
  2692. description '<Information>
  2693. <Description>
  2694. <Version>4.2</Version>
  2695. <IsMainModel>1</IsMainModel>
  2696. <KeepParameterValues>False</KeepParameterValues>
  2697. <LibraryPath>Bond Graph\R.emx</LibraryPath>
  2698. <TimeStamp>2011-11-29 16:35:37</TimeStamp>
  2699. </Description>
  2700. </Information>';
  2701. type R
  2702. ports
  2703. power in p;
  2704. end;
  2705. icon bg bottom
  2706. figures
  2707. text 'R' 664 136 color 0 18 bold;
  2708. end;
  2709. implementation eq
  2710. parameters
  2711. real r = 0.08;
  2712. equations
  2713. p.e = r * p.f;
  2714. implementation_end;
  2715. SignalLimiter2 488 88
  2716. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2717. <LibraryPath>Signal\Block Diagram Non-Linear\SignalLimiter-Limit.emx</LibraryPath>
  2718. <TimeStamp>2007-9-26 12:47:40</TimeStamp>
  2719. </Description>';
  2720. type 'SignalLimiter-Limit'
  2721. ports
  2722. signal in input;
  2723. signal out output;
  2724. end;
  2725. icon bg bottom
  2726. figures
  2727. group
  2728. rectangle 472 72 504 104 color 0 fill 15132390;
  2729. line 487.9 76.5 487.9 101 color 0 fill 15132390;
  2730. line 475 88.2 500.7 88.2 color 0 fill 15132390;
  2731. spline 481.9 95.1 493.9 81.4 color 16711680 fill 15132390 width 2;
  2732. spline 493.3 82.2 501.9 81.8 color 16711680 fill 15132390 width 2;
  2733. spline 475 95.6 481.9 95.1 color 16711680 fill 15132390 width 2;
  2734. end;
  2735. end;
  2736. implementation eq
  2737. parameters
  2738. real maximum = 1;
  2739. real minimum = -1;
  2740. equations
  2741. output = limit (input, minimum, maximum);
  2742. implementation_end;
  2743. end;
  2744. connections
  2745. Gain1\output -> MSe\effort;
  2746. GY\p2 => p2;
  2747. input -> SignalLimiter2\input;
  2748. MSe\p => OneJunction2\p;
  2749. OneJunction2\p => GY\p1;
  2750. R\p <= OneJunction2\p;
  2751. SignalLimiter2\output -> Gain1\input;
  2752. end;
  2753. implementation_end;
  2754. Zero 112 136
  2755. description '<Description><Version>4.0</Version><IsMainModel>1</IsMainModel><KeepParameterValues>False</KeepParameterValues>
  2756. <LibraryPath>Signal\Sources\Zero.emx</LibraryPath>
  2757. <TimeStamp>2007-9-27 15:54:36</TimeStamp>
  2758. </Description>
  2759. ';
  2760. type Zero
  2761. ports
  2762. signal out output [4,4];
  2763. end;
  2764. icon bg bottom
  2765. figures
  2766. rectangle 96.1 120 127.9 152 color 0 fill 15132390;
  2767. text '0' 112 136 color 16711680 18 bold;
  2768. end;
  2769. implementation eq
  2770. equations
  2771. output = eye(4);implementation_end;
  2772. ZeroJunction7 112 288
  2773. description '<Information>
  2774. <Description>
  2775. <Version>4.2</Version>
  2776. <IsMainModel>1</IsMainModel>
  2777. <KeepParameterValues>False</KeepParameterValues>
  2778. <LibraryPath>Bond Graph\OneJunction.emx</LibraryPath>
  2779. <TimeStamp>2011-11-29 16:17:51</TimeStamp>
  2780. </Description>
  2781. </Information>';
  2782. knot OneJunction
  2783. ports
  2784. power knot duplicatable none p [1];
  2785. signal knot out flow [1];
  2786. restrictions
  2787. causality constraint one_out p;
  2788. end;
  2789. icon bg
  2790. figures
  2791. text '1' 112 288 color 0 18 bold;
  2792. end;
  2793. implementation eq
  2794. equations
  2795. sum (direct (p.e)) = 0;
  2796. equal (collect (p.f));
  2797. flow = first (p.f);
  2798. implementation_end;
  2799. end;
  2800. connections
  2801. Base1\Hout -> new_joint2\input;
  2802. Base2\Hout -> new_joint3\input;
  2803. Base3\Hin <- Splitter1\output;
  2804. Base3\Hout -> new_joint1\input;
  2805. C1\p <= OneJunction7\p;
  2806. C2\p <= OneJunction6\p;
  2807. Integrate\input <- ZeroJunction7\flow;
  2808. Integrate\output -> PlusMinus4\minus;
  2809. Integrate1\output -> PlusMinus5\minus;
  2810. inverse_kinematics1\angle1 -> Negate1\input;
  2811. inverse_kinematics1\angle2 -> Negate2\input;
  2812. Joint1\Hout -> Link\Hin;
  2813. Joint1\Pdiff <= PowerMux\output;
  2814. Joint1\Pin <= Link\Pout;
  2815. Joint1\Pout => OneJunction2\p;
  2816. Joint2\Hout -> Link2\Hin;
  2817. Joint2\Pdiff <= PowerMux1\output;
  2818. Joint2\Pin <= Link2\Pout;
  2819. Link\Pin <= OneJunction1\p;
  2820. Link1\Hout -> Joint2\Hin;
  2821. Link1\Pin <= Joint2\Pout;
  2822. Link1\Pout => OneJunction1\p;
  2823. Link2\Hout -> Splitter2\input;
  2824. Link2\Pin <= OneJunction3\p;
  2825. Link3\Hout -> Base2\Hin;
  2826. Link3\Pin <= Base2\p;
  2827. Link3\Pout => OneJunction3\p;
  2828. Negate1\output -> PlusMinus4\plus;
  2829. Negate2\output -> PlusMinus5\plus;
  2830. OneJunction1\p <= Base3\p;
  2831. OneJunction17\flow -> Integrate1\input;
  2832. OneJunction3\p <= Base1\p;
  2833. OneJunction4\p => C4\p;
  2834. OneJunction4\p => R4\p;
  2835. OneJunction5\p => C3\p;
  2836. OneJunction5\p => R2\p;
  2837. OneJunction6\p => R3\p;
  2838. OneJunction7\p => R5\p;
  2839. PID2\output -> Submodel2\input;
  2840. PID3\output -> Submodel5\input;
  2841. PlusMinus4\output -> PID2\error;
  2842. PlusMinus5\output -> PID3\error;
  2843. PowerMux\input_pos3 <= OneJunction6\p;
  2844. PowerMux\input_rot2 <= OneJunction5\p;
  2845. PowerMux1\input <= OneJunction17\p;
  2846. PowerMux1\input_pos3 <= OneJunction7\p;
  2847. PowerMux1\input_rot2 <= OneJunction4\p;
  2848. R\p <= ZeroJunction7\p;
  2849. R1\p <= OneJunction17\p;
  2850. rectanglepath\output -> inverse_kinematics1\input;
  2851. Sf2\p => OneJunction2\p;
  2852. Splitter1\input <- Link\Hout;
  2853. Splitter1\output -> Link1\Hin;
  2854. Splitter2\output -> Base1\Hin;
  2855. Splitter2\output -> Link3\Hin;
  2856. Submodel2\p2 => ZeroJunction7\p;
  2857. Submodel5\p2 => OneJunction17\p;
  2858. Zero\output -> Joint1\Hin;
  2859. ZeroJunction7\p => PowerMux\input;
  2860. end;
  2861. implementation_end;
  2862. ]]>
  2863. </Sidops>
  2864. </Model>
  2865. <Experiments>
  2866. <DefaultExperiment><![CDATA[Experiment 1]]>
  2867. </DefaultExperiment>
  2868. <Experiment>
  2869. <Name>Experiment 1</Name>
  2870. <CreatedBy></CreatedBy>
  2871. <Info></Info>
  2872. <ExpData>
  2873. <VersionNumber>4.8</VersionNumber>
  2874. <ModelProperties>
  2875. <ModelProperty section="GenSimProps" entry="ClearVarsAtStart" value="1"/>
  2876. <ModelProperty section="tools\graph editor" entry="debugMode" value="0"/>
  2877. </ModelProperties>
  2878. <Variables>
  2879. <Constants>
  2880. </Constants>
  2881. <Parameters>
  2882. </Parameters>
  2883. <Initials>
  2884. <Variable>
  2885. <Name>Base1\InertialTensor\state_initial</Name>
  2886. <Rows>6</Rows>
  2887. <Columns>1</Columns>
  2888. <Value>0 0 0 0 0 0</Value>
  2889. </Variable>
  2890. <Variable>
  2891. <Name>Base3\InertialTensor\state_initial</Name>
  2892. <Rows>6</Rows>
  2893. <Columns>1</Columns>
  2894. <Value>0 0 0 0 0 0</Value>
  2895. </Variable>
  2896. <Variable>
  2897. <Name>C1\state_initial</Name>
  2898. <Rows>3</Rows>
  2899. <Columns>1</Columns>
  2900. <Value>0 0 0</Value>
  2901. </Variable>
  2902. <Variable>
  2903. <Name>C2\state_initial</Name>
  2904. <Rows>3</Rows>
  2905. <Columns>1</Columns>
  2906. <Value>0 0 0</Value>
  2907. </Variable>
  2908. <Variable>
  2909. <Name>C3\state_initial</Name>
  2910. <Rows>2</Rows>
  2911. <Columns>1</Columns>
  2912. <Value>0 0</Value>
  2913. </Variable>
  2914. <Variable>
  2915. <Name>C4\state_initial</Name>
  2916. <Rows>2</Rows>
  2917. <Columns>1</Columns>
  2918. <Value>0 0</Value>
  2919. </Variable>
  2920. <Variable>
  2921. <Name>Joint1\Hmatrix\p_initial</Name>
  2922. <Rows>3</Rows>
  2923. <Columns>1</Columns>
  2924. <Value>0 0 0</Value>
  2925. </Variable>
  2926. <Variable>
  2927. <Name>Joint2\Hmatrix\p_initial</Name>
  2928. <Rows>3</Rows>
  2929. <Columns>1</Columns>
  2930. <Value>0 0 0</Value>
  2931. </Variable>
  2932. <Variable>
  2933. <Name>PID2\pdstate_initial</Name>
  2934. <Value>0</Value>
  2935. </Variable>
  2936. <Variable>
  2937. <Name>PID2\pistate_initial</Name>
  2938. <Value>0</Value>
  2939. </Variable>
  2940. <Variable>
  2941. <Name>PID3\pdstate_initial</Name>
  2942. <Value>0</Value>
  2943. </Variable>
  2944. <Variable>
  2945. <Name>PID3\pistate_initial</Name>
  2946. <Value>0</Value>
  2947. </Variable>
  2948. <Variable>
  2949. <Name>Base2\InertialTensor\p.e_initial</Name>
  2950. <Rows>6</Rows>
  2951. <Columns>1</Columns>
  2952. <Value>0 0 0 0 0 0</Value>
  2953. </Variable>
  2954. </Initials>
  2955. </Variables>
  2956. <PlotSpecs>
  2957. <VarNames>
  2958. <VarName>time</VarName>
  2959. <VarName>new_joint1\position[1]</VarName>
  2960. <VarName>new_joint1\position[2]</VarName>
  2961. <VarName>new_joint1\position[3]</VarName>
  2962. <VarName>new_joint1\R[1,3]</VarName>
  2963. <VarName>new_joint1\R[2,3]</VarName>
  2964. <VarName>new_joint1\R[3,3]</VarName>
  2965. <VarName>new_joint1\R[1,2]</VarName>
  2966. <VarName>new_joint1\R[2,2]</VarName>
  2967. <VarName>new_joint1\R[3,2]</VarName>
  2968. <VarName>new_joint2\R[1,3]</VarName>
  2969. <VarName>new_joint2\R[2,3]</VarName>
  2970. <VarName>new_joint2\R[3,3]</VarName>
  2971. <VarName>new_joint2\R[1,2]</VarName>
  2972. <VarName>new_joint2\R[2,2]</VarName>
  2973. <VarName>new_joint2\R[3,2]</VarName>
  2974. <VarName>new_joint2\position[1]</VarName>
  2975. <VarName>new_joint2\position[2]</VarName>
  2976. <VarName>new_joint2\position[3]</VarName>
  2977. <VarName>PID2\error</VarName>
  2978. <VarName>PID3\error</VarName>
  2979. <VarName>new_joint3\position[3]</VarName>
  2980. <VarName>new_joint3\position[2]</VarName>
  2981. <VarName>rectanglepath\output[2]</VarName>
  2982. <VarName>rectanglepath\output[1]</VarName>
  2983. <VarName>Submodel3\body_position[1]</VarName>
  2984. <VarName>Submodel3\body_position[2]</VarName>
  2985. <VarName>Submodel3\body_position[3]</VarName>
  2986. <VarName>Submodel3\body_angle[1]</VarName>
  2987. <VarName>Submodel3\body_angle[2]</VarName>
  2988. <VarName>Submodel3\body_angle[3]</VarName>
  2989. <VarName>Submodel3\dimension[1]</VarName>
  2990. <VarName>Submodel3\dimension[2]</VarName>
  2991. <VarName>Submodel3\dimension[3]</VarName>
  2992. <VarName>Submodel4\body_position[1]</VarName>
  2993. <VarName>Submodel4\body_position[2]</VarName>
  2994. <VarName>Submodel4\body_position[3]</VarName>
  2995. <VarName>Submodel4\body_angle[1]</VarName>
  2996. <VarName>Submodel4\body_angle[2]</VarName>
  2997. <VarName>Submodel4\body_angle[3]</VarName>
  2998. <VarName>Submodel4\dimension[1]</VarName>
  2999. <VarName>Submodel4\dimension[2]</VarName>
  3000. <VarName>Submodel4\dimension[3]</VarName>
  3001. </VarNames>
  3002. <Plots>
  3003. <Plot>
  3004. <PlotType>D3DPlot</PlotType>
  3005. <BasePlot>
  3006. <PlotId>1</PlotId>
  3007. <UseWindowsBGColor>false</UseWindowsBGColor>
  3008. <BGColor>16777215</BGColor>
  3009. <PlotIsVisible>true</PlotIsVisible>
  3010. </BasePlot>
  3011. <PlotTitle>3D Animation</PlotTitle>
  3012. <RenderQuality>137</RenderQuality>
  3013. <ShowGrid>true</ShowGrid>
  3014. <ShowFPS>false</ShowFPS>
  3015. <BackgroundColor>4294967295</BackgroundColor>
  3016. <SceneBackgroundImage>Gradients\BlueWhite.png</SceneBackgroundImage>
  3017. <ApplyTextureBackground>true</ApplyTextureBackground>
  3018. <FrameScale>1.0</FrameScale>
  3019. <FrameThickness>1.0</FrameThickness>
  3020. <MainFrame>
  3021. <Frame>
  3022. <ScaleValue>
  3023. <X>
  3024. <Value>1</Value>
  3025. </X>
  3026. <Y>
  3027. <Value>1</Value>
  3028. </Y>
  3029. <Z>
  3030. <Value>1</Value>
  3031. </Z>
  3032. </ScaleValue>
  3033. <ShowReferenceFrame>true</ShowReferenceFrame>
  3034. <Name>Reference Frame</Name>
  3035. <Position>
  3036. </Position>
  3037. <Orientation>
  3038. <Angles>
  3039. </Angles>
  3040. <OrientationType>Bryant</OrientationType>
  3041. </Orientation>
  3042. <LockX>false</LockX>
  3043. <LockY>false</LockY>
  3044. <LockZ>false</LockZ>
  3045. <LockXPitch>false</LockXPitch>
  3046. <LockYYaw>false</LockYYaw>
  3047. <LockZRoll>false</LockZRoll>
  3048. <Childs>
  3049. <Frame>
  3050. <ScaleValue>
  3051. <X>
  3052. <Value>1</Value>
  3053. </X>
  3054. <Y>
  3055. <Value>1</Value>
  3056. </Y>
  3057. <Z>
  3058. <Value>1</Value>
  3059. </Z>
  3060. </ScaleValue>
  3061. <ShowReferenceFrame>false</ShowReferenceFrame>
  3062. <Name>Default Lights and Cameras</Name>
  3063. <Position>
  3064. </Position>
  3065. <Orientation>
  3066. <Angles>
  3067. </Angles>
  3068. <OrientationType>Bryant</OrientationType>
  3069. </Orientation>
  3070. <LockX>false</LockX>
  3071. <LockY>false</LockY>
  3072. <LockZ>false</LockZ>
  3073. <LockXPitch>false</LockXPitch>
  3074. <LockYYaw>false</LockYYaw>
  3075. <LockZRoll>false</LockZRoll>
  3076. <Childs>
  3077. <Light>
  3078. <ShowReferenceFrame>false</ShowReferenceFrame>
  3079. <Name>Ambient</Name>
  3080. <Position>
  3081. </Position>
  3082. <Orientation>
  3083. <ZAxis>
  3084. <Z>
  3085. <Value>1</Value>
  3086. </Z>
  3087. </ZAxis>
  3088. <YAxis>
  3089. <Y>
  3090. <Value>1</Value>
  3091. </Y>
  3092. </YAxis>
  3093. <OrientationType>Direct3D</OrientationType>
  3094. </Orientation>
  3095. <LockX>false</LockX>
  3096. <LockY>false</LockY>
  3097. <LockZ>false</LockZ>
  3098. <LockXPitch>false</LockXPitch>
  3099. <LockYYaw>false</LockYYaw>
  3100. <LockZRoll>false</LockZRoll>
  3101. <Childs>
  3102. </Childs>
  3103. <LightType>0</LightType>
  3104. <LightColor>
  3105. <Color>
  3106. <X>
  3107. <Value>0.3</Value>
  3108. </X>
  3109. <Y>
  3110. <Value>0.3</Value>
  3111. </Y>
  3112. <Z>
  3113. <Value>0.3</Value>
  3114. </Z>
  3115. </Color>
  3116. <Offset>
  3117. </Offset>
  3118. <Multipliers>
  3119. <X>
  3120. <Value>1</Value>
  3121. </X>
  3122. <Y>
  3123. <Value>1</Value>
  3124. </Y>
  3125. <Z>
  3126. <Value>1</Value>
  3127. </Z>
  3128. </Multipliers>
  3129. <Direct3DColorRange>true</Direct3DColorRange>
  3130. </LightColor>
  3131. <AmbientLight>
  3132. <Color>
  3133. <X>
  3134. <Value>0.3</Value>
  3135. </X>
  3136. <Y>
  3137. <Value>0.3</Value>
  3138. </Y>
  3139. <Z>
  3140. <Value>0.3</Value>
  3141. </Z>
  3142. </Color>
  3143. <Offset>
  3144. </Offset>
  3145. <Multipliers>
  3146. <X>
  3147. <Value>1</Value>
  3148. </X>
  3149. <Y>
  3150. <Value>1</Value>
  3151. </Y>
  3152. <Z>
  3153. <Value>1</Value>
  3154. </Z>
  3155. </Multipliers>
  3156. <Direct3DColorRange>true</Direct3DColorRange>
  3157. </AmbientLight>
  3158. <AmbientOn>true</AmbientOn>
  3159. <DiffuseOn>false</DiffuseOn>
  3160. <SpecularOn>false</SpecularOn>
  3161. </Light>
  3162. <Light>
  3163. <ShowReferenceFrame>false</ShowReferenceFrame>
  3164. <Name>Parallel</Name>
  3165. <Position>
  3166. <X>
  3167. <Value>-3</Value>
  3168. </X>
  3169. <Y>
  3170. <Value>5</Value>
  3171. </Y>
  3172. <Z>
  3173. <Value>3</Value>
  3174. </Z>
  3175. </Position>
  3176. <Orientation>
  3177. <ZAxis>
  3178. <X>
  3179. <Value>0.457495710997814</Value>
  3180. </X>
  3181. <Y>
  3182. <Value>-0.762492851663023</Value>
  3183. </Y>
  3184. <Z>
  3185. <Value>-0.457495710997814</Value>
  3186. </Z>
  3187. </ZAxis>
  3188. <YAxis>
  3189. <X>
  3190. <Value>0.235379601434674</Value>
  3191. </X>
  3192. <Y>
  3193. <Value>-0.392299335724456</Value>
  3194. </Y>
  3195. <Z>
  3196. <Value>0.889211827642101</Value>
  3197. </Z>
  3198. </YAxis>
  3199. <OrientationType>Direct3D</OrientationType>
  3200. </Orientation>
  3201. <LockX>false</LockX>
  3202. <LockY>false</LockY>
  3203. <LockZ>false</LockZ>
  3204. <LockXPitch>false</LockXPitch>
  3205. <LockYYaw>false</LockYYaw>
  3206. <LockZRoll>false</LockZRoll>
  3207. <Childs>
  3208. </Childs>
  3209. <LightType>3</LightType>
  3210. <LightColor>
  3211. <Color>
  3212. <X>
  3213. <Value>0.5</Value>
  3214. </X>
  3215. <Y>
  3216. <Value>0.5</Value>
  3217. </Y>
  3218. <Z>
  3219. <Value>0.5</Value>
  3220. </Z>
  3221. </Color>
  3222. <Offset>
  3223. </Offset>
  3224. <Multipliers>
  3225. <X>
  3226. <Value>1</Value>
  3227. </X>
  3228. <Y>
  3229. <Value>1</Value>
  3230. </Y>
  3231. <Z>
  3232. <Value>1</Value>
  3233. </Z>
  3234. </Multipliers>
  3235. <Direct3DColorRange>true</Direct3DColorRange>
  3236. </LightColor>
  3237. <Attenuation>
  3238. <Constant>
  3239. <Value>1.0</Value>
  3240. </Constant>
  3241. <Linear>
  3242. <Value>0.0</Value>
  3243. </Linear>
  3244. <Quadratic>
  3245. <Value>0.0</Value>
  3246. </Quadratic>
  3247. </Attenuation>
  3248. <DiffuseLight>
  3249. <Color>
  3250. <X>
  3251. <Value>0.5</Value>
  3252. </X>
  3253. <Y>
  3254. <Value>0.5</Value>
  3255. </Y>
  3256. <Z>
  3257. <Value>0.5</Value>
  3258. </Z>
  3259. </Color>
  3260. <Offset>
  3261. </Offset>
  3262. <Multipliers>
  3263. <X>
  3264. <Value>1</Value>
  3265. </X>
  3266. <Y>
  3267. <Value>1</Value>
  3268. </Y>
  3269. <Z>
  3270. <Value>1</Value>
  3271. </Z>
  3272. </Multipliers>
  3273. <Direct3DColorRange>true</Direct3DColorRange>
  3274. </DiffuseLight>
  3275. <SpecularLight>
  3276. <Color>
  3277. <X>
  3278. <Value>0.5</Value>
  3279. </X>
  3280. <Y>
  3281. <Value>0.5</Value>
  3282. </Y>
  3283. <Z>
  3284. <Value>0.5</Value>
  3285. </Z>
  3286. </Color>
  3287. <Offset>
  3288. </Offset>
  3289. <Multipliers>
  3290. <X>
  3291. <Value>1</Value>
  3292. </X>
  3293. <Y>
  3294. <Value>1</Value>
  3295. </Y>
  3296. <Z>
  3297. <Value>1</Value>
  3298. </Z>
  3299. </Multipliers>
  3300. <Direct3DColorRange>true</Direct3DColorRange>
  3301. </SpecularLight>
  3302. <AmbientOn>false</AmbientOn>
  3303. <DiffuseOn>true</DiffuseOn>
  3304. <SpecularOn>true</SpecularOn>
  3305. </Light>
  3306. <Light>
  3307. <ShowReferenceFrame>false</ShowReferenceFrame>
  3308. <Name>Spot Light 1</Name>
  3309. <Position>
  3310. <X>
  3311. <Value>-3</Value>
  3312. </X>
  3313. <Y>
  3314. <Value>-5</Value>
  3315. </Y>
  3316. <Z>
  3317. <Value>1</Value>
  3318. </Z>
  3319. </Position>
  3320. <Orientation>
  3321. <ZAxis>
  3322. <X>
  3323. <Value>0.50709255283711</Value>
  3324. </X>
  3325. <Y>
  3326. <Value>0.845154254728517</Value>
  3327. </Y>
  3328. <Z>
  3329. <Value>-0.169030850945703</Value>
  3330. </Z>
  3331. </ZAxis>
  3332. <YAxis>
  3333. <X>
  3334. <Value>0.0869656553478673</Value>
  3335. </X>
  3336. <Y>
  3337. <Value>0.144942758913112</Value>
  3338. </Y>
  3339. <Z>
  3340. <Value>0.985610760609162</Value>
  3341. </Z>
  3342. </YAxis>
  3343. <OrientationType>Direct3D</OrientationType>
  3344. </Orientation>
  3345. <LockX>false</LockX>
  3346. <LockY>false</LockY>
  3347. <LockZ>false</LockZ>
  3348. <LockXPitch>false</LockXPitch>
  3349. <LockYYaw>false</LockYYaw>
  3350. <LockZRoll>false</LockZRoll>
  3351. <Childs>
  3352. </Childs>
  3353. <LightType>2</LightType>
  3354. <LightColor>
  3355. <Color>
  3356. <X>
  3357. <Value>0.5</Value>
  3358. </X>
  3359. <Y>
  3360. <Value>0.5</Value>
  3361. </Y>
  3362. <Z>
  3363. <Value>0.5</Value>
  3364. </Z>
  3365. </Color>
  3366. <Offset>
  3367. </Offset>
  3368. <Multipliers>
  3369. <X>
  3370. <Value>1</Value>
  3371. </X>
  3372. <Y>
  3373. <Value>1</Value>
  3374. </Y>
  3375. <Z>
  3376. <Value>1</Value>
  3377. </Z>
  3378. </Multipliers>
  3379. <Direct3DColorRange>true</Direct3DColorRange>
  3380. </LightColor>
  3381. <Attenuation>
  3382. <Constant>
  3383. <Value>1.0</Value>
  3384. </Constant>
  3385. <Linear>
  3386. <Value>0.05</Value>
  3387. </Linear>
  3388. <Quadratic>
  3389. <Value>0.05</Value>
  3390. </Quadratic>
  3391. </Attenuation>
  3392. <Umbra>
  3393. <Value>1.0471975511965976</Value>
  3394. </Umbra>
  3395. <Penumbra>
  3396. <Value>1.0471975511965976</Value>
  3397. </Penumbra>
  3398. <SpotExponent>0.0</SpotExponent>
  3399. <DiffuseLight>
  3400. <Color>
  3401. <X>
  3402. <Value>0.5</Value>
  3403. </X>
  3404. <Y>
  3405. <Value>0.5</Value>
  3406. </Y>
  3407. <Z>
  3408. <Value>0.5</Value>
  3409. </Z>
  3410. </Color>
  3411. <Offset>
  3412. </Offset>
  3413. <Multipliers>
  3414. <X>
  3415. <Value>1</Value>
  3416. </X>
  3417. <Y>
  3418. <Value>1</Value>
  3419. </Y>
  3420. <Z>
  3421. <Value>1</Value>
  3422. </Z>
  3423. </Multipliers>
  3424. <Direct3DColorRange>true</Direct3DColorRange>
  3425. </DiffuseLight>
  3426. <SpecularLight>
  3427. <Color>
  3428. <X>
  3429. <Value>0.5</Value>
  3430. </X>
  3431. <Y>
  3432. <Value>0.5</Value>
  3433. </Y>
  3434. <Z>
  3435. <Value>0.5</Value>
  3436. </Z>
  3437. </Color>
  3438. <Offset>
  3439. </Offset>
  3440. <Multipliers>
  3441. <X>
  3442. <Value>1</Value>
  3443. </X>
  3444. <Y>
  3445. <Value>1</Value>
  3446. </Y>
  3447. <Z>
  3448. <Value>1</Value>
  3449. </Z>
  3450. </Multipliers>
  3451. <Direct3DColorRange>true</Direct3DColorRange>
  3452. </SpecularLight>
  3453. <AmbientOn>false</AmbientOn>
  3454. <DiffuseOn>true</DiffuseOn>
  3455. <SpecularOn>true</SpecularOn>
  3456. </Light>
  3457. <Light>
  3458. <ShowReferenceFrame>false</ShowReferenceFrame>
  3459. <Name>Spot Light 2</Name>
  3460. <Position>
  3461. <X>
  3462. <Value>2</Value>
  3463. </X>
  3464. <Y>
  3465. <Value>-3</Value>
  3466. </Y>
  3467. <Z>
  3468. <Value>-1</Value>
  3469. </Z>
  3470. </Position>
  3471. <Orientation>
  3472. <ZAxis>
  3473. <X>
  3474. <Value>-0.534522483824849</Value>
  3475. </X>
  3476. <Y>
  3477. <Value>0.801783725737273</Value>
  3478. </Y>
  3479. <Z>
  3480. <Value>0.267261241912424</Value>
  3481. </Z>
  3482. </ZAxis>
  3483. <YAxis>
  3484. <X>
  3485. <Value>0.14824986333222</Value>
  3486. </X>
  3487. <Y>
  3488. <Value>-0.22237479499833</Value>
  3489. </Y>
  3490. <Z>
  3491. <Value>0.963624111659432</Value>
  3492. </Z>
  3493. </YAxis>
  3494. <OrientationType>Direct3D</OrientationType>
  3495. </Orientation>
  3496. <LockX>false</LockX>
  3497. <LockY>false</LockY>
  3498. <LockZ>false</LockZ>
  3499. <LockXPitch>false</LockXPitch>
  3500. <LockYYaw>false</LockYYaw>
  3501. <LockZRoll>false</LockZRoll>
  3502. <Childs>
  3503. </Childs>
  3504. <LightType>2</LightType>
  3505. <LightColor>
  3506. <Color>
  3507. <X>
  3508. <Value>1</Value>
  3509. </X>
  3510. <Y>
  3511. <Value>1</Value>
  3512. </Y>
  3513. <Z>
  3514. <Value>1</Value>
  3515. </Z>
  3516. </Color>
  3517. <Offset>
  3518. </Offset>
  3519. <Multipliers>
  3520. <X>
  3521. <Value>1</Value>
  3522. </X>
  3523. <Y>
  3524. <Value>1</Value>
  3525. </Y>
  3526. <Z>
  3527. <Value>1</Value>
  3528. </Z>
  3529. </Multipliers>
  3530. <Direct3DColorRange>true</Direct3DColorRange>
  3531. </LightColor>
  3532. <Attenuation>
  3533. <Constant>
  3534. <Value>1.0</Value>
  3535. </Constant>
  3536. <Linear>
  3537. <Value>0.05</Value>
  3538. </Linear>
  3539. <Quadratic>
  3540. <Value>0.05</Value>
  3541. </Quadratic>
  3542. </Attenuation>
  3543. <Umbra>
  3544. <Value>1.5707963267948966</Value>
  3545. </Umbra>
  3546. <Penumbra>
  3547. <Value>1.5707963267948966</Value>
  3548. </Penumbra>
  3549. <SpotExponent>0.0</SpotExponent>
  3550. <DiffuseLight>
  3551. <Color>
  3552. <X>
  3553. <Value>1</Value>
  3554. </X>
  3555. <Y>
  3556. <Value>1</Value>
  3557. </Y>
  3558. <Z>
  3559. <Value>1</Value>
  3560. </Z>
  3561. </Color>
  3562. <Offset>
  3563. </Offset>
  3564. <Multipliers>
  3565. <X>
  3566. <Value>1</Value>
  3567. </X>
  3568. <Y>
  3569. <Value>1</Value>
  3570. </Y>
  3571. <Z>
  3572. <Value>1</Value>
  3573. </Z>
  3574. </Multipliers>
  3575. <Direct3DColorRange>true</Direct3DColorRange>
  3576. </DiffuseLight>
  3577. <SpecularLight>
  3578. <Color>
  3579. <X>
  3580. <Value>0.5</Value>
  3581. </X>
  3582. <Y>
  3583. <Value>0.5</Value>
  3584. </Y>
  3585. <Z>
  3586. <Value>0.5</Value>
  3587. </Z>
  3588. </Color>
  3589. <Offset>
  3590. </Offset>
  3591. <Multipliers>
  3592. <X>
  3593. <Value>1</Value>
  3594. </X>
  3595. <Y>
  3596. <Value>1</Value>
  3597. </Y>
  3598. <Z>
  3599. <Value>1</Value>
  3600. </Z>
  3601. </Multipliers>
  3602. <Direct3DColorRange>true</Direct3DColorRange>
  3603. </SpecularLight>
  3604. <AmbientOn>false</AmbientOn>
  3605. <DiffuseOn>true</DiffuseOn>
  3606. <SpecularOn>true</SpecularOn>
  3607. </Light>
  3608. <Camera>
  3609. <ShowReferenceFrame>false</ShowReferenceFrame>
  3610. <Name>Camera Looking at Origin</Name>
  3611. <Position>
  3612. <X>
  3613. <Value>3.45165288156629</Value>
  3614. </X>
  3615. <Y>
  3616. <Value>0.132202570606362</Value>
  3617. </Y>
  3618. <Z>
  3619. <Value>1.10375172903332</Value>
  3620. </Z>
  3621. </Position>
  3622. <Orientation>
  3623. <ZAxis>
  3624. <X>
  3625. <Value>-0.951853185182919</Value>
  3626. </X>
  3627. <Y>
  3628. <Value>-0.0364571532071126</Value>
  3629. </Y>
  3630. <Z>
  3631. <Value>-0.304378694781954</Value>
  3632. </Z>
  3633. </ZAxis>
  3634. <YAxis>
  3635. <X>
  3636. <Value>-0.304155680683107</Value>
  3637. </X>
  3638. <Y>
  3639. <Value>-0.0116495384184135</Value>
  3640. </Y>
  3641. <Z>
  3642. <Value>0.952551106325972</Value>
  3643. </Z>
  3644. </YAxis>
  3645. <OrientationType>Direct3D</OrientationType>
  3646. </Orientation>
  3647. <LockX>false</LockX>
  3648. <LockY>false</LockY>
  3649. <LockZ>false</LockZ>
  3650. <LockXPitch>false</LockXPitch>
  3651. <LockYYaw>false</LockYYaw>
  3652. <LockZRoll>false</LockZRoll>
  3653. <Childs>
  3654. </Childs>
  3655. <FrontPlane>0.01</FrontPlane>
  3656. <BackPlane>100.0</BackPlane>
  3657. <AutoFrontBack>true</AutoFrontBack>
  3658. <Field>0.003926990816987242</Field>
  3659. <Fieldy>45.0</Fieldy>
  3660. <PlaneLeft>-10.0</PlaneLeft>
  3661. <PlaneRight>10.0</PlaneRight>
  3662. <PlaneTop>10.0</PlaneTop>
  3663. <PlaneBottom>-10.0</PlaneBottom>
  3664. <UseLookatPosition>true</UseLookatPosition>
  3665. <LookatPosition>
  3666. <X>
  3667. <Value>-9.99200722162641e-016</Value>
  3668. </X>
  3669. <Y>
  3670. <Value>1.76247905159244e-015</Value>
  3671. </Y>
  3672. <Z>
  3673. <Value>-3.05678199886544e-015</Value>
  3674. </Z>
  3675. </LookatPosition>
  3676. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  3677. <LookUpVector>
  3678. <Z>
  3679. <Value>1</Value>
  3680. </Z>
  3681. </LookUpVector>
  3682. <RightHand>true</RightHand>
  3683. <Perspective>true</Perspective>
  3684. <IsSelectedCamera>true</IsSelectedCamera>
  3685. </Camera>
  3686. <Camera>
  3687. <ShowReferenceFrame>false</ShowReferenceFrame>
  3688. <Name>Front(XY)-Camera</Name>
  3689. <Position>
  3690. <Z>
  3691. <Value>10</Value>
  3692. </Z>
  3693. </Position>
  3694. <Orientation>
  3695. <ZAxis>
  3696. <Z>
  3697. <Value>-1</Value>
  3698. </Z>
  3699. </ZAxis>
  3700. <YAxis>
  3701. <Y>
  3702. <Value>1</Value>
  3703. </Y>
  3704. </YAxis>
  3705. <OrientationType>Direct3D</OrientationType>
  3706. </Orientation>
  3707. <LockX>false</LockX>
  3708. <LockY>false</LockY>
  3709. <LockZ>false</LockZ>
  3710. <LockXPitch>false</LockXPitch>
  3711. <LockYYaw>false</LockYYaw>
  3712. <LockZRoll>false</LockZRoll>
  3713. <Childs>
  3714. </Childs>
  3715. <FrontPlane>0.01</FrontPlane>
  3716. <BackPlane>100.0</BackPlane>
  3717. <AutoFrontBack>true</AutoFrontBack>
  3718. <Field>9.999999999999998</Field>
  3719. <Fieldy>45.0</Fieldy>
  3720. <PlaneLeft>-9.999999999999998</PlaneLeft>
  3721. <PlaneRight>9.999999999999998</PlaneRight>
  3722. <PlaneTop>9.999999999999998</PlaneTop>
  3723. <PlaneBottom>-9.999999999999998</PlaneBottom>
  3724. <UseLookatPosition>true</UseLookatPosition>
  3725. <LookatPosition>
  3726. </LookatPosition>
  3727. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  3728. <LookUpVector>
  3729. <Y>
  3730. <Value>1</Value>
  3731. </Y>
  3732. </LookUpVector>
  3733. <RightHand>true</RightHand>
  3734. <Perspective>false</Perspective>
  3735. <IsSelectedCamera>false</IsSelectedCamera>
  3736. </Camera>
  3737. <Camera>
  3738. <ShowReferenceFrame>false</ShowReferenceFrame>
  3739. <Name>Side(YZ)-Camera</Name>
  3740. <Position>
  3741. <X>
  3742. <Value>10</Value>
  3743. </X>
  3744. </Position>
  3745. <Orientation>
  3746. <ZAxis>
  3747. <X>
  3748. <Value>-1</Value>
  3749. </X>
  3750. </ZAxis>
  3751. <YAxis>
  3752. <Z>
  3753. <Value>1</Value>
  3754. </Z>
  3755. </YAxis>
  3756. <OrientationType>Direct3D</OrientationType>
  3757. </Orientation>
  3758. <LockX>false</LockX>
  3759. <LockY>false</LockY>
  3760. <LockZ>false</LockZ>
  3761. <LockXPitch>false</LockXPitch>
  3762. <LockYYaw>false</LockYYaw>
  3763. <LockZRoll>false</LockZRoll>
  3764. <Childs>
  3765. </Childs>
  3766. <FrontPlane>0.01</FrontPlane>
  3767. <BackPlane>100.0</BackPlane>
  3768. <AutoFrontBack>true</AutoFrontBack>
  3769. <Field>9.999999999999998</Field>
  3770. <Fieldy>45.0</Fieldy>
  3771. <PlaneLeft>-9.999999999999998</PlaneLeft>
  3772. <PlaneRight>9.999999999999998</PlaneRight>
  3773. <PlaneTop>9.999999999999998</PlaneTop>
  3774. <PlaneBottom>-9.999999999999998</PlaneBottom>
  3775. <UseLookatPosition>true</UseLookatPosition>
  3776. <LookatPosition>
  3777. </LookatPosition>
  3778. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  3779. <LookUpVector>
  3780. <Z>
  3781. <Value>1</Value>
  3782. </Z>
  3783. </LookUpVector>
  3784. <RightHand>true</RightHand>
  3785. <Perspective>false</Perspective>
  3786. <IsSelectedCamera>false</IsSelectedCamera>
  3787. </Camera>
  3788. <Camera>
  3789. <ShowReferenceFrame>false</ShowReferenceFrame>
  3790. <Name>Top(XZ)-Camera</Name>
  3791. <Position>
  3792. <Y>
  3793. <Value>10</Value>
  3794. </Y>
  3795. </Position>
  3796. <Orientation>
  3797. <ZAxis>
  3798. <Y>
  3799. <Value>-1</Value>
  3800. </Y>
  3801. </ZAxis>
  3802. <YAxis>
  3803. <X>
  3804. <Value>1</Value>
  3805. </X>
  3806. </YAxis>
  3807. <OrientationType>Direct3D</OrientationType>
  3808. </Orientation>
  3809. <LockX>false</LockX>
  3810. <LockY>false</LockY>
  3811. <LockZ>false</LockZ>
  3812. <LockXPitch>false</LockXPitch>
  3813. <LockYYaw>false</LockYYaw>
  3814. <LockZRoll>false</LockZRoll>
  3815. <Childs>
  3816. </Childs>
  3817. <FrontPlane>0.01</FrontPlane>
  3818. <BackPlane>100.0</BackPlane>
  3819. <AutoFrontBack>true</AutoFrontBack>
  3820. <Field>9.999999999999998</Field>
  3821. <Fieldy>45.0</Fieldy>
  3822. <PlaneLeft>-9.999999999999998</PlaneLeft>
  3823. <PlaneRight>9.999999999999998</PlaneRight>
  3824. <PlaneTop>9.999999999999998</PlaneTop>
  3825. <PlaneBottom>-9.999999999999998</PlaneBottom>
  3826. <UseLookatPosition>true</UseLookatPosition>
  3827. <LookatPosition>
  3828. </LookatPosition>
  3829. <UseAlwaysLookUp>true</UseAlwaysLookUp>
  3830. <LookUpVector>
  3831. <X>
  3832. <Value>1</Value>
  3833. </X>
  3834. </LookUpVector>
  3835. <RightHand>true</RightHand>
  3836. <Perspective>false</Perspective>
  3837. <IsSelectedCamera>false</IsSelectedCamera>
  3838. </Camera>
  3839. </Childs>
  3840. </Frame>
  3841. <Frame>
  3842. <ScaleValue>
  3843. <X>
  3844. <Value>1</Value>
  3845. </X>
  3846. <Y>
  3847. <Value>1</Value>
  3848. </Y>
  3849. <Z>
  3850. <Value>1</Value>
  3851. </Z>
  3852. </ScaleValue>
  3853. <ShowReferenceFrame>false</ShowReferenceFrame>
  3854. <Name>Scenery</Name>
  3855. <Position>
  3856. </Position>
  3857. <Orientation>
  3858. <Angles>
  3859. </Angles>
  3860. <OrientationType>Bryant</OrientationType>
  3861. </Orientation>
  3862. <LockX>false</LockX>
  3863. <LockY>false</LockY>
  3864. <LockZ>false</LockZ>
  3865. <LockXPitch>false</LockXPitch>
  3866. <LockYYaw>false</LockYYaw>
  3867. <LockZRoll>false</LockZRoll>
  3868. <Childs>
  3869. <Frame>
  3870. <ScaleValue>
  3871. <X>
  3872. <Value>10</Value>
  3873. </X>
  3874. <Y>
  3875. <Value>10</Value>
  3876. </Y>
  3877. <Z>
  3878. <Value>10</Value>
  3879. </Z>
  3880. </ScaleValue>
  3881. <ShowReferenceFrame>false</ShowReferenceFrame>
  3882. <Name>Reference Frame</Name>
  3883. <Position>
  3884. </Position>
  3885. <Orientation>
  3886. <Angles>
  3887. </Angles>
  3888. <OrientationType>Bryant</OrientationType>
  3889. </Orientation>
  3890. <LockX>false</LockX>
  3891. <LockY>false</LockY>
  3892. <LockZ>false</LockZ>
  3893. <LockXPitch>false</LockXPitch>
  3894. <LockYYaw>false</LockYYaw>
  3895. <LockZRoll>false</LockZRoll>
  3896. <Childs>
  3897. <Cube>
  3898. <Center>Center</Center>
  3899. <RibLength>1.0</RibLength>
  3900. <ShowInnerSide>true</ShowInnerSide>
  3901. <Accuracy>4</Accuracy>
  3902. <ScaleValue>
  3903. <X>
  3904. <VariableName>Submodel3\dimension[1]</VariableName>
  3905. <Value>0.005</Value>
  3906. </X>
  3907. <Y>
  3908. <VariableName>Submodel3\dimension[2]</VariableName>
  3909. <Value>0.065</Value>
  3910. </Y>
  3911. <Z>
  3912. <VariableName>Submodel3\dimension[3]</VariableName>
  3913. <Value>0.01</Value>
  3914. </Z>
  3915. </ScaleValue>
  3916. <OverrideColor>true</OverrideColor>
  3917. <MeshColor>
  3918. <X>
  3919. <Value>1</Value>
  3920. </X>
  3921. <Y>
  3922. <Value>1</Value>
  3923. </Y>
  3924. <Z>
  3925. <Value>1</Value>
  3926. </Z>
  3927. </MeshColor>
  3928. <Alpha>1.0</Alpha>
  3929. <MeshColorMultipliers>
  3930. <X>
  3931. <Value>1</Value>
  3932. </X>
  3933. <Y>
  3934. <Value>1</Value>
  3935. </Y>
  3936. <Z>
  3937. <Value>1</Value>
  3938. </Z>
  3939. </MeshColorMultipliers>
  3940. <MeshColorOffsets>
  3941. </MeshColorOffsets>
  3942. <Direct3DColorRange>true</Direct3DColorRange>
  3943. <SpecularColor>
  3944. <X>
  3945. <Value>0.498039215686275</Value>
  3946. </X>
  3947. <Y>
  3948. <Value>0.498039215686275</Value>
  3949. </Y>
  3950. <Z>
  3951. <Value>0.498039215686275</Value>
  3952. </Z>
  3953. </SpecularColor>
  3954. <EmissiveColor>
  3955. </EmissiveColor>
  3956. <ShininessPower>
  3957. <Value>14.298713684082</Value>
  3958. </ShininessPower>
  3959. <OverrideQuality>false</OverrideQuality>
  3960. <ShowReferenceFrame>false</ShowReferenceFrame>
  3961. <Name>Block</Name>
  3962. <Position>
  3963. <X>
  3964. <VariableName>Submodel3\body_position[1]</VariableName>
  3965. <Value>0.0</Value>
  3966. </X>
  3967. <Y>
  3968. <VariableName>Submodel3\body_position[2]</VariableName>
  3969. <Value>-0.009158353632383561</Value>
  3970. </Y>
  3971. <Z>
  3972. <VariableName>Submodel3\body_position[3]</VariableName>
  3973. <Value>0.03118053280824738</Value>
  3974. </Z>
  3975. </Position>
  3976. <Orientation>
  3977. <Angles>
  3978. <X>
  3979. <VariableName>Submodel3\body_angle[1]</VariableName>
  3980. <Value>1.8564889888314844</Value>
  3981. </X>
  3982. <Y>
  3983. <VariableName>Submodel3\body_angle[2]</VariableName>
  3984. <Value>0.0</Value>
  3985. </Y>
  3986. <Z>
  3987. <VariableName>Submodel3\body_angle[3]</VariableName>
  3988. <Value>0.0</Value>
  3989. </Z>
  3990. </Angles>
  3991. <OrientationType>Euler</OrientationType>
  3992. </Orientation>
  3993. <LockX>false</LockX>
  3994. <LockY>false</LockY>
  3995. <LockZ>false</LockZ>
  3996. <LockXPitch>false</LockXPitch>
  3997. <LockYYaw>false</LockYYaw>
  3998. <LockZRoll>false</LockZRoll>
  3999. <Childs>
  4000. </Childs>
  4001. </Cube>
  4002. <Cube>
  4003. <Center>Center</Center>
  4004. <RibLength>1.0</RibLength>
  4005. <ShowInnerSide>true</ShowInnerSide>
  4006. <Accuracy>4</Accuracy>
  4007. <ScaleValue>
  4008. <X>
  4009. <VariableName>Submodel4\dimension[1]</VariableName>
  4010. <Value>0.005</Value>
  4011. </X>
  4012. <Y>
  4013. <VariableName>Submodel4\dimension[2]</VariableName>
  4014. <Value>0.05</Value>
  4015. </Y>
  4016. <Z>
  4017. <VariableName>Submodel4\dimension[3]</VariableName>
  4018. <Value>0.01</Value>
  4019. </Z>
  4020. </ScaleValue>
  4021. <OverrideColor>true</OverrideColor>
  4022. <MeshColor>
  4023. <X>
  4024. <Value>1</Value>
  4025. </X>
  4026. <Y>
  4027. <Value>1</Value>
  4028. </Y>
  4029. <Z>
  4030. <Value>1</Value>
  4031. </Z>
  4032. </MeshColor>
  4033. <Alpha>1.0</Alpha>
  4034. <MeshColorMultipliers>
  4035. <X>
  4036. <Value>1</Value>
  4037. </X>
  4038. <Y>
  4039. <Value>1</Value>
  4040. </Y>
  4041. <Z>
  4042. <Value>1</Value>
  4043. </Z>
  4044. </MeshColorMultipliers>
  4045. <MeshColorOffsets>
  4046. </MeshColorOffsets>
  4047. <Direct3DColorRange>true</Direct3DColorRange>
  4048. <SpecularColor>
  4049. <X>
  4050. <Value>0.5</Value>
  4051. </X>
  4052. <Y>
  4053. <Value>0.5</Value>
  4054. </Y>
  4055. <Z>
  4056. <Value>0.5</Value>
  4057. </Z>
  4058. </SpecularColor>
  4059. <EmissiveColor>
  4060. </EmissiveColor>
  4061. <ShininessPower>
  4062. <Value>15</Value>
  4063. </ShininessPower>
  4064. <OverrideQuality>false</OverrideQuality>
  4065. <ShowReferenceFrame>false</ShowReferenceFrame>
  4066. <Name>Block</Name>
  4067. <Position>
  4068. <X>
  4069. <VariableName>Submodel4\body_position[1]</VariableName>
  4070. <Value>0.0</Value>
  4071. </X>
  4072. <Y>
  4073. <VariableName>Submodel4\body_position[2]</VariableName>
  4074. <Value>0.0013903741642251554</Value>
  4075. </Y>
  4076. <Z>
  4077. <VariableName>Submodel4\body_position[3]</VariableName>
  4078. <Value>0.07774345829579168</Value>
  4079. </Z>
  4080. </Position>
  4081. <Orientation>
  4082. <Angles>
  4083. <X>
  4084. <VariableName>Submodel4\body_angle[1]</VariableName>
  4085. <Value>0.66277054304191</Value>
  4086. </X>
  4087. <Y>
  4088. <VariableName>Submodel4\body_angle[2]</VariableName>
  4089. <Value>0.0</Value>
  4090. </Y>
  4091. <Z>
  4092. <VariableName>Submodel4\body_angle[3]</VariableName>
  4093. <Value>0.0</Value>
  4094. </Z>
  4095. </Angles>
  4096. <OrientationType>Euler</OrientationType>
  4097. </Orientation>
  4098. <LockX>false</LockX>
  4099. <LockY>false</LockY>
  4100. <LockZ>false</LockZ>
  4101. <LockXPitch>false</LockXPitch>
  4102. <LockYYaw>false</LockYYaw>
  4103. <LockZRoll>false</LockZRoll>
  4104. <Childs>
  4105. </Childs>
  4106. </Cube>
  4107. </Childs>
  4108. </Frame>
  4109. <Frame>
  4110. <ScaleValue>
  4111. <X>
  4112. <Value>10</Value>
  4113. </X>
  4114. <Y>
  4115. <Value>10</Value>
  4116. </Y>
  4117. <Z>
  4118. <Value>10</Value>
  4119. </Z>
  4120. </ScaleValue>
  4121. <ShowReferenceFrame>false</ShowReferenceFrame>
  4122. <Name>Reference Frame</Name>
  4123. <Position>
  4124. <X>
  4125. <Value>0.5</Value>
  4126. </X>
  4127. </Position>
  4128. <Orientation>
  4129. <Angles>
  4130. </Angles>
  4131. <OrientationType>Bryant</OrientationType>
  4132. </Orientation>
  4133. <LockX>false</LockX>
  4134. <LockY>false</LockY>
  4135. <LockZ>false</LockZ>
  4136. <LockXPitch>false</LockXPitch>
  4137. <LockYYaw>false</LockYYaw>
  4138. <LockZRoll>false</LockZRoll>
  4139. <Childs>
  4140. <Cube>
  4141. <Center>Center</Center>
  4142. <RibLength>1.0</RibLength>
  4143. <ShowInnerSide>true</ShowInnerSide>
  4144. <Accuracy>4</Accuracy>
  4145. <ScaleValue>
  4146. <X>
  4147. <VariableName>Submodel3\dimension[1]</VariableName>
  4148. <Value>0.005</Value>
  4149. </X>
  4150. <Y>
  4151. <VariableName>Submodel3\dimension[2]</VariableName>
  4152. <Value>0.065</Value>
  4153. </Y>
  4154. <Z>
  4155. <VariableName>Submodel3\dimension[3]</VariableName>
  4156. <Value>0.01</Value>
  4157. </Z>
  4158. </ScaleValue>
  4159. <OverrideColor>true</OverrideColor>
  4160. <MeshColor>
  4161. <X>
  4162. <Value>1</Value>
  4163. </X>
  4164. <Y>
  4165. <Value>1</Value>
  4166. </Y>
  4167. <Z>
  4168. <Value>1</Value>
  4169. </Z>
  4170. </MeshColor>
  4171. <Alpha>1.0</Alpha>
  4172. <MeshColorMultipliers>
  4173. <X>
  4174. <Value>1</Value>
  4175. </X>
  4176. <Y>
  4177. <Value>1</Value>
  4178. </Y>
  4179. <Z>
  4180. <Value>1</Value>
  4181. </Z>
  4182. </MeshColorMultipliers>
  4183. <MeshColorOffsets>
  4184. </MeshColorOffsets>
  4185. <Direct3DColorRange>true</Direct3DColorRange>
  4186. <SpecularColor>
  4187. <X>
  4188. <Value>0.498039215686275</Value>
  4189. </X>
  4190. <Y>
  4191. <Value>0.498039215686275</Value>
  4192. </Y>
  4193. <Z>
  4194. <Value>0.498039215686275</Value>
  4195. </Z>
  4196. </SpecularColor>
  4197. <EmissiveColor>
  4198. </EmissiveColor>
  4199. <ShininessPower>
  4200. <Value>14.298713684082</Value>
  4201. </ShininessPower>
  4202. <OverrideQuality>false</OverrideQuality>
  4203. <ShowReferenceFrame>false</ShowReferenceFrame>
  4204. <Name>Block</Name>
  4205. <Position>
  4206. <X>
  4207. <VariableName>new_joint1\position[1]</VariableName>
  4208. <Value>0.0</Value>
  4209. </X>
  4210. <Y>
  4211. <VariableName>new_joint1\position[2]</VariableName>
  4212. <Value>-0.013912384738414135</Value>
  4213. </Y>
  4214. <Z>
  4215. <VariableName>new_joint1\position[3]</VariableName>
  4216. <Value>0.03060231153051999</Value>
  4217. </Z>
  4218. </Position>
  4219. <Orientation>
  4220. <ZAxis>
  4221. <X>
  4222. <VariableName>new_joint1\R[1,3]</VariableName>
  4223. <Value>0.0</Value>
  4224. </X>
  4225. <Y>
  4226. <VariableName>new_joint1\R[2,3]</VariableName>
  4227. <Value>-0.906373184815434</Value>
  4228. </Y>
  4229. <Z>
  4230. <VariableName>new_joint1\R[3,3]</VariableName>
  4231. <Value>-0.4224779874118024</Value>
  4232. </Z>
  4233. </ZAxis>
  4234. <YAxis>
  4235. <X>
  4236. <VariableName>new_joint1\R[1,2]</VariableName>
  4237. <Value>0.0</Value>
  4238. </X>
  4239. <Y>
  4240. <VariableName>new_joint1\R[2,2]</VariableName>
  4241. <Value>-0.4224779874118024</Value>
  4242. </Y>
  4243. <Z>
  4244. <VariableName>new_joint1\R[3,2]</VariableName>
  4245. <Value>0.906373184815434</Value>
  4246. </Z>
  4247. </YAxis>
  4248. <OrientationType>Matrix</OrientationType>
  4249. </Orientation>
  4250. <LockX>false</LockX>
  4251. <LockY>false</LockY>
  4252. <LockZ>false</LockZ>
  4253. <LockXPitch>false</LockXPitch>
  4254. <LockYYaw>false</LockYYaw>
  4255. <LockZRoll>false</LockZRoll>
  4256. <Childs>
  4257. </Childs>
  4258. </Cube>
  4259. <Cube>
  4260. <Center>Center</Center>
  4261. <RibLength>1.0</RibLength>
  4262. <ShowInnerSide>true</ShowInnerSide>
  4263. <Accuracy>4</Accuracy>
  4264. <ScaleValue>
  4265. <X>
  4266. <VariableName>Submodel4\dimension[1]</VariableName>
  4267. <Value>0.005</Value>
  4268. </X>
  4269. <Y>
  4270. <VariableName>Submodel4\dimension[2]</VariableName>
  4271. <Value>0.05</Value>
  4272. </Y>
  4273. <Z>
  4274. <VariableName>Submodel4\dimension[3]</VariableName>
  4275. <Value>0.01</Value>
  4276. </Z>
  4277. </ScaleValue>
  4278. <OverrideColor>true</OverrideColor>
  4279. <MeshColor>
  4280. <X>
  4281. <Value>1</Value>
  4282. </X>
  4283. <Y>
  4284. <Value>1</Value>
  4285. </Y>
  4286. <Z>
  4287. <Value>1</Value>
  4288. </Z>
  4289. </MeshColor>
  4290. <Alpha>1.0</Alpha>
  4291. <MeshColorMultipliers>
  4292. <X>
  4293. <Value>1</Value>
  4294. </X>
  4295. <Y>
  4296. <Value>1</Value>
  4297. </Y>
  4298. <Z>
  4299. <Value>1</Value>
  4300. </Z>
  4301. </MeshColorMultipliers>
  4302. <MeshColorOffsets>
  4303. </MeshColorOffsets>
  4304. <Direct3DColorRange>true</Direct3DColorRange>
  4305. <SpecularColor>
  4306. <X>
  4307. <Value>0.5</Value>
  4308. </X>
  4309. <Y>
  4310. <Value>0.5</Value>
  4311. </Y>
  4312. <Z>
  4313. <Value>0.5</Value>
  4314. </Z>
  4315. </SpecularColor>
  4316. <EmissiveColor>
  4317. </EmissiveColor>
  4318. <ShininessPower>
  4319. <Value>15</Value>
  4320. </ShininessPower>
  4321. <OverrideQuality>false</OverrideQuality>
  4322. <ShowReferenceFrame>false</ShowReferenceFrame>
  4323. <Name>Block</Name>
  4324. <Position>
  4325. <X>
  4326. <VariableName>new_joint2\position[1]</VariableName>
  4327. <Value>0.0</Value>
  4328. </X>
  4329. <Y>
  4330. <VariableName>new_joint2\position[2]</VariableName>
  4331. <Value>-0.007082947566976128</Value>
  4332. </Y>
  4333. <Z>
  4334. <VariableName>new_joint2\position[3]</VariableName>
  4335. <Value>0.0476258741006878</Value>
  4336. </Z>
  4337. </Position>
  4338. <Orientation>
  4339. <ZAxis>
  4340. <X>
  4341. <VariableName>new_joint2\R[1,3]</VariableName>
  4342. <Value>0.0</Value>
  4343. </X>
  4344. <Y>
  4345. <VariableName>new_joint2\R[2,3]</VariableName>
  4346. <Value>0.5291132430096096</Value>
  4347. </Y>
  4348. <Z>
  4349. <VariableName>new_joint2\R[3,3]</VariableName>
  4350. <Value>0.8485512218315721</Value>
  4351. </Z>
  4352. </ZAxis>
  4353. <YAxis>
  4354. <X>
  4355. <VariableName>new_joint2\R[1,2]</VariableName>
  4356. <Value>0.0</Value>
  4357. </X>
  4358. <Y>
  4359. <VariableName>new_joint2\R[2,2]</VariableName>
  4360. <Value>0.8485512218315721</Value>
  4361. </Y>
  4362. <Z>
  4363. <VariableName>new_joint2\R[3,2]</VariableName>
  4364. <Value>-0.5291132430096096</Value>
  4365. </Z>
  4366. </YAxis>
  4367. <OrientationType>Matrix</OrientationType>
  4368. </Orientation>
  4369. <LockX>false</LockX>
  4370. <LockY>false</LockY>
  4371. <LockZ>false</LockZ>
  4372. <LockXPitch>false</LockXPitch>
  4373. <LockYYaw>false</LockYYaw>
  4374. <LockZRoll>false</LockZRoll>
  4375. <Childs>
  4376. </Childs>
  4377. </Cube>
  4378. </Childs>
  4379. </Frame>
  4380. </Childs>
  4381. </Frame>
  4382. </Childs>
  4383. </Frame>
  4384. </MainFrame>
  4385. </Plot>
  4386. <Plot>
  4387. <PlotType>GraphPlot</PlotType>
  4388. <BasePlot>
  4389. <PlotId>2</PlotId>
  4390. <UseWindowsBGColor>false</UseWindowsBGColor>
  4391. <BGColor>16777215</BGColor>
  4392. <PlotIsVisible>true</PlotIsVisible>
  4393. </BasePlot>
  4394. <Grid>
  4395. <DrawGrid>true</DrawGrid>
  4396. <GridColor>15780518</GridColor>
  4397. <GridBorderLineColor>12624260</GridBorderLineColor>
  4398. <GridZeroLineColor>0</GridZeroLineColor>
  4399. <XTicks>10</XTicks>
  4400. <YTicks>10</YTicks>
  4401. <ZTicks>10</ZTicks>
  4402. <Use3DLook>false</Use3DLook>
  4403. </Grid>
  4404. <PlotBGColor>16777215</PlotBGColor>
  4405. <ShowPlotTitle>true</ShowPlotTitle>
  4406. <TitlePosition>1</TitlePosition>
  4407. <PlotTitle>model(2)</PlotTitle>
  4408. <ShowXValues>true</ShowXValues>
  4409. <Fonts>
  4410. <TitleFont>
  4411. <Name>Arial</Name>
  4412. <Height>12</Height>
  4413. <PitchFamily>34</PitchFamily>
  4414. <Weight>400</Weight>
  4415. <Italic>0</Italic>
  4416. <UnderLine>0</UnderLine>
  4417. <StrikeOut>0</StrikeOut>
  4418. <Color>0</Color>
  4419. </TitleFont>
  4420. <LabelFont>
  4421. <Name>Arial</Name>
  4422. <Height>12</Height>
  4423. <PitchFamily>34</PitchFamily>
  4424. <Weight>400</Weight>
  4425. <Italic>0</Italic>
  4426. <UnderLine>0</UnderLine>
  4427. <StrikeOut>0</StrikeOut>
  4428. <Color>0</Color>
  4429. </LabelFont>
  4430. <ValuesFont>
  4431. <Name>Arial</Name>
  4432. <Height>10</Height>
  4433. <PitchFamily>34</PitchFamily>
  4434. <Weight>400</Weight>
  4435. <Italic>0</Italic>
  4436. <UnderLine>0</UnderLine>
  4437. <StrikeOut>0</StrikeOut>
  4438. <Color>0</Color>
  4439. </ValuesFont>
  4440. <LegendFont>
  4441. <Name>Arial</Name>
  4442. <Height>12</Height>
  4443. <PitchFamily>34</PitchFamily>
  4444. <Weight>400</Weight>
  4445. <Italic>0</Italic>
  4446. <UnderLine>0</UnderLine>
  4447. <StrikeOut>0</StrikeOut>
  4448. <Color>0</Color>
  4449. </LegendFont>
  4450. </Fonts>
  4451. <SharedXAxis>true</SharedXAxis>
  4452. <SharedYAxis>true</SharedYAxis>
  4453. <SharedZAxis>false</SharedZAxis>
  4454. <XAxes>
  4455. <Axis>
  4456. <Minimum>-0.04000000000000001</Minimum>
  4457. <Maximum>0.15999999999999998</Maximum>
  4458. <Linear>true</Linear>
  4459. <Scaling>1</Scaling>
  4460. <Label>position[2]</Label>
  4461. </Axis>
  4462. </XAxes>
  4463. <YAxes>
  4464. <Axis>
  4465. <Minimum>-0.010000000000000009</Minimum>
  4466. <Maximum>0.09</Maximum>
  4467. <Linear>true</Linear>
  4468. <Scaling>1</Scaling>
  4469. <Label>Simulated path</Label>
  4470. </Axis>
  4471. <Axis>
  4472. <Minimum>-0.01</Minimum>
  4473. <Maximum>0.09</Maximum>
  4474. <Linear>true</Linear>
  4475. <Scaling>1</Scaling>
  4476. <Label>Given Path</Label>
  4477. </Axis>
  4478. </YAxes>
  4479. <ZAxes>
  4480. </ZAxes>
  4481. <Curves>
  4482. <Curve>
  4483. <LineColor>3355111</LineColor>
  4484. <LineStyle>1</LineStyle>
  4485. <TickColor>3355111</TickColor>
  4486. <TickStyle>0</TickStyle>
  4487. <CurveVisible>true</CurveVisible>
  4488. <PixelThresshold>1</PixelThresshold>
  4489. <LineThickness>1</LineThickness>
  4490. <LineOrder>1</LineOrder>
  4491. <ShowYValues>true</ShowYValues>
  4492. <XCurveData>
  4493. <ShowUnit>true</ShowUnit>
  4494. <VarName>new_joint3\position[2]</VarName>
  4495. </XCurveData>
  4496. <YCurveData>
  4497. <ShowUnit>true</ShowUnit>
  4498. <VarName>new_joint3\position[3]</VarName>
  4499. </YCurveData>
  4500. </Curve>
  4501. <Curve>
  4502. <LineColor>6076255</LineColor>
  4503. <LineStyle>1</LineStyle>
  4504. <TickColor>6076255</TickColor>
  4505. <TickStyle>0</TickStyle>
  4506. <CurveVisible>true</CurveVisible>
  4507. <PixelThresshold>1</PixelThresshold>
  4508. <LineThickness>1</LineThickness>
  4509. <LineOrder>1</LineOrder>
  4510. <ShowYValues>true</ShowYValues>
  4511. <XCurveData>
  4512. <ShowUnit>true</ShowUnit>
  4513. <VarName>rectanglepath\output[1]</VarName>
  4514. </XCurveData>
  4515. <YCurveData>
  4516. <ShowUnit>true</ShowUnit>
  4517. <VarName>rectanglepath\output[2]</VarName>
  4518. </YCurveData>
  4519. </Curve>
  4520. </Curves>
  4521. <Legenda>
  4522. <ShowLegenda>true</ShowLegenda>
  4523. <BorderPenColor>0</BorderPenColor>
  4524. <BackgroundColor>16777215</BackgroundColor>
  4525. </Legenda>
  4526. </Plot>
  4527. <Plot>
  4528. <PlotType>GraphPlot</PlotType>
  4529. <BasePlot>
  4530. <PlotId>3</PlotId>
  4531. <UseWindowsBGColor>false</UseWindowsBGColor>
  4532. <BGColor>16777215</BGColor>
  4533. <PlotIsVisible>true</PlotIsVisible>
  4534. </BasePlot>
  4535. <Grid>
  4536. <DrawGrid>true</DrawGrid>
  4537. <GridColor>15780518</GridColor>
  4538. <GridBorderLineColor>12624260</GridBorderLineColor>
  4539. <GridZeroLineColor>0</GridZeroLineColor>
  4540. <XTicks>10</XTicks>
  4541. <YTicks>10</YTicks>
  4542. <ZTicks>10</ZTicks>
  4543. <Use3DLook>false</Use3DLook>
  4544. </Grid>
  4545. <PlotBGColor>16777215</PlotBGColor>
  4546. <ShowPlotTitle>true</ShowPlotTitle>
  4547. <TitlePosition>1</TitlePosition>
  4548. <PlotTitle>Plot</PlotTitle>
  4549. <ShowXValues>true</ShowXValues>
  4550. <Fonts>
  4551. <TitleFont>
  4552. <Name>Arial</Name>
  4553. <Height>12</Height>
  4554. <PitchFamily>34</PitchFamily>
  4555. <Weight>400</Weight>
  4556. <Italic>0</Italic>
  4557. <UnderLine>0</UnderLine>
  4558. <StrikeOut>0</StrikeOut>
  4559. <Color>0</Color>
  4560. </TitleFont>
  4561. <LabelFont>
  4562. <Name>Arial</Name>
  4563. <Height>12</Height>
  4564. <PitchFamily>34</PitchFamily>
  4565. <Weight>400</Weight>
  4566. <Italic>0</Italic>
  4567. <UnderLine>0</UnderLine>
  4568. <StrikeOut>0</StrikeOut>
  4569. <Color>0</Color>
  4570. </LabelFont>
  4571. <ValuesFont>
  4572. <Name>Arial</Name>
  4573. <Height>10</Height>
  4574. <PitchFamily>34</PitchFamily>
  4575. <Weight>400</Weight>
  4576. <Italic>0</Italic>
  4577. <UnderLine>0</UnderLine>
  4578. <StrikeOut>0</StrikeOut>
  4579. <Color>0</Color>
  4580. </ValuesFont>
  4581. <LegendFont>
  4582. <Name>Arial</Name>
  4583. <Height>12</Height>
  4584. <PitchFamily>34</PitchFamily>
  4585. <Weight>400</Weight>
  4586. <Italic>0</Italic>
  4587. <UnderLine>0</UnderLine>
  4588. <StrikeOut>0</StrikeOut>
  4589. <Color>0</Color>
  4590. </LegendFont>
  4591. </Fonts>
  4592. <SharedXAxis>true</SharedXAxis>
  4593. <SharedYAxis>true</SharedYAxis>
  4594. <SharedZAxis>false</SharedZAxis>
  4595. <XAxes>
  4596. <Axis>
  4597. <Minimum>0.0</Minimum>
  4598. <Maximum>10.0</Maximum>
  4599. <Linear>true</Linear>
  4600. <Scaling>3</Scaling>
  4601. <Label>time</Label>
  4602. </Axis>
  4603. </XAxes>
  4604. <YAxes>
  4605. <Axis>
  4606. <Minimum>-5.0</Minimum>
  4607. <Maximum>5.0</Maximum>
  4608. <Linear>true</Linear>
  4609. <Scaling>2</Scaling>
  4610. <Label>error new joint 1</Label>
  4611. </Axis>
  4612. <Axis>
  4613. <Minimum>-1885.20460252739</Minimum>
  4614. <Maximum>0.0</Maximum>
  4615. <Linear>true</Linear>
  4616. <Scaling>2</Scaling>
  4617. <Label>error new joint 2</Label>
  4618. </Axis>
  4619. </YAxes>
  4620. <ZAxes>
  4621. </ZAxes>
  4622. <Curves>
  4623. <Curve>
  4624. <LineColor>3355111</LineColor>
  4625. <LineStyle>1</LineStyle>
  4626. <TickColor>3355111</TickColor>
  4627. <TickStyle>0</TickStyle>
  4628. <CurveVisible>true</CurveVisible>
  4629. <PixelThresshold>1</PixelThresshold>
  4630. <LineThickness>1</LineThickness>
  4631. <LineOrder>1</LineOrder>
  4632. <ShowYValues>true</ShowYValues>
  4633. <XCurveData>
  4634. <ShowUnit>true</ShowUnit>
  4635. <VarName>time</VarName>
  4636. </XCurveData>
  4637. <YCurveData>
  4638. <ShowUnit>true</ShowUnit>
  4639. <VarName>PID2\error</VarName>
  4640. </YCurveData>
  4641. </Curve>
  4642. <Curve>
  4643. <LineColor>6076255</LineColor>
  4644. <LineStyle>1</LineStyle>
  4645. <TickColor>6076255</TickColor>
  4646. <TickStyle>0</TickStyle>
  4647. <CurveVisible>true</CurveVisible>
  4648. <PixelThresshold>1</PixelThresshold>
  4649. <LineThickness>1</LineThickness>
  4650. <LineOrder>1</LineOrder>
  4651. <ShowYValues>true</ShowYValues>
  4652. <XCurveData>
  4653. <ShowUnit>true</ShowUnit>
  4654. <VarName>time</VarName>
  4655. </XCurveData>
  4656. <YCurveData>
  4657. <ShowUnit>true</ShowUnit>
  4658. <VarName>PID3\error</VarName>
  4659. </YCurveData>
  4660. </Curve>
  4661. </Curves>
  4662. <Legenda>
  4663. <ShowLegenda>true</ShowLegenda>
  4664. <BorderPenColor>0</BorderPenColor>
  4665. <BackgroundColor>16777215</BackgroundColor>
  4666. </Legenda>
  4667. </Plot>
  4668. </Plots>
  4669. <PlotPanels>
  4670. <PlotPanel>
  4671. <PlotPanelId>1</PlotPanelId>
  4672. <PlotPanelVisible>true</PlotPanelVisible>
  4673. <Name>Window 1</Name>
  4674. <Tiling>0</Tiling>
  4675. <PlotIds>
  4676. <PlotId>2</PlotId>
  4677. </PlotIds>
  4678. <ToggleState>Base</ToggleState>
  4679. </PlotPanel>
  4680. <PlotPanel>
  4681. <PlotPanelId>2</PlotPanelId>
  4682. <PlotPanelVisible>true</PlotPanelVisible>
  4683. <Name>Window 2</Name>
  4684. <Tiling>0</Tiling>
  4685. <PlotIds>
  4686. <PlotId>1</PlotId>
  4687. </PlotIds>
  4688. <ToggleState>Base</ToggleState>
  4689. </PlotPanel>
  4690. <PlotPanel>
  4691. <PlotPanelId>3</PlotPanelId>
  4692. <PlotPanelVisible>true</PlotPanelVisible>
  4693. <Name>Window 3</Name>
  4694. <Tiling>0</Tiling>
  4695. <PlotIds>
  4696. <PlotId>3</PlotId>
  4697. </PlotIds>
  4698. <ToggleState>Base</ToggleState>
  4699. </PlotPanel>
  4700. </PlotPanels>
  4701. <WindowRectangles virtualDesktopWidth="5760" virtualDesktopHeight="1080">
  4702. <WindowRectangle monitor="2" left="1920" top="0" right="3840" bottom="1080" plotpanelid="1">
  4703. -0.00208333 0.00462963 1.00208 1.0037
  4704. </WindowRectangle>
  4705. <WindowRectangle monitor="1" left="-1920" top="0" right="0" bottom="1080" plotpanelid="2">
  4706. 0.138021 0.169444 0.777604 0.862963
  4707. </WindowRectangle>
  4708. <WindowRectangle monitor="1" left="-1920" top="0" right="0" bottom="1080" plotpanelid="3">
  4709. 0.526042 0.287963 0.922396 0.725926
  4710. </WindowRectangle>
  4711. </WindowRectangles>
  4712. </PlotSpecs>
  4713. <RunSpecs>
  4714. <SimulatorSettings>
  4715. <StartTime>0.0</StartTime>
  4716. <FinishTime>10.0</FinishTime>
  4717. <AllowPassFinishTime>false</AllowPassFinishTime>
  4718. <Warp>false</Warp>
  4719. <FPGonio>false</FPGonio>
  4720. <UseOutputAfterEach>false</UseOutputAfterEach>
  4721. <OutputAfterEach>0.1</OutputAfterEach>
  4722. <EventEpsilon>1.0e-6</EventEpsilon>
  4723. <AlgebraicTolerance>1.0e-7</AlgebraicTolerance>
  4724. <SteadyStateAnalysis>false</SteadyStateAnalysis>
  4725. <UpdateHoldInstructions>true</UpdateHoldInstructions>
  4726. </SimulatorSettings>
  4727. <IntegrationMethods>
  4728. <IntegrationMethod>
  4729. <Name>Euler</Name>
  4730. <StepSize>0.01</StepSize>
  4731. <AutoStepSize>false</AutoStepSize>
  4732. </IntegrationMethod>
  4733. <IntegrationMethod>
  4734. <Name>BackwardEuler</Name>
  4735. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  4736. <RelativeTolerance>1.0e-5</RelativeTolerance>
  4737. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  4738. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  4739. <StepSize>0.01</StepSize>
  4740. <Alpha>1.0</Alpha>
  4741. </IntegrationMethod>
  4742. <IntegrationMethod>
  4743. <Name>AdamsBashforth</Name>
  4744. <StepSize>0.01</StepSize>
  4745. <AutoStepSize>false</AutoStepSize>
  4746. </IntegrationMethod>
  4747. <IntegrationMethod>
  4748. <Name>RungeKutta2</Name>
  4749. <StepSize>0.01</StepSize>
  4750. <AutoStepSize>false</AutoStepSize>
  4751. </IntegrationMethod>
  4752. <IntegrationMethod>
  4753. <Name>RungeKutta4</Name>
  4754. <StepSize>0.01</StepSize>
  4755. <AutoStepSize>false</AutoStepSize>
  4756. </IntegrationMethod>
  4757. <IntegrationMethod>
  4758. <Name>RungeKutta8</Name>
  4759. <UseInitialStepSize>false</UseInitialStepSize>
  4760. <InitialStepSize>0.0</InitialStepSize>
  4761. <UseMaximumStepSize>false</UseMaximumStepSize>
  4762. <MaximumStepSize>0.0</MaximumStepSize>
  4763. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  4764. <RelativeTolerance>1.0e-6</RelativeTolerance>
  4765. <SafetyFactor>0.9</SafetyFactor>
  4766. <Factor1>0.33</Factor1>
  4767. <Factor2>6.0</Factor2>
  4768. <Beta>0.0</Beta>
  4769. <UseMaxNrSteps>false</UseMaxNrSteps>
  4770. <MaxNrSteps>100000</MaxNrSteps>
  4771. <UseStiffDetection>false</UseStiffDetection>
  4772. <MaxNrStiffnessSteps>1000</MaxNrStiffnessSteps>
  4773. </IntegrationMethod>
  4774. <IntegrationMethod>
  4775. <Name>RungeKuttaFehlberg</Name>
  4776. <UseInitialStepSize>false</UseInitialStepSize>
  4777. <InitialStepSize>0.0</InitialStepSize>
  4778. <UseMaximumStepSize>false</UseMaximumStepSize>
  4779. <MaximumStepSize>0.0</MaximumStepSize>
  4780. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  4781. <RelativeTolerance>1.0e-6</RelativeTolerance>
  4782. </IntegrationMethod>
  4783. <IntegrationMethod>
  4784. <Name>VodeAdams</Name>
  4785. <UseInitialStepSize>false</UseInitialStepSize>
  4786. <InitialStepSize>0.0</InitialStepSize>
  4787. <UseMaximumStepSize>false</UseMaximumStepSize>
  4788. <MaximumStepSize>0.0</MaximumStepSize>
  4789. <AbsoluteTolerance>1.0e-6</AbsoluteTolerance>
  4790. <RelativeTolerance>1.0e-6</RelativeTolerance>
  4791. <VodeUseBDF>true</VodeUseBDF>
  4792. <VodeUseNewton>true</VodeUseNewton>
  4793. </IntegrationMethod>
  4794. <IntegrationMethod>
  4795. <Name>BDFMethod</Name>
  4796. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  4797. <RelativeTolerance>1.0e-5</RelativeTolerance>
  4798. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  4799. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  4800. <UseInitialStepSize>false</UseInitialStepSize>
  4801. <InitialStepSize>0.0</InitialStepSize>
  4802. <UseMaximumStepSize>false</UseMaximumStepSize>
  4803. <MaximumStepSize>0.0</MaximumStepSize>
  4804. </IntegrationMethod>
  4805. <IntegrationMethod>
  4806. <Name>MeBDFiMethod</Name>
  4807. <AbsoluteTolerance>1.0e-5</AbsoluteTolerance>
  4808. <RelativeTolerance>1.0e-5</RelativeTolerance>
  4809. <AlgebraicAbsoluteTolerance>1.0e-5</AlgebraicAbsoluteTolerance>
  4810. <AlgebraicRelativeTolerance>1.0e-5</AlgebraicRelativeTolerance>
  4811. <UseInitialStepSize>false</UseInitialStepSize>
  4812. <InitialStepSize>0.0</InitialStepSize>
  4813. <UseMaximumStepSize>false</UseMaximumStepSize>
  4814. <MaximumStepSize>0.0</MaximumStepSize>
  4815. </IntegrationMethod>
  4816. <SelectedIntegrationMethod>8</SelectedIntegrationMethod>
  4817. </IntegrationMethods>
  4818. </RunSpecs>
  4819. <MultipleRun>
  4820. <NrSteps>10</NrSteps>
  4821. <CopyFromStates>false</CopyFromStates>
  4822. <JoinParameterVariation>true</JoinParameterVariation>
  4823. <ClearAfterRun>true</ClearAfterRun>
  4824. <RedrawAfterRun>false</RedrawAfterRun>
  4825. <DrawDuringSimulation>true</DrawDuringSimulation>
  4826. <ActionBeforeOptimization>0</ActionBeforeOptimization>
  4827. <CompareValue>0.0</CompareValue>
  4828. <UseCompareValue>true</UseCompareValue>
  4829. <MultipleRunType>MultipleRun</MultipleRunType>
  4830. <Minimize>true</Minimize>
  4831. <OptimizationVariable></OptimizationVariable>
  4832. <ResulVarUsage>UseEndValue</ResulVarUsage>
  4833. <Tolerance>0.001</Tolerance>
  4834. <OptimizationMethod>BroydonFletcherGoldfarbShanno</OptimizationMethod>
  4835. <MultipleRunVariables>
  4836. </MultipleRunVariables>
  4837. </MultipleRun>
  4838. <ExportData>
  4839. <WriteAsText>true</WriteAsText>
  4840. <ReadAsText>true</ReadAsText>
  4841. <WriteHeader>true</WriteHeader>
  4842. <ReadHeader>true</ReadHeader>
  4843. <ReadFilename></ReadFilename>
  4844. <WriteFilename></WriteFilename>
  4845. <DoWrite>false</DoWrite>
  4846. <ExportVariables>
  4847. </ExportVariables>
  4848. <ImportVariables>
  4849. </ImportVariables>
  4850. </ExportData>
  4851. <BreakPoints>
  4852. </BreakPoints>
  4853. </ExpData>
  4854. </Experiment>
  4855. </Experiments>
  4856. </Document>