saved work

This commit is contained in:
Ruixiang Du
2020-04-01 13:15:22 +08:00
parent f8572d13cc
commit 8237c9e71e

View File

@@ -1,22 +1,18 @@
# SDK for AgileX Scout Mobile Base
# Weston Robot Platform SDK
Copyright (c) 2019 [WestonRobot](https://www.westonrobot.com/)
## Introduction
This software packages provides a C++ interface to communicate with the Scout mobile base, for sending commands to the robot and acquiring the latest robot state. The SDK works on both x86 and ARM platforms.
**Supported platforms**
* Scout skid-steer mobile base
* Hunter ackerman mobile base
Generally, you only need to instantiate an object of "class ScoutBase", then use the object to programmatically control the robot. Internally, class ScoutBase manages two background threads, one to process CAN/UART messages of the robot state and accordingly update state variables in the ScoutState data structure, and the other to maintain a 50Hz loop and send the latest command to the robot base. User can iteratively perform tasks in the main thread and check the robot state or set control commands.
This software packages provides a C++ interface to communicate with the mobile platforms from the Weston Robot, for sending commands to the robot and acquiring the latest robot state. The SDK works on both x86 and ARM platforms.
Refer to "src/apps/scout_demo" for an example.
Generally, you only need to instantiate an object of the robot base class (such as ScoutBase), then use the object to programmatically control the robot. Internally, the base class manages two background threads, one to process CAN/UART messages of the robot state and accordingly update state variables in the robot state data structure, and the other to maintain a 50Hz loop and send the latest command to the robot base. User can iteratively perform tasks in the main thread and check the robot state or set control commands.
## Package Structure
* apps: demo to illustrate how to use the SDK, scout_monitor is a TUI application to monitor states of Scout
* async_io: manages raw data communication with robot
* scout_sdk/scout_protocol: encoding and decoding of Scout UART/CAN protocols
* scout_sdk/scout_base: interface to send command to robot and receive robot state
* unit_tests: for unit tests only (not required otherwise)
Refer to "src/apps" for examples.
## Setup CAN-To-USB adapter