robot.h File Reference

Fonctions for communicating with robot. More...

`#include <stdio.h>`
`#include <unistd.h>`
`#include <fcntl.h>`
`#include <termios.h>`
`#include <string.h>`
`#include <stdlib.h>`
`#include "definitions.h"`
Include dependency graph for robot.h:

Go to the source code of this file.

## Classes

struct | MessageToRobot

## Macros

#define | serialPort "/dev/ttyS0"

## Functions

int | open_communication_robot (const char *path=serialPort)
| Ouvre la communication avec le robot. More...
int | close_communication_robot (void)
| Ferme la communication avec le robot. More...
int | send_command_to_robot (char cmd, const char *arg=NULL)
| Envoi une commande au robot et attends sa réponse. More...

## Detailed Description

Fonctions for communicating with robot.

Author
  L.Senaneuch

Version
  1.0

Date
  06/06/2017

Definition in file robot.h.

## Macro Definition Documentation

## serialPort

#define serialPort "/dev/ttyS0"

Definition at line 40 of file robot.h.

## Function Documentation

## close_communication_robot()

int close_communication_robot | ( | void |  | ) |

Ferme la communication avec le robot.

Ferme le descripteur de fichier du port serie contrôlant le robot.

Returns
  Retourne -1 en cas d'erreur ou 0 en cas de fermeture effectué

## open_communication_robot()

int open_communication_robot | ( | const char * | path = `serialPort` | ) |

Ouvre la communication avec le robot.

Ouvre le serial port passé en paramétre. Par defaut cette fonction ouvre le port ttySO connecté au module xbee.

Parameters

  path | Chaine de caractère contenant le path du port serie à ouvrir.

Returns
  Return -1 si l'ouverture c'est mal passé et 0 si le port est ouvert.

## send_command_to_robot()

int send_command_to_robot | ( | char | cmd,
|  | const char * | arg = `NULL`
| ) |  |

Envoi une commande au robot et attends sa réponse.

Envoi une commande au robot en ajoutant le checksum et lis la réponse du robot en verifiant le checksum. Le premier paramétre cmd correspond au type de commande ex : PING, SETMOVE ... Le second paramétre *arg correspond aux arguments à la commande ex : SETMOVE, "100" La fonction retourne un code confirmation transmise par le robot (ROBOT_CHEKSUM, ROBOT_ERROR, ROBOT_TIMED_OUT, ROBOT_OK, ROBOT_UKNOW_CMD)

Parameters

  cmd | Entête de la commande
  arg | Argument de la commande

Returns
  Retourne un code confirmation.