[SOLVED]How to configure the PWM signal in a MESA 7i96 for a spindle?

More
4 years 7 months ago #237386 by PCW
"hm2/hm2_7i96.0: config.num_stepgens=5, but only 4 are available, not loading driver"

You need to change the number of stepgens to 4:

num_stepgens=4

In the driver configuration line

(since the last step generator has been replaced with the PWMGen)

Please Log in to join the conversation.

More
4 years 7 months ago #237391 by Nest
Ok, at now work fine.... and at now what's the next step?

Please Log in to join the conversation.

More
4 years 7 months ago #237404 by PCW
Not sure, what doesn't work?

Please Log in to join the conversation.

More
4 years 7 months ago #237448 by Nest
Now when I run linuxcnc I don't see the error, but I don't know how I have to configure PncConf for the PWM signal to work, or to which port the cables are connected.

Please Log in to join the conversation.

More
4 years 7 months ago #237474 by PCW
Pretty sure pncconf doesn't know how to setup PWM on a 7I96
so it needs to be added by editing the hal file. This consists
of adding the lines that setup the PWM and lines that connect the
7I96's PWM value and enable pins to the appropriate LinuxCNC
spindle control pins. I can suggest how to do this if you post your current
hal/ini files.

The PWM output is on the STEP4- pin of the 7I96 as discussed previously

Please Log in to join the conversation.

More
4 years 7 months ago #237481 by Nest
Ok, i upload my files

Please Log in to join the conversation.

More
4 years 7 months ago #237482 by PCW
Adding these lines to the spindle section of the hal file should be close:
(you will probably need to change the pwm frequency and scale values to match your hardware)

setp   hm2_7i96.0.pwmgen.00.pwm-frequency 10000
setp   hm2_7i96.0.pwmgen.00.scale 3600
net spindle-output hm2_7i96.0.pwmgen.00.value
net spindle-enable hm2_7i96.0.pwmgen.00.enable

 

Please Log in to join the conversation.

More
4 years 7 months ago #237488 by Nest
Error start the linuxcnc

The problem is
setp   hm2_7i96.0.pwmgen.00.pwm-frequency 10000

Code:
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.2-11-g6a3d0a434 Machine configuration directory is '/home/nest/linuxcnc/configs/CNC3040Z-DQ' Machine configuration file is 'CNC3040Z-DQ.ini' INIFILE=/home/nest/linuxcnc/configs/CNC3040Z-DQ/CNC3040Z-DQ.ini VERSION=1.1 PARAMETER_FILE=linuxcnc.var TASK=milltask HALUI=halui DISPLAY=axis 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): ./CNC3040Z-DQ.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: INFO: Hardware address (MAC): 00:60:1b:16:02:07 hm2_eth: discovered 7I96 hm2/hm2_7i96.0: Low Level init 0.15 hm2/hm2_7i96.0: Smart Serial Firmware Version 43 hm2/hm2_7i96.0: 51 I/O Pins used: hm2/hm2_7i96.0:     IO Pin 000 (TB3-01): IOPort hm2/hm2_7i96.0:     IO Pin 001 (TB3-02): IOPort hm2/hm2_7i96.0:     IO Pin 002 (TB3-03): IOPort hm2/hm2_7i96.0:     IO Pin 003 (TB3-04): IOPort hm2/hm2_7i96.0:     IO Pin 004 (TB3-05): IOPort hm2/hm2_7i96.0:     IO Pin 005 (TB3-06): IOPort hm2/hm2_7i96.0:     IO Pin 006 (TB3-07): IOPort hm2/hm2_7i96.0:     IO Pin 007 (TB3-08): IOPort hm2/hm2_7i96.0:     IO Pin 008 (TB3-09): IOPort hm2/hm2_7i96.0:     IO Pin 009 (TB3-10): IOPort hm2/hm2_7i96.0:     IO Pin 010 (TB3-11): IOPort hm2/hm2_7i96.0:     IO Pin 011 (TB3-13/TB3-14): SSR #0, pin Out-00 (Output) hm2/hm2_7i96.0:     IO Pin 012 (TB3-15/TB3-16): SSR #0, pin Out-01 (Output) hm2/hm2_7i96.0:     IO Pin 013 (TB3-17/TB3-18): SSR #0, pin Out-02 (Output) hm2/hm2_7i96.0:     IO Pin 014 (TB3-19/TB3-20): SSR #0, pin Out-03 (Output) hm2/hm2_7i96.0:     IO Pin 015 (TB3-21/TB3-22): SSR #0, pin Out-04 (Output) hm2/hm2_7i96.0:     IO Pin 016 (TB3-23/TB3-24): SSR #0, pin Out-05 (Output) hm2/hm2_7i96.0:     IO Pin 017 (TB1-02/TB1-03): StepGen #0, pin Step (Output) hm2/hm2_7i96.0:     IO Pin 018 (TB1-04/TB1-05): StepGen #0, pin Direction (Output) hm2/hm2_7i96.0:     IO Pin 019 (TB1-08/TB1-09): StepGen #1, pin Step (Output) hm2/hm2_7i96.0:     IO Pin 020 (TB1-10/TB1-11): StepGen #1, pin Direction (Output) hm2/hm2_7i96.0:     IO Pin 021 (TB1-14/TB1-15): StepGen #2, pin Step (Output) hm2/hm2_7i96.0:     IO Pin 022 (TB1-16/TB1-17): StepGen #2, pin Direction (Output) hm2/hm2_7i96.0:     IO Pin 023 (TB1-20/TB1-21): StepGen #3, pin Step (Output) hm2/hm2_7i96.0:     IO Pin 024 (TB1-22-TB1-23): StepGen #3, pin Direction (Output) hm2/hm2_7i96.0:     IO Pin 025 (TB2-02/TB2-03): PWMGen #0, pin Out0 (PWM or Up) (Output) hm2/hm2_7i96.0:     IO Pin 026 (TB2-04/TB2-05): PWMGen #0, pin Out1 (Dir or Down) (Output) hm2/hm2_7i96.0:     IO Pin 027 (TB2-07/TB2-08): Encoder #0, pin A (Input) hm2/hm2_7i96.0:     IO Pin 028 (TB2-10/TB2-11): Encoder #0, pin B (Input) hm2/hm2_7i96.0:     IO Pin 029 (TB2-13/TB2-14): Encoder #0, pin Index (Input) hm2/hm2_7i96.0:     IO Pin 030 (TB2-16/TB2-17): IOPort hm2/hm2_7i96.0:     IO Pin 031 (TB2-18/TB2-19): IOPort hm2/hm2_7i96.0:     IO Pin 032 (internal): IOPort hm2/hm2_7i96.0:     IO Pin 033 (internal): SSR #0, pin AC Ref (internal) (Output) hm2/hm2_7i96.0:     IO Pin 034 (P1-01): IOPort hm2/hm2_7i96.0:     IO Pin 035 (P1-02): IOPort hm2/hm2_7i96.0:     IO Pin 036 (P1-03): IOPort hm2/hm2_7i96.0:     IO Pin 037 (P1-04): IOPort hm2/hm2_7i96.0:     IO Pin 038 (P1-05): IOPort hm2/hm2_7i96.0:     IO Pin 039 (P1-06): IOPort hm2/hm2_7i96.0:     IO Pin 040 (P1-07): IOPort hm2/hm2_7i96.0:     IO Pin 041 (P1-08): IOPort hm2/hm2_7i96.0:     IO Pin 042 (P1-09): IOPort hm2/hm2_7i96.0:     IO Pin 043 (P1-11): IOPort hm2/hm2_7i96.0:     IO Pin 044 (P1-13): IOPort hm2/hm2_7i96.0:     IO Pin 045 (P1-15): IOPort hm2/hm2_7i96.0:     IO Pin 046 (P1-17): IOPort hm2/hm2_7i96.0:     IO Pin 047 (P1-19): IOPort hm2/hm2_7i96.0:     IO Pin 048 (P1-21): IOPort hm2/hm2_7i96.0:     IO Pin 049 (P1-23): IOPort hm2/hm2_7i96.0:     IO Pin 050 (P1-25): IOPort hm2/hm2_7i96.0: registered hm2_eth: in hm2_eth_reset 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 ./CNC3040Z-DQ.hal:208: parameter or pin 'hm2_7i96.0.pwmgen.00.pwm-frequency' not found 5392 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:      http://pastebin.com in order to provide information about the linuxcnc system and configuration.                 Date: mié mar 16 19:21:03 WET 2022             UTC Date: mié mar 16 19:21:03 UTC 2022         this program: /usr/bin/linuxcnc_info               uptime: 19:21:03 up 1:21, 1 user, load average: 1,30, 1,07, 0,76      lsb_release -sa: Debian Debian GNU/Linux 10 (buster) 10 buster       which linuxcnc: /usr/bin/linuxcnc                  pwd: /home/nest/linuxcnc/configs/CNC3040Z-DQ                 USER: nest              LOGNAME: nest                 HOME: /home/nest               EDITOR:               VISUAL:             LANGUAGE:                 TERM: dumb            COLORTERM:              DISPLAY: :0.0              DESKTOP: lightdm-xsession         display size: 1920x1080 pixels (508x285 millimeters)                 PATH: /usr/bin:/home/nest/linuxcnc/configs/CNC3040Z-DQ/bin:/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games uname items:          nodename -n: linuxcnc       kernel-name -s: Linux       kernel-vers -v: #1 SMP PREEMPT RT Debian 4.19.208-1 (2021-09-29)           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-18-rt-amd64 root=UUID=d8d1ad22-76ae-49c2-b593-5cb7c4750291 ro initrd=/install/initrd.gz quiet           model name: Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz                cores: 4              cpu MHz: 1612.974              parport: 0000-0000 : parport0               serial: 0000-0000 : serial Versions:                  gcc: gcc (Debian 8.3.0-6) 8.3.0               python: Python 2.7.16                  git: git version 2.20.1           git commit: NA                  tcl: 8.6                   tk: 8.6                glade: not_in_PATH           glade-gtk2: not_in_PATH linuxcnc_var all:      LINUXCNCVERSION: 2.8.2-11-g6a3d0a434 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*': Deseado=desconocido(U)/Instalar/eliminaR/Purgar/retener(H) | Estado=No/Inst/ficheros-Conf/desempaqUetado/medio-conF/medio-inst(H)/espera-disparo(W)/pendienTe-disparo |/ Err?=(ninguno)/requiere-Reinst (Estado,Err: mayúsc.=malo) ||/ Nombre              Versión               Arquitectura Descripción +++-===================-=====================-============-===================================================================== un  linuxcnc            <ninguna>             <ninguna>    (no hay ninguna descripción disponible) un  linuxcnc-dev        <ninguna>             <ninguna>    (no hay ninguna descripción disponible) un  linuxcnc-doc        <ninguna>             <ninguna>    (no hay ninguna descripción disponible) ii  linuxcnc-doc-en     1:2.8.2.11.g6a3d0a434 all          motion controller for CNC machines and robots (English documentation) ii  linuxcnc-doc-es     1:2.8.2.11.g6a3d0a434 all          controlador de movimiento para máquinas CNC y robots (Español). ii  linuxcnc-doc-fr     1:2.8.2.11.g6a3d0a434 all          motion controller for CNC machines and robots (French documentation) un  linuxcnc-sim        <ninguna>             <ninguna>    (no hay ninguna descripción disponible) un  linuxcnc-sim-dev    <ninguna>             <ninguna>    (no hay ninguna descripción disponible) ii  linuxcnc-uspace     1:2.8.2.11.g6a3d0a434 amd64        motion controller for CNC machines and robots ii  linuxcnc-uspace-dev 1:2.8.2.11.g6a3d0a434 amd64        PC based motion controller for real-time Linux

Please Log in to join the conversation.

More
4 years 7 months ago #237489 by PCW
That should be:

setp hm2_7i96.0.pwmgen.pwm_frequency 10000

(or whatever frequency your spindle interface requires)

Please Log in to join the conversation.

More
4 years 7 months ago #237498 by Nest
ok, now linuxcnc start without errors.
but when linuxcnc starts, the spindle starts to the maximum and when I send the M3 S11000 code the spindle speed decreases and when I send the M3 stop code the spindle speed increases to the maximum

How do I configure the hal file so that linuxcnc start with the spindle powered off?

Please Log in to join the conversation.

Time to create page: 0.056 seconds
Powered by Kunena Forum