3个稳定版本
4.7.0 | 2024年6月22日 |
---|---|
4.6.1 | 2023年10月20日 |
#45 in 机器人学
475KB
7K SLoC
Rust zmqRemoteApi
CoppeliaSim的Rust ZeroMQ远程API
运行测试
cargo test
运行示例:确保打开正确的CoppeliaSim场景并运行cargo命令
cargo run --example=simple_test
或许您想查看ZMQ通信日志。有两种日志级别
- 级别1:调试,调试级别您将看到JSON格式的请求
- 级别2:跟踪,跟踪级别您将看到JSON和字节格式的请求
export RUST_LOG="trace"; cargo run --example=simple_test
将C++客户端移植到Rust客户端
RemoteAPIObjects.h有3750行代码,所以为了移植所有功能,我创建了一种c_transpiler。
C++客户端与Rust客户端之间的差异
目前遇到的唯一差异是在
std::vector<uint8_t> getStringSignal(std::string signalName);
Rust中的函数返回一个std::String。我还没有观察到任何函数返回字节块的示例。
// Rust function assing
get_string_signal(signal_name:String)->String
入门指南
创建一个新的Rust项目
cargo new new_project
您可以在cargo.toml中使用git添加此crate
# the branch is the coppelia version
zmq_remote_api = { git = "https://github.com/samuel-cavalcanti/rust_zmqRemoteApi", branch = "CoppeliaSim_4.5.1"}
查看一个简单的示例,了解如何使用此crate。
依赖关系
~5–15MB
~178K SLoC