My 7i76e Connection Sheet

More
5 years 11 months ago #188915 by fons
Replied by fons on topic My 7i76e Connection Sheet
i add for the mpg in the costul.hal the following thats what i found in de manual

# Include your custom HAL commands here
# This file will not be overwritten when you run PNCconf again
# Jog Pendant

loadrt encoder num_chan=1
loadrt mux4 count=1
addf encoder.capture-position servo-thread
addf encoder.update-counters base-thread
addf mux4.0 servo-thread

# If your MPG outputs a quadrature signal per click set x4 to 1
# If your MPG puts out 1 pulse per click set x4 to 0

setp encoder.0.x4-mode 0

# For velocity mode, set to 1
# In velocity mode the axis stops when the dial is stopped
# even if that means the commanded motion is not completed,
# For position mode (the default), set to 0
# In position mode the axis will move exactly jog-scale
# units for each count, regardless of how long that might take,

setp axis.x.jog-vel-mode 0
setp axis.y.jog-vel-mode 0
setp axis.z.jog-vel-mode 0

# This sets the scale that will be used based on the input to the mux4
setp mux4.0.in0 0.1
setp mux4.0.in1 0.01
setp mux4.0.in2 0.001

# The inputs to the mux4 component

net scale1 mux4.0.sel0 <= hm2_7i76e.0.7i76.0.0.input-20
net scale2 mux4.0.sel1 <= hm2_7i76e.0.7i76.0.0.input-21

# The output from the mux4 is sent to each axis jog scale

net mpg-scale <= mux4.0.out
net mpg-scale => axis.x.jog-scale
net mpg-scale => axis.y.jog-scale
net mpg-scale => axis.z.jog-scale

# The MPG inputs

net mpg-a encoder.0.phase-A <= hm2_7i76e.0.7i76.0.0.input-16
net mpg-b encoder.0.phase-B <= hm2_7i76e.0.7i76.0.0.input-17

# The Axis select inputs

net mpg-x axis.x.jog-enable <= hm2_7i76e.0.7i76.0.0.input-22
net mpg-y axis.y.jog-enable <= hm2_7i76e.0.7i76.0.0.input-23
net mpg-z axis.z.jog-enable <= hm2_7i76e.0.7i76.0.0.input-24

# The encoder output counts to the axis. Only the selected axis will move.

net encoder-counts <= encoder.0.counts
net encoder-counts => axis.x.jog-counts
net encoder-counts => axis.y.jog-counts
net encoder-counts => axis.z.jog-counts

afther that i restart the machine and got following error report

Error report created by /usr/lib/tcltk/linuxcnc/show_errors.tcl:

Print file information:
RUN_IN_PLACE=no
LINUXCNC_DIR=
LINUXCNC_BIN_DIR=/usr/bin
LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc
LINUXCNC_SCRIPT_DIR=
LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules
LINUXCNC_CONFIG_DIR=
LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs
INIVAR=inivar
HALCMD=halcmd
LINUXCNC_EMCSH=/usr/bin/wish8.6
LINUXCNC - 2.8.0
Machine configuration directory is '/home/envy/linuxcnc/configs/20201007'
Machine configuration file is '20201007.ini'
INIFILE=/home/envy/linuxcnc/configs/20201007/20201007.ini
VERSION=1.1
PARAMETER_FILE=linuxcnc.var
TASK=milltask
HALUI=halui
DISPLAY=gmoccapy
COORDINATES=XYZ
KINEMATICS=trivkins coordinates=XYZ
Starting LinuxCNC...
Starting LinuxCNC server program: linuxcncsvr
Loading Real Time OS, RTAPI, and HAL_LIB modules
Starting LinuxCNC IO program: io
Starting HAL User Interface program: halui
Found file(REL): ./20201007.hal
Found file(REL): ./custom.hal
Shutting down and cleaning up LinuxCNC...
Running HAL shutdown script
hm2: loading Mesa HostMot2 driver version 0.15
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: 00:60:1b:10:45:2f
hm2_eth: discovered 7I76E-16
hm2/hm2_7i76e.0: Smart Serial Firmware Version 43
Board hm2_7i76e.0.7i76.0.0 Hardware Mode 0 = standard
Board hm2_7i76e.0.7i76.0.0 Software Mode 0 = io_spin
Board hm2_7i76e.0.7i76.0.0 Software Mode 1 = io_ana_spin
Board hm2_7i76e.0.7i76.0.0 Software Mode 2 = io_enc_ana_spin_fv
hm2/hm2_7i76e.0: 51 I/O Pins used:
hm2/hm2_7i76e.0: IO Pin 000 (P1-01): StepGen #0, pin Direction (Output)
hm2/hm2_7i76e.0: IO Pin 001 (P1-14): StepGen #0, pin Step (Output)
hm2/hm2_7i76e.0: IO Pin 002 (P1-02): StepGen #1, pin Direction (Output)
hm2/hm2_7i76e.0: IO Pin 003 (P1-15): StepGen #1, pin Step (Output)
hm2/hm2_7i76e.0: IO Pin 004 (P1-03): StepGen #2, pin Direction (Output)
hm2/hm2_7i76e.0: IO Pin 005 (P1-16): StepGen #2, pin Step (Output)
hm2/hm2_7i76e.0: IO Pin 006 (P1-04): StepGen #3, pin Direction (Output)
hm2/hm2_7i76e.0: IO Pin 007 (P1-17): StepGen #3, pin Step (Output)
hm2/hm2_7i76e.0: IO Pin 008 (P1-05): StepGen #4, pin Direction (Output)
hm2/hm2_7i76e.0: IO Pin 009 (P1-06): StepGen #4, pin Step (Output)
hm2/hm2_7i76e.0: IO Pin 010 (P1-07): Smart Serial Interface #0, pin TxData0 (Output)
hm2/hm2_7i76e.0: IO Pin 011 (P1-08): Smart Serial Interface #0, pin RxData0 (Input)
hm2/hm2_7i76e.0: IO Pin 012 (P1-09): IOPort
hm2/hm2_7i76e.0: IO Pin 013 (P1-10): IOPort
hm2/hm2_7i76e.0: IO Pin 014 (P1-11): Encoder #0, pin Index (Input)
hm2/hm2_7i76e.0: IO Pin 015 (P1-12): Encoder #0, pin B (Input)
hm2/hm2_7i76e.0: IO Pin 016 (P1-13): Encoder #0, pin A (Input)
hm2/hm2_7i76e.0: IO Pin 017 (P2-01): IOPort
hm2/hm2_7i76e.0: IO Pin 018 (P2-14): IOPort
hm2/hm2_7i76e.0: IO Pin 019 (P2-02): IOPort
hm2/hm2_7i76e.0: IO Pin 020 (P2-15): IOPort
hm2/hm2_7i76e.0: IO Pin 021 (P2-03): IOPort
hm2/hm2_7i76e.0: IO Pin 022 (P2-16): IOPort
hm2/hm2_7i76e.0: IO Pin 023 (P2-04): IOPort
hm2/hm2_7i76e.0: IO Pin 024 (P2-17): IOPort
hm2/hm2_7i76e.0: IO Pin 025 (P2-05): IOPort
hm2/hm2_7i76e.0: IO Pin 026 (P2-06): IOPort
hm2/hm2_7i76e.0: IO Pin 027 (P2-07): IOPort
hm2/hm2_7i76e.0: IO Pin 028 (P2-08): IOPort
hm2/hm2_7i76e.0: IO Pin 029 (P2-09): IOPort
hm2/hm2_7i76e.0: IO Pin 030 (P2-10): IOPort
hm2/hm2_7i76e.0: IO Pin 031 (P2-11): IOPort
hm2/hm2_7i76e.0: IO Pin 032 (P2-12): IOPort
hm2/hm2_7i76e.0: IO Pin 033 (P2-13): IOPort
hm2/hm2_7i76e.0: IO Pin 034 (P3-01): IOPort
hm2/hm2_7i76e.0: IO Pin 035 (P3-14): IOPort
hm2/hm2_7i76e.0: IO Pin 036 (P3-02): IOPort
hm2/hm2_7i76e.0: IO Pin 037 (P3-15): IOPort
hm2/hm2_7i76e.0: IO Pin 038 (P3-03): IOPort
hm2/hm2_7i76e.0: IO Pin 039 (P3-16): IOPort
hm2/hm2_7i76e.0: IO Pin 040 (P3-04): IOPort
hm2/hm2_7i76e.0: IO Pin 041 (P3-17): IOPort
hm2/hm2_7i76e.0: IO Pin 042 (P3-05): IOPort
hm2/hm2_7i76e.0: IO Pin 043 (P3-06): IOPort
hm2/hm2_7i76e.0: IO Pin 044 (P3-07): IOPort
hm2/hm2_7i76e.0: IO Pin 045 (P3-08): IOPort
hm2/hm2_7i76e.0: IO Pin 046 (P3-09): IOPort
hm2/hm2_7i76e.0: IO Pin 047 (P3-10): IOPort
hm2/hm2_7i76e.0: IO Pin 048 (P3-11): IOPort
hm2/hm2_7i76e.0: IO Pin 049 (P3-12): IOPort
hm2/hm2_7i76e.0: IO Pin 050 (P3-13): IOPort
hm2/hm2_7i76e.0: registered
hm2_eth: HostMot2 ethernet driver unloaded
hm2: unloading
Removing HAL_LIB, RTAPI, and Real Time OS modules
Removing NML shared memory segments

Debug file information:
Note: Using POSIX realtime
HAL: ERROR: thread 'base-thread' not found
./custom.hal:8: addf failed
2690
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime



Info report created by linuxcnc_info:
The file: /tmp/linuxcnc_info.txt
can be posted to a forum or a web site like:
pastebin.com
in order to provide information about the linuxcnc
system and configuration.

Date: di 10 nov 2020 20:50:07 CET
UTC Date: di 10 nov 2020 19:50:07 UTC
this program: /usr/bin/linuxcnc_info
uptime: 20:50:07 up 1:14, 1 user, load average: 0,20, 0,20, 0,20
lsb_release -sa: Debian Debian GNU/Linux 10 (buster) 10 buster
which linuxcnc: /usr/bin/linuxcnc
pwd: /home/envy/linuxcnc/configs/20201007
USER: envy
LOGNAME: envy
HOME: /home/envy
EDITOR:
VISUAL:
LANGUAGE:
TERM: dumb
COLORTERM:
DISPLAY: :0.0
DESKTOP: lightdm-xsession
display size: 1366x768 pixels (361x203 millimeters)
PATH: /usr/bin:/home/envy/linuxcnc/configs/20201007/bin:/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

uname items:
nodename -n: envy
kernel-name -s: Linux
kernel-vers -v: #1 SMP PREEMPT RT Debian 4.19.132-1 (2020-07-24)
machine -m: x86_64
processor -p: unknown
platform -i: unknown
oper system -o: GNU/Linux

/proc items:
cmdline: BOOT_IMAGE=/boot/vmlinuz-4.19.0-10-rt-amd64 root=UUID=24bd3a29-7675-485a-9cf1-7f582d73eb00 ro initrd=/install/gtk/initrd.gz quiet
model name: Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz
cores: 4
cpu MHz: 1803.631
parport:
serial:

Versions:
gcc: gcc (Debian 8.3.0-6) 8.3.0
python: Python 2.7.16
git: not_in_PATH
git commit: NA
tcl: 8.6
tk: 8.6
glade: not_in_PATH
glade-gtk2: not_in_PATH

linuxcnc_var all:

LINUXCNCVERSION: 2.8.0
LINUXCNC_AUX_GLADEVCP: /usr/share/linuxcnc/aux_gladevcp
LINUXCNC_AUX_EXAMPLES: /usr/share/linuxcnc/aux_examples
REALTIME: /etc/init.d/realtime
RTS: uspace
HALLIB_DIR: /usr/share/linuxcnc/hallib

dpkg -l '*linuxcnc*':
Gevraagd=(U)onbekend/(I)nstalleren/ve(R)wijderen/(P)wissen/(H)ouden
| Status=Niet/Inst/Conf/Uitgep/halF-geconf/Halfgeïnst/verWacht-trig/Trig-bezig
|/ Fout?=(geen)/heRinst. nodig/ (Status,Fout: hoofdletter=ernstig)
||/ Naam Versie Architectuur Omschrijving
+++-===================-============-============-=====================================================================
un linuxcnc <geen> <geen> (geen beschrijving beschikbaar)
un linuxcnc-dev <geen> <geen> (geen beschrijving beschikbaar)
un linuxcnc-doc <geen> <geen> (geen beschrijving beschikbaar)
ii linuxcnc-doc-cn 1:2.8.0 all motion controller for CNC machines and robots (Chinese
ii linuxcnc-doc-en 1:2.8.0 all motion controller for CNC machines and robots (English documentation)
ii linuxcnc-doc-es 1:2.8.0 all controlador de movimiento para máquinas CNC y robots (Español).
ii linuxcnc-doc-fr 1:2.8.0 all motion controller for CNC machines and robots (French documentation)
un linuxcnc-sim <geen> <geen> (geen beschrijving beschikbaar)
un linuxcnc-sim-dev <geen> <geen> (geen beschrijving beschikbaar)
ii linuxcnc-uspace 1:2.8.0 amd64 motion controller for CNC machines and robots
ii linuxcnc-uspace-dev 1:2.8.0 amd64 PC based motion controller for real-time Linux

what do i wrong ?

Please Log in to join the conversation.

More
5 years 11 months ago #188916 by tommylight

fons wrote:
loadrt encoder num_chan=1
loadrt mux4 count=1
addf encoder.capture-position servo-thread
addf encoder.update-counters base-thread <<<<<<<<<
addf mux4.0 servo-thread

Change that to
servo-thread
Although that might have some side effects like slower reaction time.

Please Log in to join the conversation.

More
5 years 11 months ago #188918 by PCW
Replied by PCW on topic My 7i76e Connection Sheet
You did not have a base thread instantiated in your hal/ini files

But that's really correct since you cannot use a base thread with the 7I76E
You could use the servo thread for the software encoder, but on a 7I76E
you would be better off using the built in MPG encoders rather than using
a software encoder. The built in encoders would have a higher count rate
and 5V inputs that match most MPG dials.

Please Log in to join the conversation.

More
5 years 11 months ago #188925 by fons
Replied by fons on topic My 7i76e Connection Sheet
thx very much that was the problem so fare i change the base-thread in servo-thread and now i don't have an error
second problem how do i activate now the mpg
when i set to the x-axis and i rotate the mpg no movement
what are the conditions for linux cnc to move the axis ?
when i run 3dtest.ngc the axis move nice

Please Log in to join the conversation.

More
5 years 11 months ago #188930 by PCW
Replied by PCW on topic My 7i76e Connection Sheet
I would not expect the software encoder to work unless its output signals
swing more the about 80% of the field voltage(normal 5V MPGs will not work)

This is why you should use the built in mpg encoders, here is an example:

forum.linuxcnc.org/show-your-stuff/32029...build?start=20#85279

Please Log in to join the conversation.

More
5 years 11 months ago #188934 by fons
Replied by fons on topic My 7i76e Connection Sheet
i use an external mpg A and B signale (powerd by the 5v of the speed sensor of the spindel) as input to the mesa and a mux4 for 1-10-100
i don't understand what you mean with the software encoders versus external enconder

Please Log in to join the conversation.

More
5 years 11 months ago #188942 by PCW
Replied by PCW on topic My 7i76e Connection Sheet
Right a 5V MPG will not work unless you use the built-in MPG
encoder counters in the 7I76E (as per the example in the link above)

The software encoder is the encoder comp you loaded in your hal example
this takes A and B encoder signals from inputs and provides a count

The 7I76/7I76E have a built in encoder counter that does this function
and in addition uses input thresholds that are compatible with 5V MPG signals

Please Log in to join the conversation.

More
5 years 11 months ago #188974 by fons
Replied by fons on topic My 7i76e Connection Sheet
as fare as i know i use the first off two mpg encoder counters where A and B are conected to pin 1 and 2 from tb5 . i use the mpg ( www.aliexpress.com/item/32705668787.html...02_,searchweb201603_ ) its a 5v A+B(also inverted not used) when i rotate the mpg i see the pulses 0-5-0 v above i post the hal-file

Please Log in to join the conversation.

More
5 years 11 months ago #188985 by PCW
Replied by PCW on topic My 7i76e Connection Sheet
Those are the correct pins for the built-in MPG but your
connections are wrong for using the built in encoders.

Please take a look at the linked page.

At the minimum, these lines would be removed:

loadrt encoder num_chan=1
addf encoder.capture-position servo-thread
addf encoder.update-counters base-thread
setp encoder.0.x4-mode 0
net mpg-a encoder.0.phase-A <= hm2_7i76e.0.7i76.0.0.input-16
net mpg-b encoder.0.phase-B <= hm2_7i76e.0.7i76.0.0.input-17

and this line would be changed
from:
net encoder-counts <= encoder.0.counts
to:
net encoder-counts <= hm2_7i76e.0.7i76.0.0.enc0.count

Please Log in to join the conversation.

More
5 years 11 months ago #189071 by fons
Replied by fons on topic My 7i76e Connection Sheet
when i remove and change the entry's i god an error
like ./custom.hal:9: Pin 'hm2_7i76e.0.7i76.0.0.enc0.count' does not exist

when i enter the the hal file like you mension above

loadrt mux4 count=1
addf mux4.0 servo-thread
loadrt or2 count=4
addf or2.3 servo-thread

setp axis.x.jog-vel-mode 0
net x-jog-counter <= hm2_7i76e.0.7i76.0.0.enc0.count
net x-jog-counter => axis.x.jog-counts
net mux-in1 or2.3.in0 <= hm2_7i76e.0.7i76.0.0.input-22 => mux4.0.sel0
net mux-in2 or2.3.in1 <= hm2_7i76e.0.7i76.0.0.input-21 => mux4.0.sel1
net x-jog-enable <= or2.3.out
net x-jog-enable => axis.x.jog-enable
setp mux4.0.in0 0.0
setp mux4.0.in1 1.0
setp mux4.0.in2 0.1
setp mux4.0.in3 0.01
net x-jog-scale mux4.0.out => axis.x.jog-scale

this error return

Debug file information:
Note: Using POSIX realtime
./custom.hal:9: Pin 'hm2_7i76e.0.7i76.0.0.enc0.count' does not exist
2537
and till now no axis wil follow the mpg

Please Log in to join the conversation.

Time to create page: 0.186 seconds
Powered by Kunena Forum