ColorCNC Colorlight 5A-75E/5A-75B as FPGA controller board

More
3 years 10 months ago - 3 years 10 months ago #258335 by muvideo
Hello, another inch forward for my implemetation:
  •   Lcnc master
  • the driver now can handle up to 4 boards, you'll need a gigabit ethernet switch. In theory many more boards could be handled, but honestly I'm not sure how useful is to increase this number, if someone wants to try just set
    Code:
    #define MAX_CHAN 4 in Lcnc.c to the number you want
  • the ip address and port now are parameters at hal invocation, so no need to rebuild the driver to change ip and port, added also a "debug" parameter. Example:
    Code:
    loadrt Lcnc ipaddr="192.168.2.50","192.168.2.51" ipport="1234","1235" debug=1
    "debug=1" will add some verbose output and a series of pins that report the time in ns that each part of the code is taking, of these T1 and T6 correspond to two calls to eb_send function, and are the most time consuming.
  • A raspberry pi 4 seem capable to handle two colorlight boards at 1ms Thread with sufficient stability.
  • stepgen step and direction timings are now expressed in ns instead of us.
  • In the attachment the timing I'm seeing with 2 colorlight 5a-75b boards, on the left the one with 14 outputs 11 inputs 6 stepgens 6 encoders 6 pwm, on the right the one with 26 outputs 23 inputs 6 pwm. Seem that also the fpga configuration is having an impact on timing. Some sporadic task overrun are still there.


Ciao!
Fabio
Last edit: 3 years 10 months ago by muvideo.
The following user(s) said Thank You: romanetz
More
3 years 10 months ago - 3 years 10 months ago #258445 by romanetz
@TOLP2 How to use the driver with right-in-place installation, i. e. linuxcnc built from source?
Last edit: 3 years 10 months ago by romanetz.
More
3 years 10 months ago - 3 years 10 months ago #258485 by romanetz
 

Hello, another inch forward for my implementation
 
Fabio, I tried your configuration. In purpose of reducing time for testing, I flashed pre-built firmware from Lcnc/prebuilt_firmwares/75e_v6_v8_30o29i9s9e8p/. The board responds to ping at desired ip 192.168.2.50
In order to run machine configuration with my r-i-p installation of Lcnc, I've built the driver without any issues. Then, an error in configuration has been found: loadrt Lcnc ipaddr="192.168.2.50" udpport (not ipport as mentioned in documentation)="1234". Well, after making some changes to match .ngc files location, i got a final error. When I jog the axis towards (say, X+ or Y+) results in decreasing of proper coordinate, therefore I get a joint following error. Looks like somewhere commanded speed is been inverted.
Upd. the reason was that acceleration limit was not set in the configuration. After adding of these llines "setp Lcnc.00.stepgen.02.acc_lim     [JOINT_0]STEPGEN_MAXACCEL" for all of corresponding axes, the configuration has run successfully.
 
Last edit: 3 years 10 months ago by romanetz.
More
3 years 10 months ago - 3 years 10 months ago #258513 by wuyatom
   
My v7.1 board is not enabled
Last edit: 3 years 10 months ago by wuyatom.
More
3 years 10 months ago #258557 by romanetz
Here is my test config for Litex-CNC 
Attachments:
More
3 years 10 months ago #258600 by muvideo

Hello, another inch forward for my implementation
 
Fabio, I tried your configuration. In purpose of reducing time for testing, I flashed pre-built firmware from Lcnc/prebuilt_firmwares/75e_v6_v8_30o29i9s9e8p/. The board responds to ping at desired ip 192.168.2.50
In order to run machine configuration with my r-i-p installation of Lcnc, I've built the driver without any issues. Then, an error in configuration has been found: loadrt Lcnc ipaddr="192.168.2.50" udpport (not ipport as mentioned in documentation)="1234". Well, after making some changes to match .ngc files location, i got a final error. When I jog the axis towards (say, X+ or Y+) results in decreasing of proper coordinate, therefore I get a joint following error. Looks like somewhere commanded speed is been inverted.
Upd. the reason was that acceleration limit was not set in the configuration. After adding of these llines "setp Lcnc.00.stepgen.02.acc_lim     [JOINT_0]STEPGEN_MAXACCEL" for all of corresponding axes, the configuration has run successfully.

 
Hi, I'm very happy you were successful in testing my last commit, thanks for spotting the errors, I hope they are fixed
here Fix_Commit now. Let me know of any strange behavior.
Moderators: PCW, jmelson
Time to create page: 0.220 seconds
Powered by Kunena Forum