将上位机程序从PC的window系统迁移至Intel NUC的无桌面版ubuntu系统问题记录

将上位机程序从PC的window系统迁移至Intel NUC的无桌面版ubuntu系统

问题一 网口失效

问题描述:NUC关机状态下,将网口与路由器连接,网络指示灯闪烁;NUC开机后,网络指示灯熄灭,使用ping命令,既ping不通百度,也ping不同本地ip。

经排查,NUC开机后,需要执行命令使能网口,才可以正常使用。如果NUC 的网络端口为enp86s0,则应执行以下命令:

ifconfig   enp86s0  up

关闭网口,则执行以下命令

ifconfig   enp86s0  down

修改配置文件,将ip设置为动态ip

vim  /etc/netplan/00-installer-config.yaml

将yaml文件的内容改为

network:
	ethernets:
		enp86s0: # 有线网口的值,使用ifconfig -a 查看,根据实际情况进行修改
			dhcp4: true
	version: 2

执行reboot命令,重新启动。

问题二 修改串口

问题描述:Windows下的串口名称为COM0~COMX,而Linux下的串口名称为/dev/ttyUSB0-USB*。需要对应上。
使用串口设备的时候系统会随机分配设备名称,为了使用串口通信的时候不改代码,可以对其进行绑定。
执行以下命令,查看自己设备的dVendoridProduct

 lsusb

输出结果如下所示:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 016: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter 
Bus 001 Device 003: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse.   
Bus 001 Device 004: ID 8087:0033 Intel Corp.  
Bus 001 Device 002: ID 026d:0002  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

如上图所示,串口ID为1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter Bus,即dVendor为1a86,idProduct为7523。

创建一个脚本文件

touch usb_rename.sh
vim usb_rename.sh

在脚本文件中输入如下内容:

echo  'KERNEL=="ttyUSB*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="2303", MODE:="7523", GROUP:="dialout",  SYMLINK+="stm32base"' >/etc/udev/rules.d/usb_rename.rules

service udev reload
sleep 2
service udev restart

执行以下命令,运行脚本

sudo sh usb_rename.sh

此时,对设备进行拔插操作,运行一下命令

$ ls -l /dev |grep ttyUSB

结果如下所示:

lrwxrwxrwx  1 root root           7 731 21:21 **stm32base -> ttyUSB0**
crwxrwxrwx  1 root dialout 188,   0 731 21:21 ttyUSB0

python中的程序修改如下:

    ser = serial.Serial(  # 下面这些参数根据情况修改
        port='/dev/ttyUSB0',  # 串口值
        baudrate=921600,  # 波特率
        timeout=0.001
    )

你可能感兴趣的:(倒立摆simtoreal,ubuntu,linux,运维)