1 Star 3 Fork 0

xujiaqi / 基于ros的CH32V307VCT6小车

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
WTFPL

基于ros的CH32V307VCT6小车

介绍

本次参加2022年嵌入式大赛,在此进行代码开源,使用时,可以直接参考user里面的文件。 项目如下:主控板为赤兔CH32V307VCT6,车体为麦克纳木轮+亚克力底板,电机驱动为l298n,电机就是普通的小黄电机1:120,上位机采用英伟达jetson nano b01,深度相机采用Intel realsense 双目语眼跟踪相机T265。上位机通过ROS订阅话题,将话题内容串口发送给开发板,此处发送t265内部slam处理后的空间坐标信息。开发板根据内部串口中断程序作出判断,根据当前坐标向指定坐标行进。

软件架构

1.lcd程序 赤兔ch32v307的使用其实stm32的使用类似基本时可以直接拉来使用的。入门可以前往b站搜索,有一个up做了很多期关于赤兔开发板的介绍。 在user文件夹里面添加lcd.c,lcd.h,font.h文件,原处的cs接口出错了,已经进行修改,可以直接在程序中使用,驱动lcd屏幕。 在串口调试过程中,可以将串口内容打印在屏幕上,以便调试。 输入图片说明 运行效果如下,可以参考一下,USART_Printf_Init(115200);那个必须要有,具体为什么暂时没清楚,有大佬可以告知。 输入图片说明 使用时参数设置如下,可以参照lcd.c文件的内容,进行修改。 lcd_show_num(90,140,90,20,24); lcd_show_num(150,140,150,20,24); x y num len size (备注:size只有16 24 32三种大小,屏幕大小为240*240,len这里设为20)

2.串口函数 在main.c中串口函数定义与中断的使用已经写明。 此处强烈建议使用USART2,板载买来的时候跳线帽已经接好,而且程序例程也很多,方便开发。如果想使用usart1或别的话,需要改跳线帽。 ch32v307板子串口函数类似于stm32与openmv通信,调试时可以先用单片机代替上位机试通信。 提交的代码当中,我在openmv中写的发送内容为data=bytearray([0x41 ,0x43 ,cx ,cy,0x44]),其中0x41和0x43为包头,0x44为包尾,cx,cy为上位机中t265的数据。 上位机发送函数,网上有很多,也可以自己写,这里不过多阐述。先判断包头是否正确,将数据存入数组当中保存,保存后判断包尾是否正确,如果包尾也正确,那就保存数据,否则这个数组清零,重新开始接收。 输入图片说明

3.Delay程序 debug.c里面已经写好了,可以直接使用非常方便。

安装教程

1. 整体效果图 输入图片说明 输入图片说明 2. 电路连接 如图所示,电机交叉连接,需要保证斜向两个电机转的方向一致。这样四个电机便分为两对,每对电机并联出两根线到l298n处,具体麦克纳木轮的使用可以再CSDN里面搜一下,非常多。这样就可以通过控制GPIO的引脚高低电平,控制电机正反转。不同的正反转可以控制小车的前后左右移动。main.c里面已经写好了函数,可以直接使用。 输入图片说明 输入图片说明 3. 上位机接线 通过usb to ttl的tx和rx接到板子上的usart2上,注意GND也接上。 在运行过程当中,可以打开reaalsense——viewer查看里程计信息和imu数据 输入图片说明

使用说明

  1. 代码下载即可
  2. 具体运行视频,后续会上传到b站

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

特技

  1. 使用 Readme_XXX.md 来支持不同的语言,例如 Readme_en.md, Readme_zh.md
  2. Gitee 官方博客 blog.gitee.com
  3. 你可以 https://gitee.com/explore 这个地址来了解 Gitee 上的优秀开源项目
  4. GVP 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
  5. Gitee 官方提供的使用手册 https://gitee.com/help
  6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 https://gitee.com/gitee-stars/
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE Version 2, December 2004 Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. You just DO WHAT THE FUCK YOU WANT TO.

简介

用于存放基于ROS,主控板为赤兔CH32V307VCT6的麦克纳木轮小车代码,其中包括该开发板的lcd运行代码,通信串口中断代码,等基本小车所需要的代码。 展开 收起
C 等 3 种语言
WTFPL
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C
1
https://gitee.com/xujiaqi2022/ros-based-CH32V307vct6-car.git
git@gitee.com:xujiaqi2022/ros-based-CH32V307vct6-car.git
xujiaqi2022
ros-based-CH32V307vct6-car
基于ros的CH32V307VCT6小车
master

搜索帮助