Brother TC-211
Is there anyway to right the z brake into the hal
Yes. I think that is what has been suggested.
somewhere you probably have a HAL signal linked to axis.2.amp-enable. Lets assume it is called z-enable
Then you just need a line something like
net zenable hm2_5i25.0.7i77.0.output-03
And then the digital output pin will follow the amp-enable signal in HAL. (note that I have guessed at he GPIO pin naming, it might not be correct)
It is possible that you might want a few mS delay between powering the amp and releasing the brake. Long enough that the motor is powered up and trying to control the axis before it starts to drop, short enough that the motor isn't trying to move a braked axis.
loadrt timedelay count=1
addf timedelay.0 servo-thread
net zenable timedelay.0.in
net zbrake timedelay.0.out
setp timedelay.0.on-delay 0.1
setp timedelay.0.off-delay 0
Something like that.
Please Log in or Create an account to join the conversation.
the only difference was i did it in hardware and not as code , one relay with 2 pairs of contacts one for the servo' and the other for the brake
Please Log in or Create an account to join the conversation.
using a 2 pole changeover relay , so they cant both be on at the same time , so on an energised relay the brake is powered ( across the normaly closed contacts ) on i pole , and the amplifier enable on the other pole but using the normaly open , then you only need to worry over 1 enable line and the brake will look after it's self
I don't think that axis brakes ever work like that. But I could be wrong.
Normally the brakes seem to be sprung "on" so that with no power the axis is locked, and it is actively unlocked when the motor is powered up and ready to use it.
Please Log in or Create an account to join the conversation.
perhaps see if the op can turn the shaft at the coupler in the picture , would give us a start point i think
Please Log in or Create an account to join the conversation.
- mblaszkiewicz
- Offline
- Elite Member
- Posts: 241
- Thank you received: 5
Please Log in or Create an account to join the conversation.
so wire the brake relay between 24v and a gpio pin on the 7i77. and use the delay code that Andy posted to delay release for a second or 2 to allow the servo amp to stabilise and hold
you may need to adjust the delays once you have it working
Please Log in or Create an account to join the conversation.
- Zahnrad Kopf
- Offline
- Elite Member
- Posts: 218
- Thank you received: 3
Normally the brakes seem to be sprung "on" so that with no power the axis is locked, and it is actively unlocked when the motor is powered up and ready to use it.
That's standard. It's that way so that if power goes out, you don't have your head falling and crashing into the table.
Please Log in or Create an account to join the conversation.
- mblaszkiewicz
- Offline
- Elite Member
- Posts: 241
- Thank you received: 5
Here is my z axis hal
#*******************
# AXIS Z
#*******************
setp pid.z.Pgain [AXIS_2]P
setp pid.z.Igain [AXIS_2]I
setp pid.z.Dgain [AXIS_2]D
setp pid.z.bias [AXIS_2]BIAS
setp pid.z.FF0 [AXIS_2]FF0
setp pid.z.FF1 [AXIS_2]FF1
setp pid.z.FF2 [AXIS_2]FF2
setp pid.z.deadband [AXIS_2]DEADBAND
setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT
net z-index-enable <=> pid.z.index-enable
net z-enable => pid.z.enable
net z-output => pid.z.output
net z-pos-cmd => pid.z.command
net z-vel-fb => pid.z.feedback-deriv
net z-pos-fb => pid.z.feedback
# ---PWM Generator signals/setup---
setp hm2_5i25.0.7i77.0.1.analogout0-scalemax [AXIS_2]OUTPUT_SCALE
setp hm2_5i25.0.7i77.0.1.analogout0-minlim [AXIS_2]OUTPUT_MIN_LIMIT
setp hm2_5i25.0.7i77.0.1.analogout0-maxlim [AXIS_2]OUTPUT_MAX_LIMIT
net z-output => hm2_5i25.0.7i77.0.1.analogout0
net z-pos-cmd axis.2.motor-pos-cmd
net z-enable axis.2.amp-enable-out
# ---Encoder feedback signals/setup---
setp hm2_5i25.0.encoder.00.counter-mode 0
setp hm2_5i25.0.encoder.00.filter 1
setp hm2_5i25.0.encoder.00.index-invert 0
setp hm2_5i25.0.encoder.00.index-mask 0
setp hm2_5i25.0.encoder.00.index-mask-invert 0
setp hm2_5i25.0.encoder.00.scale [AXIS_2]ENCODER_SCALE
net z-pos-fb <= hm2_5i25.0.encoder.00.position
net z-vel-fb <= hm2_5i25.0.encoder.00.velocity
net z-pos-fb => axis.2.motor-pos-fb
net z-index-enable axis.2.index-enable <=> hm2_5i25.0.encoder.00.index-enable
net z-pos-rawcounts <= hm2_5i25.0.encoder.00.rawcounts
# ---setup home / limit switch signals---
net home-z => axis.2.home-sw-in
net min-z => axis.2.neg-lim-sw-in
net max-z => axis.2.pos-lim-sw-in
And how it is wired off of the servo driver to the 7i77 board
CN8-10 A TB3-1
CN8-9 /A TB3-2
CN8-12 B TB3-4
CN8-11 /B TB3-5
CN8-17 Z TB3-7
CN8-13 /Z TB3-8
ANALOG VELOCITY COMMAND
CN8-1 AOUT TB5-4
CN8-2 GND TB5-3
DRIVE ENABLE
CN8-15 ENA+ TB5-2
CN8-16 ENA- TB5-1
So adding the line of code from before
net zenable hm2_5i25.0.7i77.0.output-03
output 3 would actualy be output 2 ?????
and where would I wire the relay connections to on the 7i77 board ????
Would that be tb8 pin 20 for output 3
I'm really lost here
Mesa pdf for 7i77
Please Log in or Create an account to join the conversation.
so yes it can be confusing at first
2 have 2 banks of inputs and outputs on tb8 and tb 7
the first 16 pins are inputs and the last 8 are outputs
so your relay ( 24v) would go from your 24v + to the 7i77 TB8 PIN 20
and that your field voltage is is 24v TB2 pin 1 and ground pin 8
Please Log in or Create an account to join the conversation.
Firstly, in your HAL file the Z axis enable signal is called "z-enable" with a hyphen, so use that in any extra code you add.net z-enable => pid.z.enable
Note that you can add the brake stuff in the custom.hal file if you want to leave the main HAL file as-generated.
All HAL files share the same "name space", ie the same pin names and signal names are available to all HAL files.
DRIVE ENABLE
CN8-15 ENA+ TB5-2
CN8-16 ENA- TB5-1
You could possibly connect the brake relay here, but then you don't get to add the timedelay, so it is probably better not to.
net zenable hm2_5i25.0.7i77.0.output-03
output 3 would actualy be output 2 ?????
and where would I wire the relay connections to on the 7i77 board ????
Would that be tb8 pin 20 for output 3
I chose output-03 _completely_ at random. You should use whichever output is convenient for you.
I got the pin naming convention a little bit wrong, now that I look around the web for examples.
If we stick with output 03, then according to the Mesa manual that is on TB8 pin 20.
I will get back to this later with a wiring schematic.
Please Log in or Create an account to join the conversation.