example showing how to connect to the robot with ArRobotConnectorOne of the simplest ARIA programs possible: Connects with ArRobotConnector, waits 3 seconds doing nothing, then exits.
This program will work either with the MobileSim simulator or on a real robot's onboard computer. (Or use -remoteHost to connect to a wireless ethernet-serial bridge.)
#include "Aria.h"
int main(int argc, char **argv)
{
{
{
}
}
{
}
robot.
comInt(ArCommands::JOYINFO, 0);
return 0;
}
double getVel(void) const
Gets the current translational velocity of the robot.
Definition: ArRobot.h:330
bool connectRobot(void)
Sets up the robot then connects it.
Definition: ArRobotConnector.cpp:405
void stopRunning(bool doDisconnect=true)
Stops the robot from doing any more processing.
Definition: ArRobot.cpp:340
void loadDefaultArguments(int positon=1)
Adds args from default files and environmental variables.
Definition: ArArgumentParser.cpp:736
@ Terse
Use terse logging.
Definition: ArLog.h:61
double getBatteryVoltage(void) const
Gets the battery voltage of the robot (normalized to 12 volt system)
Definition: ArRobot.h:374
bool comInt(unsigned char command, short int argument)
Sends a command to the robot with an int for argument.
Definition: ArRobot.cpp:5634
Connect to robot or simulator based on program command line parameters.
Definition: ArRobotConnector.h:80
double getTh(void) const
Gets the global angular position ("theta") of the robot.
Definition: ArRobot.h:316
static void exit(int exitCode=0)
Shutdown all Aria processes/threads, call exit callbacks, and exit the program.
Definition: Aria.cpp:367
static void log(LogLevel level, const char *str,...)
Log a message, with formatting and variable number of arguments.
Definition: ArLog.cpp:93
static void init(SigHandleMethod method=SIGHANDLE_THREAD, bool initSockets=true, bool sigHandleExitNotShutdown=true)
Initialize Aria global data struture and perform OS-specific initialization, including adding OS sign...
Definition: Aria.cpp:128
bool checkHelpAndWarnUnparsed(unsigned int numArgsOkay=0)
Checks for the help strings and warns about unparsed arguments.
Definition: ArArgumentParser.cpp:843
Central class for communicating with and operating the robot.
Definition: ArRobot.h:82
Parse and store program command-line arguments for use by other ARIA classes.
Definition: ArArgumentParser.h:64
static void logOptions(void)
Logs all the options for the program (Calls all the callbacks added with addLogOptionsCB())
Definition: Aria.cpp:794
void runAsync(bool stopRunIfNotConnected, bool runNonThreadedPacketReader=false)
Starts the instance to do processing in its own new thread.
Definition: ArRobot.cpp:301
int unlock()
Unlock the robot instance.
Definition: ArRobot.h:1272
static bool parseArgs(void)
Parses the arguments for the program (calls all the callbacks added with addParseArgsCB())
Definition: Aria.cpp:759
static void sleep(unsigned int ms)
Sleep for the given number of milliseconds.
Definition: ariaUtil.cpp:151
double getX(void) const
Gets the global X position of the robot.
Definition: ArRobot.h:310
@ Normal
Use normal logging.
Definition: ArLog.h:62
double getY(void) const
Gets the global Y position of the robot.
Definition: ArRobot.h:313
int lock()
Lock the robot instance.
Definition: ArRobot.h:1268
WaitState waitForRunExit(unsigned int msecs=0)
Suspend calling thread until the ArRobot run loop has exited.
Definition: ArRobot.cpp:2923