manual d'usuari del lsloader

13
Docu Vers Auto Revi L Ma ument: LS sió: 0.0 or: FEC isat: JCD/O SLo anual Loader Ma OSC oad l de l anual de l’u der ’usua usuari ari

Upload: la-salle

Post on 29-Jun-2015

278 views

Category:

Documents


9 download

DESCRIPTION

Manual d'usuari del LSLoader per l'LSMaker

TRANSCRIPT

Page 1: Manual d'usuari del LSLoader

Docu

Vers

Auto

Revi

LMa

ument: LS

sió: 0.0

or: FEC

isat: JCD/O

SLoanual

Loader Ma

OSC

oadl de l

anual de l’u

der’usua

usuari

rari

Page 2: Manual d'usuari del LSLoader

LSMaker

Pàgina 2

Introducció

El programa LSLoader és el company permanent i indispensable del programador del robot LSMaker. Amb ell, el programador pot carregar nous programes a la memòria del microprocessador a la vegada que interactua i depura el seu software gracies al comportament com a “consola” que ofereix l’LSLoader entre altres funcionalitats.

Aquest és l’aspecte que té el programa un cop hem connectat el cable USB al robot i l’hem activat amb el botó ON:

A la finestra interior del programa hi apareixen els missatges que el programador decideix imprimir a consola, cosa que pot fer amb la rutina LS_USB_printf i també amb LS_USB_putc. A mesura que les línies van baixant, la consola amaga cap amunt les línies que ja s’han imprès i la barra de desplaçament vertical es va fent més petita. Sempre que es vulgui, la barra de desplaçament vertical permet accedir a les línies “antigues”, així com la barra horitzontal permet veure els caràcters que s’imprimeixen més enllà del límit dret de la finestra. També podem introduir informació al programa que hi ha carregat, ja que tot el que escrivim pel teclat serà recollit per les rutines LS_USB_gets i LS_USB_getc. La consola d’un microprocessador és una eina vital per a depurar els programes i resulta especialment útil poder gravar les diferents sessions en un arxiu de text per analitzar-les amb detalls. El menú Arxiu està dedicat, justament, a això.

La connexió amb el robot s’aconsegueix fent que el port USB es comporti com un canal de comunicació sèrie RS232, molt popular fins a principis del l’any 2000 per a connectar-hi mòdems, però avui dedicat a comunicacions industrials (RS485). En qualsevol cas, resulta molt atractiu simular un canal de comunicacions d’aquest estil ja que es pot fer compatible amb Linux, Mac i Windows molt fàcilment. Aquests canals de comunicacions s’anomenen COM1, COM2, COM3, etc.

Page 3: Manual d'usuari del LSLoader

LSMaker

Pàgina 3

El programa LSLoader està constantment interrogant els ports USB de l’ordinador a la recerca d’un canal de comunicació activat. Mentre no en trobi cap, les opcions del menú i de la barra d’eines romanen inactives, tal i com es mostra a la figura

Quan el programa detecta un com, el menú i la barra d’eines s’activen i si cliquem sobre l’opció USB, el programa es mostra quins COMs estan actius.

A la figura apareixen el COM1, COM3 i COM5. Normalment, COM1 i COM2 són canals “de debò” que estan presents a la placa base del PC, per bé que no tenen perquè tenir el connector a la part del darrera. Val a dir que és difícil que els portàtils en tinguin cap d’aquests ports.

El COM3 i el COM5 de la figura corresponent a un LSMaker i a un control remot, ja que tots dos usen la mateixa tecnologia. Lamentablement, cada PC enumera els COMs en funció de com estiguin connectats a la placa base, per la qual cosa no podem assegurar si el COM3 es el robot o bé es el comandament.

Page 4: Manual d'usuari del LSLoader

LSMaker

Pàgina 4

En qualsevol cas, és evident que cal “connectar” el programa LSLoader al COM on hi ha el robot si volem fer alguna cosa de profit. Per fer-ho i fer-ho amb agilitat, n’hi ha prou a seleccionar un COM de la llista i provocar un reset al robot (F6 o el botó de la barra d’eines). Si el com és el correcte, el robot es reinicia, els seus leds s’engeguen i s’apaguen i a la finestra interior apareix el missatge inicial. També es pot provocar un reset amb una pulsació curta del botó OFF. En cas d’estar ben connectats, el resultat serà el següent:

A partir d’ara ja estem en condicions d‘utilitzar totes les prestacions que ofereix el programa LSLoader.

Reset

Page 5: Manual d'usuari del LSLoader

LSMaker

Pàgina 5

Menú ARXIU Aquest menú està dedicat a les sessions de consola, és a dir, fan referència al contingut de la finestra interior del LSLoader

Nova.

Esborra el contingut de la consola.

Guarda

Grava el contingut de la consola en un arxiu de text. El primer cop que activem aquesta opció, el programa obre un diàleg on demana amb quin nom i a quina carpeta es guardarà la sessió. Si tornem a activar aquesta opció, el programa recorda aquest nom i no el torna a demanar.

Guarda com

Grava el contingut de la consola en un arxiu de text, tot obrint un diàleg on demana amb quin nom i a quina carpeta es guardarà la sessió.

Page 6: Manual d'usuari del LSLoader

LSMaker

Pàgina 6

Imprimir.

Imprimeix el contingut de la sessió, després d’obrir el diàleg estàndard de selecció d’impressió propi del sistema operatiu.

Vista preliminar

Obra una finestra amb una presentació de com quedarà la impressió

Configurar impressora

Activa el diàleg estàndard de configuració de la impressora, propi del sistema operatiu

Sortir.

El programa acaba l’execució. Es pot aconseguir el mateix efecte prement Alt i F4 simultàniament.

Page 7: Manual d'usuari del LSLoader

LSMaker

Pàgina 7

Menú VEURE En aquest menú podem activar o desactivar la barra d’eines i la barra d’estat. La barra d’eines ofereix l’accés a les opcions del menú textual d’una manera molt còmoda i la barra d’estat explica el que fan les icones de la barra d’eines. Totes dues opcions són molt útils i com que el programa disposa de molta zona útil, no veiem quina necessitat hi ha de desactivar-les. Tanmateix, és una possibilitat que tenen tots els programes que segueixen l’estàndard CUA (common user access) i per això l’hem respectat.

A la figura següent es mostra la barra d’eines i les funcions que hi ha associades a cada icona

A l’apartat Operacions es descriu el funcionament de cada eina

Telecàrrega

Connecta

Reset

Calibració Baixa fitxer A

Baixa fitxer B

Baixa fitxer C Puja fitxer B

Puja fitxer A

Page 8: Manual d'usuari del LSLoader

LSMaker

Pàgina 8

Menú OPERACIONS Aquest és el menú que interactua amb el robot, sempre que el cable USB estigui connectat al robot, aquest estigui activat i en el menú USB hagin seleccionat el COM corresponent. De no ser així, en activar alguna d’aquestes opcions apareix el missatge següent

Cal·libració (F2).

En prémer aquesta opció el programa mostra el diàleg següent:

L’Slider horitzontal permet equilibrar la tracció dels dos motors per tal de compensar la diferència de pressió entre les dues rodes davanteres. Cal obligar el robot a avançar en línia recta i observar si té tendència a anar cap a l’esquerra o cap a la dreta i

Page 9: Manual d'usuari del LSLoader

LSMaker

Pàgina 9

moure l’Slider en sentit contrari. Es tracta de provar un petit desplaçament, prémer el botó Acceptar comprovar el funcionament lineal i així successivament. El valor que ve de fàbrica és el punt central.

El quadre de diàleg etiquetat com “Propietari” enregistra el nom que apareix en el missatge de benvinguda que apareix a la consola i a l’LCD. El valor que ve de fàbrica és “La Salle”.

Els canvis que es facin en aquest menú només tenen efecte quan es prem el botó Acceptar i no tenen efecte si es prem Cancelar.

Reset (F6).

Provoca un reset a l’LSMaker.

Telecàrrega (F8).

Aquesta opció permet carregar un programa en el robot. En primer lloc, apareix un diàleg de selecció de fitxer com ara

L’únic tipus de fitxer que es capaç de processar l’LSLoader és el format Hexadecimal Intel, amb extensió .HEX. Aquest és el fitxer que genera l’entorn de programació MPLAB de Microchip quan es compila el Workspace amb l’opció Make. El fitxer hexadecimal té el mateix nom que el Workspace.

Un cop triat el fitxer Hexa apareix el següent diàleg:

Page 10: Manual d'usuari del LSLoader

LSMaker

Pàgina 10

Si es prem Acceptar comença el procés de telecàrrega que es reflecteix en l’avanç de la barra de progrés. El procés de telecarregar la API amb el programa inicial triga, aproximadament, vint-i-cinc segons.

Connecta

Amb aquesta opció indiquem al LSMaker quin és l’adreça MAC del control remot al que ha d’obeir. Aquesta adreça MAC està escrita en una etiqueta enganxada a la part posterior de la placa del control remot. Introduïm l’adreça en aquest diàleg i premem Acceptar.

A partir d’ara, el robot escoltarà les ordres de moviment d’aquest control remot i ignorarà qualsevol trama que no provingui d’aquesta adreça.

Baixa el fitxer A.

El programador pot fer que l’LSMaker registri valors en un fitxer igual que ho permet el sistema operatiu Windows o Linux o qualsevol altre sistema operatiu. Però en un sistema operatiu podem donar un nom arbitrari al fitxer i no hi ha cap limitació aparent en el nombre de fitxers que un programa pot crear. Tanmateix, i per raons de capacitat, a l’LSMaker només es poden crear dos fitxers i, a sobre, s’han de dir “NVOL_STREAM_A” i “NVOL_STREAM_A”. A l’LSLoader els anomenarem Fitxer A i Fitxer B respectivament

Les rutines que el programador pot emprar per escriure o llegir d’aquests dos fitxers estan explicades al manual de software, dins de la secció NVOL (no volàtil) de la API. A continuació es presenta un resum d’aquestes funcions:

int LS_NVOL_Open(char *Nom, char *Mode); // Pre: Nom pot ser NVOL_STREAM_A o NVOL_STREAM_B. Mode pot ser "a", "r", o "w"

int LS_NVOL_Read(int HANDLE, char *buffer, unsigned int length); // Pre : HANDLE prové de LS_NVOL_Open // Post: Llegeix el nombre de caracters (length) del fitxer i els posa en buffer.

Page 11: Manual d'usuari del LSLoader

LSMaker

Pàgina 11

int LS_NVOL_Write(int HANDLE, char *buffer, unsigned int length); // Pre : HANDLE prové de LS_NVOL_Open // Post: Escriu el nombre de caracters del buffer (length) en el fitxer

Amb l’opció “Baixa el fitxer A” podem recuperar tot allò que el programa de l’LSMaker hagi enregistrat en el fitxer i dipositar-lo en el disc dur del PC per a poder-lo consultar. Per això, en prémer aquesta opció apareix un diàleg de selecció de fitxer del tipus “Guardar como” que permet determinar el nom i la carpeta del fitxer.

Baixa el fitxer B.

Idèntic a l’operació anterior però per al fitxer NVOL_STREAM_B.

Baixa el fitxer C.

Idèntic a l’operació anterior però per al fitxer de captura de posicions. Aquest és un fitxer de text, separat per comes, que es genera a partir del càlcul de posició que executa l’LSMaker. Cada parell de nombres indica la posició X, Y en centímetres amb un interval de mig segon a partir del moment que s’activa l’adquisició fins que es tanca. Aquest fitxer l’anomenarem, en endavant, Fitxer C.

Hi ha dues maneres d’activar l’adquisició:

a) Per voluntat del programador, cridant la rutina LS_MT_InitTrack

b) Amb el comandament remot, posant-lo mirant a terra i prement un cop el polsador.

L’adquisició finalitza per dues raons

a) Per voluntat del programador, cridant la rutina LS_MT_EndTrack

b) Amb el comandament remot, posant-lo mirant a terra i prement un cop el polsador.

El software que porta de fabrica el robot pinta la lletra A majúscula a la cantonada superior dreta del LCD quan està en el mode d’adquisició.

Per exemple, si activem l’adquisició i premem el botó GPButton, el robot executa un quadrat de 50 cm (o, al menys, ho intenta). Un cop acabat, podem baixar el fitxer amb aquesta opció, guardar-lo on millor ens convingui i obrir-lo amb el full de càlcul Excel (usar la coma com element separador). El resultat seran dues columnes de nombres, com ara:

Page 12: Manual d'usuari del LSLoader

LSMaker

Pàgina 12

I si es seleccionen les dues columnes i s’insereix un gràfic de dispersió, obtindrem el dibuix de la trajectòria calculada:

Atenció: el temps límit d’adquisició és de sis minuts.

Page 13: Manual d'usuari del LSLoader

LSMaker

Pàgina 13

Puja el fitxer A.

A vegades pot resultar interessant modificar el comportament d’un programa sense haver-ne de canviar la seva programació. Per exemple, podem tenir un programa genèric de seguiment de línies que pot seguir diferents estratègies segons que sigui una línia fina o gruixuda o que hi hagi bifurcacions de dos o tres ramals, per exemple. Per no haver de carregar un programa diferent cada vegada, podem inserir les ordres en un fitxer de text, pujar-lo al LSMaker i que el programa carregat el llegeixi i obri en conseqüència.

En activar aquesta opció, es desplega un diàleg estàndard de selecció de fitxer, que serà el que es pujarà a l’LSMaker.

Atenció: el tamany màxim del fitxer que es puja és de 1536 bytes. Si el fitxer origen és més gran, senzillament s’ignorarà la resta de fitxer.

Puja el fitxer B.

Igual que l’opció A.