【发布时间】:2017-01-02 10:09:26
【问题描述】:
我将编写 Windows 应用程序(用于商业用途),它将发送/接收和跟踪 CANopen 消息。
问题是我不知道此应用的用户将使用哪些设备。 目前我有一个要求是只支持 USB-CAN 设备。 但是有很多此类设备的供应商,每个人都有其他 api/library/dll 来使用他们的设备。
(顺便说一句,问题是因为我必须使用 Windows。 据我所知,Linux 是 SocketCAN,一切都更加标准化:-()
我不知道应该使用哪个库。你能给我推荐一些东西吗? 当然,这个库应该支持尽可能多的供应商(和驱动程序)。 第二个要求是这个库应该编译成 IL 或者我可以在我的 C# 应用程序中使用这个库。
我做了一些小研究:
- 最受欢迎的是 CAN Festival,但它是废弃的项目,但有一些分叉。
- .NET 有 CANopen 但仅支持 PEAK 设备且状态为 prealpha
- Python 的 CANopen 支持更多设备,但状态也是 alpha,我不知道我是否可以在我的 c# 应用程序中使用这个库。也许当我使用 IronPython 时。
- 我还找到了这个库:http://www.emtas.de/en/allgemein/csharpapi。它是商业的,但如果支持许多设备,我可以购买它。有人用过吗??
【问题讨论】: