ubuntu下研华工控机CAN卡驱动的安装与测试

ubuntu下研华工控机CAN卡驱动的安装

  • 0 关于ubuntu系统与内核版本是否需要匹配的问题
  • 1 CAN卡驱动安装——PCI-1680——advSocketCAN_V1.0.0.0
  • 2 CAN卡通讯测试
    • 2.1 引脚介绍
    • 2.2 测试程序—直接基于can0与can1
    • 2.3 测试程序—直接基于can0与广成科技的USBCAN-II Pro V502CAN
  • 3 PCI-1680安装包下载
  • 4 USBCAN-II Pro V502CAN通讯分析仪介绍
  • 5 知识拓展——串口的波特率和can通讯的波特率
  • 6 虚拟串口的安装与使用

0 关于ubuntu系统与内核版本是否需要匹配的问题

0.0 文本README要求ubuntu18.04 与内核版本kernel version进行匹配——ubuntu18.04可对应4.15.0
(1)旧版本advSocketCAN_V1.0.0.0 (该版本研华已经不推荐使用) 在最新内核下5.3.0-62-generic可以编译成功,但是该版本下设置波特率与端口号均需要基于linux相关命令进行,研华官网没有提供该相关配置函数来写入我们的相关程序中,而且每次重新启动电脑,can0与can1均处于down状态,每次都需要重新配置,才能让其进行正常的收发。这样很麻烦,而相关资料又很少,没有找到对其内置函数的介绍。
针对该问题的解决方案:
**_将命令加入到开机自启动项中,使得每次开机后不用重新up CAN0 与 CAN 1,并自动设置好波特率500k,**参考 博客具体操作如下:
ubuntu下研华工控机CAN卡驱动的安装与测试_第1张图片
2)创建/etc/rc.local文件

touch /etc/rc.local 

3)赋可执行权限

chmod 755 /etc/rc.local 

4 )编辑文件 /etc/rc.local ,将命令添加到里边
ubuntu下研华工控机CAN卡驱动的安装与测试_第2张图片
5)执行reboot重启系统,然后查看test.log

(2)新版本advcan_source_v2.0.19.0,该版本下波特率和端口号均由研华工控机提供了内置函数,推荐使用该版本,看着功能也比较齐全,但是其缺点在于需要进行降核处理(因为该PCI-1680CAN卡官网是针对的4.9以前的,新版本与旧版本有个参数传递数量不同,会导致新版本下降核失败)——降核方法参考博客.
此处有如下疑问:
——1)降核成功后下载的是4.15.0,启动后查看却是4.15.8
——2)波特率设置一直没有匹配起来(设置时是基于baud.c文件进行设置的),但是感觉问题是一直在这里,所以导致can通信接口数据收发失败,起初能发不能收,但后边再启动就是既不能发也不能收了,原因尚未找到。
相关程序说明如下:
1)#define STDDEV "can0"用于设置端口号是can0还是can1,此处修改即可
ubuntu下研华工控机CAN卡驱动的安装与测试_第3张图片
2) int newbaud = 500;用于设置波特率的大小ubuntu下研华工控机CAN卡驱动的安装与测试_第4张图片

0.1 命令查看ubuntu18.04(发行版本)下的内核版本:

现系统内核
ubuntu下研华工控机CAN卡驱动的安装与测试_第5张图片
在这里插入图片描述
在这里插入图片描述
0.2 当前socket can研华官网已经不推荐使用,后期可能会出现运行不稳定的稳定,目前推荐使用的版本是source版本,以下驱动安装与测试均是基于advSocketCAN_V1.0.0.0
其是基于linux与c的系统函数,端口号与波特率均是基于命令进行设置
0.3 advcan_source_v2.0.19.0版本说明
其可以在程序中内设波特率和端口号——can0或can1,该编程方式是由研华提供的。
make失败——推测原因是内核版本不匹配问题,因此需要进行降核处理,ubuntu18.04对应内核版本为4.15.0
ubuntu下研华工控机CAN卡驱动的安装与测试_第6张图片

1 CAN卡驱动安装——PCI-1680——advSocketCAN_V1.0.0.0

官网链接.
PCI-1680U 双端口CAN通用PCI总线通信卡,含隔离保护功能
1.1 解压缩

tar -zxvf advSocketcan_vx.x.x.x.tar.gz

1.2 进入工作目录

cd /workdir/advsocketcan/driver/
make
sudo make install

ubuntu下研华工控机CAN卡驱动的安装与测试_第7张图片

gedit /etc/modules

**add the following content

       lp
	   can
	   can_dev
	   can_raw
       advsocketcan
	   advcan_sja1000**
   ip link list

ubuntu下研华工控机CAN卡驱动的安装与测试_第8张图片
can0与can1都是处于down状态,需要让其up起来才能使用
设置can0与can1的波特率,二者只要保持一致就行

sudo ip link set can0 up type can bitrate 500000
sudo ip link set can1 up type can bitrate 500000
   ip link list

此时发现can0与can1都是处于up状态就可以了
ubuntu下研华工控机CAN卡驱动的安装与测试_第9张图片
上述步骤执行完后,起初没有成功,后来又运行了以下几步才可以,原因没有细查

sudo ip link set can0 down
sudo ip link set can0 up
ip -details -statistics link show can0

ubuntu下研华工控机CAN卡驱动的安装与测试_第10张图片

2 CAN卡通讯测试

2.1 引脚介绍

ubuntu下研华工控机CAN卡驱动的安装与测试_第11张图片
研华工控机中安装了两个CAN卡——CAN A与CAN B,测试中将两个CAN卡的CAN_L分别连接,CAN_H分别进行连接

== 注意事项:==
在这里插入图片描述

2.2 测试程序—直接基于can0与can1

分别将can0与can1的2号引脚与2号引脚,7号引脚与7号引脚相连接,并在can 0的2号引脚与7号引脚间并联一个120欧的电阻==(此处应用中尚未并联电阻,直接测试的,还需了解下并联的意义)==
广成科技的CAN分析仪已经内置了该电阻,因此不需要进行连接
1 直接基于命令测试
ubuntu下研华工控机CAN卡驱动的安装与测试_第12张图片
2 基于下载的包中的example进行测试——基于版本advSocketCAN_V1.0.0.0
ubuntu下研华工控机CAN卡驱动的安装与测试_第13张图片

2.3 测试程序—直接基于can0与广成科技的USBCAN-II Pro V502CAN

自己基于2号引脚与7号引脚可制作一个母头与研华工控机上的公头进行连接,引出两根线,再分别与广成科技的USBCAN-II Pro V502CAN进行连接,其中白色线为7号引脚——CAN-H,蓝色线为2号引脚——CAN-L
注意:EcanTools与PCI-1680的CAN的波特率均设置为500k,二者必须一致,否则通讯失败
EcanTools软件使用说明:启动后选择V5,设置波特率500k,然后打开设备即可
ubuntu下研华工控机CAN卡驱动的安装与测试_第14张图片
ubuntu下研华工控机CAN卡驱动的安装与测试_第15张图片

(1)ubuntu系统下执行以下读命令,EcanTools中写入数据
ubuntu下研华工控机CAN卡驱动的安装与测试_第16张图片
(2)ubuntu系统下执行以下发送数据命令,EcanTools中读取该数据
在这里插入图片描述

3 PCI-1680安装包下载

链接: 官网安装包.
其中,socket包已经不进行维护与更新,现在多用第2个source包
本文用的包是更早版本的socket包,发现也可以使用就没有进行更新,后期有问题再更改吧

4 USBCAN-II Pro V502CAN通讯分析仪介绍

ubuntu下研华工控机CAN卡驱动的安装与测试_第17张图片
USBCAN-II Pro 内容解读如下:
(1)PC基于USB接口向CAN分析仪供电,此时PWR与SYS灯亮
(2)CAN分析仪6个插拔接线端子介绍ubuntu下研华工控机CAN卡驱动的安装与测试_第18张图片
(3)终端电阻接入
ubuntu下研华工控机CAN卡驱动的安装与测试_第19张图片
(4)指示灯的作用
ubuntu下研华工控机CAN卡驱动的安装与测试_第20张图片
(5)需要用到的软件——ECANtools

链接: 该软件及驱动下载.
该链接来自百度网盘,提取码: vbhw

链接:
浅谈CAN通讯协议博客参考.
USBCAN-II Pro 用户手册解析.
沈阳广成科技有限公司官网.

5 知识拓展——串口的波特率和can通讯的波特率

ubuntu下研华工控机CAN卡驱动的安装与测试_第21张图片
链接:
简单说一下串口的波特率和can通讯的波特率.

6 虚拟串口的安装与使用

sudo apt-get install -y socat
socat -d -d pty,raw,echo=0 pty,raw,echo=0

ubuntu下研华工控机CAN卡驱动的安装与测试_第22张图片
在这里插入图片描述
在这里插入图片描述
ubuntu下研华工控机CAN卡驱动的安装与测试_第23张图片

你可能感兴趣的:(ubunntu下软件安装)