kostepper.pd 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704
  1. #N canvas 713 126 871 626 10;
  2. #X obj 85 172 cnv 15 130 200 empty empty Status 2 8 0 14 -233017 -128992
  3. 0;
  4. #X obj 85 377 cnv 15 130 100 empty empty MANUEL 2 8 0 14 -233017 -128992
  5. 0;
  6. #X obj 220 172 cnv 15 180 305 empty empty Move 2 8 0 14 -233017 -128992
  7. 0;
  8. #X obj 65 9 r /fromOSC;
  9. #X floatatom 145 283 10 0 0 0 - - -, f 10;
  10. #X floatatom 145 311 10 0 0 0 - - -, f 10;
  11. #X floatatom 145 339 10 0 0 0 - - -, f 10;
  12. #X text 105 283 target;
  13. #X text 111 311 speed;
  14. #X text 93 339 maxspeed;
  15. #X obj 110 54 print stepper\$1;
  16. #N canvas 1 55 450 300 filter\$1 0;
  17. #X obj 60 41 t a a;
  18. #X obj 92 89 == \$1;
  19. #X obj 60 132 spigot;
  20. #X msg 92 67 \$1;
  21. #X obj 60 21 inlet;
  22. #X obj 60 153 outlet;
  23. #X connect 0 0 2 0;
  24. #X connect 0 1 3 0;
  25. #X connect 1 0 2 1;
  26. #X connect 2 0 5 0;
  27. #X connect 3 0 1 0;
  28. #X connect 4 0 0 0;
  29. #X restore 65 29 pd filter\$1;
  30. #N canvas 123 519 450 300 conversion 0;
  31. #X obj 97 9 inlet;
  32. #X obj 97 30 unpack f f f f f;
  33. #X obj 97 94 outlet;
  34. #X obj 120 134 outlet;
  35. #X obj 143 174 outlet;
  36. #X obj 166 214 outlet;
  37. #X obj 190 254 outlet;
  38. #X obj 97 75 steps2camrot;
  39. #X obj 120 115 steps2camrot;
  40. #X obj 143 155 steps2camrot;
  41. #X obj 166 195 steps2camrot;
  42. #X obj 190 235 steps2camrot;
  43. #X connect 0 0 1 0;
  44. #X connect 1 0 7 0;
  45. #X connect 1 1 8 0;
  46. #X connect 1 2 9 0;
  47. #X connect 1 3 10 0;
  48. #X connect 1 4 11 0;
  49. #X connect 7 0 2 0;
  50. #X connect 8 0 3 0;
  51. #X connect 9 0 4 0;
  52. #X connect 10 0 5 0;
  53. #X connect 11 0 6 0;
  54. #X restore 65 96 pd conversion;
  55. #X obj 65 74 route /status /onTarget;
  56. #X obj 177 382 vsl 12 60 0 2 0 0 /stepper/\$1/manualSpeed /stepper/\$1/manualSpeed
  57. speed -10 70 0 10 -262144 -1 -1 5900 1;
  58. #X obj 105 444 hradio 15 1 0 2 /stepper/\$1/manualDirection /stepper/\$1/manualDirection
  59. direction -10 22 0 10 -262144 -1 -1 0;
  60. #X obj 329 295 bng 25 250 50 0 /stepper/\$1/move/go /stepper/\$1/move/go
  61. GO 6 13 0 10 -4034 -1 -1;
  62. #X obj 285 686 list prepend add;
  63. #X obj 285 707 list trim;
  64. #X obj 281 586 ofGetPatchDirectory;
  65. #X obj 281 511 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  66. -1 -1;
  67. #X text 302 511 get the list of file names in a directory.;
  68. #X msg 282 634 symbol \$1/moves;
  69. #X symbolatom 281 607 50 0 0 0 - - -, f 50;
  70. #X obj 608 582 print;
  71. #X obj 290 664 ofGetDirectoryFileNames move;
  72. #N canvas 421 242 906 607 \$0-osc 0;
  73. #X obj 44 54 kollabs/osc_bi \$2 /stepper/\$1/driveMode;
  74. #X obj 44 164 kollabs/osc_bi \$2 /stepper/\$1/moveTo;
  75. #X obj 44 224 kollabs/osc_bi \$2 /stepper/\$1/setSpeed;
  76. #X obj 44 244 kollabs/osc_bi \$2 /stepper/\$1/setMaxSpeed;
  77. #X obj 44 264 kollabs/osc_bi \$2 /stepper/\$1/acceleration;
  78. #X obj 44 74 kollabs/osc_bi \$2 /stepper/\$1/accMode;
  79. #X obj 44 94 kollabs/osc_bi \$2 /stepper/\$1/manualDrive;
  80. #X obj 44 35 kollabs/osc_bi \$2 /stepper/\$1/updateStatus;
  81. #X obj 44 304 kollabs/osc_bi \$2 /stepper/\$1/sequences/list;
  82. #X obj 44 354 kollabs/osc_bi \$2 /stepper/\$1/pos/current;
  83. #X obj 44 374 kollabs/osc_bi \$2 /stepper/\$1/pos/current/deg;
  84. #X obj 533 37 loadbang;
  85. #X obj 533 58 f \$1;
  86. #X msg 532 79 \; /stepper/\$1/accMode 0 \; /stepper/\$1/manualDrive
  87. 0 \; /stepper/\$1/setSpeed 1 \; /stepper/\$1/setMaxSpeed 1 \; /stepper/\$1/acceleration
  88. 1;
  89. #X obj 44 124 kollabs/osc_bi \$2 /stepper/\$1/move;
  90. #X obj 44 144 kollabs/osc_bi \$2 /stepper/\$1/move/deg;
  91. #X connect 11 0 12 0;
  92. #X connect 12 0 13 0;
  93. #X restore 661 40 pd \$0-osc;
  94. #X obj 106 398 tgl 35 0 /stepper/\$1/manualDrive /stepper/\$1/manualDrive
  95. empty 17 7 0 10 -204800 -33289 -1 0 1;
  96. #X obj 345 350 tgl 15 0 /stepper/\$1/accMode empty 0/1 17 7 0 10 -262144
  97. -1 -1 0 1;
  98. #X obj 233 292 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/move /stepper/\$1/move
  99. tours 48 8 0 10 -262144 -1 -1 0 256;
  100. #X obj 165 459 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/manualSpeed /stepper/\$1/manualSpeed
  101. empty 0 -8 0 10 -262144 -1 -1 2 256;
  102. #X obj 253 371 vsl 25 60 0 2 0 0 /stepper/\$1/setMaxSpeed /stepper/\$1/setMaxSpeed
  103. speed -4 70 0 10 -262144 -1 -1 2950 1;
  104. #X obj 243 449 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/setMaxSpeed /stepper/\$1/setMaxSpeed
  105. empty 0 -8 0 10 -262144 -1 -1 1 256;
  106. #X obj 342 372 vsl 25 60 0 2 0 0 /stepper/\$1/acceleration /stepper/\$1/acceleration
  107. acc 4 70 0 10 -233017 -233017 -195568 2950 1;
  108. #X obj 333 449 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/acceleration
  109. /stepper/\$1/acceleration empty 0 -8 0 10 -233017 -233017 -195568 1
  110. 256;
  111. #X obj 434 838 cnv 15 180 100 empty empty presets 2 8 0 14 -233017
  112. -128992 0;
  113. #X obj 197 175 bng 15 250 50 0 /stepper/\$1/updateStatus /stepper/\$1/updateStatus
  114. refresh -45 8 0 10 -262144 -1 -1;
  115. #X obj 357 295 bng 25 250 50 0 /stepper/\$1/stop /stepper/\$1/stop
  116. STOP 1 14 0 10 -258113 -1 -1;
  117. #X obj 281 531 t b b;
  118. #X obj 286 765 s /stepper/\$1/sequences/list;
  119. #X msg 309 559 clear \, align 0 \, add none \, set 0;
  120. #X obj 83 127 s /stepper/\$1/pos/current;
  121. #X obj 224 229 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/move/startPos
  122. /stepper/\$1/move/startPos Position_depart 0 -8 0 12 -204800 -1 -1
  123. 0 256;
  124. #X obj 353 229 bng 15 250 50 0 /stepper/\$1/move/gotoStart /stepper/\$1/move/gotoStart
  125. goto 17 7 0 10 -204800 -1 -1;
  126. #X obj 296 229 bng 15 250 50 0 /stepper/\$1/move/setStart /stepper/\$1/move/setStart
  127. set 17 7 0 10 -262144 -1 -1;
  128. #X obj 148 241 nbx 3 14 -1e+37 1e+37 0 0 /stepper/\$1/pos/current/deg
  129. /stepper/\$1/pos/current/deg degrees -50 8 0 10 -262144 -1 -1 0 256
  130. ;
  131. #X obj 148 225 nbx 5 14 -1e+37 1e+37 0 0 /stepper/\$1/pos/current /stepper/\$1/pos/current
  132. turns -45 7 0 10 -262144 -1 -1 0 256;
  133. #X obj 233 308 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/move/deg /stepper/\$1/move/deg
  134. deg 48 8 0 10 -262144 -1 -1 0 256;
  135. #X obj 153 97 s /stepper/\$1/pos/onTarget;
  136. #X obj 301 174 cnv 25 70 25 /stepper/\$1/runningGui /stepper/\$1/runningGui
  137. idle 17 12 0 14 -233017 -195568 0;
  138. #X obj 353 122 r /stepper/\$1/accGUI;
  139. #X text 225 263 Reglages mouvement;
  140. #X obj 405 172 cnv 15 370 305 empty empty Sequence 2 8 0 14 -233017
  141. -128992 0;
  142. #X obj 637 248 bng 15 250 50 0 /stepper/\$1/writeSeq /stepper/\$1/writeSeq
  143. save 17 7 0 10 -262144 -1 -1;
  144. #X text 144 204 CURRENT;
  145. #X obj 172 824 tof/menubutton 100 25 \$0-mbS \$0-mbR 1 grey90 black
  146. grey95 black 0 \, none \, test (autre copie).move \, test.move \, test (3e copie).move
  147. \, test (4e copie).move \, test (copie).move;
  148. #X obj 183 801 r /stepper/\$1/sequences/list;
  149. #X obj 637 228 bng 15 250 50 0 /stepper/\$1/sequencer/open empty choose_sequence
  150. 17 7 0 10 -262144 -1 -1;
  151. #X obj 798 255 nbx 5 14 -1e+37 1e+37 0 0 /stepper/\$1/cue/current /stepper/\$1/cue/current
  152. empty 0 -8 0 10 -262144 -1 -1 0 256;
  153. #X obj 481 229 bng 30 250 50 0 /stepper/\$1/sequencer/go /stepper/\$1/sequencer/go
  154. GO 9 16 0 10 -204786 -1 -1;
  155. #X msg 494 538 1;
  156. #X obj 534 229 tgl 30 0 /stepper/\$1/sequencer/loop /stepper/\$1/sequencer/loop
  157. loop 32 15 0 13 -162280 -1 -1 0 1;
  158. #X obj 791 226 bng 15 250 50 0 /stepper/\$1/sequencer/load /stepper/\$1/sequencer/load
  159. reload 17 7 0 10 -262144 -1 -1;
  160. #X text 413 232 sequence;
  161. #N canvas 594 568 980 300 \$0-gui 0;
  162. #X obj 19 143 loadbang;
  163. #X obj 19 202 s /stepper/\$1/runningGui;
  164. #X msg 77 132 color 14 13 13 \, label running \, label_pos 7 12;
  165. #X msg 19 184 color 10 11 20 \, label idle \, label_pos 17 12;
  166. #X obj 19 164 r /stepper/\$1/pos/onTarget;
  167. #X obj 94 93 r /stepper/\$1/move/gotoStart;
  168. #X text 265 61 GUI COLORS;
  169. #X obj 370 107 r /stepper/\$1/accMode;
  170. #X obj 370 128 route 0 1;
  171. #X msg 370 147 color 10 10 20;
  172. #X msg 395 168 color 0 22 22;
  173. #X obj 370 201 s /stepper/\$1/accGUI;
  174. #X obj 77 113 r /stepper/\$1/move/go;
  175. #X connect 0 0 3 0;
  176. #X connect 2 0 1 0;
  177. #X connect 3 0 1 0;
  178. #X connect 4 0 3 0;
  179. #X connect 5 0 2 0;
  180. #X connect 7 0 8 0;
  181. #X connect 8 0 9 0;
  182. #X connect 8 1 10 0;
  183. #X connect 9 0 11 0;
  184. #X connect 10 0 11 0;
  185. #X connect 12 0 2 0;
  186. #X restore 661 59 pd \$0-gui;
  187. #N canvas 5 135 1010 904 \$0-sequencer 0;
  188. #X obj 463 246 text set \$1-seq;
  189. #X obj 463 187 pack s f;
  190. #X obj 508 167 r /stepper/\$1/move/startPos;
  191. #X obj 450 105 t b b b f;
  192. #X msg 467 129 1;
  193. #X obj 450 84 r /stepper/\$1/writeSeq;
  194. #X obj 439 338 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  195. -1 -1;
  196. #X msg 467 345 line 0 \, bang;
  197. #X obj 260 139 text define -k \$1-seq;
  198. #A set /stepper/1/move/startPos 0 \; \; CUE 0 \; move 1 \; setMaxSpeed
  199. 1.46 \; acceleration 0.14 \; accMode 1 \; active 1 \; \; CUE 1 \; move
  200. 0.5 \; setMaxSpeed 1.97 \; acceleration 0 \; accMode 0 \; active 1
  201. \; \; CUE 2 \; move 0.1 \; setMaxSpeed 0.19 \; acceleration 0 \; accMode
  202. 0 \; active 1 \; \; CUE 3 \; move -2 \; setMaxSpeed 1.47 \; acceleration
  203. 0.77 \; accMode 1 \; active 1 \; \;;
  204. #X obj 467 326 r /stepper/\$1/sequencer/load;
  205. #X obj 260 35 r /stepper/\$1/writeSeq;
  206. #X obj 260 56 delay 100;
  207. #X obj 260 97 savepanel;
  208. #X msg 260 77 symbol ./;
  209. #X msg 260 118 write \$1;
  210. #X obj 30 16 r /stepper/\$1/sequencer/open;
  211. #X obj 30 34 openpanel;
  212. #X msg 176 74 read \$1;
  213. #X obj 31 113 s /stepper/\$1/sequencer/load;
  214. #X obj 30 94 bang;
  215. #X obj 30 73 delay 100;
  216. #X obj 30 52 t b a;
  217. #X obj 114 275 r /stepper/\$1/openSeq;
  218. #X obj 114 347 openpanel;
  219. #X msg 114 326 symbol ./;
  220. #X obj 190 566 r /stepper/\$1/cue/current;
  221. #X obj 139 536 r /stepper/\$1/pos/onTarget;
  222. #X obj 79 434 t b b;
  223. #X obj 112 455 f \$1;
  224. #X msg 111 476 \; /stepper/\$1/cue/0/move/go bang;
  225. #X obj 171 442 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  226. -1 -1;
  227. #X obj 139 727 spigot;
  228. #X obj 190 587 t f f;
  229. #X obj 79 413 r /stepper/\$1/sequencer/go;
  230. #X obj 205 648 r /stepper/\$1/sequencer/loop;
  231. #X obj 190 669 f;
  232. #X obj 190 691 route 0 1;
  233. #X msg 190 711 0;
  234. #X obj 139 768 pack 0 \$1;
  235. #X msg 139 789 \; /stepper/\$2/cue/\$1/move/go bang;
  236. #X obj 275 686 r /stepper/\$1/stop;
  237. #X obj 139 746 f;
  238. #X obj 217 606 + 1;
  239. #X msg 231 713 0;
  240. #X obj 265 592 print;
  241. #X obj 190 628 route 3;
  242. #X obj 139 557 bang;
  243. #X obj 167 516 r /stepper/\$1/cue/next;
  244. #X obj 467 364 text sequence \$1-seq;
  245. #X obj 467 456 s \$1-cue;
  246. #X obj 622 481 r \$1-cue;
  247. #X obj 663 381 route move setMaxSpeed acceleration accMode active;
  248. #X obj 467 385 route list bang;
  249. #X obj 566 415 list trim;
  250. #X obj 572 520 pack s f f \$1;
  251. #X msg 572 542 \; /stepper/\$4/cue/\$3/\$1 \$2;
  252. #X obj 463 147 symbol startPos;
  253. #X obj 467 435 route CUE startPos;
  254. #X obj 522 456 s /stepper/\$1/move/startPos;
  255. #X connect 1 0 0 0;
  256. #X connect 2 0 1 1;
  257. #X connect 3 0 0 0;
  258. #X connect 3 1 4 0;
  259. #X connect 3 2 56 0;
  260. #X connect 3 3 0 1;
  261. #X connect 4 0 0 1;
  262. #X connect 5 0 3 0;
  263. #X connect 6 0 48 0;
  264. #X connect 7 0 48 0;
  265. #X connect 9 0 7 0;
  266. #X connect 10 0 11 0;
  267. #X connect 11 0 13 0;
  268. #X connect 12 0 14 0;
  269. #X connect 13 0 12 0;
  270. #X connect 14 0 8 0;
  271. #X connect 15 0 16 0;
  272. #X connect 16 0 21 0;
  273. #X connect 17 0 8 0;
  274. #X connect 19 0 18 0;
  275. #X connect 20 0 19 0;
  276. #X connect 21 0 20 0;
  277. #X connect 21 1 17 0;
  278. #X connect 22 0 24 0;
  279. #X connect 24 0 23 0;
  280. #X connect 25 0 32 0;
  281. #X connect 26 0 46 0;
  282. #X connect 27 1 28 0;
  283. #X connect 28 0 29 0;
  284. #X connect 30 0 28 0;
  285. #X connect 31 0 41 0;
  286. #X connect 32 0 45 0;
  287. #X connect 32 1 42 0;
  288. #X connect 33 0 27 0;
  289. #X connect 34 0 35 1;
  290. #X connect 35 0 36 0;
  291. #X connect 36 0 37 0;
  292. #X connect 36 1 43 0;
  293. #X connect 37 0 31 1;
  294. #X connect 38 0 39 0;
  295. #X connect 40 0 37 0;
  296. #X connect 41 0 38 0;
  297. #X connect 42 0 41 1;
  298. #X connect 43 0 41 1;
  299. #X connect 45 0 35 0;
  300. #X connect 46 0 31 0;
  301. #X connect 47 0 46 0;
  302. #X connect 48 0 52 0;
  303. #X connect 50 0 54 2;
  304. #X connect 52 0 57 0;
  305. #X connect 54 0 55 0;
  306. #X connect 56 0 1 0;
  307. #X connect 57 0 49 0;
  308. #X connect 57 1 58 0;
  309. #X connect 57 2 54 0;
  310. #X restore 661 78 pd \$0-sequencer;
  311. #N canvas 1 55 894 565 \$0-startposition 0;
  312. #X obj 170 103 r /stepper/\$1/pos/current;
  313. #X obj 170 122 * 360;
  314. #X floatatom 97 134 5 0 0 0 - - -, f 5;
  315. #X obj 145 222 f;
  316. #X obj 145 84 r /stepper/\$1/move/setStart;
  317. #X obj 140 306 r /stepper/\$1/move/gotoStart;
  318. #X obj 145 241 s /stepper/\$1/move/startPos;
  319. #X obj 444 105 r /stepper/\$1/move/startPos;
  320. #X obj 420 146 -;
  321. #X obj 444 125 t b f;
  322. #X text 450 147 distance currentPos->startPos;
  323. #X obj 420 206 moses 180;
  324. #X obj 471 227 - 360;
  325. #X text 517 225 go backward \, quickest path;
  326. #X floatatom 502 166 5 0 0 0 - - -, f 5;
  327. #X obj 140 493 s /toOSC;
  328. #X msg 140 474 /\$1 \$3 \$2;
  329. #X obj 140 345 f \$1;
  330. #X obj 420 314 / 360;
  331. #X obj 170 222 s /stepper/\$1/pos/current/deg;
  332. #X obj 420 84 r /stepper/\$1/pos/current/deg;
  333. #X obj 420 187 abs;
  334. #X obj 420 166 t f f;
  335. #X obj 447 251 moses 0;
  336. #X msg 447 272 360;
  337. #X msg 477 272 -360;
  338. #X obj 170 141 t f f;
  339. #X obj 197 159 div 360;
  340. #X obj 197 180 * 360;
  341. #X obj 170 199 -;
  342. #X text 286 58 START POSITION MANAGEMENT;
  343. #X obj 140 455 list;
  344. #X obj 140 396 pack 0 0 4000 0;
  345. #X text 242 396 stepper ID \, move \, speed \, acc;
  346. #X msg 140 421 driveMode 0 \$1 \, acceleration \$4 \$1 \, maxSpeed
  347. \$3 \$1 \, move \$2 \$1 \, getStatus \$1 \$1;
  348. #X msg 416 461 driveMode 1 \$1 \, maxSpeed \$3 \$1 \, acceleration
  349. move \$2 \$1 \, setSpeed \$3 \$1 \, getStatus \$1 \$1;
  350. #X obj 611 332 / 60;
  351. #X obj 648 356 / 60;
  352. #X obj 648 338 r /stepper/\$1/accLimit;
  353. #X obj 611 314 r /stepper/\$1/speedLimit;
  354. #X obj 351 333 steps2camrot;
  355. #X obj 542 350 steps2camrot;
  356. #X obj 579 374 steps2camrot;
  357. #X connect 0 0 1 0;
  358. #X connect 1 0 26 0;
  359. #X connect 3 0 6 0;
  360. #X connect 4 0 3 0;
  361. #X connect 5 0 17 0;
  362. #X connect 7 0 9 0;
  363. #X connect 8 0 14 0;
  364. #X connect 8 0 22 0;
  365. #X connect 9 0 8 0;
  366. #X connect 9 1 8 1;
  367. #X connect 11 0 18 0;
  368. #X connect 11 1 12 0;
  369. #X connect 12 0 18 0;
  370. #X connect 16 0 15 0;
  371. #X connect 17 0 32 0;
  372. #X connect 18 0 40 1;
  373. #X connect 20 0 8 0;
  374. #X connect 21 0 11 0;
  375. #X connect 22 0 21 0;
  376. #X connect 22 1 23 0;
  377. #X connect 23 0 24 0;
  378. #X connect 23 1 25 0;
  379. #X connect 24 0 18 1;
  380. #X connect 25 0 18 1;
  381. #X connect 26 0 29 0;
  382. #X connect 26 1 27 0;
  383. #X connect 27 0 28 0;
  384. #X connect 28 0 29 1;
  385. #X connect 29 0 2 0;
  386. #X connect 29 0 19 0;
  387. #X connect 29 0 3 1;
  388. #X connect 31 0 16 0;
  389. #X connect 32 0 34 0;
  390. #X connect 34 0 31 0;
  391. #X connect 36 0 41 1;
  392. #X connect 37 0 42 1;
  393. #X connect 38 0 37 0;
  394. #X connect 39 0 36 0;
  395. #X connect 40 0 32 1;
  396. #X connect 41 0 32 2;
  397. #X connect 42 0 32 3;
  398. #X restore 661 97 pd \$0-startposition;
  399. #N canvas 689 84 1211 848 \$0-modes&moves 0;
  400. #X obj 40 108 route 0 1;
  401. #X obj 40 44 r /stepper/\$1/manualDrive;
  402. #X obj 51 131 r /stepper/\$1/accMode;
  403. #X obj 40 85 t f f;
  404. #X obj 40 172 f;
  405. #X msg 65 218 2;
  406. #X obj 40 236 s /stepper/\$1/driveMode;
  407. #X obj 40 193 spigot;
  408. #X obj 73 173 == 0;
  409. #X text 73 11 SET DRIVE MODE;
  410. #X obj 909 276 r /stepper/\$1/driveMode;
  411. #X obj 909 364 pack s f f;
  412. #X obj 966 339 f \$1;
  413. #X obj 966 317 loadbang;
  414. #X obj 909 418 s /toOSC;
  415. #X msg 909 396 /\$1 \$3 \$2;
  416. #X text 929 260 SEND DRIVE MODE;
  417. #X obj 880 190 / 60;
  418. #X obj 811 249 spigot;
  419. #X obj 894 212 r /stepper/\$1/driveMode;
  420. #X obj 894 233 == 2;
  421. #X msg 811 268 setSpeed \$1;
  422. #X obj 51 152 == 0;
  423. #X msg 909 297 driveMode \$1 \, setSpeed 0;
  424. #X text 865 13 MANUAL SPEED;
  425. #X obj 880 166 * 1;
  426. #X obj 895 146 t b f;
  427. #X obj 895 106 route 0 1;
  428. #X msg 895 126 -1;
  429. #X msg 924 126 1;
  430. #X obj 895 88 r /stepper/\$1/manualDirection;
  431. #X obj 880 41 r /stepper/\$1/manualSpeed;
  432. #X obj 215 149 r /stepper/\$1/updateStatus;
  433. #X obj 215 170 f \$1;
  434. #X msg 215 191 /getStatus \$1;
  435. #X obj 215 212 s /toOSC;
  436. #X obj 215 62 f \$1;
  437. #X msg 215 83 /stop \$1;
  438. #X obj 396 43 r /stepper/\$1/move;
  439. #X obj 415 143 s /stepper/\$1/move/deg;
  440. #X obj 396 163 r /stepper/\$1/move/deg;
  441. #X obj 415 263 s /stepper/\$1/move;
  442. #X obj 415 244 / 360;
  443. #X obj 215 103 s /toOSC;
  444. #X text 248 17 STOP;
  445. #X text 405 17 MOVE DEGRES CONVERSION;
  446. #X text 232 131 STATUS;
  447. #X obj 396 204 t b f b;
  448. #X msg 436 223 0;
  449. #X msg 396 224 1;
  450. #X obj 415 124 * 360;
  451. #X obj 396 83 t b f b;
  452. #X msg 436 101 0;
  453. #X msg 396 102 1;
  454. #X obj 215 43 r /stepper/\$1/stop;
  455. #X obj 396 65 spigot 1;
  456. #X obj 396 184 spigot 1;
  457. #X obj 453 474 / 60;
  458. #X obj 453 436 r /stepper/\$1/setMaxSpeed;
  459. #X obj 309 618 list prepend;
  460. #X obj 416 416 r /stepper/\$1/move;
  461. #X obj 309 412 f \$1;
  462. #X obj 491 514 / 60;
  463. #X obj 491 476 r /stepper/\$1/acceleration;
  464. #X obj 309 787 list;
  465. #X obj 309 825 s /toOSC;
  466. #X msg 309 806 /\$1 \$3 \$2;
  467. #X obj 309 391 r /stepper/\$1/move/go;
  468. #X msg 309 718 acceleration \$4 \$1 \, maxSpeed \$3 \$1 \, move \$2
  469. \$1 \, getStatus \$1 \$1;
  470. #X text 333 369 MOVE MANAGEMENT;
  471. #X obj 384 492 steps2camrot;
  472. #X obj 44 319 r /stepper/\$1/manualDrive;
  473. #X obj 44 342 route 0 1;
  474. #X obj 117 361 r /stepper/\$1/accMode;
  475. #X obj 43 466 s /stepper/\$1/driveMode;
  476. #X msg 84 434 2;
  477. #X text 66 280 SET DRIVE MODE V2;
  478. #X text 43 293 Vconst -> accelerate AQAP;
  479. #X text 95 22 not used;
  480. #X msg 372 781 move \$2 \$1 \, setSpeed \$3 \$1 \, getStatus \$1 \$1
  481. ;
  482. #X msg 334 748 acceleration \$5 \$1 \, maxSpeed \$3 \$1 \, move \$2
  483. \$1 \, getStatus \$1 \$1;
  484. #X obj 569 534 / 60;
  485. #X text 704 494 used if driveMode = 2;
  486. #X obj 569 496 r /stepper/\$1/accLimit;
  487. #X obj 309 576 pack 10 5000 1000 1000 1000;
  488. #X obj 641 41 r /stepper/\$1/manualDrive;
  489. #X msg 641 62 0;
  490. #X text 641 18 Force speed to 0 when manual;
  491. #X obj 641 81 s /stepper/\$1/manualSpeed;
  492. #X msg 44 363 0;
  493. #X obj 378 596 r /stepper/\$1/accMode;
  494. #X obj 309 698 route 1 0;
  495. #X obj 811 212 steps2camrot;
  496. #X obj 422 532 steps2camrot;
  497. #X obj 347 434 steps2camrot;
  498. #X obj 500 552 steps2camrot;
  499. #N canvas 78 190 450 300 clipValue 0;
  500. #X obj 87 36 inlet;
  501. #X obj 87 117 moses;
  502. #X obj 181 46 inlet;
  503. #X obj 181 67 t f f;
  504. #X obj 114 158 f;
  505. #X obj 96 217 outlet;
  506. #X obj 117 138 bang;
  507. #X connect 0 0 1 0;
  508. #X connect 1 0 5 0;
  509. #X connect 1 1 6 0;
  510. #X connect 2 0 3 0;
  511. #X connect 3 0 1 1;
  512. #X connect 3 1 4 1;
  513. #X connect 4 0 5 0;
  514. #X connect 6 0 4 0;
  515. #X restore 705 587 pd clipValue;
  516. #X obj 342 640 r /stepper/\$1/manualDrive;
  517. #X obj 309 680 spigot;
  518. #X obj 342 661 == 0;
  519. #X floatatom 706 546 5 0 0 0 - - -, f 5;
  520. #X floatatom 716 601 5 0 0 0 - - -, f 5;
  521. #X floatatom 786 551 5 0 0 0 - - -, f 5;
  522. #N canvas 78 190 450 300 clipValue 0;
  523. #X obj 87 36 inlet;
  524. #X obj 87 117 moses;
  525. #X obj 181 46 inlet;
  526. #X obj 181 67 t f f;
  527. #X obj 114 158 f;
  528. #X obj 96 217 outlet;
  529. #X obj 117 138 bang;
  530. #X connect 0 0 1 0;
  531. #X connect 1 0 5 0;
  532. #X connect 1 1 6 0;
  533. #X connect 2 0 3 0;
  534. #X connect 3 0 1 1;
  535. #X connect 3 1 4 1;
  536. #X connect 4 0 5 0;
  537. #X connect 6 0 4 0;
  538. #X restore 453 455 pd clipValue;
  539. #X obj 613 436 r /stepper/\$1/speedLimit;
  540. #N canvas 78 190 450 300 clipValue 0;
  541. #X obj 87 36 inlet;
  542. #X obj 87 117 moses;
  543. #X obj 181 46 inlet;
  544. #X obj 181 67 t f f;
  545. #X obj 114 158 f;
  546. #X obj 96 217 outlet;
  547. #X obj 117 138 bang;
  548. #X connect 0 0 1 0;
  549. #X connect 1 0 5 0;
  550. #X connect 1 1 6 0;
  551. #X connect 2 0 3 0;
  552. #X connect 3 0 1 1;
  553. #X connect 3 1 4 1;
  554. #X connect 4 0 5 0;
  555. #X connect 6 0 4 0;
  556. #X restore 491 495 pd clipValue;
  557. #N canvas 78 190 450 300 clipValue 0;
  558. #X obj 87 36 inlet;
  559. #X obj 87 117 moses;
  560. #X obj 181 46 inlet;
  561. #X obj 181 67 t f f;
  562. #X obj 114 158 f;
  563. #X obj 96 217 outlet;
  564. #X obj 117 138 bang;
  565. #X connect 0 0 1 0;
  566. #X connect 1 0 5 0;
  567. #X connect 1 1 6 0;
  568. #X connect 2 0 3 0;
  569. #X connect 3 0 1 1;
  570. #X connect 3 1 4 1;
  571. #X connect 4 0 5 0;
  572. #X connect 6 0 4 0;
  573. #X restore 880 63 pd clipValue;
  574. #X obj 1040 40 r /stepper/\$1/speedLimit;
  575. #X connect 0 0 4 0;
  576. #X connect 0 1 5 0;
  577. #X connect 2 0 22 0;
  578. #X connect 3 0 0 0;
  579. #X connect 3 1 8 0;
  580. #X connect 4 0 7 0;
  581. #X connect 5 0 6 0;
  582. #X connect 7 0 6 0;
  583. #X connect 8 0 7 1;
  584. #X connect 10 0 23 0;
  585. #X connect 11 0 15 0;
  586. #X connect 12 0 11 2;
  587. #X connect 13 0 12 0;
  588. #X connect 15 0 14 0;
  589. #X connect 17 0 92 1;
  590. #X connect 18 0 21 0;
  591. #X connect 19 0 20 0;
  592. #X connect 20 0 18 1;
  593. #X connect 21 0 11 0;
  594. #X connect 22 0 4 0;
  595. #X connect 23 0 11 0;
  596. #X connect 25 0 17 0;
  597. #X connect 26 0 25 0;
  598. #X connect 26 1 25 1;
  599. #X connect 27 0 28 0;
  600. #X connect 27 1 29 0;
  601. #X connect 28 0 26 0;
  602. #X connect 29 0 26 0;
  603. #X connect 30 0 27 0;
  604. #X connect 31 0 106 0;
  605. #X connect 32 0 33 0;
  606. #X connect 33 0 34 0;
  607. #X connect 34 0 35 0;
  608. #X connect 36 0 37 0;
  609. #X connect 37 0 43 0;
  610. #X connect 38 0 55 0;
  611. #X connect 40 0 56 0;
  612. #X connect 42 0 41 0;
  613. #X connect 47 0 49 0;
  614. #X connect 47 1 42 0;
  615. #X connect 47 2 48 0;
  616. #X connect 48 0 55 1;
  617. #X connect 49 0 55 1;
  618. #X connect 50 0 39 0;
  619. #X connect 51 0 53 0;
  620. #X connect 51 1 50 0;
  621. #X connect 51 2 52 0;
  622. #X connect 52 0 56 1;
  623. #X connect 53 0 56 1;
  624. #X connect 54 0 36 0;
  625. #X connect 55 0 51 0;
  626. #X connect 56 0 47 0;
  627. #X connect 57 0 70 1;
  628. #X connect 58 0 103 0;
  629. #X connect 59 0 98 0;
  630. #X connect 60 0 94 1;
  631. #X connect 61 0 84 0;
  632. #X connect 62 0 93 1;
  633. #X connect 63 0 105 0;
  634. #X connect 64 0 66 0;
  635. #X connect 66 0 65 0;
  636. #X connect 67 0 61 0;
  637. #X connect 68 0 64 0;
  638. #X connect 70 0 84 2;
  639. #X connect 71 0 72 0;
  640. #X connect 72 0 89 0;
  641. #X connect 72 1 75 0;
  642. #X connect 75 0 74 0;
  643. #X connect 80 0 64 0;
  644. #X connect 81 0 95 1;
  645. #X connect 83 0 81 0;
  646. #X connect 83 0 105 1;
  647. #X connect 84 0 59 0;
  648. #X connect 85 0 86 0;
  649. #X connect 86 0 88 0;
  650. #X connect 89 0 74 0;
  651. #X connect 90 0 59 1;
  652. #X connect 91 0 68 0;
  653. #X connect 91 1 80 0;
  654. #X connect 92 0 18 0;
  655. #X connect 93 0 84 3;
  656. #X connect 94 0 84 1;
  657. #X connect 95 0 84 4;
  658. #X connect 96 0 101 0;
  659. #X connect 97 0 99 0;
  660. #X connect 98 0 91 0;
  661. #X connect 99 0 98 1;
  662. #X connect 100 0 96 0;
  663. #X connect 102 0 96 1;
  664. #X connect 103 0 57 0;
  665. #X connect 104 0 103 1;
  666. #X connect 105 0 62 0;
  667. #X connect 106 0 25 0;
  668. #X connect 107 0 106 1;
  669. #X restore 661 117 pd \$0-modes&moves;
  670. #X obj 514 190 nbx 4 14 -1e+37 1e+37 0 0 /stepper/\$1/move/startPos
  671. /stepper/\$1/move/startPos Position_depart 0 -8 0 12 -204800 -1 -1
  672. 0 256;
  673. #X obj 643 190 bng 15 250 50 0 /stepper/\$1/move/gotoStart /stepper/\$1/move/gotoStart
  674. goto 17 7 0 10 -204800 -1 -1;
  675. #X obj 586 190 bng 15 250 50 0 /stepper/\$1/move/setStart /stepper/\$1/move/setStart
  676. set 17 7 0 10 -262144 -1 -1;
  677. #X obj 410 273 stepperCue \$1 0;
  678. #X obj 411 417 stepperCue \$1 3;
  679. #X obj 411 369 stepperCue \$1 2;
  680. #X obj 410 321 stepperCue \$1 1;
  681. #X connect 3 0 11 0;
  682. #X connect 11 0 10 0;
  683. #X connect 11 0 13 0;
  684. #X connect 12 1 41 0;
  685. #X connect 12 2 4 0;
  686. #X connect 12 3 5 0;
  687. #X connect 12 4 6 0;
  688. #X connect 13 0 12 0;
  689. #X connect 13 1 48 0;
  690. #X connect 17 0 18 0;
  691. #X connect 18 0 39 0;
  692. #X connect 19 0 22 0;
  693. #X connect 19 0 23 0;
  694. #X connect 20 0 38 0;
  695. #X connect 22 0 25 0;
  696. #X connect 25 0 17 0;
  697. #X connect 25 0 24 0;
  698. #X connect 38 0 19 0;
  699. #X connect 38 1 40 0;
  700. #X connect 40 0 39 0;
  701. #X connect 50 0 33 0;
  702. #X connect 50 0 34 0;
  703. #X coords 0 -1 1 1 700 329 1 80 150;