飞行机器人专栏(九)-- 多传感器固定端口分配

news/2024/11/16 22:56:17/

查看源图像

目录

​编辑

1 /dev/设备列表

2 ttyUSB*端口ID 

3 端口别名rules动态绑定

4 launch文件配置


1 /dev/设备列表

lsusblsusb -t

2 ttyUSB*端口ID 

查看/dev/ttyUSB* 设备端口ID :0403:6014

找到对应USB的设备ID,这里是 0403:6014, 可以不连接USB设备输入lsusb,连接上后再输一次lsusb,多加出现的那一行就是你对应的ID。

3 端口别名rules动态绑定

新建USB端口规则文件ttyusb.rules

cd /etc/udev/rules.d/
touch ttyusb.rules

KERNEL=="ttyUSB*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", MODE:="0777", SYMLINK+="ServoBus"

注意: (需要替换id/自定义名称)

举例: ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014",动态绑定端口id,并设置别名SYMLINK+="ServoBus", 端口权限MODE:="0777"。

重启usb dev服务器

    sudo service udev reloadsudo service udev restart

重新拔插设备并检查设备端口号:

ls /dev/ServoBus

查看所有端口

lsusb

 可以发现,Rules已经生效,将ttyUSB0硬件端口软链接至rules-ServoBus端口便于分类识别与使用。

4 launch文件配置

将ROS launch文件中的端口名改为软链接的端口名即可,即使增删硬件,端口别名也不会错乱。

<arg name="usb_port"     default="/dev/ServoBus"/>

<launch><arg name="usb_port"     default="/dev/ServoBus"/><arg name="baud_rate"    default="1000000"/><arg name="control_period"         default="0.010"/><!--Hardware of Virtual Platform in Gazebo--><arg name="use_platform"           default="true"/>
<!--Control Mode Selection --><arg name="using_publisher_gui"        default="false"/>
<!-- Dynamixel prismatic joint servo MAX velocity , mm/s--><!--<arg name="prismatic_joint_max_velocity"      default=100/>--><node name="open_manipulator_controller" pkg="open_manipulator_controller" type="open_manipulator_controller" output="screen" args="$(arg usb_port) $(arg baud_rate)"><param name="control_period"       value="$(arg control_period)"/><param name="using_platform"       value="$(arg use_platform)"/></node>
</launch>

 


http://www.ppmy.cn/news/7699.html

相关文章

C# 数据库访问方法

一 访问数据的两种基本方式 1 方式1&#xff1a;DataAdapter及DataSet ① 适合于“离线”处理&#xff1b; ② 自动建立Command对象&#xff1b; 方式2&#xff1a;DataReader ① 适合于只读数据&#xff0c;效率较高 它们都要使用Connection及Command 二 Connection对象…

DOM-获取DOM元素、修改内容和属性、定时器-间歇函数

一、Web API基本认知 1. 作用和分类 作用: 就是使用 JS 去操作 html 和浏览器 分类&#xff1a;DOM &#xff08;文档对象模型&#xff09;、BOM&#xff08;浏览器对象模型&#xff09; 2. 什么是DOM DOM&#xff08;Document Object Model——文档对象模型&#xff09;是…

Jmeter分布式测试

因为jmeter本身的性能问题&#xff0c;有时候为了尽量模拟业务场景&#xff0c;需要模拟大量的并发请求&#xff0c;此时单台压力机就显得力不从心。针对这个情况&#xff0c;jmeter的解决方案是支持分布式压测&#xff0c;即将大量的模拟并发分配给多台压力机&#xff0c;来满…

linux连接器脚本前奏-基于x86(一)

从今天开始进入正文,和讲解liteos一样,我们先从连接器脚本开讲。我们知道连接器脚本描述了编译输出程序的布局,那么linux内核编译输出的布局是怎么样的呢?听我慢慢道来,关于连接器脚本的大概使用用途,可以参见 liteos链接器脚本一 liteos链接器脚本二 这里先说明一下对于…

朗润国际期货:2022年财料人物、机构、商品

2022年财料年度人物&#xff1a; 马斯克&#xff0c;财料出场次数&#xff1a;15次 他&#xff0c;全球收入*高公司高管&#xff0c;还是前世界首富&#xff08;12月刚被挤下&#xff09;。 他&#xff0c;身兼数职&#xff0c;业务包括但不限于造电动汽车、搞社交媒体、做火…

BOSS直聘自动投简历的实现过程

这两年疫情&#xff0c;公司业务越来越差&#xff0c;必须得准备后路了&#xff0c;每天睡前都会在直聘上打一遍招呼&#xff0c;一直到打哈欠有睡意为止...,这样持续了一周&#xff0c;发现很难坚持&#xff0c;身为一名资深蜘蛛侠&#xff0c;怎么能这样下去呢&#xff1f;于…

第004课 - 项目微服务架构图

文章目录 项目架构图项目架构图 外网部署就是面向公众访问的,部署前端项目。 可以有手机app,也可以有web网站。 内网部署后端系统。 客户端发送请求,请求是先来到我们的nginx集群。 nginx将请求转交给我们的后台服务。 nginx是先将请求转交给api网关。 api网关我们使用…

Android ContentProvider一个标准的内容提供器的创建封装代码和使用例子

如果要想实现跨程序共享数据的功能&#xff0c;官方推荐的方式就是使用内 容提供器&#xff0c;可以新建一个类去继承ContentProvider 类的方式来创建一个自己的内容提供 器。ContentProvider 类有6 个抽象方法&#xff0c;我们在使用子类继承它的时候&#xff0c;需要将这6 个…