2 个不稳定版本
0.2.0 | 2020 年 11 月 3 日 |
---|---|
0.1.0 | 2020 年 6 月 16 日 |
#6 in #ethercat
用于 ethercat
94KB
975 行
EtherCAT ESI
用 Rust 编写的处理 EtherCAT 从机信息 (ESI) 的库。
许可证
版权所有 2020 slowtec GmbH
MIT/Apache-2.0
lib.rs
:
EtherCAT 从机信息 (ESI)。
EtherCAT 从机信息 (ESI) 文件是一个 XML 文件,一些 EtherCAT 主堆栈使用它来配置从机并生成网络描述文件。然而,其主要目的是描述数据与从机共享的方式,包括它使用的同步管理器以及每个同步管理器中的 PDO。
官方 XML 架构可以在 EtherCAT 从机信息 (ESI) 架构 中找到(见 EtherCATInfo.xsd
)。
示例
use ethercat_esi::EtherCatInfo;
use std::{
env,
fs::File,
io::{self, prelude::*},
};
fn main() -> io::Result<()> {
match env::args().nth(1) {
None => {
eprintln!("Missing filename");
}
Some(file_name) => {
let mut xml_file = File::open(file_name)?;
let mut xml_string = String::new();
xml_file.read_to_string(&mut xml_string)?;
let info = EtherCatInfo::from_xml_str(&xml_string)?;
println!("{:#?}", info);
}
}
Ok(())
}
依赖项
~1.7–2.2MB
~51K SLoC