Advanced Search

Search Results (Searched for: )

  • Aciera
  • Aciera's Avatar
02 Aug 2024 09:41 - 02 Aug 2024 09:43

Data transfer LinuxCNC to / from custom board - Solved

Category: Advanced Configuration

You seem to have a lot going on there.
First thing I would suggest is to simplify things by choosing which jog method you actually want to use and then test this method in the 'Halshow' tool without all the connections in your hal.
For example this situation should jog the x-axis:

 

Alternatively this should also jog your x axis:
 


Also, posting your hal and ini files might give us a better idea of what you have going on.
  • Grotius
  • Grotius's Avatar
02 Aug 2024 09:26
Replied by Grotius on topic Trajectory Planner using Ruckig Lib

Trajectory Planner using Ruckig Lib

Category: General LinuxCNC Questions

Hi Becksvill,

Thank you !

I made a short video how it runs on the boomerang gcode file, i enabled using the scurve velocity ends in the kernel code :


I think it run's quite good for a first test.

I removed the boomerang preview (released opencascade memory), to get the gui more responsive. I made a button for this.
During screen recording, the gui even becomes slower.

Removing the boomerang preview works great, however i am thinking when running huge files, to show only a certain portion of the
gcode file.
Like 100 lines before and 100 lines after the current executed gcode line.

Furthermore i can optimize the opencascade memory, to show a memory efficient shape, like a memory efficient linestrip over the path,
this then for huge files like >10000 lines.



 
  • meister
  • meister
02 Aug 2024 09:25

LinuxCNC-RIO - RealtimeIO for LinuxCNC based on FPGA (ICE40 / ECP5)

Category: Computers and Hardware

I was just throwing it out there.
In all honesty it really doesn't go with the ethos of your project. From the beginning you wanted to stay away from softcores.
Just while I have it on my mind;

i have no problem with discarding initial concepts if it brings an advantage, unfortunately i still see disadvantages in softcore.

reg [5:0] initialization_progress = 6'b000000;

More code......

[code]end else if (state == STATE_INITIALIZING) begin
spi_clk <= 1'b0;
state <= STATE_SENDING_COMMAND;
initialization_progress <= initialization_progress + 6'b000001;
spi_chip_select_n <= 1'b0;
spi_clock_count <= 10'd0;
is_busy <= 1'b1;

case (initialization_progress)
// TODO: Perhaps add software reset here?

0: current_instruction <= SET_PHY_MODE;

// Set our MAC address
1: current_instruction <= {SET_MAC_ADDRESS_BYTE_0, MAC_ADDR[47:40]};
2: current_instruction <= {SET_MAC_ADDRESS_BYTE_1, MAC_ADDR[39:32]};
3: current_instruction <= {SET_MAC_ADDRESS_BYTE_2, MAC_ADDR[31:24]};
4: current_instruction <= {SET_MAC_ADDRESS_BYTE_3, MAC_ADDR[23:16]};
5: current_instruction <= {SET_MAC_ADDRESS_BYTE_4, MAC_ADDR[15:8]};
6: current_instruction <= {SET_MAC_ADDRESS_BYTE_5, MAC_ADDR[7:0]};

Am I right in thinking that SET_PHY_MODE is never acted on as initialization_progress is incremented before the case stanza ?
[/code]


you must not look at it as a programmer :)

this is verilog logic, not serial programming.
Everything runs in parallel

that:
initialization_progress <= initialization_progress + 6'b000001;
and this:
case (initialization_progress)
is executed at the same time and therefore the value in the 'case' is still 0 and only in the next 'always
@(posedge clk) begin' is it 1

verilog can be a real brainfuck :)
  • onceloved
  • onceloved's Avatar
02 Aug 2024 09:16
  • DPFlex
  • DPFlex
02 Aug 2024 08:59

EtherCAT config: one Slave supports 3 modules (motors)

Category: EtherCAT

Thanks Scottlaird,
Please receive xml file exported from lcec_configgen command.
I do not think I can use content from this file :)
 

File Attachment:

File Name: tsino-lcec...ggen.xml
File Size:17 KB

I have idea to use modules in one CiA402 as this file
I am not sure it is the best optimization, please advise.
 

File Attachment:

File Name: tsino-dpf-...-3ax.xml
File Size:3 KB

In other hand, can you share your xml of 2 and 6 axis device ?.
Thank you.
  • Aciera
  • Aciera's Avatar
02 Aug 2024 07:21 - 02 Aug 2024 07:31

Can you get me started on using LinuxCNC on a non-traditional kinematic mechanis

Category: General LinuxCNC Questions

Custom kinematics written in C can be found in 'src/emc/kinematics'
github.com/LinuxCNC/linuxcnc/tree/master/src/emc/kinematics

Generally I would suggest to write custom kinematics as a component (.comp). Unless of course you have a compelling reason to use C (and know it well enough). See examples like github.com/LinuxCNC/linuxcnc/blob/master...onents/millturn.comp
or the more complex
github.com/LinuxCNC/linuxcnc/blob/master.../xyzab_tdr_kins.comp

For the latter there is a paper with documentation:
forum.linuxcnc.org/10-advanced-configura...mill?start=80#263694

[edit]
to compile and install a custom kinematic file:
halcompile --install <path/your_component.comp>

(prepend 'sudo' if you are on a package install):
  • M.adams9093
  • M.adams9093
02 Aug 2024 07:15
Replied by M.adams9093 on topic Error at startup

Error at startup

Category: Configuration Tools

I will give it a try and see how that will go

thank you
  • Aciera
  • Aciera's Avatar
02 Aug 2024 07:06
Replied by Aciera on topic Error at startup

Error at startup

Category: Configuration Tools

./io.hal:6: Pin 'joint.2.home-sw-in' does not exist


joint numbers start from 0. Change these two lines in 'io.hal'
net joint-1-home joint.1.home-sw-in <= hm2_7i95.0.inmux.00.input-00
net joint-2-home joint.2.home-sw-in <= hm2_7i95.0.inmux.00.input-01

to this:
net joint-1-home joint.0.home-sw-in <= hm2_7i95.0.inmux.00.input-00
net joint-2-home joint.1.home-sw-in <= hm2_7i95.0.inmux.00.input-01
Displaying 24601 - 24608 out of 24608 results.
Time to create page: 0.526 seconds
Powered by Kunena Forum