Advanced Search

Search Results (Searched for: )

  • tommylight
  • tommylight's Avatar
02 Sep 2024 21:19
Replied by tommylight on topic KVM on Preempt-RT

KVM on Preempt-RT

Category: Installing LinuxCNC

That is a Debian question, not LinuxCNC question, so yes you can install it, but it will most probably ruin latency or might replace the real time kernel. Then again, it might just work.
wiki.debian.org/KVM
  • JetForMe
  • JetForMe's Avatar
02 Sep 2024 21:09 - 02 Sep 2024 21:09
Inspect current G64 parameters? was created by JetForMe

Inspect current G64 parameters?

Category: General LinuxCNC Questions

Is there a way to see what the current G64 configuration is? e.g what values of P and Q are? Are there some system-defined parameters that hold these values?

It shows in the status line as `G64`, does that mean it’s G64 by itself, with no P or Q specified? (This is the problem with the absence of some indication in the UI leading to ambiguous interpretation.)
  • Carsten
  • Carsten
02 Sep 2024 20:14
Replied by Carsten on topic Probe Basic in QTDragon

Probe Basic in QTDragon

Category: Qtvcp

Hi Chris,

thanks. I tried it.
I had to copy qtdragon.ui to qtvcp/widgets_ui also to get the local directories accepted.

But then, basic probe does not call my front_right_outside.ngc.
Unfortunately  the processing changed from ngc to python

Property for button in basic_probe.ui is now "probe" instead of "filename".

basic_probe.py:
def probe_btn_clicked(self, button):
        cmd = button.property('probe')
        #print("Button clicked ", cmd)
        self.get_parms()
        self.start_probe(cmd)

probe_routines.py:
    # Front right outside corner
    def probe_outside_xmyp(self):
        # move X+ xy_clearance Y+ edge_length
        s = """G91
        G1 F%s X%f Y%f
        G90""" % (self.data_rapid_vel, self.data_xy_clearance, self.data_side_edge_length )        
        rtn = self.CALL_MDI_WAIT(s, self.timeout) 

Carsten
 



 
  • PCW
  • PCW's Avatar
02 Sep 2024 20:03
Replied by PCW on topic encoder.N.velocity-rpm

encoder.N.velocity-rpm

Category: Basic Configuration

You would normally use a 7i97 encoder for this:

net spindle-vel-fb-rps       <=   hm2_[MESA](BOARD).0.encoder.05.velocity

net spindle-vel-fb-rpm       <=  hm2_[MESA](BOARD).0.encoder.05.velocity-rpm


 
  • cmorley
  • cmorley
02 Sep 2024 19:50
Replied by cmorley on topic Add Tab to Axis View Pane

Add Tab to Axis View Pane

Category: AXIS

What version of linuxcnc are you using?

vismach_mill_xyz is a builtin example panel. Use it to check that embedding works.
You would need to adapt your Tk based panel to Qr it's not too much work but there are no how too examples.
 
  • greg23_78
  • greg23_78
02 Sep 2024 19:46 - 02 Sep 2024 19:49
encoder.N.velocity-rpm was created by greg23_78

encoder.N.velocity-rpm

Category: Basic Configuration

I need a little help, I can't get the spindle speed in rpm.

I have a 1024 pulse/revolution encoder on the spindle
The encoder A phase is connected to the hm2_7i97.0.7i84.0.0.input-28
The encoder index pulse is connected to the hm2_7i97.0.7i84.0.0.input-30
I have the impression that my encoder transmits the pulses correctly, but the value of low.pass.0.out and encoder.0.velocity-rpm is not fixed and displays values from 3 to 19 for a rotation speed of 500 RPM.

what do I need to change ?

 

INI
[SPINDLE_0]
P = 0
I = 0
D = 0
FF0 = 1
FF1 = 0
FF2 = 0
BIAS = 0
DEADBAND = 0
MAX_OUTPUT = 2554
ENCODER_SCALE = 1024
OUTPUT_SCALE = 2554
OUTPUT_MIN_LIMIT = 0
OUTPUT_MAX_LIMIT = 2600

HAL
# Axis: SPINDLE Joint: 5 Output: 5

setp   pid.s.Pgain     [SPINDLE_0]P
setp   pid.s.Igain     [SPINDLE_0]I
setp   pid.s.Dgain     [SPINDLE_0]D
setp   pid.s.bias      [SPINDLE_0]BIAS
setp   pid.s.FF0       [SPINDLE_0]FF0
setp   pid.s.FF1       [SPINDLE_0]FF1
setp   pid.s.FF2       [SPINDLE_0]FF2
setp   pid.s.deadband  [SPINDLE_0]DEADBAND
setp   pid.s.maxoutput [SPINDLE_0]MAX_OUTPUT
setp   pid.s.error-previous-target true

net spindle-index-enable   <=>  pid.s.index-enable
net spindle-enable          =>  pid.s.enable
net spindle-vel-cmd-rpm-abs     =>  pid.s.command
net spindle-vel-fb-rpm      =>  pid.s.feedback
net spindle-output          <=  pid.s.output

# ---PWM Generator signals/setup---

setp   hm2_[MESA](BOARD).0.pwmgen.05.scale  [SPINDLE_0]OUTPUT_SCALE
setp   hm2_[MESA](BOARD).0.pwmgen.05.output-type 1
setp   hm2_[MESA](BOARD).0.pwmgen.05.offset-mode 1

# ---Encoder feedback signals/setup---

setp    encoder.3.position-scale  [SPINDLE_0]ENCODER_SCALE
setp    encoder.3.counter-mode    true

net spindle-position        encoder.3.position      =>      spindle.0.revs
#net spindle-velocity        encoder.3.velocity      =>      spindle.0.speed-in

setp scale.0.gain 60
setp lowpass.0.gain 1.2

net spindle-velocity-rps                        encoder.3.velocity => scale.0.in
net spindle-velocity-rpm                        scale.0.out => abs.0.in
net spindle-velocity-rpm-abs                    abs.0.out => lowpass.0.in
net spindle-velocity-rpm-abs-filtered           lowpass.0.out 

net spindle-index-enable    encoder.3.index-enable  <=>     spindle.0.index-enable

net spindle-phase-a     encoder.3.phase-A <= hm2_7i97.0.7i84.0.0.input-28
net spindle-phase-b     encoder.3.phase-B
net spindle-index       encoder.3.phase-Z <= hm2_7i97.0.7i84.0.0.input-30

# ---setup spindle control signals---

net spindle-vel-cmd-rps        <=  spindle.0.speed-out-rps
net spindle-vel-cmd-rps-abs    <=  spindle.0.speed-out-rps-abs
net spindle-vel-cmd-rpm        <=  spindle.0.speed-out
net spindle-vel-cmd-rpm-abs    <=  spindle.0.speed-out-abs
net spindle-enable             <=  spindle.0.on
net spindle-cw                 <=  spindle.0.forward
net spindle-ccw                <=  spindle.0.reverse
net spindle-brake              <=  spindle.0.brake
net spindle-at-speed           =>  spindle.0.at-speed


# ---Setup spindle at speed signal

net spindle-cw              => hm2_7i97.0.7i84.0.0.output-05
net spindle-ccw             => hm2_7i97.0.7i84.0.0.output-06
net spindle-output          => hm2_7i97.0.pwmgen.05.value
net spindle-enable          => hm2_7i97.0.pwmgen.05.enable
  • garrettmin
  • garrettmin's Avatar
02 Sep 2024 19:43 - 02 Sep 2024 20:05
KVM on Preempt-RT was created by garrettmin

KVM on Preempt-RT

Category: Installing LinuxCNC

Can we install KVM Kernel Virtual Machine on Debian 12 Bookworm PREEMPT-RT ISO?

 
  • Evgeny
  • Evgeny
02 Sep 2024 18:57
Replied by Evgeny on topic Marco Reps video on youtube about EtherCAT

Marco Reps video on youtube about EtherCAT

Category: EtherCAT

I looked into the matter and realized that I don't really need limited torque auto-homing for my drives. these drives are absolute and onceloved correctly advised me to use this feature
  • Project_Hopeless
  • Project_Hopeless's Avatar
02 Sep 2024 18:26
Replied by Project_Hopeless on topic Add Tab to Axis View Pane

Add Tab to Axis View Pane

Category: AXIS

cmorley post=309070 userid=482If you use Qtvcp to render the vismach panel, you can embed it with a command such as this:

[DISPLAY]
# Embed tabs
EMBED_TAB_NAME= qtscreen
EMBED_TAB_COMMAND= halcmd loadusr -Wn qtvcp_embed qtvcp -d -c qtvcp_embed -x {XID} vismach_mill_xyz


linuxcnc.org/docs/stable/html/gui/qtvcp-vismach.html

Is the variable vismach_mill_xyz generic or should it reference a specific file in my sim?

I switched over to Qt Vismach for the display.  The panel is created and works, it just doesn't embed.  The sim runs, its just that I get the following errors at startup. 
Traceback (most recent call last):File "/usr/lib/python3/dist-packages/OpenGL/latebind.py", line 43, in __call__return self._finalCall( *args, **named )^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^TypeError: 'NoneType' object is not callable During handling of the above exception, another exception occurred: Traceback (most recent call last):File "/usr/lib/python3/dist-packages/qtvcp/lib/qt_vismach/qt_vismach.py", line 255, in paintGLself.drawObjects()File "/usr/lib/python3/dist-packages/qtvcp/lib/qt_vismach/qt_vismach.py", line 325, in drawObjectsself.hud.draw()File "/usr/lib/python3/dist-packages/qtvcp/lib/qt_vismach/primitives.py", line 898, in drawself.fontbase, self._width, linespace = use_pango_font(self._font, 0, 128)^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib/python3/dist-packages/qtvcp/lib/qt_vismach/primitives.py", line 66, in use_pango_fontGL.glBitmap(1, 0, 0, 0, 0, h-d, bytearray([0]*4))File "/usr/lib/python3/dist-packages/OpenGL/latebind.py", line 47, in __call__return self._finalCall( *args, **named )^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib/python3/dist-packages/OpenGL/wrapper.py", line 700, in wrapperCallraise errFile "/usr/lib/python3/dist-packages/OpenGL/wrapper.py", line 693, in wrapperCallresult = wrappedOperation( *cArguments )^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib/python3/dist-packages/OpenGL/platform/baseplatform.py", line 415, in __call__return self( *args, **named )^^^^^^^^^^^^^^^^^^^^^^File "/usr/lib/python3/dist-packages/OpenGL/error.py", line 230, in glCheckErrorraise self._errorClass(OpenGL.error.GLError: GLError(err = 1285,description = b'out of memory',baseOperation = glBitmap,pyArgs = (1,0,0,0,0,23.0,<OpenGL.arrays._buffers.Py_buffer object at 0x7fb250c629f0>,),cArgs = (1,0,0,0,0,23.0,<OpenGL.arrays._buffers.Py_buffer object at 0x7fb250c629f0>,),cArguments = (1,0,0,0,0,23.0,<OpenGL.arrays._buffers.Py_buffer object at 0x7fb250c629f0>,)) 
 
  • JackRay
  • JackRay
02 Sep 2024 17:40
Replied by JackRay on topic 5 Axis configuration on linuxcnc

5 Axis configuration on linuxcnc

Category: Advanced Configuration

Hello ,

yes, I want to use Mesa cards in the future.

Thanks
  • bertoldo
  • bertoldo
02 Sep 2024 16:51 - 02 Sep 2024 16:53

Notes from installation of ethercat on Raspberry Pi 4

Category: EtherCAT

hellow sr. hakan.

Congratulations on your post. I had an initial problem.

I downloaded the image and used the raspberrypi image to save it and it didn't start. Mine is a raspberrypi4b.

O erro "CPU 0 not supported"
  • Aciera
  • Aciera's Avatar
02 Sep 2024 16:28 - 02 Sep 2024 16:30
Replied by Aciera on topic Modbus VFD startup delay?

Modbus VFD startup delay?

Category: Basic Configuration

I'll have to turn off forced-homing so LCNC can run an M-code after machine-on but before homing... but that should be fairly simple.

Ah, forgot about that. Here is a solution with a python component that does not rely on MDI:

1.  Save this as 'py2bash.py' to a folder called 'python' in your config folder and mark executable (You should not need to modify this):
#!/usr/bin/env python3
import os
import hal
import linuxcnc

h = hal.component("py2bash")
h.newpin("run-script", hal.HAL_BIT, hal.HAL_IN)
h.ready()
# create a connection to the status channel
s = linuxcnc.stat()

print("py2bash: Started")

script_has_run = False

try:
    while 1:
        if h['run-script'] == True and script_has_run == False:
            print("py2bash: Running bash script now.")
            os.system('bash ./script.sh')
            script_has_run = True
except KeyboardInterrupt:
    raise SystemExit

2. Save this as 'script.sh' to your config folder and mark as executable (you will need to change 'halcmd loadusr -W hal_input -K +Keyboard:0 ' to load your component)
#!/bin/bash
halcmd loadusr -W hal_input -K +Keyboard:0
halcmd source myhal.hal
exit 0

3. Add this to [HAL] section in your ini (No need to change this):
HALCMD = loadusr -W ./python/py2bash.py


4. Run your config and check for a pin 'py2bash.start-script':
 

5. If you force this pin HIGH the python component should run 'script.sh'
  • COFHAL
  • COFHAL
02 Sep 2024 16:28
Replied by COFHAL on topic servo motor for a spindle

servo motor for a spindle

Category: Milling Machines

 This is my setup for a lathe that uses a servo motor for the lathe spindle. Hope this helps. is 7z remove .txt


 

File Attachment:

File Name: spindel.hal.7z.txt
File Size:8 KB
  • COFHAL
  • COFHAL
02 Sep 2024 16:15

Pendant with 7i73: question with analog inputs

Category: Driver Boards

This is what the 7i73 manual says about the analog inputs: Inputs 0 to 7 can read analog signal values, however only inputs 0 to 3 support analog input due to the available interface modes. The analog inputs have a range of 0 to 3.3 V. The normal resolution is 8 bits. All bits can be read as digital inputs. Note: The analog inputs are only accessible in some software modes. This means that technically only 4 of the 8 inputs that say they can read these analog values ​​are available.
  • spumco
  • spumco
02 Sep 2024 15:34
Replied by spumco on topic Modbus VFD startup delay?

Modbus VFD startup delay?

Category: Basic Configuration

@Aciera -

That's what I was looking for.

I'll have to turn off forced-homing so LCNC can run an M-code after machine-on but before homing... but that should be fairly simple.

Thanks much!
Displaying 22816 - 22830 out of 24273 results.
Time to create page: 0.465 seconds
Powered by Kunena Forum