
![]() 4 j8 z4 `; W! t6 Y( e0 t0 V 一种利用超声波传感器检测和避障的系统 " L9 m! H# C2 `' b: v$ B ![]() ![]() 描述 来自传感器的数据将分四路发送到RC遥控器,RC遥控器在IL9341显示器上显示周围环境。' `8 U/ g* i9 k8 ?9 k0 a ![]() 接收器 它有一个由arduino mini、mpu6050 (gy87)和nrf24模块组成的接收器,。它可以接收,也可以发送。 m- m6 ?( ]# @% E& N 这将用于将来自mpu6050和HC-sr04s的数据发送回遥控器,并在那里显示。 9 \# d/ b& _1 D$ z5 D' F& Z ![]() 遥控器) V4 T/ A( x+ X% v) b 它由STM32f103、NRF24模块和ili9341显示器组成。5 I: R; n% z9 @0 R 数据在这里被处理,周围环境的图像将被绘制出来。 此外,这些数据还可用于控制四轮车并避免障碍物。 遥控器演示1 Z1 w( Q' _6 ^( \- [. } 我在读取超声波传感器数值时遇到了相当大的困难。我怀疑可能是螺旋桨的影响。 * W6 t4 H8 c: i6 \# Z 经过一次测试,我需要重新画板,看看如何准确地读出离地面的距离。 : }3 @5 d: ^+ ]# r+ F: {' O ![]() 组件 1 × zmr250四轴飞行器框架' W0 D" f! x/ k; S, w 1 × cc3d飞行控制器 W5 c1 i" Z; ]+ C M* P7 X 1 × arduino mini; Y; T4 p( o" [) S/ X3 ?- k 1 × stm32f103, i; Z1 E Q& t9 I" ? 2 × nrf24模块 1 × 锂电池3s 2200毫安; X t& U9 ?5 d6 A 1 × 锂电池1s 1500毫安 1 × RC遥控器外壳, C4 o: s6 ~/ V j& ? 1 × ili9341显示器320 x240 2 × 3.3v稳压 1 × 按键,导线,洞洞板) _ m; I2 G& A1 U# ~1 r i9 R. m 5 × HC-sr042 y6 Y% ?- T, N* n4 v 2 F1 ]2 u' X5 G) C0 `$ K 首次飞行! v% M0 S7 W& K 第一次飞行出了很多问题,因为一个int数值的向下溢出,导致油门从0降到255,当我把操纵杆降到很低的时候,四轴自行起飞。8 s9 G+ Z, \. W 几个小时后,我终于修复了错误的代码,四轴也终于又可以操纵了,没有任何问题。" \9 ]/ p4 E5 m3 d / J. ^0 d T( N 我添加了一个菜单,可以精确控制离障碍物的距离、前后俯仰的时间、扫描间隔和接收器上检测碰撞后的前后俯仰值等,当然还可以远程关闭和打开。0 y; `' y9 T8 T) M, q 现在我终于可以测试碰撞检测是如何工作的。它有间歇性工作,它会将四轴的高度设定为一个设定值,使其稍微远离障碍物。但是超声波传感器很难正确检测到它。 . H6 A6 \$ n$ U* a8 P% f6 L 超声波传感器的位置似乎并不理想,因为可能有些波,会从四轴的底部反弹。 , l$ e3 v6 Y+ d* m 更多的测试 经过几次飞行后,很明显超声波传感器有问题。9 ~2 e- G# M \! E" U3 P7 t 它们在地面上工作良好,但是在空中,随着螺旋桨旋转,很难检测到任何东西。这可能是由四轴飞行时产生的噪音和气压引起的。 经过一点研究,我找到了这篇论文 8 J# p5 f5 G( E) J8 X 这证实了我的猜测。 所以有点失望,我在ebay上买了一个准确的红外距离传感器,希望它不会有同样的问题。 . U8 l+ T9 {' B0 H# H# ]- |' b( o/ @' e 我还刚刚收到了rf24接收器,现在他能从传感器发回数据, 这样明天我就可以更准确地看到问题开始出现的地点和时间。我一直想为四轴增加一个电池监视器。5 L3 G; c% E4 r: y; n 这样就能看见控制器上的电池状态,这样你就能准确地知道你还剩多少电,而不必依赖这些烦人的电池蜂鸣器。; `4 I% t' B/ G, v* O& F* a 详细查看超声波传感器 视频演示 初步结果+ Q8 ^7 \0 z& @" Q% S% T0 i1 ` 我在我的控制器上增加了一个绘图功能,这样我可以在飞行时看到输出。 o, j8 A6 c, k" A# `0 v 这样做,我发现超声波传感器只能探测地板上0 - 25厘米的距离。草地上更糟。 再往上,螺旋桨的噪音影响就太大了。现在我最多可以在20厘米的高度工作。3 U/ @: P6 c$ B% H5 G2 _! ], V; T 当达到指定高度时,四轴通过将油门降低到控制器上的指定值来保持高度。 这只是一个粗略的比例控制器。一个合适的PID控制会效果更好,但是现在传感器问题必须首先解决。 ![]() PPS :每秒发送的数据包,RCV接收的传感器值以厘米为单位 |
很不错。 |
666无人机政策出来了 |