My 7i76e Connection Sheet

More
10 Nov 2020 20:55 #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 or Create an account to join the conversation.

More
10 Nov 2020 21:00 #188916 by tommylight


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.
The following user(s) said Thank You: Bncs

Please Log in or Create an account to join the conversation.

More
10 Nov 2020 21:04 #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.
The following user(s) said Thank You: Bncs

Please Log in or Create an account to join the conversation.

More
10 Nov 2020 21:38 #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 or Create an account to join the conversation.

More
10 Nov 2020 22:08 - 10 Nov 2020 22:12 #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
Last edit: 10 Nov 2020 22:12 by PCW.
The following user(s) said Thank You: Bncs

Please Log in or Create an account to join the conversation.

More
10 Nov 2020 22:26 #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 or Create an account to join the conversation.

More
10 Nov 2020 23:39 #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 or Create an account to join the conversation.

More
11 Nov 2020 10:23 #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 or Create an account to join the conversation.

More
11 Nov 2020 12:12 #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
The following user(s) said Thank You: Bncs

Please Log in or Create an account to join the conversation.

More
11 Nov 2020 23:42 #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 or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.108 seconds
Powered by Kunena Forum