Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2015
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.92 KB | None | 0 0
  1. # Generated by PNCconf at Fri May 1 22:25:18 2015
  2. # Änderungen an dieser Datei werden beim nächsten
  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=3 num_pwmgens=0 num_3pwmgens=0 num_stepgens=0 sserial_port_0=000xx "
  10. setp hm2_5i25.0.watchdog.timeout_ns 10000000
  11.  
  12.  
  13. loadrt hal_parport cfg="0x0278 in"
  14.  
  15.  
  16. loadrt pid names=pid.x,pid.y,pid.z
  17.  
  18.  
  19.  
  20.  
  21. addf parport.0.read servo-thread
  22. addf parport.0.write servo-thread
  23.  
  24.  
  25. addf hm2_5i25.0.read servo-thread
  26. addf motion-command-handler servo-thread
  27. addf motion-controller servo-thread
  28.  
  29. addf pid.x.do-pid-calcs servo-thread
  30. addf pid.y.do-pid-calcs servo-thread
  31. addf pid.z.do-pid-calcs servo-thread
  32.  
  33.  
  34. addf hm2_5i25.0.write servo-thread
  35. addf hm2_5i25.0.pet_watchdog servo-thread
  36.  
  37. # external output signals
  38.  
  39. net spindle-on => hm2_5i25.0.7i77.0.0.output-01
  40. net spindle-on => hm2_5i25.0.7i77.0.0.output-02
  41. #net spindle-on => hm2_5i25.0.7i77.0.0.input-24-not
  42.  
  43. # --- SPINDLE-ON ---
  44. #net spindle-on parport.0.pin-02-out
  45.  
  46.  
  47. # external input signals
  48.  
  49. # --- PROBE-IN ---UNTEN
  50.  
  51.  
  52.  
  53. # --- SCHALTER---
  54.  
  55. net x-home-sw <= hm2_5i25.0.7i77.0.0.input-16-not
  56. net x-neg-limit <= hm2_5i25.0.7i77.0.0.input-20-not
  57.  
  58.  
  59. net y-home-sw <= hm2_5i25.0.7i77.0.0.input-17-not
  60. net y-neg-limit <= hm2_5i25.0.7i77.0.0.input-22-not
  61.  
  62. net z-home-sw <= hm2_5i25.0.7i77.0.0.input-19-not
  63. net z-neg-limit <= hm2_5i25.0.7i77.0.0.input-18-not
  64.  
  65.  
  66.  
  67. #*******************
  68. # AXIS X
  69. #*******************
  70.  
  71. setp pid.x.Pgain [AXIS_0]P
  72. setp pid.x.Igain [AXIS_0]I
  73. setp pid.x.Dgain [AXIS_0]D
  74. setp pid.x.bias [AXIS_0]BIAS
  75. setp pid.x.FF0 [AXIS_0]FF0
  76. setp pid.x.FF1 [AXIS_0]FF1
  77. setp pid.x.FF2 [AXIS_0]FF2
  78. setp pid.x.deadband [AXIS_0]DEADBAND
  79. setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT
  80.  
  81. net x-index-enable <=> pid.x.index-enable
  82. net x-enable => pid.x.enable
  83. net x-output => pid.x.output
  84. net x-pos-cmd => pid.x.command
  85. net x-vel-fb => pid.x.feedback-deriv
  86. net x-pos-fb => pid.x.feedback
  87.  
  88. # ---PWM Generator signals/setup---
  89.  
  90. setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [AXIS_0]OUTPUT_SCALE
  91. setp hm2_5i25.0.7i77.0.1.analogout0-minlim [AXIS_0]OUTPUT_MIN_LIMIT
  92. setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [AXIS_0]OUTPUT_MAX_LIMIT
  93.  
  94. net x-output => hm2_5i25.0.7i77.0.1.analogout0
  95. net x-pos-cmd axis.0.motor-pos-cmd
  96. net x-enable axis.0.amp-enable-out
  97. # enable _all_ sserial pwmgens
  98. net x-enable hm2_5i25.0.7i77.0.1.analogena
  99.  
  100. # ---Encoder feedback signals/setup---
  101.  
  102. setp hm2_5i25.0.encoder.00.counter-mode 0
  103. setp hm2_5i25.0.encoder.00.filter 1
  104. setp hm2_5i25.0.encoder.00.index-invert 0
  105. setp hm2_5i25.0.encoder.00.index-mask 0
  106. setp hm2_5i25.0.encoder.00.index-mask-invert 0
  107. setp hm2_5i25.0.encoder.00.scale [AXIS_0]ENCODER_SCALE
  108.  
  109. net x-pos-fb <= hm2_5i25.0.encoder.00.position
  110. net x-vel-fb <= hm2_5i25.0.encoder.00.velocity
  111. net x-pos-fb => axis.0.motor-pos-fb
  112. net x-index-enable axis.0.index-enable <=> hm2_5i25.0.encoder.00.index-enable
  113. net x-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
  114.  
  115. # ---setup home / limit switch signals---
  116.  
  117. net x-home-sw => axis.0.home-sw-in
  118. net x-neg-limit => axis.0.neg-lim-sw-in
  119. net x-neg-limit => axis.0.pos-lim-sw-in
  120.  
  121. #net x-pos-limit => axis.0.pos-lim-sw-in
  122.  
  123. #*******************
  124. # AXIS Y
  125. #*******************
  126.  
  127. setp pid.y.Pgain [AXIS_1]P
  128. setp pid.y.Igain [AXIS_1]I
  129. setp pid.y.Dgain [AXIS_1]D
  130. setp pid.y.bias [AXIS_1]BIAS
  131. setp pid.y.FF0 [AXIS_1]FF0
  132. setp pid.y.FF1 [AXIS_1]FF1
  133. setp pid.y.FF2 [AXIS_1]FF2
  134. setp pid.y.deadband [AXIS_1]DEADBAND
  135. setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT
  136.  
  137. net y-index-enable <=> pid.y.index-enable
  138. net y-enable => pid.y.enable
  139. net y-output => pid.y.output
  140. net y-pos-cmd => pid.y.command
  141. net y-vel-fb => pid.y.feedback-deriv
  142. net y-pos-fb => pid.y.feedback
  143.  
  144. # ---PWM Generator signals/setup---
  145.  
  146. setp hm2_5i25.0.7i77.0.1.analogout1-scalemax [AXIS_1]OUTPUT_SCALE
  147. setp hm2_5i25.0.7i77.0.1.analogout1-minlim [AXIS_1]OUTPUT_MIN_LIMIT
  148. setp hm2_5i25.0.7i77.0.1.analogout1-maxlim [AXIS_1]OUTPUT_MAX_LIMIT
  149.  
  150. net y-output => hm2_5i25.0.7i77.0.1.analogout1
  151. net y-pos-cmd axis.1.motor-pos-cmd
  152. net y-enable axis.1.amp-enable-out
  153.  
  154. # ---Encoder feedback signals/setup---
  155.  
  156. setp hm2_5i25.0.encoder.01.counter-mode 0
  157. setp hm2_5i25.0.encoder.01.filter 1
  158. setp hm2_5i25.0.encoder.01.index-invert 0
  159. setp hm2_5i25.0.encoder.01.index-mask 0
  160. setp hm2_5i25.0.encoder.01.index-mask-invert 0
  161. setp hm2_5i25.0.encoder.01.scale [AXIS_1]ENCODER_SCALE
  162.  
  163. net y-pos-fb <= hm2_5i25.0.encoder.01.position
  164. net y-vel-fb <= hm2_5i25.0.encoder.01.velocity
  165. net y-pos-fb => axis.1.motor-pos-fb
  166. net y-index-enable axis.1.index-enable <=> hm2_5i25.0.encoder.01.index-enable
  167. net y-pos-rawcounts <= hm2_5i25.0.encoder.01.rawcounts
  168.  
  169. # ---setup home / limit switch signals---
  170.  
  171. net y-home-sw => axis.1.home-sw-in
  172. net y-neg-limit => axis.1.neg-lim-sw-in
  173. net y-neg-limit => axis.1.pos-lim-sw-in
  174.  
  175. #net y-pos-limit => axis.1.pos-lim-sw-in
  176.  
  177.  
  178. #*******************
  179. # AXIS Z
  180. #*******************
  181.  
  182. setp pid.z.Pgain [AXIS_2]P
  183. setp pid.z.Igain [AXIS_2]I
  184. setp pid.z.Dgain [AXIS_2]D
  185. setp pid.z.bias [AXIS_2]BIAS
  186. setp pid.z.FF0 [AXIS_2]FF0
  187. setp pid.z.FF1 [AXIS_2]FF1
  188. setp pid.z.FF2 [AXIS_2]FF2
  189. setp pid.z.deadband [AXIS_2]DEADBAND
  190. setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT
  191.  
  192. net z-index-enable <=> pid.z.index-enable
  193. net z-enable => pid.z.enable
  194. net z-output => pid.z.output
  195. net z-pos-cmd => pid.z.command
  196. net z-vel-fb => pid.z.feedback-deriv
  197. net z-pos-fb => pid.z.feedback
  198.  
  199. # ---PWM Generator signals/setup---
  200.  
  201. setp hm2_5i25.0.7i77.0.1.analogout2-scalemax [AXIS_2]OUTPUT_SCALE
  202. setp hm2_5i25.0.7i77.0.1.analogout2-minlim [AXIS_2]OUTPUT_MIN_LIMIT
  203. setp hm2_5i25.0.7i77.0.1.analogout2-maxlim [AXIS_2]OUTPUT_MAX_LIMIT
  204.  
  205. net z-output => hm2_5i25.0.7i77.0.1.analogout2
  206. net z-pos-cmd axis.2.motor-pos-cmd
  207. net z-enable axis.2.amp-enable-out
  208.  
  209. # ---Encoder feedback signals/setup---
  210.  
  211. setp hm2_5i25.0.encoder.02.counter-mode 0
  212. setp hm2_5i25.0.encoder.02.filter 1
  213. setp hm2_5i25.0.encoder.02.index-invert 0
  214. setp hm2_5i25.0.encoder.02.index-mask 0
  215. setp hm2_5i25.0.encoder.02.index-mask-invert 0
  216. setp hm2_5i25.0.encoder.02.scale [AXIS_2]ENCODER_SCALE
  217.  
  218. net z-pos-fb <= hm2_5i25.0.encoder.02.position
  219. net z-vel-fb <= hm2_5i25.0.encoder.02.velocity
  220. net z-pos-fb => axis.2.motor-pos-fb
  221. net z-index-enable axis.2.index-enable <=> hm2_5i25.0.encoder.02.index-enable
  222. net z-pos-rawcounts <= hm2_5i25.0.encoder.02.rawcounts
  223.  
  224. # ---setup home / limit switch signals---
  225.  
  226. net z-home-sw => axis.2.home-sw-in
  227. net z-neg-limit => axis.2.neg-lim-sw-in
  228. net z-neg-limit => axis.2.pos-lim-sw-in
  229.  
  230. #net z-pos-limit => axis.2.pos-lim-sw-in
  231.  
  232.  
  233. #*******************
  234. # SPINDLE S
  235. #*******************
  236.  
  237.  
  238. # ---PWM Generator signals/setup---
  239.  
  240.  
  241.  
  242. setp hm2_5i25.0.7i77.0.1.analogout5-scalemax [SPINDLE_9]OUTPUT_SCALE
  243. setp hm2_5i25.0.7i77.0.1.analogout5-minlim [SPINDLE_9]OUTPUT_MIN_LIMIT
  244. setp hm2_5i25.0.7i77.0.1.analogout5-maxlim [SPINDLE_9]OUTPUT_MAX_LIMIT
  245.  
  246. net spindle-vel-cmd => hm2_5i25.0.7i77.0.1.analogout5
  247. net machine-is-enabled => hm2_5i25.0.7i77.0.1.spinena
  248. net machine-is-enabled => hm2_5i25.0.7i77.0.1.spinena
  249.  
  250.  
  251.  
  252.  
  253. # ---setup spindle control signals---
  254.  
  255. net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
  256. net spindle-vel-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
  257. net spindle-vel-cmd <= motion.spindle-speed-out
  258. net spindle-vel-cmd-rpm-abs <= motion.spindle-speed-out-abs
  259. net spindle-on <= motion.spindle-on
  260. net spindle-cw <= motion.spindle-forward
  261. net spindle-ccw <= motion.spindle-reverse
  262. net spindle-brake <= motion.spindle-brake
  263. net spindle-revs => motion.spindle-revs
  264. net spindle-at-speed => motion.spindle-at-speed
  265. net spindle-vel-fb => motion.spindle-speed-in
  266. net spindle-index-enable <=> motion.spindle-index-enable
  267.  
  268. # ---Setup spindle at speed signals---
  269.  
  270. sets spindle-at-speed true
  271.  
  272.  
  273. #******************************
  274. # connect miscellaneous signals
  275. #******************************
  276.  
  277. # ---HALUI signals---
  278.  
  279. net joint-select-a halui.joint.0.select
  280. net x-is-homed halui.joint.0.is-homed
  281. net jog-x-pos halui.jog.0.plus
  282. net jog-x-neg halui.jog.0.minus
  283. net jog-x-analog halui.jog.0.analog
  284. net joint-select-b halui.joint.1.select
  285. net y-is-homed halui.joint.1.is-homed
  286. net jog-y-pos halui.jog.1.plus
  287. net jog-y-neg halui.jog.1.minus
  288. net jog-y-analog halui.jog.1.analog
  289. net joint-select-c halui.joint.2.select
  290. net z-is-homed halui.joint.2.is-homed
  291. net jog-z-pos halui.jog.2.plus
  292. net jog-z-neg halui.jog.2.minus
  293. net jog-z-analog halui.jog.2.analog
  294. net jog-selected-pos halui.jog.selected.plus
  295. net jog-selected-neg halui.jog.selected.minus
  296. net spindle-manual-cw halui.spindle.forward
  297. net spindle-manual-ccw halui.spindle.reverse
  298. net spindle-manual-stop halui.spindle.stop
  299. net machine-is-on halui.machine.is-on
  300. net jog-speed halui.jog-speed
  301. net MDI-mode halui.mode.is-mdi
  302.  
  303. # ---coolant signals---
  304.  
  305. net coolant-mist <= iocontrol.0.coolant-mist
  306. net coolant-flood <= iocontrol.0.coolant-flood
  307.  
  308. # ---probe signal---
  309.  
  310. net probe-in => motion.probe-input
  311.  
  312. net probe-in <= hm2_5i25.0.7i77.0.0.input-21
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320. # ---motion control signals---
  321.  
  322. net in-position <= motion.in-position
  323. net machine-is-enabled <= motion.motion-enabled
  324.  
  325. # ---digital in / out signals---
  326.  
  327. # ---estop signals---
  328.  
  329. net estop-out <= iocontrol.0.user-enable-out
  330. net estop-out => iocontrol.0.emc-enable-in
  331.  
  332. net estop-out => hm2_5i25.0.7i77.0.0.output-00
  333.  
  334. # ---manual tool change signals---
  335.  
  336. loadusr -W hal_manualtoolchange
  337. net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
  338. net tool-change-confirmed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
  339. net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
  340. net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement