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

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

3天内不再提示

如何制作一款可语音控制的3D打印无人机

454398 ? 来源:工程师吴畏 ? 2019-08-07 09:10 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

这是一款完全 3D打印的Tricopter无人机,可以使用亚马逊的Alexa地面站控制,通过语音控制进行飞行 。这种语音控制的Tricopter也被称为Oliver the Tri。

A Tricopter与Quadcopter更常见的无人机配置不同,只有3个螺旋桨。为了弥补一个较小程度的控制,其中一个转子由伺服电机倾斜。 Oliver the Tri配备了Pixhawk自动驾驶仪,这是一种先进的自动驾驶系统,主要用于研究或先进的无人机行业。该自动驾驶系统具有多种飞行模式,包括跟随我,航点导航和导航飞行。

亚马逊的Alexa将使用导航飞行模式。它将处理语音命令并将它们发送到地面站,地面站将这些命令映射到MAVLink(微型飞行器通信协议)并通过遥测将它们发送到Pixhawk。

这种小型飞机尽管很小但功能强大。它长约30厘米,重1.2公斤,但我们的螺旋桨和马达组合可以提升3公斤。

第1步:材料和设备

Tricopter

3无刷直流电机

3电机轴

3 40A电子速度控制器

8x4复合螺旋桨CCW

配电板

电线和连接器

TGY-777伺服电机

电池和电池连接器

6x 6-32x1“剪切螺栓,螺母*

3M Dual锁*

Zip Ties *

自动驾驶仪

Pixhawk自动驾驶仪套件

GPS和外部指南针

900MHz遥测

安全RC控制

发射器和接收器

PPM编码器

语音控制地面站

Raspberry Pi Zero W套件或Raspberry Pi 3

Amazon Echo Dot或任何Amazon Echo产品

设备和工具

焊接站

3D打印机

针鼻钳*

螺丝刀*

Allen Key Set *

*从本地硬件商店购买

第2步:内容组织

由于这是一个相当复杂的长期项目,我提供了一种方式将此构建组织为可以同时执行的三个主要部分:

硬件:三轴飞行器的物理框架和推进系统。

自动驾驶仪:飞行控制器计算PWM信号以提供每个3个无刷电机和伺服电机相应的用户命令。

语音控制:这允许用户使用语音命令控制无人机,并通过MAVLINK协议与Pixhawk板进行通信。

第3步:下载Tricopter框架部件

tricopter的整个框架是3D打印的在Ultimaker 2+上。框架分为5个主要部件,以便安装Ultimaker 2+的底板,并使其更容易重印和修理特定部件,以防它们在碰撞中受损。它们是:

2前电机臂(main-arm.stl)

1尾臂(tail-arm.stl)

1连接尾部和两个前部电机臂之间的一块(tail-arm-base.stl)

1尾部电机座(motor-platform.stl)

步骤4:3D打印Tricopter帧

使用至少50%的填充打印这些部件,并使用线作为填充图案。对于壳厚度,我使用 0.7mm 的壁厚和 0.75mm 的顶部/底部厚度。添加构建板粘合并在 8mm 处选择边缘。这个框架是用PLA塑料长丝印刷的,但如果你喜欢更坚固但更重的三角形,你可以使用ABS塑料长丝。使用这些设置,打印所需的时间不到20小时。

如果边缘没有粘在3D打印机的打印面上,请使用胶棒将裙边粘到打印面上。在打印结束时,取下底板,清洗多余的胶水,然后擦干,再将其放回打印机。

步骤5:去除支撑和边缘

3D打印部件将随处打印,并带有需要的外边缘在组装之前将其移除。

边缘是单层PLA,可以用手轻易地从零件上剥离。另一方面,支撑更难以移除。为此,您需要一把尖嘴钳和一把平头螺丝刀。对于不在封闭空间内的支撑,请使用尖嘴钳压碎支架并将其拉出。对于使用尖嘴钳难以触及的孔或封闭空间内的支撑,要么钻孔,要么使用平头螺丝刀从侧面撬开,然后用尖嘴钳将其拉出。当移除支撑件时,如果您对3D打印部件施加过大的压力,则可能会松开。

移除支撑件后,将支撑物所用的粗糙表面打磨掉或小心地雕刻用爱好刀保持支持。使用砂磨或研磨钻头和dremel来平滑螺孔。

步骤6:组装Tricopter框架

对于装配,你将需要六个螺栓(最好是剪切螺栓,6-32或更薄,1英寸长)将框架固定在一起。

采用名为main-arm.STL和tail-arm-base的3D打印部件。 STL。这些组件像拼图一样互锁,尾臂基座夹在两个主臂的中间。对齐四个螺孔,然后从顶部插入螺栓。如果零件不适合很容易,不要强迫它们。将尾臂基部打磨直到它们为止。

接下来,将尾臂滑到尾臂底部的突出端,直到螺丝孔对齐。同样,您可能需要在适合之前进行打磨。从顶部将其固定。

要组装电机平台,首先需要将伺服器插入尾臂上的开口,向后指。两个水平孔应与伺服系统上的螺孔对齐。如果摩擦配合不充分,可以通过这些孔将其固定到位。然后将控制喇叭放在伺服上,但不要将其拧入。稍等片刻。

将电机平台的轴滑入尾臂末端的孔中,另一侧在喇叭上。喇叭应该很好地适合平台上的插入物。最后,将喇叭螺丝穿过平台上的孔和喇叭,如上图所示。

步骤7:安装电机

无刷电机不会随附螺旋桨轴和安装的十字板预先连接,所以先将它们拧紧。接下来,使用随附的螺钉或M3机器螺钉和螺母将它们固定在电机平台和三轴飞行器的主臂上。您可以在此步骤安装螺旋桨以确保间隙并欣赏您的手工,但在飞行前测试之前将其移除。

步骤8:连接自动驾驶仪板

传感器连接到Pixhawk Autopilot板,如上图所示。这些也在自动导航板本身中标记,并且连接非常简单,即蜂鸣器连接到蜂鸣器端口,开关连接到交换机端口,电源模块连接到电源模块端口,遥测连接到telem1端口。 GPS和外部罗盘将有两组连接器。将带有更多引脚的引脚连接到GPS端口,将较小引脚连接到I2C

进入Pixhawk自动驾驶仪板的这些DF13连接器非常易碎,所以不要拉扯电线,直接推拉塑料外壳。

步骤9:连接无线电通信系统

无线电控制通信系统将用作安全备份来控制四轴飞行器,以防地面站或Alexa发生故障或错误命令另一个。

将PPM编码器连接到无线电接收器,如上图所示。 PPM编码器和接收器都有标签,因此将S1到S6连接到接收器的信号引脚1到6。 S1还将带有接地线和电压线,通过PPM编码器为接收器供电。

步骤10:焊接配电板

PDB将从锂聚合物(LiPo)电池输入电压和电流为11.1V和125A,并将其分配给三个ESC,并通过电源模块为Pixhawk Autopilot板供电。

这个电源模块是从之前与朋友合作完成的项目中重复使用的。

之前,焊接电线,切断热缩以适应每根电线,这样就可以了之后可以滑到暴露的焊接端,以防止短路。首先将公XT90连接器引线焊接到PDB焊盘,然后将16 AWG焊线焊接到ESC,然后将XT60连接器焊接到这些电线上。

要将导线焊接到PDB焊盘上,您需要将其直立焊接,以便热缩可以穿过并使端子绝缘。我发现最简单的方法是用伸出的手将电线直立(特别是大型XT90电缆)并将其放在桌子上的PDB顶部。然后在PDB焊盘周围焊接导线。然后,将热缩管向下滑动并加热以使电路绝缘。在ESC线的其余部分重复此操作。要焊接XT60,请按照上一步说明如何用XT60s替换ESC电池端子。

步骤11:连接电机和电子速度控制器

由于我们使用无刷直流电机,它们将配备三根电线,连接到电子设备的三个电线端子速度控制器(ESC)。电缆连接的顺序与此步骤无关。当我们第一次打开三轴飞行器时,我们会检查这个。

所有三个电机的旋转应逆时针旋转。如果电机没有逆时针旋转,则切换ESC和电机之间的三根导线中的任意两根以反转旋转。

将所有ESC连接到配电板,为每个ESC提供电源。然后将右前方的ESC连接到pixhawk的主输出1.将左前方的ESC连接到pixhawk的主输出2,将伺服系统连接到主输出7,将剩余的尾部ESC连接到主输出4。

步骤12:设置自动驾驶仪固件

为此选择的固件Tricopter构建是Ardupilot的Arducopter与Tricopter配置。按照向导中的步骤操作,在固件中选择tricopter配置。

步骤13:校准内部传感器

连接tricopter通过选择右上角的“自动”使用无线遥测模块,然后单击“连接”。由于它通过900MHz连接,因此无线连接需要一段时间。

按照向导中的步骤校准以下内部传感器:

加速度计

外部指南针

由于三旋翼底部有组件,因此在用加速度计校准水平位置之前,先用一个盒子支撑三轴飞行器。这是至关重要的,因为加速度计将用于确定三轴飞行器的姿态。

指南针需要从各种位置进行采样,因此您应该在校准过程中如上图所示移动直升机。

步骤14:使用亚马逊进行语音控制服务概述

我们将使用三种亚马逊开发人员工具和服务来为Oliver the Tri提供语音控制。这些工具和服务将允许我们处理语音命令,运行我们的代码,并通过MQTT与我们的地面站进行通信,然后将其转发到Tricopter Drone。

我们将在接下来的步骤中设置以下内容:

亚马逊网络服务(AWS)物联网核心

亚马逊网络服务Lambdas

亚马逊Alexa技能套件

此外,我们还将使用Raspberry Pi作为我们的地面站,运行自定义版本的Mission Planner,它在导航自主飞行模式下运行并使用MAVLink协议进行遥测。

AWS IoT Core 将通过MQTT与Raspberry Pi地面站的“物联网”(来自物联网)进行通信。与MAVlink一样,MQTT也是一种消息传递协议,但不是通过900MHz遥测,而是通过WiFi进行通信(在我们的例子中为2.4GHz)。简而言之,AWS IoT核心在自身,服务器和它的节点Raspberry Pi之间建立了连接。

AWS Lambdas是一个运行我们的NodeJS代码的云计算平台。 NodeJS代码将处理解析的语音命令并处理特定技能的意图。这包括Alexa的语音输出,命令,验证有效命令等。

Amazon Alexa Skills Kit将用于通过Amazon Alexa设备收听语音命令,并通过一组解析它我们定义的意图和样本话语。

步骤15:使用AWS IoT设置事物

首先,创建一个帐户并登录AWS控制台。您可以免费注册。

登录后,将服务器更改为N. Virginia,因为这是支持Alexa Skills Kit的地方。我的默认为俄亥俄州,所以我不得不为N. Virginia重做它。

转到服务并选择 AWS IoT Core。

选择管理》》内容并选择 注册商品

在下一个屏幕上,单击创建单个内容

给你的东西一个合适的名称,我打电话给我的PiGroundStation然后点击下一步。

我们现在为物联网创造了一件事。接下来我们需要设置证书和策略来提供我们的东西和lamda。

步骤16:设置安全证书

从AWS继续IoT Thing向导,我们将创建一个证书。

选择创建证书

然后,下载所有文件,证书,公钥,私钥和根CA 。将这些文件保存到安全的地方,因为我们稍后在配置地面站时需要它们,以便它可以与AWS通信。

导航至安全标签,找到您的证书。然后,选择附加内容,选择您的内容,并通过单击附加将证书附加到该内容。请注意证书ARN ,将其复制到记事本中,因为我们稍后会需要它。

现在,我们将收集一些更重要的信息,为地面站的配置做准备。

导航到 Interact 标签并复制 Rest API端点,这将是我们的主机信息,以及 MQTT Thing影即可。

步骤17:创建策略

理想情况下,Thing和Lambda都有自己的策略。为了演示,我们将创建一个非常开放和宽松的策略,可以被Thing和Lamda使用。

在安全》》政策标签下,选择创建政策

恰当地命名策略,我将其命名为very_permissive_policy

将操作指定为 iot:* ,将资源指定为 *

选择允许效果,然后点击创建。

完成后,就像在证书步骤中一样,将政策附加。请注意,策略ARN ,将其复制到记事本中。

步骤18:设置Lambdas

首先,确保您在N. Virginia服务器上,因为这将托管我们需要的Alexa技能套件。

导航到顶部面板并选择服务》》 Lamda 。然后单击,创建Lamda功能。

在创建功能窗口下,选择从头开始作业。为其指定名称 EchoDroneControl ,因为这需要匹配Raspberry Pi上目录的名称。运行时将是 Node.js 4.3 。

选择“创建自定义角色”;这将打开一个弹出窗口,并为其指定一个角色名称 lambda_basic_execution 。点击Lambda角色页面底部的允许。

返回Create Lamda Function页面,将其他选项保留为默认值,除了超时,将其增加到 10秒。然后点击下一步。

在触发器下,添加 Alexa技能套件从左侧窗格。

步骤19:创建新的Alexa技能

使用Alexa开发人员门户创建一个帐户。这是我们将创建自定义alexa技能的地方。

在顶部栏中,选择 Alexa技能套件》》开始技能。

为您的Alexa技能提供适当的名称和调用名称。我分别使用Drone Control和Drone作为我技能的名称和调用名称。然后单击下一步。

将意图架构代码复制到文本块。

将示例话语代码复制到底部文本块。然后单击下一步。

复制并粘贴之前步骤中保存在记事本中的 ARN链接,然后点击下一步。

现在,在测试技能之前,我们需要设置地面控制站,lambdas将在下一步中与之通信。

步骤20:将Raspbian安装到Raspberry Pi

从raspberry pi网站下载最新版本的noobs NOOB并解压缩内容。

将内容复制并粘贴到格式化的FAT32 SD卡上。

然后将raspberry pi插入监视器和电源,并按照向导安装操作系统

步骤21:安装AWS命令和配置参数

在我们上传文件并测试Lambda之前,我们首先需要安装AWS Commands并配置一些访问参数。

在Raspberry Pi上打开终端(或SSH)并运行以下命令来安装和验证AWS命令:

pip install awscli --user

aws --version

打开IAM控制台并设置用户详细信息如下所示

在角色标签下,附上显示在中的政策如下图所示,然后单击Next。这将用于在地面站上运行配置文件。

步骤22:在Rasberry pi上设置自定义地面控制站

SSH ,并使用默认密码raspberry登录。

登录后在终端上输入以下命令

cd ~

sudo apt-get install avahi-daemon

sudo chown pi /usr/local/ -R

sudo apt-get install nodejs npm -y

sudo apt-get install zip

sudo apt-get install screen

pip install awscli

pip install dronekit

pip install paho-mqtt

git clone https://bitbucket.org/veggiebenz/echodronecontrol/ dronecontrol

cd dronecontrol

mkdir certs

该代码是开源的,可以在这里找到。这将被克隆到覆盆子pi地面站。

下载 Cyberduck ,这是一个 SFTP 应用,可以与raspberry pi进行文件传输。

使用默认用户名pi和密码raspberry登录Cyberduck上的Raspberry pi。

将证书转移到证书文件夹。

在Raspberry Pi上,导航到?/dronecontrol/EchoDroneControl/Lambda和Alexa技能所需的文件套件存储并编辑 upload.sh 文件,并进行以下更改:

将角色ARN值 e添加到第3行的变量中。

将 Rest API端点添加为主机。

添加 MQTT主题

添加 Alexa技能应用ID

然后,将您为Lambda创建和下载的所有证书添加到 config.js 文件中。

最后,运行upload.sh脚本文件,然后在终端中输入以下内容,输入您从配置步骤中保存的密码:

。 upload.sh

步骤23:享受飞行

找一个天气好的日子,享受你选择的任何模式飞行,无论是完全自主的航点导航,手动飞行或语音控制。

以下是一些可以帮助您入门的命令:

Alexa Launch

Alexa向左转

Alexa向前移动5米

Alexa Land

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

    关注

    231

    文章

    10901

    浏览量

    188138
  • 语音控制
    +关注

    关注

    5

    文章

    502

    浏览量

    28906
  • 3D打印
    +关注

    关注

    27

    文章

    3603

    浏览量

    113247
  • 树莓派
    +关注

    关注

    122

    文章

    2054

    浏览量

    107848
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    3D打印能用哪些材质?

    3D打印的材质有哪些?不同材料决定了打印效果、强度、用途乃至安全性,本文将介绍目前主流的3D打印材质,帮助你找到最适合自己需求的材料。
    的头像 发表于 07-28 10:58 ?468次阅读
    <b class='flag-5'>3D</b><b class='flag-5'>打印</b>能用哪些材质?

    见闻|日本公司用纸造军用无人机

    用纸板做无人机,这不是高中生的手工课,日本无人机防务公司Airkamuy发布一款用纸板制作的军用无人机。主打的就是
    的头像 发表于 07-27 04:02 ?399次阅读
    见闻|日本公司用纸造军用<b class='flag-5'>无人机</b>

    为什么IMU是无人机稳定控制的的核心?

    无人机从消费级向工业级/行业级跨越的过程中,"精准" 与 "稳定" 成为核心竞争力,这依赖于底层惯性测量技术的突破。IMU是无人机稳定控制的核心,它直接
    的头像 发表于 07-23 15:21 ?268次阅读

    答疑|3D打印打印立体字母吗?

    最近有朋友留言问:3D打印打印那种立体字母吗?会不会很难实现? JLC3D小编来解答:当然可以!无论是单独的字母,还是组合成单词或句子,3D
    发表于 05-21 16:17

    空中小精灵:用 Raspberry Pi Pico 2 打造你的个人无人机

    3D打印的CAD设计定制无人机的打造之旅始于CAD软件设计。我的初步设计是完全3D打印的,具有封闭结构和悬臂式支撑臂,用于承受点力。蜂窝状盖
    的头像 发表于 03-25 09:40 ?418次阅读
    空中小精灵:用 Raspberry Pi Pico 2 打造你的个人<b class='flag-5'>无人机</b>!

    3D打印可以打印那种柔韧性好,能随意变形的模型吗?

    3D打印) 显然,TPU打印的模型在经历了多次扭曲后仍能保持结构完整性,虽然在过程中出现了些变形,也很快就能恢复原状。所以说,3D
    发表于 03-13 11:41

    3D打印中XPR技术对于打印效果的影响?

    我是3D打印设备的制造商,我想具体了解下3D打印中XPR技术对于打印效果的影响? 或者是否能提供对应的专利信息以备查阅
    发表于 02-18 07:59

    未来十年3D打印无人机市场规模及预测

    2025-2034年,全球3D打印无人机市场将增至39.22亿美元,北美领先,亚太增长最快。技术进步、政府支持和跨行业需求推动市场扩张,多旋翼飞行器主导市场,FDM技术最受欢迎,军事应用占主要份额。
    的头像 发表于 01-16 11:24 ?836次阅读
    未来十年<b class='flag-5'>3D</b><b class='flag-5'>打印</b><b class='flag-5'>无人机</b>市场规模及预测

    uvled光固化3d打印技术

    说到UVLED光固化3D打印技术,那可是当下3D打印领域的股清流啊!这项技术利用紫外线和光固化树脂来制造
    的头像 发表于 12-24 13:13 ?858次阅读
    uvled光固化<b class='flag-5'>3d</b><b class='flag-5'>打印</b>技术

    海外首由激光雷达驱动的无人机发布

    匈牙利ABZInnovation推出首激光雷达驱动农业无人机,实时生成3D地图避障,实现精确喷洒,提高安全、效率和可持续性,无人机室内无
    的头像 发表于 12-17 09:28 ?466次阅读
    海外首<b class='flag-5'>款</b>由激光雷达驱动的<b class='flag-5'>无人机</b>发布

    激光雷达技术或可助力防御无人机

    以色列面临无人机袭击困扰,Lidwave公司开发4D激光雷达传感器,可在5公里外探测物体,提供高分辨率3D地图。该公司获1000万美元融资,用于开发无人机袭击应对方案。
    的头像 发表于 12-07 10:54 ?946次阅读
    激光雷达技术或可助力防御<b class='flag-5'>无人机</b>

    UV光固化技术在3D打印中的应用

    UV光固化3D打印技术凭借高精度、快速打印环保优势,在工业设计等领域广泛应用。SLA、DLP及CLIP技术各具特色,推动3D打印向高速、高精
    的头像 发表于 11-15 09:35 ?1640次阅读
    UV光固化技术在<b class='flag-5'>3D</b><b class='flag-5'>打印</b>中的应用

    DIY了无人机,用全志T113芯片

    就基于全志T113-S3设计了一款仅有30x30孔距的超轻量无人机飞控,可以实现无人机的自稳飞行及远距离图传。 飞控设置 这款使用全志T113-S
    发表于 11-13 09:43

    开源项目!DIY了无人机,用全志T113芯片

    就基于全志T113-S3设计了一款仅有30x30孔距的超轻量无人机飞控,可以实现无人机的自稳飞行及远距离图传。 全志T113 PX4飞控 前置摄像飞行演示 底部摄像飞
    发表于 10-22 13:50

    3D打印耗材控湿方案--无水电解除湿器

    、熔胶不均匀以及力学性能下降等问题。控制3D打印耗材的湿度是保证打印质量的重要环。对于不同的3D
    的头像 发表于 09-03 10:20 ?1676次阅读
    <b class='flag-5'>3D</b><b class='flag-5'>打印</b>耗材控湿方案--无水电解除湿器