/
tshw_v4.hal
137 lines (111 loc) · 4.01 KB
/
tshw_v4.hal
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
###################################################################
# TsHW Talla simple Hand Wheel LinuxCNC Version 2.9
# TsHW V4 Platine 16xIN 16xOUT 2xANA 1xENC
# 03.10.2022
###################################################################
# ilowpass und and2
#
# Wenn diese schon in einer anderen HAL geladen bzw. verwendet werden,
# dann muss dies in der Struktur beachtet werden.
# Denn doppeltes laden von Komponenten ist nicht möglich.
# Es müssen die loadrt Befehle auskommentiert werden und
# die loadrt Befehle in den anderen HAL Dateien mit diesen Namen
# ergänzt werden.
# addf kann hier bleiben :-)
#
# Damit der Zero der Achsen geht müssen in der INI die MDI Commands
# angelegt werden
#
# [HALUI]
# MDI_COMMAND = G10 L20 P1 X0
# MDI_COMMAND = G10 L20 P1 Y0
# MDI_COMMAND = G10 L20 P1 Z0
#
#
#
# Mit setp shw.enc-smooth.gain kann die Beschleunigung eingestellt werden.
# und mit setp shw.enc-smooth.scale die Übersetzung
#
###################################################################
####################
## TsHW ##
####################
loadrt ilowpass names=shw.enc-smooth
addf shw.enc-smooth servo-thread
setp shw.enc-smooth.scale 1
setp shw.enc-smooth.gain 0.025
setp axis.x.jog-vel-mode 1
setp axis.y.jog-vel-mode 1
setp axis.z.jog-vel-mode 1
loadrt and2 names=shw.ena-x,shw.ena-y,shw.ena-z,shw.zero-x,shw.zero-y,shw.zero-z
addf shw.ena-x servo-thread
addf shw.ena-y servo-thread
addf shw.ena-z servo-thread
addf shw.zero-x servo-thread
addf shw.zero-y servo-thread
addf shw.zero-z servo-thread
loadrt mux8 names=shw.step-choice
addf shw.step-choice servo-thread
net key-0001 => shw.step-choice.sel0
net key-001 => shw.step-choice.sel1
net key-01 => shw.step-choice.sel2
setp shw.step-choice.in1 0.001
setp shw.step-choice.in2 0.01
setp shw.step-choice.in4 0.1
net step-choice <= shw.step-choice.out
net step-choice => axis.x.jog-scale
net step-choice => axis.y.jog-scale
net step-choice => axis.z.jog-scale
net key-0001 <= hm2_7i76e.0.TsHW.0.1.input-06
net key-0001 => hm2_7i76e.0.TsHW.0.1.output-06
net key-001 <= hm2_7i76e.0.TsHW.0.1.input-05
net key-001 => hm2_7i76e.0.TsHW.0.1.output-05
net key-01 <= hm2_7i76e.0.TsHW.0.1.input-04
net key-01 => hm2_7i76e.0.TsHW.0.1.output-04
net key-x <= hm2_7i76e.0.TsHW.0.1.input-01
net key-x => hm2_7i76e.0.TsHW.0.1.output-01
net key-x => shw.ena-x.in0
net ena-x shw.ena-x.out => axis.x.jog-enable
net key-y <= hm2_7i76e.0.TsHW.0.1.input-02
net key-y => hm2_7i76e.0.TsHW.0.1.output-02
net key-y => shw.ena-y.in0
net ena-y shw.ena-y.out => axis.y.jog-enable
net key-z <= hm2_7i76e.0.TsHW.0.1.input-03
net key-z => hm2_7i76e.0.TsHW.0.1.output-03
net key-z => shw.ena-z.in0
net ena-z shw.ena-z.out => axis.z.jog-enable
net key-ena <= hm2_7i76e.0.TsHW.0.1.input-00
net key-ena => shw.ena-x.in1
net key-ena => shw.ena-y.in1
net key-ena => shw.ena-z.in1
net key-ena => halui.mode.manual
net key-ena => axisui.notifications-clear
net key-ena => hm2_7i76e.0.TsHW.0.1.output-00
net enc-00 shw.enc-smooth.in <= hm2_7i76e.0.TsHW.0.1.encoder-0.count
net enc-01 <= shw.enc-smooth.out
net enc-01 => axis.x.jog-counts
net enc-01 => axis.y.jog-counts
net enc-01 => axis.z.jog-counts
net key-03 <= hm2_7i76e.0.TsHW.0.1.input-07
net key-03 => halui.program.run
net key-03 => halui.mode.auto
net led-03 <= halui.program.is-running
net led-03 => hm2_7i76e.0.TsHW.0.1.output-07
net key-04 <= hm2_7i76e.0.TsHW.0.1.input-08
net key-04 => hm2_7i76e.0.TsHW.0.1.output-08
net key-04 => shw.zero-x.in1
net key-04 => shw.zero-y.in1
net key-04 => shw.zero-z.in1
net key-04 => halui.mode.mdi
net key-z => shw.zero-z.in0
net key-x => shw.zero-x.in0
net key-y => shw.zero-y.in0
net zero-x shw.zero-x.out => halui.mdi-command-00
net zero-y shw.zero-y.out => halui.mdi-command-01
net zero-z shw.zero-z.out => halui.mdi-command-02
net key-09 <= hm2_7i76e.0.TsHW.0.1.input-09
net key-09 => halui.program.stop
net led-09 <= halui.program.is-idle
net led-09 => hm2_7i76e.0.TsHW.0.1.output-09
net key-10 <= hm2_7i76e.0.TsHW.0.1.input-10
###################################################################