日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

怎樣使用游戲控制器和Arduino控制機(jī)器人

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-03 16:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Arduino和類似的兼容板是世界各地DIY修補(bǔ)匠的首選設(shè)備之一。無論您是剛開始使用Arduino的初學(xué)者,還是已經(jīng)開始使用它們的人,他們都為無數(shù)很棒的項(xiàng)目提供了平臺(tái)。

今天,我們將探索一種創(chuàng)新的方式使用處理和Xbox360控制器來控制伺服器。如果您已經(jīng)很精通游戲開發(fā),那么您可能會(huì)對(duì)我們的使用Unity的Custom Game Controller教程感興趣。

如果這是您第一次嘗試Arduino擺弄,則本教程將假設(shè)您具有一點(diǎn)先驗(yàn)知識(shí),您可能會(huì)在這里找到我們的Arduino指南。同樣,如果您是第一次使用Java,可能會(huì)有些混亂。雖然Processing使用該平臺(tái)的簡(jiǎn)化版本,但這些Java概念和提示仍可能會(huì)有所幫助。

您需要的內(nèi)容

1個(gè)Arduino。我們今天使用的是UNO。

1個(gè)業(yè)余伺服器。一切適用于Arduino引腳的東西。

1個(gè)有線Xbox360控制器。盡管從技術(shù)上講,這幾乎可以與任何控制器一起使用。

多條連接線。

除了這些內(nèi)容之外,您還需要下載Processing和Arduino IDE

準(zhǔn)備Arduino

首先,我們需要附加伺服器。接線顏色在這里可能會(huì)有所不同,但一般來說,紅色引腳會(huì)連接到 5v 引腳,并且棕色或黑色連接到 GND 引腳。數(shù)據(jù)線通常為黃色或橙色,連接到 pin 10 。

檢查接線并連接Arduino到計(jì)算機(jī)。打開Arduino IDE。

打開位于文件》示例》 Firmata》 StandardFirmata 的StandardFirmata草圖。此草圖設(shè)置了用于通過串行端口進(jìn)行外部控制的電路板,與我們?cè)谑褂?a href="http://m.sdkjxy.cn/tags/python/" target="_blank">Python控制Arduino的文章中使用的草圖相同。將草圖上傳到板上。

如果上傳失敗,請(qǐng)?jiān)诠ぞ卟藛沃袡z查您是否選擇了正確的板和端口詳細(xì)信息。

我們的Arduino準(zhǔn)備就緒!

設(shè)置處理程序

打開處理程序,您將得到一個(gè)空白的草圖。在這里做任何事情之前,我們將需要安裝一些庫。轉(zhuǎn)到素描菜單,然后選擇導(dǎo)入庫》添加庫。這將打開 Contribution Manager ,對(duì)于那里的所有Arduino用戶而言,它們看起來都很熟悉。

我們需要安裝三個(gè)庫來完成這項(xiàng)工作。首先是 Game Control Plus 庫。這就是允許我們將游戲控制器與處理一起使用的原因。使用搜索窗口找到它,然后單擊右下角的安裝。 Game Control Plus需要為其配置工具安裝另一個(gè)庫,所以現(xiàn)在就開始獲取它。搜索 G4P 庫并安裝它。

最后,我們需要 Arduino(firmata)庫。您猜對(duì)了,進(jìn)行搜索,然后單擊安裝。安裝完這些東西之后,我們就可以開始測(cè)試一切正常。我們今天正在使用Windows 10,但是可用于大多數(shù)平臺(tái)(包括Raspberry Pi)進(jìn)行處理。想象一下可能性!

測(cè)試Arduino

在我們開始創(chuàng)建自定義草圖之前,我們先來測(cè)試Arduino和Servo和Processing。打開文件》示例,然后從 Contributed Libraries/Arduino(firmata)文件夾中選擇 ArduinoServo 。我們將使用它來測(cè)試我們的伺服器,但首先我們可能需要更改幾件事。

向下滾動(dòng)草圖并找到以下行:

println(Arduino.list());

如果已將其注釋掉,請(qǐng)?jiān)?println(Arduino.list()); 之前刪除兩個(gè)斜杠,然后保存草圖。通過單擊播放圖標(biāo)運(yùn)行它,并注意底部的控制臺(tái)。這將列出連接到您的 COM 端口的所有內(nèi)容。

就我而言,我的Arduino在COM 8上這里列出的第三個(gè)端口。這很重要,因?yàn)橄旅嬉恍兄械拇a有一個(gè) Array ,其值確定要使用哪個(gè)COM端口。

需要更改它以反映我們的COM端口。對(duì)我來說,它是第三個(gè)位置,或索引編號(hào)2:

arduino = new Arduino(this, Arduino.list()[2], 57600);

我們需要對(duì)此代碼進(jìn)行其他一些小的更改才能對(duì)其進(jìn)行測(cè)試。向下滾動(dòng)到設(shè)置Arduino引腳的位置,并在此處注釋掉其中一行。將另一個(gè)更改為 Pin 10 。

//arduino.pinMode(4, Arduino.SERVO);

arduino.pinMode(10, Arduino.SERVO);

我們需要在 Draw()中執(zhí)行相同的操作方法:

arduino.servoWrite(10, constrain(mouseX / 2, 0, 180));

// arduino.servoWrite(4, constrain(180 - mouseX / 2, 0, 180));

保存草圖并運(yùn)行。您應(yīng)該能夠通過在程序生成的窗口上來回移動(dòng)鼠標(biāo)來移動(dòng)伺服器。

如果它不適用于您,檢查伺服接線,并檢查COM端口的陣列位置是否正確。一旦您知道Arduino與Processing的配合很好,就該繼續(xù)了。

配置控制器

我們正在使用的Game Control Plus庫也具有強(qiáng)大的配置。確保已插入控制器,打開 Configurator 示例項(xiàng)目,然后運(yùn)行它。您將獲得如下菜單:

單擊您的控制器名稱,將彈出一個(gè)更大的配置窗口。

這看起來似乎很艱巨,但是它的設(shè)計(jì)盡可能簡(jiǎn)單。在左側(cè)填寫第一個(gè)鍵,其中包含您要用作變量的名稱。此變量將控制伺服器的位置,因此我將其稱為 servoPos 。

在其旁邊的框中,您可以對(duì)其功能進(jìn)行簡(jiǎn)要說明?,F(xiàn)在,拿起控制器并移動(dòng)您希望與伺服器一起使用的操縱桿。進(jìn)行一些實(shí)驗(yàn)后,發(fā)現(xiàn)右指尖與“ X旋轉(zhuǎn)”框相對(duì)應(yīng)。在 servoPos 變量和此框之間拖動(dòng)一條線。

現(xiàn)在,我們需要將配置保存為數(shù)據(jù)文件。在窗口的右上方,填寫設(shè)備角色字段和文件名字段。

文件名很重要,因?yàn)槟鷷?huì)在您的代碼中使用它。我將其命名為 xbs 來保持簡(jiǎn)單。點(diǎn)擊驗(yàn)證,然后點(diǎn)擊保存。這將為我們的控制器編寫一個(gè)包含說明的文件,以后可以使用。

準(zhǔn)備自定義草圖文件夾

讓我們進(jìn)行設(shè)置我們的工作文件夾。打開一個(gè)空白的處理草圖,并以您喜歡的任何名稱保存。這樣會(huì)在保存位置為其創(chuàng)建一個(gè)目錄。

現(xiàn)在導(dǎo)航至 Documents/Processing/libraries/GameControlPlus/examples/Configurator ,然后復(fù)制標(biāo)有 data 。此文件夾包含我們剛剛創(chuàng)建的配置文件。導(dǎo)航到新保存的空白草圖的目錄,然后粘貼數(shù)據(jù)文件夾。

創(chuàng)建自定義草圖

現(xiàn)在所有內(nèi)容到位,我們可以使用我們的兩個(gè)庫開始制作草圖。我們將逐步進(jìn)行此操作,但如果您想繼續(xù)前進(jìn),可以下載完整的草圖和數(shù)據(jù)文件夾。請(qǐng)注意,您可能仍需要修改代碼以反映您的Arduino COM端口。

首先導(dǎo)入我們需要的所有庫:

import processing.serial.*;

import net.java.games.input.*;

import org.gamecontrolplus.*;

import org.gamecontrolplus.gui.*;

import cc.arduino.*;

import org.firmata.*;

我們還需要聲明 ControlDevice , I/O 和 Arduino 以及 float 來保存值從我們的指尖開始:

ControlDevice cont;

ControlIO control;

Arduino arduino;

float thumb;

我們的 setup()方法會(huì)創(chuàng)建一個(gè)小窗口(控制器的實(shí)例),并將設(shè)備與我們的配置進(jìn)行匹配文件。在此重要的是正確獲取配置數(shù)據(jù)文件的文件名:

void setup() {

size(360, 200);

control = ControlIO.getInstance(this);

cont = control.getMatchedDevice(“xbs”);

if (cont == null) {

println(“not today chump”); // write better exit statements than me

System.exit(-1);

}

// println(Arduino.list());

arduino = new Arduino(this, Arduino.list()[2], 57600);

arduino.pinMode(10, Arduino.SERVO);

}

我們還在此階段檢查是否沒有適用的控制器,然后退出該程序是否需要。雖然不需要使用 size()創(chuàng)建的窗口,但稍后會(huì)向我們提供一些有關(guān)是否從控制器中獲取有用值的反饋。我們也像測(cè)試時(shí)一樣初始化Arduino并將其固定在此處。

現(xiàn)在,我們創(chuàng)建一個(gè)小方法來從控制器中獲取輸入值,并將其映射到我們的伺服器將能夠使用的值:

public void getUserInput() {

thumb = map(cont.getSlider(“servoPos”).getValue(), -1, 1, 0, 180);

}

這一行代碼使用我們的數(shù)據(jù)文件來獲取命名控件 servoPos ,該控件鏈接到控制器的右指尖,并從中讀取值。然后它將值映射,并將值存儲(chǔ)在我們的 thumb float變量中。

現(xiàn)在此代碼從未調(diào)用過,我們現(xiàn)在將對(duì)其進(jìn)行修復(fù)。

void draw() {

getUserInput();

background(thumb,100,255);

arduino.servoWrite(10, (int)thumb);

}

draw()與Arduino IDE中的 loop()方法相似。每幀,它調(diào)用 getUserInput()方法并更新拇指值。它使用此值來更改 background()的紅色值,從而使我們可以直觀地看到值的變化。然后使用 arduino.servoWrite()函數(shù)將此值寫入伺服器。請(qǐng)注意,我們必須將 thumb 強(qiáng)制轉(zhuǎn)換為整數(shù)值,因?yàn)镾erveWrite函數(shù)將兩個(gè)整數(shù)(引腳號(hào)和角度)作為參數(shù)。

檢查代碼是否存在錯(cuò)誤,保存并單擊運(yùn)行。在稍稍延遲了Arduino的初始化之后,它看起來應(yīng)該像這樣:

使用游戲控制器和Arduino進(jìn)行控制:已完成!

盡管經(jīng)驗(yàn)豐富的代碼庫可以為我們提供幫助,但該項(xiàng)目在很多方面對(duì)于經(jīng)驗(yàn)不足的編碼人員來說都是相當(dāng)深入的。它代表著一種思考控制機(jī)器人以及您所構(gòu)建的任何其他設(shè)備的新方式。

該項(xiàng)目將與我們有關(guān)構(gòu)建激光炮塔的指南完美配合,使您可以完全控制它。您可以像我們的Simple Arduino Alarm教程中那樣設(shè)置壓電式蜂鳴器,并使用控制器來更改蜂鳴器的音高或燈光的顏色。

或者,您可以構(gòu)建一個(gè)大型機(jī)器人并采用在地球上。只要您的USB線足夠長(zhǎng)!
責(zé)任編輯:wv

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

    關(guān)注

    114

    文章

    17896

    瀏覽量

    195534
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    214

    文章

    31544

    瀏覽量

    224046
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6529

    瀏覽量

    197563
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    工業(yè)機(jī)器人控制器導(dǎo)熱膠 高頻散熱解決方案 |鉻銳特實(shí)業(yè)

    鉻銳特實(shí)業(yè)|東莞導(dǎo)熱膠廠家|工業(yè)機(jī)器人在高頻動(dòng)作下控制器易發(fā)熱,本文詳解導(dǎo)熱膠如何有效降低溫度、提升系統(tǒng)穩(wěn)定性和使用壽命,為機(jī)器人熱管理提供專業(yè)參考。
    的頭像 發(fā)表于 05-06 00:10 ?75次閱讀
    工業(yè)<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>導(dǎo)熱膠 高頻散熱解決方案 |鉻銳特實(shí)業(yè)

    為什么說關(guān)節(jié)扭矩傳感是高端機(jī)器人的“觸覺神經(jīng)”?

    “盲動(dòng)”變成“感知運(yùn)動(dòng)” 普通機(jī)器人靠編碼控制位置,只能“按死命令走”。而關(guān)節(jié)扭矩傳感實(shí)時(shí)測(cè)量每個(gè)關(guān)節(jié)受到的扭轉(zhuǎn)力,精度可達(dá)0.01牛米,采樣頻率高達(dá)1000赫茲(每秒反饋1000
    發(fā)表于 04-17 17:27

    鋇錸技術(shù)ARMxy系列BL440究竟多適合作為具身機(jī)器人核心控制器?

    過去我們談機(jī)器人,更多關(guān)注的是“機(jī)械結(jié)構(gòu)”和“運(yùn)動(dòng)控制”。 而今天,當(dāng)**具身機(jī)器人(Embodied AI)**成為行業(yè)熱詞,機(jī)器人正在從“能動(dòng)”走向“能感、能算、能決策”,核心
    的頭像 發(fā)表于 01-13 17:56 ?777次閱讀
    鋇錸技術(shù)ARMxy系列BL440究竟多適合作為具身<b class='flag-5'>機(jī)器人</b>核心<b class='flag-5'>控制器</b>?

    為什么機(jī)器人控制器越來越偏愛 RK3588?

    為什么機(jī)器人控制器越來越偏愛 RK3588? ——結(jié)合鋇錸技術(shù) BL450,看懂下一代機(jī)器人主控的底層趨勢(shì)** 過去幾年,無論是 AMR/AGV、協(xié)作機(jī)器人、SCARA、視覺檢測(cè)工作站
    的頭像 發(fā)表于 01-13 17:51 ?538次閱讀

    阿普奇KiWiBot系列“大小腦”控制器:打造具身智能機(jī)器人的“核心引擎”

    一個(gè)輕巧而強(qiáng)大的控制器,正悄然驅(qū)動(dòng)著機(jī)器人從“能動(dòng)”走向“智能”的關(guān)鍵一躍。 控制器,被稱為機(jī)器人的“神經(jīng)中樞”,其性能直接決定了機(jī)器人的智
    的頭像 發(fā)表于 12-11 18:03 ?700次閱讀
    阿普奇KiWiBot系列“大小腦”<b class='flag-5'>控制器</b>:打造具身智能<b class='flag-5'>機(jī)器人</b>的“核心引擎”

    高精度機(jī)器人控制的核心——基于 MYD-LT536 開發(fā)板的精密運(yùn)動(dòng)控制方案

    處理,支持 1.8 GHz 主頻,并集成2Tops NPU、G2D、VPU 4K高清視頻編解碼,為復(fù)雜控制算法與視覺融合計(jì)算提供充足算力。米爾MYD-LT536開發(fā)板 在“高精度機(jī)器人
    發(fā)表于 11-14 15:48

    MCU微控制器,N32H47x高性能MCU機(jī)器人關(guān)節(jié)控制方案

    在工業(yè)自動(dòng)化領(lǐng)域,關(guān)節(jié)作為機(jī)器人的核心運(yùn)動(dòng)部件,其控制精度直接決定了整機(jī)性能。英尚微電子基于國民技術(shù)MCU微控制器N32H47x系列,推出創(chuàng)新機(jī)器人關(guān)節(jié)
    的頭像 發(fā)表于 11-07 16:28 ?930次閱讀

    48V機(jī)器人關(guān)節(jié)控制器的拆解分析

    最近機(jī)器人非?;?,正好關(guān)節(jié)控制器和底盤執(zhí)行例如轉(zhuǎn)向控制等比較類似,拆解了一款,簡(jiǎn)單分析了一下。
    的頭像 發(fā)表于 10-14 15:25 ?1254次閱讀
    48V<b class='flag-5'>機(jī)器人</b>關(guān)節(jié)<b class='flag-5'>控制器</b>的拆解分析

    阿普奇具身智能機(jī)器人控制器KiWiBot30系列:頭部客戶規(guī)?;慨a(chǎn)的破局關(guān)鍵

    ? 2025年被譽(yù)為機(jī)器人的量產(chǎn)元年。從實(shí)驗(yàn)室走向規(guī)?;a(chǎn),機(jī)器人本體廠商面臨可靠性、一致性與成本控制的多重挑戰(zhàn)。在這一背景下,阿普奇自主研發(fā)的具身智能機(jī)器人
    的頭像 發(fā)表于 10-14 14:51 ?935次閱讀
    阿普奇具身智能<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>KiWiBot30系列:頭部客戶規(guī)模化量產(chǎn)的破局關(guān)鍵

    知行科技推出機(jī)器人通用控制器iRC100

    近日,知行科技正式發(fā)布全球首款國產(chǎn)芯機(jī)器人通用控制器——iRC100。iRC100基于行業(yè)首款百TOPS級(jí)單 SoC 算控一體化機(jī)器人計(jì)算平臺(tái)——地瓜機(jī)器人 S100P打造,采用大小腦
    的頭像 發(fā)表于 10-09 15:28 ?1079次閱讀

    從波動(dòng)到穩(wěn)定:永銘高性能電容器為工業(yè)機(jī)器人控制器打造的關(guān)鍵“護(hù)盾”

    智能、自動(dòng)化和綠色方向轉(zhuǎn)型。01工業(yè)機(jī)器人關(guān)鍵組件·控制器控制器作為機(jī)器人控制系統(tǒng)的核心,其主要功能是處理信號(hào)、執(zhí)行算法以及指揮
    的頭像 發(fā)表于 09-01 10:00 ?705次閱讀
    從波動(dòng)到穩(wěn)定:永銘高性能電容器為工業(yè)<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>打造的關(guān)鍵“護(hù)盾”

    突破人形機(jī)器人控制器性能瓶頸:高效穩(wěn)定的電容器解決方案

    在人形機(jī)器人的精密世界中,每一個(gè)微小的部件都承擔(dān)著重要的角色。控制器,作為機(jī)器人的“大腦”,其穩(wěn)定性和可靠性對(duì)于整個(gè)系統(tǒng)的性能至關(guān)重要。控制器不僅需要處理復(fù)雜的算法和信號(hào),還要精確地指
    的頭像 發(fā)表于 08-30 10:56 ?761次閱讀
    突破人形<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>性能瓶頸:高效穩(wěn)定的電容器解決方案

    MT6701絕對(duì)式磁編碼優(yōu)化機(jī)器人關(guān)節(jié)伺服控制

    在當(dāng)今科技飛速發(fā)展的時(shí)代,機(jī)器人已經(jīng)廣泛應(yīng)用于工業(yè)制造、物流配送、醫(yī)療服務(wù)等眾多領(lǐng)域。而機(jī)器人關(guān)節(jié)伺服控制作為機(jī)器人運(yùn)動(dòng)的關(guān)鍵技術(shù),其性能的優(yōu)劣直接影響著
    的頭像 發(fā)表于 08-04 17:57 ?1286次閱讀

    海默RC系列機(jī)器人控制器

    海默協(xié)作機(jī)器人與焊接機(jī)器人控制器HARMOROBOTICS控制器作為工業(yè)機(jī)器人的三大核心零部件之一,也是工業(yè)
    的頭像 發(fā)表于 08-01 15:35 ?1390次閱讀
    海默RC系列<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>

    人形機(jī)器人控制器卡脖子難題怎么破?——基于 NVIDIA Jetson AGX Orin與X86的小型化、高可靠解決方案

    380 億元。然而,控制器作為機(jī)器人的 “神經(jīng)中樞”,仍被五大核心難題制約產(chǎn)業(yè)化進(jìn)程 —— 空間極限壓縮、算力需求爆發(fā)、實(shí)時(shí)性嚴(yán)苛要求、接口復(fù)雜性激增、可靠性零容忍 。 ? 直擊行業(yè)痛點(diǎn) 人形機(jī)器人
    的頭像 發(fā)表于 06-12 16:37 ?2055次閱讀
    人形<b class='flag-5'>機(jī)器人</b><b class='flag-5'>控制器</b>卡脖子難題怎么破?——基于 NVIDIA Jetson AGX Orin與X86的小型化、高可靠解決方案
    荆门市| 甘孜县| 罗山县| 苍山县| 汉沽区| 南宁市| 富顺县| 区。| 新干县| 曲水县| 隆德县| 武清区| 土默特右旗| 南阳市| 都兰县| 宜川县| 九龙县| 定日县| 蓬安县| 建宁县| 霍林郭勒市| 大方县| 陵水| 韶山市| 乐亭县| 兴山县| 梁河县| 平泉县| 鹤峰县| 渝中区| 北辰区| 紫云| 柯坪县| 民丰县| 陕西省| 大港区| 洪泽县| 长沙县| 定西市| 浙江省| 荆州市|