Line 152: Line 152:
** [https://osf.io/r7hn6/ Repository contains the python code used to generate all the .gcode, the SCAD files for the open source polymer welder]
** [https://osf.io/r7hn6/ Repository contains the python code used to generate all the .gcode, the SCAD files for the open source polymer welder]
** The text based version of the .py code is shown below:
** The text based version of the .py code is shown below:
## Code Name: Linear Energy Density Test Sample .gcode Generator
## Code Desc: Will generate single and/or multiple .gcode files at various linear energy density (Coulombs/mm) per user inputs.
## Author: J. Laureto
## Contact: jjlauret@mtu.edu
## Creation Date: May 25th, 2016 (REV1)
## Current Revision Date: May25th, 2015 (REV1)
###################################################
## While loop and error check for user mm/s entry
while True:
    try:
        speed = int(input("What cross head speed would you like to utilize? Assume units of (mm/s):"))
    except ValueError:
        print("That is an invalid entry. Please enter a positive interger (mm/s) value.")
        continue
    if speed > 150:
        print ("Sorry, this is too fast for the polymer welder. Please select a value equal to or below 150 (mm/s)")
        continue
    else:
        print (speed, "is an acceptable (mm/s) value.", speed, "(mm/s) will be utilized for .gcode generateion.")
        break
## While loop and error check for user Current (Io) entry
while True:
    try:
        current = int(input("What current (mA) (Io) setting would you like the 4320 LaserSource to utilize?:"))
    except ValueError:
        print ("That is an invalid entry. Please enter a positive integer (mA) value.")
        continue
    if (current < 1000) or (current > 20000):
        print ("Your selection is our of the appropriate range for the 4320 LaserSource Instrument.")
    else:
        print (current, "is an appropriate amperage (mA) value.", current, "(mA) will be utilized for .gcode generation.")
        break
linear_energy_density = (current/speed)/1000
print ("Creating a .gcode file with the user inputs of", current, "and", speed)
## Writing to "text" .gcode file. Will write to same directory as the location of "energydensity_gcode_May25th.py"
gcode_file = open(str(speed) + "speed_" + str(current) + "current.gcode", "w")
gcode_file.write(";Current (mA):" + str(current) + "\n")
gcode_file.write(";Speed (mm/s):" + str(speed) + "\n")
gcode_file.write(";These values correlate to a linear energy density (Coulombs/mm) of " + str(linear_energy_density) + "(Coulombs/mm)\n")
gcode_file.write("\n")#space
gcode_file.write(";/////START/////\n")
gcode_file.write("\n")#space
gcode_file.write(";start position\n")
gcode_file.write("G1 " + str(speed*60) + " X10 Y10\n")
gcode_file.write("\n")#space
gcode_file.write(";set to experiment current " + str(current) + "(mA)\n")
gcode_file.write("(SYSTEM:echo 'LAS:LDI " + str(current) + "' >/dev/ttyUSB0)\n")
gcode_file.write("\n")#space
gcode_file.write(";turn on laser\n")
gcode_file.write("(SYSTEM:echo 'BEEP' >/dev/ttyUSB0)\n")
gcode_file.write("(SYSTEM:echo 'LAS:OUTPUT 1' >/dev/ttyUSB0)\n")
gcode_file.write("\n")#space
gcode_file.write(":raster across Y290\n")
gcode_file.write("G1 X290\n")
gcode_file.write("\n")#space
gcode_file.write(";path completed turn off laser\n")
gcode_file.write("(SYSTEM:echo 'LAS:OUTPUT 0' >/dev/ttyUSB0)\n")
gcode_file.write("(SYSTEM:echo 'BEEP' >/dev/ttyUSB0)\n")
gcode_file.write("\n")#space
gcode_file.write(";move x-head to convenient set-up location\n")
gcode_file.write("G1 F6000 X10 X300\n")
gcode_file.write("\n")#space
gcode_file.write(";/////END/////\n")
gcode_file.close()
gcode_file = open(str(speed) + "speed_" + str(current) + "current.gcode", "r")
print (gcode_file.read())
gcode_file.close()


== Laser Welding ==
== Laser Welding ==

Revision as of 15:18, 2 July 2016

This page describes how to use this: Open source laser system for polymeric welding located in the MOST lab. Our primary interest in it is making Expanded microchannel heat exchangers for all kinds of energy efficiency applications including solar water disinfection. For the most up to date publication on this topic see Open Source Laser Polymer Welding System: Design and Characterization of Linear Low-Density Polyethylene Multilayer Welds

Laser

Basics

The Laser is composed by three main devices: LaserMount 264, TECSource 5300 and LaserSource 4320. The LaserMount 264 is a unit that integrates a Peltier cooler for precise temperature control and the laser itself. TECSource 5300 is a temperature controller that needs to be attached with the LaserMount. LaserSource 4320 is a Laser Diode Driver, it controls the laser behavior.

Safety

General Basic Precautions

When operating the laser make sure that the doors to the rig are closed and that you are wearing the laser safety glasses.

The LSO shall be notified of the purchase of any laser, regardless of the class. Such notification should include the classification, media, output power or pulse energy, wavelength, repetition rate (if applicable), special attachments (frequency doublers...etc.), beam size at the laser aperture, beam divergence and users.

No attempt shall be made to place any shiny or glossy object into the laser beam other than that for which the equipment is specifically designed.

Eye protection devices which are designed for protection against radiation from a specific laser system shall be used when engineering controls are inadequate to eliminate the possibility of potentially hazardous eye exposure (i.e., whenever levels of accessible emission exceed the appropriate MPE levels.) This generally applies only to Class IIIB and Class IV lasers. All laser protective eyewear shall be clearly labeled with optical density values and wavelengths for which protection is afforded.

Skin protection can best be achieved through engineering controls. If the potential exists for damaging skin exposure, particularly for ultraviolet lasers (200-400 nm), then skin covers and or "sun screen" creams are recommended.

HANDS - Most gloves will provide some protection against laser radiation. Tightly woven fabrics and opaque gloves provide the best protection.

ARMS - A laboratory jacket or coat can provide protection for the arms. For Class IV lasers, consideration should be given to flame resistant materials.

Software

The Template, and all other files are uploaded in SourceForge, https://sourceforge.net/projects/lasersystemforp/

  1. Processing -- http://processing.org/ (If using source code).
  2. Inkscape -- http://inkscape.org/download/?lang=en
  3. GCodeTools for Incscape --- http://www.cnc-club.ru/forum/viewtopic.php?t=35#top1
    • Windows: Unpack and copy all the files to the following directory Program Files\Inkscape\share\extensions\ and restart Inkscape
    • Linux: Unpack and copy all the files to the following directory /usr/share/inkscape/extensions/ and restart inkscape.
  4. DHCP Tool -- http://www.dhcpserver.de/cms/ (Note: This is for a Windows set-up. Equivalent software is available or Mac/Linux based systems)
  5. PutTTy (SSH Client) -- http://www.putty.org/ (Note: This is for a Windows set-up. Equivalent software is available for Mac/Linus based systems)
  6. .SVG Inkscape Template -- http://www.appropedia.org/File:MOST_laserweld_TEMPLATE.svg

Loading Samples

  1. Open the safety doors.
  2. Carefully remove the aluminum and glass plater.
  3. Remove the top layer glass.
  4. Place the plastic layers on the bottom sheet of glass (two the first time and adding one per weld routine if more than 2).
  5. Stretch the plastic layers flat and hold in place with magnets at the four corners. Make sure as many wrinkles are removed as possible.
  6. Put top sheet of glass on top of plastic.
  7. Slide the plater back into the laser rig.
  8. Close the box and put on the safety glasses.

Powering up and communicating with the device

  1. Turn on computer and log in
  2. Plug in Arduino and RAMPS control board
    • RAMPS uses a standard 120V outlet, through a converter, to the (+)(-) on the board.
    • Arduino uses a micro-usb to 120V outlet connector.
  3. Plug in and confirm power to both:
    • LaserSource 4320
    • 5A/12V TECSource 52320
  4. Turn on 5305 TECSource and insure the "blue' light is on hear the Output indicator. If the light is not on push the Output button.
  5. Wait until the temperature reading on the 5305 is stable below 25 Celsius. The Tset should be set to ~25 degrees Celsius at this time.
  6. Turn on the 4320 LaserSource with the power switch
  7. Insure the/a DHCP server is broadcasting to IP address '192.168.5.2'
  8. The connection from DHCP to the laser welding requires an SSH client (PuTTY)
    • Your respective SSH Client should connect to the DHCP Server (hosting the printer locally on your computer) via '192.158.5.2'
    • Upon connection user will see:
    1. "Using username "pi" and "pi@192.168.5.2's password"
      • Once SSH client prompts fro password type: reprap. This will permit access. Review image above for the interface appearance.
  9. One inside the interface, the proper port must be assigned to to PuTTY to talk to the 4320 LaserSource.
    • The first line should be stty -F/dev/ttyUSB0 raw 38400. Note that "38400" could be variable based upon your computer.
  10. All commands through PuTTY allow for remote control of the 4320 LaserSource. Review list of available commands here: http://www.arroyoinstruments.com/manuals/ArroyoComputerInterfacingManual.pdf
  11. To confirm proper connection ping i.e. ask the 4320 to audibly beep by typing: echo 'BEEP'>/dev/ttyUSB0. Hit enter. The instrument should beep and confirm that you are controlling it remotely.
  12. Open a web browser and navigate to the hosting site for Franklin: https://192.168.5.2:8000. Depending upon your browsers security type "https" may not be possible and you will have to continue without a secure connection.
    • It is recommended that this page be bookmarked in your browser for future use.
  13. You are now set up and ready to control the printer with the Franklin interface.

Side note:

If the RepRap printer interface comes up as "untrusted connection" then click "I understand the risks" --> "Add Exception --> "Confirm security exception". If it doesnt work on the first try, click "confirm security exception two or three more times. Sometimes it takes more than one try for it to work.

GCode Generation

Drawing on Incscape and Exporting to gcode

  1. After installing Incscape and Gcodetools, run Incscape
  2. Open the file TEMPLATE.svg, it has the working area limits and other things necessary to generate the gcode correctly. "Save As" you file under a different file name to preserve the template
  3. Draw weld pattern - select the line and press Ctrl+Shift+C (this converts it to a path and keeps it selected)
  4. Go to Extensions>>Gcodetools>>Path to Gcode
  5. On the tab Preferences, you can change the File name and Directory
  6. Click Apply. The GCode should now be generated to the Directory folder
  7. If you want to make any changes, first undo with ctrl-Z to get your original paths back

Handwritten GCode and/or Utilize provided Python 3 program to write code for you

  • Handwritten / Custom

Example gcode for a simple linear weld:

;///LaserSource and TECSource SET-UP///
;	Laser Source
;		Begin communciation via: "ssty -F /dev/ttyUSB0 raw 38400"
;		Next string follows as: "echo >/dev/ttyUSB0"
;	TECSource
;		No direct communcation to SSH.  Turn on, set to 25C.
;/////START/////
;start position
G1 F600 X10 Y10
;set to experiment current (5000mA (12A))
(SYSTEM:echo 'LAS:LDI 5000' >/dev/ttyUSB0)
;turn on laser
(SYSTEM:echo 'BEEP' >/dev/ttyUSB0)
(SYSTEM:echo 'LAS:OUTPUT 1' >/dev/ttyUSB0)
;raster across Y290 
G1 X290
;path completed turn off laser
(SYSTEM:echo 'LAS:OUTPUT 0' >/dev/ttyUSB0)
(SYSTEM:echo 'BEEP' >/dev/ttyUSB0)
;move x-head to convienet set-up location
G1 F600 X10 Y300
;//////END/////

Laser Welding


  1. Close and latch the enclosure doors and put on the safety glasses.
  2. Turn the LaserSource enable key to "On"
  3. In the web browser page where Franklin is open. Upload your respective gcode directional controls and 4320 LaserSource commands
  4. Click "Print Selected"
  5. Allow print to cycle until completion
  6. Turn the "Enable" switch on the LaserSource to the "Off" position.
  7. You can now open the enclosure and remove the platter from the welding rig.
Cookies help us deliver our services. By using our services, you agree to our use of cookies.