Advertisement
Guest User

Untitled

a guest
Sep 7th, 2011
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.06 KB | None | 0 0
  1. # Generated by PNCconf at Tue Sep 6 13:03:09 2011
  2. # If you make changes to this file, they will be
  3. # overwritten when you run PNCconf again
  4.  
  5. loadrt trivkins
  6. loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
  7. loadrt probe_parport
  8. loadrt hostmot2
  9. loadrt hm2_7i43 config="firmware=hm2/7i43-4/SVST4_4t.BIT num_encoders=4 num_pwmgens=1 num_stepgens=4"
  10. setp hm2_7i43.0.pwmgen.pwm_frequency 5000
  11. #setp hm2_7i43.0.pwmgen.pdm_frequency 100000
  12. setp hm2_7i43.0.watchdog.timeout_ns 10000000
  13. loadrt abs names=
  14. #loadrt lowpass names=
  15. loadrt near
  16.  
  17. addf hm2_7i43.0.read servo-thread
  18. addf motion-command-handler servo-thread
  19. addf motion-controller servo-thread
  20. loadrt pid num_chan=4
  21. addf pid.0.do-pid-calcs servo-thread
  22. addf pid.1.do-pid-calcs servo-thread
  23. addf pid.2.do-pid-calcs servo-thread
  24. addf pid.3.do-pid-calcs servo-thread
  25. alias pin pid.0.Pgain pid.x.Pgain
  26. alias pin pid.0.Igain pid.x.Igain
  27. alias pin pid.0.Dgain pid.x.Dgain
  28. alias pin pid.0.bias pid.x.bias
  29. alias pin pid.0.FF0 pid.x.FF0
  30. alias pin pid.0.FF1 pid.x.FF1
  31. alias pin pid.0.FF2 pid.x.FF2
  32. alias pin pid.0.deadband pid.x.deadband
  33. alias pin pid.0.maxoutput pid.x.maxoutput
  34. alias pin pid.0.enable pid.x.enable
  35. alias pin pid.0.command pid.x.command
  36. alias pin pid.0.feedback pid.x.feedback
  37. alias pin pid.0.output pid.x.output
  38. alias pin pid.0.index-enable pid.x.index-enable
  39.  
  40. alias pin pid.1.Pgain pid.y.Pgain
  41. alias pin pid.1.Igain pid.y.Igain
  42. alias pin pid.1.Dgain pid.y.Dgain
  43. alias pin pid.1.bias pid.y.bias
  44. alias pin pid.1.FF0 pid.y.FF0
  45. alias pin pid.1.FF1 pid.y.FF1
  46. alias pin pid.1.FF2 pid.y.FF2
  47. alias pin pid.1.deadband pid.y.deadband
  48. alias pin pid.1.maxoutput pid.y.maxoutput
  49. alias pin pid.1.enable pid.y.enable
  50. alias pin pid.1.command pid.y.command
  51. alias pin pid.1.feedback pid.y.feedback
  52. alias pin pid.1.output pid.y.output
  53. alias pin pid.1.index-enable pid.y.index-enable
  54.  
  55. alias pin pid.2.Pgain pid.z.Pgain
  56. alias pin pid.2.Igain pid.z.Igain
  57. alias pin pid.2.Dgain pid.z.Dgain
  58. alias pin pid.2.bias pid.z.bias
  59. alias pin pid.2.FF0 pid.z.FF0
  60. alias pin pid.2.FF1 pid.z.FF1
  61. alias pin pid.2.FF2 pid.z.FF2
  62. alias pin pid.2.deadband pid.z.deadband
  63. alias pin pid.2.maxoutput pid.z.maxoutput
  64. alias pin pid.2.enable pid.z.enable
  65. alias pin pid.2.command pid.z.command
  66. alias pin pid.2.feedback pid.z.feedback
  67. alias pin pid.2.output pid.z.output
  68. alias pin pid.2.index-enable pid.z.index-enable
  69.  
  70. alias pin pid.3.Pgain pid.a.Pgain
  71. alias pin pid.3.Igain pid.a.Igain
  72. alias pin pid.3.Dgain pid.a.Dgain
  73. alias pin pid.3.bias pid.a.bias
  74. alias pin pid.3.FF0 pid.a.FF0
  75. alias pin pid.3.FF1 pid.a.FF1
  76. alias pin pid.3.FF2 pid.a.FF2
  77. alias pin pid.3.deadband pid.a.deadband
  78. alias pin pid.3.maxoutput pid.a.maxoutput
  79. alias pin pid.3.enable pid.a.enable
  80. alias pin pid.3.command pid.a.command
  81. alias pin pid.3.feedback pid.a.feedback
  82. alias pin pid.3.output pid.a.output
  83. alias pin pid.3.index-enable pid.a.index-enable
  84.  
  85. addf near.0 servo-thread
  86. addf hm2_7i43.0.write servo-thread
  87. addf hm2_7i43.0.pet_watchdog servo-thread
  88.  
  89. # external output signals
  90.  
  91.  
  92. # --- SPINDLE-ENABLE ---
  93. #setp hm2_7i43.0.gpio.021.is_output true
  94. #net spindle-enable => hm2_7i43.0.gpio.021.out
  95. # --- COOLANT-FLOOD ---
  96. #setp hm2_7i43.0.gpio.022.is_output true
  97. #net coolant-flood => hm2_7i43.0.gpio.022.out
  98.  
  99. # external input signals
  100.  
  101.  
  102. # --- Estop Indication ---
  103. setp hm2_7i43.0.gpio.023.is_output false
  104. #net estop-ext <= hm2_7i43.0.gpio.023.in_not
  105. net epo-signal <= hm2_7i43.0.gpio.023.in_not
  106.  
  107. #*******************
  108. # AXIS X
  109. #*******************
  110.  
  111. # Step Gen signals/setup
  112.  
  113. setp hm2_7i43.0.stepgen.00.dirsetup [AXIS_0]DIRSETUP
  114. setp hm2_7i43.0.stepgen.00.dirhold [AXIS_0]DIRHOLD
  115. setp hm2_7i43.0.stepgen.00.steplen [AXIS_0]STEPLEN
  116. setp hm2_7i43.0.stepgen.00.stepspace [AXIS_0]STEPSPACE
  117. setp hm2_7i43.0.stepgen.00.position-scale [AXIS_0]SCALE
  118. setp hm2_7i43.0.stepgen.00.maxaccel 0
  119. setp hm2_7i43.0.stepgen.00.maxvel 0
  120. setp hm2_7i43.0.stepgen.00.step_type 0
  121.  
  122. net xpos-fb axis.0.motor-pos-fb <= hm2_7i43.0.stepgen.00.position-fb
  123. net xpos-cmd axis.0.motor-pos-cmd => hm2_7i43.0.stepgen.00.position-cmd
  124. net xenable axis.0.amp-enable-out => hm2_7i43.0.stepgen.00.enable
  125.  
  126. # ---Encoder feedback signals/setup---
  127.  
  128. setp hm2_7i43.0.encoder.00.counter-mode 0
  129. setp hm2_7i43.0.encoder.00.filter 1
  130. setp hm2_7i43.0.encoder.00.index-invert 0
  131. setp hm2_7i43.0.encoder.00.index-mask 0
  132. setp hm2_7i43.0.encoder.00.index-mask-invert 0
  133. setp hm2_7i43.0.encoder.00.scale [AXIS_0]INPUT_SCALE
  134.  
  135. #net xpos-fb <= hm2_7i43.0.encoder.00.position
  136. #net xpos-fb => pid.x.feedback
  137. #net xpos-fb => axis.0.motor-pos-fb
  138. net x-index-enable axis.0.index-enable <=> hm2_7i43.0.encoder.00.index-enable
  139.  
  140. # ---setup home / limit switch signals---
  141.  
  142. net x-home-sw => axis.0.home-sw-in
  143. net x-neg-limit => axis.0.neg-lim-sw-in
  144. net x-pos-limit => axis.0.pos-lim-sw-in
  145.  
  146. #*******************
  147. # AXIS Y
  148. #*******************
  149.  
  150. # Step Gen signals/setup
  151.  
  152. setp hm2_7i43.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP
  153. setp hm2_7i43.0.stepgen.01.dirhold [AXIS_1]DIRHOLD
  154. setp hm2_7i43.0.stepgen.01.steplen [AXIS_1]STEPLEN
  155. setp hm2_7i43.0.stepgen.01.stepspace [AXIS_1]STEPSPACE
  156. setp hm2_7i43.0.stepgen.01.position-scale [AXIS_1]SCALE
  157. setp hm2_7i43.0.stepgen.01.maxaccel 0
  158. setp hm2_7i43.0.stepgen.01.maxvel 0
  159. setp hm2_7i43.0.stepgen.01.step_type 0
  160.  
  161. net ypos-fb axis.1.motor-pos-fb <= hm2_7i43.0.stepgen.01.position-fb
  162. net ypos-cmd axis.1.motor-pos-cmd => hm2_7i43.0.stepgen.01.position-cmd
  163. net yenable axis.1.amp-enable-out => hm2_7i43.0.stepgen.01.enable
  164.  
  165. # ---Encoder feedback signals/setup---
  166.  
  167. setp hm2_7i43.0.encoder.01.counter-mode 0
  168. setp hm2_7i43.0.encoder.01.filter 1
  169. setp hm2_7i43.0.encoder.01.index-invert 0
  170. setp hm2_7i43.0.encoder.01.index-mask 0
  171. setp hm2_7i43.0.encoder.01.index-mask-invert 0
  172. setp hm2_7i43.0.encoder.01.scale [AXIS_1]INPUT_SCALE
  173.  
  174. #net ypos-fb <= hm2_7i43.0.encoder.01.position
  175. #net ypos-fb => pid.y.feedback
  176. #net ypos-fb => axis.1.motor-pos-fb
  177. net y-index-enable axis.1.index-enable <=> hm2_7i43.0.encoder.01.index-enable
  178.  
  179. # ---setup home / limit switch signals---
  180.  
  181. net y-home-sw => axis.1.home-sw-in
  182. net y-neg-limit => axis.1.neg-lim-sw-in
  183. net y-pos-limit => axis.1.pos-lim-sw-in
  184.  
  185. #*******************
  186. # AXIS Z
  187. #*******************
  188.  
  189. # Step Gen signals/setup
  190.  
  191. setp hm2_7i43.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP
  192. setp hm2_7i43.0.stepgen.02.dirhold [AXIS_2]DIRHOLD
  193. setp hm2_7i43.0.stepgen.02.steplen [AXIS_2]STEPLEN
  194. setp hm2_7i43.0.stepgen.02.stepspace [AXIS_2]STEPSPACE
  195. setp hm2_7i43.0.stepgen.02.position-scale [AXIS_2]SCALE
  196. setp hm2_7i43.0.stepgen.02.maxaccel 0
  197. setp hm2_7i43.0.stepgen.02.maxvel 0
  198. setp hm2_7i43.0.stepgen.02.step_type 0
  199.  
  200. net zpos-fb axis.2.motor-pos-fb <= hm2_7i43.0.stepgen.02.position-fb
  201. net zpos-cmd axis.2.motor-pos-cmd => hm2_7i43.0.stepgen.02.position-cmd
  202. net zenable axis.2.amp-enable-out => hm2_7i43.0.stepgen.02.enable
  203.  
  204. # ---Encoder feedback signals/setup---
  205.  
  206. setp hm2_7i43.0.encoder.02.counter-mode 0
  207. setp hm2_7i43.0.encoder.02.filter 1
  208. setp hm2_7i43.0.encoder.02.index-invert 0
  209. setp hm2_7i43.0.encoder.02.index-mask 0
  210. setp hm2_7i43.0.encoder.02.index-mask-invert 0
  211. setp hm2_7i43.0.encoder.02.scale [AXIS_2]INPUT_SCALE
  212.  
  213. #net zpos-fb <= hm2_7i43.0.encoder.02.position
  214. #net zpos-fb => pid.z.feedback
  215. #net zpos-fb => axis.2.motor-pos-fb
  216. net z-index-enable axis.2.index-enable <=> hm2_7i43.0.encoder.02.index-enable
  217.  
  218. # ---setup home / limit switch signals---
  219.  
  220. net z-home-sw => axis.2.home-sw-in
  221. net z-neg-limit => axis.2.neg-lim-sw-in
  222. net z-pos-limit => axis.2.pos-lim-sw-in
  223.  
  224. #*******************
  225. # AXIS A
  226. #*******************
  227.  
  228. # Step Gen signals/setup
  229.  
  230. setp hm2_7i43.0.stepgen.03.dirsetup [AXIS_3]DIRSETUP
  231. setp hm2_7i43.0.stepgen.03.dirhold [AXIS_3]DIRHOLD
  232. setp hm2_7i43.0.stepgen.03.steplen [AXIS_3]STEPLEN
  233. setp hm2_7i43.0.stepgen.03.stepspace [AXIS_3]STEPSPACE
  234. setp hm2_7i43.0.stepgen.03.position-scale [AXIS_3]SCALE
  235. setp hm2_7i43.0.stepgen.03.maxaccel 0
  236. setp hm2_7i43.0.stepgen.03.maxvel 0
  237. setp hm2_7i43.0.stepgen.03.step_type 0
  238.  
  239. net apos-fb axis.3.motor-pos-fb <= hm2_7i43.0.stepgen.03.position-fb
  240. net apos-cmd axis.3.motor-pos-cmd => hm2_7i43.0.stepgen.03.position-cmd
  241. net aenable axis.3.amp-enable-out => hm2_7i43.0.stepgen.03.enable
  242.  
  243. # ---Encoder feedback signals/setup---
  244.  
  245. setp hm2_7i43.0.encoder.03.counter-mode 0
  246. setp hm2_7i43.0.encoder.03.filter 1
  247. setp hm2_7i43.0.encoder.03.index-invert 0
  248. setp hm2_7i43.0.encoder.03.index-mask 0
  249. setp hm2_7i43.0.encoder.03.index-mask-invert 0
  250. setp hm2_7i43.0.encoder.03.scale [AXIS_3]INPUT_SCALE
  251.  
  252. #net apos-fb <= hm2_7i43.0.encoder.03.position
  253. #net apos-fb => pid.a.feedback
  254. #net apos-fb => axis.3.motor-pos-fb
  255. net a-index-enable axis.3.index-enable <=> hm2_7i43.0.encoder.03.index-enable
  256.  
  257. # ---setup home / limit switch signals---
  258.  
  259. net a-home-sw => axis.3.home-sw-in
  260. net a-neg-limit => axis.3.neg-lim-sw-in
  261. net a-pos-limit => axis.3.pos-lim-sw-in
  262.  
  263. #*******************
  264. # SPINDLE S
  265. #*******************
  266.  
  267. #***********************
  268. # CHARGE PUMP SIGNAL
  269. #***********************
  270.  
  271. # ---PWM Generator signals/setup---
  272.  
  273. setp hm2_7i43.0.pwmgen.00.output-type 1
  274. setp hm2_7i43.0.pwmgen.00.scale [CHARGEPUMP_0]OUTPUT_SCALE
  275. setp hm2_7i43.0.pwmgen.00.scale [CHARGEPUMP_0]VALUE
  276.  
  277. net chargepump-val => hm2_7i43.0.pwmgen.00.value
  278. net chargepump-enable => hm2_7i43.0.pwmgen.00.enable
  279.  
  280. # ---setup spindle control signals---
  281.  
  282. net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
  283. net spindle-vel-cmd <= motion.spindle-speed-out
  284. net spindle-enable <= motion.spindle-on
  285. net spindle-cw <= motion.spindle-forward
  286. net spindle-ccw <= motion.spindle-reverse
  287. net spindle-brake <= motion.spindle-brake
  288. net spindle-revs => motion.spindle-revs
  289. net spindle-at-speed => motion.spindle-at-speed
  290. net spindle-vel-fb => motion.spindle-speed-in
  291. net spindle-index-enable <=> motion.spindle-index-enable
  292.  
  293. # ---Setup spindle at speed signals---
  294.  
  295. sets spindle-at-speed true
  296.  
  297. #******************************
  298. # connect miscellaneous signals
  299. #******************************
  300.  
  301. # ---coolant signals---
  302.  
  303. net coolant-mist <= iocontrol.0.coolant-mist
  304. net coolant-flood <= iocontrol.0.coolant-flood
  305.  
  306. # ---probe signal---
  307.  
  308. net probe-in => motion.probe-input
  309.  
  310. # ---digital in / out signals---
  311.  
  312. # ---estop signals---
  313.  
  314. net estop-out <= iocontrol.0.user-enable-out
  315. net estop-signal => iocontrol.0.emc-enable-in
  316. #net estop-ext => iocontrol.0.emc-enable-in
  317.  
  318. # ---manual tool change signals---
  319.  
  320. loadusr -W hal_manualtoolchange
  321. net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
  322. net tool-change-confirmed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
  323. net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
  324. net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement