ros智能小车硬件介绍

ROS控制端说明

目前ROS小车控制主要由树莓派3B+/树莓派4B+作为主控,由于树莓派管脚资源有限,所以驱动多路电机和编码器采集速度的任务通常会交给驱动板处理,小车电机驱动目前有STM32和ArduinoMega2560两个版本,下面将分别为大家介绍不同板子的通信原理及使用方法。
在这里插入图片描述

1.1树莓派端ROS主节点
Raspberry Pi(中文名为“树莓派”,简写为RPi,(或者RasPi / RPI) 是为学习计算机编程教育而设计),只有信用卡大小的微型电脑,其系统基于Linux。我们板子用到的系统一般为Ubuntu mate,它的轻量级桌面环境以及UI的美化,要比树莓派官方提供的Debian友好的多,适合有一定Ubuntu基础的同学快速适应。

感兴趣的同学可以自己下载官方镜像安装体验:
Ubuntu mate官方网站:ubuntu

Ubuntu mate 桌面预览
在这里插入图片描述

由于ROS配置比较复杂,所以我们准备好了一份已经配置好的ROS镜像文件,放在资料包环境配置目录下,可以根据镜像文件夹内的镜像安装教程来为你的树莓派安装系统镜像。
我们的镜像主要是Ubuntu mate16.04LTS、Ubuntu Mate20.04LTS这两个版本组成,分别对应了ROS的Kintic版本和Noetic版本,由于Ubuntu Mate20.04LTS是今年新出的,所以ROS Noetic在20.04的Ubuntu版本上支持不是很完善,会在后续的开发中持续更新,敬请期待。

驱动板

目前Mbsbot驱动板主要由STM32和Arduino两个版本,STM32版本适合想深入了解电机控制的开发者以及熟悉STM32的同学,代码阅读需要有一定的C/C++基础,Arduino驱动板适合想快速接入ROS,只关注ROS上层实现的同学,代码需要一些简单的配置和库的安装即可快速开发。

ArduinoMega2560

在这里插入图片描述

板子介绍:

ArduinoMega2560是一款功能强大的单片机,资源丰富,通过简单配置就可以驱动电机、舵机、陀螺仪等外设,板子左上角有4路编码电机接口,由两个TB6612驱动芯片控制9-12V直流电机,旁边正反转指示灯可以显示当前电机的运动状态,板子中间有9路舵机驱动排针,可以外接机械臂或舵机云台等设备,右上角是一些常用接口: IIC/UART/SPI等,全部通过排母的方式引出,可以根据自己所需安装传感器。
通信与供电:
ArduinoMega2560ROS通过左上角USB串口与树莓派通信,板子由左侧绿色端子提供9-12V供电,插电前需要确定下侧开关处于关闭状态。
ArduinoMega2560程序烧录:
Arduino的程序烧录非常简单,将工程文件下的lib库拷贝到你的ArduinoIDE安装目录下的libraries文件夹内,然后回到IDE选择对应的串口号、设备类型,点击上传即可。

STM32

板子介绍:

板载芯片型号为STM32F103RCT6, 主要参数:32位Cotex-M3 ARM内核、256kbFlash 、64kbRAM。相较于Arduino,STM32拥有高达72Mhz的主频,外设资源丰富,处理速度和资源是Arduino没法比的。所以作为开发者来说,选择STM32是再合适不过的。
接口:
同样的,STM32板子上也有4路电机端口,可以同时驱动4路直流电机,板子上自带陀螺仪,可以直接作为运动控制器使用,外部同时有SWD调试接口,IIC/SPI/PS2/UART通信接口。
通信方式和供电方式:
板子通过MicroUSB端口和树莓派主机进行通信,供电方式可以使用绿色端子输入9-12V电源,也可以通过DC插头直接供电。
STM32程序烧录:
STM32可以通过JlinkV2工具连接SWD端口进行烧录,上位机使用Keil或者Jlink工具都可以,烧录方式也可以选择串口烧录,上位机采用FlyMCU。

ROS小车及其配件购买链接淘宝 天猫
  • 6
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值