当前位置: 首页 > news >正文

山东省住房与建设厅网站北京建设门户网站

山东省住房与建设厅网站,北京建设门户网站,企业准备做网站的准备工作,安全中国asp.net网站开发项目实战培训班本文主要介绍如何在STM32中使用microros与ROS2进行通信#xff0c;在ROS1中标准的库是rosserial,在ROS2中则是microros,目前网上的资料也有一部分了#xff0c;但是都没有提供完整可验证的demo#xff0c;本文将根据提供的demo一步步给大家进行演示。1、首先如果你用的不是S…本文主要介绍如何在STM32中使用microros与ROS2进行通信在ROS1中标准的库是rosserial,在ROS2中则是microros,目前网上的资料也有一部分了但是都没有提供完整可验证的demo本文将根据提供的demo一步步给大家进行演示。1、首先如果你用的不是STM32F4的话则需要自己去生成micro_ros_stm32cubemx_utils库博文demo使用的硬件是STM32F407芯片提供的micro_ros_stm32cubemx_utils库也是F4的工程目录如下图所示工程使用STM32CubeMX软件进行端口硬件等代码的初始化大家在开发中可以对stattobotMicroros.ioc文件进行编辑本文不对STM32CubeMX的使用进行讲解大家可以自行百度学习。2、micro_ros_stm32cubemx_utils使用提供了中断读写和DMA读写的接口大家根据自己实际使用的端口对文件dma_transports.c,it_transport.c3、microros_tasks.c是microsros初始化和节点发布订阅的文件void starrobot_microros_init(void){MX_USART1_UART_Init();rmw_ret_t status rmw_uros_set_custom_transport(true,(void *) huart1,cubemx_transport_open,cubemx_transport_close,cubemx_transport_write,cubemx_transport_read);rcl_allocator_t freeRTOS_allocator rcutils_get_zero_initialized_allocator();freeRTOS_allocator.allocate microros_allocate;freeRTOS_allocator.deallocate microros_deallocate;freeRTOS_allocator.reallocate microros_reallocate;freeRTOS_allocator.zero_allocate microros_zero_allocate;if (!rcutils_set_default_allocator(freeRTOS_allocator)) {printf(Error on default allocators (line %d)\n, __LINE__); } }该函数主要是对硬件进行注册绑定使用的硬件打开、关闭、读写、函数与microros的接口进行绑定。void run_starrobotSTM_node(void){ // initial configurations starrobot_microros_init();init_starrobotSTM_node();create_starrobotSTM_publisher();create_starrobotSTM_subscriber();// timer for publisherrcl_timer_t timer_pub;RCCHECK(rclc_timer_init_default(timer_pub,support,RCL_MS_TO_NS(5),publisher_callback));// create executorexecutor rclc_executor_get_zero_initialized_executor();RCCHECK(rclc_executor_init(executor, support.context, 2, allocator));RCCHECK(rclc_executor_add_timer(executor, timer_pub));RCCHECK(rclc_executor_add_subscription(executor, subscriber, sub_msg, subscription_callback, ON_NEW_DATA));// spin node by executor while(1){rcl_ret_t rc rclc_executor_spin(executor); //, RCL_MS_TO_NS(100)if (rc ! RCL_RET_OK){break;}}// rclc_executor_fini(executor); } 该函数是整个节点的封装函数包含了注册绑定硬件和创建发布、订阅节点。大家下载demo包后需要先在vscode中配置开发ARM的环境然后make jflash进行编译下载即可下载完成后打开ROS2端运行Agent 指令:sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --nethost microros/micro-ros-agent:$ROS_DISTRO serial --dev /dev/ttyUSB0 -v,使用ros2 node list ros2 topic list ros2 topic info /topic_name查看发布的节点信息和数据。相关demo代码下载地址https://gitee.com/starRureole/starrobot_microros.git如果大家有CSDN积分想支持一下博主的可以在CSDN上下载https://download.csdn.net/download/qq_36349536/87500333同时也欢迎大家进群一起交流学习129923584相关视频讲解链接https://www.bilibili.com/video/BV1bD4y1g7V5/博文使用的开发板购买链接https://item.taobao.com/item.htm?spma1z10.1-c-s.w4004-21142386790.2.c0086177uv5IlAid606445592295
http://www.hkea.cn/news/14480713/

相关文章:

  • 深圳龙岗网站建设公司哪家好给视频做特效的网站
  • 开封+网站建设+网络推广红河网站建设设计
  • 静态网页建站网页设计图片剧中
  • wordpress是哪家公司的建站程序出口跨境电商有哪些平台
  • 西安做企业网站安庆seo
  • 免费下载app软件网站js特效网站模板
  • wordpress 访问权限好的seo
  • 网站建设流程咨询百度小程序怎么进入
  • 电子商务网站的建设和维护晋城做网站的公司
  • 手机网站下拉列表酒水包装设计公司
  • 门户网站流程图南京装修公司做网站
  • 网站建设的讲话要求家在临深业主论坛家在深圳
  • 黄页大全18勿看2000网站免费在线观看网址入口
  • 做商城购物网站如何开始做网站
  • 成武县建设局网站响水专业做网站的公司
  • wordpress建站位置网页脚本语言有哪些
  • 郑州七彩网站建设公司溧阳做网站价格
  • 网站后台模板怎样使用设计工作室 网站
  • 输变电壹级电力建设公司网站建设网站语言选择
  • 网站动图怎么做的建立网站线上营销
  • 网站平台建设wordpress怎么加标题
  • 做液氮冰淇淋店网站网页建站怎么设置
  • 成都分类信息网站开发长沙建设网站制作
  • 中诺建设集团有限公司网站白石桥做网站公司
  • 在郑州建设网站这么做平面作品集展示图片
  • 深圳专业做网站多少钱python3.5 做网站
  • 购物网站建设教程站酷网怎么接单赚钱
  • 重庆网站制作权威乐云践新无网站做百度推广
  • 上饶有哪些做网站的公司沈阳做网站的公司排行
  • php微信微网站怎么做多地进一步优化防控措施