Advanced Search

Search Results (Searched for: )

  • amanker
  • amanker
17 Aug 2024 14:56

Setting Up BLDC spindle motor in Forward/Reverse direction.

Category: Basic Configuration

I have setup linuxCNC using remora.
Its working nice. I want to replace PWM DC motor with BLDC motor.
BLDC contoller has enable and direction pins and 0-10V input pin. I am using PWM tp 0-10V converter.
When I use spindle i forward direction then its working. But in reverse direction its not rotating. I confirmed manullly that spindle/contoller is working ok in both direction.
I can see m3 and m4 signals properly triggering suitable pins. on m3 and m4 I can see enable pin is getting voltage. and like wise direction pin is also working ok. 
But I have noted that PWM out is only working in forward direction. In case of m4 there is no PWM out on pin.
Please help me.
Here is my 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-eth 

    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
    setp remora.joint.0.deadband     [JOINT_0]DEADBAND
    setp remora.joint.0.pgain     [JOINT_0]P_GAIN
    setp remora.joint.0.ff1gain     [JOINT_0]FF1_GAIN

    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
    setp remora.joint.1.deadband     [JOINT_1]DEADBAND
    setp remora.joint.1.pgain         [JOINT_1]P_GAIN
    setp remora.joint.1.ff1gain     [JOINT_1]FF1_GAIN

    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
    setp remora.joint.2.deadband     [JOINT_2]DEADBAND
    setp remora.joint.2.pgain         [JOINT_2]P_GAIN
    setp remora.joint.2.ff1gain     [JOINT_2]FF1_GAIN

    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
    setp remora.joint.3.deadband     [JOINT_3]DEADBAND
    setp remora.joint.3.pgain         [JOINT_3]P_GAIN
    setp remora.joint.3.ff1gain     [JOINT_3]FF1_GAIN

    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
    setp remora.joint.4.deadband     [JOINT_4]DEADBAND
    setp remora.joint.4.pgain         [JOINT_4]P_GAIN
    setp remora.joint.4.ff1gain     [JOINT_4]FF1_GAIN

    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 X-max       remora.input.1         => 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 Y-max       remora.input.3         => 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
#    net Z-max       remora.input.5         => joint.2.pos-lim-sw-in    
    net A-max        remora.input.6            => joint.3.home-sw-in 
    
    
# Probe
#loadrt debounce cfg=1
#addf debounce.0 servo-thread
#setp debounce.0.delay 100
#unlinkp motion.probe-input
#net probe-in debounce.0.0.in
#net probe-filt debounce.0.0.out => motion.probe-input 
    net probe-input motion.probe-input <= remora.input.7
#    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
    loadrt scale count=7
    addf scale.0 servo-thread
    addf scale.1 servo-thread
    setp scale.0.gain 0.008333 # PWM per RPM, calculated over full scale. Example: 0-100 PWM, 12000 rpm: (100/12000)  = 0.008333
    net spindle-scale-in spindle.0.speed-out => scale.0.in scale.1.in
    net spindle-speed-scaled scale.0.out => remora.SP.0 
    # spindle enable pin
    net spindle-enable spindle.0.on => remora.output.1
    # spindle DIR pin change to where ever it goes
    net spindle-rev spindle.0.reverse => remora.output.2
    setp scale.1.gain 0.000965
    #net spindle-amp-in spindle.0.speed-out => scale.1.in




    #net remora-status => halui.machine.on
    #net user-enable-out => halui.estop.reset
    #net remora-status remora.SPI-status => estop_latch.ok-in
    #net estop-status estop_latch.ok-out => iocontrol.0.emc-enable-in
    net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
    

  • chernogorsky
  • chernogorsky
17 Aug 2024 14:22
Replied by chernogorsky on topic [QTDragon] blocking in hal_manualtoolchange dialog

[QTDragon] blocking in hal_manualtoolchange dialog

Category: Qtvcp

Do you have any example of handler to replace dilog ?

I may be end up with rewrite pistprocessor adding pause / msg before tool change

Im ok with remap/sub call /etc
  • tommylight
  • tommylight's Avatar
17 Aug 2024 13:53
Replied by tommylight on topic Computer crashes after "Loading initial ramdisk"

Computer crashes after "Loading initial ramdisk"

Category: Installing LinuxCNC

Give it a try, it is not permanent.
Linux had issue with Intel 915 chipsets and they were blacklisted in Linux for a long time.
  • tommylight
  • tommylight's Avatar
  • Moutomation
  • Moutomation
17 Aug 2024 13:04
Replied by Moutomation on topic Change the axis limit

Change the axis limit

Category: AXIS

You're right, I found it, thanks a lot
  • Aciera
  • Aciera's Avatar
17 Aug 2024 11:41
Replied by Aciera on topic Change the axis limit

Change the axis limit

Category: AXIS

You are looking at 'ini.0.' values. Those correspond to the [JOINT_0] section in the ini file. If you want to see the [AXIS_X] values you would need to navigate to 'ini.x.' which should be lower down in the list on the left hand side of the screen shot.
  • DiegoVV
  • DiegoVV
17 Aug 2024 11:36

Computer crashes after "Loading initial ramdisk"

Category: Installing LinuxCNC

Hi Tommylight,

Thank you for your swift answer, in my case, the PC (Lenovo Tiny M600) is equipped only with the Intel graphics, which has only Displayport as video output. I´m connecting the screen through a Displayport-VGA adapter (It worked during the installation and GURUB menu, but that´t all).

Is the "nomodeset" solution still valid despite not having Nvidia?

Thanks!!!

Thank you!
  • Moutomation
  • Moutomation
17 Aug 2024 11:14
Replied by Moutomation on topic Change the axis limit

Change the axis limit

Category: AXIS

I cannot find the limits I marked in the picture on halshow.
When I change the limits below joint_0, the machine stops at the limit, but I cannot move it again with the jog keys.


 
  • jjdege
  • jjdege's Avatar
17 Aug 2024 09:46

Ethercat installation from repositories - how to step by step

Category: EtherCAT

hi
Thanks @tommylight and @elovalvo
these are two paths that I have already taken without success
the headers for the kernerl 6.6.45-rt39-v8-16k are not found.

Now I'm going away for a few days, when I come back we'll see

thanks a lot
  • suspension
  • suspension
17 Aug 2024 09:39

Versa probe Z height after automatic tool length measure

Category: General LinuxCNC Questions

Hello
I use QtDragon with versa probe to automatically measure tool height. I am following the documentation here (linuxcnc.org/docs/devel/html/gui/qtdragon.html#_versa_probe) to setup various config params like probe height, etc. I have a gcode program generated with Fusion360 where Z zero is set to top of the work piece. Before running the program, I set the block height to work piece height (measured manually). When program is started, it correctly go to the tool height sensor location and probes the length of the tool ans new value for Z is set. However this Z value does not seem to become zero at the top of the stock height (Which is how I setup the codinate system in Fusion). If I stop the program, the G54 Z changes and the new value seem to be correctly alighned with Z of zero at top of the stock. I am new to this proebe system and would like to understand the reasoning.

Thanks
S
  • JackRay
  • JackRay
17 Aug 2024 09:02
Replied by JackRay on topic Which Mesa Card Should I Buy?

Which Mesa Card Should I Buy?

Category: Driver Boards

Hello everyone,
Thank you for this forum and the work accomplished. Knowing a little the possibilities of configuration of this software this update is for essential.
a few years ago I built a complete 5-axis continuous milling machine under linuxcnc.
It works very well with a // port and a STV2 “break out”, DMA860H drivers and a VFD. so I control :
- 5 continuous axes
- Spindle stop/run/speed ( G code )

However, not enough I/O for coolant and other functions.

The only drawback is that I'm “obviously” lacking precision with 5 continuous axes. I therefore need to install rotary encoders on my B/C axes. But there's no more possibility on my Break Out card. So I have to change my system completely.
I want to start with Raspberry Pi4 . Despite the tables above, I'm not sure about my choice of Mesa boards. What would you recommend for such a configuration?

Thank you in advance.

 
  • bentiggin
  • bentiggin
17 Aug 2024 08:46
7i97t retrofit was created by bentiggin

7i97t retrofit

Category: Basic Configuration

  I’m trying to retrofit an old plasma with a 7i97t and I’m having a hard time getting things working.I can’t find the brand of the servos or drivers, but I do have most of a manual and the bob for the drivers says automation direct.The servos worked before I started my retrofit.The encoders seem to work fine in linuxcnc.They spin if I give them analog power.But they just slowly drift when enabled, regardless if they’re wired to 7i97t or not.If I connect my multimeter to the 10v analog while they enabled and try to jog them, I don’t get anything.I tried tuning a bit, but it doesn’t seem like they getting any input.I assume either I wired something wrong or I configured something wrong.wiringThe 7i97t manual referencing analog survo drive interface asks the drives common or gnd signal to be connected to the 7i97t power gnd. I didn’t this. Is the 7i97t power gnd p3? The drives bob has analog ground, digital ground, field ground, encoder ground, and shield ground. I guess the digital ground is the common, but I’m not sure.Speaking of grounds, my power supply’s ground doesn’t ground to the frame. Should it? The 7i97t grounds to the frame with a bolt. the 10v analog twisted pair shield grounds to the shield ground on the drives bob, which seems to ground to frame. The other end is not grounded.I only power I have to the 7i97t is 5v to p3 and 24v to tb4 i/o’s.I used mesact to configure. I’m sure there’s plenty I did wrong in this step. The minimal descriptions were not enough for my limited understanding. Instead of confusing everyone with my logic, I’ll just attach an ini.I did notice the tuning tutorial Hal scoping analogout, but I only have pwnout. Not sure if that’s relevant.Any help would be greatly appreciated.  
  • marq_torque
  • marq_torque's Avatar
17 Aug 2024 08:19
Replied by marq_torque on topic How ethercat contral a servo device spindle?

How ethercat contral a servo device spindle?

Category: EtherCAT

Hello Rabin,

I'm working for similar setup. XZ-C/Spindle Can you share your configuration example, It would be much helpful.

Thanks
  • elovalvo
  • elovalvo
17 Aug 2024 06:38 - 17 Aug 2024 06:39

Ethercat installation from repositories - how to step by step

Category: EtherCAT

Thanks so much!



unlike the installation of the EtherCAT packages that gives me an error


 

i don't know what it depends on, maybe we need to wait for Etherlab to update the repositories

 
forum.linuxcnc.org/9-installing-linuxcnc...i-5?start=220#306099
  • PhilipME
  • PhilipME's Avatar
17 Aug 2024 04:47
Replied by PhilipME on topic connecting a soft button to bob pin 17

connecting a soft button to bob pin 17

Category: General LinuxCNC Questions

Maybe try a 'toggle' component:
linuxcnc.org/docs/devel/html/man/man9/toggle.9.html


Now the toggle is working

I realy appreciate your help

Good day

Philip
Displaying 22546 - 22560 out of 25364 results.
Time to create page: 0.463 seconds
Powered by Kunena Forum