# Velocidad Máxima

Si en el paso anterior, [**Input Shaper**](/klipper/empezamos/input-shaper.md) donde nos centramos en encontrar las aceleraciones correctas para nuestra máquina... en este caso nos centraremos en encontrar la velocidad máxima usando esas aceleraciones óptimas sin perder precisión en nuestra máquina.

{% hint style="warning" %}
**Es importante recalcar que tanto velocidad como aceleraciones máximas obtenidas NO tienen porque ser las optimas o usables en nuestra máquina ya que puede depender de otros aspectos ajustar estas... como por ejemplo el tipo de pieza a imprimir, el tipo de filamento, etc..**

**El objetivo de este test es conocer la máxima velocidad, a las máximas aceleraciones óptimas calculadas previamente, que puede efectuar nuestra máquina sin pérdida de pasos. Lo cual puede ser útil para configuración de nuestros límites de máquina, traslados durante la impresión o** [**configuración MVS**](https://labs.3dwork.io/guias-impresion-3d/calibracion_3d#id-16.-ajuste-de-extrusion-volumetrica-opcional)**.**

**La velocidad máxima en impresión vendrá limitada por la capacidad de nuestro sistema de extrusión.**
{% endhint %}

{% hint style="info" %}
Algunos aspectos a tener en cuenta antes de empezar:

* es importante que **tengamos correctamente ajustadas las corrientes de nuestros motores**, en ocasiones aumentando (dentro de los límites drivers/motores) la corriente podemos obtener un poco más de torque
* tener **correctamente calculadas nuestras aceleraciones mediante Input Shaper** ya que tendremos rangos óptimos para nuestra máquina y sus vibraciones
* **motores de 1.8º pueden llegar generalmente a mayores velocidades/aceleraciones** **que motores de 0.9º**
* **sistemas HV (High Voltage) también ayudan a que nuestra máquina pueda llegar a mayores velocidades/aceleraciones**
  {% endhint %}

## Test de velocidad máxima

Para realizar el test vamos a utilizar la macro de nuestro compañero [**Ellis**](https://ellis3dp.com/) que dispone de una documentación excelente para el ajuste de nuestras máquinas.

{% embed url="<https://gist.github.com/alienboyxp/194649a9314f8adfceb51ae8b2e80b7b>" %}
<https://gist.github.com/alienboyxp/194649a9314f8adfceb51ae8b2e80b7b>
{% endembed %}

Añadiendo esta [macro](/klipper/mejoras/macros-mejoras.md) a nuestro printer.cfg o cualquiera de nuestros includes nos permitirá usar la macro TEST\_SPEED que disponemos de los siguientes parámetros:

<table><thead><tr><th width="217.33333333333331">Parámetro</th><th>Valor x defecto</th><th>Descripción</th></tr></thead><tbody><tr><td><strong>SPEED</strong></td><td><strong>max_velocity</strong> de tu config</td><td>Máxima velocidad a realizar el test, es aconsejable incialmente dejar la de por defecto</td></tr><tr><td><strong>ACCEL</strong></td><td><strong>max_accel</strong> de tu config</td><td>Máxima aceleración al realizar el test, es aconsejable incialmente dejar la de por defecto.</td></tr><tr><td>CRUISE</td><td>minimum_cruise_ratio de tu config</td><td>Define el ratio a aplicar un ajuste de aceleración con base a una distancia de movimiento... por defecto 0.5</td></tr><tr><td><strong>ITERATIONS</strong></td><td>5</td><td>Número de veces a repetir el test.</td></tr><tr><td><strong>BOUND</strong></td><td>20</td><td>Normalmente no es necesario ajustarlo. Permite ajustar un espacio entre los márgenes de nuestra área de impresión y el test.</td></tr><tr><td><strong>SMALLPATTERNSIZE</strong></td><td>20</td><td>Normalmente no es necesario ajustarlo.</td></tr></tbody></table>

{% hint style="danger" %}
**Si ajustas las velocidades/aceleraciones al lanzar la macro a mano pueden cambiar los valores de tu configuración!!!**
{% endhint %}

* Para iniciar el proceso **lanzaremos la macro TEST\_SPEED desde nuestra consola o UI**

{% hint style="warning" %}
**Es importante que durante el proceso estar atentos a la máquina por si escuchamos que los motores pierden pasos o vemos que se hacen unos movimientos extraños que no tengan que ver con el test.**

**Es importante que tengamos correctamente definida el área de impresión en nuestra configuración, tenéis más información y detalle** [**aquí**](/klipper/empezamos/puesta-en-marcha-inicial.md#otras-secciones-importantes)**.**

**Pararemos la máquina de inmediato en esos casos y ajustaremos los parámetros del test.**
{% endhint %}

<figure><img src="/files/cEenR3dR8szw13e8hI4G" alt=""><figcaption><p>Podemos lanzar la macro desde la CONSOLA</p></figcaption></figure>

<figure><img src="/files/UdIPyWdNTbkJ8FA3nFla" alt=""><figcaption><p>También podemos lanzarla desde la UI ajustando los parámetros de una forma más simple.</p></figcaption></figure>

* Una vez finalizado el proceso nos fijaremos de nuevo en la consola:
  * revisaremos **los números marcados en los recuadros rojos que representan los micropasos de los ejes x e y**
  * **si esos valores no varían entre ellos más de un paso entero, nuestra velocidad máxima es correcta**.\ <mark style="color:red;">**(revisa el comentario al dónde se da más detalle sobre como evaluar si perdimos o no pasos dependiendo del tipo de final de carrera que usemos)**</mark>
  * **si estos valores varían más de un paso significará que nuestros ejes han perdido pasos y deberemos ajustar la velocidad máxima o ajustar nuestra configuración de corriente en motores, drivers o cinemática**

{% hint style="warning" %}
Usamos **la diferencia de un paso completo para minimizar la falta de precisión que puedan tener nuestros finales de carrera en el caso que usemos mecánicos o de alta precisión**.

<mark style="color:blue;">Normalmente los finales de carrera tradicionales, mecánicos/ópticos tienen una precisión de unos 100 micrones más que suficiente... en todo caso si queremos ajustar la precisión aún más podemos usar la función \[endstop\_phase]</mark> [<mark style="color:blue;">para mejorar esta precisión siguiendo estas instrucciones.</mark>](https://www.klipper3d.org/Endstop_Phase.html)

Por ejemplo, en el caso de un final de carrera preciso, si tenemos 16 micropasos la diferencia entre el valor inicial y final no debería superar el valor de 16.\
\
En el caso **de usar sensorless o sensores que tienen menos precisión podemos dar por bueno una desviación de unos pocos pasos enteros, de forma general usaremos 4 como un número límite**.

<mark style="color:red;">En estos casos, sensorless, es importante que vuestra</mark> [rutina de homing este ajustada correctamente](/klipper/empezamos/puesta-en-marcha-inicial.md#sensorless) <mark style="color:red;">ajustando lo más preciso posible la corriente en el momento del homing, las aceleraciones durante ese proceso y la sensibilidad de nuestros drivers.</mark>

Por ejemplo, y en el caso de sensores con poca precisión, si tenemos 16 micropasos la diferencia entre el valor inicial y final no debería superar el valor de 64.
{% endhint %}

<figure><img src="/files/J7C4DybFDkGLDWNyTXGQ" alt=""><figcaption></figcaption></figure>

En el **caso de que tengamos una pérdida de pasos o creamos que nuestra máquina puede ir a velocidades superiores, podemos repetir el test hasta encontrar los valores óptimos**.

Ahora que ya tenemos nuestra velocidad máxima “segura” sin pérdida de pasos ajustaremos:

* nuestro printer.cfg para ajustar los límites de velocidad, en la sección \[printer] ajustamos a 300 mm/s:

{% code title="printer.cfg" %}

```django
[printer]
kinematics: cartesian
max_velocity: 300
```

{% endcode %}

* si usamos [MVS o gestión de velocidad volumétrica](https://github.com/alienboyxp/gitbook_es_klipper_3dwork_io/blob/main/broken/pages/-MTqPy_NKPC-R-jkDi7M/README.md#15.-ajuste-de-extrusion-volumetrica-opcional) en nuestro laminador es aconsejable ajustarlo... aconsejamos dejar cierto margen y poner entre un 80-90% del valor obtenido
* de nuevo en nuestro laminador, podemos ajustar el valor de velocidad en traslados... aconsejamos dejar cierto margen y poner entre un 80-90% del valor obtenido

{% hint style="warning" %}
**Es importante recalcar que tanto velocidad como aceleraciones máximas obtenidas NO tienen porque ser las optimas o usables en nuestra máquina ya que puede depender de otros aspectos ajustar estas... como por ejemplo el tipo de pieza a imprimir, el tipo de filamento, etc..**

**El objetivo de este test es conocer la máxima velocidad, a las máximas aceleraciones óptimas calculadas previamente, que puede efectuar nuestra máquina sin pérdida de pasos. Lo cual puede ser útil para configuración de nuestros límites de máquina, traslados durante la impresión o configuración** [**MVS**](https://github.com/alienboyxp/gitbook_es_klipper_3dwork_io/blob/main/broken/pages/-MTqPy_NKPC-R-jkDi7M/README.md#15.-ajuste-de-extrusion-volumetrica-opcional)**.**

**La velocidad máxima en impresión vendrá limitada por la capacidad de nuestro sistema de extrusión.**
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://klipper.3dwork.io/klipper/empezamos/velocidad-maxima.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
