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

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

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

Xbox360控制器陀螺儀轉(zhuǎn)向模塊的制作

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-11-15 11:52 ? 次閱讀

步驟1:您將需要:

工具:

烙鐵

焊料

焊料吸盤/編織物

剝線鉗

一把螺絲起子,也許是梅花刀取決于控制器中的螺釘(我的是十字頭)

膠水(最好不是超強(qiáng)膠水,以便以后可以拆開)

USB到串行適配器以對(duì)Arduino進(jìn)行編程

材料:

Xbox 360控制器(duh!)

Arduino Pro Mini(或克?。ㄗ詈脼?.3V)。如果使用5V版本,則可能需要一個(gè)升壓轉(zhuǎn)換器

MPU-6050陀螺儀/加速度計(jì)

MCP4725 DAC(如果要控制兩個(gè)軸,則為兩個(gè)) )

一些細(xì)導(dǎo)線

一個(gè)面包板,因此您可以在焊接前進(jìn)行所有測試(可選,但建議使用)

第2步:分開控制器

您必須卸下七顆螺釘。其中有六個(gè)很明顯,但第七個(gè)在標(biāo)簽后面。我認(rèn)為刪除它會(huì)使您的保修失效,因此,后果自負(fù)。許多指南說您需要Torx螺絲刀,但是我的卻是十字頭,因此請(qǐng)檢查您的控制器。

然后,小心地撬開后蓋。如果撬開前面板,則按鈕會(huì)溢出,可能會(huì)散布到整個(gè)房間。從底部將其提起。然后拔下兩個(gè)振動(dòng)電機(jī)。 (重量較小的一個(gè)應(yīng)該在左側(cè),重量較大的一個(gè)應(yīng)該在右側(cè))將PCB取出,并取下模擬搖桿上的橡膠蓋。他們只是簡單地拉開了。

下一步是移除左側(cè)的模擬搖桿,以免干擾我們的輸入,但是左側(cè)的觸發(fā)機(jī)制妨礙了這種操作。為了將其卸下,您必須從板子的前部拆下電位計(jì)的三個(gè)引腳,然后從PCB上拆下該機(jī)構(gòu)的蓋。

接下來,請(qǐng)拆下固定左模擬桿的14個(gè)引腳。然后拉開搖桿。

步驟3:將組件固定到位

您將請(qǐng)注意,PCB背面和外殼之間有很大的間隙。

我稍后才意識(shí)到,但是這是取消在Arduino上重置按鈕的好時(shí)機(jī)。如果不這樣做,則在重新組裝時(shí)如果擰緊其中一個(gè)螺釘,它將壓在盒體的背面并使項(xiàng)目停止工作。

我用膠水粘了一塊薄卡粘貼到每個(gè)PCB的背面以使其絕緣,然后將其粘貼到控制器的PCB上。我不愿使用膠水,但想不出更好的方法。

圖像中的位置是我能找到的最佳組合。 Arduino位于左側(cè),帶有復(fù)位按鈕的邊緣與右側(cè)觸發(fā)機(jī)構(gòu)的塑料片齊平,另一側(cè)位于電線下方,并且拐角盡可能靠近白色連接器。外殼略微隆起,但找不到更好的放置位置。

加速度計(jì)在電線的右側(cè)。它應(yīng)該盡可能平坦和筆直,否則您可能需要稍后編寫一些代碼來補(bǔ)償偏移量。請(qǐng)注意,在盒子的背面有一些突出的塑料塊,請(qǐng)務(wù)必避免。我發(fā)現(xiàn)您可以在突出的塑料片上放一些像口紅這樣的粘性和彩色的東西,然后將后蓋放在上面,看看它留下的痕跡。

DAC進(jìn)入左下角。如果要控制兩個(gè)軸,這里有足夠的空間來堆疊兩個(gè)DAC,一個(gè)堆疊在另一個(gè)之上。您無需將它們粘下來。他們將僅通過焊接連接就可以呆在原處。如果要在它們之間粘貼卡,請(qǐng)確保切開卡,以使SCL,SDA,VCC和GND可以訪問,因?yàn)槟鷮膬蓚?cè)訪問它們。

如果使用兩個(gè)DAC,請(qǐng)不要忘記切換地址跳線并禁用其中之一的上拉電阻,如下所述:https://learn.sparkfun.com/tutorials/mcp4725-digital-to-analog-converter-hookup-指南

步驟4:焊接導(dǎo)線

現(xiàn)在您已經(jīng)擁有連接一切。來自所有2/3設(shè)備的VCC,GND,SDA和SCL應(yīng)分別連接到Arduino上的VCC,GND,A4和A5。 DAC是最棘手的部分。如果您有兩個(gè),則必須將它們連接在一起,而在某個(gè)地方可以將電源和線路連接到加速度計(jì),同時(shí)保持OUT線分開。

DAC的OUT引腳應(yīng)連接到控制器PCB上的引腳,該引腳曾經(jīng)是模擬搖桿的中間水平電位器引腳。也就是說,在模擬搖桿所在的位置,頂部有三排針。將其連接到中間一個(gè)。如果您有另一個(gè)DAC,則以相同的方式將其連接到垂直電位計(jì)引腳(左側(cè)的行)。更換扳機(jī)后,您將無法從背面觸到引腳,因此必須將電線連接至電路板的正面。模擬搖桿區(qū)域周圍有一個(gè)圓形的塑料“墻”,但是幸運(yùn)的是其中有一個(gè)方便的間隙,您可以將電線穿過。確保電線不會(huì)擋住機(jī)箱前部的螺絲柱。

我最初的計(jì)劃是通過連接到RAW引腳的USB電纜用5V電壓為Arduino供電,但是當(dāng)我嘗試時(shí),它沒有用。 Arduino沒有運(yùn)行任何東西,幾秒鐘后Arduino和控制器都關(guān)閉了。但是,我發(fā)現(xiàn)板子正面靠近黑色外圍設(shè)備插座的兩個(gè)引腳有一個(gè)穩(wěn)定的3.3V輸出,大概是為外圍設(shè)備供電。它適用于VCC和RAW,但我選擇VCC是因?yàn)樗呀?jīng)是正確的電壓,并且因?yàn)樗试S我將其焊接到板底部附近的DAC的VCC線上并節(jié)省導(dǎo)線。

請(qǐng)注意,必須從外殼上伸出很多塑料零件,但是如果將電線粘在適當(dāng)?shù)奈恢茫瑒t只需擔(dān)心一次。

所有其中很難用文字來描述,所以我提供了圖片和粗略的圖表。

第5步:對(duì)Arduino進(jìn)行編程

現(xiàn)在您有了對(duì)Arduino進(jìn)行編程。這需要移動(dòng)控制器上的USB電纜,以便您可以訪問Arduino上的串行引腳。我已經(jīng)包含了我使用的代碼。它需要Adafruit MCP4725庫,可以在這里找到:https://github.com/adafruit/Adafruit_MCP4725

按原樣,該代碼使您可以遍歷模擬搖桿的整個(gè)運(yùn)動(dòng)范圍通過將控制器向左90度均勻移動(dòng),向右90度均勻移動(dòng),并通過將其保持平坦?fàn)顟B(tài)將其保持在中間。

它通過計(jì)算X的反切線來獲得控制器的角度軸g力除以Z軸g力。這意味著它可以在控制器垂直,平坦或兩者之間有任何角度時(shí)使用。 (更多信息,請(qǐng)?jiān)L問:https://www.digikey.com/en/articles/techzone/2011/may/using-an-accelerometer-for-inclination-sensing)

在我的控制器上有效,但是其他控制器可能需要不同的電壓,使其無法對(duì)齊。我認(rèn)為找到電壓范圍的最佳方法是反復(fù)試驗(yàn)。許多游戲都會(huì)為您顯示模擬搖桿運(yùn)動(dòng)的滑塊,但是我發(fā)現(xiàn)確定運(yùn)動(dòng)的最準(zhǔn)確方法是在Linux上使用jstest。 (https://wiki.archlinux.org/index.php/Gamepad#Joystick_API)它為您提供-32,767到32,767之間的數(shù)字,而不是圖形,因此您可以確切地知道操縱桿的位置。將控制器和Arduino USB插入串行適配器,加載jstest并嘗試不同的DAC值,直到達(dá)到范圍的頂部和底部,并記下每個(gè)范圍。對(duì)我來說,它是1,593-382。

第36行是特別令人感興趣的地方:

dacvalue = (controllerangle + 2.5617859169446084418) / 0.0025942135867793503208 + 0.5;

目前尚不清楚它的作用。簡單來說,它獲取控制器的角度(以弧度為單位,在?1.57和?-1.57之間測量),并將其轉(zhuǎn)換為DAC的1593至382之間的值。如果您有不同的DAC范圍,則需要更改該行。

該行可以寫為:

dacvalue = (controllerangle + ) / + 0.5;

使用和是您需要更改的數(shù)字。 等于控制器角度(pi)的范圍除以DAC值的總范圍。 (范圍的頂部減去范圍的底部)這可以使您盡可能地改變電壓,盡管結(jié)果將超出所需的范圍。這就是為什么您需要的原因。 等于乘以范圍的底部再加上控制器運(yùn)動(dòng)范圍的一半。 (pi/2)將運(yùn)動(dòng)范圍的一半相加,以確保它不是負(fù)數(shù),然后將乘以范圍的底部,以確保其與所需的范圍同步。

轉(zhuǎn)換時(shí)小數(shù)點(diǎn)為整數(shù),C ++不舍入。取而代之的是,它會(huì)舍去小數(shù),因此9.9變成9。最后加0.5可以確保一半以上的內(nèi)容都可以到達(dá)下一個(gè)整數(shù),因此可以四舍五入。

一旦您上傳了程序,make

第6步:重新組裝控制器

將控制器拆回的方式與您拆開控制器的方式相同(減去左側(cè))模擬棒?,F(xiàn)在應(yīng)該可以工作了。我發(fā)現(xiàn)沒有明顯的延遲,而且比使用模擬搖桿要好得多。因?yàn)樗褂眉铀俣扔?jì),所以會(huì)受到突然運(yùn)動(dòng)的影響,但是您必須格外注意它。

步驟7:可能的改進(jìn)

可以進(jìn)行一些改進(jìn)。其中包括:

使用較少的電磁線

將所有內(nèi)容蝕刻到一個(gè)旨在適合控制器外殼的PCB上

重新連接左側(cè)的模擬桿并將支腳連接到Arduino上的模擬輸入,以便它們可以用于調(diào)整Arduino

獲取無線控制器的后殼并將項(xiàng)目放入電池倉(這需要將電池USB電纜孔)
責(zé)任編輯:wv

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

    關(guān)注

    112

    文章

    16434

    瀏覽量

    178979
  • 陀螺儀
    +關(guān)注

    關(guān)注

    44

    文章

    790

    瀏覽量

    98868
  • Xbox
    +關(guān)注

    關(guān)注

    0

    文章

    186

    瀏覽量

    16949
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    愛普生XV-9300LP汽車陀螺儀傳感的特征和用途

    汽車技術(shù)的快速發(fā)展提升了傳感在汽車行業(yè)的重要性,陀螺儀作為關(guān)鍵傳感,對(duì)車輛導(dǎo)航、自動(dòng)駕駛和安全控制至關(guān)重要。愛普生,作為傳感制造的全球
    發(fā)表于 11-25 16:02 ?0次下載

    愛普生X2A0002710002 XV7011BB陀螺儀傳感器用于高精設(shè)備行業(yè)

    作為傳感中的重要一類,陀螺儀傳感自然受到了廣泛的運(yùn)用,上至航空航天項(xiàng)目,下至汽車行業(yè),乃至醫(yī)療設(shè)備,智能手表穿戴設(shè)備,都離不開陀螺儀傳感
    的頭像 發(fā)表于 11-04 13:32 ?195次閱讀
    愛普生X2A0002710002 XV7011BB<b class='flag-5'>陀螺儀</b>傳感器用于高精設(shè)備行業(yè)

    愛普生(EPSON) 慣性測量單元(IMU)、陀螺儀傳感模塊應(yīng)用領(lǐng)域選型介紹

    愛普生(EPSON)慣性測量單元(IMU)、陀螺儀傳感模塊應(yīng)用領(lǐng)域選型介紹EPSON傳感包括XV7011BB等單軸高精度陀螺儀和M-G
    的頭像 發(fā)表于 09-02 14:58 ?757次閱讀
    愛普生(EPSON) 慣性測量單元(IMU)、<b class='flag-5'>陀螺儀</b>傳感<b class='flag-5'>器</b>等<b class='flag-5'>模塊</b>應(yīng)用領(lǐng)域選型介紹

    愛普生(EPSON)陀螺儀傳感的特點(diǎn)和應(yīng)用領(lǐng)域介紹

    愛普生陀螺儀傳感從用途上分為常規(guī)用途和汽車用陀螺儀傳感和慣性測量單元(IMU)。以檢測軸數(shù)量來分,可以分為單軸陀螺儀、三軸
    的頭像 發(fā)表于 07-03 10:16 ?522次閱讀
    愛普生(EPSON)<b class='flag-5'>陀螺儀</b>傳感<b class='flag-5'>器</b>的特點(diǎn)和應(yīng)用領(lǐng)域介紹

    XV7011BB陀螺儀傳感廣泛用于工業(yè)應(yīng)用

    陀螺儀傳感作為一種重要的慣性傳感,在航空航天、智能手機(jī)與可穿戴設(shè)備、工業(yè)控制與機(jī)器人、汽車行業(yè)、醫(yī)療儀器等多個(gè)領(lǐng)域都有著重要的應(yīng)用,為這些領(lǐng)域的發(fā)展和創(chuàng)新提供了關(guān)鍵支持。 Ep
    發(fā)表于 05-24 11:37 ?1次下載

    陀螺儀傳感-它們是如何工作的,未來會(huì)發(fā)生什么

    視頻:什么是陀螺?視頻:物體的運(yùn)動(dòng)和加速度計(jì)的差異視頻:愛普生陀螺儀傳感抗沖擊視頻:用于RVC, AGV的XV7000系列陀螺傳感類型
    發(fā)表于 05-15 14:19 ?0次下載

    陀螺儀如何計(jì)算歐拉角?

    現(xiàn)在有一個(gè)需求,手上只有一個(gè)陀螺儀,如何計(jì)算歐拉角,不考慮積分誤差,無需使用其他傳感融合,數(shù)學(xué)沒學(xué)好,不知怎么操作
    發(fā)表于 04-29 07:06

    針對(duì)工業(yè)應(yīng)用的抗振動(dòng)和姿態(tài)控制陀螺儀傳感:XV7021BB

    針對(duì)工業(yè)應(yīng)用的抗振動(dòng)和姿態(tài)控制陀螺儀傳感XV7021BB。XV7021BB陀螺儀傳感的電源電壓(VDDM)均為2.7V~3.6V,接口
    發(fā)表于 04-24 10:29 ?0次下載

    陀螺儀x軸和y軸的應(yīng)用

    。陀螺儀通過使用慣性傳感(如MEMS)來測量物體的旋轉(zhuǎn)角速度。在x軸和y軸上分別放置兩個(gè)陀螺儀,可以更全面地捕捉到物體的旋轉(zhuǎn)和轉(zhuǎn)動(dòng)。陀螺儀x軸通常與設(shè)備的長軸(通常是
    發(fā)表于 04-17 15:42 ?0次下載

    陀螺儀傳感,IMU和加速度計(jì)的產(chǎn)品和選型

    愛普生陀螺儀傳感是一種角速度傳感,作為一種石英電子式陀螺儀芯片,具有溫度特性好、功耗低、成本低、穩(wěn)定性好等特點(diǎn)。目前EPSON主力單軸陀螺儀
    的頭像 發(fā)表于 04-01 16:41 ?995次閱讀
    <b class='flag-5'>陀螺儀</b>傳感<b class='flag-5'>器</b>,IMU和加速度計(jì)的產(chǎn)品和選型

    解析愛普生(EPSON)陀螺儀傳感XV-3510CB

    在科技革命的帶領(lǐng)下,自主精密農(nóng)業(yè)機(jī)械、智能施工機(jī)械和無人機(jī)應(yīng)用的快速發(fā)展,以及工作環(huán)境的惡劣和空間的逼仄,對(duì)于小型陀螺儀傳感的需求與日俱增。在這種環(huán)境之下,愛普生(EPSON)推出了幾句特色的陀螺儀傳感
    的頭像 發(fā)表于 03-18 16:23 ?929次閱讀
    解析愛普生(EPSON)<b class='flag-5'>陀螺儀</b>傳感<b class='flag-5'>器</b>XV-3510CB

    EPSON X2A0002710002 XV7011BB陀螺儀傳感的特征和用途

    陀螺儀傳感在很多領(lǐng)域都需要用到。如被用在手機(jī)的攝像頭上,來防止由于抖動(dòng)對(duì)圖像質(zhì)量的影響。再如當(dāng)汽車行駛過程中沒有GPS訊號(hào)時(shí),可以通過陀螺儀來測量汽車的偏航或直線運(yùn)動(dòng)位移,從而繼續(xù)導(dǎo)航等。
    發(fā)表于 03-12 17:13 ?0次下載

    EPSON的GGPM6083STD陀螺儀傳感(壓電俠)

    之前介紹過應(yīng)用于割草機(jī)慣性導(dǎo)航高性能陀螺儀傳感SGPM01,SGPM01是基于高性能陀螺儀陀傳感和加速度計(jì)開發(fā)的模組,內(nèi)置3軸陀螺儀和3
    發(fā)表于 03-05 16:59 ?0次下載

    一文探秘MEMS陀螺儀工作原理與特性

    陀螺儀,又叫角速度傳感,是用高速回轉(zhuǎn)體的動(dòng)量矩敏感殼體相對(duì)慣性空間繞正交于自轉(zhuǎn)軸的一個(gè)或二個(gè)軸的角運(yùn)動(dòng)檢測裝置,同時(shí),利用其他原理制成的角運(yùn)動(dòng)檢測裝置起同樣功能的裝置也稱陀螺儀陀螺儀
    的頭像 發(fā)表于 02-20 11:41 ?1731次閱讀
    一文探秘MEMS<b class='flag-5'>陀螺儀</b>工作原理與特性

    手機(jī)陀螺儀失靈解決方法

    手機(jī)陀螺儀是一種用于感知和測量設(shè)備旋轉(zhuǎn)、傾斜和方向的傳感。失靈的陀螺儀可能導(dǎo)致手機(jī)在運(yùn)動(dòng)控制、游戲和導(dǎo)航等應(yīng)用中出現(xiàn)問題。下面將詳細(xì)介紹陀螺儀
    的頭像 發(fā)表于 01-30 10:06 ?3w次閱讀