DIY独立无人机与互联网控制

图片

首先,我写了很长的介绍,介绍了这样一个任务的来源,然后对我来说似乎很无聊,所以我删除了它。

因此,任务是:创建用于监视电源线(电源线)状态的自主无人机。

由于:

  1. 这是一个业余项目,我的计算可能会犯一个大错误
  2. 飞行物体对生物及其财产构成威胁,

那么,本文仅应作为开阔的视野,而不应作为行动指南。

电力线上检测缺陷列表

无人机要求


  • 垂直起飞和降落(没有弹射器和降落伞),即直升机
  • 能够起飞,在指定点飞行,自动返回并着陆
  • 您可以编辑飞行任务,发出命令以从世界上任何地方起飞和降落
  • 通过Internet广播遥测和实时视频
  • 在飞行中或飞行后将照片和视频从机载摄像头上传到服务器
  • 无需人工干预即可对电池充电或机械更换电池。

还有两个相互矛盾的要求:

  • 可靠的电子设备(如果落在某处,则认为丢失了)
  • 实验的费用相对较低(如果落在某处,则认为已丢失)

理想情况下,自治程度很棒:无人机沿着预先计划的路线飞行,将照片上传到服务器,服务器上的软件识别出照片中的缺陷,并以工作地点的坐标向维修团队提出要求。 在电池或轴承等任何部件的使用寿命结束之前,无人机本身都不需要引起人的注意。

显然,这项任务不是一年,但是我将开始,也许有人会接下去并继续。

例如,完成的工业版本的自治系统: 十一十二十三十四 。 我以潜在买家的身份写信给所有人,以了解价格。 准备出售的其中:2个; 准备在俄罗斯出售:0。

选择飞行控制器


由于我需要通过Internet广播视频和遥测,因此我立即想到将一台带有4G调制解调器和摄像机的微型计算机放在无人机上,并通过该套件进行网络广播。 找到了这样的解决方案: 。 这些是带有外部USB 4G调制解调器和相机的普通单板。 为了编码和广播视频,使用了gstreamer 。 但是这些东西本身并不知道如何控制无人机,它们需要与飞行控制器一起使用。

飞行控制器是无人机的大脑。 它监视位置传感器(陀螺仪,加速计,指南针)的状态,GPS坐标,控制面板上手柄的位置,并根据这些数据控制电动机悬挂在一个点或在某个地方飞行。 飞行控制器将需要以某种方式与机载计算机连接,以便您可以加载飞行任务或指示要飞行的地点以及何时打开相机的任意点。
在销售中,您会发现许多不同的控制器,它们在价格和功能上都大不相同。 他们中的一些人使用自己的软件工作,而其他人则使用开源软件,例如Ardupilot及其fork PX4

在Ardupilot上,我使用了没有USB引导程序的8位atmegs ,但它们是通过程序员缝合的。 从那时起,我再也没有遇到过他,当我发现他现在可以在64位Linux计算机上工作时,我感到非常惊喜,他拥有庞大的用户社区,包括爱好和专业人士,开箱即用的支持的传感器种类繁多, 2018-2019年计划 。 在这段时间里,他设法成长为DroneCode项目,然后该项目断开连接

乍看之下,它只是实现了所有必要的功能:自动起飞和降落,装载飞行任务,所有主要OS系列都有桌面和移动应用程序。 控制程序(GCS-地面控制站)通过一组无线电调制解调器通过开放式MAVLink协议通过短消息与车载控制器进行通信(无人机发送遥测信息,GCS发送控制命令)。 我怀疑这些消息可以通过Internet启动。

查看受支持的控制器列表,然后进行选择。 从小到大都有不同特征的十几种选择。

在所有各种控制器中,我喜欢以下几种选择:

飞行控制器艾尔PXFMini边缘纳维奥2Erle Brain 3PixHawk 2多维数据集
附加电脑Raspberry Pi零W没有啦树莓派3没有啦树莓派3
设定重量,g849798145150
CPU总数1个221个3
操作系统同时运行1个1个1个1个2
IMU传感器,套件1个221个3
气压传感器1个21个1个1个
电源冗余没有啦2倍3倍没有啦2倍
GPS,格洛纳斯外部模块
带有附加磁力计
外部模块
带有附加磁力计
内置接收器,外部天线外部模块
带有附加磁力计
外部模块
视频输入覆盆子上的CSIHDMI接口覆盆子上的CSICSI覆盆子上的CSI
无线上网在那边在那边
远程2km
+52克
在那边在那边在那边
套件的成本,$212700215341331

最轻的套件(84 g)从Raspberry Pi Zero W微型计算机(9 g), Erle PXFMini控制器(15 g),本地外部GNSS模块(46 g)和附加的USB集线器 (14 g)获得。


该套件中只有一个工作的处理器-在Raspberry Pi上。 它上悬挂着电动机调节器的PWM控制,读取传感器读数,具有所有功能的Linux OS以及对来自摄像机的视频进行解码。 由于Pi Zero没有USB端口,因此在此选项中,您必须使用外部集线器。 IMU传感器和电源输入无冗余。

来自香港公司的另一组(97 g)是开发团队中的俄语名称,是带有GNSS模块(38 g)的Emlid Edge控制器(59 g)。 GNSS模块根据UAVCAN协议运行,并另外配备了磁力计和气压传感器。 这里,一个单独的ARM Cortex-M3处理器负责PWM,Linux OS正在主要的ARM Cortex-A53四核上旋转。



该控制器具有HDMI视频输入,可让您直接将具有此类输出的任何摄像机(例如GoPro 4或5)直接连接到其上。套件中的远程wifi收发器可解释相对较高的成本(高清视频广播最长可达2 km)。 通用表中不包括板载模块的重量(52 g),因为我需要4G通信,但是您可以牢记此选项:通过远程wifi,您可以通过具有有线Internet的固定路由器建立备份通信通道。

下一个选项(98 g)包括著名的Raspberry Pi 3微型计算机(45 g),来自同一Emlid的Navio 2屏蔽控制器(23 g)和外部GNSS天线(30 g)。 该控制器具有单独的Cortex-M3处理器,用于控制14个通道上的PWM并解密来自接收器的输入SBUS和PPM信号。 反过来,它是通过在Raspberry上运行的Linux内核中的驱动程序控制的。



该控制器配备了一对独立的IMU传感器(加速度计,陀螺仪,磁力计)MPU9250和LSM9DS1,一个气压传感器以及U-blox NEO-M8N GNSS模块,该模块通过外部天线通过MCX连接器查看GPS, Glonas和北斗。

您可以从三个侧面同时以5伏的电压为这个“饼”供电,这三个侧面可以作为相互独立的独立电源重复使用:屏蔽板上的主电源连接器,PWM伺服输出,Raspberry上的micro-USB。

桌子上有Err Brain 3控制器(100克)和一个外部GPS模块(45克)(按重量,价格和一组传感器),因此我什至不会在这里插入照片。

接下来,我们将提供最可靠,最重的工具包(150 g),该工具包由具有开放式架构的流行PixHawk 2 Cube飞行控制器(80 g)和Raspberry Pi 3计算机组成,在这种情况下,您可以使用任何轻巧的单板代替Raspberry,例如Odroid XU4NVIDIA Jetson或其他具有正确界面和适当重量的产品。

PixHawk本身已安装2个处理器:第一个32位STM32F427 Cortex M4-运行NuttX实时操作系统(RTOS)的主要处理器和第二个故障安全32位STM32F103。 控制器以模块的形式制造:IMU处理器和传感器安装在立方体中(在防振架上,甚至在加热的情况下),并且整个外围的电源和连接器都置于底座上。 假定基础可能会有所不同,并且每个人都可以开发自己的产品来满足特定的要求,然后可以在其上放置成品立方体。 顺便说一下,有一个现成的版本,带有一个用于安装Intel Edison微型计算机的连接器。 但是,由于英特尔不再发布这些计算机,因此Raspberry也将作为车载计算机包含在此套件中。

Raspberry用作连接到Internet的附加计算机,您可以在其上运行任何资源密集型任务(例如,OpenCV中的模式识别),而不必担心此过程中的失败会“权衡”诸如电动机控制之类的关键功能。

因此,考虑到重量,规格和价格,对我而言,第一名是Navio 2 + Raspberry套件,第二名Pixhawk 2 Cube + Raspberry(+ 52克)。 现在,如果在Pixhawk下,小型Raspberry Zero(甚至是USB输出)的连接器有了基础,那就更有趣了。 但是您仍然无法购买,但是现在还没意思。
我将在笔记中写道,提高可靠性需要额外花费52克和110美元。 根据计算的总结果,这些数字可能并不重要。

自主充电


如您在上面的完成版本中所看到的,有几种方法可以为下一次飞行准备自动无人机:通过接触垫为电池充电,非接触感应充电以及机械化的电池更换以及随后在车站充电。


每种方法都有其优缺点,我将分别进行介绍,但是无论如何,为了它们的功能,无人机必须能够以几乎厘米的精度降落在所需的位置。

着陆“到点”


为了精确降落,您可以使用标准的车载计算机摄像头,视觉标记和OpenCV进行识别。 这是您可以谷歌搜索的一种解决方案。 当我写这篇文章时, 出现了一篇。 但是,模式识别对于Raspberry来说是一个非常耗时的过程,并且您不希望没有特殊需要就下载它。 同样,识别的质量将极大地取决于制作标记的材料和照明条件。 理想的是,这是一个单独的传感器,并给出与所需视点的现成坐标,而与光的存在和入射角度无关。 这就是所谓的IR-Lock受支持的Ardupilot设备列表中的内容。



上面列表中的Airobotics也使用此解决方案。 它基于Pixy CMUcam5开源相机模块 。 该模块配备了一个摄像头和一个处理器,可以“学习”识别物体的某些图像,然后在输出端获取图像中这些物体的现成坐标。




知道图像上已识别图像的坐标以及与图像之间的距离后,飞行控制器会计算出无人机需要移动多远以及朝哪个方向移动。
IR-Lock的修改包括以下事实:将来自LEDIR手电筒用作要识别的标记,并且在相机上,常规镜头被仅透射IR光的镜头所代替。 结果,在任何光线下,相机都能在黑色背景上看到白色的灯发光(仅此而已),这大大提高了识别的准确性。

为了使此传感器正常工作,还需要一个测距仪 ,它将测量地面上方的高度。 开发人员建议使用激光测距仪,例如LightWare LW20 (20克和299美元,最长可达100 m),或便宜又短的VL53L0X (小于1克和10美元,最长可达2 m),这在Ardupilot的最新版本中已得到支持 。 由于某些原因,用于降落的超声传感器不值得IR-Lock开发人员的信任。
顺便说一句,DJI无人机会使用超声波和立体相机自动降落。

像死人一样挂


为了使无人机悬挂在一个地方而不是“游泳”,仅靠GPS是不够的。 不幸的是,由于大气层的缘故,来自GPS接收器的坐标可能会在数十米范围内浮动,因此必须使用GPS RTK校正系统来确保厘米精度。 该系统使用陆基固定站作为坐标偏差的标准,并通过无线电与电路板通信以将这些偏差的值发送到那里。 这样的事情对于拍摄摄影计划是必需的,然后将它们粘贴到大卡中 ,并且为了悬挂在适当的位置,我现在将自己局限于PX4Flow光学传感器。


它的工作原理与光学鼠标相同。 与IR-Lock不同,它不能识别特定的图像,并且在Ardupilot中它们可以在不同的飞行模式下工作。 相机图像以每秒400次的偏移进行分析,控制器可以使用I2C协议读取计算出的偏移值。 该传感器( 开放式硬件 )重15克,可满足您板上的所有需求:168 MHz Cortex M4F CPU(128 + 64 KB RAM),光学传感器752×480 MT9V034和3轴陀螺仪L3GD20。 对于其正常操作,还建议使用激光测距仪,而不是超声波测距仪。 尽管模块本身仅提供用于超声波传感器的连接器。

最小电子套件


这是收集的:



总重量为199 g。在视频广播模式下,所有组件的工作电压均为5伏,消耗的电流几乎为2安(10瓦)。

该套件包含一个超声波距离传感器,它将向前看障碍物。 如果确实需要,我将立体视觉和圆形激光雷达留给以后使用。

有效载荷


由于Raspberry的本机摄像头拍摄的照片质量平均,并且不知道如何与视频同时拍摄照片,因此只能用于网络广播,作为主摄像头,您需要一台合适的摄像头来检测电源线中的缺陷。 GoPro Hero 5 Session ,多光谱鹦鹉红杉 ,双Sentera Double 4K和红外FLIR Vue Pro适用于检测到的缺陷列表中的大多数项目。 它们每个重约100克。

为了稳定相机以提高图像质量,一个2或3个轴向悬架将随其一起飞入负载中。



简单的三轴悬架重约160 g,由12伏特供电,在此电压下约有50 mA的工作电流,在电动机卡塞时的最大电流为700 mA。

营养学


为所有电子设备供电,需要5伏(最小2.2安培)和12伏(最小1安培)的电源。 给定飞行控制器的备用电源,您需要两个5伏特的独立电源。 您可以使用标称值合适的单个模块来构建电源系统,或者找到现成的“ 3合1”(例如,24 g,最大输入电压高达28 V,3A输出)。 将连接一个电流传感器 (22 g),以便可以测量电池的mAh消耗量。

电子套件+相机+悬架+电源系统重505克。

马达和螺旋桨


在许多专业无人机上,我看到了T型马达和螺旋桨。 显然不随意。 在Ardupilot文档中,还建议将它们作为专业无人机的推进系统。 因此,我们将为他们寻找合适的电动机。

为了使无人机长时间飞行,需要具有最高效率的电动机。 电动机和螺旋桨束的效率通过每1瓦特消耗的克力推力来衡量。
要找出最合适的电动机,您需要了解完整组装的无人机的总重量,并考虑框架,电池和带螺丝的电动机本身。 需要电池才能使用30分钟。 需要框架,以便所有部件都能固定在其上,并且螺钉不会碰到任何东西。

未知数太多,因此我将使用在线计算器计算Quadcopters E-calc

在计算器中玩了之后,我选择了带有15x5螺钉(27克)的Antigravity 4004 KV300 (53克) 电动机 。 在最佳模式下,使用24伏的电源电压,这样的套件在1.4 A的电流下可拉474克。效率为14.11 g / W,牵引力与自重之比= 5.9:1。 在全速下,在7.5 A的电流下推力为1311克。直升机将配备四个电动机,即一个四轴电动机。 最佳起飞重量=(474 g * 4台电动机)= 1896 g,最大(考虑到推力重量比为2:1)=(1311 g * 4台电动机)/ 2 = 2622 g。

电动机由速度控制器控制。 电机的电源电压= 24伏,最大工作电流= 7.5 A,因此,考虑到裕量,至少需要一个10A的稳压器来调节这样的电压和工作电流。 T-Motor对于此电压具有最轻的调节器(不带电线的7 g)-它是FPV 35A-32bit 3-6S 。 它是基于流行的BLHeli-32固件制成的 ,具有封闭代码,但设置范围广,并且具有大量类似物

小计:

由马达,螺旋桨和调节器(每个4个)组成的VMG(螺旋桨-马达组)重346克。

连同电子设备和有效载荷(346 + 505),一起获得了851 g,考虑到紧固件,电线和连接器(估计+100 g)= 951 g。

重量最佳时,框架和电池剩余量(1896-951)= 945克;最大重量(2622-951)= 1671克。

车架


我们计算最小机架尺寸,以使所选的15英寸螺旋桨不会相互干扰以产生牵引力。 机架制造商的尺寸指示了彼此成对角线放置的电机轴之间的距离。



从图片中可以找到斜边,斜边是从支腿算出的,等于螺杆直径和螺旋桨之间的距离之和。 相邻的15英寸螺旋桨叶片将在540毫米对角线处旋转1毫米。 添加一点空间,合适的框架的大小将约为600-700毫米。

您可以找到许多特价商品,例如,一次:600mm和750g,两个:650mm和450g,三个:690和675g,四个:650mm和750g。所有这些都以其性能和折叠元件(底盘,横梁)的存在而著称,以方便运输。

我会根据自己的需要推迟选择特定的实例,为进一步计算,我会记住450 g的镜框重量,

其中电池的最佳重量为495 g,最大为1221 g。

电瓶


要选择电池,您需要知道电池应提供的电流。

全速行驶时,发动机将“消耗” 30A(7.5A * 4台电动机),而电子设备将“消耗”约0.45A(10瓦)。考虑到很小的余量,我们将最小工作电池电流35A四舍五入。对于在30°C时具有高电流输出的锂电池,最小容量将为1.2 Ah(35/30),对于在10°C时输出电流的较轻锂电池和锂离子电池,最小容量为3.5 Ah(35/10) 。

作为选择,可从锂离子索尼VTC6组装6S2P使用BMS,它的重量约为630克(容量为6 Ah)。使用该电池,无人机的重量将为2031 g,比最佳重量重135 g,但在最大重量范围内。现在,让我们计算一下直升机在理想条件下可以冻结多长时间。总重量为2031 g,每台电动机的重量为508 g。让我们看一下电动机的特性,并找出该牵引力的电流消耗。它将大约等于1.6A。4个电机和电子设备的总电流为6.85A(1.6 * 4 + 0.45)。考虑到电池放电率高达20%,结果将为(6 Ah * 80%/(6.85 A))= 0.7小时或42分钟。

布局图




当我选择合适的框架并思考如何将其全部放置并固定时,我得出的结论是,绘制一些细节并从塑料订购3D打印和从碳粉铣削将更容易。可以在速卖通上订购一对成品的铁和硬件。



在对布局和重心进行了一些试验之后,我们得到了这样一个框架:



它由碳管和板,铝制零件以及钛制紧固件组成。估计的框架重量为350克,对角线为700毫米。3D框架模型零件清单

完全组装的模型(无电线):



带有电子设备,锂离子6S2P电池和电线的直升机的总重量应为1931。

是的,在我看来,这种无人机实在是太裸露了,对于自主版本而言,小雨会轻易弄湿车载电子设备。因此,我添加了一些塑料:



框架的3D模型框架详细信息列表
3D模型组装组件清单

一个空盒的重量为384克,总重量为2020克,一次充电的预计悬挂时间(电池放电最高可达20%):44分钟。

充电盒






充电盒将由铝型材,安装硬件和铝制夹心板制成。它将有一个路由器,一台计算机,天气传感器和一台可以看到着陆区的摄像机。我决定用两个机翼倾斜的屋顶,这样冬天就不会积雪并且不会干扰打开。尚未完全考虑打开阀的机制,并且尚未定义充气系统(我需要提示)。



在下一篇文章中,我将告诉您如何使用GUI或命令行通过Internet配置和启动无人驾驶飞机,有关当前正在选择的充电系统,用于控制飞机和分析图像的软件以及为什么我第一次通过Internet的飞行不会持续这么长时间的原因:





待续...

关于软件的第2部分。

Source: https://habr.com/ru/post/zh-CN414121/


All Articles