0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于樹莓派實(shí)現(xiàn)的水下無(wú)人機(jī)設(shè)計(jì)方案

科技觀察員 ? 來(lái)源:hackster.io ? 作者:hackster.io ? 2022-05-03 17:04 ? 次閱讀

本文介紹了由樹莓派驅(qū)動(dòng)的水下無(wú)人機(jī)原型的設(shè)計(jì)過(guò)程、開(kāi)發(fā)和組裝操作。

我在探索頻道上看了很多關(guān)于發(fā)明家的節(jié)目,有一次我決定自己做一些有趣的事情,這樣一次就可以真正令人印象深刻和困難:一些電動(dòng)機(jī)、控制器、處理、相機(jī)。買了很多有用(而且不是很有用)的東西后,我開(kāi)始思考應(yīng)該開(kāi)始什么樣的項(xiàng)目。最后我得出的結(jié)論是,有很多飛行和駕駛無(wú)人機(jī),但不是關(guān)于水下無(wú)人機(jī)(哈哈,現(xiàn)在看來(lái),我當(dāng)時(shí)簡(jiǎn)直大錯(cuò)特錯(cuò))。

pYYBAGJZNP6APkugAAmXzDWx6-w375.png

在網(wǎng)上沖浪后,我發(fā)現(xiàn)了幾個(gè)有趣的項(xiàng)目,但其中大多數(shù)要么處于開(kāi)發(fā)階段,要么價(jià)格不便宜。

展望未來(lái),我可以說(shuō)我有一個(gè)可以游泳幾米深的工作原型,盡管它有著部分優(yōu)點(diǎn)和缺點(diǎn)。我不能斷言我終于有了一個(gè)易于控制的東西,或者可以做的不僅僅是平息我的工程師熱情的東西。但是這些東西的所有單元都能正常工作,我的錯(cuò)誤和經(jīng)驗(yàn)可以幫助某人創(chuàng)造出真正重要的東西(即使它只對(duì)他自己有意義),這一點(diǎn)在我看來(lái)是非常重要的。

由于做了大量工作,本文可分為以下幾章:

選擇組件

電調(diào)編程

樹莓派服務(wù)器配置

使用 Raspberry Pi 處理電動(dòng)機(jī)

陀螺儀

樹莓派手電筒控制

客戶端-服務(wù)器通信協(xié)議

安卓應(yīng)用

視頻

屏幕和操縱桿控制

施工組裝和測(cè)試

結(jié)論

選擇組件

您將在下面找到用于創(chuàng)建設(shè)備的不同內(nèi)容的列表。

母板

poYBAGJZNPiAS9q0AAUTU_NNeTc534.png

在眾多控制器中,我選擇了Raspberry Pi 3B 。我不會(huì)為這個(gè)項(xiàng)目推薦類似 Arduino 的板,因?yàn)樗粫?huì)管理如此復(fù)雜的任務(wù),因?yàn)樾枰刂浦辽?4 個(gè)電機(jī)、二極管、陀螺儀、從相機(jī)發(fā)送視頻流并同時(shí)接收并處理來(lái)自控制設(shè)備的命令。Raspberry Pi 3B 帶有用于 RJ-45 連接器的內(nèi)置 Wi-Fi以太網(wǎng),這無(wú)疑會(huì)幫助您完成所有這些操作。

聯(lián)結(jié)渠道

poYBAGJZNPSAAGKoAAGcC0zCTUE181.png

在水下傳輸數(shù)據(jù)總是很困難。水是一個(gè)很好的盾牌,因此,您可以忘記任何無(wú)線數(shù)據(jù)傳輸。所以沒(méi)有其他選擇。

在水下傳輸數(shù)據(jù)的能力。

水下數(shù)據(jù)傳輸?shù)乃俣取?/p>

通用性(它非常適合 Raspberry Pi 3B 和發(fā)射器)。

基地發(fā)射器

pYYBAGJZNPOAYEsSAAFYX4NHzT0828.png

NEXX迷你路由器 有 3 個(gè)主要的傳輸選項(xiàng):

嘗試將 Wi-Fi 天線從水中連接到陸地(在這種情況下,應(yīng)該使用實(shí)心線而不是雙絞線),但存在很多爭(zhēng)議點(diǎn)。

在兩個(gè) Raspberry Pi 3B 之間創(chuàng)建一個(gè)客戶端-服務(wù)器橋連接(這將是合適的,但更昂貴且更麻煩)。

使用雙絞線將迷你路由器與 Raspberry 連接。這個(gè)選項(xiàng)被作為基礎(chǔ),因?yàn)樗亲羁煽?、最快速和最便宜的。?jīng)驗(yàn)證明,這是一個(gè)相當(dāng)不錯(cuò)的選擇。

電動(dòng)馬達(dá)

pYYBAGJZNPKAAZ7uAAISYgth2Jg646.png

N2830/2212 1000KV

在測(cè)試了 3 種不同的電機(jī)后,我選擇了這個(gè)模型。你可能會(huì)問(wèn)為什么?因?yàn)樗銐驈?qiáng)大,它有第二個(gè)軸,所以你可以同時(shí)使用 2 個(gè)螺旋槳。一般來(lái)說(shuō),所有電機(jī)在水中正常運(yùn)行,直到藻類或沙子進(jìn)入電機(jī)內(nèi)部。如果您選擇高速且功率較小的電機(jī),您會(huì)發(fā)現(xiàn)這些類型的電機(jī)并不是最適合水的。更便宜的電機(jī)也沒(méi)有達(dá)到預(yù)期。

控制板 (ESC)

poYBAGJZNPKASVyjAAOHPJLxAs0140.png

非洲式電調(diào) (30A)

這也很簡(jiǎn)單。它可以編程為正向/反向切換,30安培的功率對(duì)于被測(cè)電機(jī)來(lái)說(shuō)應(yīng)該足夠了。

Afro ESC USB 編程工具

pYYBAGJZNNCADf9UAAMW1kkDxZ4106.png

ESC 的編程工具。使用此設(shè)備,您可以上傳必要的固件。但實(shí)際上,這就是問(wèn)題所在。我不得不等了一個(gè)半月。

LED脈沖驅(qū)動(dòng)器

pYYBAGJZNMmAT51SAAO1Sz1cAFM112.png

7-30В 3А或類似

這非常適合我們的目的 - 它擁有兩個(gè)上述 LED,它還連接到 Raspberry 并允許您調(diào)整 LED 的亮度。

陀螺儀

MPU-6050

一個(gè)三軸陀螺儀/加速度計(jì),將位置數(shù)據(jù)發(fā)送到樹莓。有一些數(shù)據(jù),但不是很有用?。

相機(jī)

pYYBAGJZNL-AaelNAAG_79kf1fg163.png

RPi 相機(jī) F

您可以使用任何其他本機(jī) Raspberry Pi 相機(jī)。主要條件是它應(yīng)該通過(guò)FFC連接,而不是USB。視頻流一直是一個(gè)大問(wèn)題(延遲、編碼),或者更確切地說(shuō),這不是問(wèn)題,只是需要很多時(shí)間才能開(kāi)始。

操縱桿

poYBAGJZNLuAF3biAAPRchusv4Y883.png

iPega PG-9055 - 額外的控制助手,如果你的手濕了,相信我,他們會(huì)濕的,你可以使用這個(gè)設(shè)備控制無(wú)人機(jī)。

電池

Turnigy 2200mAh 3S 30C

再次進(jìn)行了很多測(cè)試。18650 電池不適合,因?yàn)榭刂破骶哂?25A 的放電率,這對(duì)于峰值負(fù)載條件下的整個(gè)系統(tǒng)來(lái)說(shuō)是不夠的(是的,幾塊電池在使用后就死了)??梢試L試使用 6 節(jié)電池并獲得 50A,但難度更大。這樣的直流電不能使用電線傳輸(不要忘記大約 100 m 的距離)。所以我買了 Li-Po,它優(yōu)雅地完成了任務(wù),完美地融入了外殼。

驅(qū)動(dòng)螺旋槳(主要問(wèn)題之一)

電纜接頭

還有外殼、連接器、電線和其他東西。

電調(diào)編程

不幸的是,全新的 Afro ESC 只能向一個(gè)方向旋轉(zhuǎn),因此您需要更新固件。

pYYBAGJZNLKALe17AARZfxcXjpk034.png

現(xiàn)在正確連接電線很重要,否則其中一個(gè)設(shè)備可能會(huì)發(fā)生故障。

在這里,您將找到一些有關(guān)如何正確連接電線的簡(jiǎn)短說(shuō)明:

一對(duì)紅色和黑色粗線,末端有一個(gè)公連接器。是通用電源。在這種情況下,提供的電源將是 12V 和所需的安培數(shù)。

紅色——輸入端口“+”。

黑色 – 輸入端口“-”。

一根粗紅黑黃的電線負(fù)責(zé)電機(jī)電源。我們現(xiàn)在不會(huì)連接它們,但稍后我們會(huì)將這些電線連接到具有相似顏色的電動(dòng)機(jī)的電線上。

細(xì)線負(fù)責(zé)控制電路板。

控制信號(hào)通過(guò)黃線傳輸。

紅線輸出5v(我沒(méi)用過(guò))。它們有幾種不同的類型,您可以在此處了解更多信息。

黑線應(yīng)連接到端口“-”。

因此,讓我們將細(xì)線連接到鏈接器:將黑線(減號(hào))和黃線(信號(hào))連接在一起。請(qǐng)勿觸摸或?qū)⒓t線連接在一起。下一步——為電路板提供電源(黑色和紅色厚輸入)。我使用了這個(gè)靜態(tài)電源單元,但任何其他具有類似特性的電源都可以(12V,2+A)。

打開(kāi)固件更新工具并選擇:

pYYBAGJZNK2AP7kgAAHovqyvZcs262.png

端口:選擇連接的 USB 端口。幸運(yùn)的是,只有很少的選擇。

波特率:9600。

控制器:基于 atmega 8 的無(wú)刷 ESC(8kB 閃存)。

選擇下載的固件文件。單擊“運(yùn)行”按鈕并祈禱:)

很快固件就會(huì)成功上傳到電調(diào),一切準(zhǔn)備就緒。

使用 Raspberry Pi 處理電動(dòng)機(jī)

一件重要的事情是,如果您正在構(gòu)建一個(gè)嚴(yán)肅的項(xiàng)目,而不僅僅是為了好玩,您不必使用 Raspberry PI 進(jìn)行實(shí)時(shí)工作,例如電機(jī)處理。PWM 生成不會(huì)如您所愿,因此請(qǐng)使用單獨(dú)的板,例如 Arduino 進(jìn)行控制。但是對(duì)于我的項(xiàng)目來(lái)說(shuō),使用 Raspberry 就足夠了。感謝Fabio Balzano在本文下方的評(píng)論中對(duì)此進(jìn)行了解釋。

所以,讓我們開(kāi)始我們工作中最有趣的部分——我們應(yīng)該為 Raspberry Pi 控件編寫代碼。找到項(xiàng)目文件夾~ /drone并在那里安裝 PiGpio 庫(kù):

poYBAGJZNKeAT6g_AAAl1VFwV50172.png

現(xiàn)在我將為您提供一些有關(guān) ESC 控制的簡(jiǎn)短信息。我們應(yīng)該將某個(gè)頻率傳輸?shù)郊?xì)黃線(控制)(參見(jiàn)“ESC 編程”部分)。afro_nfet_besc30_r1固件的范圍是1100-1900 ,其中值 1500 是平靜狀態(tài),1100 最大反向,1900 最大正向。創(chuàng)建文件engines.js并將JS代碼添加到其中:

//Calm state constant
const SERVO_ZERO = 1500;
//Connect 'pigpio' library
const Gpio = require('pigpio').Gpio;
// Define 4 motors using Raspberry pins (this process will be described below)
const servo1 = new Gpio(22, {mode: Gpio.OUTPUT});
const servo2 = new Gpio(10, {mode: Gpio.OUTPUT});
const servo3 = new Gpio(9, {mode: Gpio.OUTPUT});
const servo4 = new Gpio(27, {mode: Gpio.OUTPUT});
//Set each board into the state of "calm"
servo1.servoWrite(SERVO_ZERO);
servo2.servoWrite(SERVO_ZERO);
servo3.servoWrite(SERVO_ZERO);
servo4.servoWrite(SERVO_ZERO);
//After that you should enter the value into ESC
module.exports.engines = {
leftEsc: (value) => {
servo1.servoWrite(value);
},
rightEsc: (value) => {
servo2.servoWrite(value);
},
topLeftEsc: (value) => {
servo3.servoWrite(value);
},
topRightEsc: (value) => {
servo4.servoWrite(value);
}
}

為了使用此代碼,您應(yīng)該在app.js中編寫:

pYYBAGJZNJ-AUpmpAAAu-ZAV4CE938.png

實(shí)際上這部分代碼servo1.servoWrite()負(fù)責(zé)控制。1100 - 電機(jī)反向轉(zhuǎn)動(dòng),1900 - 最大正向轉(zhuǎn)動(dòng)。

在這里您可以找到 Raspberry pin 方案:

poYBAGJZNJuAOT46AAV_YtrxPec434.png

簡(jiǎn)而言之,你應(yīng)該使用橙色的 GPIO。一對(duì)由 GPIO 10 和 GPIO 22 組成,第二對(duì)是 GPIO 9 和 GPIO 27(使用 27、22 和 10 -9 會(huì)更合乎邏輯,但我在焊接時(shí)沒(méi)有考慮到,所以我不得不更改它)。如果考慮序數(shù)(它們是灰色的),那么這些是 13、15 和 19、21 聯(lián)系人。您應(yīng)該將 ESC 的黃線連接到它們中的每一個(gè),負(fù)號(hào)應(yīng)連接到一個(gè) GND,例如 39 觸點(diǎn)?,F(xiàn)在讓我們連接其他的東西。

將Afro ESC的電源線(紅色和黑色)連接到單獨(dú)的電源單元(12v),將電機(jī)連接到黃-紅-黑粗線,現(xiàn)在您可以嘗試它是如何工作的。

陀螺儀

連接示例:

poYBAGJZNJWAa_HvAALoTUYU6uI914.png

VCC到引腳 1 (3.3V PWR)

GND到任何負(fù)號(hào)

SCL到引腳 5 (GPIO 3)

SDA到引腳 3 (GPIO 2)

正確連接一切并不難,如果談?wù)撥浖鼤?huì)更簡(jiǎn)單——所有信息都可以在互聯(lián)網(wǎng)上輕松找到。在這里你應(yīng)該使用i2c-bus и i2c-mpu6050庫(kù)。將它們安裝到項(xiàng)目中:

pYYBAGJZNI-AFWk1AAAYNnlI4lM731.png

創(chuàng)建文件gyroscope.js并添加:

const i2c = require('i2c-bus');
const MPU6050 = require('i2c-mpu6050');
const address = 0x68;
const i2c1 = i2c.openSync(1);
const sensor = new MPU6050(i2c1, address);
var reading = false;
var sensorData = {};
module.exports.gyroscope = {
getData : () => {
return JSON.stringify(sensorData);
},
readRotation : () => {
sensor.readRotation(function (err, rot) {
if (err) {
console.log(e);
return;
}
console.log(rot);
});
},
readSensor : () => {
if (!reading) {
reading = true;
}
sensor.read(function (err, data) {
reading = false;
if (err) {
console.log(err);
} else {
sensorData = data;
}
});
}
}

以一定的頻率運(yùn)行 readSensor 方法,并從 getData 獲取上次調(diào)查的數(shù)據(jù)。會(huì)有很多位置分量(x,y,z,a)。我沒(méi)有足夠的時(shí)間來(lái)定義這些組件的含義,因?yàn)槲矣懈匾娜蝿?wù)——處理。我知道調(diào)查它會(huì)更好,但結(jié)果的相關(guān)性對(duì)于當(dāng)時(shí)的這個(gè)項(xiàng)目來(lái)說(shuō)并不是很重要。

樹莓派手電筒控制

所以,讓我們繼續(xù)增加我們無(wú)人機(jī)的功能,現(xiàn)在我將向您介紹 LED。我有兩個(gè)XHP-50 LED 和 LED 脈沖驅(qū)動(dòng)器(見(jiàn)上表)。它們很容易過(guò)熱,因此我建議您將它們與散熱器一起使用。你可以在同一個(gè)網(wǎng)上商店找到它們,最主要的是不要忘記尺寸。因此,將 LED 連接到散熱器上,使用電線將一個(gè) LED 的負(fù)極焊接到另一個(gè) LED 的正極(它們已標(biāo)記)并焊接 - 和 + 線:

poYBAGJZNIKAc78IAAKAyuFuqdw838.png

控制器和焊接:

poYBAGJZNHyAJyDjAAHuDLKhfYY198.png

電源 - 12V 正負(fù),您可以使用與電機(jī)相同的輸入。LED 連接器應(yīng)連接到先前焊接的連接器,L- 到負(fù),L+ 到正。在這種情況下,我們不需要模擬觸點(diǎn)(A),所以不要連接它。

現(xiàn)在我們對(duì)數(shù)字輸入(D)和接地輸入(G)感興趣?,F(xiàn)在您應(yīng)該將數(shù)字輸入 (D) 與 GPIO11 連接,將接地輸入 (G) 與 GND 連接(您可以在 Raspberry 上選擇任何您想要的)。

現(xiàn)在讓我們回到 Raspberry Pi,創(chuàng)建一個(gè)文件light.js并添加以下內(nèi)容:

//Again the same library
const Gpio = require('pigpio').Gpio;
//Create Gpio for your pin
const light = new Gpio(11, {mode: Gpio.OUTPUT});
// You can set the value starting from 0 to 255 (I have found this info in the LED driver instructions)
const LIGHT_MIN = 0;
const LIGHT_MAX = 255;
//It will be needed for calculations
const LIGHT_DIAPASONE = LIGHT_MAX - LIGHT_MIN;
// Turn off the LED (the system starts with the LEDs turned on to maximum)
light.pwmWrite(LIGHT_MIN);
//Export work methods
module.exports.light = {
on: () => {
//Transmit the value 255 to the driver
light.pwmWrite(LIGHT_MAX);
},
off: () => {
// Transmit the value 0 to the driver
light.pwmWrite(LIGHT_MIN);
},
//Here will be the percent value from 0 to 100
set: (val) => {
if(val < 0 || val > 100) return;
//Calculate the value based on the percentage
val = Math.round(LIGHT_MIN + LIGHT_DIAPASONE / 100 * val);
console.log("Light:"+val);
//Transmit the value to the driver
light.pwmWrite(val);
}
}

我們可以使用app.js或引擎運(yùn)行它:

pYYBAGJZNGqAMhhGAAAu-wGt3Iw482.png

客戶端-服務(wù)器通信協(xié)議

正如您從樹莓派的初始配置中了解的那樣,通信將使用套接字連接進(jìn)行。您還需要一些在服務(wù)器和客戶端中硬編碼的命令集。當(dāng)我自己做所有事情時(shí),我決定使用我自己的格式,因?yàn)榇嬖诘倪x項(xiàng)與重量/可讀性標(biāo)準(zhǔn)不太匹配。因此,讓我們?cè)诳紤]控制模型的情況下進(jìn)行構(gòu)建,在這種情況下,它將是 Android 智能手機(jī)。

pYYBAGJZNGOAakBaAAHlwcBdAsU317.png

在這里你可以找到模型本身(應(yīng)用程序?qū)⒃谙旅婷枋觯?/p>

畫面分為兩部分。左邊部分代表水平軸(前后),右邊部分代表垂直軸。如果您將手指放在某個(gè)區(qū)域,這將被視為參考點(diǎn)并由一對(duì)電機(jī)控制,但它也是一個(gè)“平靜”點(diǎn)。

如果您的手指垂直向上滑動(dòng),兩個(gè)電機(jī)的正向旋轉(zhuǎn)速度將隨著功率從 0 到最大值(取決于接觸點(diǎn)到當(dāng)前點(diǎn)的距離)緩慢增加。

如果您向下滑動(dòng)手指,兩個(gè)電機(jī)將以一定速度反向旋轉(zhuǎn),該速度取決于與接觸點(diǎn)的距離。

如果您向右滑動(dòng)手指,左側(cè)電機(jī)將向前旋轉(zhuǎn),而右側(cè)電機(jī)將反向旋轉(zhuǎn)。所以,實(shí)際上,我們需要知道偏離接觸點(diǎn)的角度(其中top=90,bottom=90,right=0,left=180)和速比——手指到接觸點(diǎn)的距離(從 0 到 100)。對(duì)象命令應(yīng)如下所示:

pYYBAGJZNECAO-IHAAAcpfh6JH8597.png

С - (command),任何命令都應(yīng)該以這個(gè)字母開(kāi)頭;

: - 鍵值分隔符;

; - 鍵值對(duì)的分隔符;

L——表示觸摸是在屏幕左側(cè)進(jìn)行的;

R - 表示觸摸是在屏幕的右側(cè)進(jìn)行的;

LIGHT——代表光 :)

A ——ANGLE,偏差角;

V——價(jià)值,某物的價(jià)值。

因此,第一個(gè)命令聽(tīng)起來(lái)像:“一對(duì)水平電機(jī),方向 - 45 度(左電機(jī)處于最大速度(但最大值為 35%,基于 V),右電機(jī)停止),旋轉(zhuǎn)速度為 35%最大限度”。

第二條命令:“垂直電機(jī)對(duì),方向 - 0 度(左電機(jī)最大轉(zhuǎn)速,右電機(jī)反向最大轉(zhuǎn)速),最大轉(zhuǎn)速”。

第三個(gè)命令:“以 50% 的亮度打開(kāi)燈”。

當(dāng)您通過(guò)套接字在鍵值塊中為每個(gè)值更改發(fā)送單獨(dú)的命令時(shí),這就是它的工作原理。然后神奇地變成控制板上的命令。解釋這些數(shù)據(jù)的轉(zhuǎn)換會(huì)很無(wú)聊。所以大家可以試著自己研究一下,掌握控制器。

安卓應(yīng)用

最后,我們已經(jīng)到了嘗試創(chuàng)建控制器的時(shí)刻。一般來(lái)說(shuō),通信的意思是:“點(diǎn)擊屏幕上的東西——將值傳輸?shù)椒?wù)器”。我會(huì)寫一些關(guān)于應(yīng)用程序的內(nèi)容。沒(méi)有什么不尋?;蛱貏e具有挑戰(zhàn)性的,所以我不會(huì)發(fā)布所有代碼。如果您愿意,您可以訪問(wèn)存儲(chǔ)庫(kù)并找到所需的信息。我還想指出,我沒(méi)有使用任何新奇的模式,如 MVVM、MVP、VIPER 等,因?yàn)槲倚枰谧疃痰臅r(shí)間內(nèi)工作的應(yīng)用程序。UI 盡可能簡(jiǎn)單。

首先,您應(yīng)該創(chuàng)建一個(gè)帶有狀態(tài)顯示視圖的活動(dòng)。布局如下:

視頻顯示層(播放器封裝在一個(gè)片段中)。

JoystickView層是一個(gè)自定義視圖,其中dispatchTouchEvent方法被覆蓋,它處理手指在屏幕上的按下和移動(dòng)。它將 UI 線從按下點(diǎn)繪制到當(dāng)前狀態(tài)。多點(diǎn)觸控支持是強(qiáng)制性的,因?yàn)榭刂剖怯脙筛种笀?zhí)行的。

一個(gè)帶有 Raspberry Pi 當(dāng)前溫度的 TextView 的層(如果出現(xiàn)問(wèn)題并且它開(kāi)始過(guò)熱,您可以在它關(guān)閉/燃燒之前停止使用它)。幸運(yùn)的是,我的 Raspberry 沒(méi)有發(fā)生這種情況。

陀螺儀顯示的數(shù)據(jù)層。在標(biāo)簽值對(duì)中設(shè)置的 TextView。它顯示來(lái)自陀螺儀的“原始數(shù)據(jù)”。計(jì)劃處理這些數(shù)據(jù),但我沒(méi)有足夠的時(shí)間來(lái)做它并發(fā)明一個(gè)很酷的顯示它。

一個(gè) SeekBar 層 - LED 控件,一個(gè)簡(jiǎn)單的元素,它在拖動(dòng)時(shí)將值從 0 更改為 100。

施工組裝和測(cè)試

現(xiàn)在我們已經(jīng)到了下一步——我們需要找到一些東西,我們可以放置上面提到的所有東西(哈哈)。在設(shè)計(jì)和組裝階段,我的朋友 Sergey 給了我很多幫助。實(shí)際上,他找到了一個(gè)外殼,做了一個(gè)鐵平臺(tái),我們可以將電機(jī)安裝在不同的位置,然后將它們放在一起:

poYBAGJZNCSAXh1LAAZldwFa5oI173.png

我先說(shuō) 6 個(gè)電機(jī)的原型會(huì)更有效率,但對(duì)我來(lái)說(shuō),即使有 4 個(gè)電機(jī)也很難支持原型,這就是為什么決定用 4 個(gè)電機(jī)測(cè)試原型的原因。

首先,我們決定測(cè)試外殼的結(jié)構(gòu),這就是為什么我們沒(méi)有將所有電子設(shè)備都放入外殼中,而是簡(jiǎn)單地將電機(jī)連接到平臺(tái)上,兩對(duì)雙絞線從電調(diào)發(fā)送信號(hào)到每個(gè)他們(ESC在測(cè)試期間一直留在內(nèi)陸)。

poYBAGJZNByAMrTsAAamrGW3Zps699.png

結(jié)論

所有這一切的主要結(jié)果是,我獲得了構(gòu)建此類單元和系統(tǒng)的豐富經(jīng)驗(yàn)。在開(kāi)發(fā)過(guò)程中使用了大量不同的設(shè)備,其管理比看起來(lái)要容易得多。四電機(jī)原型并沒(méi)有預(yù)期的那么好——控制這樣的設(shè)備非常困難。最好使用四個(gè)垂直電機(jī)和至少兩個(gè)水平電機(jī)。同時(shí),它應(yīng)該用陀螺儀穩(wěn)定,因?yàn)閷?duì)于人類來(lái)說(shuō),它很難完美地控制它,需要幫助(飛行無(wú)人機(jī)也是如此)。

此外,所有在售的電機(jī)都會(huì)被沙子和其他東西堵塞,所有單元都可能因腐蝕而損壞(這是合乎邏輯的),不適合此類項(xiàng)目。我沒(méi)有找到水下馬達(dá)(可以表明它是防水的,但它只能在 1-2 米的深度正常工作)。在這個(gè)項(xiàng)目之后,任何智能家居似乎都沒(méi)有那么復(fù)雜了。服務(wù)器,中繼命令,僅此而已。您需要的主要是有時(shí)間和愿望去做。其余的將隨之而來(lái)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 無(wú)人機(jī)
    +關(guān)注

    關(guān)注

    227

    文章

    10311

    瀏覽量

    179237
  • 樹莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1697

    瀏覽量

    105461
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    The Drone Pi :用樹莓無(wú)人機(jī)(一)——材料準(zhǔn)備

    RaspiU盤:用來(lái)保存視頻遙控和遙控接收器:把遙控接收器連到Multiwii盡請(qǐng)期待:用樹莓無(wú)人機(jī)(二)——工作原理和框架構(gòu)造用樹莓
    發(fā)表于 12-29 15:24

    樹莓無(wú)人機(jī)(三)——推進(jìn)和飛行控制

    樹莓無(wú)人機(jī)(一)——材料準(zhǔn)備用樹莓無(wú)人機(jī)(二)——工作原理和框架構(gòu)造推進(jìn):飛行控制器和
    發(fā)表于 01-06 10:54

    樹莓無(wú)人機(jī)(完)——樹莓部分

    樹莓無(wú)人機(jī)(一)——材料準(zhǔn)備用樹莓無(wú)人機(jī)(二)——工作原理和框架構(gòu)造用
    發(fā)表于 01-06 11:32

    有沒(méi)有對(duì)水下無(wú)人機(jī)感興趣的

    本帖最后由 hellocode 于 2016-10-4 18:27 編輯 本人8年軟件經(jīng)驗(yàn),想找個(gè)華南地區(qū)經(jīng)驗(yàn)較豐富的硬件portner,業(yè)余時(shí)間DIY個(gè)水下無(wú)人機(jī)玩玩,有沒(méi)有感興趣的大哥一起探討探討{:12:}
    發(fā)表于 10-01 11:31

    你期待水下無(wú)人機(jī)的什么功能?

    `你期待水下無(wú)人機(jī)的什么功能?第一個(gè),就是導(dǎo)航,我比較喜歡,因?yàn)楫吘?b class='flag-5'>水下就好比一片四面望不到的森林,很容易迷失方向高清的攝影功能,當(dāng)然也少不了足夠的照明,水下沒(méi)有太陽(yáng),超過(guò)七八米就開(kāi)始
    發(fā)表于 01-17 17:51

    無(wú)人機(jī)電源系統(tǒng)設(shè)計(jì)方案探討

    系統(tǒng)設(shè)計(jì)更加容易,而且還可讓無(wú)人機(jī)設(shè)計(jì)人員專注于無(wú)人機(jī)設(shè)計(jì)之其他部分,而不是在電源系統(tǒng)設(shè)計(jì)上花大量的時(shí)間;它不僅可節(jié)省設(shè)計(jì)完成時(shí)間,還可降低設(shè)計(jì)復(fù)雜性?! 榱顺浞掷蒙鲜鰞?yōu)勢(shì),Vicor模組電源
    發(fā)表于 10-09 10:31

    無(wú)人機(jī)電源系統(tǒng)設(shè)計(jì)方案探討

    復(fù)雜性不僅可以使電源系統(tǒng)設(shè)計(jì)更加容易,而且還可讓無(wú)人機(jī)設(shè)計(jì)人員專注于無(wú)人機(jī)設(shè)計(jì)之其他部分,而不是在電源系統(tǒng)設(shè)計(jì)上花大量的時(shí)間;它不僅可節(jié)省設(shè)計(jì)完成時(shí)間,還可降低設(shè)計(jì)復(fù)雜性?! 榱顺浞掷蒙鲜鰞?yōu)勢(shì)
    發(fā)表于 10-09 10:02

    TDK-Lambda電源在系留無(wú)人機(jī)水下機(jī)器人中的應(yīng)用

    近來(lái),在與客戶工程師的溝通中了解了一些系留無(wú)人機(jī)水下機(jī)器人等方面的系統(tǒng)應(yīng)用,兩種設(shè)備雖然完全屬于不同的行業(yè)領(lǐng)域,但是供電的構(gòu)架卻有很多相似之處,這里粗略整理一下,分享給大家。系留無(wú)人機(jī)電源構(gòu)架系留
    發(fā)表于 08-16 11:15

    多軸無(wú)人機(jī)BLDC驅(qū)動(dòng)解決方案

    、、科學(xué)考察、石油勘探、航空遙感、邊防巡邏、森林防火、災(zāi)況評(píng)估、氣象預(yù)報(bào)、考古研究等)    常見(jiàn)的玩具無(wú)人機(jī)和小型無(wú)人機(jī)通常采用簡(jiǎn)潔的4軸設(shè)計(jì),而用于快遞、運(yùn)輸、行業(yè)用途的無(wú)人機(jī)則會(huì)采用更多軸的
    發(fā)表于 07-02 15:40

    航模/無(wú)人機(jī)遙控的解決方案

      一、方案概述:  一個(gè)典型的無(wú)人機(jī)系統(tǒng)包括飛行器、一個(gè)地面控制站(Ground Control Station)GCS、有效載荷及數(shù)據(jù)鏈路。地面控制站用于實(shí)現(xiàn)任務(wù)規(guī)劃、鏈路控制、飛行控制、載荷
    發(fā)表于 07-03 14:56

    怎樣去設(shè)計(jì)一個(gè)基于樹莓和Python的無(wú)人機(jī)視覺(jué)跟蹤系統(tǒng)呢

    怎樣去設(shè)計(jì)一個(gè)基于樹莓和Python的無(wú)人機(jī)視覺(jué)跟蹤系統(tǒng)呢?有哪些設(shè)計(jì)步驟呢?
    發(fā)表于 11-12 07:15

    powerray水下無(wú)人機(jī)簡(jiǎn)單介紹

    跟市面上“換湯不換藥”的空中無(wú)人機(jī)大不一樣,水下無(wú)人機(jī)絕對(duì)算的上無(wú)人機(jī)市場(chǎng)的一股清流。除了水下攝影之外,
    發(fā)表于 01-15 08:43 ?5460次閱讀

    水下無(wú)人機(jī)原理分析

    本文主要介紹了水下無(wú)人機(jī)原理和水下無(wú)人機(jī)分類,其次介紹了水下無(wú)人機(jī)控制問(wèn)題和
    發(fā)表于 01-15 16:07 ?1.4w次閱讀

    水下無(wú)人機(jī)的用途和優(yōu)勢(shì)有哪些

    水下無(wú)人機(jī)目前已經(jīng)得到廣泛的運(yùn)用。本文主要介紹了水下無(wú)人機(jī)的用途、水下無(wú)人機(jī)的優(yōu)勢(shì)。及
    發(fā)表于 01-15 16:19 ?9366次閱讀

    無(wú)人機(jī)可以保護(hù)水下生物嗎

    使用無(wú)人機(jī)、水下無(wú)人機(jī)等設(shè)備,搭建江豚生活習(xí)性巡護(hù)系統(tǒng)、水生態(tài)環(huán)境巡護(hù)系統(tǒng)和無(wú)人機(jī)智能巡護(hù)系統(tǒng)。
    發(fā)表于 06-05 14:10 ?1178次閱讀