Author Topic: RobotLaser My Laser controller  (Read 7576 times)

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
RobotLaser My Laser controller
« on: August 17, 2016, 07:04:40 AM »
Preamble:
A couple of weeks ago I purchased the Laser A5 5500 mW.
Then I discovered that the software part is practically nonexistent.
BenBox is unusable, GRBL Controller is very complicated and does not always work.
T2Laser is the best I have found, it works very well, although not always as I want.
Downside has the license related to a single PC,
and for how it is organized my workshop, I should buy 4-5 licenses.

So last Thursday I started to write my own software.

Finally, after four days of hard work, my controller works.
I drew inspiration from image2gcode (open software) and I integrated the functions in my controller.
A major stumbling block has been the high-speed serial dialogue without loss of data;
I want to go at a fast speed (10 to 20,000 mm / min) and this is a limit.
So I used the (slightly modified) algorithm Image2Gcode then I added a portion of postedit
to jump all contiguous points at the same power.
example;
X2.34S0
X2.52S0
X2.70S0
X2.88S0
X3.06S0
X3.24S0
X3.42S0
X3.60S0
X3.78S0
X3.96S0
X4.14S0
X4.32S30
X4.50S30
X4.68S30
X4.86S30
X5.04S30
X5.22S30
X5.40S30
X5.58S30
X5.76S30
X5.94S30
X6.12S30
X6.30S30

becomes:

X2.34S0
X4.14S0
X4.32S30
X6.12S30
X6.30S0
This greatly enhances the fluidity of the stream
------------
At the moment I have no interest in distributing the software,
It is not yet suitable for public use.

I have left two  "difficult" things:
1) Creating vector patterns
(Now I use wintopo, but I would like to incorporate into my sw)
Does anyone know a open sw who does that?

2) Another problem is the GRBL firmware.
Even after a M3S0 or M5 command
when moving motors the laser control PWM reactivate (Low-power, but active)
It is a known and documented problem  but not resolved.
When I have time I will try to see the firmware sources and
try to patch the problem.

If someone interested my efforts .... any advice is welcome.

Hello everyone,
Carlo

Zax

  • T2Laser
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7302
    • View Profile
    • T2Laser
Re: RobotLaser My Laser controller
« Reply #1 on: August 17, 2016, 12:01:13 PM »
Looks good Carlo.

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #2 on: August 26, 2016, 02:44:36 AM »
Hello everyone
After a few days of vacation I gone back to work to the laser controller.
The portion of Denim etching seems works,
The result is reported in the post
http://benboxlaser.us/index.php?topic=528.msg6955#msg6955
 and it appears acceptable to me.

The next step is to find the contour.
I started with a canny filter to the image, and the results seem OK,
but it's still a raster image, unusable to trace contours.
I really like how BenBox solve it, but, till now, I'm not able to write a software that implements it.
I considered using a BMP to DXF converter and then DXF to GCode,

For the first part I found an external application (potrace),
for the second part I could not find anything really usable,
but seems a little tricky and complicated, I'm not shure is the right way.

A further idea I'm Following is to scan the filtered image
and follow the contours creating a sequence of points in vector mode.

Can anyone point me in a right direction?

Thanks in advance for any possible advice.
Carlo
« Last Edit: August 26, 2016, 02:51:10 AM by RobotEyes »

Zax

  • T2Laser
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7302
    • View Profile
    • T2Laser
Re: RobotLaser My Laser controller
« Reply #3 on: August 26, 2016, 05:09:02 AM »
T2Laser will do this, you can engrave the raster and add the vector trace either as part of the same job (combined using Sketch Plus) or separately. It will also allow you to do multi-pass vector if needed. Currently the speed is the same but the g-code can be edited as required, in the next revision I will make this an option.

I think your idea "scan the filtered image and follow the contours creating a sequence of points in vector mode." is correct, that is the method I use for above. Good black and white artwork like you are using works very well, just find the contrast (transition point) and follow it and at some set interval add the point. The more points, the smoother the trace.
« Last Edit: August 26, 2016, 05:20:18 AM by Zax »

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #4 on: August 26, 2016, 06:11:50 AM »
Thks for support.
Carlo

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #5 on: August 31, 2016, 07:58:03 AM »
When I get a little bit of time I continue my development.
Now I made the vectorization of contours,
it seems to work very well and is relatively fast (less than 2 seconds Picture in example, on a i5 core)
I used the Papert's Turtle algorithm, I'm convinced that there are better algorithms,
but I had already used it and I already had the code ready .
And is not in anything inferior to BenBox boundary function.

I also added a embedded control of firmware parameters ($n=xx)

Now I have only two things to do:
1) The import of DXF or SVG
2) The creation of Sketch.
The latter I had already done many many years ago (it was for WfW 3.0), 
I just have to find where I filed the code.

Agastar

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1878
    • View Profile
Re: RobotLaser My Laser controller
« Reply #6 on: September 08, 2016, 03:26:18 PM »
What language are you writing the code in if you don't mind me asking?

Gerrit1

  • Newbie
  • *
  • Posts: 4
    • View Profile
Re: RobotLaser My Laser controller
« Reply #7 on: September 09, 2016, 09:17:42 AM »
Where can we find the software?

Do you need tester/siomeone to translate (german)?

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #8 on: September 09, 2016, 10:38:33 AM »
What language are you writing the code in if you don't mind me asking?

In general, I use VisualStudio 2010 (2015 in particular cases)
In this case I used vb.net 2010 for User Interface
and C# for the sections that operate in memory (GCode Generation, contours tracking , etc)

The program is written with "Portable Technology", can be run from a USB Memory Stick ........

Where can we find the software?

Do you need tester/siomeone to translate (german)?

Till now we are in ALPHA Test, i.e. the product is not intended for public use,
but a rough page with the download link (no guarantees, is in test) may be found here:

http://www.robot-eyes.com/RobotLaser/

For now I want to get a stable version in Italian and English.
After version 0.5 (Beta Test) and before the first release (1.0) I will face in a serious way the translation,
Might be interesting to collaborate.

For now change of text are so often which is impossible to translate correctly.

If you are interested to test this version, feel free to download it,
but please, send me an email at the address in the page foother.


-------------------------------------

I just terminated the writing the Sketch part, but I do not think I'll put it in the final version.
It 's too rough for my quality standards, (it is less than Microsoft Paint)
and it is not my job to create a graphical editor, there are many excellent and free.

Now will face the import of DXF and SVG files, it is not as easy as it looks.

In parallel I purchased to upgrade materials in 500x500 mm .......
but this ......
in a future post.

Carlo
« Last Edit: September 09, 2016, 10:47:35 AM by RobotEyes »

Zax

  • T2Laser
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 7302
    • View Profile
    • T2Laser
Re: RobotLaser My Laser controller
« Reply #9 on: September 09, 2016, 10:45:25 AM »
@RobotEyes, you should really reference Adrian Villamany (3dpBurner) per gpl-3.0 since he wrote much of the original code.

Gerrit1

  • Newbie
  • *
  • Posts: 4
    • View Profile
Re: RobotLaser My Laser controller
« Reply #10 on: September 09, 2016, 01:37:40 PM »


If you are interested to test this version, feel free to download it,
but please, send me an email at the address in the page foother.




You got a mail at carlo....@......

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #11 on: September 09, 2016, 02:02:49 PM »
@RobotEyes, you should really reference Adrian Villamany (3dpBurner) per gpl-3.0 since he wrote much of the original code.

In fact, I mentioned Adrian in RobotLaser credits. I began studying the work of Adrian (but version 2, I saw that T2 seems to be based on version 6).
Then I did not like the algorithm and I progressed another path, but the basics are. The research of the edges instead is based on the Papert's (1967) and Herman & Liu, (1978) work.
The sketch is based on the work I did in 1986 as an example in a programming course that I held at that time
« Last Edit: September 10, 2016, 02:55:30 AM by RobotEyes »

RobotEyes

  • Jr. Member
  • **
  • Posts: 50
    • View Profile
    • RobotLaser
Re: RobotLaser My Laser controller
« Reply #12 on: September 10, 2016, 02:48:15 AM »
For the curious ...
this is the genesis of RobotLaser.

http://benboxlaser.us/index.php?topic=737.0

Greetings, Carlo

khaidang27

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: RobotLaser My Laser controller
« Reply #13 on: November 16, 2016, 09:26:48 PM »
what is the main board you use? and do you have pin-out of it too? I want to build one. But I didn't see you mention about the arduino board. Thanks