Difference between revisions of "Ramps1.4"

From Geeetech Wiki
Jump to: navigation, search
(Source)
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Summary==
+
==Introduction==  
  
In RAMPS 1.4, the resistors and capacitors are now surface mount to fit more passive components. This does add another set of steps to assembly, but we stuck with larger sizes to make it fairly painless.
+
[[File:Ramps shoutu.jpg|500px|]]
[[File:ramps.jpg]]
 
  
==Features==
+
Ramps is short for reprap Arduino mega pololu shield, it is mainly designed for the purpose of using pololu stepper driven board (similar to 4988 driven board). Ramps can only work when connected to its mother board Mega 2560 and 4988/DRV8825.
 +
Owning to its stability in operation and great compatibility with most 3Dprinter (all reprap-model such as pursa i2 and i3). The combination of Ramps1.4+MEGA2560+A4988/DRV8825 is becoming a mainstream of DIY 3D printer control board.
 +
===Features===
 +
1. Standard interfaces (as that of extruder)
  
* It has provisions for the cartesian robot and extruder.
+
2. Reserved GCI like I2C and RS232
* Expandable to control other accessories.
 
* 3 mosfets for heater / fan outputs and 3 thermistor circuits.
 
* Fused at 5A for additional safety and component protection
 
* Heated bed control with additional 11A fuse
 
* Fits 5 [[Pololu stepper driver board]]
 
* Pololu boards are on pin header sockets so they can be replaced easily or removed for use in future designs.
 
* I2C and SPI pins left available for future expansion.
 
* All the Mosfets are hooked into PWM pins for versatility.
 
* Servo style connectors are used to connect to the endstops, motors, and leds. These connectors are gold plated, rated for 3A, very compact, and globally available.
 
* USB type B receptacle
 
* SD Card add on available -- Available now made by Kliment - [[Sdramps]]
 
* LEDs indicate when heater outputs on
 
* Option to connect 2 motors to Z for Prusa Mendel
 
  
 +
3 MOSFET 3 MOSFET are applied to the heater/ fan and thermistor circuit.
  
==Safety Tip==
+
4. Adding another 5A to protect the component parts.
  
even at just 12 volts - you have to take basic, common sense precautions to avoid fires. Just in case these fail, test your workshop smoke detector. Got no smoke detector? Get one!
+
5. An 11A fuse is added to the hotbed
  
==Inspection==
+
6. Support 5 stepper drive board
  
'''Stepper Driver Boards'''
+
7. The adoption of Pin Header as pololu makes it more convenient to repair or change.
  
#*Jumpers need to be installed under each stepper driver:
+
8. I2C and SPI are reserved for expanding
  
  jumper  Yes/No  step size
+
9. All the MOSFET can be controlled by PWM
  1    2    3
 
  no  no    no    full step
 
  yes  no    no    half step
 
  no  yes  no    1/4 step
 
  yes  yes  no    1/8 step
 
  yes  yes  yes  1/16 step
 
For now the default is 1/16 micro stepping (all jumpers installed under drivers)
 
#Cut the pin headers to 8 pins long so that they fit each side of the stepper driver.
 
#Insert the pin headers into the sockets on RAMPS
 
#Fit the stepper drivers onto the pin headers and solder. Only heat each pin for a few seconds at time to avoid damage to the socket.  
 
#*Glue the heatsink (if used) to the top of the [[A4988]]/[[A4983]] chip using the provided pad of double-sided adhesive.
 
  
===Opto Endstops===
+
10. Use the interface of servo motor to adjust the level of printing platform automatically.
  
#* Cut the 26awg 3 conductor cable into 3 length.
+
11. Adding a SD module for SD ramps module.
#* Note: you may want until you've built your machine to cut the cables to the perfect length.
 
##* crimp and solder a female connector to the ends of each wire. (solder not necessary with proper crimp tools)
 
#* use the 2.54mm 1x3 housing.
 
#* Connect at least the minimum endstops.  
 
  
{| border="1"
+
12. LED can indicate the status of the heater (the open and close of MOS).
| RAMPS End
 
|
 
|-
 
| SIG (S)
 
|
 
|-
 
| GND (-)
 
|
 
|-
 
| VCC (+)
 
|
 
|}
 
    {| border="1"
 
| Endstop End
 
|
 
|-
 
| VCC (+)
 
|
 
|-
 
| SIG (S)
 
|
 
|-
 
| GND (-)
 
|
 
|}
 
  
===Mechanical Endstops===
+
13. 2 stepper motor for Z axis in parallel.
  
The recommended firmware will provide a configuration to use mechanical endstops with just two wires.
 
  
Find the area labelled "endstops" in the upper right corner of the board and for each of the X, Y, and Z pairs of pins (label should be below each set) do the following:  
+
===Overview and Hardware===
# Connect S (top row, labelled to the left) on RAMPS to NC on the switch.
+
[[File:Rapms front.JPG|400px|]]    [[File:Rampsback.jpg|400px|]]
# Connect GND on RAMPS to C on the switch.
 
  
'''Note:''' The latest firmware such as Marlin seems to use NO as the default pin on the switch. Otherwise you may need to invert the endstops in the firmware. You can use M119 to check your endstops status.
+
Weight: 68g
 +
Size: 102mm*60mm
  
===Put the connectors on the motor wires===
 
#* solder a female connector to the ends of each wire.
 
#* use the 2.54mm 1x3 housing.
 
#* Shown is the type used for servos in RC projects. See [[Stepper Motors]] for info on motors.
 
  
===Thermistor Wires===
+
===Software===  
Use a 2 pin 0.1" connector to terminate the thermistor wires.
+
Compiling environment: Arduino IDE
#* Connect the cable so the 2 wires go to T0
 
#Connect the 2 heater wires to D10 (E0H on older boards) and the + connection above it.
 
#* If changing to an unverified firmware it is best to verify heater circuit function with a meter before connecting heater to prevent damage to the extruder.
 
  
===Pololu carriage===
+
Firmware: Marlin
[[image:PololuExample.JPG|thumb]]
 
This section assumes you are using Pololu, but there are other options. Insert two 1x8 pin headers into the board. If you bought a kit with one 16 pin header, simply cut it so that you have two 1x8. Make sure that the side with the labels has the long ends of the posts, and the side you want to solder is the side with the heat sink. Doing this backwards will cause you not to see the labels and will most likely not fit. Remember to apply a heat-sink to the largest chip on the back.
 
  
=Final Setup=
+
PC software: Printrun, Repetier-Host
==Pre-Flight Check==
 
If you think you may have mistakes you can install only one stepper driver during initial testing and risk only one stepper driver.
 
  
The trimpot on the stepper drivers controls the current limit. Turn it all the way down (counter clock wise) and back up 25%. Be careful to not force the trimpot, it is delicate. You will need to fine tune the current limit later. Note that it is allways giving the motors that much power, even when not moving, so if your stepper motor drivers are getting hot, you may want to turn it down slightly.
+
===Source===
  
[http://reprap.org/mediawiki/index.php?title=Arduino_Mega_Pololu_Shield#Make_the_cables_up_for_the_opto_endstops Connect the minimum endstops] for X,Y, and Z
+
[http://www.geeetech.com/wiki/images/e/e1/Printrun-Win-Slic3r-10Mar2014.zip Printrun]
  
Connect Motors (Do not disconnect or connect motors while powered; if the connection is loose, this will cause the motors to spazz and possibly kill your stepper driver.)
+
[http://www.geeetech.com/wiki/images/3/36/SetupRepetierHost_1_00.zip  Repetier-Host]
  
You may want to use this [http://reprap.org/wiki/File:RAMPSTestCode.pde code] to test all the electronics before installing any of the suggested firmwares.
+
[http://www.geeetech.com/wiki/images/3/36/Arduino-1.0.5-r2-windows.zip Arduino IDE]
  
Install firmware (More info below). Firmware flashing can be done without 12V power supply connected.
+
[http://www.geeetech.com/wiki/images/4/4d/Arduino-1.5.6-r2-windows.zip  Arduino IDE]
  
==Wiring==
+
[http://www.geeetech.com/wiki/images/3/39/Marlin-Marlin_v1.zip  Marlin]
It is relatively simple to wire up the RAMPS. Just add the extruder heating coil wire to D10, the thermistor to the two T0 pins on middle right right, and wire up the steppers and endstops. From left to right, wire all of the stepper motor's wires as red, blue, green, and black or red, green, yellow, blue into the pins next to the Pololus. When you connect the wires to the endstops (if you are using 3 endstops, plug them into the MIN (-) slots), make sure you match the labels.  
 
  
Note that tesla & tonok firmware use d9 and sprinter and johnny/tonok use d10 for the extruder hot end.
+
[http://www.geeetech.com/wiki/images/c/cc/Arduino_1.0.1_for_Mac.zip Arduino 1.0.1 for Mac]
  
===Warnings===
+
==Interface==
 +
===Interface Layout=== 
  
<font color="red">Reversing +/- or otherwise incorrectly connecting power can destroy your electronics and cause fire hazard.
+
[[File:线路图.jpg|700px|]]
  
Incorrectly inserting stepper drivers will destroy your electronics and cause a fire risk. Always make sure power and USB is disconnected when removing or adjusting stepper drivers. Always make sure to insert drivers in correct orientation and in the socket correctly.
+
===Interface specifications===
  
[[File:Ramps1.png]]
+
[[File:Ramps interfaces.jpg]]
  
The endstop pins are Signal - GND - VCC, instead of the VCC - Sig - GND like the rest of RepRaps boards. Make sure to wire them correctly. This is done to allow squeezing fatter traces on the printable board.</font>
 
  
==Connecting Power==
+
2 power interfaces 12v 11a/12v 5a
 +
6 motors (one for X axis, one for Y axis, 2 for Z axis, 2 for extruder
 +
2 interfaces for LCD&SD
 +
6 interfaces for end stop(X/Y/Z min, X/Y/Z max)
 +
3 interfaces for PWM (one for hotbed, one for fan and one for extruder)
 +
3 interfaces for thermistor
  
Connect your 12V power supply to the RAMPS shield. <font color="red">Reversing +/- or otherwise incorrectly connecting power can destroy your electronics and cause fire hazard</font>.
 
  
The bottom pair of connectors marked 5A power the stepper drivers and Extruder heater/fan (D9, D10). The source should be rated a minimum of 5A.
+
===Jumper Instruction===
  
The pair of connectors above marked 11A power a Heated Bed, or other output (D8). The source should be rated a minimum 11A (if both power rails are connected to the same supply it should have a minimum rating of 16A).
+
[[File:Ramps jumper.jpg]]
  
The barrel connector, on the Arduino MEGA, will NOT power RAMPS and will not provide power to the stepper motors, heated bed, etc.
+
Step size of stepper driver (A4988)
  
The power connector plug may not be obviously labeled, looking at the power connection the positive is on the left and the negative is on the right of the plug.
+
  jumper      Yes/No    stepsize   
 +
    ms1    ms2      ms3
 +
    no      no      no    fullstep
 +
    yes    no      no    halfstep
 +
    no      yes      no    1/4step
 +
    yes    yes      no    1/8step
 +
    yes    yes      yes    1/16step
  
==Power Supply==
 
  
[[File:Ramps2.jpg]]
+
Step size of stepper driver (Drv8825)
  
RAMPS is quite happy with the 12 V line from PCPowerSupply. Or you can hack up a 12V laptop power supply, or other 12 V "wall wart" power supply. Be sure that the power can output 5A or greater. Additional 11A may be needed for heated bed support.
+
  jumper  Yes/No      step size
See Connecting power above.
+
    ms1    ms2      ms3
The 3 pins next to the reset switch are meant to optionally connect to your PSU.
+
    no      no      no    full step
The PS_ON pin is intended to switch your power supply on and off. Many firmwares support pulling this pin low with M80 command to turn the power supply on, and M81 to turn it off. This behavior is desired for ATX power supplies and can be modified in firmware to support 5V high power supplies like those borrowed from an Xbox.
+
    yes    no      no    half step
Without D1 installed, or when the 12VIN is not connected, the Arduino gets its power from USB. If you want your kit powered without USB connected you need to solder in D1 OR connect VCC to your PSU.
+
    no      yes      no    1/4 step
The VCC pin can be connected to your ATX's 5Vsb to continuously power the Arduino from your ATX power supply. You will want to make sure that D1 is not installed or cut out. The Arduino is not designed to be powered directly on the VCC rail and the VIN pin at the same time.
+
    yes    yes      no    1/4 step
The 5V pin in that connector on RAMPS only supplies the 5V to the auxiliary servo connectors. It is designed so that you can jumper it to the VCC pin and use the Arduino's power supply to supply 5V for extra servos if you are only powered from USB or 5V. Since there is not a lot of extra power from the Arduino's power supply you can connect it directly to your 5V power supply if you have one. You can also leave this pin not connected if you have no plan to add extra servos.
+
    no      no      yes    1/16 step
 +
  yes      no      yes    1/32 step
 +
  no     yes      yes    1/32step
 +
  yes    yes      yes    1/32step
  
===Maximum Input Voltage===
+
==Development Environment setting==
====Power Supply without diode====
+
===Interface Connecting and Setting===
The 1N4004 diode connects the RAMPS input voltage to the MEGA.  If your board does not have this diode soldered in, you can safely input as much as 35V.  (The pololus can do up to 35V)
 
====Power Supply with diode====
 
If your board has a 1N4004 diode soldered in, do not apply more than 12 V to it. Original flavor Arduino Mega are rated to 12 V input. While Arduino Mega 2560 can take 20 V, it is not recommended.
 
  
=Firmware and Pin Assignments=
+
[[File:Ramps c setting.jpg|600px|]]
  
<font color="red">RAMPS 1.4 uses the same pin definitions as 1.3.</font>
+
Precautions:
 +
Like other electronics, the inverse connection of power supply can cause irreparable damage to the board (4988 included). You are advised to connect all the components before testing.
  
You will need the Arduino software at http://www.arduino.cc/en/Main/Software to upload the firmware to Arduino Mega. Arduino MEGA 2560 Rev3 requires Arduino software version 0023.
+
===File Burning===
 +
As Ramps1.4 is just the shield board of Mega2560, the firmware must be burned into Mega2560.
  
[[Sprinter]] and [[Marlin]] are popular and stable firmwares for RAMPS as of 3/28/2012. [[Pronterface]] is a cross platform printer control program that can be used for testing/printing.
+
===Software Setting===
 +
1.Before uploading, driver should be installed for windows. Then choose the type of board: Tools > Board > Arduino Mega 2560 or Mega ADK. (Picture below)
  
Working preconfigured sprinter firmware can be downloaded at http://ultimachine.com/sites/default/files/UltiMachineRAMPS1-4Sprinter.zip . Mechanical is in the folder ending with ME, optical endstop firmware is in the folder ending in OE.
+
[[File:Bsecet.jpg|500px|]]
  
Working preconfigured Marlin firmware can be downloaded at
 
http://www.mediafire.com/?un8s4i2lvdgd875 . is for mecanical endstops, for optical endstop need to reverse the logic of endstops from the configuration.h shell, the language of display is in italian, but can easy be canged from the shell language.h
 
  
Others (Need pins set in Firmware as below):
+
2.Select the serial port: Tools > Serial Port, the serial port for mega is usually the last one.
  
*mechanical endstops (now the default ultimachine.com option) require '''#define OPTO_PULLUPS_INTERNAL 1''' to be added to configuration.h if not there by default.
+
[[File:Portselect.jpg|500px|]]
  
Here are the pin definitions for this board.
 
<pre>
 
// For RAMPS 1.4
 
#define X_STEP_PIN        54
 
#define X_DIR_PIN          55
 
#define X_ENABLE_PIN      38
 
#define X_MIN_PIN          3
 
#define X_MAX_PIN          2
 
  
#define Y_STEP_PIN        60
+
3.Click[[File:Button1.jpg]]to check if there is any mistake. If not, click[[File:Button2.jpg]]to upload.
#define Y_DIR_PIN          61
 
#define Y_ENABLE_PIN      56
 
#define Y_MIN_PIN          14
 
#define Y_MAX_PIN          15
 
  
#define Z_STEP_PIN        46
+
[[File:Rumba 11.jpg]]
#define Z_DIR_PIN          48
 
#define Z_ENABLE_PIN      62
 
#define Z_MIN_PIN          18
 
#define Z_MAX_PIN          19
 
  
#define E_STEP_PIN        26
+
4.During the process of uploading, the 3 LEDs corresponding to TX, RX and L on mega board will blink, if the blink stops, the uploading is done.
#define E_DIR_PIN          28
 
#define E_ENABLE_PIN      24
 
  
#define SDPOWER            -1
+
[[File:Done uploading.jpg]]
#define SDSS              53
 
#define LED_PIN            13
 
  
#define FAN_PIN            9
 
  
#define PS_ON_PIN          12
+
After the uploading, you can go on with the next step. If the uploading is unsuccessful, read the error report on IDE, figure out the problem, and then try again. some frequent errors are: a wrong select of board type and serial port.
#define KILL_PIN          -1
 
  
#define HEATER_0_PIN      10
 
#define HEATER_1_PIN      8
 
#define TEMP_0_PIN          13  // ANALOG NUMBERING
 
#define TEMP_1_PIN          14  // ANALOG NUMBERING
 
</pre>
 
  
  
 +
The connection of Repetier-Host
  
==Bill of Materials==
+
1. Click configuration> printer setting
{| border="1"
+
|-
+
[[File:Rh1.jpg|500px|]]
! ID
+
 
! Description
+
2. Set the communication port (the COM port for mega) and the Baud rate. Then click ok
! Quantity
+
! Part Number
+
[[File:Rh2.jpg|500px|]]
! Reichelt Order Number
+
 
! Digikey Part Number (Description)
+
3. Click “connect”> upload. Choose the GCODE file you are printing.
|-
+
 
| U1
+
[[File:Rh3.jpg|500px|]]
| Arduino Mega
+
 
| 1
+
==Get Started==
|2560 or 1280
+
Mega 2560 is the CPU of a 3d printer, manipulating the whole process of printing. Mega 2560 can’t be put in use directly without uploading firmware.
|
+
 
|[http://www.digikey.com/product-detail/en/A000067/1050-1018-ND/2639006 1050-1018-ND](BOARD MCU MEGA2560)
+
1. Firmware uploading- marlin.  
|-
+
 
| U2,U3,U4,U5
+
2. Setting parameters of the firmware
| [[Pololu stepper driver board]]s
+
 
| 4
+
3. The parameters that need setting are as below, for those not mentioned just leave them as default.
| A fifth one can be used for a 2nd extruder or extra axis
+
 
|
+
  #define BAUDRATE 250000
|N/A
+
 
|-
+
This parameter is for the baud rate of serial port. Note: a successful communication can be realized only when the Baud rate of upper computer is identical with that of Firmware. The Baud rate is not set in random. The common Baud rate are: 2400,9600,19200,38400,57600,115200,250000. The last three are frequently used for 3D Printer.
| C2
+
 
| 100nF capacitor (0805)(> highest planned voltage)
+
  #define MOTHERBOARD 33
| 1
+
 
|
+
This parameter is set for board type. 3D Printer has many types of main board, and the setting of IOs is different, therefore, the parameter has to correspond to the type of your board, or it can’t operate normally. The parameter of mega should be 33(single- nozzle) or 34 (dual-nozzle). For other board, you can refer to the annotation on the board.
|
+
 
|[http://www.digikey.com/product-detail/en/CC0805KRX7R8BB104/311-1141-1-ND/303051 311-1141-1-ND](CAP CER 0.1UF 25V 10% X7R 0805)
+
  #define TEMP_SENSOR_0 3
|-
+
  #define TEMP_SENSOR_BED 3
| C1,C5,C8
+
 
| 10uF capacitor (153CLV-0405)(>5V)
+
The two parameters are set for the type of temperature sensor respectively. They are the critical parameter to check if the sensor read temperature correctly. The printer can’t operate normally, even has potential risk (damage the device and even worse). You must modify depending on the temperature sensor you use.
| 3
+
 
|  
+
  #define EXTRUDE_MINTEMP 170
|
+
 
|[http://www.digikey.com/product-detail/en/EXV106M025A9BAA/399-6724-1-ND/3082855 399-6724-1-ND](CAP ALUM 10UF 25V 20% SMD)
+
This parameter is set to avoid the potential risks when the extruder operates before reaching the rated temperature. If you use other 3D Printer, such as printer to make Chocolates, 45℃ is appropriate, so that the parameter configured to a lower value(such as 40℃).
|-
+
 
| C3,C4,C6,C7,C9,C10
+
  const bool X_ENDSTOPS_INVERTING = true;
| 100uF capacitor (153CLV-0605)(> highest planned voltage)
+
  const bool Y_ENDSTOPS_INVERTING = true;
| 6
+
  const bool Z_ENDSTOPS_INVERTING = true.
|
 
|
 
|[http://www.digikey.com/product-detail/en/EXV107M016A9GAA/399-6726-1-ND/3082857 399-6726-1-ND](CAP ALUM 100UF 16V 20% SMD)
 
|-
 
| R1,R7,R11,R21,R22
 
| 4.7K resistor (0805)(1%)
 
| 5
 
|
 
|
 
|[http://www.digikey.com/scripts/dksearch/dksus.dll?vendor=0&keywords=RHM4.70KAECT-ND+ RHM4.70KAECT-ND](RES 4.70K OHM .4W 1% 0805)
 
|-
 
| R2,R3,R4,R5,R6,R8,R9,R10
 
| 100K resistor (0805)
 
| 8
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/ESR10EZPF1003/RHM100KAECT-ND/1983806 RHM100KAECT-ND](RES 100K OHM .4W 1% 0805)
 
|-
 
| R12
 
| 1K resistor (0805)
 
| 1
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/ESR10EZPF1001/RHM1.00KAECT-ND/1983804 RHM1.00KAECT-ND](RES 1.00K OHM .4W 1% 0805)
 
|-
 
| R23,R24,R25
 
| 1.8K resistor (0805)
 
| 3
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/RC0805FR-071K8L/311-1.80KCRCT-ND/730467 311-1.80KCRCT-ND](RES 1.80K OHM 1/8W 1% 0805)
 
|-
 
| R16,R17,R18,R19,R20
 
| 10K resistor (0805)
 
| 5
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/ERJ-6ENF1002V/P10.0KCCT-ND/119248 P10.0KCCT-ND](RES 10.0K OHM 1/8W 1% 0805)
 
|-
 
| R13,R14,R15
 
| 10 ohm resistor (0805)
 
| 3
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/CRCW080510R0FKEAHP/541-10.0TCT-ND/2222835 541-10.0TCT-ND](RES 10.0 OHM .33W 1% 0805)
 
|-
 
| Q1,Q2,Q3
 
| N-channel Mosfet
 
| 3
 
| STP55NF06L
 
| ZXM 64N035 L3
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=497-6742-5-ND 497-6742-5-ND] (MOSFET N-CH 60V 55A TO-220)
 
|-
 
| D1,D2
 
| Diode
 
| 2
 
| 1N4004
 
| 1N 4004
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=1N4004FSCT-ND 1N4004FSCT-ND] (DIODE GEN PURPOSE 400V 1A DO41)
 
|-
 
| F1
 
| PTC resettable fuse (30V, Hold5A, Trip10A)
 
| 1
 
| MF-R500
 
| PFRA 500
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=MF-R500-ND MF-R500-ND] (FUSE PTC RESETTABLE 5A HOLD)
 
|-
 
| F2
 
| PTC resettable fuse (Hold11A)
 
| 1
 
| MF-R1100
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=RGEF1100-ND RGEF1100-ND] (POLYSWITCH RGE SERIES 11.0A HOLD)
 
|-
 
| J2
 
| D8-D10 Outputs // 6 position screw terminal (min 11A per contact) OR Jack/Plug connector pair
 
| 1
 
| 282837-6
 
| AKL 101-06
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=WM7857-ND WM7857-ND] (CONN TERMINAL BLOCK 6POS 5.08MM)  <br/>Alternative: 1x [http://www.digikey.com/product-detail/en/20020109-H061A01LF/609-4284-ND/2509130 609-4284-ND] & 1x [http://www.digikey.com/scripts/DkSearch/dksus.dll?WT.z_header=search_go&lang=en&keywords=609-4218-ND&x=0&y=0&cur=USD 609-4218-ND].  [https://lh6.googleusercontent.com/--1nJttlNQDs/UNfmaLXKiTI/AAAAAAAADxQ/Z6CSD4V8r6I/s617/20121223_194819.jpg May prevent overtemp events]
 
|-
 
| LED1
 
| Green LED (0805)
 
| 1
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/CMD17-21VGD%2FTR8/L62505CT-ND/254936 L62505CT-ND](LED GREEN DIFF 0805 SMD)
 
|-
 
|LED2,LED3,LED4
 
| Red LED (0805)
 
| 3
 
|
 
|
 
|[http://www.digikey.com/product-detail/en/CMD17-21VRD%2FTR8/L62501CT-ND/254934 L62501CT-ND](LED HI EFF RED DIFF 0805)
 
|-
 
| S1
 
| Push button switch
 
| 1
 
| B3F-3100
 
| TASTER 3305B (should fit footprint also, but button will overhang board edge)
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=450-1648-ND 450-1648-ND] (SWITCH TACT RA H=6.35MM)
 
|-
 
| X1
 
| Power jack (Plug and fixed receptacle)(Min 11A per position more is better)
 
| 1
 
| MSTBA 2,5 and MSTBT 2,5 (5.04mm spacing 4 connector)
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=WM7847-ND WM7847-ND] (CONN HEADER 4POS 5.08MM R/A TIN) &amp; [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=WM7953-ND WM7953-ND] (CONN TERM BLOCK 4POS 5.08MM R/A)
 
|-
 
|
 
| 2 x 3 pin header
 
| 8
 
| 961206-6404-AR
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=3M9459-ND 3M9459-ND] (CONN HEADER VERT DUAL 6POS GOLD)
 
|-
 
|
 
| 4 pin header
 
| 5
 
| 961104-6404-AR
 
| SL 1X36G 2,54 (3 of these)
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=3M9449-ND 3M9449-ND] (CONN HEADER VERT SGL 4POS GOLD)
 
|-
 
|
 
| 6 pin header
 
| 2 (? - from http://gala-automation.com/index.php/component/content/article/26-reprap-tutorials/42-ramps-14-bom)
 
| 961106-6404-AR
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=3M9451-ND 3M9451-ND] (CONN HEADER VERT SGL 6POS GOLD)
 
|-
 
|
 
| 2 x 18 Pin Stackable Female Header (non stackables can be used with plated through holes)
 
| 1
 
|
 
| MALE: SL 2X25G 2,54 (2 of them, shortened with a saw or pliers)
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=S7121-ND S7121-ND] (CONN HEADER FMAL 36PS.1" DL GOLD) - Not Stackable
 
|-
 
|
 
| 8 Pin Stackable Female Header (non stackables can be used with plated through holes)
 
| 5
 
|
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=S7041-ND S7041-ND] (CONN HEADER FEMALE 8POS .1" GOLD) - Not Stackable
 
|-
 
|
 
| 6 Pin Stackable Female Header (non stackables can be used with plated through holes)
 
| 1
 
|
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=S7039-ND S7039-ND] (CONN HEADER FEMALE 6POS .1" GOLD) - Not Stackable
 
|-
 
|
 
| 24 Pin Female Header * Note *
 
| 2
 
| Required to carry enough current for motors
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=S7057-ND S7057-ND] (CONN HEADER FMALE 24POS .1" GOLD) - Rated @ 3A / Pin
 
|-
 
|
 
| 8 Pin Female Header * Note *
 
| 4
 
| Required to carry enough current for motors
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=S7041-ND S7041-ND] (CONN HEADER FEMALE 8POS .1" GOLD) - Rated @ 3A / Pin
 
|-
 
|
 
| 0.1" Jumpers
 
| 15
 
|
 
|
 
| [http://search.digikey.com/scripts/DkSearch/dksus.dll?lang=en&site=CA&KeyWords=A26242-ND A26242-ND] (SHUNT LP W/HANDLE 2 POS 30AU)
 
|-
 
|
 
| Circuit Board
 
|1
 
|v1.4
 
|
 
|N/A
 
|}
 
Note * You can use Female Headers which are not the exact size, but they are hard to break/cut so in this case buy some extra! (one wasted header per cut)
 
  
A BOM for sourcing the RAMPS components from Mouser is also available in [https://docs.google.com/spreadsheet/ccc?key=0Auf-66FPv0JidHhtRVB0VVplOURwWklrX0tIeXhsS3c&hl=en_US#gid=0 this google spreadsheet] (This list is incomplete and has missing or incorrect quantities.)
+
The three parameters are set for the end stops of three axes.  If the configuration is true, the end stop outputs 1 in default condition, and outputs 0 when triggered. That is to say, mechanical end stop should connect to the NO (normally open) contactor. If it is connected to the NC (normally closed), true should be changed to false.  
  
Shopping lists for v1.4 [http://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=d126a71257] .
+
  #define INVERT_X_DIR false
 +
  #define INVERT_Y_DIR true
  
= BT Extension =
+
Mistakes are often made in the above two parameters. The parameters are different for different machinery. In principle, the origin should be at lower-left corner of the print platform (origin: [0, 0]), or at up-right corner (origin: [max, max]). Only in this way will the printing be correct, otherwise, the printing is the mirror image of one axis which is not what expected.
In order to get rid of the USB connection between RAMPS and the PC one may like to use Bluetooth. There is a cheap module available in the market called 'JY-MCU' (vendor Shenzhen Jiayuan Electronic Co.,Ltd.).
 
  
[[File:Blue1.jpg]][[File:Blue2.jpg]]
+
  #define X_HOME_DIR -1
 +
  #define Y_HOME_DIR -1
 +
  #define Z_HOME_DIR -1
  
==Change module setting==
+
If the position of the origin is the minimum, the parameter is -1; if it is the maximum, the parameter is 1.
Before the module can be used the default setting has to be changed. Connect the module from PC via USB<->RS232 (RxD/TxD) interface with default settings (9600, N, 8, 1). The module shouldn't be paired at that moment. Apply with a terminal program the following AT commands:
 
<pre>
 
AT OK
 
AT+BAUD8 OK115200BAUD (set baud rate for RAMPS/Arduino Mega)
 
AT+NAMEPRUSAI3 OKsetname (optional set name, default: linvor)
 
AT+PIN0000 OKsetPIN  (optional set pin, default: 1234)
 
</pre>
 
  
More details about the configuration you will find here [[http://reprap.org/wiki/Melzi#Connect_via_Bluetooth]]
+
  #define X_MAX_POS 205
 +
  #define X_MIN_POS 0
 +
  #define Y_MAX_POS 205
 +
  #define Y_MIN_POS 0
 +
  #define Z_MAX_POS 200
 +
  #define Z_MIN_POS 0
  
==Wiring==
+
These parameters are crucial to the printing size. Fill in parameters by reference to the coordinate graphs. It is important to note that the origin is not the printing center and the real printing center usually lies at [(x.max - x.min)/2, (y.max -y.min/2)]. The coordinate of central will be used in the slice tool. The printing center’s coordinate must correspond to the parameter configuration, or it will print to the outside of the platform.
On RAMPS/Arduino Mega the UART level are 5V but the BT module supports only 3.3V input. Therefore the TxD level has to be divided by resistor. This passive solution is fast enough for 115kBaud. Overall only 4 wires have to be soldered.  
 
  
[[File:Blue3.png]]
+
  #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0}
  
==Connect via Bluetooth==
+
The parameter means the homing speeds (mm/min). This parameter can be set as default if you use the x-axis and y-axis adopt synchronous belt drive and z-axis adopts screw drive.
Once you have setup your BT devices you can select from drop down list and control your RepRap as usual.
 
  
==files==
+
  #define DEFAULT_AXIS_STEPS_PER_UNIT {85.3333, 85.3333, 2560, 158.8308}
  
[[File:RAMPS1.pdf]]
+
These parameters are crucial to the printing size. These parameters indicate the pulse the axis need when operating 1mm. they are corresponding to x, y, z axis and extruder respectively. In most cases these figure should be calculated by yourself, you can refer to: http://calculator.josefprusa.cz/#steppers.
  
[[File:Sd.pdf]]
+
So far, the commonest parameters have been configured and the printer can work now. In addition, if the 2004 LCD needs verifying, you should delete the “//” from “//#define REPRAP_DISCOUNT_SMART_CONTROLLER” to ensure the normal working.
 +
 
 +
 
 +
 
 +
==Extensible Applications==
 +
 
 +
Upload through Bluetooth
 +
 
 +
[[File:Ramps ea.jpg]]
 
   
 
   
 +
The COM should be set as (9600, N, 8, 1)
 +
The command for Bluetooth module:
 +
 +
  AT OK
 +
  AT+BAUD8 OK115200BAUD (set baud rate for RAMPS/Arduino Mega)
 +
  AT+NAMEPRUSAI3 OKsetname (optional set name, default: linvor)
 +
  AT+PIN0000 OKsetPIN (optional set pin, default: 1234)
 +
 +
 +
 +
==FAQS==
 +
1.How many extruders can ramps support?
 +
 +
Ramps 1.4 support 5 A4988 driving boards, which are for X/Y/Z/axis and 2 extruders respectively, so the ramps can support at most 2 extruders.
 +
 +
 +
2. What should I note when provide power for ramps?
 +
 +
The recommended power supply for Ramps is 12V, especially for Mega2560. If supplied over 12v, Mega will over heat, resulting in instability of operation, the serial port communication is was at times strong and at other times weak. Do make sure the power is 12v, if you don’t have switching power supply of 12v, please take down the diode D1 on Ramps if you use a greater power supply.
 +
The current is decided by the use of hotbed. If you use a hotbed, an idea power supply is 12v 17A, 200W. If not, 5A is enough.
 +
 +
 +
3. Can fan be added to Ramps?
 +
 +
Yes. If you use only one extruder, you can connect the fan to the 2 pins in the middle of the 6 blue output pins. If you use two extruders, the fan cannot be connected to ramps directly; you should connect it to a power source that is controlled manually. Or you can build an external circuit, the pins of which should be set in the firmware,
 +
 +
 +
4. What is the difference between ramps and ultimaker?
 +
 +
In the respect of function, they are totally alike. But there are some difference, one lies in the configuration of I/O pins. Another lies in the way of reading temperature. Ultimaker uses thermocouple and temperature control board (AD597), ramps uses NTC thermistor 100K. If you want to use thermocouple and temperature control board for ramps, you should take down the pull-up resistor one the thermistor of hot end.
 +
 +
 +
5. Can Ramps replace ultimaker to make an ultimaker printer?
 +
 +
Yes, it can, but you need to pay attention to the points we’ve mentioned in chapter Ⅴ .The ultimaker printer is one kind of reprap, as well as standard three- axis rectangular coordinates
 +
 +
 +
6. The temperature displayed is not normal.
 +
 +
A. you may select the wrong thermistor in marlin, we often choose 1.
 +
 +
B. The thermistor is Brocken or there is short-circuit occurred in the 2 pins of the thermistor.
 +
 +
C. The electrolytic capacitor on ramps is broken.
 +
 +
 +
7. The motor jitters.
 +
 +
A. It is a matter of poor connection,
 +
 +
B. A4988 has broke down,
 +
 +
C, the VREF is not right.
 +
 +
 +
8. The scope of motor is too small.
 +
 +
You may forget putting the jumper cap, or the parameter you set is wrong.
 +
 +
 +
9. The program uploading is not successful.
 +
 +
The USB cable doesn’t work; the version of Arduino IDE you use is not compatible; the select of COM is wrong.
 +
 +
 +
10. The hotbed and extruder can’t heat.
 +
 +
A. The MOSFET is broken.
 +
 +
B. The thermistor is not connected.
 +
 +
 +
11 the motor of extruder doesn’t work.
 +
 +
The thermistor is not connected; the temperature is not enough; A4988 broke down; ramps 1.4 broke down.
 +
 +
 +
==where to get==
 +
 +
ckick here to get your ramps 1.4
 +
 +
[http://www.geeetech.com/ramps-14-reprap-mega-pololu-a4988-extend-shield-p-606.html ramps1.4]
  
== How to buy ==
+
[http://www.geeetech.com/reprap-mega-pololu-shield-electronicsramps-pcb-kits-p-647.html ramps1.4 PCB kit]
Click here to buy: http://www.geeetech.com/ramps-14-reprap-mega-pololu-a4988-extend-shield-p-606.html
 

Latest revision as of 06:49, 29 April 2015

Introduction

Ramps shoutu.jpg

Ramps is short for reprap Arduino mega pololu shield, it is mainly designed for the purpose of using pololu stepper driven board (similar to 4988 driven board). Ramps can only work when connected to its mother board Mega 2560 and 4988/DRV8825. Owning to its stability in operation and great compatibility with most 3Dprinter (all reprap-model such as pursa i2 and i3). The combination of Ramps1.4+MEGA2560+A4988/DRV8825 is becoming a mainstream of DIY 3D printer control board.

Features

1. Standard interfaces (as that of extruder)

2. Reserved GCI like I2C and RS232

3 MOSFET 3 MOSFET are applied to the heater/ fan and thermistor circuit.

4. Adding another 5A to protect the component parts.

5. An 11A fuse is added to the hotbed

6. Support 5 stepper drive board

7. The adoption of Pin Header as pololu makes it more convenient to repair or change.

8. I2C and SPI are reserved for expanding

9. All the MOSFET can be controlled by PWM

10. Use the interface of servo motor to adjust the level of printing platform automatically.

11. Adding a SD module for SD ramps module.

12. LED can indicate the status of the heater (the open and close of MOS).

13. 2 stepper motor for Z axis in parallel.


Overview and Hardware

Rapms front.JPG Rampsback.jpg

Weight: 68g Size: 102mm*60mm


Software

Compiling environment: Arduino IDE

Firmware: Marlin

PC software: Printrun, Repetier-Host

Source

Printrun

Repetier-Host

Arduino IDE

Arduino IDE

Marlin

Arduino 1.0.1 for Mac

Interface

Interface Layout

线路图.jpg

Interface specifications

Ramps interfaces.jpg


2 power interfaces 12v 11a/12v 5a 6 motors (one for X axis, one for Y axis, 2 for Z axis, 2 for extruder 2 interfaces for LCD&SD 6 interfaces for end stop(X/Y/Z min, X/Y/Z max) 3 interfaces for PWM (one for hotbed, one for fan and one for extruder) 3 interfaces for thermistor


Jumper Instruction

Ramps jumper.jpg

Step size of stepper driver (A4988)

  jumper       Yes/No     stepsize     
   ms1     ms2      ms3 
   no      no       no     fullstep
   yes     no       no     halfstep
   no      yes      no     1/4step
   yes     yes      no     1/8step
   yes     yes      yes    1/16step 


Step size of stepper driver (Drv8825)

  jumper   Yes/No       step size
   ms1     ms2      ms3
   no      no       no    full step
   yes     no       no    half step
   no      yes      no    1/4 step
   yes     yes      no    1/4 step
   no      no      yes    1/16 step
  yes      no      yes    1/32 step
  no      yes      yes    1/32step
  yes     yes      yes    1/32step

Development Environment setting

Interface Connecting and Setting

Ramps c setting.jpg

Precautions: Like other electronics, the inverse connection of power supply can cause irreparable damage to the board (4988 included). You are advised to connect all the components before testing.

File Burning

As Ramps1.4 is just the shield board of Mega2560, the firmware must be burned into Mega2560.

Software Setting

1.Before uploading, driver should be installed for windows. Then choose the type of board: Tools > Board > Arduino Mega 2560 or Mega ADK. (Picture below)

Bsecet.jpg


2.Select the serial port: Tools > Serial Port, the serial port for mega is usually the last one.

Portselect.jpg


3.ClickButton1.jpgto check if there is any mistake. If not, clickButton2.jpgto upload.

Rumba 11.jpg

4.During the process of uploading, the 3 LEDs corresponding to TX, RX and L on mega board will blink, if the blink stops, the uploading is done.

Done uploading.jpg


After the uploading, you can go on with the next step. If the uploading is unsuccessful, read the error report on IDE, figure out the problem, and then try again. some frequent errors are: a wrong select of board type and serial port.


The connection of Repetier-Host

1. Click configuration> printer setting

Rh1.jpg

2. Set the communication port (the COM port for mega) and the Baud rate. Then click ok

Rh2.jpg

3. Click “connect”> upload. Choose the GCODE file you are printing.

Rh3.jpg

Get Started

Mega 2560 is the CPU of a 3d printer, manipulating the whole process of printing. Mega 2560 can’t be put in use directly without uploading firmware.

1. Firmware uploading- marlin.

2. Setting parameters of the firmware

3. The parameters that need setting are as below, for those not mentioned just leave them as default.

  #define BAUDRATE 250000

This parameter is for the baud rate of serial port. Note: a successful communication can be realized only when the Baud rate of upper computer is identical with that of Firmware. The Baud rate is not set in random. The common Baud rate are: 2400,9600,19200,38400,57600,115200,250000. The last three are frequently used for 3D Printer.

  #define MOTHERBOARD 33

This parameter is set for board type. 3D Printer has many types of main board, and the setting of IOs is different, therefore, the parameter has to correspond to the type of your board, or it can’t operate normally. The parameter of mega should be 33(single- nozzle) or 34 (dual-nozzle). For other board, you can refer to the annotation on the board.

  #define TEMP_SENSOR_0 3
  #define TEMP_SENSOR_BED 3

The two parameters are set for the type of temperature sensor respectively. They are the critical parameter to check if the sensor read temperature correctly. The printer can’t operate normally, even has potential risk (damage the device and even worse). You must modify depending on the temperature sensor you use.

  #define EXTRUDE_MINTEMP 170

This parameter is set to avoid the potential risks when the extruder operates before reaching the rated temperature. If you use other 3D Printer, such as printer to make Chocolates, 45℃ is appropriate, so that the parameter configured to a lower value(such as 40℃).

  const bool X_ENDSTOPS_INVERTING = true;
  const bool Y_ENDSTOPS_INVERTING = true;
  const bool Z_ENDSTOPS_INVERTING = true.

The three parameters are set for the end stops of three axes. If the configuration is true, the end stop outputs 1 in default condition, and outputs 0 when triggered. That is to say, mechanical end stop should connect to the NO (normally open) contactor. If it is connected to the NC (normally closed), true should be changed to false.

  #define INVERT_X_DIR false
  #define INVERT_Y_DIR true

Mistakes are often made in the above two parameters. The parameters are different for different machinery. In principle, the origin should be at lower-left corner of the print platform (origin: [0, 0]), or at up-right corner (origin: [max, max]). Only in this way will the printing be correct, otherwise, the printing is the mirror image of one axis which is not what expected.

  #define X_HOME_DIR -1
  #define Y_HOME_DIR -1
  #define Z_HOME_DIR -1

If the position of the origin is the minimum, the parameter is -1; if it is the maximum, the parameter is 1.

  #define X_MAX_POS 205
  #define X_MIN_POS 0
  #define Y_MAX_POS 205
  #define Y_MIN_POS 0
  #define Z_MAX_POS 200
  #define Z_MIN_POS 0

These parameters are crucial to the printing size. Fill in parameters by reference to the coordinate graphs. It is important to note that the origin is not the printing center and the real printing center usually lies at [(x.max - x.min)/2, (y.max -y.min/2)]. The coordinate of central will be used in the slice tool. The printing center’s coordinate must correspond to the parameter configuration, or it will print to the outside of the platform.

  #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0}

The parameter means the homing speeds (mm/min). This parameter can be set as default if you use the x-axis and y-axis adopt synchronous belt drive and z-axis adopts screw drive.

  #define DEFAULT_AXIS_STEPS_PER_UNIT {85.3333, 85.3333, 2560, 158.8308}

These parameters are crucial to the printing size. These parameters indicate the pulse the axis need when operating 1mm. they are corresponding to x, y, z axis and extruder respectively. In most cases these figure should be calculated by yourself, you can refer to: http://calculator.josefprusa.cz/#steppers.

So far, the commonest parameters have been configured and the printer can work now. In addition, if the 2004 LCD needs verifying, you should delete the “//” from “//#define REPRAP_DISCOUNT_SMART_CONTROLLER” to ensure the normal working.


Extensible Applications

Upload through Bluetooth

Ramps ea.jpg

The COM should be set as (9600, N, 8, 1) The command for Bluetooth module:

  AT OK 
  AT+BAUD8 OK115200BAUD (set baud rate for RAMPS/Arduino Mega)
  AT+NAMEPRUSAI3 OKsetname (optional set name, default: linvor)
  AT+PIN0000 OKsetPIN (optional set pin, default: 1234)


FAQS

1.How many extruders can ramps support?

Ramps 1.4 support 5 A4988 driving boards, which are for X/Y/Z/axis and 2 extruders respectively, so the ramps can support at most 2 extruders.


2. What should I note when provide power for ramps?

The recommended power supply for Ramps is 12V, especially for Mega2560. If supplied over 12v, Mega will over heat, resulting in instability of operation, the serial port communication is was at times strong and at other times weak. Do make sure the power is 12v, if you don’t have switching power supply of 12v, please take down the diode D1 on Ramps if you use a greater power supply. The current is decided by the use of hotbed. If you use a hotbed, an idea power supply is 12v 17A, 200W. If not, 5A is enough.


3. Can fan be added to Ramps?

Yes. If you use only one extruder, you can connect the fan to the 2 pins in the middle of the 6 blue output pins. If you use two extruders, the fan cannot be connected to ramps directly; you should connect it to a power source that is controlled manually. Or you can build an external circuit, the pins of which should be set in the firmware,


4. What is the difference between ramps and ultimaker?

In the respect of function, they are totally alike. But there are some difference, one lies in the configuration of I/O pins. Another lies in the way of reading temperature. Ultimaker uses thermocouple and temperature control board (AD597), ramps uses NTC thermistor 100K. If you want to use thermocouple and temperature control board for ramps, you should take down the pull-up resistor one the thermistor of hot end.


5. Can Ramps replace ultimaker to make an ultimaker printer?

Yes, it can, but you need to pay attention to the points we’ve mentioned in chapter Ⅴ .The ultimaker printer is one kind of reprap, as well as standard three- axis rectangular coordinates


6. The temperature displayed is not normal.

A. you may select the wrong thermistor in marlin, we often choose 1.

B. The thermistor is Brocken or there is short-circuit occurred in the 2 pins of the thermistor.

C. The electrolytic capacitor on ramps is broken.


7. The motor jitters.

A. It is a matter of poor connection,

B. A4988 has broke down,

C, the VREF is not right.


8. The scope of motor is too small.

You may forget putting the jumper cap, or the parameter you set is wrong.


9. The program uploading is not successful.

The USB cable doesn’t work; the version of Arduino IDE you use is not compatible; the select of COM is wrong.


10. The hotbed and extruder can’t heat.

A. The MOSFET is broken.

B. The thermistor is not connected.


11 the motor of extruder doesn’t work.

The thermistor is not connected; the temperature is not enough; A4988 broke down; ramps 1.4 broke down.


where to get

ckick here to get your ramps 1.4

ramps1.4

ramps1.4 PCB kit