NSL gets a laser cutter

We’ve been trying to sort out a laser cutter for a while now, last year we bought a 40W tube and a PSU and burned holes into things. While hugely entertaining, it lacked some precision

 

That was as far as it went, so i had enough and just decided to order one, after a few stops and starts we bought an LC900N directly from wklaser in China, they’re the same ones FS laser and hurricane etc sell but they do some mods to the software/boards, but nothing that is worth the price increase that i can see. It cost us under $4,000 USD for a 90W laser with a 600x900mm cutting area, with a motorised Z table from china to us.

We’re on the third floor and our elevator is ( A ) too small ( B ) out of order, so we had to levitate it in.. Having hindsight we could have taken it apart, but had  been previously assured we couldn’t do that. Anyway…..

We did what anyone would do and removed the window, hired a crane and lifted it in through the window.

 

Taking it out to inspect the contents etc.

 

Building a landing table

Scientific weight test, the window is gone and 3rd floor, proceed to start jumping. Some people were confused about what don’t go past the blue line meant.

Yes this is a good idea.

 

Test lift

We put out cones, people removed them and parked anyway, I told a few people they may not want to park there, most people got annoyed and asked why not? So i explained, most of them changed location. But only most….

 

ok we’ve gotten it to here, what now ? Time for a meeting.

The tricky part, removing the first strap, everyone pitched in to help.

The Rapunzel method started off well but we discovered a problem in the hair length dept.

 

And its in!

Books are useful. Dropping it the last meter was harder than getting it from China.

 

 

 

Put the window back, respackle it and no one is the wiser.

 

Ok so the laser is purchased, shipped from china, craned in through a window. What next?

 

 

First install the tube

 

The laser needs a vent, preferably hilarious. (needs video)

Obviously take it apart and improve it.

The height setting tool needed improvement, so made that and labelled it as such

Test cuts. Lots of test cuts.

Align mirrors, the manual came in useful here. (bits of paper)

Now change mind, remove the mirrors, turns out they’re dirty! So we swapped them out for ii-iv’s, increasing the power 20%. Interestingly there is a technique to make CO2 laser mirrors from hard drive platters hard disk platter co2 laser mirror

Frostbite hand.

The new lens vs old one.

Ply Wood 5.2mm 8speed 90power OLD LENS
ply wood 5.2mm 15speed 40power NEW LENS

 

The T4 28” fluorescent bulb burned out after a day or so so we replaced it with some halogens, especially since they’re hard to source locally, test fitted with duct tape. The whole machine gets covered in grease for shipping so lots of cleaning first.

Next well they said we can’t cut steel. So quick trip to home depot for some O2.

The glo-stick is vital

well it is cut but…. not really useable, however great progress

 

vertical video!

Here we cut some 1” acrylic

 

Next!

The GUI is full of odd chinese-english conversions, but they use a UTF8 .ini file so you can edit it all you want. Instead of Datum, it is now Home . Just edit language.ini or use Resource Editor on the .exe for permanent changes the software does nt self check, even though it uses a senselock dongle.

 

Next is hack the software, we figured out the control software, reversed most of the API it actually rasterises vectors in the PC side and sends them over as points!! I’m shocked and amazed since the machine has a ‘DSP’ based controller board. It generates a TXT file and compiles it ,then uploads it the API has move, p-move, arc and circle functions but the software never uses them..

e.g.

CLASS_DECLSPEC int APICALL M05_m_fast_line2(int chx,long disx,int chy,long disy);
CLASS_DECLSPEC int APICALL M05_m_set_vector_profile(double ls,double hs,double ac);
CLASS_DECLSPEC int APICALL M05_m_set_vector_profile2(double start_ls, double hs, double end_ls, double ac, double dc);
CLASS_DECLSPEC int APICALL M05_m_curve_vertex();
CLASS_DECLSPEC int APICALL M05_m_curve_begin();
CLASS_DECLSPEC int APICALL M05_m_curve_end();
CLASS_DECLSPEC int APICALL M05_m_set_period(double period);
CLASS_DECLSPEC int APICALL M05_m_set_power(int LowPower,int HighPower);
CLASS_DECLSPEC int APICALL M05_m_set_laser_mode(int mode);

The are all set ramp speeds, laser on, move here, move here move here, move here. Not set point, radius calculate in controller.

 

Oddly the first command we figured out (unintentionally) was fire the laser at full power indefinitely.

Is it off, no, is it off now , no ? how about now ,, no ? OK what’s the tube temp? still not off ? Easy to fix though, its just a toggle on/off. You also can’t easily jog the laser head around with the laser on, it’ll work but you can’t turn it off easily!

 

Knock out a quick GUI in Visual Studio.

I updated the header file for the DLL on our SVN. I’ll document it as i go along

http://www.032.la/svn/listing.php?repname=032&path=/NSL_LaserGUI/Controller/&#a80090f0f13e60006321d63b48b8768ea

Example of the txt file, which it compiles on the PC side.

SUB001
CMD101,0
SET002,20000
SET014,1,0,2,2
CMD109,1
CMD102,416,20833,97222
CMD104,6944
CMD401,416,880,41666,900
CMD402,900
CMD409,416,880,3000,41666,900,5000 //set  ramp speeds and power
CMD408,900,5000
CMD050,2,1
CMD002,63556,42631
CMD050,1,1 //laser on
CMD103,416,41666,69444
CMD001,63556,42631 // move
CMD050,1,0 //laser off
i’m surprised it rasterises the vectors though, i was expecting to see a command for a circle that defined a center,radius etc.
speed change. 100 to 300
CMD401,416,880,13888,900
CMD409,416,880,3000,13888,900,5000
CMD103,416,13888,69444
CMD401,416,880,41666,900
CMD409,416,880,3000,41666,900,5000
CMD103,416,41666,69444
power change 9 to 99 ( *100)
CMD401,416,880,13888,900
CMD402,900
CMD409,416,880,3000,13888,900,5000
CMD408,900,5000
CMD401,416,880,13888,9900
CMD402,9900
CMD409,416,880,3000,13888,9900,5000
CMD408,9900,5000
horizontal line moved in y
CMD002,62466,45271
CMD001,62466,45271
CMD001,69328,45271
CMD002,69328,45271
SUB603,416,20833,97222,69328,45271
CMD001,69328,45271
CMD001,69328,45271
CMD001,62466,45271
CMD001,62466,45271
CMD001,69328,45271
CMD001,69605,44993
CMD001,69605,45548
CMD001,62188,45548
CMD001,62188,44993
CMD001,69605,44993
CMD002,62466,45175
CMD001,62466,45175
CMD001,69328,45175
CMD002,69328,45175
SUB603,416,20833,97222,69328,45175
CMD001,69328,45175
CMD001,69328,45175
CMD001,62466,45175
CMD001,62466,45175
CMD001,69328,45175
CMD001,69605,44898
CMD001,69605,45453
CMD001,62188,45453
CMD001,62188,44898
CMD001,69605,44898
horizontal line moved in x
CMD001,69328,45271
CMD002,69328,45271
SUB603,416,20833,97222,69328,45271
CMD001,69328,45271
CMD001,69328,45271
CMD001,69328,45271
CMD001,69605,44993
CMD001,69605,45548
CMD001,69605,44993
CMD001,69492,45271
CMD002,69492,45271
SUB603,416,20833,97222,69492,45271
CMD001,69492,45271
CMD001,69492,45271
CMD001,69492,45271
CMD001,69770,44993
CMD001,69770,45548
CMD001,69770,44993


Lots of boxes were cut

boxmaker scripty thing

Found a nice dragon box on thingverse

bVector made  a nice mod to that case.

So this ends our first week with the cutter, we have to decide if we’re replacing the controller, Leetro apparently want us to buy $25,000 of stuff to get the SDK documentation, but we’re so far into reversing it, that won’t matter. The controller might be ok. It has some strangeness we want it to speak GCODE so maybe another GRBL based controller like we did for Pickobear.

We’re also building a new frame for it, and updating it to 170W laser tube (maybe)

more to come….

http://www.youtube.com/watch?v=7MZenjpAZJ4

About these ads