Configuration II: Everything Else

The remaining components of this printer are all standard, but I am using a lot of features so configuration still requires some finesse.

I would like to run two SSRs, however most of the easily accessible GPIO pins have already been claimed for other purposes.

Smoothieboards GPIO pins also output only 3.3V which is not always enough to fully switch an SSR.  The easy solution would be to connect the SSRs to one of the MOSFETs, but this costs an output that is needed to control heaters and fans.  Instead I built a cable which converts Smoothies regular limit switch connectors into 5V outputs by including a 2n7000 transistor.

The first SSR will be used to control the 24V and 72V switching power supplies.  This way the printer can completely shut off even if a MOSFET fails closed.

    # Switch: Master Power SSR
    switch.mpwr.enable                           true
    switch.mpwr.output_pin                       1.28             # Z_MIN
    switch.mpwr.output_type                      digital
    switch.mpwr.input_on_command                 M80
    switch.mpwr.input_off_command                M81
    switch.mpwr.ignore_on_halt                   false

The second SSR will be controlling the heated bed.  The 150x150mm 24V 200W heated bed was made by Keenovo and includes an embedded thermistor, adhesive backing, and insulation.  This bed will heat up very fast as 200W is quite powerful for its size.  The built in silicone foam insulation should further increase its efficiency and will also protect the servos.

I have connected the temperature sensor to the Smoothieboard, but will not be powering the bed itself as it is not attached to anything and could quickly overheat.  I am using Fotek SSRs for testing but they will be replaced with a more reliable brand in the final build.

The heated bed configuration can essentially be lifted straight from the Smoothieware documentation:

    # Bed Temperature Configuration
    temperature_control.bed.enable               true             # Heated Bed
    temperature_control.bed.thermistor_pin       0.25             # Sensor T2
    temperature_control.bed.heater_pin           1.29             # Z_MAX
    temperature_control.bed.beta                 3950

    temperature_control.bed.designator           B
    temperature_control.bed.set_m_code           140 
    temperature_control.bed.set_and_wait_m_code  190

    temperature_control.bed.p_factor             100
    temperature_control.bed.i_factor             0.1
    temperature_control.bed.d_factor             100

    temperature_control.bed.max_temp             120
    temperature_control.bed.min_temp             0
    temperature_control.bed.runaway_heating_timeout        240
    temperature_control.bed.runaway_cooling_timeout        900
    temperature_control.bed.runaway_range                  20

Finally its time to connect the dual extruder assembly.  The wiring is pretty messy but the stepper motors and thermistors plug into their designated connectors, and I connected the heater cartridges to the Smoothie's large MOSFETs.

We can borrow the extruder configuration from Smoothies documentation.  I have only pasted the configuration for one of the two extruders here as they are analogous and quite verbose.

    # Extruder Configuration
    # A dual-extruder E3D Chimera fed using direct drive Bulldog Lite extruders.
    extruder.hotend0.enable                      true
    extruder.hotend0.steps_per_mm                120
    extruder.hotend0.default_feed_rate           400
    extruder.hotend0.acceleration                5000
    extruder.hotend0.max_speed                   50

    extruder.hotend0.step_pin                    2.0              # Motor 1 Pins
    extruder.hotend0.dir_pin                     0.5
    extruder.hotend0.en_pin                      0.4
    alpha_current                                0.8

    # Hotend Temperature Configuration
    temperature_control.hotend0.enable           true             # Hotend 1
    temperature_control.hotend0.thermistor_pin   0.23             # Sensor T0
    temperature_control.hotend0.heater_pin       2.7
    temperature_control.hotend0.thermistor       Semitec

    temperature_control.hotend0.designator       T0
    temperature_control.hotend0.set_m_code       104
    temperature_control.hotend0.set_and_wait_m_code        109

    temperature_control.hotend0.p_factor         74.0
    temperature_control.hotend0.i_factor         6.5
    temperature_control.hotend0.d_factor         200

    temperature_control.hotend0.max_temp         280
    temperature_control.hotend0.min_temp         0
    temperature_control.hotend0.runaway_heating_timeout    120
    temperature_control.hotend0.runaway_cooling_timeout    360
    temperature_control.hotend0.runaway_range              20

The final build will include a couple of additional fans, but this completes the test assembly.  I've been checking between each step so there was no moment of truth, but it is still quite satisfying to see it all move together.

You can see my complete configuration file here: config.txt

No comments:



Email *

Message *