Sanguinololu/es

From RepRapWiki
Jump to: navigation, search


Crystal Clear action run.png
Sanguinololu

Release status: working

Sanguinololu.jpg
Description Release Version 1.3a
License GPL 2.0
Author Joem
Contributors
Based-on Pololu Electronics, Sanguino
Categories Electronics/es, Mendel Development/es
CAD Models Eagle
External Link none


Contents

Pagina en Traducción

Introducción

Sanguinololu es una solución electrónica todo en uno, de bajo costo para RepRap y otros dispositivos CNC. Presenta un clon de sanguino a bordo utilizando el ATMEGA644P aunque un ATMEGA1284 puede ser fácilmente usado. Sus cuatro ejes son accionados por un controlador de pasos con pines compatibles con un Pololu.

La tarjeta cuenta con una amigable puerto de expansión para desarrollo que soporta I2C, SPI, UART, así como también unos pocos pines ADC. Todas los 14 pines de expansión pueden ser utilizados también como GPIO (General Purpose Input Output - entradas y salidas de propósito general).

La tarjeta esta diseñada para ser flexible a la disponibilidad de fuentes de poder de usuario, aceptando fuentes de poder (PSU) ATX para alimentar la tarjeta o instalandole un kit de regulación de voltaje para ser utilizado con cualquier fuente de poder desde 7 a 30 V.

Ultimas Actualizaciones

Ultima revisión:

Versión 1.3b - Actualizado Abril 4, 2012

Con esta revisión el Sanguinololu es actualizado con componentes SMT, dejando espacio en la tarjeta para mas conectores y montaje en una sola cara. La tarjeta es compatible con la versión anterior y la asignación de pines permanece sin cambios.

Los cambios de hardware:

  • El Atmel ATMEGA644P fue cambiado a la versión SMT, Dejando espacio libre en la tarjeta.
  • Los MOSFET fueron cambiados a la versión SMT, capaz de controlar una corriente de 76A !!
  • El conector Molex para disco duro vuelve a estar disponible en la tarjeta.
  • Terminales de conexión de 3 pines para disponibilidad de 5V, +12V y GND.
  • conectores para finales de carrera ópticos de 3 pines y mecánicos de 4 pines a 5 o 12V.


Versión 1.3a - Actualizado Julio 21, 2011

la Versión 1.3a no tuvo cambios en el software - La asignación de pines se mantiene igual y su firmware compatible 1.2+ trabajara bien en esta. Los cambios del hardware:

  • Se retiro el conector Molex de disco duro en favor del uso de un regulador de voltaje - algunas fuentes de voltaje entregan una señal de 5V muy sucia cuando no existe la carga de una "mother board", así que es mejor utilizar solamente el conector ATX+4 y un regulador de voltaje de 5V.
  • Se adiciona un "jumper" para habilitar/Deshabilitar el auto-reinicio USB. De esta manera si esta imprimiendo desde una memoria SD utilizando SDSL puede desconectar su USB y re-conectarla sin interrumpir su impresión.
  • R7 y R8 son ahora resistencias "pull-up" de 100k en las lineas de habilitación de los paso a paso. Esto asegura qeu los motores de pasos están deshabilitados y no se moverán mientras se carga un nuevo firmware, se reinicia, etc.
  • Se retiran las resistencias limitadoras de corriente para el FTDI.
  • Se adiciona un conector extra par motor-z utilizado en Prusa Mendel.


Ultimos post en el Foro

Características

  • Diseño compacto - Las dimensiones de la tarjeta son 100mm x 50mm (4" x 2") - Solo una pulgada mas larga que una tarjeta de presentación!
  • Clon de Sanguino, Utiliza el ATmega644P de Atmel - También compatible con el ATmega1284!!
  • Hasta 4 Pololu stepper driver boards (o compatible con Pololu) incluye ejes X,Y,Z y Extrusor (sin regulador de voltaje)
  • Soporta múltiple configuraciones de alimentación.
-- Lógica & Motores alimentados por una fuente de poder ATX (necesita un conector Molex de disco duro, y un conector ATX 4P opcional, para una fuente adicional de 12 V)
-- Los Motores son alimentados por terminales de tornillos de 5 mm.
-- La lógica es alimentada por el conector USB.
-- La lógica puede ser alimentada por un regulador de voltaje incluido en la tarjeta (el conector Molex de disco duro no puede ser instalado simultáneamente)
Soporta múltiples configuraciones de comunicaciones
-- Conectividad USB por medio del FT232RL.
-- Conector USB2TTL disponible para cable FTDI, o modulo bluetooth BlueSMIRF.
  • 2 conectores de termistor con los circuitos necesario para su lectura.
  • 2 MOSFETs tipo N para extrusor y base caliente, o para lo que se te ocurra.
  • Selecionable 12v(o voltaje de fuente)/5v voltaje de finales de carrera.
  • conectores en el borde de la tarjeta, lo que permite conexiones en angulo recto.
  • Silkscreen de los conectores en las dos caras de la tarjeta, facilitando la conexión de cables en la cara inferior.
  • 13 pines extra disponibles para expansión y desarrollo - 6 analógicas y 8 digitales, con las siguientes capacidades
-- UART1 (RX y TX)
-- I2C (SDA y SCL)
-- SPI (MOSI, MISO, SCK)
-- PWM pin (1)
-- (5) Entradas / Salidas
  • Todos los componentes son de hueco pasante (con excepción del chip FTDI) para un fácil soldado manual.

Errores

  • El voltaje 5V VBUS del USB esta conectado a la salida del regulador de 5V. Esto es malo para el regulador y malo para el PC. Algunos usuarios reportan que el regulador se calienta (porque esta alimentando el PC), otros usuarios reportan que el PC muestra errores de sobre carga en la corriente del bus USB. Nophead recomienda cortar la pista de 5V del conector USB. El único inconveniente es que la tarjeta necesitara ser alimentada a 12V antes de hacer cualquier cosa.
  • Cuando el cargador de arranque corre durante un reinicio y cuando descarga un nuevo firmware, los motores están habilitados debido a las resistencias pull-up en los Pololus (las lineas de habilitación están en nivel lógico alto (5V o un 1 lógico) por resistores de 100K en el Sanguinololu pero también están siendo forzadas a un nivel bajo por resistencias de 100K en cada pololu). Los pines del controlador de motores de paso estarán flotantes entonces y esto causa movimientos erráticos del motor.

El pin de pasos E esta contiguo al pin de dirección E por lo cual el cargador piensa que es un LED que debe ser encendido intermitentemente. Esta [diafonía ] Puede producir que el motor del extrusor gire cuando el firmware esta siendo descargado. Esto no es bueno cuando el extrusor esta frío, porque se puede dañar el extremo caliente. Nophead recomienda cambiar las resistencias en la linea de habilitación (R7 y R8) por 4K7 para asegurar que los motores estarán deshabilitados mientras el firmware los habilita.

Una corrección de software es utilizar la rutina de carga del GEN7 que no enciende un LED no existente.

Imágenes del Esquemático & Tarjeta

Imagenes de Referencia

Fotos Históricas

Donde Conseguirlo?

Usted puede comprar la tarjeta despoblada o un kit completo en:

Puede comprar la tarjeta completamente ensamblada en:

  • Menextech The newest version 1.3a. kits, y tarjetas pobladas y probadas.
  • KitPrinter3D 1.3a pobladas.
  • RepRap.me The newest version 1.3b. Tarjetas sin poblar, kits, y tarjetas pobladas y probadas.
  • Solidoodle - v1.3a completamente ensambladas con el bootloader instalado. Solo adicione el firmware & y los drivers de motor.
  • eMAKERshop Fully assembled with bootloader and Sprinter configured for Prusa Mendel. (Includes endstops & cables, female Crimp terrminals and housings for all connections, and heatsinks for Pololu stepper drivers)
  • EBay United Kingdom
  • Reprapworld.com
  • resco-research Completamente ensamblados y probados! Versión 1.3a

(Si hay mas vendedores disponibles, por favor agregarlos en esta sección)

Usted también necesitara una tarjeta controladora para motores de pasos Pololu o compatible como son las StepStick

  • Tarjeta controladora para motores de pasos compatible con Pololu disponibles en RepRap.me - En Stock! Nueva Versión con pasos 1/16 y disipador de calor gratis.
  • Tarjeta controladora para motores de pasos compatible con Pololu A4983 en [1] NOTA: Estas tienen resistencias de 0,22 ohm, por lo cual controlan una corriente maxima de 0,9 A.
  • Pololus Genuinos, Con un vendedor ubicado en UK eMAKERshop

Archivos en formato EAGLE, listas de partes

Esquemáticos, tarjetas, imágenes en : https://github.com/mosfet/Sanguinololu/tree/master/rev1.3a

Partes: https://github.com/mosfet/Sanguinololu/blob/master/rev1.3a/parts.txt

Por favor note que las listas de partes generadas por Eagle pueden ser incompletas e incorrectas. El circuito integrado en la lista de partes debe ser un 644P, no simplemente un 644. Esta falta de exactitud se debe a la forma en la que se hacen las bibliotecas de partes. Verifique en las instrucciones de ensamble las partes que necesitará, esto le evitará múltiples ordenes de partes y le ahorrará tiempo y dinero.

También, compre únicamente resistores de 1/4 W nada mas grande se podrá utilizar en esta PCB.

Proyectos de partes en Mouser

Todo lo que necesitas excepto el PCB !

BOM en Mouser para Sanguinololu 1.3A con conectores polarizados. https://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=362F4749E3 Actualizado Agosto 11, 2011. Se cambio el pin vertical de 4 pines 12V (Molex PN 39-28-1043), por uno en angulo recto (Molex PN 39-30-1040)

Si espera que su base caliente use mucha corriente (es decir mas de 5A) usted debe pensar en utilizar un MOSFET IRF2804PbF en lugar del RFP30N06LE especificado como Q2. El RFP30N06LE tiene una resistencia de 47 mOhms, mientras el IRF2804PbF tiene una resistencia de solo 2 mOhms.

Instrucciones de Ensamble (Versión 0.7 - 1.3a)

Para versiones anteriores vea Sanguinololu_0.6

Para usuarios que van a poblar una tarjeta 1.3a, note que hay un par de cambios:

  • Usted tendrá que soldar un conector de dos pines tipo puente para la función AUTO-RST del FTDI. Esta esta localizado justamente sobre el chip ATMEGA.
  • R7 & R8 son resistencias de 100K y son parte del ensamble recomendado.

Para usuarios de tarjetas 1.2a:

  • R7 & R8 deben ser reemplazados con puentes de alambre. Yo utilice dos alambres sobrantes de elementos soldados previamente en lugar de las resistencias R7 y R8.

Para quien esta poblando un PCB 1.2 simplemente siga la guiá de ensamble paso a paso disponible en imágenes de Baja , Media y alta Resolución.


Modificando tarjetas viejas (De la Versión 1.1 y 1.2 a Versión 1.3a)

Para usuarios con una PCB version 1.1 quienes quieran modificarla para hacerla equivalente (electricamente/firmware)a una PCB 1.2, la imagen inferior y este diagrama muestra cortes en las rutas y los puentes de alambre requeridos.

Sanguinololu PCB Modded from v1.1 to v1.2.JPG

Infobox info icon.svg.png Nota
se utilizan puentes de alambre en lugar de R7 y R8 en las tarjetas V1.2 y en V1.1 modificadas a V1.2

Para crear un PCB equivalente V1.3A desde una tarjeta V1.1 como la anterior, o una tarjeta estándar V1.2, se requieren los siguientes cambios:

  • Montar (condensador) C7 en un pequeño socalo de tal forma que puedas desconectarlo Adrians Prusa Notes - Electronics
  • Adicionar dos resistencias pull-up de 100k, para polarizar a 5V el pin 20 y el pin 35 del chip ATMEGA.
Warning-general-2.gif.png Caution
Así como en la modificación 2011-09-12 (Desde v1.1 modificada o v1.2 estándar a la v1.3a) aún no se ha probado/ verificado funcionalmente.

Por hacer: tomar fotografías.

Pasos Iniciales

Reúna las herramientas que necesitará para llevar a cabo las soldaduras de los elementos de hueco pasante y si usted opta por el kit FTDI a bordo también algunas soldaduras STM.

- Cautin (o Cautil)de baja potencia - estacion de soldadura = lo mejor, cautin 12W = muy buena opcion, cautin 25W = maxima potencia recomendada, no es recomendable la pistola de soldar ya que por lo voluminosa es dificil de manipular ademas tiene una punta comparativamente muy grande y la potencia que entrega es altisima con alto riesgo de dañar los dispositivos SMT por sobrecalentamiento.

- Soldadura de aleaciones de estaño, un factor muy importante es el tipo de soldadura que se este utilizando y el calibre del alambre, para elementos SMT utilice el alambre mas delgado y la aleación con mas bajo punto de fusión que tenga disponible. He probado el alambre de soldadura Kester con aleación Sn62Pb36Ag02 (PN 24-7068-7608) de diámetro 0.015" y se tienen excelentes resultados. Para mas informacion sobre tipos de soldadura siga este link

-y lo mas importante el flux !! No puedo expresar lo mucho que facilita el flux realizar las soldaduras de los dispositivos SMT. Personalmente recomiendo para soldaduras STM el Kester 985M el cual no deja residuos (no-clean), también el Kester 2235, conseguirlos puede costarte algo de tiempo y dinero pero la calidad de las soldaduras resulta mejorada considerablemente.

- Por ultimo y no menos importante, necesitara buena iluminación y algo de espacio, tómese un respiro para despejar un área cómoda en la cual trabajar con una superficie plana y estable, no realice soldaduras colocando las PCB sobre otros objetos.

Antes de realizar la primera soldadura revise su tarjeta cuidadosamente en búsqueda de defectos. Busque conexiones sospechosas entre líneas. Familiaricese con la ubicación de las partes que se montaran en ambas caras.

Reúna sus componentes y asegúrese que tiene completa la lista de partes de su selección. Esta foto muestra partes suficientes para ensamblar dos Sanguinololus - uno para conectores ATX y el otro con terminales de tornillo y regulador de voltaje.


Sanguinololu 1.0 Build 0. parts.JPG

Soldando el Chip FTDI

Instale el chip FT232RL FTDI. Guiándose por la impresión del Silkscreen (la silueta en líneas blancas que representa la posición de los elementos sobre el PCB).Si tiene experiencia realice la soldadura SMT utilizando su método preferido. Si no siga cuidadosamente estas instrucciones para tener mejor resultado. La tarjeta viene pre estañada desde su proceso de fabricación, con el pre-estañado es suficiente para fijar el chip en su lugar. Después de aplicar flux sobre los pads (áreas rectangulares donde se sueldan las patas de los elementos SMT) coloque y alinee cuidadosamente el chip. ubique el pin 1 y confirme sobre el silkscreen que el chip esta colocado correctamente, si lo suelda en la posición equivocada lo mas probable es que no pueda sacarlo sin dañar el chip o deteriorar seriamente el PCB.

Limpie la punta del cautín y colóquela sobre el pad que se encuentra bajo el pin 1, espere hasta que observe que la soldadura de estaño se derrite y "moja" el pin 1 del chip. Tenga en cuenta que hasta este momento no hemos agregado soldadura, estamos soldando con la soldadura que se encontraba sobre el pad. ahora confirme nuevamente que la alineación es correcta, verifique que todos los pines se encuentran sobre su pad correspondiente y que la alineación de los mismos sobre el pad es buena, si no es así vuelva con la punta del cautín sobre el pad 1 y cuando la soldadura esté derretida corrija la posición del chip.

Como podrá haberse percatado este proceso requiere algo de experiencia y habilidad, si no esta seguro de querer hacer frente al proceso de soldadura de elementos SMT, usted puede comprar la tarjeta preensamblada. Ahora si lo que prefiere el pan horneado en casa siga con el pin 15, cuando termine con este siga con el pin 28, luego con el pin 14, después del cual debe soldar todos los demás pines en el orden que prefiera.

Cuando todos los pines se encuentren soldados, faltara agregar algo de soldadura, este paso es critico y deberá realizarlo con especial atención, agregue un poco mas de flux sobre todos los pines, si el alambre de soldadura que tiene es demasiado grueso puede tratar de adelgazarlo con un lapicero sobre el alambre, haciendo las veces de aplanadora sobre el alambre ejerciendo presión y haciéndolo rodar. Con el alambre lo mas plano que haya podido dejarlo toque el pad (previamente calentado con la punta del cautín)con mucho cuidado para no agregar mas soldadura de la que necesita, tenga en cuenta que la soldadura la agregara sobre el pad y no sobre la punta del cautín. repita este procedimiento con los demás pads.

Otra alternativa a tener que soldar un chip STM, puede ser un convertidor de USB a TTL, soldar esta parte requiere tanta habilidad como la necesaria para soldar una resistencia de hueco pasante.

Partes:

 IC100    FT232RL          FT232RLSSOP              

NOTE: cuando se prueba la realimentacion de datos del FTDI, como en el siguiente video o en las anotaciones que aparecen a continuacion, debe estar seguro de que el jumper no esta en cortocircuito con la carcaza del conector USB que esta justamente debajo y lo confundiria pensando que tiene un problema cuando no es así.


ahora instale los componentes asociados al FTDI. verifique la polarización del condensador electrolitico(C16).

Partes:

 J1       USB              USBPTH                   
 C7       0.1uF            CAPPTH2
 C8       0.1uF            CAPPTH2                  
 C11      0.1uF            CAPPTH2                  
 C15      0.1uF            CAPPTH2                  
 C16      4.7uF            CAP_POLPTH2              

Sanguinololu 1.0 Build 3. ftdi components.JPG


Ahora es un buen momento para probar el chip FTDI. Conecte un cable USB (con conectores Tipo A y B) en la computadora y la tarjeta respectivamente. El computador debera detectar un nuevo dispositivo e instalar un nuevo puerto COM, revise el numero de ese nuevo puerto COM, corra un programa de terminal (Hyperterminal o PuTTy por ejemplo) cree una coneccion nueva utilizando la configuracion por defecto y el nuevo puerto COM que se acaba de instalar. Temporalmente conecte los pines 'RX' y 'TX' del puerto USB a TTL en la parte posterior de la tarjeta bajo el conector USB, escriba algo en su programa terminal, lo cual debera aparecer en la ventana del programa terminal como eco, este eco indicará que todo es correcto.

Note que cuando usted finalice el ensamblado y quiera conectar la tarjeta utilizando su software de impresion, entonces necesitará, si esta utilizando WinXP tambien cargar los drivers del chip FTDI que los puede descargar desde el sitio web FTDI. Entonces windows reconocera el chip FTDI y lo instalará como un nuevo dispositivo (Puerto COM)

Soldando El Nucleo Sanguinololu

A continuacion, suelde los conectores hembra, estando seguro de que estan completamente verticales y asentados sobre la tarjeta PCB. Cuando se sueldan dos tramos de conector hembra uno al lado del otro, pueden quedar muy justos, incluso pueden apretujarse perdiendo linealidad, si es el caso, lime cuidadosamente los extremos que se van a juntar de suerte que ajusten perfectamente en el espacio disponible.

Partes:

 4x conectores hembra 16 Pines 1 hilera.

Sanguinololu 1.0 Build 4. female sockets.JPG

Suelde los conectores de jumper MS1, MS2, MS3. Note que es mas facil hacerlo si tienen el puente jumper puesto. Asegurese de que queden completamente asentados y verticales. Dejando el jumper conectado en su lugar pondra los pines MS (Micro Stepping) en alto (nivel logico 1) esto hara que el controlador pololu tenga resolucion de dieciseis pasos (micropasos por paso). Esto puede ser correcto o no dependiendo de su firmware. Si sus motores se mueven erraticamente (vibran en lugar de girar), chequee esta configuración.

Partes:

 12x Conectores Macho 2 Pines 1 hilera
 12x Puentes Jumper

Sanguinololu 1.0 Build 5. microstepping jumpers.JPG

Instale la resistencia limitadora de corriente del LED y la resistencia pull down del MS1 (MS2 y MS3 tienen resistencias pull down internas).

Partes:

 R1       1k (1.5k)        RESISTORPTH1
 R2       100k             RESISTORPTH1
 R3       100k             RESISTORPTH1             
 R4       100k             RESISTORPTH1             
 R5       100k             RESISTORPTH1             

Sanguinololu 1.0 Build 6. pulldown and led resisitor.JPG

Suelde los capacitores de desacople de los drivers. Antes de soldar, doble los pines de modo que el capacitor se pueda instalar acostado, no olvide la polaridad!

Partes:

 C1       100uf            CAP_POLPTH1
 C2       100uf            CAP_POLPTH1              
 C3       100uf            CAP_POLPTH1              
 C4       100uf            CAP_POLPTH1              

Sanguinololu 1.0 Build 7. decup caps.JPG

Instale los filtros RC de paso alto del termistor. Cuide la polarizacion de los capacitores. instale las resistencias pull down del MOSFET

Infobox info icon.svg.png Nota Importante
Si esta utilizando un Sanguinololu 1.3a, instale resistencias de 100K en R7 y R8.

Si esta utilizando un Sanguinololu 1.2, no instale resistencias en R7 y R8. En cambio, reemplacelas con cables de coneccion entre sus pines - Yo utilizo los pines sobrantes de algo que ya solde y corte los excesos. Cuando haya terminado, tendra dos cables de coneccion: uno en lugar de R7 y otro en lugar de R8.

Partes:

 R6       10k                     RESISTORPTH1             
 R11      10k                     RESISTORPTH1             
 R7       100k - 1.3a unicamente! RESISTORPTH1             
 R8       100k - 1.3a unicamente! RESISTORPTH1             
 C9       10uF                    CAP_POLPTH2
 C10      10uF                    CAP_POLPTH2              
 R9       4.7k                    RESISTORPTH1             
 R10      4.7k                    RESISTORPTH1             

Sanguinololu 1.0 Build 8. mosfet resisitors, highpass filters.JPG

Instale el socalo DIP y el cristar resonador. Antes de soldar, doble las patas del resonador, para que una vez soldado no sobresalga por encima del nivel del socalo DIP. No importa que tan redondeado quede.

Partes:

 DIP-40   SOCKET
 Y1       16MHz 22pF       RESONATORPTH             

Sanguinololu 1.0 Build 9. dip socket, resonator.JPG

Instale los dos capacitores ceramicos del ATMEGA y la resistencia pull up del reset.

Partes:

 C14      0.1uF            CAPPTH2
 C13      0.1uF            CAPPTH2                  
 R12      100k             RESISTORPTH1                   

Sanguinololu 1.0 Build A. resistors & filter caps.JPG

Suelde el MOSFET, el capacitor grande, el boton de reset, y el LED de poder. El pin negativo del LED esta en el lado aplanado, y es la pata mas corta. La pata negativa va a la izquierda en la foto que esta inmediatamente abajo.

Partes:

 Q1       RFP30N06LE       MOSFET-NCHANNELPTH2
 Q2       RFP30N06LE       MOSFET-NCHANNELPTH2
 C12      1000uF           CAP_POLPTH4              
 S1       RESET            TAC_SWITCHPTH            
 LED1     POWER            LED3MM 

Sanguinololu 1.0 Build B. reset button, led, big cap, mosfets.JPG

Fuente de Poder ATX

Si esta utilizando el kit que se alimenta con la fuente de poder ATX, instale estos conectores.

Partes:

 ATX1     ATX-4VERTICAL    ATX-4VERTICAL
 HDDPWR   5v/12v           DRIVEPWRVERTICAL                           

Sanguinololu 1.0 Build C. atx connectors.JPG


Infobox info icon.svg.png Nota Importante
Me han llamao la atencion en el IRC (Gracias a Kliment & tonokip) que los 5V entregados por la fuente de poder ATX podrian no ser estables y no ser 5V como uno esperaria. Seía mejor practica en lugar de utilizar un conector de 4 pines de disco duro usar un conector de 4-pines ATX y un regulador de voltaje. el conector de 4-pines ATX proveeria suficiente poder para la tarjeta.

Incluso se podría prescindir del regulador de tensión y alimentar el lado de la lógica de la PCB estrictamente por USB, la parte de potencia por 12V ATX 4-pines.

Regulator de Voltaje & Terminales de Tornillo

Si esta utilizando el kit con regulador de voltaje y terminales de tornillo, instale ahora estas partes, asegurese de la orientacion del 7805. Marque la polaridad (con los signos + y -)del voltaje de alimentacion sobre los terminales utilizando un marcador indeleble. Nota: en las ultimas versiones de esta tarjeta el terminal de tornillos es en angulo recto como se muestra, de modo que los cables se aproximan a la tarjeta horizontalmente tal como lo hace el cable del conector USB.

Partes:

 IC1       LM7805          VREG
 C5       0.33uF           CAPPTH2
 C6       0.1uF            CAPPTH2
 JP23     SCREW            M025MM         

Sanguinololu 1.0 Build D. voltage reg and screw term.JPG

Conectores

Finalmente, suelde los conectores de los motores, sensores de fin de carrera, extrusor y base calefactora. Opcionalmente suelde el conector de 12 V (o fuente de poder), conectores en la parte superior de la tarjeta, y el ISP (Incircuit Serial Programing) de 6 pines (Para programar el ATMEGA)

Sanguinololu 1.0 Build E. connectors & isp.JPG

Para realizar las soldaduras de los conectores pinhead mas rapidamente, usted puede utilizar tiras mas largas, y retirar los pines de las posiciones que no se usan, asi como se puede ver en la siguiente fotografia:

SL11 Toprow.jpg SL11 Endstoprow.jpg

(Tira superior - Izq, Fines de carrera - Der)

Resultando una tarjeta como esta:

SL11 Boardstrip.jpg

Pololus

Cuando usted suelda las tiras de pines en los Pololus, encontrará que es más fácil si coloca las tiras en el lugar apropiado del Sanguinololu. Luego coloca la tarjeta Pololu sobre los pines a soldar. Chequee que la polaridad es correcta - no confíe en la polaridad comparando contra la imagen de este wiki. Asegúrese que los pines 1a, 1b, 2a, & 2b son los mas cercanos al borde de la tarjeta. También puede desconectarlos luego si así lo desea.

Finales de Carrera

Se recomiendan los micro-switch mecánicos como finales de carrera debido a su simplicidad y confiabilidad. Se recomienda que se conecten los terminales común (C) y normalmente abierto (NO) a tierra, y SIG en el Sanguinololu (los dos pines exteriores en el conector del final de carrera). Asegúrese de invertir Endstops_Inverting a verdadero en su firmware.

Si esta utilizando finales de carrera ópticos o sensores de proximidad ( o otro final de carrera que requiera alimentación), usted debe utilizar 5V, 12V o la fuente de alimentación apropiada dependiendo el tipo de dispositivo que esté utilizando. el voltaje de alimentación es seleccionado realizando un pequeño puente de soldadura en un "jumper" de soldadura ubicado en un recuadro en la parte inferior de la tarjeta etiquetado como "Stop Volt". Viendo el texto correctamente orientado, una el pad del centro con el de la izquierda para tener alimentación a 12V o el del centro y la derecha para tener alimentación a 5V. Tenga cuidado de no soldar los tres al mismo tiempo.

Software

Tipicamente, usted necesitara dos piezas de software en su ATMega:

  • Un Bootloader (cargador), el cual existe con el único propósito de permitir la actualización del firmware vía puerto serial (a través de un convertidor USB-Serial en nuestro caso). La mayoría de los distribuidores de partes para Reprap envían los chips ATMega con un bootloader pre instalado. No importa cual firmware usted prefiera, no necesitará reemplazar el bootloader mientras funcione bien.
  • Un Firmware, este es el software que corre el microcontrolador, el cual ejecuta todas las tareas de control (pulsos a los motores, señal PWM que alimenta la potencia del hotbead y el hotend), medidas analogicas(temperatura) y digitales (fines de carrera) para hacer que su impresora se mueva e imprima de acuerdo al G-code enviado a ella.

La siguiente descripción esta un poco desactualizada hoy dia, aplica al ATMega 644P y otros IDEs mas antiguos únicamente. Para instrucciones mas recientes vea Gen7 Arduino IDE Support's Installation y Gen7 Arduino IDE Support's bootloader upload instructions. Esto te mostrara como manipular el ATMega 644, ATMega644P y ATMega1284P también y como hacer para utilizar los IDEs de Arduino mas recientes. El paquete de soporte Gen7 de Arduino funciona bien en un Sanguinololu.

Bootloader

Si se quiere tener la posibilidad de ir subiendo versiones de un firmware, sin un programador a nuestra placa Sanguinololu necesitamos grabar un pequeño programa bootloader. Este un pequeño programa que irá alojado en la memoria de nuestro chip ATMega y se ejecutará invocándolo de forma especial, una ves corriendo se podrán descargar los sketches mediante el USB, sin falta de un programador y se reemplazara la versión anterior existente en la memoria del chip.

Existen cuatro maneras para grabar nuestro Sanguinololu... Pero personalmente me parecen las más fáciles mediante un programador o si ya tienes un arduino usarlo como programador.

Grabando el bootloader con:

  • Arduino como ISP (InCircuit Serial Programmer)
 A parte de esta información en inglés también se encuentra explicado en mi blog la forma de hacerlo mediante un arduino como ISP ==> Blog
  • USBasp se debe tener cuidado porque existen dos versiones de USBAsp y los pinados de los conectores ISP son distintos.

Firmware

Necesitara descargar un firmware RepRap en su Sanguinololu una vez el Bootloader a sido grabado. Previo a la descarga en su Sanguinololu debera configurar el firmware acorde a su configuracion de impresora, ej. Si los termistores son de 100k o de 30k, si tiene el accesorio para lusar SD cards, etc y compilarlo sin errores. Puedes hacer esto utilizando un cable USB y la IDE de Arduino (v0022, 1.0 tiene problemas con la libreria de Arduino que viene con extension de Sanguino). Si conoce firmwares adicionales a los listados a continuacion, sientase en libertad de adicionalos a la lista.

Firmwares Compatibles

Solución De Problemas

stk500_getsync

Arduino puede devolver el siguiente error al intentar cargar el firmware:

avrdude: stk500_getsync():not in sync: resp=0x00 
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51
Solución

Para resolver el problema, mantenga pulsado el botón de reinicio en la Sanguinololu durante unos 10 segundos. Mientras mantiene presionado el botón, trate de cargar el firmware de nuevo (Archivo -> Cargar en la PCB). Suelte el botón de reinicio tan pronto como el Arduino informe, "tamaño del sketch binario: # # # # # # bytes (de un máximo de 63488 bytes)". El firmware ahora debe ser aceptado.

Otro parametro a revisar es el baudrate en el archivo "Boards.txt" que está en el folder hardware/Sanguino Change atmega644p.upload.speed=57600 to atmega644p.upload.speed=38400 Arduino will not take changes in this folder if it is not restarted.

Solución Definitiva

Una solución fue adicionada en la Rev 1.3a. Con laPCB sin poblar, suelde un header de dos pines en el jumper "Autoreset Enable" etiquetado como AUTO RST el la seigrafia de componentes. Esto esta localizado entre en conecto del motor Z y los pines 8 y 10 del zocalo del ATMEGA644P. Adicionalmente debe configurar en su puerto COM Virtual el parametro del puerto "RTS on close" en ON.

La Solución: Adicinando el jumpler permite que el PC reinicie la tarjeta Sanguino durante la programación y en sesiones interactivas.

Por Defecto: Quitando el jumper permite a la impresora correr en modo autonomo (standalone); esto es el microcontrolador no se reiniciara a la mitad de una impresión cuando lo desconecten o reconecten del PC.

Otro Error stk500

Si tienes este error:

avrdude: stk500_recv(): programmer is not responding 
avrdude: stk500_recv(): programmer is not responding 

El IRC es muy util para obtener informacion sobre como editar el archivo "boards.txt" y cambiar el tipo de programación a 'arduino' en lugar de 'stk500'. Con lo cual obtengo el siguiente mensaje:

avrdude: Can't find programmer id "arduino"

Then I was to check if I had any files in, which I do. After that it spat out:

avrdude: error: no usb support. please compile again with libusb installed.
Solution

As I already had avrdude installed, I just moved the old avrdude binary that came with Arduino 0018 and made a symlink from /usr/bin/ to where the old binary was:

mv ~/tmp/arduino-0018/hardware/tools/avrdude ~/tmp/arduino-0018/hardware/tools/avrdudeOLD
ln -s /usr/bin/avrdude ~/tmp/arduino-0018/hardware/tools/

Final Check

Pololu drivers current limit configuration

Before going further, it's very important to configure the current limit of your Pololu drivers or you'll risk burning out your stepper motors or the Pololus. This should be done with the board powered but before connecting the motors. Always power off before connecting or disconnecting the motors.

First of all, note that there are usually two types of NEMA 17 motors :

  • high voltage stepper motors, that work usually on 12 to 14V, the working current is usually below 1A. These don't work well with microstepping chopper drivers and are not recommended.
  • low voltage stepper motors, that work usually on 2 to 4V, the rated current is usually over 1A.

It is safe to drive low voltage stepper motors at a much higher voltage because the Pololu A4988 has current limit functionality. The higher the voltage applied compared to the motor's rated one, the faster your stepper motor can run. The A4988 chip can only provide up to 2A per coil so choose your stepper motor accordingly.

A good starting point for the current is $ 0.7 $ times its rated current. This is typically ~1A with the recommended 1.68A NEMA17 motors and that is about the maximum current the Pololu can deliver without a heatsink or a fan. Note that the rated current of a motor is usually that which gives an 80C temperature rise, which is too hot for plastic brackets, hence the reason to under-run them.

The recommended way to set Pololu drivers current limit is to measure the voltage at the Vref test point. The A4988 datasheet gives all the required information to configure the current limit of a Pololu driver :

The peak current $ I = \dfrac{V_{REF}}{8 \times R_S} $

where $ R_S $ is the resistance of the sense resistor ($ \Omega $) and $ V_{REF} $ is the input voltage on the REF pin (V).

On the Pololu driver board, the $ R_S $ value is $ 0.05 \Omega $ and the $ V_{REF} $ can be measured on the test point shown below, or the metal wiper of the pot. $ I $ is equal to the recommended current limit for your stepper motor multiplied by $ 0.7 $. Thus you can determine the $ V_{REF} $ you'll need with:

$ V_{REF} = I \times 8 \times 0.05 = 0.4 \times I $

For example if your motor is rated 2.8V at 1.68A, you adjust the pot so that you measure the following value for $ V_{REF} $ :

$ V_{REF} = 1.68A \times 0.7 \times 0.4 = 0.47 V $

Pololu.jpg

Note that the StepStick pin compatible driver has 0.2$ \Omega $ sense resistors and the current is limited to a little over 1A with $ V_{REF} $ = 1.7V.

Symptoms of not enough current are skipping steps and poor microstepping linearity. Too much current will cause the motor or the driver to overheat. When the driver overheats it shutsdown for a few seconds and then restarts again when it cools. This makes the motor twitch when it is stationary and pause during motion.

See also Pololu's presentation on calibrating/testing the driver boards: [2]

Wiring shematics

Sanguinololu12.svg


Powering Sanguinololu

Your chosen power solution will determine what kind of power requirements will be in play:

Screw terminal: Connect your power supply with at least 7V and at most 30V to the screw terminal. The negative lead is the one closest to the screw hole.

ATX Power Connector: Connect the ATX-4 pin connector. The ATX power supply must also be rigged to turn on when plugged in & the switch is on. This is done by shorting the !PWR_ENABLE pin to ground on the main ATX-20 pin connector. This is usually the green wire shorted to a black wire. I use a staple crammed in the socket, and use the switch on the power supply case to control system power.

Sanguinololu Firmware

You can program the ATmega644P with Sanguino's bootloader for easy firmware loading. Another working package is Gen7 Arduino IDE Support, which supports the ATmega1284P and Arduino IDE 1.0 or later, too. On how to upload a bootloader, see Gen7 Arduino IDE Support's bootloader upload instructions.

Sprinter is the recommended firmware for Sanguinololu. Teacup, Marlin and Repetier are known to work as well.

In Sprinter, check the Configuration.h to ensure that Sanguinololu is selected as your board: Board 62 for Sanguinololu v1.2 and newer, board 6 for v1.1 and older.


Pin Assignments v1.2

                           +---vv---+
    e-dir      (D 0) PB0  1|        |40  PA0 (AI 0 / D31) ext
   e-step      (D 1) PB1  2|        |39  PA1 (AI 1 / D30) ext
    z-dir INT2 (D 2) PB2  3|        |38  PA2 (AI 2 / D29) ext
   z-step  PWM (D 3) PB3  4|        |37  PA3 (AI 3 / D28) ext
      ext  PWM (D 4) PB4  5|        |36  PA4 (AI 4 / D27) ext
      spi MOSI (D 5) PB5  6|        |35  PA5 (AI 5 / D26) !step-enable-z
      spi MISO (D 6) PB6  7|        |34  PA6 (AI 6 / D25) b-therm
      spi  SCK (D 7) PB7  8|        |33  PA7 (AI 7 / D24) e-therm
                     RST  9|        |32  AREF
                     VCC 10|        |31  GND 
                     GND 11|        |30  AVCC
                   XTAL2 12|        |29  PC7 (D 23)       y-dir
                   XTAL1 13|        |28  PC6 (D 22)       y-setp
    ftdi  RX0 (D 8)  PD0 14|        |27  PC5 (D 21) TDI   x-dir
    ftdi  TX0 (D 9)  PD1 15|        |26  PC4 (D 20) TDO   z-stop
     ext  RX1 (D 10) PD2 16|        |25  PC3 (D 19) TMS   y-stop
     ext  TX1 (D 11) PD3 17|        |24  PC2 (D 18) TCK   x-stop
 !hotbed  PWM (D 12) PD4 18|        |23  PC1 (D 17) SDA   ext
 !hotend  PWM (D 13) PD5 19|        |22  PC0 (D 16) SCL   ext
!step-en  PWM (D 14) PD6 20|        |21  PD7 (D 15) PWM   x-step
                           +--------+

Or in tabular format

 !step-enable-z     D26       PA5
 !step-enable-x-y-e D14       PD6
 e-dir              D0        PB0
 e-step             D1        PB1
 z-dir              D2        PB2
 z-step             D3        PB3
 y-dir              D23       PC7 
 y-step             D22       PC6 
 x-dir              D21       PC5 
 x-step             D15       PD7
 !hotbed            D12       PD4
 !hotend            D13       PD5
 b-therm            D25  AI6  PA6
 e-therm            D24  AI7  PA7
 x-stop             D18       PC2 
 y-stop             D19       PC3 
 z-stop             D20       PC4

Pin Assignments v0.7 - 1.1

 step-enable-x-y-e-z D4        PB4
 e-dir               D0        PB0
 e-step              D1        PB1
 z-dir               D2        PB2
 z-step              D3        PB3
 y-dir               D23       PC7 
 y-step              D22       PC6 
 x-dir               D21       PC5 
 x-step              D15       PD7
 hotend              D13       PD5
 hotbed              D14       PD6
 b-therm             D25  AI6  PA6
 e-therm             D24  AI7  PA7
 x-stop              D18       PC2 
 y-stop              D19       PC3 
 z-stop              D20       PC4

Microstepping Jumper Settings

Sanguinololu Jumpers.JPG

SD / Bluetooth Adapters

At least two adapters exist for the Sanguinololu using the IO and ISP headers.

Revision 0.5 / 0.6 Info

See Sanguinololu_0.6 for assembly instructions, board files, etc.


Revision History

Rev 1.3a Version 1.3a has no firmware changes - the pin assignments remain the same and your 1.2+ compatible firmware should work here fine. The hardware changes: Removed the Molex HDD connector in favor of using the voltage regulator - some power supplies give a dirty 5V signal when there is no motherboard load, so its better to just use the power supply's ATX+4 connector and the 5V voltage regulator. Added a jumper to enable/disable USB auto-reset. This way if you're printing from an SD card using SDSL you can disconnect your USB and reconnect it without interrupting a print. R7 and R8 are now 100k pull-up resistors that are on the stepper-enable lines. This ensures the stepper motors stay disabled and don't move while uploading new firmware, rebooting, etc. The current limiting resistors for the FTDI are gone. There is an extra Z-motor header for Prusa Mendel.

Rev 1.3 This is a custom modification for WebSpider - it spaces the hottip and hotbed connectors better. No firmware changes.

Rev 1.2 Rev 1.2 Updated June 15, 2011

While Version 1.1 is completely functional, there were some requests from users for pin assignment changes. Version 1.2 implements these firmware changes. --Z-Enable is now on its own pin --PWM devices have been moved to OC0 and OC1 freeing up OC2 for internal timing --The expansion port is now a pin shorter - the Z-Enable feature ate an analog pin here.


Version 1.2 still includes the footprint for the Molex HDD connector, though you may be wise to disregard it and always install the 5V regulator as not all ATX power supplies' 5v lines are stable and clean.

NOTE: On the bottom side of the board, the footprint for the Molex HDD connector is backwards (beveled edges facing towards the edge of the board). Take care if soldering from the bottom side of the board to orient the HDD connector with the beveled edges facing towards the center of the board, as shown on the top side silkscreen. This may be the cause of some claims of bad 5V regulation on some power supplies, especially when 12V is connected instead!


Rev 1.1 Corrected silkscreen mistake. Added open hardware logo

Rev 1.0 Release revision, tighter DRC rules, and updated screw terminal footprint. Looks like there is one tiny mistake on the 1.0 board: the leftmost 5v pin on the expansion header is actually 12v(or supply voltage).

Revision 1.0 is here with only a few tiny changes from 0.7 - the screw terminal pads have been rotated so that they face the closest edge, and the design rules have become more strict to be compliant with more board fab shops. I've included gerber files in git so that you can easily have your own boards fabbed.

Rev 0.7 Added more pins to the expansion header, made I2C and SPI available for use. Combined all stepper motor enable nets into one pin.

Added footprints for voltage regulator for those wanting to use laptop power brick, etc. The vreg component footprints are hidden under the ATX power supply for space saving and to prevent both from being in use.

Enabled USB bus power for logic side.

Connected the 5v pin on the USB2TTL header so that either a: ftdi cable can power the board, or b: The board can power a bluetooth serial module (bluesmirf).


See Sanguinololu_0.6 for older revision history