Skip to main content

lebai controller python sdk

Project description

lebai-sdk的源代码仓库,可以用于控制乐白机械臂.

OS C++ Python C# Java
Linux Status Status Status TODO
Windows TODO TODO Status TODO

上图中显示TODO的地方表示该平台该语言的实现还存在问题,没有完全测试通过,后续会陆续完成。

SDK使用需要乐白机械臂的控制器软件版本大于等于3.1.5,您可以在机械臂WEB界面左上方查看当前版本号.

SDK在线文档中包含了lua语言的接口(本项目参考了lua语言进行接口设置,但是本项目和lua语言的接口无直接关系)

包管理直接安装

python

python开发可以直接从PyPI安装.

目前python仅支持linux平台,windows平台还存在问题.

pip install pylebai

目前支持的Python版本有

  • 3.6
  • 3.7
  • 3.8
  • 3.9
  • 3.10

python开发可以直接从PyPI安装.

.net

.net平台开发可以直接从Nuget安装,使用C#进行开发.

dotnet add package lebai

目前支持的.net版本有

  • 6.0

从源代码构建安装

Ubuntu&&Debian平台

依赖

  • gcc or clang support c++14
  • cmake >= 3.18
  • swig >= 4.0
  • python3 >= 3.5 (可选,如果需要生成python的接口库)
  • doxygen (可选,如果需要C++文档)
  • jdk, maven(可选,如果需要生成java的接口库)

相对旧的发行版系统cmake和swig版本过低,不能使用,可以通过pip安装较新的版本:

sudo apt install build-essential python3-pip dpkg-dev
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
# 如果需要生成文档,还需要安装doxygen
sudo apt install doxygen graphviz
# 如果需要生成python3的wrapper包
sudo apt install python3-dev python3-setuptools
# 如果需要生成python2的wrapper包
sudo apt install python-dev python-setuptools

编译

# 生成编译配置
cmake -S. -Bbuild -DBUILD_PYTHON=ON -DBUILD_DEB=ON -DBUILD_TESTING=OFF 
# 编译
cmake --build build
# 运行单元测试
cmake --build build --target test
## 生成DEB包
cd build
cpack

Windows平台 Visual Studio

依赖

  • Visual Studio(C++ Support)
  • CMake >= 3.18
  • python3 >= 3.5 (可选,如果需要生成python的接口库)

安装python库时,选择 Download debug binaries

在Visual Studio中载入CMake工程,即可以生成构建运行测试等.

目前Windows平台下python的binding部分还存在问题无法工作.

编译选项

  • BUILD_PYTHON: 是否编译python3接口 默认为OFF
  • BUILD_PYTHON2: 是否编译python2接口 默认为OFF
  • PYTHONPATH: PYTHON的安装目录
  • BUILD_DOTNET: 是否编译.NET接口 默认为OFF(请先安装好.NET的开发环境)
  • BUILD_JAVA: 是否编译JAVA接口 默认为OFF(请先安装好JDK和Maven)
  • BUILD_TESTING: 是否编译C++测试程序 默认为ON
  • TEST_ROBOT_IP: 测试程序的机器人IP地址,正确的设置该值用于单元测试 默认为127.0.0.1
  • BUILD_EXAMPLES: 是否编译示例程序 默认为ON
  • BUILD_DEB: 是否生成DEB包的构建 默认为OFF
  • ENABLE_TSAN: 编译是否启用Thread sanitizer检查 默认为OFF

使用

您可以通过docs目录下的文档了解更多各语言的信息.

Python

build目录下会生成python的whl包,可以直接使用:

cd build/python/dist
## 安装
pip3 install pylebai-xxx.whl
### XXX取决于您的sdk版本,python版本,操作系统平台.
## 卸载
pip3 uninstall pylebai

第三方库

lebai-sdk使用如下第三方软件:

软件名 协议 官方网站
Asio Boost https://think-async.com/Asio/
rapidjson MIT https://rapidjson.org/
websocketpp BSD https://www.zaphoyd.com/websocketpp
mdns public domain https://github.com/mjansson/mdns

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

pylebai-1.1.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded PyPy manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64

pylebai-1.1.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64

File details

Details for the file pylebai-1.1.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 ee8e850da2d847811ceb6d0d4d18a89c25f844edb8b006e5c481e855d6149405
MD5 82e8fc51a10a24ce35dbc61025789b45
BLAKE2b-256 5bd602d4d176099540c5b1e5a5266afc91075fe848cbe3042e35a4fc51980b41

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 9b39a19e8578306ba76995b0530bb2b5309c2fb58f45aac4dc1d7350b4fdcafc
MD5 e7f21e9ae622e1f34a155017ad4222d4
BLAKE2b-256 b03ed0648492cf2073adb5753dcf25b59467622b624097765b20ec99b39a4a2c

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 81eba65c80c06b356997416406b22b1296ee5afc9776f76f10895b53cf1d658e
MD5 0efbcb2d8bb85c666f5882a53f102eee
BLAKE2b-256 a058cb4595114e3b3b593109e486e8350d0a97058b6119915cb882421675643b

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 368b9d91bf1665f512e99d69a95eecbc7d79d2a9af3a6af2c81dda45194b56c8
MD5 308cdcaa1cbfa45598917ef1191fa28a
BLAKE2b-256 7f0bdfb9f018c7aa37375bb9756dc24045ab9bee4c5e249bd8bcf0669241def0

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 e3571ffdcb2a858aaa824d652fdb54551a324aff0d8ff35cbba0206bb04bb282
MD5 9ada3888e0abfd24504c9b41a77d8d54
BLAKE2b-256 bacde5ebe2864e5daec52559e4b2236c0fa6e7b30865ab45c85b603e4b2902a9

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 3fd29dc9cb1b1a420a59b9a54f3c9e01757153adae51f7ca71825c802c7ac047
MD5 de44ee50a3a6964224abd55b55f2c935
BLAKE2b-256 16ac465e9b9de25f2df040bd62c4099917cdea40b108889fd7b109fed7452085

See more details on using hashes here.

File details

Details for the file pylebai-1.1.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for pylebai-1.1.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 c1560052dc2f4992bf512f115647f089656de51d7039aed3d472a7e72243a208
MD5 acea5cc32020e4fe510f294a5c1adf54
BLAKE2b-256 ec9386e2459757c9dfe87ff1c5302b12ae59fedf9f103f11fc22b67c217e966f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page