Author Archives: admin

Comandi e scorciatoie

  1. File/Open map
    • Ctrl-O
    • Si sceglie la mappa del mondo con il quale interagirà il robot durante l’esecuzione del programma.
  2. File/Save map as…
    • Ctrl-Shift-M
    • Salva la mappa attuale, si può scegliere il formato 3D Collada model (per Google Sketchup e stampanti 3D)
  3. File/Generate map…
    • Ctrl-Shift-G
    • Genera una mappa a scelta tra
      1. Open Area
      2. Maze
      3. Islands
      4. Cave
      5. Dungeon
      6. Villa
      7. Forest
      8. Text (un messaggio a scelta)
      9. Mandelbrot Fractal (con i faretti)
      10. Simplex Noise Islands
  4. File/Map editor
    • Apre una pagina HTML locale con la quale è possibile progettare nuove mappe in modo interattivo!
  5. File/Settings
    • General: lingua e cartelle di default per i programmi, le mappe e le immagini
    • View/My robot: le immagini per il robot
    • View/Monitor skin: le immagini per le mappe
    • Editor: il tema per l’editor e altro…
    • Sound: abilita/disabilita i suoni
  6. Edit/Insert…
    • Permette di inserire, direttamente nella finestra del programma, una qualsiasi delle istruzioni del linguaggio ROBO
  7. View/Show grid
    • Ctrl-G
    • Appare una sottile griglia.
    • Permette di controllare meglio le geometrie quando si progetta una mappa…
  8. View/Show radar
    • Ctrl-W
    • Nell’angolo in alto a destra appare una versione rimpicciolita e trasparente del mondo.
    • Permette di avere un colpo d’occhio su tutto il mondo.
  9. View/Show stats
    • Ctrl-J
    • Rende visibile un pannello in alto a destra con le statistiche dell’esecuzione
    • Numero di passi, caselle colorate di bianco, …
  10. View/Track robot
    • Ctrl-T
    • Il robot rimane fermo al centro della finestra mentre tutto il resto del mondo si muove…
    • Permette di non perdere d’occhio il robot.
  11. View/Sound
    • Abilita/disabilita i suoni
  12. F8
    • Abilita/disabilita le nuvole in movimento durante l’esecuzione
  13. F9
    • Abilita/disabilita la visibilità delle coordinate.
    • Funziona se la griglia è visibile.
  14. Ctrl+SPAZIO
    • Completa la parola riservata che stai scrivendo.
    • Se non è unica propone un elenco delle possibili scelte.
  15. Ctrl-Alt-F
    • Indenta correttamente il codice, con le parentesi graffe aperte a capo
  16. Ctrl-Shift-F
    • Indenta correttamente il codice, con le parentesi graffe aperte alla fine della riga
  17. Ctrl-Scroll (mouse)
    1. Aumenta/diminuisce la dimensione del codice
  18. Clic centrale del mouse
    • Sposta il robot alla cella selezionata
    • Se il telecomando è attivo.

Scrivere ACCIAIO

Per scrivere il messaggio CIAO è necessario scrivere le lettere A, C, I e O in un certo ordine.

Per semplificare il codice introduci un sottoprogramma per ogni lettera

Per scrivere il messaggio ACCIAIO è necessario

  • spostarsi a sinistra…
  • scrivere due volte le lettere A, C, I e una volta la O

Note

  1. Per scrivere i messaggi CIAO e ACCIAIO ho realizzato un sottoprogramma per ogni lettera diversa: A, C, I e O.
  2. Hai notato le somiglianze tra le lettere?
    • la stessa altezza 3
    • la stessa larghezza 2, tranne la I
    • ROBO inizia la lettera dall’angolo in basso a sinistra e con direzione NORD
    • e finisce un passo a destra della lettera e con direzione NORD.

Esercizi

  1. Scrivi altre parole con le stesse lettere: CACIO, ACACIA, CACCIA, CACICCO, ACCIACCO, …
  2. Scrivi frasi: A CACCIA CACCI I CACI, …
  3. Aumenta lo spazio tra le lettere
  4. Scrivi in verticale
  5. … in diagonale

Se hai già provato gli esercizi per scrivere CIAO e ACCIAIO allora passa ai seguenti

  1. aggiungi, a piacere, delle lettere che non richiedono curve (E, F, H, L, P, S, T, U)
  2. scrivi frasi significative utilizzando le nuove lettere:
    • PASSA LA PALLA
    • ALLE OTTO FACCIO FESTA A CASA TUA
    • il tuo nome, aggiungendo le eventuali lettere mancanti
    • il tuo cognome, …
  3. realizza tutte le lettere maiuscole
    • … minuscole
    • … le 10 cifre
    • … i segni d’interpunzione
  4. scrivi parole/frasi significative

Per rendere più semplice il compito

  • aumenta le dimensioni della mappa openArea.map
  • progetta lettere più grandi
  • simula le curve con delle scalette…
  • ridimensiona il mondo prima dell’esecuzione del codice.

Scrivere CIAO

Scrive il messaggio CIAO con poche operazioni…


Esercizi

  1. Alterna i colori
  2. Aumenta le dimensioni delle lettere.

La soluzione con direzioni assolute east(), south(), west(), north()

Si semplifica il codice ma è difficilmente riciclabile.

Write your name

Il robot può lasciare una traccia colorata e realizzare semplici disegni.

Per esempio la lettera A maiuscola!


IDE

L’ambiente di sviluppo integrato di RoboMind è dotato delle comuni operazioni apri, salva, …, copia, incolla, … e di funzionalità specifiche per la stesura e l’esecuzione dei programmi.


Barra degli strumenti

Riporta le icone dei comandi più frequenti


Pannelli

La finestra dell’IDE è divisa in 3 pannelli ridimensionabili: programma, mondo, esecuzione.


Programma

Un editor, a sinistra, con il quale scrivere il programma.
Sono presenti i numeri di rigale barre di scorrimentouna lente d’ingrandimento.
Durante l’esecuzione del programma evidenzia la singola riga in esecuzione.


Mondo

La finestra più grande, a destra, dove è possibile seguire le vicissitudini del robot durante l’esecuzione.
La visualizzazione del mondo può essere modificata intervenendo con il mouse:

  • la rotellina del mouse permette di zoomare
  • trascinando su un punto si sposta il punto di vista.

Esecuzione

La finestra di esecuzione, in basso, contiene

  • una barra degli strumenti con i pulsanti play, next, pause, stop e uno slider per cambiare la velocità di esecuzione
  • un’area di testo dove il robot comunica all’utente eventuali messaggi di errore
  • una linea dove visualizza le singole istruzioni durante l’esecuzione.

Esempi di mappe

Un perimetro di mattoni con all’interno

  • il robot
  • un faro
  • un tratto orizzontale bianco in (2,2)
  • un punto nero in (2,3)


La mappa ufficiale openarea.map

Una versione più robusta… con muri doppi


Uno spazio a forma di rombo?


Diverse geometrie con le mura, di dimensioni crescenti

Maze runner

ROBO si muove autonomamente all’interno di un labirinto alla ricerca del faretto.


Sembra difficile ma il trucco consiste nel seguire il muro a destra finché è possibile, altrimenti andare dritto, altrimenti andare a sinistra…


Più semplice?


Esercizi

  1. Aggiungi il pennello, paintWhite, in modo che rimanga una traccia del percorso effettuato.
  2. Riesci a modificare la mappa in modo che ROBO si perda?

RIEPILOGO

and Operatore logico
backward(…)
break Interruzione della ripetizione
coinFlip()
east(…) EST
eatUp() Mangia il faro
end Interruzione del programma
false Costante logica
forward(…)
frontIsBeacon() ?
frontIsBlack() ?
frontIsClear() ?
frontIsObstacle() ?
frontIsWhite() ?
goto(…,…) Porta il robot alla posizione specificata
if(…) {…} Selezione singola
if(…) {…} else {…} Selezione doppia
left()
leftIsBeacon() ?
leftIsBlack() ?
leftIsClear() ?
leftIsObstacle() ?
leftIsWhite() ?
north(…) NORD
not Operatore logico
paintBlack()
paintWhite()
pickUp()
procedure … (…) {…}
putDown()
repeat(…) {…} Ripetizione
repeatWhile(…) {…} Ripetizione condizionata
return Interruzione della procedura
right()
rightIsBlack() ?
rightIsClear() ?
rightIsObstacle() ?
rightIsBeacon() ?
rightIsWhite() ?
stopPainting()
south(…) SUD
west(…) OVEST

Installazione e personalizzazione

Questa pagina fa riferimento alle versioni precedenti alla 4.0
Sconsiglio la localizzazione in italiano…


Segui i passi

  1. Scarica il file di installazione RoboMindSetup….exe dalla sezione Download del sito ufficiale
  2. Esegui il file
  3. Alla richiesta della lingua, di default appare arabo, scegli inglese!
  4. Posizionati nella cartella dove hai installato RoboMind, probabilmente è C:Programmi (x86)RoboMind e scegli su cosa vuoi intervenire…
    • le etichette dell’ambiente di sviluppo
    • le parole chiave del linguaggio di programmazione
    • i temi
    • i file di HELP

IDE

Per cambiare le etichette dell’ambiente di sviluppo, segui i passi

  1. Copia il file …miscLabelsBundle_en.properties con nome LabelsBundle_it.properties
  2. Traduci le etichette dei menu, i messaggi di errore, …
  3. Apri con un editor il file …miscPreferences.properties
  4. Modifica la voce Language=en in Language=it

Oppure…

  1. Scarica il file rm.zip
  2. Estrai i file presenti LabelsBundle_it.propertiesPreferences.properties
  3. Salvali in …misc

ROBO

Il linguaggio di programmazione utilizza parole chiave in inglese.
Se vuoi puoi tradurle in italiano.

  1. Copia il file …miscRLD_default_en.properties e dagli il nome RLD_default_it.properties
  2. Traduci le parole chiave del linguaggio
  3. Apri con un editor il file …miscPreferences.properties
  4. Modifica la voce RoboLanguageDefinition=RLD_default_en in RoboLanguageDefinition=RLD_default_it
  5. Modifica la voce DefaultScriptDir=scripts/en in DefaultScriptDir=scripts/it
  6. Crea la cartella …scriptsit
  7. Da adesso salva i programmi in …scriptsit piuttosto che in …scriptsen

Temi

Si tratta di creare delle immagini di qualità e utilizzarle al posto delle originali…

  1. Copia la cartella …gfxskinsdefaultSkin come nuovoTema
  2. Modifica le immagini contenute (mantenendo dimensioni, formato e struttura)
  3. Apri con un editor il file …miscPreferences.properties
  4. Modifica la voce Skin=defaultSkin in Skin=nuovoTema

 Guida in linea

La guida in linea, richiamabile con F1, contiene 5 pagine .htm in inglese

  1. Copia la cartella …mischelp_en come help_it
  2. Traduci il testo contenuto nelle pagine…

Operazioni logiche

Le prime 6 righe della mappa contengono coppie di bit.
Il bianco corrisponde a vero.


ROBO deve calcolare l’OR logico di coppie di bit.

Il robot osserva i bit e in caso di risultato vero traccia una linea bianca a destra.

Si può fare meglio?


ROBO deve calcolare l’AND logico di ogni coppia di bit a sinistra.