某天在刷视频的时候,刷到有博主使用STM32制作了一个桌面宠物,刚好手边有需要用到的东西,于是就找到了开源的桌宠来复刻。谁会拒绝放一个小宠物在办公桌上呢。
一、原理图和PCB图
桌宠是基于STM32F103C8T6最小系统板制作,有两种控制模式,一种是语音控制,一种是蓝牙控制。
由于语音模块和舵机需要5v电源来驱动,蓝牙模块需要3.3v电源,所以绘制两个电源模块方便后续使用
桌宠PCB
语音模块原理图
语音模块PCB
二、物料清单
1、3D打印,这里我是直接使用博主的3D打印文件,在嘉立创里面打印的,总共花费16元,大家也可以在淘宝上找3D打印的商家打印,可能会优惠一点。
2、5个180°舵机
3、stm32f103c8t6最小系统板
4、1.3寸OLED显示屏 4引脚
5、5V充放电一体模块
6、3.7V聚合物锂电池(1000ma以上)
7、SU-03T语音模块
8、咪头
9、扬声器小喇叭
10、蓝牙模块(如果会用电脑串口调控可不需要)
不想用语音模块控制只用手机控制的话,可不需要7、8、9.这里我使用的是语音模块,所以没有购买蓝牙模块
11、CH340串口下载模块
12、XH端子线 2.54mm 2p 单头
13、XH 直针 2p 2.54mm
14、贴片电容0.1UF和10UF
15、贴片LED 0805
16、SS-3235S-L1这个运费比元件贵,多买几个不要只买一个
17、2.54mm 1*20p 排母和1*4p排母
18、AMS1117-3.3V稳压芯片 sot-233
19、贴片电阻10K 0603
20、2.54mm 排针 2*5p
21、杜邦线(用来连接OLED和单片机、连接pwm线与单片机引脚)
三、实物焊接
单片机部分可以焊两个插座然后把最小系统板插上去,但是这样就不好插语音模块了,所以这里我直接把单片机焊在板子上。
语音模块焊接
扬声器和咪头焊接
5V充放电一体模块
屏幕焊接1*4p插座
四、烧录程序
1、单片机程序
使用CH340烧录编译好的代码进去,直接插在板子语音模块部分,GND对应好
ps:要先下载USB转串口CH340驱动,没有的可以去b站江科大老师那里找
使用线烧录的话,要将TX和RX对换一下位置
2、语音模块
(1)在浏览器中搜素【智能公元】注册一个自己的账号
(2)进入首页后,找到文档然后点击,找到SU-03T,点进去
找到烧录资料&烧录软件
滑倒最后找到串口烧录(小扳手),点击下载
配置完成语音后要使用小扳手来下载程序
(3)返回首页,找到SU-03T,点击创建产品
(4)进入后,产品类别选择其他
(5)点击下一步,进入后按照我这个来就行
这里Pin脚的7和8换成这两个
这里可以自定义唤醒词,不用和我一样
唤醒回复这里,我发现不管设置几条都只会回复最后一句,所以设置几句看自己
命令自定义这里,行为的命名不能重复
命令设置好后点击进入控制配置
(6)点击添加控制
按照下面的步骤来,参数要根据代码来,代码中都有备注
完成后,点击保存,然后发布版本
(7)发布成功后,等待SDK生成 ,生成完成后,点击下载固件
下载完成后,解压固件,建议解压到桌面,因为下载路径中不能有中文
(8)打开刚刚下载的小扳手工具,将下面这个文件导入
点击烧录后,要将5V的线拔下来两秒然后再插上,才能成功开始下载
五、组装
(1)先安装舵机,按我的角度来,3D模型已经打好孔了,直接用螺丝固定
先不要装这个叶子,我是因为拍的时候已经固定好了没有拆下来
建议先用标签写好每个舵机对应的脚,一会儿方便找线和接线
(2) 电池在下,板子在上,OLED屏幕插到对应位置
接入电源,等待舵机复位
(3) 使用杜邦线,连接舵机和单片机,OLED和单片机
左前 | PA0 |
左后 | PA2 |
右前 | PA1 |
右后 | PA3 |
尾巴 | PA6 |
OLED屏幕注意正负级,如果杜邦线不好接的话,可以使用面包板的线,但是这样线会比较乱
(4)把焊接好的语音模块插到对应位置,GND对应,连接电源,打开开关
屏幕出现这样的显示,就证明连接没有问题
可以用手去拨动舵机的叶子,如果不能拨动就证明舵机连接没问题,如果能拨动就要检查连线有没有松
记得把扬声器和咪头接到语音模块的板上,要不然叫它是没有效果的
六、成果展示
桌面宠物
需要源代码和3D打印文件的可以私信找我。
B站博主:Sngels_wyh