91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

電子發(fā)燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>Arduino在辦公室地圖上繪制汽車路線

Arduino在辦公室地圖上繪制汽車路線

2022-10-21 | zip | 0.05 MB | 次下載 | 免費(fèi)

資料介紹

描述

演示

如果您是 Arduino 新手,您可以開始:

理念

主要想法是通過在基于網(wǎng)絡(luò)的地圖上繪制路線來控制基于步進(jìn)電機(jī)機(jī)器人,只需在移動屏幕上觸摸您的手指,機(jī)器人就可以將您的貨物運(yùn)送到目的地。

在這個項(xiàng)目中,我制作了一輛不使用反饋傳感器的簡單汽車。因此,位置誤差會隨著時間的推移而累積。

這個項(xiàng)目可能會啟發(fā)人們通過使用某種反饋傳感器來糾正位置誤差來制造一個完美的搬運(yùn)機(jī)器人。如果與Dijkstra算法等路由算法結(jié)合使用會更方便。

接線

  • 在 Arduino 上堆疊 PHPoC Shield 或 PHPoC WiFi Shield
  • 在 PHPoC Shield 或 PHPoC WiFi Shield 上堆疊兩個步進(jìn)電機(jī)控制器 PES-2604
?
pYYBAGNPRCGAPJyLAACLimLKyLY108.jpg
?
  • 將步進(jìn)電機(jī)連接到步進(jìn)電機(jī)控制器 PES-2605 的接線端子
  • 雙極步進(jìn)電機(jī)
?
poYBAGNPRCSAXLzjAADPdIsje98850.png
?
  • 單極步進(jìn)電機(jī):有兩種方法可以將單極步進(jìn)電機(jī)連接到 PES-2605 的接線端子上。用戶可以選擇其中之一。
?
poYBAGNPRCaAejbJAAGvxzo2DlI302.png
?
  • 通過擴(kuò)展板上的撥碼開關(guān)為每個步進(jìn)電機(jī)控制器設(shè)置擴(kuò)展 ID 為 13 和 14。您可以參考下表設(shè)置擴(kuò)展 ID。
?
pYYBAGNPRCiAaK8vAACDOlbPNpQ989.png
?
  • 將限位開關(guān)連接到兩個步進(jìn)電機(jī)控制器的數(shù)字輸入端口的 SW#0
?
poYBAGNPRCuAMZWVAAEG6dVfy4g380.png
?

這個怎么運(yùn)作

我們需要一張辦公室地圖的圖像。地圖的大小必須與實(shí)際大小具有相同的縱橫比。

?
pYYBAGNPRC2ACKIXAADD7P9hzJc074.png
?

提示:如果是根據(jù)當(dāng)時的地磚繪制的,繪制地圖的縱橫比會更準(zhǔn)確。

地圖圖像被縮放以適合移動屏幕。當(dāng)手指觸摸基于網(wǎng)絡(luò)的地圖時:

- XY坐標(biāo)(以像素為單位)重新縮放為圖像的坐標(biāo),然后作為目標(biāo)位置發(fā)送到Arduino。Arduino將像素坐標(biāo)轉(zhuǎn)換為真實(shí)坐標(biāo)(以毫米為單位)。代碼:

/* convert pixel to millimeter */targetX = (long)(targetX / RATIO_PIX_PER_MM);targetY = (long)(targetY / RATIO_PIX_PER_MM);

- Arduino 計(jì)算方向(旋轉(zhuǎn)角度)和距離基于:當(dāng)前位置、先前方向和目標(biāo)位置代碼:

/* calculate the rotating angle */vectorX  = targetX - preX;vectorY  = targetY - preY;dist = sqrt(vectorX * vectorX + vectorY * vectorY);vectorX /= dist;vectorY /= dist;cosinAngle = (preVectorX * vectorX + preVectorY * vectorY); /* based on dot product between two vectors */angle = acos(cosinAngle) * 180 / PI;

- Arduino 將旋轉(zhuǎn)角度轉(zhuǎn)換為電機(jī)必須移動的步數(shù),并向步進(jìn)電機(jī)控制器發(fā)送命令以移動電機(jī)。代碼:

stepMove = (angle * TRACK) / ((FULL_STEP_ANGLE / stepMode) * WHEEL_RADIUS) / 2;dir = preVectorX * vectorY - preVectorY * vectorX; /* direction of rotation: clockwise or counter-clockwise */
?
pYYBAGNPRC-AbaD3AAA_CEBm8pg511.png
?

WHEEL_RADIUS 是車輪的半徑。

- Arduino 將距離轉(zhuǎn)換為電機(jī)必須移動的步數(shù),并向步進(jìn)電機(jī)控制器發(fā)送命令以移動電機(jī)。代碼:

stepMove = dist / WHEEL_PERIMETER * (FULL_STEP_NUM * stepMode);targetStepRight += stepMove;targetStepLeft -= stepMove;

WHEEL_PERIMETER 是車輪的周長

限位開關(guān)

車頭設(shè)有限位開關(guān),使電機(jī)在遇到障礙物時自動停止。

汽車初始位置

初始位置是 Arduino 啟動或重置時汽車的位置。它必須相同:真實(shí)位置(您放置汽車的位置)、Arduino 代碼中的位置設(shè)置和 Web 用戶界面代碼

在我的設(shè)置中,我將汽車設(shè)置在位置(第 16 塊磚,第 22 塊磚)(見下圖)

在 Arduino 代碼中(第 54、55 行)

//初始位置preX = 16 * BRICK_REAL_WIDTH;preY = 22 * BRICK_REAL_HEIGHT;

在Web User Interface (line 47. 48)//初始位置//初始位置touchImageX = 16 * IMAGE_WIDTH / 25.0;touchImageY = 22 * IMAGE_HEIGHT / 34.0;

?
poYBAGNPRDKAPKiYAAB4rE84OeE521.jpg
?

源代碼

Arduino代碼

這是arduino代碼,它在無限循環(huán)中運(yùn)行

網(wǎng)絡(luò)用戶界面 - remote_car.php

remote_car.php 是一個包含 Web 用戶界面的文件。它需要存儲在 PHPoC [WiFi] Shield 上。為了將文件上傳到 PHPoC [WiFi] Shield,請執(zhí)行以下步驟:

如何

  • 為PHPoC shieldPHPoC WiFi shield配置網(wǎng)絡(luò)信息
  • 安裝PHPoC 庫
  • 安裝PHPoC 擴(kuò)展庫
  • 編譯并上傳代碼到 Arduino
  • 上傳網(wǎng)頁用戶界面到 PHPoC [WiFi] shield
  • 打開 Serial Monitor 并復(fù)制 PHPoC Shield 的 IP 地址
  • 通過 Web 瀏覽器訪問 Web 用戶界面:http:// ip_address_of_shield /remote_car.php
  • 在地圖上按點(diǎn)位置控制汽車

?


機(jī)器人 步進(jìn)電機(jī) Arduino
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
  2. 3.40 MB  |  1次下載  |  免費(fèi)
  3. 2冷柜-電氣控制系統(tǒng)講解
  4. 13.68 MB   |  1次下載  |  10 積分
  5. 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊
  6. 2.33 MB  |  次下載  |  免費(fèi)
  7. 4MDD品牌三極管S9012數(shù)據(jù)手冊
  8. 2.62 MB  |  次下載  |  免費(fèi)
  9. 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
  10. 0.60 MB   |  次下載  |  3 積分
  11. 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
  12. 0.89 MB   |  次下載  |  3 積分
  13. 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊
  14. 2.50 MB   |  次下載  |  免費(fèi)
  15. 8MS1000TA 超聲波測量模擬前端芯片技術(shù)手冊
  16. 0.60 MB   |  次下載  |  免費(fèi)

本月

  1. 1愛華AIWA HS-J202維修手冊
  2. 3.34 MB   |  37次下載  |  免費(fèi)
  3. 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
  4. 1.63 MB   |  23次下載  |  免費(fèi)
  5. 3NB-IoT芯片廠商的資料說明
  6. 0.31 MB   |  22次下載  |  1 積分
  7. 4UWB653Pro USB口測距通信定位模塊規(guī)格書
  8. 838.47 KB  |  5次下載  |  免費(fèi)
  9. 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
  10. 0.04 MB   |  4次下載  |  1 積分
  11. 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
  12. 0.08 MB   |  2次下載  |  1 積分
  13. 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
  14. 0.09 MB   |  2次下載  |  1 積分
  15. 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊
  16. 1.81 MB   |  1次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191439次下載  |  10 積分
  9. 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183353次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81602次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73822次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分