Originally Posted by
kstrauss
I have a 770 rather than a 1100 and, looking at the inside of the control cabinet, don't see an easy place to install the DIN rail and power supplies that you used. Does the 1100 cabinet have sufficient empty space or did you install things in an auxiliary cabinet or...? If not too much trouble a photo would be appreciated.
No, but this is what I did. First I made some standoffs 1/2"D x 2.5"L threaded both ends with 10-24 thread. I tightly mounted a screw on one end & cut the head off leaving about a 1/4" of thread or just enough to get through the panel like so:
Then I mounted the DIN rail across the standoffs. Yeah, it covers up the BOB but you can still access all its terminals for troubleshooting if needed. Otherwise, it's not that difficult to remove the DIN rail - just 2 screws.
As you can see I got everything running. I wrote some M1xx routines to operate a solenoid for my ETS & Fog Buster.
I'm working on modifying PP so that when you select the High Speed spindle option in the PP Settings window M6 gets remapped to a custom routine such that when I change a tool it blows off the ETS and goes taps it with the new tool setting the correct offset for that tool. This all makes working with my HS spindle much easier.
With this setup I still have 2 relays free & 13 IO lines left on the 7i92.
These are the files I created for operating the ETS air supply & Fog Buster:
File M101:
Code:
#!/bin/bash
# Blow my ETS for P seconds
#
# M101 P3 Blow my ETS for 3 seconds
# Note: Seconds are always rounded to nearest integer
# value if a fractional value is entered. Negative
# values are considered to be 0 secs so we do nothing!
#
# Note: This file must be marked executable & located in:
#
# /home/operator/tmc/configs/tormach_mill/nc_subs
#
# The name can be any valid M1xx as long as it does not conflict
# with any existing file. Tormach already uses M100 so I am using
# M101 for this function. Also, when updating PathPilot you must
# copy this files from the old version directory to the new version
# directory.
MYBRD="hm2_7i92.0" # This could be a hm2_5i25.0
MYIOPORT="gpio.018" # My ETS is connected to IOPORT 18/Relay 1
# We configure the port here to alleviate the need to alter any PP
# configurations files and to prevent any updates from clobbering
# those changes. Re-running this command each time we make this
# call does no harm & besides the duty cycle is very low.
halcmd setp $MYBRD.$MYIOPORT.is_output true
# P is the first parameter passed from the M1xx call and contains
# the number of seconds to blow. Note: This string parameter is
# always expanded to 6 decimal places. Since BASH does not understand
# floating point we need to clean it up into an integer.
#
# First lets round-off any factional part the user could enter so we
# have a clean integer.
TDLY=$(printf "%.0f" $1)
if [ $TDLY -gt 0 ]
then
echo "Blowing ETS for $TDLY seconds"
halcmd setp $MYBRD.$MYIOPORT.out false
# Continue to blow for our number of seconds but return immediately
# so were not hungup while blowing. No need to slow things down...
sleep $TDLY && halcmd setp $MYBRD.$MYIOPORT.out true
else
echo "P parameter $TDLY results in 0 secs, doing nothing!"
fi
exit 0
File M102:
Code:
#!/bin/bash
# Operate my Fog Buster
#
# M102 P1 Turn it on
# M102 P0 Turn it off
# Note: Anything but zero will turn it on,
# even negative values. Zero (0 or 0.00)
# will always turn it off.
#
# Note: This file must be marked executable & located in:
#
# /home/operator/tmc/configs/tormach_mill/nc_subs
#
# The name can be any valid M1xx as long as it does not conflict
# with any existing file. Tormach already uses M100 so I am using
# M102 for this function. Also, when updating PathPilot you must
# copy this file from the old version directory to the new version
# directory.
MYBRD="hm2_7i92.0" # This could be a hm2_5i25.0
MYIOPORT="gpio.020" # My ETS is connected to IOPORT 20/Relay 2
# We configure the port here to alleviate the need to alter any PP
# configurations files and to prevent any updates from clobbering
# those changes. Re-running this command each time we make this
# call does no harm & besides the duty cycle is very low.
halcmd setp $MYBRD.$MYIOPORT.is_output true
# P is the first parameter passed from the M1xx call and contains
# a string representing the floating point value entered after P.
# This string is expanded to 6 decimal places whether we enter 1,
# 1.0 or even 0 after P. Because BASH only knows integers we will
# do a string comparison of the P value for 0 or "0.000000".
# Anything else is considered a 1.
MYSTATUS=$1
echo "$MYSTATUS"
# My Fog Buster is connected to IOPORT 18/Relay 2
if [ $MYSTATUS = "0.000000" ]
then
halcmd setp $MYBRD.$MYIOPORT.out true
echo "Setting Fog Buster off"
else
halcmd setp $MYBRD.$MYIOPORT.out false
echo "Setting Fog Buster on"
fi
exit 0