
专业版
【训练营】就决定是你了,皮卡丘大侦探!
7.2k
0
0
7
简介
一个拥有十六个步态的智能侦探机械狗~ 1.十六个步态,可跑可跳可做俯卧撑 2.可实现智能手机远程控制 3.转接板接入智能摄像头,手机可以远程查看实时视频
简介:一个拥有十六个步态的智能侦探机械狗~ 1.十六个步态,可跑可跳可做俯卧撑 2.可实现智能手机远程控制 3.转接板接入智能摄像头,手机可以远程查看实时视频开源协议
:GPL 3.0
创建时间:2022-06-20 13:14:41更新时间:2023-07-20 02:44:54
描述
设计思路
机械狗遇上鸿蒙,会碰撞出怎样的火花~做机械狗之初,问了下身边人的建议,做成什么样子好。“要好看”、“要智能好玩”、“要能遛”、“要能看家护院”、“要能陪我聊天”,嗯,调研过需求后发现,机械狗还是很有搞头的,拓展性很高。
正好搭上训练营顺风车,思考了一段时间后,基于本人对皮神的喜爱,决定将这个项目取名:皮卡丘大侦探。基本的功能设计如下:

站在巨人的肩膀上,事情做起来就会方便很多。用业余时间,把训练营的课程过了一遍,功能基本大致有谱了。
- 海思 Hi3861模组做主控,基础控制功能可以分为三种。静止角度控制比较简单,例程有角度控制API可以调用,动态控制也相对简单,更改数组参数即可。步态控制要研究一下,看资料要控制相位差。
- 智能化方面,手头刚好有涂鸦的nano开发板,之前立创社区也合作过活动,正好物尽其用。这样就比较方便的实现App控制,后续手机面板也好开发。要看SDK的资料情况,开发Hi3861的外设源码,拓展IO控制或者串口控制。
- “看家护院”、“陪我聊天”这类功能,还是有点麻烦的,主要时间有限,摄像头音视频实时传输资料hi3861资料还没找到。索性直接用之前做的IPC转接板,接之前做过的成品好了,殊途同归。
- 至于硬件外壳,没那么擅长,就按课程教的复制好了,当然皮神要用亮黄色。后续改版,腿部应该要做相应的设计调整
PS.本来设计是摄像头用云台,直接把云台的舵机接到转接板上,就可以在摄像头界面直接控制狗的转向。转接板都设计完了,没想到后边发现云台太重,机械狗带不动,最后只好忍泪换成了卡片机。
硬件设计
PCB画板
之前一直没有机会在立创EDA上实操做项目,应该有很久没有自己画板了,这次体验了一下,还好底子还在,一稿通过。给立创EDA打call,免去了安装AD的麻烦,在线用起来没有太多问题,双层板流畅随便画。
PS.中间遇到了一些小问题,不同PC端,谷歌浏览器加载工程有问题,一直打不开,换了个浏览器就好了。专业版问题已经反馈FAE。
主控板:
主控板原理图根教程里的类似,Hi3861做主控,为了方便布线和后续插拓展板,将PCA9685放在底面,拓展引脚放在模组两侧。


拓展板:
拓展板直接用的之前做过的项目,本来想直接接云台,奈何重量太重,最后改用了IPC卡片机,这个转接板这次也就没用上,后边留着以后的项目用吧~


上一个预期效果图,本来打算是这样子,放在大侦探背上,后边由于超重换成了卡片机。不过做项目嘛,本身就是按照实际情况灵活调整,毕竟时间有限,活还有很多~

硬件结构
外观硬件结构,solidworks 入门依葫芦画瓢。这一套流程下来,还是挺有收获的,小腿的垫片很重要这里要注意一下,看的仔细就不会漏掉,要么装配的时候会不平整,看到有很多同学遇到这个问题。
为了尺寸精准,基本所有尺寸都没变,做完项目后来看,脚底是可以改一下,增加受力面。然后固定板子的定位柱尺寸和课程里PCB 7*4cm是不配套的,应该要修改一下,还好都是小问题,总体走下来还算顺利。

组装调试
在心心念念的期待中,立创一条龙服务的板子和物料到了。抽个下班时间开始焊接调试,还好焊接功夫没还给老师。


这里也有个小坑,买来的按键和PCB上的封装不对应,第一遍烧录固件的时候没起来,排查下去发现EN脚的电平一直拉低,万用表测了下发现按键没生效,于是最后改了一下方向,只焊接了两个触点,搞定。

烧录搞定,亚克力切割片到位,开始组装,皮卡皮!

先装腿,再装身子,凭借猜想,螺丝没拧错,有点那个味了~


组装成品的时候,遇到问题了,仔细看装配图和效果图腿部是反的。看来教程里和实物也没对应啊,纠结了一下按课程视频为准,用下边这个方向装了。事实证明,影响不大,角度决定位置,正反装静态姿态会有些差别。


成品装好,来吧,展示~

软件设计
环境搭建
Ubuntu 教程提供了镜像还是比较方便,下载编译一条龙。顺便也研究了下 python 环境,本来想为什么是两个语言都有,看完程序,python其实也是传的json数据给模组,底层还是要靠C的。考虑后续要拓展App功能,要改动底层,就只简单试了下python的函数功能,后续开发均基于C语言的SDK包进行。


基础功能
第一次烧录完成后,测试发现除了安装模式外,其余模式效果都一样。看了下源码,原来例程里写的参数都一样。正常到了这步,应该训练营的基础功能就可以实现了。

const char *html = "传智教育元气派
鸿蒙狗控制
安装模式原地踏步
蹲下
前进
后退
左转
右转
";
源码可以看出,只有两个参数数组[74, 111, 24, 151, 24, 151, 74, 111, 100], [24, 151, 74, 111, 74, 111, 24, 151, 100],只要做好这俩数据,基础控制的静止角度控制和姿态控制可以实现了。还剩下一个步态的控制,用提供的工具生成数组测试了一下,效果有,不过感觉并不流畅,离网上看到的效果还差蛮多,没达到满意的效果。


网上看了一些机械狗的资料和朋友问了一下(特别鸣谢 小乙 同学),大约明白了机械狗的步态原理,摆动腿和支撑腿只要有一定的相位差,就可以走出不同的步态。


基于这个原理,模拟了一条腿的路径。然后就开启了漫长的调试过程,控制函数为了和web端区分做了简单封装。
最后基础控制模式,静态、动态、步态,总共保留了十六个姿态,当然不是每个都调试的很完美,毕竟还有很多功能排期等着呢~

作为 IoT 行业的开发者,接下来就时重头戏给项目加上智能化的功能呀。看需求,手机控制、摄像头画面、音箱控制,接入云端之后都可以一并解决。通过Hi3861通过转接板接入云平台,摄像头也接入同样的云平台,方便后边接入音箱的控制功能。


面板端第一个版本做的比较弱,直接用面板工作台搭建。后边针对UI做了一次优化升级,看起来就顺眼多了。

本来打算把模式名都换成技能名称,电光一闪、十万伏特什么的,怕调试时候姿态对不上忘了,就改了下边的几个。

成品功能展示
皮卡丘大侦探,成品

手机控制四个方向,按暂停回到安装初始状态。十二个静态、动态、步态模式。可点击按钮进入大侦探摄像头模式,进行巡逻监控。摄像头支持对讲功能。支持天猫精灵语音控制。
搞定收工,去吧,皮卡丘!


视频链接
B站视频链接:https://b23.tv/8AalVBd
舵机调到最后有一个坏了,可以看到步态有个腿没那么正常,不过也无伤大雅了。
还好有其他的视频有保存的,其他视频见如下附件。
设计图

BOM


添加到专辑
0
0
分享
侵权投诉
评论