資料介紹
描述
前言:
我喜歡獨自航行,因為當(dāng)一個人帶著他的帆船在海上航行時,他得到了進化到更高水平所需的一切。在惡劣天氣的生海中航行可能非常困難,但如果他選擇陽光和風(fēng)好的天氣好的日子,享受將是最大的。
幸福意味著無限的視野,完美的運動技術(shù),最佳的選擇,也意味著人類的東西,如一杯好酒和美味的三明治!正是在這個時候,自動駕駛儀提供了幫助:它代替您工作,同時您在海上享用下午 5:00 的茶和餅干。:-)
Autopilot 能為您做什么:
帆船沒有引擎,不能沿著程序化的路徑從港口到海灘,然后到釣魚點,繞過燈塔再返回,它不能。
整個工作由水手完成,此時我們必須了解它:修剪風(fēng)帆,控制天氣和風(fēng)源/速度,加固或釋放繩索,注意與其他船只的交通,決定方向和轉(zhuǎn)向......水手決定休息一下,比如說 10 秒或幾分鐘(著名的“下午茶時間”),他打開了自動駕駛儀。在幾秒鐘內(nèi),它的 GPS 會獲取船的位置、速度和方向,并能夠保持方向(路線)。轉(zhuǎn)向系統(tǒng)是一根連接到方向舵的操縱桿,通常由專業(yè)的水手手移動,現(xiàn)在由自動駕駛儀通過由滑輪和繩索連接的步進電機控制。
控制方向舵是微調(diào)或粗調(diào)的連續(xù)工作。船更小(更輕),影響它的方向因素的變化更大:海浪,風(fēng)的方向和壓力,水手運動引起的船上重量轉(zhuǎn)移,海流。但是Sailor總是醒著,即使自動駕駛開啟,通過遙控的方式改變實際路線:上面有4個按鈕,標(biāo)記為+1 -1 +10 -10,用于角度的小或大變化,增加或減少值。這些按鈕也出現(xiàn)在自動駕駛儀上,綠色(右)和紅色(左)按鈕。藍(lán)色按鈕(中間)用于激活或停用自動駕駛儀,即暫停。它也是一個黑色按鈕,用于設(shè)置內(nèi)存中的參數(shù)。
電路:
主要處理由 MCU Arduino Uno完成。另一個 MCU,Arduino Nano ,是看門狗:我知道它在 Uno 內(nèi)部確實存在一種看門狗,但我喜歡用獨立的外部微控制器來做,這是我一生的夢想,我現(xiàn)在很開心!Uno 必須通過引腳 3 -> A0 將 Nano 喂入高/低,5/0 伏,至少每 2.5 秒一次(喂食間隔);如果不是,則表示 Uno 正在“休眠”或“阻塞”,Nano 會重置 Uno……它從未發(fā)生過,你能相信嗎?
它與焊接在一起的i2c 電路轉(zhuǎn)換器一起使用流行的顯示器,最后僅使用 4 根線顯著節(jié)省了與 Uno 通信的數(shù)字引腳。還有按鈕和遙控器的連接方式由電阻分壓器完成,以達到使用盡可能少的 MCU 端口的目標(biāo);我選擇了 1% 精度的電阻,模擬比較值應(yīng)該在我輸入代碼的值之間;如果由于您選擇了其他類型的電阻而無法識別某些按鈕,也只需對常量進行一些更改(修改“checkRfRC()”和“checkHWButtons()”處的代碼)。RF 433Mhz 遙控 (RC) 電路運行良好;為了提高距離覆蓋范圍和成功機會,我添加了一個你可以用一根銅線自己制作的線圈天線;我在 10 米外對其進行了測試,但我認(rèn)為它甚至可以在 20 米或更遠(yuǎn)的地方工作,考慮到我用來測試 Autopilot 的目標(biāo)帆船只有 4.20 米長,這已經(jīng)綽綽有余了。
GPS單元我一開始用的是EM406A不錯,可惜后來發(fā)現(xiàn)有Week-Rollover-Bug,太舊了,只好換了個很不錯的備受歡迎的北天BN-220T。使用其配置軟件,請將其設(shè)置為每秒“吐”出 2 次(2Hz),這是必要的“$GNRMC”NMEA 序列句。GPS 將 (TX) 串行數(shù)據(jù)發(fā)送到 Uno 的引腳 0 (RX)。該數(shù)據(jù)包含用于計算電機校正的所有導(dǎo)航數(shù)據(jù):日期、時間、位置緯度和經(jīng)度、真實航向、速度和衛(wèi)星定位的有效性。由于 Arduino 的 IDE 編程也使用 pin 0 (RX) 端口,請記住在此操作期間暫時斷開 GPS...
我的另一個夢想是使用 EEPROM 。IC 2404 是一個漂亮的 512 字節(jié) i2c 集成電路,我用于在此存儲芯片中讀取/寫入步進電機運動的一些參數(shù),我將在稍后的“軟件”段落中解釋。
組件列表:
- Arduino Uno 作為 MCU
- Arduino Nano 作為 WatchDog
- 北天BN-220T GPS
- 步進電機,型號 23LM,54 步 = 1/4 轉(zhuǎn)
- 用于電機的控制器 Keyes L298
- RF433Mhz RC XD-YK04+4鍵遙控器+線圈天線
- 6 個常開按鈕(2xRed、2xGreen、1xBlack 和 1xBlue)
- 電源開關(guān)(白色)
- 用于外部步進電機的母頭 + 公頭 6 針圓形連接器
- 蜂鳴器
- 顯示LCD1602 2x16字符+i2c轉(zhuǎn)換電路
- 3 個 LED(紅色、藍(lán)色和黃色))
- IC 24c04 i2c eeprom
- IC 4051 多路復(fù)用器
- 電池 LiPo 2s 7.4v 2600mA
- IC 7805 穩(wěn)壓器 + 散熱器
- 熱敏電阻 NTC MF52-103 10k
- 自恢復(fù)保險絲 2A
- 6x 1N4148 二極管 (D1-D6)
- Autopilot 防護罩上的電阻器(R1=330, R2=1k, R3=2k, R4=5.1k, R5=1k, R6/R7/R14=330, R8-R13=10k, R15=10M)
- 電容器(C1=470uF 16v,C2=100n)
- 2W 0.22 歐姆電阻 (R6)
- 公針
- 母長針頭
- 外殼透明且“防水”
電路上有幾個傳感器都通過IC 4051 多路復(fù)用器連接到 Arduino Uno 。它是一個熱敏電阻,以控制穩(wěn)壓器散熱器溫度,一個2W電阻和4x10k作為分壓器來計算安培作為整個電路的功耗。電池電壓也得到控制:當(dāng)單個元件放電到 3.3v 以下時,LiPo 是關(guān)鍵的;該電路在一個封裝中包含兩個元件 (2S) LiPo,在低電壓(低于 7.0v)的情況下,蜂鳴器會以短促的嗶嗶聲通知您。不要等待太久關(guān)閉,并盡快充電!發(fā)光二極管:黃色以 1Hz 閃爍,讓您知道 WatchDog 正在工作;自動駕駛開啟時藍(lán)色開啟,暫停則關(guān)閉;按下遙控器按鈕之一時,紅色 LED 閃爍。
所有電路工作電壓為 5.0v,由 LiPo 2S 7.4v 2600mA/h 電池和IC 7805 穩(wěn)壓器供電。電流不應(yīng)大于800mA,但通常在100-450mA左右。請在上面放一個散熱器。熱敏電阻放在上面,如果溫度超過 50°C,蜂鳴器會發(fā)出嗶嗶聲。
PCB印刷電路板和組裝:
由于這個原因,我使用了單面 PCB ,我必須包括一些跳線(虛線)來解決整個電路的路線。此處顯示了組件面,但在下方您有所有文件、組件和焊接面,鏡像,用于通過激光打印機在“黃色”或“藍(lán)色”紙張上下載和打印。我用的是黃色的,但他們說藍(lán)色更好(但價格要高得多)。打印時請記住禁用碳粉節(jié)省設(shè)置,改為使用 1200 dpi 分辨率以獲得深黑色效果。從魔術(shù)片到PCB的墨粉轉(zhuǎn)移過程是使用熱熨斗完成的……在兩面印刷,也在元件面上印刷,可以輕松識別物品的位置,甚至使項目“專業(yè)”。
兩塊 PCB 的尺寸都可以作為堆棧安裝在另一個 Arduino Uno 上:首先是電源單元,然后是自動駕駛儀單元。
我的選擇是將所有東西放在一起,PCB、MCU、RC、電機驅(qū)動電路、電池、GPS、按鈕、開關(guān)、電線、連接器等。想著有一天可以重復(fù)使用它們:我沒有把它們焊接在一起,我用頭和流行的杜邦電線/連接代替。然后大約有200個未焊接的連接,這意味著不時會發(fā)生意外和不需要的故障或電路的不同行為,這是正常的。建議焊接一切以獲得更穩(wěn)定的電路!
參數(shù)設(shè)置和顯示傳感器值:
按下盒子側(cè)面的黑色按鈕,進入設(shè)置模式;這也可以在主動導(dǎo)航期間完成,無需先輸入 Pause。顯示屏第一頁顯示電池電壓(V=7.83)、功耗(mA=177)和散熱器附近熱敏電阻傳感器的溫度(38°C);一次又一次地按下進入下一頁的黑色按鈕;第 2、3、4、5 頁顯示下列參數(shù),您可以通過 -1 和 +1 按鈕更改這些值。第 6 頁顯示“正在更新...”如果您更改了某些內(nèi)容,則值將保存在 EEPROM 存儲器中。
- 間隔:即2000毫秒,是步進電機一次嘗試和另一次嘗試之間的時間,以恢復(fù)“H”航向“R”路線,向右或向左移動舵桿;
- 最小值:即 2°,是自動駕駛干預(yù)的最小偏離路線度數(shù);達到此值,方向舵穩(wěn)定地保持在中心位置;
- Max:即40°,是步進電機一次的最大轉(zhuǎn)向變化;如果計算的是 50° 變化,實際上 Stepper 只會移動 40°;
- Coeffic.:即1.50 x°,是一次轉(zhuǎn)向變化的系數(shù);如果計算是針對 40° 變化,實際上步進電機將移動 (40 x 1.50)=60°;
當(dāng)安裝在帆船上時,這些參數(shù)是微調(diào) Autopilot所必需的。響應(yīng)性、靈敏度和平滑度取決于滑輪的直徑、滑輪的數(shù)量、步進電機上主滑輪的直徑、舵的靈敏度、舵桿連接在其上的長度等。讓我們安裝一切,并嘗試在船上體驗。當(dāng)然,在所有測試階段都選擇一個陽光明媚、風(fēng)輕云淡的日子!
它是如何“現(xiàn)場”工作的:
您正在海上、湖上或海港周圍航行。現(xiàn)在是下午茶時間,你的可樂和你最喜歡的三明治在口袋里等著。我們在這里:打開 Autopilot并讓它進行衛(wèi)星 GPS 定位,您現(xiàn)在應(yīng)該在顯示屏上讀取以節(jié)為單位的實際速度、時鐘和航向方向,即 H270°(R=要遵循的路線,H=實際航向)以度為單位(記住180°=南,270°=西,360°或0°=北,90°=東)。在暫停模式下(顯示 STOP),R 和 H 值相同。現(xiàn)在連接轉(zhuǎn)向繩,從步進電機到舵桿,然后按藍(lán)色按鈕啟動 Autopilot 轉(zhuǎn)向;在這一點上,自動駕駛儀保持 R=路線方向,并且可以控制 H=航向時發(fā)生的情況。標(biāo)題編號肯定會更改 ,根據(jù)我們已經(jīng)討論過的天氣條件,緩慢或快速。然后自動駕駛儀嘗試恢復(fù)到 R=路線方向進行修正,即 -10°、+5° 等,直到 H 值等于 R 值。您可以決定對路線進行一些更改,您可以使用設(shè)備上的紅色和綠色按鈕(-1 -10 +1 +10)或通過遙控器來修改數(shù)字。要收回對轉(zhuǎn)向的控制,您只需按下暫停藍(lán)色按鈕,將繩索從舵桿上斷開,用手繼續(xù)工作。做得好。
軟件方面:
代碼很長,但我希望它足夠清晰,易于理解。無論如何,我會解釋它是如何做的。該草圖使用了大約 65% 的程序和大約 45% 的內(nèi)存。即使使用 String 類,主要用于 Serial NMEA 語句操作,整個闡述流程也穩(wěn)定可靠;它使用“serialEvent()”每秒兩次從 GPS 接收數(shù)據(jù),然后調(diào)用“nmeaExtractData()”,最后使用“nmea0183_checksum()”檢查數(shù)據(jù)包以確保數(shù)據(jù)完整性。如果您使用其他品牌和型號的 GPS確保句子結(jié)構(gòu)相同,否則您必須在此處進行一些更改。例如EM406A 使用 "$GPRMC" packet id ,BT220 使用 "$GNRMC" 代替...只是一個小的名稱更改...https://nmachecksum.eqth.net - 這里是一個完整的 NMEA 句子的示例,它包含:id、時間、有效性、緯度、經(jīng)度、速度、真實路線、日期、變化和校驗和。
$GPRMC, 095836.000, A, 4551.9676, N, 01328.7118, E, 2.09, 341.84, 280519,, *08
在“Setup()”期間檢查 EEPROM :如果是新的或未知的,它會被初始化(格式化)。內(nèi)存中的參數(shù)以字節(jié)讀取/寫入:0=0x29, 1=0x00, 2-3=interval, 4-5=min, 6-7=max, 8-11=coefficient (byte, byte, int, int,漂浮)。我小心地處理了 EEPROM 讀/寫操作,可能防御性太強了……傳感器每 10 秒通過多路復(fù)用器的“readMuxSensors()”檢查一次,如果電池電量低或溫度高,就會發(fā)出警報。功耗分辨率低,步長40mA左右。不斷檢查硬件和 RC 按鈕;他們所做的取決于“IsSetup”布爾值以及顯示“RefreshDisplay()”是否. 代碼的核心是 STEERING CONTROL 部分,它調(diào)用“gomotor()”函數(shù)將步進器移出和移回;是的,它可能會將方向舵向右移動 10°,并且在間隔值之后它會移動回零方向舵位置,等等在新一輪計算之后。如前所述,轉(zhuǎn)向工作也在設(shè)置期間進行,因為它只影響幾個按鈕和顯示行為。Whatchdog 喂食非常簡單但很重要:只要盡快打開/關(guān)閉它的 Pin。
如何在帆船上安裝它:
如下圖所示,我選擇將Autopilot和步進電機放在船尾,都用螺栓等固定好;一根直徑為 6 毫米的繩子從主電機滑輪開始,繞著放置在兩側(cè)的另外兩個滑輪。這兩個滑輪應(yīng)通過兩個蹦極環(huán)“固定”在船上,以保持繩索略微張緊。此時,最后,你要決定如何將繩索連接到舵桿(臨時連接);它必須在您希望 Autopilot 運行時連接,易于連接和斷開連接。讓 Autopilot 系統(tǒng)遠(yuǎn)離水!:-)
新聞與更新:
- 10.05.2020 ,添加用于下載步進滑輪(由我制作)和安裝板(由 Andrew Barney 制作)的 .STEP 3D CAD 項目文件,以及它們的 3D 預(yù)覽圖片。
- 14.01.2022 ,我發(fā)現(xiàn) NTC 溫度計算方面的改進,因此您應(yīng)該更改 readMuxSensors() 函數(shù)中的值,如下所示:
- 浮動 R1 = 100000; // 100k Ohm 分壓電阻
- 浮動 c1 = 6.66082410500E-004; // 斯坦哈特-哈特 C1
- 浮動 c2 = 2.23928204100E-004; // 斯坦哈特-哈特 C2
- 浮動 c3 = 7.19951882000E-008; // 斯坦哈特-哈特 C3
- 07.10.2022,第 2 版現(xiàn)已在此鏈接上可用!
免責(zé)聲明和警告:
可以說這是我們在這里玩的游戲,沒什么可認(rèn)真的!幾年前,我進行了一次長達 16 個月的長途旅行,乘坐帆船環(huán)游世界。在所有天氣條件下,甚至在惡劣的天氣條件下,我們都使用真正的自動駕駛儀(不是這個!)進行了廣泛的導(dǎo)航。真正的自動駕駛儀是非常強大的硬件和軟件,你必須非常信任。相反,這款 Arduino Autopilot是一款非常棒的游戲,可以用來玩游戲并花時間娛樂。
?
- 自動駕駛芯片市場現(xiàn)狀和趨勢分析 4次下載
- 初識自動駕駛系統(tǒng)
- 自動駕駛如何落地 自動駕駛的商業(yè)模式與挑戰(zhàn)
- 自動駕駛汽車開源案例
- 自動駕駛汽車開源分享
- 自動駕駛儀開源分享
- PandaⅡ自動駕駛儀說明書 1次下載
- 無人直升機模型自動駕駛儀系統(tǒng)開發(fā) 0次下載
- 伺服自動駕駛帆船的冗余電源
- 開源飛控有哪些流派 1次下載
- 基于強化學(xué)習(xí)的飛行自動駕駛儀設(shè)計 27次下載
- 智慧蜂自動駕駛儀操作說明書
- 基于dsPIC30F的數(shù)字自動駕駛儀設(shè)計
- 導(dǎo)彈自動駕駛儀測試系統(tǒng)的開發(fā)研究
- 基于ARM處理器的小型無人機自動駕駛儀的設(shè)計
- 基于自動泊車的自動駕駛控制算法設(shè)計與研究 1209次閱讀
- 自動駕駛系統(tǒng)的原理和結(jié)構(gòu)講解 1.4w次閱讀
- 淺析自動駕駛汽車的決策控制系統(tǒng) 1066次閱讀
- 自動駕駛汽車的7大誤解匯總 3252次閱讀
- 探討當(dāng)前自動駕駛測試技術(shù) 4741次閱讀
- 自動駕駛測試驗證技術(shù)有哪些 5850次閱讀
- 自動駕駛的概述、技術(shù)、人才、應(yīng)用和趨勢 1w次閱讀
- 深入分析自動駕駛系統(tǒng)以及涉及到的軟件系統(tǒng) 1.7w次閱讀
- 有關(guān)自動駕駛汽車硬件系統(tǒng)的內(nèi)容 3738次閱讀
- 自動駕駛汽車硬件系統(tǒng)概述 7714次閱讀
- 自動駕駛技術(shù)目前有點過分炒作,自動駕駛事故也被過度渲染 3166次閱讀
- 如果只是hardware可以自動駕駛,也能叫“全”自動駕駛嗎? 4277次閱讀
- 自動駕駛的ACC自適應(yīng)巡航系統(tǒng)的組成及原理 2.7w次閱讀
- Uber自動駕駛事故原因解析_自動駕駛事故還有哪些 8692次閱讀
- 自動駕駛技術(shù)原理介紹和未來的趨勢如何 3.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多