Advanced Search

Search Results (Searched for: raspberry)

21 Jun 2024 15:19

Comparison between Raspian 12 Bookworm on Raspberry Pi 4 and Raspberry Pi 5

Category: Installing LinuxCNC

No, the images are different.
If you wait a couple of days I can create updated ones for both versions of Raspberry
20 Jun 2024 23:21

Comparison between Raspian 12 Bookworm on Raspberry Pi 4 and Raspberry Pi 5

Category: Installing LinuxCNC

elovalvo, where can I find youre raspian12 bookworm image for the rpi4? is it the same as rpi5? I went searching through a bunch of threads but cannot find RPi4
20 Jun 2024 10:23

Installing Linuxcnc in resberrypi

Category: Installing LinuxCNC

are mentioning SPI won't work when boot image using sdcard. Actually i want know it is possible to install linuxcnc using terminal.i am using this Debian GNU/Linux 12 (bookworm in my raspberry pi
20 Jun 2024 06:42

Installing Linuxcnc in resberrypi

Category: Installing LinuxCNC

Hi guys ,
I am working on one cnc project that require linuxcnc , How can I install linuxcnc in resberry pi5. Below i given my system configration. i want install linuxcnc without using sdcard mode. is there any posssible way for this? 

System Information

Raspberry Pi 5 Model B Rev 1.0
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"

Raspberry Pi reference 2024-03-15
Generated using pi-gen, github.com/RPi-Distro/pi-gen, f19ee211ddafcae300827f953d143de92a5c6624, stage4

Linux raspberrypi 6.6.20+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.20-1+rpt1 (2024-03-07) aarch64 GNU/Linux
Revision    : c04170
Serial        : a064e408d3a64e09
Model        : Raspberry Pi 5 Model B Rev 1.0
Throttled flag  : throttled=0x50005
Camera          : vc_gencmd_read_response returned -1 error=1 error_msg="Command not registered"
17 Jun 2024 00:31
Replied by csutke on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

Update:
Switching to X11 works MUCH better for Axis, but it still doesn't understand multitouch in the Axis preview.
Switching to X11 can be done by
1. 
raspi-config
  Advanced => X11
2. I had to install the gldriver from here to get X11 to show output:  askubuntu.com/questions/1501903/x11-sess...10-on-raspberry-pi-5

This also seems to have fixed the issues with the on-screen keyboard (onboard).
At this point it is a fully functional system, with some minor annoyances with navigating the preview window. 
I will make a patch for Axis to try and address some of the touch bugs.
16 Jun 2024 16:12

Preparing native Raspberry Pi OS for LinuxCNC

Category: Installing LinuxCNC

Hello, I get aurh error on last line of these cmds

cd ~
git clone --depth=1 --branch v2.9.2 github.com/linuxcnc/linuxcnc.git ~/linuxcnc-dev
cd linuxcnc-dev
./debian/configure uspace
mk-build-deps
mv linuxcnc-build-deps_$(cat VERSION)_all.deb ../linuxcnc-build-deps_$(cat VERSION)_all.deb
su -c "apt install ../linuxcnc-build-deps_$(cat VERSION)_all.deb -y"

I checked my pwd, I can login ok

but still get auth err when last l line asks for pwd

i tried to circumvent using
sudo apt install ../linuxcnc-build-deps<tab for autocompletion>
but ended with broken packages

this fails as well, same way
su -c "ls"

help!
tomp tjtr33
16 Jun 2024 15:48
Replied by csutke on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

Also, for anyone wanting to use a touchscreen with Pi5, know that the on screen keyboards seem to be completely unusable at the moment.
16 Jun 2024 15:25
Replied by csutke on topic LinuxCNC on Raspberry Pi 5

LinuxCNC on Raspberry Pi 5

Category: Installing LinuxCNC

I have been using the latest image on a Raspberry Pi and it is working surprisingly well.  I paired it with a Mesa 7i96S ethernet card and the results are amazing. 
10 years ago I rebuilt my CNC with an Atom/PCIe setup, and I intend to upgrade again with the Pi.

The only hiccup left with the setup is the touch screen driver with Wayland. 
It works very well for single touches, and can clearly detect all 10 fingers when I run
libinput debug-gui
but Axis doesn't seem to understand anything but basic touches.
Chromium and other windows understand the scroll/zoom gestures correctly, so I believe it has to do with TK not being up to date with libinput.
I am currently exploring adding a python "shim" to Axis to allow it to use libinput directly.  I will post more soon.

Hardware:
5 Axis CNC, Pi5, Mesa 7i96S, 1920x1200@60 HDMI display, (bare panel with driver board), WHB04B-6 pendant, custom built servo drivers, WJ200 spindle VFD, mist/flood/probe/etc.
15 Jun 2024 03:25

EOI in getting SPI going on the RPi5

Category: Computers and Hardware

The spidev driver is not an option. The man page in the docs states that it is not suitable for real-time threads. Hence the reason you are having issues.

To put it clearly SPI, atm is not an option for the RPi5, no matter what the download page states. Mesa states that the RPi5 is unable to be used with the 7c80 & 7c81 on the respective product pages.
The Raspberry Foundation has only released limited information regarding the RP1 chip. So until this issue resolved we are stuck.
Whether a driver will be developed I can not say.
Long story short there is no help currently available.
To use the RPi5 with Linuxcnc the Ethernet port with a Mesa card would be the easiest route. The gpios may be an option but I haven’t tried it. I’m unsure if on of the Mesa PCIe cards would work, it would be an expensive experiment. A PCIe Parallel Port adapter is not an option, Jeff Gerling has tested many PCIe cards with the RPi and the arm architecture doesn’t support BAR has needed by Parallel Port cards.
It’s not just Linuxcnc that the RPi5 has been a bit of a letdown, many other people have found that many of the old libraries that use the various peripherals on the gpios don’t work until the libs have been re written and the apps & code that use them.
We just have to wait for the Code Gods to arrive.
15 Jun 2024 02:59
Replied by Aaroncnc on topic Renora - SPI

Renora - SPI

Category: General LinuxCNC Questions

If you look at the picture with the raspberry pi and the main board you'll actually notice that he doesn't even have that wire installed
11 Jun 2024 12:56

Mesa programming and relationship with HAL

Category: HAL

I'd add that for any kind of modern / beefy computer, a few HAL entries for AND gates will make no noticeable difference in performance.  That is because the CPU is much faster than the servo thread interval, so there is plenty of free-time "left over" each cycle to calculate things like AND gates.

Where this starts to become a problem is on older, slower, smaller computers, such as a "spare" 20-year-old computer or a tiny single-board-computer like the Raspberry Pi 4.  These will have little time "left over" between servo thread intervals, so adding AND gates can start to cut into the servo thread timing and lead to issues.  (The RPi5 is considerably faster, however will not work with some cards currently.)

If unsure, make a copy of your config folder, comment-out the logic functions in one of them, then load each config into LinuxCNC and start the chips.ngc toolpath (or whatever gcode you have to torture-test your machine.)  Crank the speeds & feeds - if the AND-gates-config causes a fail, it's too much.  Could also open the latency tester during each run and see numerically how the timing jitter is affected.
10 Jun 2024 12:26
Replied by Hossein74Majidi on topic Orange Pi + SPI

Orange Pi + SPI

Category: HAL

thanks, I've read that already. I just wanna know if it can be used for orange pi too?
cause for raspberry there is another one named hm2_rpspi
09 Jun 2024 04:29

Help required in testing a few fixes to the 2.9.2 install ISO. Linked added

Category: Installing LinuxCNC

I'm pretty sure the live build debs are buggy and introduce the raspberry firmware bug that was in Debian 12.0 (fixed in 12.1) even if you are running a later version.

It is therefore best to build live Build from source as described in the live build manual live-team.pages.debian.net/live-manual/html/live-manual/toc.en

The source is much more current than the 02 May 2023 the deb is date stamped.

Note that LB will build for the Debian Version on the host the ISO is built on so be sure your PC is current.
08 Jun 2024 01:07 - 08 Jun 2024 01:25

2.9.2 LinuxCNC Dell XPS 15 loading ramdisk - out of memory

Category: Installing LinuxCNC

Corn-
Understood, appreciate the response. I did see that laptops can have some issues with latency with LinuxCNC due to power interrupts. This laptop in particular has been sitting on my shelf for a while and owes me nothing which is why I figured its worth a shot to install and run a latency test on it. Worst case I'll give up and buy a salvage desktop or Raspberry. Off the live USB without adjusting any settings I get latency of ~250k-300k peak which sounds like its not ideal but passable when hardware stepping. I intend to use a mesa 6i25+7i78 board.

I removed the quiet option when I was trying to debug on my own, hoping it might give more insight as to the cause of the issue. I didn't include the grub error message since I figured it wasn't really of any value, attached a screenshot of the error pre-kernel on this reply

I have searched for issues memory issues relating specifically to the XPS but haven't found anything relevant to my issue. Given that its not an issue with normal debian 12 and is isolated to specifically the installed LinuxCNC ISO, I figured this was a good place to start. If this isn't the right place to ask then I appreciate the feedback and will do more searching on my own
07 Jun 2024 07:59

Help me setting up My LinuxCNC

Category: Basic Configuration

I am using MKS Octopus Pro Board STM32F429 with Remora SPI and Raspberry PI4.
I wanted to use RPI5 but SPI is not working in LinuxCNC for rpi5. I am also using MPG Pendant (commonly available on eBay with MPG encoder with axis and scale selector and eStop.)

I am able to move steppers but I want to properly setup LinuxCNC with Kinamatics.

Whats Working.
1. Steppers moves
2. Limit/Home switches
3. PWM spindle
4. eStop
5. Touch Probe

I have made my machine to have two configurations. XYZAB(A Rotary on Table & B Rotating Spindle) and XYZAC (Its a common trinunion table)

My Problems.
1. I want to enable or disable my machine with Pendant (eStop Switch) not with GUI.
2. Stepper moves but on higher feed its slows down in middle of movement. Up 1000mm/sec its working. 1000-2200 not moving as expected slows down in middle. above 2200 joint follow error.
3. I want to implement both Kinamatics. XYZAC is available on linuxcnc forum but My type XYZAB config is not available(I googled a lot)


Here are my configuration files
ini file
# Basic LinuxCNC config for testing of Remora firmware

[EMC]
MACHINE = Remora-XY
DEBUG = 5
VERSION = 1.1

[DISPLAY]
DISPLAY = qtvcp qtdragon_hd

#USER_COMMAND_FILE = usercommand_regularmac_800.py


EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_0_OVERRIDE = 0.5
MAX_SPINDLE_0_OVERRIDE = 1.5
DEFAULT_SPINDLE_0_SPEED = 1200
SPINDLE_INCREMENT = 200
MIN_SPINDLE_0_SPEED = 200
MAX_SPINDLE_0_SPEED = 1200
MAX_SPINDLE_POWER = 500
DEFAULT_LINEAR_VELOCITY = 15.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 40.00
DEFAULT_ANGULAR_VELOCITY = 25.00
MIN_ANGULAR_VELOCITY = 0
MAX_ANGULAR_VELOCITY = 50.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = ~/linuxcnc/nc_files
INCREMENTS = Continuous, 50mm, 10mm, 5mm, 1mm, .5mm, .1mm, .05mm, .01mm
#ANGULAR_INCREMENTS = 1,5,10,30,45,90
NGCGUI_SUBFILE_PATH = ~/linuxcnc/nc_files/examples/ngcgui_lib
# pre selected programs tabs
# specify filenames only, files must be in the NGCGUI_SUBFILE_PATH
NGCGUI_SUBFILE = slot.ngc
NGCGUI_SUBFILE = qpocket.ngc
#EMBED_TAB_NAME = Vismach 5 Axis
#EMBED_TAB_COMMAND = qtvcp vismach_5axis_gantry
#EMBED_TAB_LOCATION = tabWidget_utilities

[KINS]
JOINTS = 5
#KINEMATICS =trivkins coordinates=XYZ kinstype=BOTH
KINEMATICS =trivkins coordinates=XYZAC

[FILTER]
PROGRAM_EXTENSION = .py Python Script
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = linuxcnc.var
SUBROUTINE_PATH = :~/linuxcnc/nc_files/examples/ngcgui_lib:~/linuxcnc/nc_files/examples/ngcgui_lib/utilitysubs; \
~/linuxcnc/nc_files/examples/probe/basic_probe/macros:~/linuxcnc/nc_files/examples/remap-subroutines: \
~/linuxcnc/nc_files/examples/ngcgui_lib/remap_lib
ON_ABORT_COMMAND=O <on_abort> call
RS274NGC_STARTUP_CODE = G17 G21 G40 G43H0 G54 G64P0.0005 G80 G90 G94 G97 M5 M9

[MDI_COMMAND_LIST]
# for macro buttons
MDI_COMMAND = G0 Z25;X0 Y0;Z0, Goto\nUser\nZero
MDI_COMMAND = G53 G0 Z0;G53 G0 X0 Y0,Goto\nMachn\nZero

[PROBE]
#USE_PROBE = versaprobe
USE_PROBE = basicprobe

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 0
SERVO_PERIOD = 1000000

[HAL]
HALFILE = remora-xyz.hal
HALFILE = mpg.hal
POSTGUI_HALFILE = qtdragon_hd_postgui.hal
#POSTGUI_HALFILE = postgui_call_list.hal
HALUI = halui

[HALUI]

[TRAJ]
COORDINATES =  X Y Z A C
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_LINEAR_VELOCITY = 15.00
MAX_LINEAR_VELOCITY = 40.00
NO_FORCE_HOMING = 1 

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_X]
MAX_VELOCITY = 40.00
MAX_ACCELERATION = 500.0
MIN_LIMIT = 0.0
MAX_LIMIT = 300.0

[JOINT_0]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = 0.0
MAX_LIMIT = 300.0
MAX_VELOCITY = 40.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 500.0
SCALE = 1600
FERROR = 2
MIN_FERROR = 2.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0

[AXIS_Y]
MAX_VELOCITY = 40.0
MAX_ACCELERATION = 20.0
MIN_LIMIT = 0.0
MAX_LIMIT = 200.0

[JOINT_1]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = 0.0
MAX_LIMIT = 200.0
MAX_VELOCITY = 40.0
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 2000.0
SCALE = 1600.00
FERROR = 9.0
MIN_FERROR = 5.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0




[AXIS_Z]
OFFSET_AV_RATIO = 0.2
MAX_VELOCITY = 40.0
MAX_ACCELERATION = 20.0
MIN_LIMIT = 0
MAX_LIMIT = 200

[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = 0
MAX_LIMIT = 200
MAX_VELOCITY = 40.0
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 300.0
SCALE = 1200.00
FERROR = 5
MIN_FERROR = 1.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0

[AXIS_A]
OFFSET_AV_RATIO = 0.2
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 20.0
MIN_LIMIT = 0
MAX_LIMIT = 360

[JOINT_3]
TYPE = ANGULAR
HOME = 0.0
MIN_LIMIT = 0
MAX_LIMIT = 360
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 300.0
SCALE = 71.111
FERROR = 5
MIN_FERROR = 1.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0

[AXIS_C]
OFFSET_AV_RATIO = 0.2
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 20.0
MIN_LIMIT = 0
MAX_LIMIT = 180

[JOINT_4]
TYPE = ANGULAR
HOME = 0.0
MIN_LIMIT = 0
MAX_LIMIT = 180
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 300.0
SCALE = 71.111
FERROR = 5
MIN_FERROR = 1.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_SEQUENCE = 0

Hal FIle 
# load the realtime components

    loadrt [KINS]KINEMATICS
    loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS

    #loadrt remora 

    loadrt remora chip_type=STM SPI_clk_div=32 PRU_base_freq=120000 
    #loadrt remora chip_type=LPC SPI_clk_div=64
        
# estop loopback, SPI comms enable and feedback
    net user-enable-out    <= iocontrol.0.user-enable-out        => remora.SPI-enable 
    net user-request-enable  <= iocontrol.0.user-request-enable    => remora.SPI-reset
    net remora-status     remora.SPI-status     => iocontrol.0.emc-enable-in
        
# add the remora and motion functions to threads

    addf remora.read servo-thread
    addf motion-command-handler servo-thread
    addf motion-controller servo-thread
    addf remora.update-freq servo-thread
    addf remora.write servo-thread
    


# Joint 0 setup

    setp remora.joint.0.scale         [JOINT_0]SCALE
    setp remora.joint.0.maxaccel     [JOINT_0]STEPGEN_MAXACCEL

    net xpos-cmd         <= joint.0.motor-pos-cmd     => remora.joint.0.pos-cmd  
    net j0pos-fb         <= remora.joint.0.pos-fb     => joint.0.motor-pos-fb
    net j0enable         <= joint.0.amp-enable-out     => remora.joint.0.enable


# Joint 1 setup

    setp remora.joint.1.scale         [JOINT_1]SCALE
    setp remora.joint.1.maxaccel     [JOINT_1]STEPGEN_MAXACCEL

    net j1pos-cmd         <= joint.1.motor-pos-cmd     => remora.joint.1.pos-cmd
    net j1pos-fb         <= remora.joint.1.pos-fb     => joint.1.motor-pos-fb 
    net j1enable         <= joint.1.amp-enable-out     => remora.joint.1.enable

# Joint 2 setup

    setp remora.joint.2.scale         [JOINT_2]SCALE
    setp remora.joint.2.maxaccel     [JOINT_2]STEPGEN_MAXACCEL

    net j2pos-cmd         <= joint.2.motor-pos-cmd     => remora.joint.2.pos-cmd
    net j2pos-fb         <= remora.joint.2.pos-fb     => joint.2.motor-pos-fb
    net j2enable         <= joint.2.amp-enable-out     => remora.joint.2.enable

# Joint 3 setup

    setp remora.joint.3.scale         [JOINT_3]SCALE
    setp remora.joint.3.maxaccel     [JOINT_3]STEPGEN_MAXACCEL

    net j3pos-cmd         <= joint.3.motor-pos-cmd     => remora.joint.3.pos-cmd
    net j3pos-fb         <= remora.joint.3.pos-fb     => joint.3.motor-pos-fb
    net j3enable         <= joint.3.amp-enable-out     => remora.joint.3.enable

# Joint 4 setup

    setp remora.joint.4.scale         [JOINT_4]SCALE
    setp remora.joint.4.maxaccel     [JOINT_4]STEPGEN_MAXACCEL

    net j4pos-cmd         <= joint.4.motor-pos-cmd     => remora.joint.4.pos-cmd
    net j4pos-fb         <= remora.joint.4.pos-fb     => joint.4.motor-pos-fb
    net j4enable         <= joint.4.amp-enable-out     => remora.joint.4.enable

# end-stops

    net X-min       remora.input.0         => joint.0.neg-lim-sw-in
#    net X-max       remora.input.1         => joint.0.home-sw-in joint.0.pos-lim-sw-in

    net Y-min       remora.input.2         => joint.1.neg-lim-sw-in
#    net Y-max       remora.input.3         => joint.1.home-sw-in joint.1.pos-lim-sw-in
    
    net Z-min       remora.input.4         => joint.2.neg-lim-sw-in
#    net Z-max       remora.input.5         => joint.2.home-sw-in joint.2.pos-lim-sw-in
    
# Probe 
    net probe-input motion.probe-input <= remora.input.6
#    net probe-input => qtdragon.led-probe
    
# Spindle

    loadrt pwmgen output_type=0
    addf pwmgen.update servo-thread
    addf pwmgen.make-pulses servo-thread
    net spindle-speed-cmd spindle.0.speed-out => pwmgen.0.value
    net spindle-on spindle.0.on => pwmgen.0.enable
    net spindle-pwm pwmgen.0.pwm => remora.output.0
# Set the spindle's top speed in RPM
    setp pwmgen.0.scale 12000
#    net spindle-speed-feedback spindle.0.speed-out-rps => spindle.0.speed-in


mpg.hal
# Jog Pendant
loadrt PRUencoder names=encoder.0
addf PRUencoder.capture-position servo-thread
setp encoder.0.position-scale 400.0
# connect the hal encoder to linuxcnc
net encoder-count <= remora.PV.0 => encoder.0.raw_count
loadrt conv_float_s32 count=1
addf conv-float-s32.0 servo-thread

loadrt mux4 count=1
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 joint.0.jog-vel-mode 1
setp joint.1.jog-vel-mode 1
setp joint.2.jog-vel-mode 1
setp joint.3.jog-vel-mode 1
setp joint.4.jog-vel-mode 1

# 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 <= remora.input.10
net scale2 mux4.0.sel1 <= remora.input.9

# The output from the mux4 is sent to each axis jog scale
net mpg-scale <= mux4.0.out
net mpg-scale => joint.0.jog-scale axis.x.jog-scale
net mpg-scale => joint.1.jog-scale axis.y.jog-scale
net mpg-scale => joint.2.jog-scale axis.z.jog-scale
net mpg-scale => joint.3.jog-scale axis.a.jog-scale
net mpg-scale => joint.4.jog-scale axis.c.jog-scale

# The MPG inputs
#net mpg-a encoder.0.phase-A <= remora.input.7
#net mpg-b encoder.0.phase-B <= remora.input.8

# The Axis select inputs
net mpg-x joint.0.jog-enable axis.x.jog-enable <= remora.input.11
net mpg-y joint.1.jog-enable axis.y.jog-enable <= remora.input.12
net mpg-z joint.2.jog-enable axis.z.jog-enable <= remora.input.13
net mpg-a joint.3.jog-enable axis.a.jog-enable <= remora.input.14
net mpg-c joint.4.jog-enable axis.c.jog-enable <= remora.input.15

# The encoder output counts to the axis. Only the selected axis will move.
net encoder-count   conv-float-s32.0.in
net encoder-counts  conv-float-s32.0.out


#net encoder-counts  <= encoder.0.counts
net encoder-counts => joint.0.jog-counts axis.x.jog-counts
net encoder-counts => joint.1.jog-counts axis.y.jog-counts
net encoder-counts => joint.2.jog-counts axis.z.jog-counts
net encoder-counts => joint.3.jog-counts axis.a.jog-counts
net encoder-counts => joint.4.jog-counts axis.c.jog-counts

qt_dragon_hd_postgui hal
# load components
########################################################################

loadrt logic names=logic-and personality=0x102
addf logic-and servo-thread

# load a summing component for adding spindle lift and Z compensation
loadrt scaled_s32_sums
addf scaled-s32-sums.0 servo-thread

loadusr -Wn z_level_compensation z_level_compensation
# method parameter must be one of nearest(2), linear(1), cubic (0)
setp z_level_compensation.fade-height 0.0
setp z_level_compensation.method 1

# connect signals
########################################################################

net spindle-speed-limited  =>  spindle.0.speed-out-rps => spindle.0.speed-in

# the unlink pin commands are only used, because they are connected 
# in core_sim.hal and we use this file to simulate
unlinkp iocontrol.0.tool-change
unlinkp iocontrol.0.tool-changed
unlinkp iocontrol.0.tool-prep-number

net tool-change      hal_manualtoolchange.change   <=  iocontrol.0.tool-change 
net tool-changed     hal_manualtoolchange.changed  <=  iocontrol.0.tool-changed
net tool-prep-number hal_manualtoolchange.number   <=  iocontrol.0.tool-prep-number

net eoffset-clear    axis.z.eoffset-clear
net eoffset-counts   axis.z.eoffset-counts
setp axis.z.eoffset-scale .001
net eoffset-total          axis.z.eoffset
net eoffset-total          qtdragon.eoffset-value
setp axis.z.eoffset-enable True

## external offsets for spindle pause function
##################################################
net eoffset-clear     qtdragon.eoffset-clear
net eoffset-spindle-count   <= qtdragon.eoffset-spindle-count    
net spindle-pause     qtdragon.spindle-inhibit spindle.0.inhibit
net probe-input qtdragon.led-probe

## Z level compensation
####################################################
net eoffset-clr2            z_level_compensation.clear      => logic-and.in-01
net xpos-cmd                z_level_compensation.x-pos      <= joint.0.motor-pos-cmd
net ypos-cmd                z_level_compensation.y-pos      <= joint.1.pos-cmd
net zpos-cmd                z_level_compensation.z-pos      <= joint.2.pos-cmd
net z_compensation_on       z_level_compensation.enable-in  <= qtdragon.comp-on
net eoffset-zlevel-count    z_level_compensation.counts     => qtdragon.eoffset-zlevel-count

net eoffset-spindle-count   scaled-s32-sums.0.in0
net eoffset-zlevel-count    scaled-s32-sums.0.in1
setp scaled-s32-sums.0.scale0 1000
net eoffset-counts          scaled-s32-sums.0.out-s


 
Displaying 316 - 330 out of 953 results.
Time to create page: 0.916 seconds
Powered by Kunena Forum