完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
serial安装
sudo apt-get install ros--serial, 由于是Ubuntu 18, 那么就是: sudo apt install ros-melodic-serial 安装好后,在ROS终端中输入如下,创建ros_serial 功能包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src catkin_create_pkg serial_port roscpp std_msgs serial 打开 cd serial_port/src 将serial_port.cpp文件添加进去, //serial_port.cpp #include #include #include int main(int argc, char** argv) { ros::init(argc, argv, “serial_port”); //创建句柄(虽然后面没用到这个句柄,但如果不创建,运行时进程会出错) ros::NodeHandle n; //创建一个serial类serial::Serial sp;//创建timeoutserial::Timeout to = serial::Timeout::simpleTimeout(100);//设置要打开的串口名称sp.setPort("/dev/ttyUSB1");//设置串口通信的波特率sp.setBaudrate(115200);//串口设置timeoutsp.setTimeout(to);try{ //打开串口 sp.open();}catch(serial::IOException& e){ ROS_ERROR_STREAM("Unable to open port."); return -1;}//判断串口是否打开成功if(sp.isOpen()){ ROS_INFO_STREAM("/dev/ttyUSB1 is opened.");}else{ return -1;}ros::Rate loop_rate(500);while(ros::ok()){ //获取缓冲区内的字节数 size_t n = sp.available(); if(n!=0) { uint8_t buffer[1024]; uint8_t IMU_data[15]; uint8_t Txbuffer[3]={0x01,0x02,0x03}; //读出数据 n = sp.read(buffer, n); for(int i=0; i 在caktin_ws目录下catkin_make 然后,重新打开终端,运行roscore 然后在运行 $ rosrun serial_port serial_port 注意,如果u***端口不正确可能不成功, 此时可以通过$ ls -l /dev |grep ttyUSB 来查看u***的端口号,在serial.cpp里面进行修改,修改保存完毕后,进行编译 再次运行$ rosrun serial_port serial_port |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1758 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1613 浏览 1 评论
1055 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1670 浏览 2 评论
1932浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
722浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
564浏览 3评论
590浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
548浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 07:04 , Processed in 0.545828 second(s), Total 73, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号