Noticias:

¿Has Leído las Normas de HispaLUG? LEER AHORA

Menú Principal

Consulta

Iniciado por Dearbast, 21 de Octubre de 2008, 19:25:23 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Dearbast

Hola...sabios de Mindstorms. Quisiera hacerles una consulta. Tengo dos situaciones a las que no les encuentro la vuelta. Trabajo con RCX y con RIS
1º - Cómo hago para que el robot camine por la pista blanca y pare cuando lea el sensor de luz la cinta negra. Yo se que quizá sea elemental para Uds. pero les aseguro que para mi no. Usé varias opciones, pero nada...
2º - Un RCX le manda mensaje a otro. Bien. Pero necesito que el programa se vuelva a ejecutar si el RCX le vuelve a mandar el mensaje. El RCX emisor funciona bien y manda los mensajes, pero el RCX receptor lo ejecuta una sola vez.
Nuevamente, mil gracias al que me pueda orientar un poquito en lo que no estoy haciendo o lo que estoy haciendo mal.

Jetro

Cita de: Dearbast en 21 de Octubre de 2008, 19:25:23 PM
Hola...sabios de Mindstorms. Quisiera hacerles una consulta. Tengo dos situaciones a las que no les encuentro la vuelta. Trabajo con RCX y con RIS
1º - Cómo hago para que el robot camine por la pista blanca y pare cuando lea el sensor de luz la cinta negra. Yo se que quizá sea elemental para Uds. pero les aseguro que para mi no. Usé varias opciones, pero nada...
¿cómo lo intentaste?
Para dar una idea de un programa muy básico, coloca en la columna principal los comandos necesarios para que el robot se mueva por el área blanco.
Saca un bloque de sensor de luz y colócalo a la derecha de la columna principal. Para saber el valor que le tienes que asignar al sensor de luz, colócalo sobre la raya negra y pulsa el botón negro del RCX tantas veces hasta que aparece una flecha debajo del puerto donde tienes colocado el sensor de luz. Apunta el valor que aparece en pantalla. A ese valor réstale un poco (prueba con distintos valores) para que se hay un poco más de luz o no ve bien el negro por la razón que sea aún lo reconozca.
Debajo del bloque del sensor de luz, coloca los bloques que hacen que se pare el robot

Citar
2º - Un RCX le manda mensaje a otro. Bien. Pero necesito que el programa se vuelva a ejecutar si el RCX le vuelve a mandar el mensaje. El RCX emisor funciona bien y manda los mensajes, pero el RCX receptor lo ejecuta una sola vez.
Nuevamente, mil gracias al que me pueda orientar un poquito en lo que no estoy haciendo o lo que estoy haciendo mal.
¿Donde has colocado el bloque para recibir el mensaje? Está en la pila principal o en un lado como te he dicho que deberías poner el bloque de sensor de luz?

Dearbast

Gracias Jetro por tu respuesta. Con respecto a la parte del sensor, te comento que hago los cambios que me sugerís y te cuento.
En relación a recibir mensaje, te digo que la opción "recibir mensaje" se coloca sola no en la pila principal (que queda solamente con el icono que muestra el nombre del programa) sino al costado, como el sensor de luz. Y es abajo de "recibir mensaje" donde coloco todo lo que quiero que pase cuando recibe el mensaje. Así funciona muy bien, pero si el emisor le vuelve a enviar el mensaje, resulta que el receptor no vuelve a ejecutar el mensaje. Algo hago mal. Es como que funciona una sola vez. Si apago el RCX y lo vuelvo a prender en el mismo programa, se vuelve a ejecutar bien. Es decir funciona 1 sola vez.
Te saludo muy agradecida

Jetro

Adjunta el programa (añadiendole la extensión .txt) y le echaré un vistazo.

Dearbast

Lo hago a la brevedad. Gracias

Dearbast

Aquí estoy enviando en formato txt el archivo hecho en RIS. Te recuerdo que lo que quiero que haga es que tras recibir el mensaje avance hasta que lea la cinta negra.
Mil gracias por tu tiempo.
Dearbast

Dearbast

Aquí agrego una imagen del programa. Mil gracias

Dearbast

Perdón, me olvidé de aclarar que quisiera que cada vez que se le manda el mensaje ejecute el programa sin necesidad de apagar el RCX y volver a hacer Run. (quiero que camine parando en cada línea negra que encuentra y que al recibir de nuevo el mensaje vuelva a avanzar hasta la proxima linea negra)
No se si es posible. Mil gracias.

Jetro

Espero poder mirarlo hoy..

Dearbast

Estimado Jetro: Pudiste ver algo?
Muchas gracias. Dearbast

Jetro

La pereza me puede... ::)
Solo tengo el RIS instalado en un viejo portátil sin batería que no tiene más que un Windows 98 y un montón de programas relacionados con el RCX (además de Spybotics y Cybermaster) y... Bueno, ya basta de excusas. Creo que la solución puede ser de lo más sencilla: prueba incluir un bloque "Clear IR MEssage" al final de le columna del sensor IR. A ver si eso resuelve el problema.

Dearbast

Gracias Jetro...pruebo y te digo

Dearbast

¡¡¡FUNCIONÓ!!! Querido Jetro, era eso... Faltaba que le agregara el bloque de eliminar el mensaje que recibía para que pudiera volver a reaccionar cada vez que se le mandara el mensaje.
Mi agradecimiento eterno.... ;D
Dearbast

Jetro

Ya pondrás unas fotos y una descripción del proyecto cuando hayas terminado :guino:

Dearbast

Hola Jetro y demás Lugnáticos...
Bueno, aquí va una pequeña descripción de lo que quería hacer: Al leer oscuridad en dos lugares diferentes (con 2 sensores de luz) quería que el RCX mandara un mensaje a un roverboot que hiciera algo cuando recibiera el mensaje, que luego parara y si volvía a recibir el mensaje volviera a ejecutar el movimiento. Para esto fué fundamental el colocar el bloque de Clear mensaje para habilitar al robot a recibir nuevamente la señal de RCX emisor.
Puse fotos en la galeria.
Cualquier otra pregunta sobre este proyecto, les dejo mi mail dearbast@hotmail.com
Gracias...nos leemos... :D