自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (5)
  • 收藏
  • 关注

原创 手把手教你搭建ROS阿克曼转向小车之(增量式PID代码实现)

PID算法原理讲解与代码实现

2023-05-05 17:30:19 2465

原创 手把手教你搭建ROS阿克曼转向小车之(霍尔编码器数据读取与速度计算)

控制器的编码器端口如下图所示:其中PA0是定时器5的CH1、PA1是定时器5的CH2;PA15是定时器2的CH1、PB3是定时器2的CH2,定时器的编码器模式只能接在CH1和CH2端口上,STM32定时器的编码器模式原理需要大家自行去阅读手册,博文只讲解代码实现。

2023-04-11 20:06:25 1365

原创 手把手教你搭建ROS阿克曼转向小车之(动力电机驱动代码讲解)

其中Arr和Psc根据实际电机适配的频率进行设置, TIM_CtrlPWMOutputs(MOTOR_TIM[mName_t], ENABLE),该函数不能省略,否则PWM无法输出。假如让电机1正转则需要设置CH3的占空比为期望的输出,把CH2的占空比设置为0;假如让电机1反转则需要设置CH3的占空比为0,把CH2的占空比设置为期望的输出;其中PE13是定时器1的CH3、PE11是定时器1的CH2;我们只需要调用MotorSpin函数然后给定转动的PWM期望值即可让电机转动起来。

2023-04-10 17:08:57 972

原创 手把手教你搭建ROS阿克曼转向小车之(转向舵机驱动代码编写)

最重要的一点是,不同舵机的最大转动角度可能不相同,但是其中间位置的脉冲宽度是一定的,那就是1.5ms。其中PE5和PE6对应的是定时器9的CH1和CH2,定时器9的时钟为168兆,PB14和PB15对应的是定时器12的CH1和CH2,定时器12的时钟为84兆,所以代码里Servo1和Servo2的分频值是167、Servo3和Servo4的分频值是83,这样给到定时器的频率就是1M即1us,计数值给定19999,1us*(19999+1)= 20ms,这样即可得到舵机所需要的控制脉冲频率。

2023-04-10 15:06:57 1032

原创 QT实现一个摇杆手柄

在智能小车的控制里,最好用的控制方式还是手柄控制,但是手柄的价格又相对较贵,今天就给大家讲解如何只用Qt实现一个摇杆手柄;该软件摇杆手柄支持固定方向单次点击控制,也支持组合方向滑动控制,并且滑动控制下会显示当前滑动位置的X轴数据和Y轴数据,具体的操作演示,大家可以查看文章后面的功能演示视频,可以更直观的了解该手柄的功能。第五步:在界面逻辑处理部分则是需要添加串口收发功能和逻辑的处理即可完成手柄功能的编写。第三步:编写一个类(CustomBox),该类则是手柄控制的核心。第二步:在ui文件中添加几个控件。

2023-02-27 09:40:29 2858 2

原创 最好用的STM32与Melodic、Noetic通信

本文主要是介绍STM32F4如何使用FreeRTOS和rosserial(roslib库)与Melodic、Noetic进行节点发布和订阅的;

2023-02-27 09:12:50 283

原创 STM32 ROS控制器底层代码讲解

APP是由FreeRTOS作为嵌入式系统,使用rosserial(roslib库)和ROS1进行交互,使用标准的接口协议,让ROS的开发者不需要去了解底层的通行层,只需要关注底层控制器发布和订阅的节点名称即可,使用rosserial还可以使用ros的参数服务器,在ROS层即可对底层的一些开放参数进行修改(使用方法参考博主的另一篇博客。4、如何编写一个发布节点,发布节点第一步需要创建发布的消息类型变量;第三步创建发布的msgs,订阅的回调函数,发布的节点名称和订阅的节点名称。

2023-02-25 18:39:07 4124

原创 STM32 使用microros与ROS2通信

本文主要介绍如何在STM32中使用microros与ROS2进行通信,在ROS1中标准的库是rosserial,在ROS2中则是microros,目前网上的资料也有一部分了,但是都没有提供完整可验证的demo,本文将根据提供的demo一步步给大家进行演示。2、micro_ros_stm32cubemx_utils使用提供了中断读写和DMA读写的接口,大家根据自己实际使用的端口对文件,dma_transports.c,it_transport.c。,博文demo使用的硬件是STM32F407芯片,提供的。

2023-02-25 16:08:13 5251 16

原创 控制器功能端口说明

主要介绍控制器端口使用说明以及一些注意事项

2022-08-24 23:57:20 2035

原创 通过ROS修改控制器参数

主要介绍怎么通过配置yaml参数文件对控制器的参数进行修改

2022-08-24 23:48:18 672

原创 STM32端口功能详情图

控制器端口详情图,提供的上位机工具里包含有STM32固件,需要使用的用户可以根据给出的固件端口自行搭建硬件

2022-08-24 23:30:33 1677 1

原创 StarsRobotTools使用说明文档

StarsRobotTools是针对Starrobot底层控制器设计的一款可视化工具,让大家可以快速的搭建自己的智能小车

2022-08-24 23:24:19 336

原创 CP2102修改设备serial、PID、VID的值

在实际的应用场景中我们总希望串口设备的PID和VID值是唯一的这样才会方便设置设备别名,下面就介绍一下怎么修改设备的PID和VID还有驱动的方法。1修改设备PID和VID的值

2021-06-12 22:59:14 8057 8

原创 ROS机器人DIY教程:超声波数据获取(HC-SR04/US-100)

简介:在机器人开发中虽然我们有激光雷达去感知周围的障碍物,但有的时候应为激光雷达安装位置的原因,无法识别到较低位置的障碍物,此时就需要一个性价比较高的传感器来进行辅助,一般情况可以使用红外或者超声波模块,红外受光线和颜色的干扰,因此用超声波模块是比较好的。本文将介绍怎么获取超声波数据,并在ROS中使用。1、所需工具starrobot底层开发板、HC-SR04/US-100、USB数据线、Keil5starrobot底层开发板具有超声波模块接口,可以与超声波模块进行连接。...

2020-10-20 21:52:43 3751

原创 ROS机器人DIY教程,编码器数据读取

简介: 编码器是作为电机反馈的一个重要传感器,可以用于判断电机的转速和运动方向,在ROS机器人中可以为机器人提供一个位置参考。编码器又有增量式编码器、绝对式编码器、混合绝对式编码器等,具体的大家可以百度了解。 本文主要讲解常用的AB相编码器,一般是霍尔或者光电增量式编码器,starrobot底层开发板、12V 5200ma锂电池、GB37-520减速电机、USB数据线、Keil5。starrobot底层开发板板载了A4950电机驱动器,预留和电机相同线序的XH2.54-6P接...

2020-10-20 20:43:38 2630

原创 ROS机器人DIY教程之,STM32电机PWM控制

简介:电机调速需要使用到STM32的PWM输出控制电机驱动器从而完成电机调速功能。1、实现的工具starrobot底层开发板、12V 5200ma锂电池、GB37-520减速电机、USB数据线、Keil5starrobot底层开发板板载了A4950电机驱动器,预留和电机相同线序的XH2.54-6P接口,即插即用。电机转动主要使用到电机线+、电机线-两根线,编码器GND、编码器B相、编码器A相、编码器5V主要用于测速,这个下一章节通过编码器获取电机转速值会进行讲解。A4950电机驱动芯片支

2020-08-23 14:48:37 2698

原创 ROS机器人DIY教程:ROS和STM32通信(常规通信方式和rosserial)之通过上层修改底层参数

本文主要介绍怎么编写代码实现在上层修改底层参数的相关知识,主要讲解使用两种通信方式来实现1、rosserial方法,rosserial是官方对arduino提供的一种简单的通信协议,本人对这个库进行了一些改动,使其可以在STM32上进行使用,通过使用这个协议可以在STM32或者Arduino发布和订阅节点数据,详细的移植和使用参考之前的两篇博客:ros下使用rosserial和STM32F1/...

2020-04-13 19:13:55 3595 1

原创 ROS机器人DIY教程:1、常用车型及DIY元件清单

本文主要介绍一些常用的机器人车型和对应的元件清单。以上就是目前常用的车型及元件清单,希望可以给正在DIY的小伙伴们一个参考。下一篇会介绍怎么规划底层控制器的功能及本人自己设计的starrobot底层控制器的功能。写在后面的话:Starrobot机器人底层控制板可以目前常an用的8中车型,更换车型无需修改底层代码,直接在上层选择对应的车型和相关轮子、电机、机器人大小等参数即可。QQ交流群...

2019-10-19 19:33:11 1534 1

转载 ROS上位机和STM32通信

详情请参考:(rosserial、ros_lib移植到STM32讲解)https://blog.csdn.net/qq_36349536/article/details/83617213

2019-10-13 12:33:48 1013

原创 ROS小车搭建之编码器值得获取

好久没有更新博客了,这节主要给大家讲解一下ROS小车STM32F4控制器通过STM32定时器的编码器模式获取编码的值。STM32F4定时器具有编码器功能的包括两个高级定时器1、8和四个通用定时器2、3、4、5。这节主要使用定时器5进行讲解。假如对定时器5的编码器引脚对应不太明白的可以使用STM32CubeMx软件进行查看,如下图可以看到定时器5的编码器接口是在PA0和PA1上。弄清...

2019-08-17 11:12:52 1307

原创 ROS中使用思岚激光雷达进行跟随和Cmakelist.txt讲解

之前一直在弄ROS小车的底盘和编写底盘的代码,现在把底盘已经弄好了,所以开始编写一些上层的代码和算法,这篇博客主要介绍使用思岚雷达来进行跟随和Cmakelist.txt的讲解,本人注重于手动DIY ROS小车,如果大家也想自己手动DIY一辆ROS小车我们可以相互交流,本人熟悉各种外设模块的驱动和通信方式。首先我使用的是思岚A2的雷达,所以我们要去官网下载他的ROS包:下载后我们可以看到...

2018-12-01 14:08:04 2868 2

原创 STM32(MDK)中如何使用ROS自定义的msgs

继续着上次的博客,本人目前已经开发完成了一套STM32F407的ROS底层驱动板,预留了很多的接口,详情请看前面两篇的博客,本文主要介绍在STM32(MDK)中如何使用ROS自定义的msgs。主要参考rosserial_arduino,上面讲解了一些方法但是没有具体的操作,对于不了解的人可能会有一定摸不着头脑,下面就写写我对整个流程的理解,作为一个笔记也希望对大家有所帮助。1、首先我们在ROS...

2018-11-16 22:38:12 2595 2

原创 rosserial、ros_lib移植到STM32讲解

这边博客主要是对前面两篇博客的一个补充(ROS使用STM32F407ZGT6作为底盘控制器、ros下使用rosserial和STM32F1/STM32F4系列进行通信(MDK5工程)),再次说明一下本文的主要参考:1、https://blog.csdn.net/ykevin0510/article/details/72725633?locationNum=7&fps=12、ross...

2018-11-01 12:01:03 8426

原创 ROS使用STM32F407ZGT6作为底盘控制器

很久没有更新博客了,主要是最近这段时间在编写之前说自己做的STM32F407的底盘控制器的程序,现在已经编写完了,所以发个博客和大家分享一下,话不多说先上图。PCB3D预览图,看完图后我先介绍一下这个开发板具有的功能:电源部分:6-18V输入,输出有5V,3.3V和5V4A可以直接给树莓派供电。电源指示灯部分:5个,输入电源指示灯、5V电源指示灯、3.3V电源指示灯、RO...

2018-10-30 16:48:51 5850 3

原创 ros下使用rosserial和STM32F1/STM32F4系列进行通信(MDK5工程)

本人电子信息工程专业,致力于图像开发两年,因为现在导师要求做一个智能机器人,因此要从底层开始设计也希望能给那些想要自己动手制作小车的朋友一点参考。本文主要介绍ROS下使用rosserial和STM32(ST库)进行通信,移植网上各位大神的代码,实现自己想要的功能主要参考:https://www.baidu.com/link?url=HHBcr34K6SbLnst52P-4mSGPKxv...

2018-09-19 16:26:24 19550 53

原创 USB答题卡识别主界面Demo

USB摄像头识别答题卡的界面Demo,工程自带QT版本的Opencv3.2.0库,只要安装了QT就可以使用本工程;主要包括视频的采集和在OpenGL上进行显示。demo下载链接:https://download.csdn.net/download/qq_36349536/10661690效果如下:...

2018-09-13 09:29:15 423

原创 第十三届智能车竞赛代码

2018年第十三届智能车竞赛代码,使用MFC作为界面结合OPenCV3.2.0库,用SVM进行数据的训练然后再视频中实时的检测,可以检测数字,旗子和障碍物。并且有串口部分的代码可以直接把处理好的数据或者其他指令发送给下位机,结合底盘小车的代码进行策略的行走完成比赛。代码下载地址:https://download.csdn.net/download/qq_36349536/10661719效果图...

2018-09-12 13:16:35 3999 1

原创 usb摄像头识别答题卡系统

最近使用QT+Mysql+OpenCv写了一个USB摄像头识别答题卡系统,可以把数据保存到数据库中并支持导出Excel文件和输出学生答题情况的日志,话不多说,下面介绍一下大概的流程,使用一个线程作为图像采集,一个线程负责数据库的读写,还有就是自己写了图像处理和数据提取的方法。下面看一下整个工程的结构、界面和实际效果图:工程结构:主界面和处理效果图:数据库操作界面:然后就...

2018-09-12 11:32:11 2269 1

原创 关于用Cmake 和vs 来对opencv3.2.0和opencv_contrib3.2.0整合编译的笔记

关于用Cmake 和vs 来对opencv3.2.0和opencv_contrib3.2.0整合编译的笔记首先我们先把opencv和opencv_contrib 的源码进行下载,记住两个的版本要一致。下面是下载的地址和版本选择,大家也可以用我已经下载好的文件有opencv3.2.0、opencv_contrib3.2.0、cmake-3.9.6和一些Cmake 整合过程所需要的文件:百

2018-01-30 18:17:53 343

STM32与ROS2通信demo

该资源主要是STM32F407通过microros和ROS2进行通信的demo,该demo发布了一个节点和订阅了一个节点

2023-02-25

TIMER_ENCODER.zip

STM32F407主控通过定时器5的编码器模式获取编码器的值

2019-08-17

STM32F4xx中文参考手册(ros_底盘控制器).pdf

STM32F4XX中文参考手册,目前主要用于ROS机器人底盘开发参考。

2019-08-17

ROS中使用STM32作为底层控制板4WD(MDK5工程)

ROS下使用rosserial和STM32(ST库)进行通信,4轮驱动MDK5工程

2018-09-19

智能车比赛图像处理代码

2018年第十三届智能车竞赛代码,使用MFC作为界面结合OPenCV3.2.0库,用SVM进行数据的训练然后再视频中实时的检测,可以检测数字,旗子和障碍物。并且有串口部分的代码可以直接把处理好的数据或者其他指令发送给下位机,结合底盘小车的代码进行策略的行走完成比赛。

2018-09-12

USB摄像头识别系统界面

USB摄像头识别界面Demo、主要是完成了摄像头的采集、和把采集到的数据用OPenGL进行显示。

2018-09-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除