Extruder controller v3.6

From RepRap
Revision as of 21:28, 27 December 2014 by Glenn (talk | contribs) (+ Category:Electronics)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

preserving history

++ Overview

[[f>image flickr:5239144255 size="medium"]] The extruder controller is a compact little board based on the Arduino Diecimila. This board contains all the electronics required to drive one extruder, as well as extra electronics to drive a heated/automated build platform. It has built-in USB, so you can talk to it and program it with a normal USB cable. It has been redesigned with much higher power needs, so it has an ATX power header to provide the power. This means power is not coming over the RS485 cable which has the side effect of reducing noise.

+++ High Power MOSFETs

[[f>image flickr:5241478671 size="small"]]

This extruder controller is a powerhouse. We pored over datasheets to find the perfect MOSFET for our application. These MOSFETS don't even break a sweat when controlling demanding loads like the MK5 extruder or the Thingomatic Heated Build Platform. Both of those can draw upwards of 5A at 12v. Gone are the days of relays and workarounds for weak MOSFETs that overheat.

+++ Thermocouple Support

[[f>image flickr:5242073842 size="small"]]

Accurate temperature measurement is critical for high quality 3D printing. Thermistors are nice for general, low-quality temperature measurement. Once you get above 150C, its time to step it up. Thermocouples are a really solid way to measure high temperatures. They are accurate, reliable, and high tolerance. They also have the side benefit of being easy to mount. Simply bolt the thermocouple to the side of your thermal core and you're ready to go.

+++ Built-in USB

[[f>image flickr:5242073914 size="small"]]

We've added an onboard FTDI chip which means it is even easier to program your extruder controller. Simply plug in a standard USB cable and upload your program. No need for a special cable with confusing polarity instructions. One less thing to worry about on your journey to 3D printing perfection.

++ Interfaces

+++ USB to Serial

With the onboard USB described above, the extruder controller can easily be connected to your computer. It will show up as a serial device and functions identically to a normal Arduino Diecimila. The board accepts a standard USB Type B connector.

image flickr:5242074028

+++ RS485

    • THIS IS NOT ETHERNET!!!**

Do not plug this board into your router or computer ethernet port. This could cause Bad Things to happen.

The extruder controller talks to the Motherboard over a serial connection protocol called RS485. The RJ45 jack on the jack connects the extruder controller and the motherboard together using a low-cost, off the shelf cable.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || RS485A || This is channel A of the RS485 serial communications protocol. || || 2 || RS485A || This is channel B of the RS485 serial communications protocol. || || 3 || N/C || This pin is not connected to anything. || || 4 || N/C || This pin is not connected to anything. || || 5 || N/C || This pin is not connected to anything. || || 6 || GND || This pin is connected to ground on the extruder controller. || || 7 || GND || This pin is connected to ground on the extruder controller. || || 8 || GND || This pin is connected to ground on the extruder controller. ||

image flickr:5241479099

+++ Power Supply

The extruder controller is powered through a standard 4 pin Molex power connector. This connector delivers +12V which is used to drive the peripherals. This +12v is also converted internally to +5V in order to drive the rest of the electronics on the extruder controller.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || N/C || This pin is not connected to anything. || || 2 || GND || This pin is connected to ground on the extruder controller. || || 3 || GND || This pin is connected to ground on the extruder controller. || || 4 || +12V || This pin is where +12V should be provided. ||

image flickr:5241479187

+++ Thermocouple

The extruder controller now uses Thermocouples as its main temperature measurement method. Thermocouples are much more reliable, can handle temperatures of over a thousand (1000) degrees celsius. They are also extremely easy to mount.

In particular, this board is designed to be used with Type K thermocouples, which is a very standard type of thermocouple.

Thermocouples are polarized, so if you wire it up wrong, the temperature will not read correctly. The thermocouples we ship are color coded, so wire it up based on the colors.

It may also help to trim down the thermocouple leads so that they fit nicely in the terminals. About 5-6mm is the appropriate length for the bare wires.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || T- || This is the negative side of the thermocouple. It should be Red. || || 2 || T+ || This is the positive side of the thermocouple. It should be Yellow. ||

image flickr:5242074408

+++ DC Motor Driver

The extruder controller has an H-bridge on it that can control a single DC motor, such as the motor for a MK5 Plastruder. The H-bridge operates with +12V voltage levels.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || 1A || This is one side of the h-bridge. Typically the red motor wire goes here. || || 2 || 1B || This is the other side of the h-bridge. Typically the black motor wire goes here. ||

image flickr:5242074560

+++ Power MOSFETs (x3)

The power MOSFETs are what control the extruder heater, build platform heater, and the conveyor belt motor. These little chips are beasts that can handle 10A of current without breaking a sweat. They can easily power your MK5 or 120mm x 120mm heated build surface.

They are labeled 'Heater', 'Extra', and 'Fan' respectively.

The pinouts are the same for all 3 MOSFETs, and looking at the board with the USB port at the top, pin 1 is toward the bottom.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || +12V || This pin is connected directly to the +12V power supply. || || 2 || Output || This pin is connected to the drain of the N-channel MOSFET. When the MOSFET is on, this connects to ground. Otherwise, it is high impedance. ||

image flickr:5241479635

+++ Quadrature

The extruder controller has optional support for quadrature encoding. This allows you to measure the speed and position of the extruder motor. There is a 4-pin header on the extruder controller that you can plug into.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || +5V || This pin is connected to the +5V power supply and provides power to the encoder board. || || 2 || GND || This pin is connected to ground on the extruder controller. || || 3 || A || This is the input pin for the quadrature 'A' channel. || || 4 || B || This is the input pin for the quadrature 'B' channel. ||

image flickr:5241479723

+++ I2C

The ATMEGA168 chip that powers the extruder controller is capable of communicating over I2C. We have included a header that allows you to connect to the I2C hardware and hook up whatever you like to it.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || +5V || This pin is connected to the +5V power supply and provides power if needed. || || 2 || GND || This pin is connected to ground on the extruder controller. || || 3 || SDA || This is the I2C data line. It has a 4.7k pullup resistor on it. || || 4 || SCL || This is the I2C clock line. It has a 4.7k pullup resistor on it. ||

image flickr:5241479811

+++ ICSP

The ATMEGA168 needs to be initially programmed, and the ICSP header is the connection used to do that. We've created a header for our use, and you're welcome to use it for experimentation or hacking as well. Keep in mind, many of these pins do double-duty during active use of the board.

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || MISO || Master In - Slave Out - SPI || || 2 || VCC || This pin is connected to +5V on the extruder controller. || || 3 || SCK || Clock - SPI || || 4 || MOSI || Master Out - Slave In - SPI || || 5 || RESET || A low voltage resets the extruder controller board. || || 6 || GND || This pin is connected to ground on the extruder controller board. ||

image flickr:5242074984

+++ Analog

The ATMEGA168 has a few extra unused analog pins. We've provided headers so that you can interface with them. The headers are simple .100" pitch headers which makes things simple.

Each set of analog has +5 and GND provided to make your life easy.

The analog pins available are: A2, A3, A6, and A7

    • Pinout**

||~ PIN ||~ NAME ||~ FUNCTION || || 1 || VCC || This pin is connected to +5V on the extruder controller. || || 2 || GND || This pin is connected to ground on the extruder controller board. || || 3 || INPUT || This is the analog input which is connected to an ADC pin on the ATMEGA168. ||

image flickr:5242075092

++ Schematic

image flickr:5218752364 size="medium"

++ Partlist / BOM

iframe http://www.thingiverse.com/thing:4969/partlist width="700" height="1100" frameborder="0"

++ Source

[[f>image flickr:5241501143]]

The Extruder Controller v3.6 is Open Source Hardware and is licensed under the GNU GPLv3.

    • Download**

++ History

The Extruder Controller v3.6 is a derivative of the Extruder Controller v2.2 which was originally designed by Zach Hoeken of MakerBot Industries.