An asynchronous, non-blocking ADS client for communication with Beckhoff controller. This ADS client implementation requires the presence of a TC1000 ADS router on the system.
The ADS client requires the presence of the tokio runtime. The examples denoted with _async are called from a main function denoted with with tokios #[tokio::main] macro which causes the provision of the runtime. The examples without _async provides the runtime manually.
The provided examples rely on the related TwinCAT 3 project in TC3_Sample_Project. The AmsNetId of the target system in the examples must be adapted accordingly.
Build and execute the examples with cargo run --example <example-name>
.
Following examples are available:
- notification
- notification_async
- read_state
- read_state_async
- read_symbol
- read_symbol_async
- read_symbol_async_inf
- write_symbol
- write_symbol_async
- write_control
- write_control_async
- read_device_info
- read_device_info_async
Build the documentation with:
cargo doc
Afterwards, the documentation can be found under /target/doc/ads_client/index.html.