miércoles, 24 de julio de 2013

Programando el robot NXT en C++


Vamos a crear un programa en C++ para que el LEGO mida la distancia con los objetos que tiene a su alrededor. Esto implica crear un objeto para el sensor de ultrasonidos y que la conexión a crear sea por red, en lugar de Bluetooth.

El código que implementa la solución es el siguiente:

#include
#include
#include
#include
#include "nxt.h"
//using namespace std;

//set up the NXT
Connection *connection = new Nxt_network();
Sensor *sensor1 = new Sonar(IN_2, connection, METRIC);
int main()
{
  try{
    cout << "Try to connect to the NXT" << endl;
    Server_settings settings;
    connection->connect(1000, "127.0.0.1", settings); //connect to localhost
    cout << "Connected" << endl;
    while(!_kbhit()){//hit a key to end
      cout << sensor1->print() << endl; //returns a string can be used on all sensor types
      cout << sensor1->read() << endl;
    }
    connection->disconnect();
  }
  catch (Nxt_exception& e){
    //some error occurred - print it out
    cout << e.what() << endl;
    cout << "error code: " << e.error_code() << endl;
    cout << "error type: " << e.error_type() << endl;
    cout << e.who() << endl;
    connection->disconnect();
  }
  system("pause");
  return 0;
}

0 comentarios: