Pasar proyecto de la versión 1.5 a la MRDS 2008 - 2009/03/10 13:41Hola, quisiera actualizar mi proyecto hecho en la versión 1.5 a la versión microsoft robotic developer studio 2008 y no sé como hacerlo. Lo he intentando actualizando el archivo de propiedades de mi proyecto, introduciendole las mismas opciones que un tutotial de simulación de la versión MRDS 2008, pero no me funciona.
Gracias
The administrator has disabled public write access. Please, register to participate in the
forum.
Ten en cuenta que para migrar un proyecto de una versión a otra siempre tienes que usar el DssProjetcMigration.exe que viene con la versión destino.
Lo más fácil es que copies la carpeta con todos tus fuentes y tu proyecto al nuevo directorio de destino en la nueva instalación de MRDS 2008. Una vez lo hayas copiado (y antes de abrirlo con Visual Sutdio) tienes que ejecutar lo siguiente desde el command prompt de MRDS:
Code:
bin/DssProjectMigration.exe samples/MiProyecto
Suponiendo que samples/MiProyecto es donde está tu solución o soluciones de Visual Studio. Al ejecutar esto se supone que se actualizan todas tus referencias de acuerdo a las necesidades de la nueva versión y los nuevos directorios donde se encuentran los ficheros.
Ten en cuenta que no hace falta que especifiques los ficheros concretos de proyecto o solusión, porque el DSSProjectMigration buscará todos los proyectos que tengas bajo el directorio especificado. Es decir, migrará todo lo que encuentre.
Además, la herramienta de migración de proyectos puede migrar los archivos de proyecto y de solución desde Visual Studio 2005 a Visual Studio 2008. Lo normal, es que con MSRS 1.5 trabajaras con Visual Studio 2005 y al pasarte a MRDS 2008 trabajes con Visual Studio 2008.
Se supone, que después de ejecutar la migración ya puedes compilar de nuevo tus servicios, ahora bajo MRDS 2008 y todo funcionará. Si embargo, yo he visto que en ocasiones esto no basta, pues ha habido cambios en las APIs desde MSRS 1.5 a MRDS 2008, y algunas funciones han cambiado de nombre, etc.
También puede ser que no te actualice bien alguna referencia. Ten en cuenta que ahora (en MRDS 2008) el CCR y el DDS ya no son librerías específicas de MRDS, si no que se instalan en la GAC global de Windows. Por lo tanto, las referencias de CCR y DSS ya no apuntan al directorio bin de MRDS, sino a la GAC (Global Assembly Cache) de Windows.
En cualquier caso ejecuta el DssProjectMigration y a ver si te funciona a la primera! En caso contrario, puedes comentar aquí qué te falla, por si es algo que hayamos visto ya y sepamos solucionar facilmente.
-The type 'MicrodoftDss.Core.IDssSerializable' is defined in an assembly that is not referenced.You must add a reference to assembly 'DssBase, Version=1.5.507.0, culture=neutral, PublicKeyToken =31bf3856ad364e35'.
En mi proyecto hago referencia a Microsoft.Dss.Base version 2.0.913.0, pero tras darme este error hago referencia a Dss.Base version 1.5.507.0 también y vuelvo a ejecutar el proyecto. En este caso ya no me aparece un sólo error, sino 54 errores.
Tienes alguna idea de que puede ser? Gracias de antemano y perdona las molestias.
The administrator has disabled public write access. Please, register to participate in the
forum.
Raúl
Moderator Moderator
Posts: 591
Karma: 10
Re:Pasar proyecto de la versión 1.5 a la MRDS 2008 - 2009/03/10 22:52Hola, supongo que el problema es que tienes las dos versiones de DSS instaladas en el equipo. Asegurate que en las referencias de tu proyecto sólo tienes las versiones nuevas y no haces referencia a nada de la 1.5. Cuando instalas MRDS 2008, el CCR y el DSS ya no se instalan como parte de Robotics Dev. Studio, sino que se instalan directamente en Windows como CCR and DSS Toolkit 2008. Puedes probar a quitar todas las referencias que tengas ahora y añadirlas de nuevo seleccionando la GAC (y no el directorio bin de MSRS). Asegurate que no tienes ninguna referencia antigua.
Prueba también limpiando completamente el proyecto y volviendo a generar..
Otra opción si te sigue fallando es que desinstales la versión antigua de MSRS, con lo cual te asegurarás que no hay referencia a las versiones antiguas.
Y de momento no se me ocurre que más podrías hacer... Raúl Arrabales Moreno. conscious-robots.com/raul
The administrator has disabled public write access. Please, register to participate in the
forum.
jonymegripo
User Gold Boarder
Posts: 48
Karma: 3
Re:Pasar proyecto de la versión 1.5 a la MRDS 2008 - 2009/04/20 21:31Hola Raúl seguí tus pasos y el proyecto me compila bien, pero cuando lo ejecuto me da un error de ejecución. Creo que puede ser un problema de referencias porque de código no he tocado nada y en la versión antigua me funciona todo bien.
He mirado todas las referencias y no consigo corregirlo, te lo adjunto por si tu puedes hecharle un vistazo y encontrar el fallo.
Muchas gracias y perdona las molestias,pero es que no se me ocurre nada.
The administrator has disabled public write access. Please, register to participate in the
forum.
Raúl
Moderator Moderator
Posts: 591
Karma: 10
Re:Pasar proyecto de la versión 1.5 a la MRDS 2008 - 2009/04/24 14:58Hola, he migrado el proyecto a MRDS 2008 y .NET Framework 3.5 y compila bien después de actualizar algunas referencias (tienes referencias cruzadas entre el servicio sena y senadifferentialdrive (sobraba una).
A mi, en Robotics Developer Studio 2008 Academic Edition no me da ningún error de ejecución (probablemente puedas descargarlo gratuitamente como estudiante de universidad con tu cuenta de MSDNAA - Academic Alliance).
Lo que he visto es que la pobre silla sale disparada como un cohete cada vez que inicio la simulación porque tienes puesto el láser más abajo de las ruedas, con lo que el conjunto no puede ser estable:
En la imagen señalo al entidad hija del láser.. Que supongo debería estar bastante más arriba. Desde luego por encima de las ruedas para que no comprometa la estabilidad de la silla y por supuesto para que las medidas de telemetría sean válidas.
Voy a ver si puedo ajustar la posición mirando tu código. No sé si esto sería la razón del error que te da a ti, pero de momento yo no veo otro problema con el código..Raúl Arrabales Moreno. conscious-robots.com/raul
The administrator has disabled public write access. Please, register to participate in the
forum.
Raúl
Moderator Moderator
Posts: 591
Karma: 10
Re:Pasar proyecto de la versión 1.5 a la MRDS 2008 - 2009/04/24 15:12Por ejemplo haciendo esto la silla ya queda en pié y la puedo controlar bien por el entorno (aunque patina bastante, supongo que por los parámetros de fricción que usas). Del error que comentabas no hay señales...
Code:
//CREACION DEL LASER
private LaserRangeFinderEntity CreacionLaser()
{
// Create a Laser Range Finder Entity .
// Place it 30cm above base CenterofMass.
LaserRangeFinderEntity laser = new LaserRangeFinderEntity (
// new Pose(new Vector3(0, 0.32f, -0.34f)));
new Pose(new Vector3(0, -0.50f, 0)));