电子说
在工业控制、智能小区等 CAN 网络领域中,PCI - 98XX 系列通用 CAN 卡扮演着重要的角色。今天,我们就来深入了解这款高性能的 CAN 接口卡。
文件下载:PCI-9840I.pdf
致远电子的 PCI - 98XX 系列通用 CAN 卡,兼容 PCI 2.2 规范,具备 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 通道数,分别有 1 路、2 路和 4 路。它们的工作电压均由 PCI 接口供电(+5V,300mA),频率范围为 33M PCI 数据总线,符合 PCI ver. 2.2(32 - bit)标准,功耗≤5W,隔离电压为 DC 2500V 或者 AC 1700V,输出端子为 DB9 针式。CAN 波特率可编程设置在 5Kbps - 1Mbps 之间,数据接收能力为 14000 帧/秒/通道,数据发送能力为 4000 帧/秒/通道。支持 Windows、Linux 和 VxWorks 5.5 等操作系统,尺寸均为 130×90mm,存储温度和工作温度范围为 - 40°C - +85°C,环境湿度要求在 10% - 90%(无凝露),且必须远离腐蚀性气体。
PCI - 98XX 接口卡通过 DB - 9 针型连接器与 CAN - bus 网络连接,其引脚信号定义符合 DeviceNet 和 CANopen 标准。同时,还可通过选配的 DB9_OPEN5 转换器,将 DB - 9 连接器的信号转至 5 引脚的 OPEN5 连接器。
每路 CAN 通道都内建 120Ω 终端电阻,可通过连接/断开 JP 来设定是否使用集成 120Ω 终端电阻,出厂时跳线器默认连接状态。若对应 CAN 通道位于一个 CAN 网络的端点,需将对应通道的跳线器连接或接上约 120Ω 终端电阻。若网络上其他节点使用不同的收发器,终端电阻须另外计算。
PCI - 98XX 系列接口卡属于静电敏感产品,操作时需采取防静电措施。硬件安装和拆卸都应在 PC 断电状态下进行,且该系列接口卡的中断和 I/O 地址由 BIOS 自动分配。安装步骤包括关闭计算机电源、打开计算机盖子、插入空闲的 PCI 插槽、拧紧固定板卡的螺钉、打开计算机电源。需注意,严禁带电插拔 PCI 接口卡,安装时也不能用手触摸器件。
以在 Windows XP 下安装 PCI - 9840I 通讯卡的驱动为例,安装前需确保板卡已正确安装到 PC 机的 PCI 槽上。首先,选择“从列表或指定位置安装”并点击“下一步”;接着,标记“在搜索中包括这个位置”,点击“浏览”指定驱动程序安装文件的位置后继续下一步;等待安装向导安装驱动程序;安装完成后点击“完成”按钮。此时,系统会提示新硬件已安装并可以使用。
可通过“开始→控制面板→系统”,选择“硬件”标签,点击“设备管理器”按钮来检查设备的安装情况。若设备安装成功,在“设备管理器”窗口中应能看到“ZLGCAN”设备类下的“PCI - 9840I PCICAN Communication Card”。
同样通过“开始→控制面板→系统”,选择“硬件”标签,点击“设备管理器”按钮。将鼠标移动到“PCI - 9840I PCICAN Communication Card”上,单击鼠标右键,在弹出菜单上选择“卸载”按钮,在确认对话框中点击“确定”,PCI - 9840I 的驱动将会被卸载。
可能是设备未安装、未可靠插入 PCI 插槽或主板没有可用中断分配给设备。可将设备安装到空的 PCI 插槽,重新插入到 32 位 PCI 插槽或尝试其他插槽,进入 BIOS 修改配置确保 PCI/PnP 中断可用。
需检查线缆连接、线缆或板卡是否有问题、终端电阻是否连接正确、总线上节点数量以及 API 调用是否正确。
对于非智能通讯卡,不建议用于同时多通道的大数据量传输,建议多个通道同时工作时数据流量不超过 1000 帧/秒,计算机性能较好时可适当提高。同时,较低波特率可减少系统资源占用,CAN 系统设计时应保证总线占用率不超过 60 - 70%。
上位机软件提供常用波特率设置值,若需使用其他波特率,需参照 SJA1000 数据手册自行计算,且要根据 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 帧软件接收缓冲区,软件接收缓冲数据溢出时会复位 CAN 总线。接收函数的 Wait 参数适合多线程编程,可指定超时返回时间。当 Wait 为 0 时立即返回当前成功读取到的帧数,非 0 时等待超时或接收到数据返回,为 0xFFFFFFFF 时无限等待。需注意在主线程中调用且 Wait 非 0 可能导致应用程序暂时失去响应,查询方式接收时一般应把 Wait 设为 0。
在 Tools 目录下提供 CANTest 软件可对多种 CAN 接口卡进行通讯测试。
PCI - 98XX 系列接口卡虽电气部件寿命长,但不正确环境可能加速老化,建议每 6 个月到一年至少检查一次,不利环境下应更频繁检查。检查内容包括电源供应、周围环境(温度、湿度、灰尘等)、安装接线等,若遇到问题可参考手册中的检查与维护表格,如仍无法解决可联系广州致远电子有限公司。
CAN2.0B 标准帧信息为 11 个字节,包括信息和数据部分,前 3 个字节为信息部分;扩展帧信息为 13 个字节,前 5 个字节为信息部分。不同帧格式中,字节 1 表示帧信息,包含帧格式、帧类型和数据长度等信息,后续字节分别表示报文识别码和实际数据(远程帧部分无效)。
手册给出了不同序号对应的 Baudrate(Kbps)以及晶振频率为 16MHz 时的 BTR0 和 BTR1 的十六进制值,其中带*号的是 CIA 协会推荐的波特率。
PCI - 98XX 系列工业级 PCI 接口通用 CAN 卡以其高性能、高可靠性和广泛的适用性,在 CAN 网络领域有着出色的表现。通过了解其功能、硬件特性、驱动安装和常见问题解决方法等,工程师们能更好地使用这款产品,提升项目的开发效率和质量。大家在使用过程中是否也遇到过一些独特的问题呢?欢迎在评论区分享交流。
致远电子还在手册后提供了销售与服务网络信息,方便用户在需要时联系各地分公司或办事处。在使用产品过程中,若对手册内容的时效性有疑问,可访问致远电子官方网站或联系工作人员获取最新信息。
全部0条评论
快来发表一下你的评论吧 !