Empezamos por lo mas sencillo seleccionar velocidad y mover el telescopio:
Comandos de selección de velocidad:
- :RC# Seleccionar velocidad de Guiado (guide).
- :RG# Seleccionar velocidad de Centrado (center).
- :RM# Seleccionar velocidad de Búsqueda.(find).
- :RS# Seleccionar velocidad de Desplazamiento.(slew).
- :Me# Mueve Telescopio al Este a velocidad seleccionada.
- :Mn# Mueve Telescopio al Norte a velocidad seleccionada.
- :Ms# Mueve Telescopio al Sur a velocidad seleccionada.
- :Mw# Mueve Telescopio al Oeste a velocidad seleccionada.
- :MS# Mueve hasta Objeto / Coordenadas Destino.
- Devuelve:
- 0 si el desplazamiento es posible
- 1<cadena># Object Below Horizon
- 2<scadena># Object Below Higher
%%{ machine LX200; write data; }%% //Definicion comandos %%{ Rate ="R" [GCMS]; Move = "M" [enswS]; main := ':' (Rate|Move) '#'; # Initialize and execute. write init; write exec; }%%
Traducida a lenguaje natural:
- Rate:
- Acepto cualquier cadena que empieza por la letra 'R'seguida de una 'G' o 'C' o'M' o 'S' .
- Move:
- Acepto cualquier cadena que empieza por la letra 'M'seguida de una 'e' o 'n' o 's' o'w' o 'S' .
- main:(Regla principal)
- Acepto cualquier comando Rate o Move si van precedidos de ':' y les sigue '#';
Y aquí el grafo de la máquina de estado finito que reconoce el lenguaje.
Veremos como en la próxima entrada.
No hay comentarios:
Publicar un comentario