X-Git-Url: https://git.llucax.com/z.facultad/75.68/celdas.git/blobdiff_plain/3614a9b0d6ac477997b3b88d7362494e55538dc3..bf82eb53ad2ee702d3b950555a1e579c47b6a7d5:/trunk/src/main.cpp diff --git a/trunk/src/main.cpp b/trunk/src/main.cpp index a259805..93ad8a6 100644 --- a/trunk/src/main.cpp +++ b/trunk/src/main.cpp @@ -2,39 +2,18 @@ #include "main.h" #include -// -double AvanzarX(CEntorno& e) -{ - avanzo_en_x = true ; - return 0 ; -} - - -double AvanzarY(CEntorno& e) -{ - avanzo_en_y = true ; - return 0 ; -} - - -double AvanzarZ(CEntorno& e) -{ - avanzo_en_z = true ; - return 0 ; -} - - // void CMiEntorno::inicializar() { // Inicializo el Entorno datos.add("robot.avanzo_en_x", 0) ; - datos.add("robot.avanzo_en_y", 0) ; - datos.add("robot.avanzo_en_z", 0) ; + // old datos.add("robot.avanzo_en_y", 0) ; + // old datos.add("robot.avanzo_en_z", 0) ; datos.add("robot.sensor_1", 0) ; datos.add("robot.sensor_2", 0) ; datos.add("robot.sensor_3", 0) ; + datos.add("robot.sensor_4", 0) ; // new } @@ -43,6 +22,7 @@ void CMiEntorno::actualizar() datos.find("robot.sensor_1") = sensor_1 ; datos.find("robot.sensor_2") = sensor_2 ; datos.find("robot.sensor_3") = sensor_3 ; + datos.find("robot.sensor_4") = 20 ; // new datos.find("robot.avanzo_en_x") = avanzo_en_x?1:0 ; datos.find("robot.avanzo_en_y") = avanzo_en_y?1:0 ; @@ -54,16 +34,17 @@ void CMiEntorno::actualizar() // -int main(int argc, char** argv) +int main(int argc, char* argv[]) { // - CMiEntorno e ; + CMiEntorno* e = new CMiEntorno; CSistemaAutonomo a ; - e.inicializar() ; + e->inicializar() ; +/* OLD // Inicializo las teorias - CTeoria t1("Avanzar_X_1", &AvanzarX, 1, 1) ; + CTeoria t1("Avanzar_X_1", "AvanzarX", 1, 1) ; t1.datos_iniciales.add ("robot.sensor_1", 0) ; t1.datos_iniciales.add ("robot.sensor_2", ANY) ; t1.datos_iniciales.add ("robot.sensor_3", ANY) ; @@ -71,13 +52,13 @@ int main(int argc, char** argv) t1.datos_iniciales.add ("robot.avanzo_en_y", ANY) ; t1.datos_iniciales.add ("robot.avanzo_en_z", ANY) ; t1.datos_finales.add ("robot.avanzo_en_x", 1) ; - t1.datos_finales.add ("robot.avanzo_en_y", 0) ; - t1.datos_finales.add ("robot.avanzo_en_z", 0) ; + t1.datos_finales.add ("robot.avanzo_en_y", ANY) ; + t1.datos_finales.add ("robot.avanzo_en_z", ANY) ; t1.datos_finales.add ("robot.sensor_1", ANY) ; t1.datos_finales.add ("robot.sensor_2", ANY) ; t1.datos_finales.add ("robot.sensor_3", ANY) ; - CTeoria t2("Avanzar_Y_1", &AvanzarY, 1, 1) ; + CTeoria t2("Avanzar_Y_1", "AvanzarY", 1, 1) ; t2.datos_iniciales.add ("robot.sensor_1", ANY) ; t2.datos_iniciales.add ("robot.sensor_2", 0) ; t2.datos_iniciales.add ("robot.sensor_3", ANY) ; @@ -91,7 +72,7 @@ int main(int argc, char** argv) t2.datos_finales.add ("robot.sensor_2", ANY) ; t2.datos_finales.add ("robot.sensor_3", ANY) ; - CTeoria t3("Avanzar_Z_1", &AvanzarZ, 1, 1) ; + CTeoria t3("Avanzar_Z_1", "AvanzarZ", 1, 1) ; t3.datos_iniciales.add ("robot.sensor_1", ANY) ; t3.datos_iniciales.add ("robot.sensor_2", ANY) ; t3.datos_iniciales.add ("robot.sensor_3", 0) ; @@ -104,31 +85,65 @@ int main(int argc, char** argv) t3.datos_finales.add ("robot.sensor_1", ANY) ; t3.datos_finales.add ("robot.sensor_2", ANY) ; t3.datos_finales.add ("robot.sensor_3", ANY) ; +*/ + + // Inicializo las teorias + CTeoria t1("Avanzar_X_1", "AvanzarX", 1, 1) ; + t1.datos_iniciales.add ("robot.sensor_1", ANY) ; + t1.datos_iniciales.add ("robot.sensor_2", ANY) ; + t1.datos_iniciales.add ("robot.sensor_3", ANY) ; + t1.datos_iniciales.add ("robot.sensor_4", ANY) ; + t1.datos_iniciales.add ("robot.avanzo_en_x", ANY) ; + t1.datos_finales.add ("robot.avanzo_en_x", ANY) ; + t1.datos_finales.add ("robot.sensor_1", ANY) ; + t1.datos_finales.add ("robot.sensor_2", ANY) ; + t1.datos_finales.add ("robot.sensor_3", ANY) ; + t1.datos_finales.add ("robot.sensor_4", ANY) ; + + // Inicializo las teorias + CTeoria t2("Avanzar_X_2", "AvanzarX", 1, 1) ; + t2.datos_iniciales.add ("robot.sensor_1", ANY) ; + t2.datos_iniciales.add ("robot.sensor_2", ANY) ; + t2.datos_iniciales.add ("robot.sensor_3", ANY) ; + t2.datos_iniciales.add ("robot.sensor_4", ANY) ; + t2.datos_iniciales.add ("robot.avanzo_en_x", ANY) ; + t2.datos_finales.add ("robot.avanzo_en_x", ANY) ; + t2.datos_finales.add ("robot.sensor_1", ANY) ; + t2.datos_finales.add ("robot.sensor_2", ANY) ; + t2.datos_finales.add ("robot.sensor_3", ANY) ; + t2.datos_finales.add ("robot.sensor_4", ANY) ; a.teorias.add(t1.nombre.c_str(), t1) ; a.teorias.add(t2.nombre.c_str(), t2) ; - a.teorias.add(t3.nombre.c_str(), t3) ; + // OLD a.teorias.add(t3.nombre.c_str(), t3) ; // Inicializo el SA - a.p_entorno = (CEntorno*)(&e) ; + delete a.p_entorno; + a.p_entorno = e; // Obtengo un plan double p = 1 ; CIndiceMagico plan ; - CIndiceMagico datos_finales ; + CIndiceMagico datos_finales; + + a.m_datos_finales.add ("robot.avanzo_en_x", 1) ; + a.plan(); + for (unsigned i=0; idatos, datos_finales, plan, p) ; +// a.planificar (a.p_entorno->datos, datos_finales, plan, p) ; - for (unsigned i=0; i