Statistics
| Branch: | Tag: | Revision:

humotion / examples / meka / src / main.cpp @ fcc5e139

History | View | Annotate | Download (1.405 KB)

1 2be6243f Sebastian Meyer zu Borgsen
#include <stdio.h>
2
#include <humotion/server/server.h>
3
#include <string>
4
#include <iostream>
5
//#include "meka_data_receiver.h"
6
#include "mekajointinterface.h"
7
8
using namespace std;
9
10
int main(int argc, char *argv[]){
11
    /*Property params;
12
    params.fromCommand(argc, argv);
13

14
    if (!params.check("robot")){
15
        fprintf(stderr, "Please specify the name of the robot\n");
16
        fprintf(stderr, "--robot name (e.g. icub or icubSim)\n");
17
        return -1;
18
    }
19

20
    string robotName=params.find("robot").asString().c_str();
21
    string scope="/"+robotName;
22

23
*/
24
25 89374d69 Simon Schulz
    if (argc != 4){
26
        printf("> ERROR: invalid number of parameters passed to server!\n\nusage: %s <humotion base topic> <jointstates topic> <control topic> (example: %s /meka /joint_states /meka_roscontrol/head_position_trajectory_controller/command)\n\n",argv[0],argv[0]);
27
        exit(EXIT_FAILURE);
28
    }
29
30 2be6243f Sebastian Meyer zu Borgsen
    //create humotion interface
31 89374d69 Simon Schulz
    string humotion_scope    = argv[1];
32
    string jointstates_scope = argv[2];
33
    string control_scope     = argv[3];
34
35
36
    MekaJointInterface *jointinterface = new MekaJointInterface(jointstates_scope, control_scope);
37
    humotion::server::Server *humotion_server = new humotion::server::Server(humotion_scope, "ROS", jointinterface);
38 2be6243f Sebastian Meyer zu Borgsen
39 a4795834 Simon Schulz
    //finally run it
40 2be6243f Sebastian Meyer zu Borgsen
    jointinterface->run();
41
42
    while(humotion_server->ok()){
43
        usleep(100000);
44
    }
45
46 dff8ce51 Simon Schulz
    printf("> ros connection died, will exit now\n");
47
48 2be6243f Sebastian Meyer zu Borgsen
    return 0;
49
}