电子说
在工业控制、智能小区等 CAN 网络领域的数据采集与处理中,一款高性能的 CAN 接口卡至关重要。致远电子的 PCI - 98XX 系列通用 CAN 卡,凭借其出色的性能和广泛的适用性,成为众多工程师的首选。今天,我们就来深入了解一下这款产品。
文件下载:PCI-9810I.pdf
PCI - 98XX 系列是兼容 PCI 2.2 规范的高性能 CAN 接口卡,带有 1 - 4 路 CAN 接口。它能让 PC 机通过 PCI 接口连接至 CAN 网络,广泛应用于实验室、工业控制、智能小区等领域。该系列接口卡采用工业级设计,具备完全电气隔离且 EMI/EMC 性能增强的 CAN - bus 通讯接口,可保护计算机避免地环流影响,提高系统在恶劣环境下的可靠性。此外,它还提供 ZOPC 服务器软件,支持在多种组态环境和 NI 的 LabView 测控软件中进行 CAN - bus 产品项目开发,并且配有多种操作系统下的驱动程序和详细应用例程。
PCI - 98XX 系列有多款产品,如 PCI - 9810I、PCI - 9820I、PCI - 9840I、PCI - 9820 等。它们在 CAN 通道数、工作电压、频率范围、功耗、隔离电压、输出端子、CAN 波特率、数据接收与发送能力、支持的系统驱动、尺寸、存储与工作温度、环境湿度和环境要求等方面有一定的共性,当然不同型号的 CAN 通道数有所区别。例如 PCI - 9810I 为 1 路,PCI - 9820I 和 PCI - 9820 为 2 路,PCI - 9840I 为 4 路。
该接口卡通过 DB - 9 针型连接器与实际的 CAN - bus 网络进行连接,引脚信号定义符合 DeviceNet 和 CANopen 标准。同时,还可以通过选配的 DB9_OPEN5 转换器,将 DB - 9 连接器的信号转至 5 引脚的 OPEN5 连接器。
每路 CAN 通道都内建 120Ω 终端电阻,可通过连接/断开 JP 来设定对应的 CAN 通道是否使用集成 120Ω 终端电阻。出厂时,跳线器默认连接,即使用集成 120Ω 终端电阻。若对应 CAN 通道位于一个 CAN 网络的端点,需将对应通道的跳线器连接,或者在对应 CAN 通道的 CAN_H 和 CAN_L 之间接上一个约 120Ω 终端电阻。如果网络上其他节点使用不同的收发器,终端电阻须另外计算。
PCI - 98XX 系列接口卡是静电敏感产品,操作时要采取防护措施。硬件安装和拆卸都需在 PC 断电状态下进行,且该系列接口卡的中断和 I/O 地址由 BIOS 自动分配,安装驱动程序前板卡必须事先安装到 PCI 槽上。安装步骤包括关闭计算机电源、打开计算机盖子、插入空闲的 PCI 插槽、拧紧固定板卡的螺钉、打开计算机电源等。需要注意的是,严禁带电插拔 PCI 接口卡,安装时也不能用手触摸器件,防止静电损坏。
以在 Windows XP 下安装 PCI - 9840I 通讯卡的驱动为例,安装前要保证板卡已正确安装到 PC 机的 PCI 槽上。具体步骤如下:
可通过“开始→控制面板→系统”,选择“硬件”标签,点击“设备管理器”按钮来检查安装情况。若设备安装成功,在“设备管理器”窗口中应能看到“ZLGCAN”设备类下的“PCI - 9840I PCICAN Communication Card”。
同样通过“开始→控制面板→系统”,选择“硬件”标签,点击“设备管理器”按钮,将鼠标移到“PCI - 9840I PCICAN Communication Card”上,单击鼠标右键,在弹出菜单上选择“卸载”按钮,在“确认设备删除”对话框中点击“确定”,即可卸载驱动。
可能是设备未安装、未可靠插入 PCI 插槽、主板没有可用中断分配给设备等原因。可将设备安装到空的 PCI 插槽,重新插入到 32 位 PCI 插槽或尝试其他插槽,进入 BIOS 修改配置确保 PCI/PnP 中断可用。
需检查线缆连接是否正确、线缆或板卡是否有问题、终端电阻连接是否正确、总线上节点数量以及 API 调用是否正确等。
对于非智能通讯卡,不建议用于同时多通道的大数据量传输,建议多个通道同时工作时数据流量不超过 1000 帧/秒,计算机性能较好时可适当提高。同时,降低 CAN 波特率可减少系统资源占用,设计 CAN 系统时应保证总线占用率不超过 60 - 70%。
上位机软件提供常用波特率设置值,若要使用其他波特率,需参照 SJA1000 数据手册自行计算,且要根据 PCI - 98XX 通讯卡的 CAN 控制器 16MHz 时钟频率进行计算。
系统进入待机或睡眠状态会有影响,可能导致硬件接收缓冲溢出错误。使用时应禁止系统的待机和睡眠功能。
错误分为函数调用错误和 CAN - bus 通讯错误。函数调用错误一般由参数错误或对未打开设备操作引起,可使用 Win32 函数 GetLastError 进行错误分析;CAN - bus 通讯错误一般由 CAN 网络或用户设置不当引起,大部分错误已在设备驱动中简单处理,如需深入分析可调用 VCI_ReadCANStatus 函数。数据溢出中断错误可能由软件接收缓冲区溢出或硬件接收缓冲区溢出导致,需优化应用程序、更改通讯策略、提升计算机性能或协调其余节点降低发送速度。
PCI - 98XX 系列允许共享方式打开设备,但应尽量避免在不同进程中共享同一个端口。VCI_OpenDevice 和 VCI_CloseDevice 函数一般在应用程序初始化和退出时只调用一次。关闭设备时,若当前端口不再使用,应先调用 VCI_ResetCAN 函数使当前端口脱离 CAN 总线。
PCI - 98XX 系列不提供直接操作中断的接口,可使用多线程(或多任务),启动新线程在线程中循环调用 VCI_Receive 函数查询接收缓冲。
设备驱动提供 16 帧软件发送缓冲 FIFO,每次调用最多发送 16 帧数据,发送速度由计算机软硬件性能决定,连续发送速度一般在 2000 - 4000 帧/秒之间。发送速度过快可能使远端接收设备数据溢出,可适当添加延时降低发送速度。发送有超时限制,用户可编程实现重发,系统设计时要保证 CAN 总线占用不超过总线容量的 60 - 70%。
设备驱动提供 130000 帧软件接收缓冲区,接收函数提供 Wait 参数用于多线程编程。当 Wait 为 0 时立即返回当前成功读取到的帧数,非 0 时按指定超时时间返回,为 0xFFFFFFFF 时无限等待。若在主线程中调用且 Wait 非 0 可能导致应用程序暂时性失去响应,查询方式接收时一般把 Wait 设为 0。
在 Tools 目录下提供 CANTest 软件可对多种 CAN 接口卡进行通讯测试。
PCI - 98XX 系列接口卡的主要电气部件是半导体元件,虽寿命长但在不正确环境下可能加速老化。建议每 6 个月到一年至少检查一次,不利环境下应增加检查频率。维护时需检查电源供应、周围环境(温度、湿度、灰尘等)、安装接线等,确保各项指标符合要求,若遇到问题可参考手册中的检查与维护表格,仍无法解决可联系广州致远电子有限公司。
分为标准帧和扩展帧。标准帧信息为 11 个字节,包括 3 字节信息部分和 8 字节数据部分;扩展帧信息为 13 个字节,包括 5 字节信息部分和 8 字节数据部分。帧信息中包含帧格式、帧类型、数据长度等信息,不同帧格式下报文识别码位数不同。
提供了不同波特率对应的 BTR0 和 BTR1 的十六进制值,其中带 * 号的是 CIA 协会推荐的波特率。
PCI - 98XX 系列工业级 PCI 接口通用 CAN 卡凭借其丰富的功能、良好的性能和广泛的适用性,在工业控制等领域有着巨大的应用潜力。但在实际使用过程中,我们也需要关注安装、驱动、维护等方面的问题,以确保其稳定可靠地运行。大家在使用这款产品时有没有遇到过一些独特的问题呢?欢迎在评论区分享交流。
全部0条评论
快来发表一下你的评论吧 !