以奥斯卡最佳动画长片《机器人总动员》中的“瓦力机器人”为原型,仿造制作的一款机器人。

把瓦力机器人搬到现实中,可用手机控制,功能如下:

  • 机器人移动
  • 机械臂动作
  • 带WiFi实时画面传输
  • 超声波传感器
  • 温度传感器
  • 电压检测
  • 手机上可看到传感器数据

一、系统硬件电路设计概述

本章主要叙述机器人的电路设计,包括锂电池充放电电路、WiFi图传电路以及机器人运动控制电路。

电路设计总框图

其中包含5个板块:

1.ESP32-S

用于处理OV2640摄像头的图像,通过WiFi网络发送到手机;

2.HC-05蓝牙模块

用于接收手机发送的数据以及对手机发送的信号;

3.ATmega2560单片机

用于处理蓝牙模块接收到的数据,对电机驱动电路发送信号控制电机;

4.超声波模块

用于测量距离;

5.TFT显示屏

用于显示机器人当前电量。

下文详细解说五部分:下文均围绕原理图进行详细解说

  • 锂电池充放电电路设计;
  • WiFi图传电路设计;
  • 机器人运动控制电路;
  • HC-05蓝牙模块;
  • 电机驱动电路。

二、锂电池充放电电路设计

锂电池是一类由锂金属或锂合金为正/负极材料、使用非水电解质溶液的电池。

优点:能量比高、使用寿命长、自放电率低、重量轻等。

比较适合用于机器人项目。

电路结构包括以IP5209组成的外围电路、输入输出电路、锂电池保护电路和升压输出电路。

1.主控部分——IP5306

IP5306是一款多功能电源管理芯片,内部集成了升压转换器、锂电池充放电管理以及电池电量显示。

IP5306电路符号

该芯片采用ESOP8封装,能够提供高达2.4A的输出电流和2.1A充电电流,其电能转换效率可达92%,在芯片空载能够进入休眠状态。

2.主控外围电路

输入端VIN及输出端VOUT、VOUT2均加电容进行滤波。

其中:

  • VOUT给除电机驱动芯片外全部电路供电
  • VOUT2给电机驱动芯片供电

这样分开供电的好处是:

  • 即使电机启动时电流过大也不会使单片机端电压下降,保证了整个控制电路正常运行;
  • 电路使用4颗LED灯用于电量显示,使用按键进行触发;
  • 使用1uH功率电感用于升压输出,同时IP5306对输出端电压进行测量,做到闭环控制

IP5306充放电电路

3.锂电池充放电保护电路

XB8886A为单节锂电池保护IC。

采用SOP8-PP封装。

内部集成功率MOS以及高精度电压检测电路和延时电路。

有电芯反接、过热、过充电、过放电、过电流和负载短路等保护。

广泛应用于单芯锂离子电池组、锂聚合物电池、移动电源等领域。

电路原理图如下图,其中B+接锂电池正极,B-接负极。

锂电池充放电保护电路

4.电源输入电路

由于本设计没有快充要求,所以选择了6Pin的Type-c母座作为电能输入接口。

Type-c母座电路符号

6Pin母座相较于16Pin或24Pin母座引脚面积更大,能够提供更大的输入电流。

同时也相对容易焊接,价格也更便宜。

在满足设计要求的同时降低了制作成本。

5.升压稳压电路

该电路用于给电机驱动芯片供电。

电机驱动芯片供电有两种。

  • 一种是直接用IP5209芯片输出的5V电压;
  • 另一种是将前面的5V电压进行升降压处理。

显然第二种供电方式适用的电机更广,电机的输出力矩可以通过调压来改变,有更多的容错。

电路控制芯片选用SX1308,SX1308是一款固定频率。

SOT23-6封装的电流模式升压转换器,高达1.2MHz的工作频率使得外围电感电容可以选择更小的规格。

内部集成80mΩ功率MOSFET,输入电压2V-24V,输出电压最高28V,其输出电压可以通过分压电阻来调节。

升压稳压电路连接图

三、WiFi图传电路设计

该电路使用ESP32-S作为主模块。

主功能是把OV2640摄像头数据通过WiFi发送到手机。

电路主要包括:

  • 以ESP32-S为主的外围电路
  • 复位电路
  • 电源电路
  • PSRAM电路
  • OV2640摄像头连接电路及复位电路
  • TF卡连接电路。

1.主控模块——ESP32-S

ESP32-S是一款通用型WiFi-BT-BLE MCU模组。

功能强大用途广泛。

可以用于低功耗传感器网络和要求极高的任务。

例如:语音编码、音频流和MP3解码等。

ESP32-S电路符号

此模组的核心是乐鑫科技开发的ESP32芯片:

  • 内置520KB的SRAM
  • 主频支持80MHz、160MHz和240MHz

具有可扩展、自适应的特点。

需要注意的是:

由于全金属机身对信号的屏蔽作用。

本设计中没有使用到ESP32-S的板载天线。

用的是外接天线。

需要把ESP32-S电路板上的0欧姆电阻转接到板载的一代IPEX天线座上。

便于外接天线。

2.ESP32-S外围电路

外围电路相对简单,包括一个退藕电容、下载电路和复位电路。

下载程序时需将ESP32-S的IO0引脚接地,方法就是通过按键接地,按键对应原理图中的SW1。

复位电路由10k电阻、100nF电容和一个按键组成。

ESP32-S外围电路连接图

3.电源电路

该电路用于给整个WiFi图传电路供电。

电路包括三只线性稳压器,分别是:

  • AMS1117-3.3V
  • ME6211-2.8V
  • ME6211-1.2V

前者负责摄像头外的元件供电。

后两者用于摄像头供电。

电路还包括一只用于判断线性稳压器是否正常工作的LED灯。

电源电路连接图

4.摄像头连接电路

摄像头选用的是OV2640,使用24Pin的FPC连接座连接到PCB上。

摄像头连接电路

摄像头需要三种供电电压,分别是:

  • 1.2V
  • 2.8V
  • 3.3V

5.存储电路

存储电由一个PSRAM电路和TF卡连接电路组成。

存储电路电路图

PSRAM全称为伪静态随机存储器,用于扩展ESP32-S的存储空间。

使用到的是一颗APS6404芯片,该芯片具有:

  • 高速;
  • 低引脚数接口;
  • 拥有四个SDR I/O引脚;
  • 以高达144MHz的频率在SPI或QPI模式下运行。

TF卡使用自弹式TF卡座连接。

四、机器人运动控制电路

该电路控制机器人的所有动作机构,包括左右两个主动轮和拥有三个自由度的机械臂,以及处理各种传感器的数据,作出相应的动作。

考虑到整个机器人需要多个电机以及传感器。

主控选择ATmega2560单片机。

ATmega2560参数列表

ATmega2560的100引脚封装

1.主控及外围电路

主控使用ATmega2560。

外围电路包括:

  • 晶振电路
  • 复位电路
  • 烧录电路
  • 超声波传感器连接电路
  • 温度传感器电路
  • TFT屏幕连接电路
  • 散热风扇控制电路等。

晶振选择四引脚16MHz无源晶振。

对应原理图中的X1,连接时需在XTAL1和XTAL2间接1M欧姆电阻。

复位电路使用按键加电阻电容来实现。

分别对应原理图中的:

  • SW4
  • R26
  • C37

可以实现上电自动复位和按键复位。

烧录

烧录电路包括烧录引导程序(BootLoader)的电路和使用串口进行烧录的电路,对应原理图中的J1和P1,都是使用单排针进行连接;

烧录引导程序是一个全新单片机第一件要做的事,否则后续程序将无法烧录进单片机中。

超声波传感器改装

超声波传感器使用的是HC-SR04,对应原理图中的H2。

需要对传感器进行一点改装,就是把两个超声波头和排针拆下,方便在电路板上焊接。

而拆下的超声波头则是使用XH2.54-2P连接座连接到超声波模块上,连接座对应原理图中的CN11和CN12。

ATmega2560及外围电路连接图

温度传感器使用的DS18B20

对应原理图中的U13,DS18B20是常用的数字温度传感器

其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。

使用时需在信号端和电源端接10k欧姆上拉电阻。

TFT屏幕

使用8Pin的FPC连接座连接到单片机,对应原理图中的FPC2,需要注意的是屏幕使用的是3.3V的电压供电,超过会烧毁屏幕。

散热风扇

使用的是额定电压5V、长宽都是30mm的风扇,对应原理图中的CN4,风扇由一只S8050三极管控制。

五、HC-05蓝牙模块

与手机之间进行通信使用的是:HC-05蓝牙串口模块。

通过蓝牙接收手机发出的控制>>>然后通过串口发送给单片机来控制机器人的运动。

蓝牙模块指令表

HC-05是主从一体的蓝牙模块,默认为从机,支持:

  • 跟模块通信
  • 跟手机通信

具有两种工作模式:

  • 串口透传通信模式
  • AT指令模式

模块又可分为三种工作角色:

  • 主(Master)
  • 从(Slave)
  • 回环(Loopback)

当模块处于自动连接工作模式时,将自动根据事先设定的方式连接设备并进行数据传输。

比如:跟手机蓝牙连接,可通过手机APP给蓝牙模块发送数据。

T指令模式时能执行下述所有AT命令,用户可向模块发送各种 AT 指令,为模块设定控制参数或发布控制命令。

AT 指令不区分大小写,均以回车、换行字符结尾。

蓝牙模块电路连接图

六、电机驱动电路

该电路用来驱动;

  • 直流有刷电机
  • 二相四线步进电机。

驱动电路一共设计了五组。

其中四组用来驱动步进电机,其余用来驱动有刷直流电机

由于单片机I/O口的驱动能力有限,而且单片机直接驱动电机对单片机有风险,可能会直接烧毁单片机,所以专业的事情还是给专业的芯片来做。

单片机负责输出控制信号给电机驱动芯片,然后电机驱动芯片再驱动电机。

电机驱动电路连接图

DRV8848为家用电器和其他机电应用提供了双h桥电机驱动器。

该装置可用于驱动:

  • 一个或两个直流电机
  • 一个双极步进电机
  • 其他负载

一个简单的PWM接口可以方便地与控制器电路连接。

这里使用的芯片是DRV8848,该芯片采用双H桥设计能够驱动:

  • 一个或者两个直流电机
  • 一个两相四线步进电机
  • 其他负载

每个H桥使用固定的断路时间斩波方案来调节绕组电流,每个能够输出高达2A驱动电流,在并联模式下能够输出4A驱动电流。

该芯片拥有睡眠模式。

它能关闭内部电路,实现非常低的静态电流。

睡眠模式可以通过nFAULTra引脚来设置。

芯片内部集成了短路保护、过温保护等功能。

该芯片为功率器件,本身具备一定内阻,电路的发热与负载电流、功率管导通内阻以及环境温度密切相关。

内部设计有芯片级温度检测电路。

实时监控芯片内部发热,当芯片内部温度超过设定值时,产生功率管关断信号,关闭负载电流,避免因异常使用导致的温度持续升高,进而造成塑料封装冒烟、起火等严重安全事故。

芯片内置温度迟滞电路。

确保电路恢复到安全温度后,才允许重新对功率管进行控制。

七、设计图

接线回路尽量短就行,按照原理图连就完事了

正文到此结束。

附件可在下方图片中查看工程来源,并找到附件下载(平台放连接“平避”)

八、工程附件

如有其他问题,可在原工程底部留言作者。

附件内有其他资料,可直接从原工程附件中下载查看。


你还有什么想要补充的吗?或者有什么疑惑?欢迎评论

如果你喜欢这个内容或者觉得非常有用,欢迎点赞、转发、关注~

更多推荐:

1.「自制」可以网上冲浪的尺子!芜湖

2.「自制」充电宝,并教你实现“永不断电”

3.431芯片原理,如何「自制」431芯片?