0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ROS移动机器人的通信接口电路设计

CHANBAEK 来源:硬件实战君 作者:硬件实战君 2023-03-17 10:46 次阅读

本文来聊聊ROS移动机器人中控制器与树莓派进行传输信号通信接口电路设计。在此之前回顾下在本项目第一篇文章中提到的硬件框图,如下图所示:

wKgZomQT0w2AWg9XAACmCUlYVdI490.jpg

从图中可以清楚地看出,树莓派通过wifi和PC机通信,同时树莓派通过串口与控制器通信。 目前市面上的树莓派3B,4B在电路设计时已经加入了WIFI模块,可以通过编程与PC机通信,这里的电路设计我们不用考虑。 树莓派与主控进行通信时需要使用USART通信协议。 此时常用的方法是使用TTL模块将USB协议转成USART协议,这时就不可避免的在树莓派上插入USB转TTL模块,然后通过杜邦线与主控连接。

使用这种方法,看似方便,但是系统的整体布线看起来会显得非常凌乱,还会存在接触不良的问题,引起控制系统的不稳定。 对于电路设计集成度和完美主义追求者,这点是不能容忍的。 所以在控制器设计中,直接将通信协议转换电路集成到了PCB板中,提高了系统集成度和系统的稳定性。

USB转TTL电路设计

在控制器原理图设计中,集成了如下USB转TTL电路。 这个电路比较常见,它支持串口通信,与STM32程序一键下载功能(可省去购买仿真器)。

wKgZomQT0w2ALlyyAABI3PjkvR4759.jpg

在电路中VD10用于防止电流倒灌,防止在STM32不需要供电时,CH340G芯片的TX引脚依然给主控芯片供电引起的程序的错误执行情况。

芯片中V3引脚除了在不同电压供电模式下接法不同,对于电容数值选用也是需要注意的。 V3引脚的电容用于内部电源节点退耦,来改善USB传输过程中的EMI,通常容量在4700pF到0.1uF范围,建议容量为0.01uF。

在CH340G芯片设计中需要外接12M石英晶振和与之匹配的22pf高频起振电容。 为芯片在通信过程中提供时钟基准。 在PCB布局和布线时需要保证晶振走线尽可能短,在晶振走线下方不要布其他信号线,当条件允许时,可以对晶振走线进行包地处理,以防止时钟信号受到干扰。

STM32一键下载电路实现原理

下面我们来看看CH340G是如何实现STM32一键下载功能的。

STM32有以下三种启动模式:

wKgZomQT0w2AD39GAAGsJoktxnw587.jpg

从表中可以知道,使用串口烧写程序,需要配置BOOT0为1,BOOT1为0,如果想STM32一复位就运行代码,需要配置BOOT0为0,BOOT1配置为什么都可以,为了实现这个功能,可以设计一个电路,通过CH340G芯片的DTR#和RTS#引脚的信号来控制电路状态,从而间接控制STM32的RESET和BOOT0引脚的信号, 实现一键下载功能。 控制电路如下图所示:

wKgaomQT0w2AA_3SAAA6iUzHu6E511.jpg

当使用FlyMcu软件时需要选择DTR的低电平复位,RTS高电平进BootLoader模式,如下图所示,这样在进行程序烧写时,DTR和RTS引脚就能够进行控制一键下载电路在适当的时刻,使STM32复位引脚和BOOT0处于正确的电平,实现STM32复位与程序烧写。

wKgZomQT0w2AG30rAABnhtCcpCk355.jpg

首先FlyMcu控制DTR置低,则DTR#输出高电平,同时RTS置高,则RTS#输出低电平。 这时三极管Q1和Q2同时导通,NRST引脚被拉低单片机复位,BOOT0引脚拉高为1。 延时一段时间后FlyMcu控制DTR为高电平,则DTR#为低电平,RTS#持续保持为低电平,三极管Q1截止单片机停止复位,此时BOOT0依然维持高电平1,单片机进入ISP模式,这时就可以实现STM32一键烧写程序了。 其中DTR#和RTS#的波形如下图所示。

wKgaomQT0w2AOZRsAAEwV4BQmD0081.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口电路
    +关注

    关注

    8

    文章

    461

    浏览量

    57047
  • 控制器
    +关注

    关注

    112

    文章

    16191

    浏览量

    177379
  • STM32
    +关注

    关注

    2266

    文章

    10870

    浏览量

    354758
  • 移动机器人
    +关注

    关注

    2

    文章

    757

    浏览量

    33541
  • ROS
    ROS
    +关注

    关注

    1

    文章

    276

    浏览量

    16963
收藏 人收藏

    评论

    相关推荐

    移动机器人常用传感器

    移动机器人常用传感器
    发表于 08-20 22:33

    资料:移动机器人能否自动充电?

    、餐饮服务行业已经应用到了机器人。不过目前,移动机器人都是使用高质量的机载可充电蓄电池组来给自身供电,但是一般只能维持几个小时,一旦电能耗尽,必须采用人工干预的方式来给机器人充电。如果采用人工充电,那么
    发表于 01-20 09:39

    Labview My RIO 移动机器人

    初次使用 NI MyRIO控制器开发四轮全向移动机器人,由四个全向轮和直流电机与增量式编码器和NI 9001控制器组成,安装了红外距离和光电传感器。驱动板由官方提供的H桥驱动板。NI 9001由
    发表于 08-21 12:20

    机器人、协作机器人移动机器人,你分的清楚吗

    我觉得现在是时候讨论一些更有趣的话题,今天的话题是介绍工业机器人、协作机器人移动机器人。我想每个人都知道机器人是什么。机器人是可怕的大型
    发表于 10-30 11:33

    如何实现移动机器人的设计?

     移动机器人利用导航技术,获得机器人的目前所处的位置,结合传感器技术对周围外界环境(障碍物等)作实时探测,并根据环境提供的信息规划一条可行路径完成达到目标点的任务。移动机器人技术涉及到传感器技术
    发表于 11-23 15:08

    请问怎么设计一种室外移动机器人组合导航定位系统?

    怎么设计一种室外移动机器人组合导航定位系统?如何实现室外移动机器人组合导航定位系统的硬件设计?如何实现室外移动机器人组合导航定位系统的软件设计?
    发表于 04-19 10:50

    什么是移动机器人软硬件系统问题

    接触了移动机器人这么久,我觉得应该写点什么东西,分享一下最基础的自己关于移动机器人的理解,也作为笔记总结,留到以后查阅。目前我还是觉得自己刚入门,有时候总想的太多,不如实践来的更直接,下面总结之前
    发表于 08-06 06:13

    最实用的STM32和ROS机器人的串口通信方案

    全网最实用的STM32和ROS机器人的串口通信方案小白学移动机器人同名公众号:小白学移动机器人创作声明:内容包含虚构创作内容中的情节存在虚构
    发表于 08-20 06:33

    差速移动机器人轨迹跟踪控制方法

    差速移动机器人轨迹跟踪控制方法一、引言二·、基础准备1.去除GPS数据中的坏点2.经纬度与平面坐标系转换3.差速移动机器人数学建模三、基于PID的差分移动机器人轨迹跟踪方法1、控制律设计2、航向角
    发表于 09-01 08:41

    移动机器人的三种主要运动系统

    构建机器人 | 制作移动机器人 | 构建第一个机器人 | 机器人电子 | 机器人控制器 | 机器人
    发表于 09-01 08:12

    详解移动机器人软硬件系统问题

    什么是移动机器人软硬件系统问题?移动机器人软硬件系统有哪些问题呢?
    发表于 11-11 06:07

    如何利用扫地机轮子制作ROS移动机器人地盘

    制作ROS移动机器人地盘摘要概述硬件需求车体设计电路设计程序设计摘要本教程讲述如何利用扫地机轮子制作ROS移动机器人地盘。概述原本不打算自己
    发表于 01-14 08:36

    电机在ROS移动机器人系统中的作用

    控制电机旋转方向的场景下,通过两个继电器便可以实现电机控制。在ROS移动机器人的应用场景下对电机的控制不仅仅有旋转方向的控制需求,而且还有电机转速的控制需求,所以在这种应用场景中 常常使用功率开关管
    发表于 03-17 14:21

    基于Matlab和VR技术的移动机器人建模及仿真

    利用 Matlab 建立移动机器人的动力学模型 ,在虚拟现实 (VR )环境下 ,实时仿真移动机器人路径跟踪的运动特性 ,为基于 Internet 的机器人遥操作试验搭建了仿真平台 。 实验结果表明
    发表于 09-20 06:24

    制作ROS移动机器人地盘

    制作ROS移动机器人地盘摘要概述硬件需求车体设计电路设计程序设计摘要本教程讲述如何利用扫地机轮子制作ROS移动机器人地盘。概述原本不打算自己
    发表于 01-14 11:29 6次下载
    制作<b class='flag-5'>ROS</b><b class='flag-5'>移动机器人</b>地盘