summaryrefslogtreecommitdiff
path: root/configs/by_interface/pico/ppmc_vel/ppmc_io.hal
blob: f74ee759e8cf57a39a86a032a9c38a3391966e65 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# HAL config file for Pico Systems USC board
#
# Connect motion controller I/Os
#

# connect limit/home switch outputs to motion controller
net Xminlim <= ppmc.0.din.01.in
net Xminlim => axis.0.neg-lim-sw-in
net Xmaxlim <= ppmc.0.din.02.in
net Xmaxlim => axis.0.pos-lim-sw-in
net Xhome <= ppmc.0.din.00.in
net Xhome => axis.0.home-sw-in

net Yminlim <= ppmc.0.din.05.in
net Yminlim => axis.1.neg-lim-sw-in
net Ymaxlim <= ppmc.0.din.06.in
net Ymaxlim => axis.1.pos-lim-sw-in
net Yhome <= ppmc.0.din.04.in
net Yhome => axis.1.home-sw-in

net Zminlim <= ppmc.0.din.09.in
net Zminlim => axis.2.neg-lim-sw-in
net Zmaxlim <= ppmc.0.din.10.in
net Zmaxlim => axis.2.pos-lim-sw-in
net Zhome <= ppmc.0.din.08.in
net Zhome => axis.2.home-sw-in

net Aminlim <= ppmc.0.din.12.in
net Aminlim => axis.3.neg-lim-sw-in
net Amaxlim <= ppmc.0.din.13.in
net Amaxlim => axis.3.pos-lim-sw-in
net Ahome <= ppmc.0.din.11.in
net Ahome => axis.3.home-sw-in


# connect index pulses to motion controller
# uncomment if you have encoder index signals
#net Xindex <= ppmc.0.encoder.00.index-enable => axis.0.index-enable
#net Yindex <= ppmc.0.encoder.01.index-enable => axis.1.index-enable
#net Zindex <= ppmc.0.encoder.02.index-enable => axis.2.index-enable
#net Aindex <= ppmc.0.encoder.03.index-enable => axis.3.index-enable

#
# Connect I/O controller I/Os
#

# connect e-stop write/sense to I/O controller
# and ppmc's fault with estop's output, so  estop FF is reset, but
#      prevent continued estop signal from ppmc from holding FF cleared
net ppmcEstop ppmc.0.din.estop.in
net ppmcEstop and2.0.in0
net EstopOkIn estop-latch.0.fault-in
net EstopOkIn and2.0.out
net EstopOkOut ppmc.0.dout.07.out
net EstopOkOut ppmc.0.dout.Estop.out
net EstopOkOut iocontrol.0.emc-enable-in
net EstopOkOut estop-latch.0.ok-out
net EstopOkOut and2.0.in1
net emc-estop-out iocontrol.0.user-enable-out
net emc-estop-out estop-latch.0.ok-in
net emc-estop-reset iocontrol.0.user-request-enable
net emc-estop-reset estop-latch.0.reset

# connect spindle fwd/rev to I/O controller
net SpindleFwd <= ppmc.0.dout.00.out
net SpindleFwd => motion.spindle-forward
net SpindleRev <= ppmc.0.dout.01.out
net SpindleRev => motion.spindle-reverse

# connect spindle brake to I/O controller
net SpindleBrakeOn <= ppmc.0.dout.02.out
net SpindleBrakeOn => motion.spindle-brake

# connect mist/flood coolant to I/O controller
net MistOn <= ppmc.0.dout.03.out
net MistOn => iocontrol.0.coolant-mist
net FloodOn <= ppmc.0.dout.04.out
net FloodOn => iocontrol.0.coolant-flood