Advertisement
Guest User

Untitled

a guest
Jan 7th, 2014
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.09 KB | None | 0 0
  1. # Generated by PNCconf at Thu Dec 26 18:13:22 2013
  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_pci config=" num_encoders=6 num_pwmgens=0 num_3pwmgens=0 num_stepgens=0 sserial_port_0=300xxx "
  10. setp hm2_5i25.0.watchdog.timeout_ns 10000000
  11. loadrt pid names=pid.x,pid.y,pid.z,pid.s
  12.  
  13.  
  14.  
  15. addf hm2_5i25.0.read servo-thread
  16. addf motion-command-handler servo-thread
  17. addf motion-controller servo-thread
  18. addf pid.x.do-pid-calcs servo-thread
  19. addf pid.y.do-pid-calcs servo-thread
  20. addf pid.z.do-pid-calcs servo-thread
  21. addf pid.s.do-pid-calcs servo-thread
  22. addf hm2_5i25.0.write servo-thread
  23. addf hm2_5i25.0.pet_watchdog servo-thread
  24.  
  25. # external output signals
  26.  
  27.  
  28. # external input signals
  29.  
  30.  
  31.  
  32. #***********************
  33. # Toggle Lite
  34. #***********************
  35.  
  36. loadrt toggle count=1
  37. addf toggle.0 servo-thread
  38.  
  39. net lite-toggle toggle.0.in hm2_5i25.0.7i77.0.0.input-08
  40. net lite-control toggle.0.out hm2_5i25.0.7i77.0.0.output-01
  41.  
  42.  
  43. #***********************
  44. # MPG and Jog Select
  45. #***********************
  46.  
  47.  
  48. loadrt mux4 count=1
  49. addf mux4.0 servo-thread
  50.  
  51.  
  52.  
  53. # For velocity mode, set to 1
  54. # In velocity mode the axis stops when the dial is stopped
  55. # even if that means the commanded motion is not completed,
  56. # For position mode (the default), set to 0
  57. # In position mode the axis will move exactly jog-scale
  58. # units for each count, regardless of how long that might take,
  59. setp axis.0.jog-vel-mode 0
  60. setp axis.1.jog-vel-mode 0
  61. setp axis.2.jog-vel-mode 0
  62.  
  63. # This sets the scale that will be used based on the input to the mux4
  64. setp mux4.0.in0 0.1
  65. setp mux4.0.in1 0.01
  66. setp mux4.0.in2 0.001
  67.  
  68. # The inputs to the mux4 component
  69. net scale1 mux4.0.sel0 <= hm2_5i25.0.7i77.0.0.input-03
  70. net scale2 mux4.0.sel1 <= hm2_5i25.0.7i77.0.0.input-04
  71.  
  72. # The output from the mux4 is sent to each axis jog scale
  73. net mpg-scale <= mux4.0.out
  74. net mpg-scale => axis.0.jog-scale
  75. net mpg-scale => axis.1.jog-scale
  76. net mpg-scale => axis.2.jog-scale
  77.  
  78. # The MPG inputs
  79. #net mpg-a hm2_5i25.0.7i77.0.0.enc0
  80. #net mpg-b encoder.0.phase-B <= parport.1.pin-03-in
  81.  
  82. # The Axis select inputs
  83. net mpg-x axis.0.jog-enable <= hm2_5i25.0.7i77.0.0.input-05
  84. net mpg-y axis.1.jog-enable <= hm2_5i25.0.7i77.0.0.input-06
  85. net mpg-z axis.2.jog-enable <= hm2_5i25.0.7i77.0.0.input-07
  86.  
  87.  
  88. # The encoder output counts to the axis. Only the selected axis will move.
  89. #net encoder-counts <= hm2_5i25.0.7i77.0.0.enc0.counts
  90. #net encoder-counts => axis.0.jog-counts
  91. #net encoder-counts => axis.1.jog-counts
  92. #net encoder-counts => axis.2.jog-counts
  93.  
  94.  
  95.  
  96.  
  97. #*******************
  98. # AXIS X
  99. #*******************
  100.  
  101. # ---Encoder feedback signals/setup---
  102.  
  103. setp hm2_5i25.0.encoder.00.counter-mode 0
  104. setp hm2_5i25.0.encoder.00.filter 1
  105. setp hm2_5i25.0.encoder.00.index-invert 0
  106. setp hm2_5i25.0.encoder.00.index-mask 0
  107. setp hm2_5i25.0.encoder.00.index-mask-invert 0
  108. setp hm2_5i25.0.encoder.00.scale [AXIS_0]ENCODER_SCALE
  109.  
  110. net x-pos-fb <= hm2_5i25.0.encoder.00.position
  111. net x-vel-fb <= hm2_5i25.0.encoder.00.velocity
  112. net x-pos-fb => axis.0.motor-pos-fb
  113. net x-index-enable axis.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable
  114. net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
  115.  
  116. # ---setup home / limit switch signals---
  117.  
  118. net x-home-sw => axis.0.home-sw-in
  119. net x-neg-limit => axis.0.neg-lim-sw-in
  120. net x-pos-limit => axis.0.pos-lim-sw-in
  121.  
  122. #*******************
  123. # AXIS Y
  124. #*******************
  125.  
  126. # ---Encoder feedback signals/setup---
  127.  
  128. setp hm2_5i25.0.encoder.01.counter-mode 0
  129. setp hm2_5i25.0.encoder.01.filter 1
  130. setp hm2_5i25.0.encoder.01.index-invert 0
  131. setp hm2_5i25.0.encoder.01.index-mask 0
  132. setp hm2_5i25.0.encoder.01.index-mask-invert 0
  133. setp hm2_5i25.0.encoder.01.scale [AXIS_1]ENCODER_SCALE
  134.  
  135. net y-pos-fb <= hm2_5i25.0.encoder.01.position
  136. net y-vel-fb <= hm2_5i25.0.encoder.01.velocity
  137. net y-pos-fb => axis.1.motor-pos-fb
  138. net y-index-enable axis.1.index-enable <=> hm2_5i25.0.encoder.01.index-enable
  139. net y-pos-rawcounts <= hm2_5i25.0.encoder.01.rawcounts
  140.  
  141. # ---setup home / limit switch signals---
  142.  
  143. net y-home-sw => axis.1.home-sw-in
  144. net y-neg-limit => axis.1.neg-lim-sw-in
  145. net y-pos-limit => axis.1.pos-lim-sw-in
  146.  
  147. #*******************
  148. # AXIS Z
  149. #*******************
  150.  
  151. # ---Encoder feedback signals/setup---
  152.  
  153. setp hm2_5i25.0.encoder.02.counter-mode 0
  154. setp hm2_5i25.0.encoder.02.filter 1
  155. setp hm2_5i25.0.encoder.02.index-invert 0
  156. setp hm2_5i25.0.encoder.02.index-mask 0
  157. setp hm2_5i25.0.encoder.02.index-mask-invert 0
  158. setp hm2_5i25.0.encoder.02.scale [AXIS_2]ENCODER_SCALE
  159.  
  160. net z-pos-fb <= hm2_5i25.0.encoder.02.position
  161. net z-vel-fb <= hm2_5i25.0.encoder.02.velocity
  162. net z-pos-fb => axis.2.motor-pos-fb
  163. net z-index-enable axis.2.index-enable <=> hm2_5i25.0.encoder.02.index-enable
  164. net z-pos-rawcounts <= hm2_5i25.0.encoder.02.rawcounts
  165.  
  166. # ---setup home / limit switch signals---
  167.  
  168. net z-home-sw => axis.2.home-sw-in
  169. net z-neg-limit => axis.2.neg-lim-sw-in
  170. net z-pos-limit => axis.2.pos-lim-sw-in
  171.  
  172. #*******************
  173. # SPINDLE S
  174. #*******************
  175.  
  176. # ---Encoder feedback signals/setup---
  177.  
  178. setp hm2_5i25.0.encoder.03.counter-mode 0
  179. setp hm2_5i25.0.encoder.03.filter 1
  180. setp hm2_5i25.0.encoder.03.index-invert 0
  181. setp hm2_5i25.0.encoder.03.index-mask 0
  182. setp hm2_5i25.0.encoder.03.index-mask-invert 0
  183. setp hm2_5i25.0.encoder.03.scale [SPINDLE_9]ENCODER_SCALE
  184.  
  185. net spindle-revs <= hm2_5i25.0.encoder.03.position
  186. net spindle-vel-fb <= hm2_5i25.0.encoder.03.velocity
  187. net spindle-index-enable <=> hm2_5i25.0.encoder.03.index-enable
  188.  
  189. # ---setup spindle control signals---
  190.  
  191. net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
  192. net spindle-vel-cmd <= motion.spindle-speed-out
  193. net spindle-enable <= motion.spindle-on
  194. net spindle-cw <= motion.spindle-forward
  195. net spindle-ccw <= motion.spindle-reverse
  196. net spindle-brake <= motion.spindle-brake
  197. net spindle-revs => motion.spindle-revs
  198. net spindle-at-speed => motion.spindle-at-speed
  199. net spindle-vel-fb => motion.spindle-speed-in
  200. net spindle-index-enable <=> motion.spindle-index-enable
  201.  
  202. # ---Setup spindle at speed signals---
  203.  
  204. sets spindle-at-speed true
  205.  
  206.  
  207. #******************************
  208. # connect miscellaneous signals
  209. #******************************
  210.  
  211. # ---HALUI signals---
  212.  
  213. net joint-select-a halui.joint.0.select
  214. net x-is-homed halui.joint.0.is-homed
  215. net jog-x-pos halui.jog.0.plus
  216. net jog-x-neg halui.jog.0.minus
  217. net jog-x-analog halui.jog.0.analog
  218. net joint-select-b halui.joint.1.select
  219. net y-is-homed halui.joint.1.is-homed
  220. net jog-y-pos halui.jog.1.plus
  221. net jog-y-neg halui.jog.1.minus
  222. net jog-y-analog halui.jog.1.analog
  223. net joint-select-c halui.joint.2.select
  224. net z-is-homed halui.joint.2.is-homed
  225. net jog-z-pos halui.jog.2.plus
  226. net jog-z-neg halui.jog.2.minus
  227. net jog-z-analog halui.jog.2.analog
  228. net jog-selected-pos halui.jog.selected.plus
  229. net jog-selected-neg halui.jog.selected.minus
  230. net spindle-manual-cw halui.spindle.forward
  231. net spindle-manual-ccw halui.spindle.reverse
  232. net spindle-manual-stop halui.spindle.stop
  233. net machine-is-on halui.machine.is-on
  234. net jog-speed halui.jog-speed
  235. net MDI-mode halui.mode.is-mdi
  236.  
  237. # ---coolant signals---
  238.  
  239. net coolant-mist <= iocontrol.0.coolant-mist
  240. net coolant-flood <= iocontrol.0.coolant-flood
  241.  
  242. # ---probe signal---
  243.  
  244. net probe-in => motion.probe-input
  245.  
  246. # ---motion control signals---
  247.  
  248. net in-position <= motion.in-position
  249. net machine-is-enabled <= motion.motion-enabled
  250.  
  251. # ---digital in / out signals---
  252.  
  253. # ---estop signals---
  254. #net estop-out <= iocontrol.0.user-enable-out
  255. #net estop-out => iocontrol.0.emc-enable-in
  256. #net estop-loop hm2_5i25.0.7i77.0.0.input-01 iocontrol.0.emc-enable-in
  257.  
  258. loadrt estop_latch
  259. addf estop-latch.0 servo-thread
  260. net estop-loopout iocontrol.0.emc-enable-in <= estop-latch.0.ok-out
  261. net estop-loopin iocontrol.0.user-enable-out => estop-latch.0.ok-in
  262. net estop-reset iocontrol.0.user-request-enable => estop-latch.0.reset
  263. net remote-estop estop-latch.0.fault-in <= hm2_5i25.0.7i77.0.0.input-01-not
  264.  
  265.  
  266. # ---manual tool change signals---
  267.  
  268. loadusr -W hal_manualtoolchange
  269. net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
  270. net tool-change-confirmed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
  271. net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
  272. net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement