Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



sábado, 29 de noviembre de 2014

Tratamiento de excepciones: Try, Error, Finally y Catch


Tratamiento de excepciones: 

Try, Error, Finally y Catch

 El tema de excepciones tiene mucha "miga"... se le puede sacar mucho partido, aunque hay que saberlas manejar.

Como hemos vistos muchas veces el TRY resulta muy peligroso ya que "oculta" los errores, y casi siempre, deberia de estar acompañado por un "IF ERROR THEN ...." para tratar el error "ocultadado", (si ha ocurrido)

Os dejo aqui un video tutorial y ejemplo del uso de excepciones, con gambas3 aunque es aplicable a otros lenguajes Python, Java, etc.




Descarga del código de ejemplo:  codigo fuente
 
 
Public Sub ButtonAbrirArchivo_Click()

Dim b As Integer
Dim a As Integer

Try File.Load(TextBoxRutaNombre.text)
'aqui se pueden producir un error!!!
If Error Then
Message.Info("no existe archivo o carpeta")
Endif

Try a = 209 / 0 'otro error!!!
If Error Then
Message.Info("has dividido entre cero")
Endif

b = 334 / 0

Finally
Print "siempre se ejecuta esta linea"

Catch
Print "esta linea se ejecuta si se produce un error, informe del error:"
Print Error.Code
Print Error.Text
Print Error.Where

End

 Resumiendo:
Try: oculta el error que se produzca en la instruccion y hace que no se ejecute el Catch (del error que ha ocultado Try)

if error then :
nos ayuda a tratar o informar sobre el error producido, de la linea anterior (try)

Finally:
la lineas que vengan a continuación de esta linea se ejecutan, aunque se haya producido un error.

Catch: si se produce  un error,(y este no esta ocultado por "try"), ejecuta las lineas de codigo que venga a continuacion del catch

viernes, 28 de noviembre de 2014

Programa que convierte tu pc en un marcador de tenis de mesa.

Programa que convierte tu pc 

en un marcador 

de tenis de mesa.




Si sois aficionados al tenis de mesa (o ping-pong), seguro  que os gusta el programa que ha realizado V3ctor, del foro de gambas-es.org. El programa convierte el monitor de tu pc en un marcador en el cual podemos llevar la evolución de la puntuación de los partidos de tenis de mesa. Es ideal para usar en vuestras competiciones, ya sean en colegios, entre aficionados amateurs o para profesionales, ya que tiene integrado las reglas del juego.
Configurando datos de los jugadores un partido.
Configurando árbitros en un campeonato

Video del uso del programa:

Lo podeis descargar en http://sourceforge.net/projects/tanteadortenisdemesa/

La página web del proyecto es:  http://tanteador-tenis-de-mesa.blogspot.com.es

¡¡¡¡ Gracias V3ctor por hacer esta aplicación y compartirla con la comunidad !!!

Saludos

Jsbsan

Nota:
Funciona con gambas3.6.1, hay que instalar el ppa gambas-team/gambas3
$sudo add-apt-repository ppa:gambas-team/gambas3
$sudo apt-get update
$sudo apt-get install gambas3

martes, 25 de noviembre de 2014

Happy Bay : Emulador para Android juegos clasicos retrojuegos

Happy Bay : 

Emulador para Android 

juegos clásicos

retrojuegos




¿jugar a los juegos clásicos que jugaste en tu niñez? Pues aqui tienes (ver nota 1) .este aplicación gratuita que es un emulador para tu móvil smartphone Android. Con esta aplicación podrás jugar  a un motón de juegos antiguos
( mirate este enlace donde puedes descargarlos los juegos)






Manual de uso:
1)  Descarga el apk (ver nota 1)
2) Una vez descargada el .apk, lo instalas, y se creará un icono como este:


3) Inicias la aplicación.
 La pantalla de presentación, mientras consulta los juegos disponibles,  es esta:



4)  Pasamos a esta pantalla, donde podemos:
-ver los juegos que hay
-ver los juegos que tienes instalados
-elegir los juegos por categorias

Lista de Juegos  "TOP"
Algunas categorias de los juegos disponibles para la descarga

5) Descargar juegos:
Con un simple click podemos elegir el juego y, ver datos de el (tamaño, capturas de pantalla, etc)




Luego pulsamos en "Download" y descargamos el juego, que se nos aparecerá en la lista de "Instalados" (installed)


jugando a METAL SLUG


Nota:
1. Enlace de descarga de la aplicación
Dirección de descarga de este app:




Recuerda tu usuario y contraseña !!!! La solución definitiva.


Recuerda tu usuario y contraseña !!!! La solución definitiva.

Los del servicio de informática de una importante empresa, están cansados de que todas las mañanas un usuario les llame por problemas en el acceso a su cuenta, ya que  tiene que acordarse de introducir su usuario y contraseña, y no hay manera de que se la aprenda, (no saben si es que tiene el síndrome de "memoria de pez").
El problema ha sido pasado al departamento de I+D, el cual tras horas de investigación, han desarrollado al fin una solución:


Para usuarios de Windows



Para usuarios de Mac




Para usuarios Linux

Estas pegatinas, han sido enviada a todos lo usuarios para que se lo pongan en lugar visible en su monitor.... se acabó el problema.

Saludos

domingo, 23 de noviembre de 2014

Constructor de Diplomas: Actualizacion 0.0.76

Constructor de Diplomas: 

Actualización 0.0.76



Os dejo aqui un nuevo video donde explico como se actualiza el programa Constructor de Diplomas, esta vez se le ha corregido un bug, y se le añadido la posibilidad de aceptar nombres con espacios.





Hundir la Flota: Esquema de la Inteligencia Artificial

Hundir la Flota: Esquema de la Inteligencia Artificial




A continuación  os dejo un esquema para usar en la programación de la inteligencia artificial del juego Hundir la Flota. Como vereis se puede programar como un autómata que dependiendo de varias variables, eligirá donde disparar, para conseguir tocar y hundir  el barco enemigo, todo ello usando la ordenes condicionales If....Then....




Enlace de descarga del archivo .svg (abrir con Inkscape):


Saludos
Para saber más de este juego:

sábado, 22 de noviembre de 2014

PintaScreen: Novedades version 0.0.48

PintaScreen: Novedades versión 0.0.48


Con el intercambio de ideas que he tenido con varios usuarios, he añadido varias mejoras en esta versión. Os comento:


Mejoras en el Interfaz:
->  Mejora de borrado de elementos: (solicitada por Jose Palmer)
Ahora podemos elegir que elementos  queremos borrar (lineas, textos, subrayados, rectángulos, etc)
Para ello aparece un icono de papelera junto a cada elemento, y si pulsamos en él, borramos el elemento.
 Nota: Antes solo podíamos borrar por orden de creación a partir del último creado o borrarlos todos.


-> Visor cámara web: (solicitada por Fernando Bautista)
Se añade una pequeña ventana, para mostrar la captura de la cámara web, mientras usamos el programa.



-> Reinicio de la herramienta numerador, cuando se cambie de color, se puede configurar. (solicitada por v3ctor)


-> Movilidad de objetos:
Podemos mover todos los elementos, incluido las lineas, subrayados, lineas a mano alzada.
Antes solo eran los textos, rectángulos, elipses e  iconos.

-> Inserción de imágenes:
Ademas de añadir iconos (chinchetas, banderas, etc), ahora podemos añadir imágenes eligiéndolas del disco duro.

Mejoras internas:
-> Ya no usa el comando de la terminal scrot para tomar las capturas de pantallas. Ahora se hace con instrucciones propias de gambas3, con lo cual no hace falta tener instalado scrot. (una dependencia menos ;) )

-> Se ha añadido la dependencia a la libreria librsvg2-bin ya que es necesaria para cambiar el color de la punta de la flecha.



Enlace de Descarga:
(código fuente y instalador .deb)

Saludos

Jsbsan

jueves, 20 de noviembre de 2014

Añadir eventos y propiedades a un control ValueBox mediante su contenedor


Añadir eventos y propiedades a un control ValueBox mediante su contenedor

El amigo Vuott, del foro http://www.gambas-es.org y http://www.gambas-it.org,

nos ha enseñado como añadir un evento y una propiedad de un control como el ValueBox, que no la tienen, usando la propiedad Children, que hace referencia a la clase que lo contiene, un textbox, en este caso:

añadir evento
Public Sub Form_Open()

' Verifichiamo l'oggetto figlio del "ValueBox":
  Print ValueBox1.Children[0]

  Object.Attach(ValueBox1.Children[0], Me, "evento")

End


Public Sub evento_Change()

  Print "Sollevato l'evento _Change() ! "

End
 

añadir propiedad:
 
Public Sub Form_Open()

' Verifichiamo l'oggetto figlio del "ValueBox":
  Print ValueBox1.Children[0]

' Impostiamo (riattivandola) la proprietà ".Alignment" dell'oggetto figlio (cioè il "TextBox") del "ValuBox", e centriamo il valore numerico:
  Object.SetProperty(ValueBox1.Children[0], "alignment", Align.Center)

End



Fuente original:
http://www.gambas-it.org/wiki/index.php?title=Utilizzare_l%27evento_Change%28%29_in_un_ValueBox
http://www.gambas-it.org/wiki/index.php?title=Modificare_l%27allineamento_del_valore_numerico_in_un_ValueBox


miércoles, 19 de noviembre de 2014

TRUCO: Crear un programa para rellenar un impreso


TRUCO: 

Crear un programa 

para rellenar un impreso

Os dejo un pequeño tutorial, donde explico como crear un programa para rellenar impresos, usando herramientas de softwarelibre (inkscape y gambas3):

Pasos a seguir:
1º Crear un archivo tipo .svg (con inkscape)
2º Poner de fondo la imagen del formulario/impreso escaneado
3º Poner etiquetas de texto, donde quiero que aparezcan los datos
     Por ejemplo, las etiquetas de texto pueden contener el texto:"DatoNombre", "DatoApellido", etc
4º Luego guardo el archivo en el directorio de Datos de un  proyecto de gambas3
5º El programa, cada vez que va a hacer un impreso relleando lo que hace es copiar el archivo .svg al directorio temporal
6º Leo el archivo .svg, con la orden: contenido=file.load("/tmp/plantilla.svg")
7º Empiezo a hacer los reemplazos: (GAMBAS3) contenido=Replace(contenido,"DatoNombre", dato)
8º Una vez que hago todos los reemplazos, guardo el archivo
9º Y lo convierto en .png, para imprimirlo (ese paso es opcional, puedo imprimir directamente como .svg)
A continuación podéis ver un vídeo explicando el proceso,  he añadido la forma de cambiar el tamaño y el tipo de letra, para ajustarse mejor al impreso:

El código del ejemplo que habeis visto en el video:
Public Sub ButtonRellenar_Click()

Dim contenido As String

contenido = File.Load("plantilla.svg")

contenido = Replace(contenido, "DatoNif", TextBoxNIf.text)
contenido = Replace(contenido, "DatoNombre", TextBoxNombre.text)
contenido = Replace(contenido, "DatoMunicipio", TextBoxMunicipio.text)
contenido = Replace(contenido, "DatoProvincia", TextBoxProvincia.text)

File.Save("/tmp/rellenado.svg", contenido)

Message.Info("Archivo svg rellando creado en /tmp/rellenado.svg")


End

Os podeis descargar el Código Fuente en: alojado en google drive

martes, 18 de noviembre de 2014

PintaScreen: Algo más que un capturador de pantalla


PintaScreen: 

Algo más que un capturador de pantalla



PintaScreen es algo más que un capturador de pantalla: nos permite añadirle a la captura de pantalla,  iconos, dibujar lineas a mano alzada, rectas, flechas, texto, subrayar zonas, sombrear zonas de la imagen, capturar zonas de la pantalla. Es un programa realizado en gambas3 por Julio Sánchez (JsbSan) y Antonio Sánchez ( Minino Picaros 2014), especialmente creado para la distribución Minino Picaros 2014, aunque también funciona en el resto de distribuciones de gnu/linux

En este video podéis ver una explicación de como usarlo:



Enlace de descarga: descarga del código fuente y del paquete de instalacion .deb

Necesitais para que funcione gambas3.5.4 o superior versión.
(para más información Curso de Gambas3: Como instarlo con PPA)


Además es un programa que viene instalado por defecto en la distribución Minino Picaros 2014 (http://minino.galpon.org/es/descargas)  que se puede ejecutar en modo live-DVD en vuestro ordenador o instalarla.




Nota:
Si teneis algún problema de instalación podeis comentarlo en el foro gambas-es.org o en http://generadorcarnets.blogspot.com.es/p/foro.html

¿Como ver el código fuente de antiguas versiones de gambas3?



¿Como ver el código fuente de antiguas versiones de gambas3?

No es algo frecuente, pero algunas veces, nos interesa ver como funcionan nuestros programas en versiones antiguas de gambas3. ¿donde encontrarlas? Pues como el proyecto esta alojado en sourceforge y como usa svn (sistema para llevar el control de versiones), lo podemos ver en esta dirección:




Luego, simplemente, tendremos que descargando y para instalarlo compilar el codigo fuente.

$ cd directorio_descomprimido
$ ./reconf-all
$ ./configure -C
$ make
$ sudo make install
Password: <escribe tu contraseña>
Nota:
Tendreis que quitar totalmente vuestra última version de gambas3 instalada (si tuvierais alguna) y quitar también los PPA (si tuvierais alguno)




jueves, 13 de noviembre de 2014

Documental: La Edad de Oro del Software español

Documental: La Edad de Oro del Software español

Un excelente documental que habla de la época de los juegos de 8  bits, y de cuando en España era una potencia en la producción de Software.

¿ Te suenan estos nombres: Made in Spain,  Zigurat, Opera Soft, Dinamic, Topo,..... ?
¿ Te suenan estos ordenadores: Spectrum, MSX, CPC, Comodore ?
¿Te suenan las revistas: Microhobby,  MicroMania, ..?

Este es tu documental:




Para más información:
http://es.wikipedia.org/wiki/Edad_de_oro_del_software_espa%C3%B1ol

Introducción del libro "Ocho Quilates, una historia de la edad de oro del software español" (http://www.ochoquilates.com/collections/productos)
"Puede que los ochenta te recuerde a los años del bocadillo de Nocilla al salir de clase, Naranjito, El Equipo A y Mecano. Pero también fueron el momento histórico en el que el videojuego comenzó a convertirse en el monstruo que es ahora gracias a los microordenadores de 8 bits: el ZX Spectrum, el Amstrad CPC, el MSX, el Commodore 64.
Alrededor de este tinglado tecnológico, un puñado de jóvenes imberbes (y alguno con unos cuantos años de más) levantaron de la nada una industria inexistente hasta ese momento. Nombres como Dinamic, ERBE, Made in Spain, Opera o Topo se ganaron a pulso un lugar en el corazón de una generación entera de españoles que descubrió que el ordenador servía para algo más que para hacer los deberes de clase.
Ocho Quilates pretende ser una crónica de esos años contada por boca de sus protagonistas. Es una historia de pioneros, de primeras veces, de sueños y de decepciones. En resumidas cuentas, es otro relato más en el que sus protagonistas se abren paso en el mundo adulto a la vez que montan sus negocios desde cero sin poseer la mayoría de edad.
En definitiva, la historia de una generación brillante que marcó para siempre nuestra cultura.
Si todavía se te erizan los pelos cuando oyes hablar de La Abadía del Crimen, Navy Moves, Mad Mix Game, Livingstone, Supongo, La Aventura Original, Abu Simbel Profanation, Silent Shadow, Sir Fred, La Pulga, Mot, Lorna, El Misterio del Nilo, After the War, Emilio Butragueño o Fernando Martín. Si aún se te escapa una lagrimilla cuando alguien te habla de Afteroids, Army Moves, Fred, Goody, Desperado, Narco Police, Risky Woods, Rocky, Perico Delgado, Humphrey o París - Dakar, bienvenido, porque estás en casa."


miércoles, 12 de noviembre de 2014

Gestión de Eventos Del Ratón: pulsar botón (izquierdo, derecho central), rueda, coordenadas, cambio del icono del mouse

Gestión de Eventos Del Ratón: 

Pulsar botón (izquierdo, derecho central), 

Rueda, coordenadas y cambio del icono del mouse



Este es un pequeño ejemplo de como leer los distintos eventos del ratón, y mostrar información del ratón por pantalla. Incluso podemos cambiar el icono del mouse, por uno personalizado :)


Código del Ejemplo:
' gambas class file

Public Sub Form_Open()

Me.Center

End

Public Sub PictureBox1_MouseMove()

LabelCoord.text = "X: " & Str$(mouse.x) & " Y: " & Str$(Mouse.y)

End

Public Sub PictureBox1_MouseWheel()

If Mouse.Delta > 0 Then
LabelRueda.text = "Rueda del raton, moviendola, hacia adelante"
Else
LabelRueda.text = "Rueda del raton, moviendola, hacia atras"
Endif

End

Public Sub PictureBox1_Leave()

LabelCoord.text = "X: Y:"
LabelRueda.text = ""
LabelRatonInfo.text = ""
Me.mouse = Mouse.Default

End

Public Sub PictureBox1_MouseDown()

LabelRatonInfo.text = "Boton apretado"

If Mouse.Middle Then
LabelRatonInfo.text = "Boton apretado, central"
Endif
If Mouse.Right Then
LabelRatonInfo.text = "Boton apretado, derecho"
Endif

If Mouse.Left Then
LabelRatonInfo.text = "Boton apretado, izquierdo"
Endif

End

Public Sub PictureBox1_MouseUp()

LabelRatonInfo.text = "Boton soltado"

End

Public Sub Button1_Click()

Me.Cursor = New Cursor(Picture.Load("1.png"))
Me.Mouse = Mouse.Custom

End

Public Sub Button2_Click()

Me.Cursor = New Cursor(Picture.Load("2.png"))
Me.Mouse = Mouse.Custom

End

Public Sub Button3_Click()

Me.Cursor = New Cursor(Picture.Load("3.png"))
Me.Mouse = Mouse.Custom

End

Public Sub Button4_Click()

Me.Cursor = New Cursor(Picture.Load("4.png"))
Me.Mouse = Mouse.Custom

End

Public Sub Button5_Click()

Me.Cursor = New Cursor(Picture.Load("5.png"))
Me.Mouse = Mouse.Custom

End

Código para descargar: enlace a drive google

Saludos


lunes, 10 de noviembre de 2014

Manuales de Pablo Mileti: actualizacion manual sqlite3 de Gambas3



El amigo Pablo Mileti ( http://www.mileti.com.ar/ ), acaba de actualizar su manual de sqlite3 en gambas3, aqui os dejo su enlace de descarga:

http://www.mileti.com.ar/apuntes/Base%20de%20datos%20SQLite%20desde%20Gambas3.pdf

Podeis encontrar, además de los de Gambas,  más manuales suyos: C++, Visual Basic, Access, SQL, Pilas Engine, J2ME, Puerto Paralelo en: http://www.mileti.com.ar/apuntes.html


Saludos

jueves, 6 de noviembre de 2014

miriada X: Ejercicio P2P evaluar y ser evaluado por tus compañeros del curso


¿que es un curso MOOC?
Significa Cursos Online Masivos y Abiertos (ver http://mooc.es/que-es-un-mooc/ ),  son cursos donde se pueden apuntar miles de alumnos y hacerlos via online por internet, obteniendo un diploma acreditativo o/y certificaciones de haber superado el curso.

Este tipo de cursos para aprobarlos hay que hacer unos ejercicios obligatorios, el problema es que al ser "masivos", el número de alumnos normalmente es muy superior al número de profesores, siendo imposible que los profesores corrijan los ejercicios de todos los alumnos ¿que se hace entonces? ¿como se evalúan los ejercicios?

¿que es un ejercicio p2p?
Este sistema lo que significa que son los alumnos los que corrigen los ejercicios de sus compañeros. Normalmente son 3 ejercicios los que tienes que evaluar y tu ejercicio será evaluado por otros 3 compañeros. A favor de este sistema es que implica que el alumno vea como los compañeros han resuelto el mismo problema que el tuvo que resolver el antes, y así pueda aprender tanto de los errores suyos como de los compañeros, incluso tenga que explicarle al compañero (o le explicarán a él) los errores cometidos.

¿como se pone en práctica este sistema de p2p? 
Os lo explico en la plataforma Miriada X.
1) En el ejercicio obligatorio siempre hay una explicación detallada de lo que hay que hacer:
Ejemplo:

Ejemplo de explicación de la tarea de un ejercicio p2p

2) Te explican cuales son las instrucciones para evaluar por pares:


3) Proceso:
3.1) Entrega de la tarea
Adjunta tu archivo, comentarios, dirección url de descarga donde esta tu ejercicio alojado:


2) Recibes 3 ejercicios para evaluar.
A los pocos días, de que hayas enviado tu ejercicio,  recibes los 3 ejercicios de compañeros para que los corrijas. 
Aquí es donde puedes aprender mucho, ya que comparas como lo han hecho los compañeros con tu ejercicio. 
  • Si hubo alguna parte que no supiste hacer y tus compañeros lo hicieron, aprendes !!!
  • Si hiciste algo que tus compañeros no supieron hacer, se lo tienes que explicar, con lo cual aprendes!!!

3) Valoraciones recibidas:
A los pocos días, recibes tus valoraciones, con los comentarios de tus compañeros.


Es un proceso que si se hacen bien y con interés por parte de los alumnos hace muy aprovechable el curso y aprendes mucho. Además siempre tienes la posibilidad de usar los foros de los cursos donde hablar con otros compañeros y comentar temas concretos del tema o ejercicios.



Páginas donde se hacen cursos MOOC:

miércoles, 5 de noviembre de 2014

¿una Impresora 3D por 60 $ ( 48 euros)? Pues si...EWaste 60$ 3DPrinter


Mirando la página web de http://www.instructables.com/  me he encontrado con este interesante proyecto de mikelllc sobre como crear una impresora 3D económica usando componentes electrónicos reciclados. http://www.instructables.com/id/eWaste-60-3DPrinter/?ALLSTEPS

Os hago la traducción del articulo:
Este proyecto describe el diseño de una impresora 3D muy bajo presupuesto que se construye principalmente de componentes electrónicos reciclados. El resultado es una impresora de formato pequeño por menos de 100 $. 
En primer lugar, nos enteramos de cómo funciona un sistema genérico CNC (por el montaje y la calibración de los rodamientos, guías y roscas) y luego enseñar a la máquina para responder a las instrucciones del G-código. Después de eso, le añadimos una pequeña extrusora de plástico y dar una visión general sobre la calibración de extrusión de plástico, ajuste de potencia del conductor y otras pocas operaciones que traerá la impresora para funcionar. Siguiendo estas instrucciones usted conseguirá  una pequeña muestra en 3D de la impresora que se construye con alrededor de un 80% de componentes reciclados, lo que le da un gran potencial y ayuda a reducir el costo significativamente. 
Por un lado se obtiene una introducción a la construcción de maquinaria y la fabricación digital y en el otro lado se obtiene una pequeña impresora 3D construida con piezas electrónicas reutilizados. Esto nos debe ayudar a ser más conscientes acerca de los grandes problemas relacionados con la generación de los desechos electrónicos.


Paso 1: Ejes X, Y, Z


Componentes necesarios:
2 unidades de CD / DVD estándar de un PC antiguo.
1 unidad de disco Floppy.
Podemos obtener estos componentes sin costo en un "Punto Limpio" (http://www.ocu.org/consumo-familia/nc/calculadora/calculadora-puntos-limpios) o  estación de residuos en nuestra ciudad. Debemos asegurarnos de que los motores que obtenemos de las unidades de disco flexibles son motores paso a paso y no motores de corriente continua.
Paso 2: Preparando los motores:



componentes:
  • 3 motores paso a paso de las unidades de CD / DVD 
  • 1 NEMA 17 motor paso a paso que tendremos que comprar. Utilizamos este tipo de motor de la extrusora de plástico, donde se necesita más potencia para impulsar el filamento de plástico. 
  •  Electrónica CNC: rampas o RepRap Gen6 / 7. Es importante que podemos utilizar el Sprinter / Marlin firmware abierto. En el presente ejemplo usamos RepRap Gen6 electrónica, pero usted puede elegir de acuerdo con el precio y la disponibilidad. 
  • Fuente de alimentación de PC. 

Cables, conectores hembra, termorretráctiles tubo. 

Lo primero que queremos hacer una vez que tengamos los motores paso a paso mencionados es soldar los cables a ellos. En este caso sus 4 cables para lo cual deben mantener la secuencia de color correspondiente (descrito en la hoja de datos).
Hoja de datos para motores paso a paso de CD / DVD:
          http://robocup.idi.ntnu.no/wiki/images/c/c6/PL15S ... 
Hoja de datos de la NEMA 17 motor paso a paso:     
        http: //www.pbclinear.com/Download/DataSheet/Stepp ...


Paso 3: Preparando la fuente de alimentación:


El siguiente paso es preparar la fuente de alimentación con el fin de utilizarlo para nuestro proyecto. En primer lugar nos conectamos los dos cables entre sí (como se indica en la imagen) para permitir la directa puesta en marcha con el interruptor de la alimentación. Después de que seleccionamos uno amarillo (12V) y un cable negro (GND) para alimentar el controlador.

Paso 4: Ide Arduino


Ahora vamos a comprobar los motores. Para ello tenemos que descargar el Arduino IDE (un entorno informático físico) que se pueden encontrar en: http://arduino.cc/en/Main/Software. 
Tenemos que descargar e instalar la versión Arduino 23 de la misma.
Después de que queremos descargar el firmware. Hemos elegido Marlin que ya está configurado y se puede descargar en:
Marlin: https: //dl.dropboxusercontent.com/u/67249288/e-Wa ... 
Una vez que hemos instalado Arduino, vamos a conectar nuestro ordenador con las rampas CNC-Controller / Sanguino / Gen6-7 con un cable USB, vamos a elegir el puerto serie correspondiente en herramientas IDE / puerto serie de Arduino y vamos a seleccionar el tipo de controlador bajo herramientas / tabla (rampas (Arduino Mega 2560), Sanguinololu / Gen6 (Sanguino W / ATmega644P - Sanguino tiene que ser instalado en el interior de Arduino)).
Parámetros principal explicación, todos los parámetros cofiguration están en el archivo configuration.h:
En el entorno Arduino abriremos el firmware que ya hemos descargado Archivo / Sketchbook / Marlin y vamos a ver algunos de los parámetros de configuración antes de que pongamos el firmware de nuestro controlador.
1) #define MADRE 3 valor, de acuerdo con el hardware real que estamos utilizando (Rampas 1.3 o 1.4 = 33, Gen6 = 5, ...).
2) Termistor valor 7, RepRappro htoend utiliza Honeywell 100k.
3) PID estos valores hace que nuestro extremo caliente más estable en términos de temperatura.
4) Pasos por unidad, esto es un punto muy importante con el fin de configurar cualquier controler (paso 9)

Paso 5: Software de control de la impresora


Software de control de la impresora: hay diferentes programas libres disponibles que nos permitan interactuar y controlar la impresora (Pronterface, Repetier, ...) que estamos utilizando Host Repetier, que se puede descargar desde http://www.repetier.com/.
http://www.repetier.com/documentation/repetier-host/
Versiones para Windows, Linux, Mac


 Es fácil de instalar y se integra una máquina de cortar. La máquina de cortar es una pieza de software que genera una secuencia de secciones del objeto que queremos imprimir, asocia esas secciones con capas y genera g-código para la máquina. Segmentaciones se pueden configurar a través de parámetros como la altura de la capa, velocidad de impresión, de relleno, y otros, que son importantes para la calidad de impresión.
Configuraciones de máquina de cortar habituales pueden ser encontrados en las siguientes enlaces:
Skeinforge configuración http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge
Configuración Slic3r http://manual.slic3r.org/
En nuestro caso tenemos el perfil configuret Skeinforge para la impresora, que se puede integrar en el software del host reperier.
Enlace perfil Skeinforge: Skeinforge_profile_for_e_waste.zip


Paso 6: Cableado y regulación de la intensidad de corriente
Ahora estamos listos para probar los motores de la impresora. Conecte el ordenador y el controlador de la máquina mediante un cable USB (los motores deben conectarse a sus controladores correspondientes). Ejecute Repetier Host y activar la conexión entre el software y el controlador seleccionando el puerto serie correspondiente. Si la conexión se ha realizado correctamente, usted será capaz de controlar los motores conectados utilizando los controles manuales de la derecha.
A fin de evitar un sobrecalentamiento de los motores durante el uso regular, ahora vamos a regular la intensidad de la corriente que cada motor puede conseguir. Esta es una operación importante con el fin de evitar el sobrecalentamiento del motor o pérdida de paso.
Para esto vamos a conectar un solo motor a la vez y vamos a repetir la operación para cada eje. Para que vamos a necesitar un multímetro conectado en serie entre la fuente de alimentación y el controlador. El multímetro debe ajustarse en el modo Amp (actual):




A continuación, conectar el controlador a la computadora una vez más, el poder y medir la corriente con el multímetro. Cuando activamos manualmente el motor usando la interfaz Repetier, la corriente debe subir por una cierta cantidad de miliamperios (que es la corriente que va al motor paso a paso activada). Por cada eje una corriente ligeramente diferente es necesaria en función del trabajo que cada paso a paso tiene que llevar a cabo. Usted tendrá que ajustar el pequeño potenciómetro en el controlador paso a paso y establecer la limitación de corriente para cada eje de acuerdo con los siguientes valores de referencia:
La junta impulsa una corriente de aproximadamente 80 mA
Asignamos una corriente de 200mA a los steppers X y del eje Y.
400mA para el eje Z, ya que necesita más potencia para levantar el carro.
400mA para el motor del extrusor, ya que es de un tipo más grande.


Paso 7: Construyendo el soporte de la impresora

En el siguiente enlace encontrará las plantillas necesarias para corte laser. Hemos utilizado placas de acrílico de 5 mm de espesor, pero se puede utilizar otros materiales, como la madera, de acuerdo a la disponibilidad y el precio.
Archivo Cut Láser:plantilla de soporte para el corte
El diseño del bastidor hace posible la construcción de la máquina sin pegamento: todas las partes son ensambladas utilizando uniones mecánicas y tornillos. Antes de láser de corte de las partes del bastidor, asegúrese de adaptar las posiciones de los agujeros del motor de acuerdo con las partes en DVD / CD que ha reciclados. Usted tendrá que medir y modificar los agujeros en la plantilla.


Paso 8: Calibrar los ejes X, Y y Z

Enlace a video youtube: http://www.youtube.com/embed/A253pwdvY3s?feature=oembed 

A pesar de que el firmware descargado Marlin ya tiene una calibración estándar para la resolución del eje, tendrá que pasar por este paso si desea una impresora precisa. Aquí podrás decirle al firmware de los pasos por milímetro que realmente necesita su máquina. Este valor depende de los pasos por revolución del motor y sobre el tamaño de la rosca en el vástago de accionamiento de sus ejes. Al hacer esto nos aseguramos de que el movimiento de la máquina en realidad corresponde a las distancias en el código-g. 
Saber cómo hacer que le permitirá construir una máquina CNC de su propia con independencia de los tipos de componentes y tamaños
En este caso, X, Y y Z tienen las mismas varillas roscadas por lo que los valores de calibración será el mismo para ellos (pero que podría no ser el de su caso si utiliza diferentes componentes de los diferentes ejes)​​. 
Tendremos que calcular cómo se necesitan muchos pasos del motor para mover el carro de 1 mm. Esto depende de: 
  • El radio de la polea. 
  • Los pasos por revolución de nuestro motor paso a paso. 
Los ajustes de micro-paso a paso en la electrónica (en nuestro caso de 1/16, lo que significa que para una señal de paso, sólo 1/16 de un paso se lleva a cabo, dando una precisión superior a la del sistema). 
Hemos creado este valor en el firmware (stepspermillimeter). 
Para el eje Z: 
Mediante la interfaz de controlador (Repetier) le decimos el eje Z para mover una cierta distancia y medir el desplazamiento real. 
A modo de ejemplo, le decimos que se mueva 10 mm y medir un desplazamiento 37.4mm. 
Siendo n el número de pasos definidos en stepspermillimeter en el firmware (X = 80, Y = 80, Z = 2,560, EXTR = 777,6). 
N = 2560 
N = N * 10 / 37,4 
El nuevo valor debe ser 682.67. 
Repetimos esto durante 3 o 4 veces recompilación y volver a cargar el firmware para el controlador, para que podamos obtener una mejor precisión. 
En el presente proyecto no hemos utilizado topes con el fin de construir una máquina más asequible, pero que podrían incorporarse con facilidad y el firmware está listo para ellos. Lanzando topes hace homing la máquina más fácil. La falta de ellos nos obligará a llevar la máquina de forma manual al origen del área de impresión. 
Estamos listos para una primera prueba, podemos utilizar un lápiz para probar si las distancias en el dibujo son correctos.

Paso 9: la extrusora


La unidad extructora se compone de un motor paso a paso NEMA 17 y un engranaje impulsor MK7 / tipo MK8 que usted tendrá que comprar. Usted también tendrá que 3D-imprimir las partes de la extrusora de accionamiento directo, que se puede descargar aquí. 
El filamento, después de que se tira en la extrusora por el conductor filamento, se alimenta entonces a la cámara de calefacción o extremo caliente. Entre la unidad de filamento y de extremo calor, el filamento se guía dentro de un tubo de teflón flexible. 
Vamos a armar la de transmisión directa como se ve en la imagen (Figura X.) conecte el motor paso a paso a la misma y fijar el conjunto a la estructura principal de acrílico. 
Con el fin de calibrar el flujo de plástico que tenemos para adaptarse a una pieza de filamento de plástico y medir una distancia (por ejemplo 100 mm), poner un trozo de cinta en este. Luego vaya a Repetier Software y haga clic en 100 mm de extrusión, medida la distancia real y repita el Paso 9 (operación).

Paso 10: Primer trabajo:

Videos de youtbe:





Ahora, la máquina debe estar listo para la primera prueba. Nuestra extrusora de 1,75 mm utiliza filamento de plástico que es más fácil de extruir y más flexible que el estándar de 3 mm de diámetro. Esto requerirá menos energía para conducir nuestra pequeña máquina que el filamento de 3mm. Estaremos usando plástico PLA que es un bio-plástico y tiene algunas ventajas en comparación con ABS: que se funde a una temperatura más baja, que se une fácilmente a la cama de impresión y tiene muy poca retracción. 
Ahora, en Repetier anfitrión, queremos activar los perfiles de corte en lonchas que están disponibles para la máquina de cortar Skeinforge. Puede descargar algunos perfiles desde el siguiente enlace. 
Queremos empezar a imprimir un pequeño cubo de calibración (10x10x10mm) porque va a imprimir muy rápido y vamos a ser capaces de detectar problemas de configuración y la pérdida del motor de paso marcando el tamaño real del cubo impreso. 
Así que, para empezar a imprimir, abra un modelo STL y cortarlo utilizando un perfil estándar (o uno que ha descargado) con la máquina de cortar Skeinforge: Vamos a ver una representación del objeto en rodajas y el código G correspondiente. Vamos a precalentar el extrusor, y cuando ha alcanzado la temperatura de fusión de plástico (190-210C dependiendo de la marca de plástico) extruir un poco de material (prensa de extrusión) para ver si el calor extremo y la unidad de filamentos están funcionando correctamente. 
Llevamos la cabeza de extrusión a las coordenadas de origen (x = 0, y = 0, z = 0) teniendo cuidado de que la cabeza es lo más cerca posible a la cama sin tocarlo (tomar un papel como separador). Esa será la posición inicial para el cabezal de extrusión. A partir de ahí podemos empezar a imprimir.


Fuente:
Articulo original:
http://www.instructables.com/id/eWaste-60-3DPrinter/?ALLSTEPS