Mientras trabaja con VEX IQ, es posible que desee ejecutar un proyecto que se configuró para un cerebro (segunda generación) en un robot con un cerebro (primera generación). Para hacer esto, necesitará convertir su proyecto de 'segunda generación' a 'primera generación' en VEXcode IQ.
En algunos escenarios, se realizan automáticamente cambios menores en el código o la configuración durante una conversión, y estos cambios no afectarán la forma en que se ejecuta su proyecto en un IQ (1.ª generación) Brain. Sin embargo, hay algunas circunstancias en las que se realizan cambios en un proyecto durante la conversión que requieren que el proyecto se actualice para poder ejecutarse en un robot con un Brain (primera generación).
Conversión de un proyecto con giroscopio externo: sin cambios en el código
Abra un proyecto (segunda generación) en el espacio de trabajo. Luego, seleccione el ícono de la ventana Dispositivos.
Una vez que la ventana Dispositivos esté abierta, seleccione el icono '1.ª generación'.
El icono de '1.ª generación' se resaltará en azul para mostrar que el proyecto se ha convertido. Ahora puede ejecutar este proyecto en un Brain (primera generación).
Nota: En este ejemplo, el Gyro externo está configurado para el puerto 4 y no es necesario realizar actualizaciones. Si volviera a convertir a un proyecto de segunda generación, hay un paso en el que deberá confirmar esta configuración. Consulte este artículo para obtener más información.
Conversión de un proyecto con Brain Inertial configurado: sin cambios en el código
Si Brain Inertial está configurado en el proyecto IQ (segunda generación), deberá actualizarlo para configurarlo con un sensor giroscópico externo o sin giroscopio.
Abra un proyecto (segunda generación) en el espacio de trabajo. Luego, seleccione el ícono de la ventana Dispositivos.
Una vez que la ventana Dispositivos esté abierta, seleccione el icono '1.ª generación'.
Aparecerá un mensaje para alertarle que será necesario convertir el proyecto. Seleccione 'Continuar' para continuar con la conversión.
Se abrirá un mensaje de finalización de la conversión que le alertará de que se ha eliminado la configuración del sensor Brain Inertial. También enumerará los cambios que se realizaron. Consulte a continuación para obtener más información sobre cómo interpretar los mensajes del cuadro de diálogo.
Seleccione "Aceptar" para continuar.
El icono de '1.ª generación' se resaltará en azul para mostrar que el proyecto se ha convertido. Ahora puede ejecutar este proyecto en un Brain (primera generación).
Deberá configurar un Gyro externo o continuar sin ningún Gyro configurado.
Convertir un proyecto con cambios de código
Abra un proyecto (segunda generación) en el espacio de trabajo. Luego, seleccione el ícono de la ventana Dispositivos.
Una vez que la ventana Dispositivos esté abierta, seleccione el icono '1.ª generación'.
Aparecerá un mensaje para alertarle que será necesario convertir el proyecto. Seleccione 'Continuar' para continuar con la conversión.
Nota: Este mensaje solo se abrirá si se realizarán cambios en el código del proyecto.
Se abrirá un mensaje de finalización de la conversión y enumerará los cambios realizados. En este ejemplo, el menú desplegable del bloque de eventos {When Brain button} se actualizó de la configuración de 2.ª a 1.ª generación.
- Consulte la sección siguiente para obtener más información sobre los diferentes mensajes que puede recibir y cómo interpretarlos.
Seleccione 'Aceptar' para guardar la conversión del proyecto.
El icono de '1.ª generación' se resaltará en azul para mostrar que el proyecto se ha convertido. Ahora puede ejecutar este proyecto en un Brain (primera generación).
Interpretación de mensajes de diálogo al convertir proyectos
Si se necesitaba un cambio en el código debido a cualquiera de las condiciones que se muestran a continuación, el mensaje después de la conversión será: "La conversión del proyecto se completó con estos cambios", seguido de una lista de los cambios que se realizaron en el código. A continuación se detallan los cambios que puede encontrar al convertir un proyecto (segunda generación) para ejecutarlo en un Brain (primera generación).
Mensajes de diálogo para cambios realizados automáticamente
{When Brain button} Menú desplegable actualizado
{When Brain button} Menú desplegable actualizado
Aquí el mensaje le indica que la conversión se completó y que el menú desplegable del bloque {When Brain button} se actualizó.
Menú desplegable actualizado
Este mensaje le indica que el menú desplegable del bloque <Brain button pressed> se ha actualizado durante la conversión.
Se cambió la ranura del proyecto
Aquí el mensaje le indica que la ranura del proyecto se cambió durante la conversión.
Mensajes de diálogo para cambios que requieren la actualización del código
Sensor inercial del tren motriz eliminado
Este mensaje de diálogo indica que la configuración del sensor inercial del tren motriz se eliminó durante la conversión.
Si un proyecto está configurado con el sensor inercial integrado en el Brain (segunda generación), el sensor inercial se eliminará de la configuración del tren motriz para que sea compatible con el Brain (primera generación).
- Es posible que necesites configurar un sensor giroscópico para que tu proyecto se ejecute como desees en el Brain (primera generación).
Unos {When started} bloques han sido deshabilitados.
Este mensaje le indica que se han desactivado algunos {When started} bloques durante la conversión.
Un Brain (primera generación) solo puede admitir hasta 3 {When started} bloques, mientras que un Brain (segunda generación) admite hasta 8. Si hay más de 3 {When started} bloques en el proyecto (segunda generación), los {When started} bloque adicional se desactivarán durante el proceso de conversión. No podrá habilitar el extra cuando inicie en el modo gen 1.
Nota: El software priorizará {When started} bloques desde la esquina superior izquierda del espacio de trabajo.
Nota: Si el proyecto se vuelve a convertir a 2.ª generación, estos bloques no se habilitarán automáticamente. Tendrás que habilitarlos manualmente en el Espacio de trabajo.
Bloques específicos de IQ (segunda generación) deshabilitados
Este mensaje le permite saber que se han desactivado todos los bloques específicos de IQ (segunda generación).
Si los bloques están deshabilitados, no se ejecutarán en un proyecto. Puede que sea necesario actualizar el proyecto para que se ejecute como se desea.
Además, si los parámetros del bloque se configuran para configuraciones específicas de IQ (segunda generación) como se muestra a la izquierda, el bloque se desactivará en la conversión. Este bloque se puede habilitar después de la conversión cambiando el parámetro 'BrainInertial' en la ventana desplegable.
Nota: Si el proyecto se vuelve a convertir a 2.ª generación, estos bloques no se habilitarán automáticamente. Tendrás que habilitarlos manualmente en el Espacio de trabajo. No podrá volver a habilitar bloques que sean específicos del cerebro IQ (segunda generación).
Los bloques que se muestran a la izquierda son ejemplos de bloques específicos de IQ (segunda generación): bloques Draw y Inertial Sensing. Estos bloques se desactivarán si están en un proyecto que se está convirtiendo a 1.ª generación.
- Nota: Hay algunos bloques que se comparten entre el giroscopio y el sensor inercial cerebral. Si usa esos bloques y tiene el giroscopio seleccionado, no se desactivarán. Solo se deshabilitarán los bloques que tengan seleccionado 'BrainInertial'.
Debido a que la Vista de consola no es compatible con IQ (primera generación), cualquier bloque que tenga la opción 'Consola' seleccionada en el menú se desactivará al convertir a un proyecto de primera generación.
Estos bloques se pueden habilitar si se cambia la opción del menú. En el ejemplo de la izquierda, el bloque [Imprimir] está deshabilitado porque está seleccionada 'Consola'.
El bloqueo se puede habilitar seleccionando la opción 'Cerebro', ya que esta opción es compatible.
Un solo proyecto puede tener múltiples cambios. VEXcode realizará todas las conversiones a la vez y enumerará todos los cambios en un solo mensaje, como se muestra a la izquierda.