Como funciona Firmware Marlin

 Marlin Software impersion 3dSoftware Marlin


Marlin es un firmware de código abierto para la familia RepRap de prototipos rápidos de replicación, conocidos popularmente como "impresoras 3D". Se derivó de Sprinter y grbl , y se convirtió en un proyecto de código abierto independiente el 12 de agosto de 2011 con su lanzamiento de Github . Marlin tiene licencia bajo la GPLv3 y es gratuita para todas las aplicaciones.

Desde el principio, Marlin fue construido por y para entusiastas de RepRap para ser un controlador de impresora sencillo, confiable y adaptable que "simplemente funciona". Como testimonio de su calidad, Marlin es utilizado por varias impresoras 3D comerciales respetadas. Ultimaker, Printrbot, AlephObjects (Lulzbot) y Prusa Research son solo algunos de los proveedores que envían una variante de Marlin. Marlin también es capaz de manejar CNC y grabadores láser.

Una clave para la popularidad de Marlin es que se ejecuta en el bajo costo de 8 bits de Atmel AVR microcontroladores - Marlin 2.x ha añadido soporte para las placas de 32 bits. Estos chips están en el centro de la popular plataforma Arduino / Genuino de código abierto . Las plataformas de referencia para Marlin es un Arduino Mega2560 con RAMPS 1.4 y Re-Arm with Ramps 1.4.

Como producto comunitario, Marlin pretende ser adaptable a la mayor cantidad posible de tableros y configuraciones. Queremos que sea configurable, personalizable, extensible y económico tanto para aficionados como para vendedores. Una compilación de Marlin puede ser muy pequeña, para usar en una impresora sin cabeza con solo hardware modesto. Las características se habilitan según sea necesario para adaptar Marlin a los componentes agregados.

Principales características
Código G con todas las funciones con más de 150 comandos
Conjunto completo de movimientos de código G, que incluye líneas, arcos y curvas Bézier
Sistema de movimiento inteligente con anticipación, movimiento basado en interrupciones, aceleración lineal
Soporte para cinemática cartesiana, Delta, SCARA y Core / H-Bot
Control de calentador PID de circuito cerrado con autoajuste, protección térmica, corte de seguridad
Soporte para hasta 5 extrusoras más una cama de impresión calentada
Controlador LCD UI con más de 30 traducciones de idiomas
Impresión basada en host y tarjeta SD con inicio automático
Compensación de nivelación de lecho: con o sin sonda de lecho
Avance lineal para extrusión basada en presión
Soporte para extrusión volumétrica
Soporte para mezcla y extrusoras múltiples (Cyclops, Chimera, Diamond)
Soporte para sensores de ancho de filamento / ancho
Temporizador de trabajos de impresión y contador de impresión

¿Cómo funciona Marlin?

Marlin Firmware se ejecuta en la placa principal de la impresora 3D, gestionando todas las actividades en tiempo real de la máquina. Coordina los calentadores, los pasos, los sensores, las luces, la pantalla LCD, los botones y todo lo demás involucrado en el proceso de impresión 3D.

Marlin implementa un proceso de fabricación aditiva llamado Fused Deposition Modeling (FDM) , también conocido como Fused Filament Fabrication (FFF) . En este proceso, un motor empuja el filamento de plástico a través de una boquilla caliente que funde y extruye el material mientras la boquilla se mueve bajo el control de la computadora. Después de varios minutos (o muchas horas) de colocar capas delgadas de plástico, el resultado es un objeto físico.

El lenguaje de control para Marlin es un derivado del G-código . Los comandos del código G le dicen a una máquina que haga cosas simples como "configurar el calentador 1 a 180 °" o "moverse a XY a la velocidad F." Para imprimir un modelo con Marlin, debe convertirse al código G usando un programa llamado un "rebanador". Dado que cada impresora es diferente, no encontrará archivos de código G para descargar; tendrás que cortarlos tú mismo.

A medida que Marlin recibe comandos de movimiento, los agrega a una cola de movimiento que se ejecutará en el orden recibido. La "interrupción paso a paso" procesa la cola, convirtiendo movimientos lineales en pulsos electrónicos sincronizados con precisión a los motores paso a paso. Incluso a velocidades modestas, Marlin necesita generar miles de pulsos paso a paso por segundo. (p. ej., 80 pasos por mm * 50 mm / s = ¡4000 pasos por segundo!) Dado que la velocidad de la CPU limita la rapidez con que se puede mover la máquina, ¡siempre estamos buscando nuevas formas de optimizar la interrupción gradual!

Los calentadores y sensores se administran en una segunda interrupción que se ejecuta a una velocidad mucho más lenta, mientras que el bucle principal maneja el procesamiento de comandos, la actualización de la pantalla y los eventos del controlador. Por razones de seguridad, Marlin se reiniciará si la CPU se sobrecarga demasiado para leer los sensores.

Imprimir cosas

Modelado

Si bien Marlin solo imprime el código G, la mayoría de las cortadoras solo cortan archivos STL.

Independientemente de lo que use para su cadena de herramientas CAD , siempre que pueda exportar un modelo sólido, una máquina de cortar puede "cortarlo" en código G, y el firmware de Marlin hará todo lo posible para imprimir el resultado final.

Antes de que Marlin pueda soñar con imprimir, primero necesitará un modelo 3D . Puede descargar modelos o crear los suyos propios con uno de los muchos programas CAD gratuitos, como FreeCAD , OpenSCAD , Tinkercad , Autodesk Fusion 360 , SketchUp , etc.

Se necesita un alto grado de conocimiento para modelar objetos complejos como un cráneo T-Rex , pero otros objetos pueden ser bastante simples de modelar . Para obtener ideas y probar cosas, explore sitios como Thingiverse y YouMagine e imprima cosas por diversión.

Rebanar

Los rebanadores preparan un modelo 3D sólido dividiéndolo en rodajas finas (capas). En el proceso, genera el código G que le dice a la impresora en minucioso detalle cómo reproducir el modelo. Hay muchas cortadoras para elegir, que incluyen:
Cura .
Slic3r .
PrusaSlicer ( anteriormente Slic3r Prusa Edition ) El nuevo Kid en el bloque basado en Slic3r.
Simplify3D es una oferta comercial.

Impresión

Marlin puede controlarse completamente desde un host o en modo independiente desde una tarjeta SD. Incluso sin un controlador LCD, se puede iniciar una impresión SD independiente desde un host, por lo que su computadora puede liberarse de la impresora.

El software host está disponible para varias plataformas, incluidos sistemas de escritorio, Raspberry Pi y tabletas Android. Cualquier dispositivo con un puerto USB y terminal serie puede actuar técnicamente como un host, pero tendrá una mejor experiencia de impresión utilizando un software host diseñado específicamente para impresoras 3D. Las selecciones actuales incluyen:
Pronterface es un host de código abierto de Kliment.
Repetier Host es un host de código cerrado de Repetier Software.
OctoPrint es un host de código abierto para Raspberry Pi de Gina Häußge .
Cura es un host de código abierto de Ultimaker. (ADVERTENCIA: ya no puede seleccionar manualmente el puerto y la velocidad com, su impresora debe ser detectada automáticamente por Cura)
Simplify3D incluye un host y un segmentador de datos.

Muchas impresoras 3D se envían con una versión personalizada de Repetier o Cura. Si bien esto ayuda a asociar la marca de la impresora con un software complementario, estas versiones generalmente son obsoletas y reciben pocas actualizaciones. En su lugar, le recomendamos que descargue la última versión genérica de su software host preferido.

Diseño y Fabricación de CNC.

Haz tu cnc propia 

Introducción

    Tras la realización de la Impresora 3d XY, tuve la necesidad de tener el complemento para la realización de objetos 3d de distintos materiales, y por qué no decirlo, seguir investigando otras variedades de modelado. He encontrado un mundo nuevo que difiere bastante a la impresión FDM. El hecho de la multitud de fresas o brocas que hay en el mercado, que merece un artículo exclusivo para hacer diferenciaciones entre ellas, y los tipos de cortes o rebanados, hace que se tenga que esforzar uno en aprender tanto del hardware como del software a utilizar. 
    Empiezo este y varios artículos  para ir adentrando poco a poco en como realizar una Cnc que acabará, o eso intentaré, en una Cnc de 5 ejes.

Haciendo las piezas con impresión 3d


    Primero, ante todo, debes ver el video que os pongo a continuación para que tengas claro el modelo que se va a  realizar.

Video1:Modelo elegido para realizar Cnc de 5 ejes

Haz tu propia CNC. Proyecto Realización de CNC 5 Ejes

 Proyecto Realización de CNC 5 Ejes.

     3. Montaje de la CNC 

        El montaje de la cnc se ha realizado sin muchos problemas y realmente ha costado meter los tubos en las piezas, pero era lo que se esperaba y quería para quede bien sujetos.

    Se ha instalado Arduino Mega con la tarjeta Ramps 1.4 insertada. Se conectan los motores X, Y y Z que una vez configurados se tiene que ver que funcionen en el sentido correcto, si no, pues le das la vuelta al conexionado del cable. 

    Una vez realizada toda la estructura, imprimí los finales de carrera y los instalé. Ciertamente me volví loco intentando configurarlos y visto lo leído, sirven de protección de seguridad, o eso es lo que encuentro bicheando las webs. Si es cierto que la coordenada origen no es como en la impresión 3d, yo al menos he visto que lo colocas manual o automáticamente donde quieras y luego reseteas las coordenadas para que ese sea el origen. Ya estudiaré más detenidamente este tema de finales de carrera y de origen.
Sobre la configuración del GRBL es extenso como para meterse en este post. Ya haré alguno que describa los puntos más importantes.
El firmware utilizado es el utilizado para 5 ejes y lo puedes encontrar en github en el siguiente enlace:

https://github.com/fra589/grbl-Mega-5X

Si estás interesado en 3 ejes sólo, es cuestión de buscarlo o simplemente no utilizarlos con esta versión de GRBL. No es difícil encontrarlo, por ejemplo, en github. Según la placa de control que uses, te interesará una versión u otra de GRBL.
Os pongo imágenes de la cnc a falta de los dos ejes finales.

CNC de 3 a 5 ejesCNC 3 a 5 ejesCNC de 3 a 5 ejes
Fig. 1 Diferentes vistas de CNC de 3 a 5 ejes

    4. Calibrado de CNC

    Una vez concluido los ajustes del GRBL y conectado el motor realicé las pruebas de corte de un sencillo palet, que al ser una madera de baja calidad no esperaba demasiado, solo probar con un archivo gcode y ver que tal funcionaba tanto en dimensiones, como de velocidad de recorrido. 

    Poco a poco te vas adaptando al software y vas viendo diferencias de funcionamiento con respecto a la impresora 3. 

    A medida que va recorriendo el corte observo que el eje X, al estar en el aire, se dobla al realizar demasiado esfuerzo la broca. 
            
Dos posibilidades tengo:
  • Realizar las piezas más lenta y con más capas de Z
  • O bien, sujetar los tubos de acero de X en los tubos de Y, y que se deslicen en estos con rodillos.
    Es algo que tendré que decidir, pero de todos modos estoy contento con los resultados que voy consiguiendo.
    Os dejo video de la primera prueba:

Video 3: Prueba de CNC con 3 Ejes

5. Conclusiones

    Queda pues, concluir el diseño de los dos ejes faltante ( A y C ) y seguir realizando pruebas con la cnc con los tres ejes. Así iré pensando si realizar las modificaciones para la estabilidad del eje X, y viendo el software tanto de creación de los archivos gcode, como de mecanizado.
    Otra de las cuestiones con las que tendré que familiarizarme es con los tipos de brocas y usos de estas. Ya estoy recopilando datos sobre las brocas y seguramente haré un resumen con las más utilizadas.
    Esta publicación se acabará de completar con la elaboración de los 5 ejes. Si estás interesado en ello no pierdas este enlace.
    Daros las gracias por leer este post .
    Saludos,👋


Pruebas Realizadas con el Software Editor de Movimientos "Motion Editor" del Robot Plen 2.

Pruebas  con software editor de movimientos "Motion Editor". Robot Plen 2.

Introducción.

Hay diferentes maneras de conectarnos con la placa ViVi. Puede ser a través del puerto USB (PL2303) ó por Wifi según el software que utilicemos.

Este software, que ahora comentamos, es por WiFi .

El propósito del software Motion Editor es la creación, modificación y corrección de movimientos del robot Plen2. A parte de esto, nos sirve para que la posición del robot coincida con el robot del software.
Podemos cargar archivos de movimiento .json que ya vienen con el propio programa, o bien, crearlos desde el principio.
Una vez estemos satisfecho con el movimiento lo podemos guardar, para luego cargarlo al robot.


Software Motion Editor Plen2
Fig.1 Software Motion Editor.

Observaciones.

Tras el montaje del Robot Plen2 con la placa ViVi(el chino es Miniplan), he tenido serios problemas a la hora de conseguir movimientos suaves y controlados. 

He conseguido que no se descontrole quitando las tensiones de alimentación y poniéndolas directa a la batería, dejando libre de esta sobrecarga a la placa control VIVI de doit.com.

Ahora sólo controla las señales de los servos quedando libre de alimentar a los servos.

Hecho esto, ya se queda en la posición inicial y no descontrola los movimientos, aunque sigue dando problemas cuando nos conectamos a la App ViVi Robot. 😔
Con la App nos conectamos al wifi del robot, y una vez hecho esto, pasar a colocar la posición del robot desde el menú Develop

App vivirobot Plen2
Fig.2 Development Plen2

He hecho multitud de pruebas de ajustar los servos y luego probarlos ejecutando los movimientos, no son correctos, produciendo movimientos descontrolados con colisiones y perdiendo la posición inicial creada. Estas colisiones son fundamentales evitarlas, pues si se bloquea por tropezar y recibe señal, querrá seguir hacia adelante, y esto produce descontrol de la placa.

Da la impresión de que se debe a los archivos json. , parecen ser incorrectos en velocidad y en los movimientos. 
Por este motivo he decidido editar cada movimiento con este programa y una vez probado con el robot guardarlos y descargarlo en éste. 👊


Creación de movimientos más pausados y suaves sin colisión

Conclusiones.

Arduo trabajo, pero que si sale bien será gratificante. 🤗
Una vez realizado este paso de transformación viene la tarea de descargarlo en el Robot Plen2.
Para ello tengo pensado varios métodos que tengo aún que probar. Será cuestión de "machacar" las tablas de movimientos que ya tiene, por las nuevas.

Os espero para poderos pasar este último paso, esperando que sea exitoso.

Otra cuestión que habrá que abordar será la batería final con la que trabaje,  ya que de momento trabaja con una fuente de alimentación ATX de ordenador.

Os espero! 🤖🖖



 

Haz tu propia CNC. Ensamblado final de la CNC

Haz tu CNC. Montaje de la CNC

Tras la impresión de las últimas piezas y de comprar los tubos de acero finalizo el ensamblaje general de la CNC. 

Aún queda el montaje de la electrónica que tendré que adaptar con piezas diseñadas e impresas con impresión 3d

Máquina CNC

A medida que vaya implantando la electrónica, empezaré con la programación.

Máquina CNC

La electrónica será para una CNC de 5 ejes y constituida por un Arduino Mega y una Ramp's 1.4. Se comenzará con motores Nema 17 para ir familiarizándonos con el hardware y a medida que vea la necesidad, pasaré a motores Nema 23.

Máquina CNC

    El software preferente será el Mach3, teniendo soporte dicho software para el eje C y el eje A, aparte de los ya normalmente usados X, Y y Z.

Si por algún motivo veo oportuno algún cambio en el hardware, pasaré a placa de control con los drivers correspondiente de los motores, y que sea compatible con el software.

Espero que os guste 👋




Comandos del software ROBOIDE para placa control SSC-32.

  Utilizando placa SSC32. Roboide

Fig. 1 Distintos tipos de placas SSC-32


Comandos SSC32

Esta placa de control, la SSC32, es un dispositivo auxiliar que sólo puede aceptar comandos o ejecutar comandos preestablecidos. 
Usa protocolo de comunicación con el exterior: comunicación en serie (nivel TTL), velocidad en baudios 9600 (por defecto 9600, puede configurar otras velocidades en baudios a través del software de PC), sin bit de paridad, 8 bits de datos y 1 bit de parada. 
Los comandos tienen una cosa en común, todos tienen \ r \ n , este es el final del comando, debe estar presente. Otro dato a tener en cuenta es que no hay espacios en los comandos. 

ejemplos:

Los comandos específicos son los siguientes: (para mejorar) 
  
# 1 P 1500 T 100 \ r \ n  comando simple.

El dato 1 es el canal de placa de control. El dato 1500 es la posición del servo y el rango es 500-2500. El dato 100 es el tiempo de ejecución, que indica la velocidad. Grado, el rango es 100-9999 

# 1 P 600 # 2 P 900 # 8 P 2500 T 100 \ r \ n  comando Múltiple 

 Los datos 1, 2, 8 son los canales del servo. Los datos 600, 900 y 2500 son 3 respectivamente posiciones de canales de la placa de control  . El dato 100 es el tiempo de ejecución, que es de 3 timones. La velocidad de la máquina, independientemente de cuál es el número de servos. El tiempo solo puede ser uno, es decir, solo puede haber una T. Los comandos se ejecutan simultáneamente, es decir, todos los servos se mueven todos juntos.

# 1 GC 2 \ r \ n  Grupo de acción Simple

El dato 1 es el número del grupo de acción. El dato C2 es el número de ciclos llevado a cabo 

 # 1 G # 3 G # 1 GC 2 \ r \ n  Grupo de acción Múltiple 

Ejecuta el grupo de acción 1 primero, luego ejecute el grupo de acción 3, luego realice el grupo de acción 1, luego reinicia Repite otra vez. (Ejecutar el grupo de acción 1, ejecutar el grupo de acción 3, Ejecutar el grupo de acción 1, ejecutar el grupo de acción 1, ejecutar Grupo de acción 3, grupo de acción de ejecución 1) Los datos 1 y 3 son los números del grupo de acción El dato C2 es el número de ciclos Un comando solo puede tener un número de ciclo llevado a cabo 

 # 1 G # 3 G # 1 G # 1 G # 1 GC 1 \ r \ n  Grupo de acción Múltiple

Realice el grupo de acción 1, realice el grupo de acción 3, realice Grupo de acción 1, ejecutar grupo de acción 1, ejecutar Grupo de acción 1 Los datos 1 y 3 son los números del grupo de acción El último dato C1 es el número de ciclos Un comando solo puede tener un número de ciclo.

 #STOP \ r \ n  Detener todas las acciones actuales 

La placa de servo control no puede aceptar el comando de parada (#STOP \ r \ n) durante la ejecución del comando del grupo de acción Cualquier orden exterior. Si configura un comando fuera de línea, entonces también está ejecutando el grupo de acción, luego el panel de control del servo en este proceso no puede aceptar otros comandos. 

 Zumbador para panel de control del mecanismo de dirección

El zumbador solo sonará cuando la placa de control de arrancar o no está encendido o no tiene suficiente energía.

Dado que el la placa de control necesita mucha corriente, si la fuente de alimentación de ésta, no es buena, en el momento en que empiece a funcionar, causará el voltaje de la fuente de alimentación se baje mucho y el zumbador sonará en este momento para indicar suministro de energía insuficiente.

Si cree que el timbre es ruidoso, puede cancelarlo mediante el propio software de PC.

Una fuente de alimentación insuficiente hará que los servos se muevan al azar o que la placa de control esté fuera de control. (Sentido común: medios de suministro de energía insuficientes

La corriente tiene que ser buena, no es que el voltaje no sea suficiente. Incluso si le das 100A , tomará solo la que necesita por ejemplo, 1A. Tomará 1A, no tomará más, controlará el consumo.

Verifique el método para una fuente de alimentación insuficiente: use un multímetro para probar el VS y GND del terminal azul en el tablero de control

Mida el valor de voltaje instantáneo de la placa de control. Si el voltaje instantáneo cae mucho, o es menor que el rango normal de la fuente de alimentación significa que su fuente de alimentación o batería no es buena.

NOTAS

 ¿Se puede establecer un retraso entre grupos de acción o entre cada comando?

En primer lugar, debe comprender que hay un tiempo T después de cada comando, T significa tiempo, luego repita el anterior

¿Puede entenderse que una orden está esperando?

 Sí, repite el último comando, el servo no se moverá, pero el tiempo corre, por lo que se puede entender que se trata de un retraso. (En la actualización posterior, puedes agregar un comando dedicado al retraso)

 Establecer las acciones iniciales del robot

En el momento en que se enciende el panel de control de los servos, el robot puede moverse aleatoriamente, lo cual puede deberse al reinicio del servo al encenderlo.
También puede deberse a la salida de señal inestable en el momento en que se enciende el tablero de control del mecanismo de dirección. El usuario puede configurar la acción para establecer un grupo de acción inicial para el robot.
 Primero, descargue un grupo de acción simple (estado inicial del robot), y luego configure el grupo de acción para que se ejecute fuera de línea. Después de la configuración, cada vez que se abre el panel de control esta acción se ejecutará cuando se encienda el interruptor de encendido. Si establece la postura de pie del robot,
Cuando el robot enciende el interruptor de encendido, se parará primero.

Algunas instrucciones para la alimentación del servo

El uso normal de los servos requiere una fuente de alimentación de alta potencia, un servo de metal con un par de 13 KG.CM, cuando no hay carga la corriente requerida es casi CERO, pero la corriente puede ser tan alta como 3A a plena carga. 

Un robot con 10 de estos servos instalados, Requiere una fuente de alimentación capaz de generar una corriente de aproximadamente 5 A para garantizar el funcionamiento correcto.

Comprueba que todos los servos funcionan. Por supuesto, si se requiere que todos los servos funcionen a plena carga, entonces 5A también está lejos de ser suficiente

Placa 32 canales SSC-32 servo motor control Joystick PS2

Placa 32 canales SSC32 servo motor control Joystick PS2

Os presento una placa de control fácil de utilizar y que es capaz de gestionar hasta 32 salidas. 


         Fig.1 Disposición de conexionado

En la figura podéis ver las entradas de alimentación de Vs,  que corresponde a la tensión que suministramos a los servos, tiras led´s o lo queramos. La tensión Vss, va de 6,5 a 12v. Estas dos tensiones tienen su negativo o tierra en GND. Tiene dos  puertos series con los que podrás comunicarte e incluso conexión inalámbrica para mandos PS2. Observamos la conexión para música MP3, la cual aún no puedo daros información. Si os puedo decir que en el mismo software de control se elige los MP3. Indagaremos... 😉. Por lo que véis es bastante completa y ha funcionado bastante bien en el banco de pruebas. Si es cierto que el software es demasiado simple y debería dar más funciones. Se ve algo escaso. 

Hablemos un poco más de la tensión Vs.

Servomotor
Fig.2 Servo Motor
Os pongo por ejemplo motores servos.

Siempre que el voltaje de la fuente de alimentación cumpla con los requisitos, se puede usar una batería para alimentar VSS y VS al mismo tiempo.

Si usamos los servos MG995 o MG996 la tensión Vs sería de entre 4.8v a 6.8v.
Si son los TR213, TR223, 1501MG sería la tensión de 4,8v a 7v.

Tened en cuenta que si no conoces la tensión nominal del servos debes de aplicar una Vss de 5 a 6v, ya que el 95% de los servos usan este rango.

Instalando DRIVERS en el PC.


Lo primero que tienes que hacer es instalar los drivers en tu ordenador. Para ello descarga el siguiente enlace e instálalo.


Mediante el software que os pongo más abajo y la instalación de los drivers podrás manipular dichas salidas a tu antojo. 
Como dije, fácil e intuitiva, se puede guardar los movimientos en sus propias memorias interiores. Dichos movimientos se realizan individualmente o por grupos, según así los guardes.


Movimientos de Servos

Formato: # <ch> P <pw> ... # <ch> P <pw> T <time> \ n \ r


<ch> = número de servo, rango 1 ~ 32 (número decimal)
<pw> = Ancho de pulso (posición del servo), rango: 500 ~ 2500. Unidad: us (microsegundos)
<time> = Tiempo utilizado para moverse a la posición, efectivo para todos los servos.
\ n \ r = Número binario 0x0d, 0x0a (retorno de carro), el terminador del comando

Ejemplo:

# 3P250T1000 \ n \ r
Mueva el servo N.3 a un ancho de pulso de 250us, usando un tiempo de 1000 microsegundos 

# 10P2000 # 30P2500T1500 \ n \ r
Mueva el servo N.10 al ancho de pulso 2000us, el servo N. 30 al ancho de pulso 2500us, usando el tiempo
1500ms. La velocidad del servo depende de la ubicación de la dirección de la vez anterior. N.10 y
Los servos N.30 llegaron al lugar designado al mismo tiempo.

Instrucciones de acción en grupo 
Ejecutar acción en grupo 

Formato de comando: # <AG> G… # <AG> G <pw> C <Ciclo> \ n \ r

<m>: número de grupo de acción
 <AG> = número de grupo de acción, rango 1 ~ n (número decimal, n es el máximo fáctico
número)
 <Ciclo> = tiempos de bucle, rango 1 ~ 999 (número decimal)
 \ n \ r = 0x0D, 0x0A en hexadecimal, significa el final del comando

Ejemplo: 

# 1GC99 \ n \ r
Realiza el grupo de acción 1 y repite 99 veces

# 1G # 2G # 4G # 2GC1 \ n \ r
Realice el grupo de acción en orden 1, 2, 4, 2 y repita solo una vez.
la instrucción se puede repetir como # 2G en este ejemplo)
Cuando finalice la instrucción, devolverá #AGF como indicación.


Funcionando sin conexión

Formato de comando: # ENABLE # <AG>… # <AG> C <Ciclo> \ n \ r

Ejemplo:

# HABILITAR # 1GC5 \ n \ r
La placa de servocontrol realizará el grupo de acción 1 y hará un bucle 5 veces cuando se encienda.

#DISABLE \ n \ r falla de ejecución sin conexión

Conexión del mando PS2 a SSC-32

Mire el lado del receptor del mango, la parte superior es grande, la parte inferior es pequeña, la siguiente forma, 9 pines, solo es necesario conectar los pines 1 2, 4, 5, 6  y 7.

Conexión mando PS2 en SSC-32
Fig3. Conexión del mando PS2

Si tienes conectada la fuente de alimentación, las dos luces del receptor del mango siempre estarán encendidas. 

Configuración PS2

Abra el software de computadora ROBOIDE, el menú superior del software, herramientas-mango PS2.

Configuración mando PS2 a Software ROBIDE
Fig.4 Configuración PS2 con ROBOIDE

Luego ingrese el comando del grupo de acción que se ejecutará con el botón en el cuadro de entrada cerca del botón de control de PS2 a la derecha.

(formato: # 1GC1 , 1G es el primer grupo de acción, C1 se ejecuta una vez en un bucle)

    Después de la configuración, presione "OK" para confirmar la configuración. Luego reinicie el tablero de control de los servos (vuelva a encender el tablero de control) y luego puede controlar el grupo de acciones con los botones del mango.

Observaciones: 

    1. Después de que el receptor del  mando y el tablero de control estén conectados normalmente, si la fuente de alimentación está conectada, las luces indicadoras en el receptor del mando estarán encendidas, si parpadea, debe verificar si el mango está encendido o si el interruptor de encendido está encendido. 

    2. El mando tiene una función de suspensión. Si encuentra que las luces indicadoras en el mando están todas apagadas, es posible que esté en hibernación. Se restablece el botón INICIO.

Finalizando

    Esto ha sido la breve descripción del hardware a algo de comandos para los inicios del software. Más adelante, haré una nueva entrada de los diferentes software que se pueden usar.
Espero que haya sido útil para vosotros. Saludos 👋👋