色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用樹莓派搭建一個物聯網運動控制伺服

454398 ? 來源:電子發燒友網編譯 ? 作者:Esa ? 2016-03-21 15:48 ? 次閱讀

安全性、可靠的實時數據流是物聯網必不可少的兩樣東西。在見過很多“這邊按下去,那邊燈就會點亮”這之類的硬件后,我和一個朋友卻想做一些明明在操縱它卻幾乎感覺不到數據流的存在這樣更具有互動性的東西!所以,我們決定建立一個可以控制“物”的模型,即模仿你的手部動作,并顯示顏色基礎上的手指定位的議案。希望在這篇文章的幫助下,你能做出屬于自己的硬件產品

概念性的概述和一些更深入的了解可以在PubNub博客中找到相關源代碼,完整的代碼可在這個GitHub庫中查到,和Instructable上“the LED matrix driver circuitry”這篇文章詳細介紹了LED矩陣驅動電路如何被寫入。

Step 1: 零件和工具

解決這一難題有很多細小的片段,這里嘗試列出了一些主要的事情。

零部件及片段

· 樹莓派---這里使用V1型B +

· 跳躍運動控制器

· 5V電源

· I2C能的PWM驅動器

· 4個微型舵機 - 便宜的TowerPros即可。

· 4個微型伺服支座

· LED和限流電阻器 –-為達到視覺效果,但非必要。

· 項目機箱 --- 這一個是激光削減Ponoko。

· 螺絲,螺栓,螺母,曲別針 - 和其他類似的東西固定在一起的東西。

· 電纜包裹- --為了保持導線整潔。

· 電源插座,開關和電纜 --- 這樣才能傳輸電能。

· 撥動開關 --- 用于選擇伺服輸出模式

· 小按鈕 ---- 用作的R丕重啟/關機按鈕

· RGB LED+2×470歐姆的電阻 - 重啟/關機指示

· 支座 --- 便于安裝各種器件,這些在亞馬遜上很多。

· 掛接導線 --- 用于連接。

該RGB矩陣坐在舵機的頂部使用的是定制的驅動程序。該項目的這一部分是相當先進的,Instrucable里對此有專門的描述。

軟件與服務

· PubNub - 數據流服務。免費的沙盒模式的開發!

· Java SE的 --- JDK8 - 一定要得到正確的版本為您的操作系統

· 跳躍運動展示臺和Java SDK - 再一定要得到你的操作系統的正確軟件包。

· PubNub Java SE SDK --- 這需要進入項目庫目錄

· Java IDE - 用你最喜歡的,比如JGrasp,NetBeans中的IntelliJ,或者Eclipse

· 項目源代碼存儲庫 - 托管在GitHub上

樹莓派搭建

· PubNub Python庫 - 這是關于樹莓派搭建的一個較深入的指南。

· Internet連接 - WiFi或以太網都可以。如果可以ping谷歌,那么也是好去處。

工具之類的

· 計算機 - 寫代碼,查看Instructables等

· 電鉆+鉆頭/驅動器 - 鉆洞,扭螺絲等。

· Dremel旋轉刀具 - 用于切割孔,在機箱。。。都某些朋友來說可能沒有這個必要。

· 熱膠槍 – 請問還有其他粘合方式嗎?

· 烙鐵+焊接 - 不要吸入油煙!

· 激光切割機 - 同樣,我用了一個服務,但你可以DIY,如果你有你自己的機器周圍鋪設。

· 螺絲刀,鉗子 等你現在應該有的這些東西!

Step 2: 項目預覽

頂層設計,主要分為三個主要組成部分:

1. 計算機與跳躍運動控制器 -----用于將數據發布到網上。

2. “盒子”里的樹莓派- ---從網上訂閱數據。

3. PubNub - 通訊層安全地連接這些東西。

計算機部分是很簡單的,但在“盒子”有更多一點事。。。

1. 樹莓派 - 主控制器,采用采用I2C總線通信

2. ATMEGA328P矩陣驅動電路 - 通過I2C總線接收命令,控制28×8矩陣RGB

3. 基于TLC5916 LED的電路 -- 由ATMEGA328P控制,水槽LED矩陣電流

4. Adafruit PWM驅動器 -----通過I2C總線,驅動4舵機接收命令

5. 5V,5A電源

用樹莓派搭建一個物聯網運動控制伺服

首先,我們需要設置用戶計算機便于使用跳躍運動控制器。

Step 3:Java和跳躍運動控制器設置

Java 設置

我們將使用Java SDK的跳躍運動控制器,因此只需要安裝Java開發工具包,其中包括Java運行環境。這是非常簡單的,只要根據您的操作系統選擇正確的程序包。

不是創建一個安裝包,而是直接從Java IDE中運行的源代碼。這可以讓你自己操作代碼,修改,學習!當安裝JDK后,你需要一個好的IDE(也就是集成開發環境)。一些常見的諸如Eclipse中的IntelliJ,和NetBeans。你可以隨便選一個。每個使用者建立的庫是不同的,所以你必須要參考文檔了解如何設置一個新的項目!

Java 源代碼

只有一個java文件需運行代碼,但是也必須安裝跳躍運動和PubNub Java庫。。。 GitHub的項目庫包含一些非常必要的Java文件。

Leap 設置

設置跳躍可有點棘手,并且這個會根據系統不同而不同,而不是逐步完成的。這里不是通過告訴你我如何做到的,而是逐步引導您到相應的文章。哪個地方不懂,可以隨時尋求幫助。

1. 下載SDK,驅動程序,和跳躍運動中的應用。

2. 安裝跳躍應用,這將會安裝任何必要的驅動程序和進程。

3. 運行跳躍運動診斷可視化工具,以確保跳躍的工作。

4. 瀏覽Java SDK文檔,尤其是設置項目。

PubNub 設置

最后一步是下載PubNub Java SDK的,文檔頁面會講到如何將庫添加到Java項目。

Step 4:Java源代碼

如果您對Java代碼沒有興趣,你可以跳過這一步;但是,你將至少需要把你的個人PubNub鑰匙到代碼為它工作!源代碼可以在GitHub上查看。

下面是一些入口需要。如果這出現錯誤,很可能是沒有正確安裝的SDK庫。

用樹莓派搭建一個物聯網運動控制伺服

要讓項目實現Runnable,讓所有跳躍活動工作在自己的線程是至關重要的。我們首先設置項目為主,Runnable接口的實現和初始化全局變量便于后面使用。最主要的是要注意:全局變量“CHANNEL”,以及一對主宣稱鍵。

用樹莓派搭建一個物聯網運動控制伺服

這些字符串是唯一可以改變的值,通道名稱可以保留默認的“leap2pi”,也可以是其他一些字母數字值。使用PubNub超過一個信道通信會談一切,所以要使用一個唯一的名稱,以防止不同項目之間的串擾!發布和訂閱鍵,當你注冊一個PubNub帳戶含有獨特的個人標識符可以保證他們的安全性和私有性,這些鍵防止別人從你的信道(S)交談,請留意,有可能是在具體使用字符串“leap2pi”,而不是不斷的“CHANNEL,”而所有這些情況下應該改變代碼的一些地方。

跳躍運動捕獲300幀每秒。在每一幀,我們有機會獲得非常多的信息,如手指伸直,俯仰,偏航和手勢等等。由飛躍俯仰和偏航(手腕云臺)返回的值是弧度,這不會幫助我們太多。我們希望這些值轉換為通過在框中PWM驅動器接受的格式。我們首先弧度轉換為度,然后度到150和600之間,該范圍相當于一個伺服的(500 - 2000我們)的典型的工作范圍內的可接受的伺服PWM值由12位伺服驅動器來表示。

基本公式是美國2500/(2^13-1)*(伺服最小/最大脈沖寬度),所以[500,2000]我們映射到[150,600]。。。。。。大概在代碼中,這些轉換是通過以下方法進行處理。

用樹莓派搭建一個物聯網運動控制伺服

另外,請原諒不正確的伺服和PWM術語中的代碼。。。。。。不是每個制作愛好者都是這些學科的專家!

確保您的代碼在工作的最好方法是加載PubNub調試控制臺。從這里,你可以輸入通道名字,同發布和訂閱鍵一樣。點擊“訂閱”,當操作跳躍運動控制器將Java代碼運行的時候,公布的數據應顯示在消息盒子。

Step 5:樹莓派安裝

隨著Java代碼的工作,是時候來設置樹莓派訂閱數據,并用它來驅動LED和舵機。在已經配置了樹莓派有工作的互聯網連接,可以是WiFi或以太網,但這部分需要你來完成!如果你需要幫助,可以在PubNub上找找看(前一段時間有人寫了一篇)。此外,你可以使用顯示器和鍵盤直接在Pi上完成任何一個步驟,或用SSH遠程登錄。無論哪種方式都可以,但該項目的最終目標是擁有一個獨立的,無頭,安裝程序會自動運行啟動所需的文件。

第一步驟是在安裝PubNub Python的SDK。

打開終端,安裝以下內容:

用樹莓派搭建一個物聯網運動控制伺服

嗯,這是很簡單的!現在,我們需要得到所有在GitHub的資源庫的皮目錄中的文件的副本。要做到這一點最簡單的方法是使用Git克隆回購,然后刪除其他不需要的東西:

用樹莓派搭建一個物聯網運動控制伺服

現在,leap2pi目錄的內容應該與GitHub庫Pi目錄中的文件相同。最后,我們希望Python腳本在啟動運行。這里有兩個Python腳本要運行:

用樹莓派搭建一個物聯網運動控制伺服

這是很簡單的,我們只需要編輯一個Linux系統文件作為根用戶。首先,確保腳本是可執行的,然后打開rc.local文件進行編輯。

用樹莓派搭建一個物聯網運動控制伺服

你可以使用任何你喜歡的編輯,我更喜歡VI。該文件的最后一行應該是“exit 0”,即是允許使用該文件的清潔出口和擊終端的初始化。這里可以添加任意數量的命令,只要它們運行最后的“exit”命令。

插入以下,正上方的“exit 0”命令:

用樹莓派搭建一個物聯網運動控制伺服

保存文件,退出,并在開機后,Pi會自動運行這些腳本。而“&&”部分確保每一個命令運行。如果你離開了關,在bash終端將永遠載入,所以你會被無限期地鎖定您的個人信息的!

Step 6:樹莓派與伺服驅動器的連接

用樹莓派搭建一個物聯網運動控制伺服

樹莓派可用于直接驅動伺服系統,但是這需要花些功夫。有一個專用的PWM通道,但我們需要4根導線。因為在軟件中可以虛擬,但是,這不是簡單的事情。作為一臺電腦,樹莓派在高層級的處理比低級別的控制好多了。這一步你當然可以使用任何PWM驅動器,但我用這16通道,12位驅動程序的形式Adafruit。是的,這有點過了,這是很容易編程的ATtiny24操作4舵機通過 I2C總線通信。可以創建你自己的,但可能會超出了本指南的范圍。

網上很多教程可以幫助你使用這款主板,您將需要一些額外的源代碼文件。這些都可以在源代碼庫的命名文件為“Adafruit”的目錄中找到 -。。。。。。”它將會告訴數樹莓派如何與PWM驅動器通信。

連接樹莓派的板很容易。在樹莓派I2C線路上發現插針3和5,但這樣的情況下也需要打開I2C通信信道,記得查看。一個重要的輸入引腳被標為“OE”,即低電平有效“輸出使能”引腳,當此引腳保持低電平伺服系統才會啟用,它可以直接連接到地,或者驅動另一個端IO引腳。在這個項目中,實際上也是從ATMEGA328P矩陣驅動電路也采用I2C數據線連接到R派。

在該圖中,伺服附著到通道1 PWM驅動的。在項目中,設置像這樣的舵機:

用樹莓派搭建一個物聯網運動控制伺服

Step 7:近觀servo.py

Python代碼來控制舵機是非常簡單的,只要你理解了Python。就個人而言,我沒有很喜歡這種語言,但是這是題外話,您可以在GitHub上查看servo.py文件的這個副本。

就像在Java代碼中,你需要把你的個人PubNub發布,在這里訂閱鍵,以及通信信道的名稱。

該樹莓派會做引導執行以下操作:

1.復位AVR矩陣驅動電路。

2.初始化PubNub與你的鑰匙。

3.訂閱PubNub通道“leap2pi”。

4.永遠循環下去,檢查輸出模式切換(一分鐘內多次檢查)。

在系統底層,在PubNub庫處理所有的工作。這其會調用完成所有的操作,我們只需要指定一些回調 ---- 這是指當事件發生而需要調用的函數。

用樹莓派搭建一個物聯網運動控制伺服

關于連接回調應該是顯而易見的(連接,重新連接,等等),但一個沒有將大部分工作是適當命名的“回調”的回調。這個函數實際上在做從訂閱頻道接收消息這些事。如上所述,該箱具有一對連接到幾IO線的滑動開關選擇的輸出模式。

?鏡像 - 機器人將反映你的動作;因此,你的左手反向控制權機器人

?禁用 - 伺服系統會停止響應

?克隆 - 的機器人會克隆你的動作;因此,你的左手直接控制左機器人

這些模式的邏輯還有I2C驅動報表中的回調函數來處理。

值得注意此文件中的唯一項目就是利用GPIO引腳4作為輸出。該引腳驅動MOSFET,連接藍光LED地面陣列的大門。該引腳使能PubNub連接上,這樣的LED作為連接指示燈,這是一個無頭的設置的一個非常重要的方面 ---- 需要有一些現象表明我們成功地連接到互聯網!

Step 8:近觀shutdown.py

這個腳本是一個更容易跟隨比教上一個,但也同樣重要。由于樹莓派也作為全功能計算機,應當正確地關閉,只是殺傷力不同,它可能會導致驅動器故障,數據丟失,內存損壞。

為了解決這個問題,我在盒子背面裝了RGB LED指示燈的一個簡單按鈕。持續按一秒以上便可切換藍色燈光,當按鈕松開時會重新啟動派。再按住按鈕持續幾秒鐘將導致LED變紅,信號完全關閉。

此功能在shutdown.py腳本下完全處理。 “永遠的循環”運行的情況下,將發生以下情況:

1.0.25秒休眠狀態

2.檢查按下一個按鈕(引腳上的低狀態)

3.重復永遠

1.在按鈕按下,睡眠1秒

2.重新檢查引腳,看看按鈕是否仍然被按下

3.如果按鈕仍然在舉行,我們可能要重新啟動?如果沒有,請隨時查看!

4.設置RGB LED為藍色

5.睡眠2秒

6.重新檢查引腳,看看是否仍然被按下按鈕

7.如果按鈕仍然在舉行,應該關機!

8.設置RGB LED為紅色

9.如果沒有,重新啟動!

Step 9: 構建盒子

在構建此盒子的過程中,朋友Eric在Illustrator中創建一對矢量文件。這些被送到激光切割公司(Ponoko),它給我們送來一束激光切割木塊和丙烯酸。這些碎片送回來的時候還很大,但讓人有裝配他們的喜悅心情。

如果你很小心,可以在丙烯酸(以及木材)鉆導向孔,并用細螺釘來安裝在一起。如果你不想這樣做,可以隨意構建你想要的情況,從部件列表支座應該被用來保持牢固地安裝到該基座的電路元件,也可以減少一些額外的孔,在包裝盒背面安裝電源插口,按鈕和RGB領導。

最重要的是伺服鉆機的安裝。當他們在移動的時候,舵機會造成任何重量輕安裝框架跌倒或跳來跳去。至關重要的是,他們被牢牢地安裝在一個堅固的表面,這里選擇了箱子的蓋子!

Step 10:完成

有些部分需要進行定制,特別是構建實際的盒子和伺服支架。只要是有創意,大膽的去做吧!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23300

    瀏覽量

    661456
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5191

    瀏覽量

    214178
  • 物聯網
    +關注

    關注

    2909

    文章

    44715

    瀏覽量

    374317
  • 樹莓派
    +關注

    關注

    117

    文章

    1708

    瀏覽量

    105704
收藏 人收藏

    評論

    相關推薦

    樹莓一個關注的領域是什么?

    ?眾多的電子DIY愛好者紛紛猜測,聯網?智能家居?可穿戴設別?對于廣大電子DIY愛好者的提問,樹莓的創始人Eben Upton在次受訪
    發表于 09-15 09:51

    樹莓2控制LED燈

    ` 本帖最后由 348081236 于 2016-1-19 16:57 編輯 這個教程教你怎樣樹莓控制
    發表于 01-19 16:55

    樹莓網絡控制的船

    ` 本帖最后由 348081236 于 2016-1-20 15:26 編輯 圖上的船是由遙控船改造的。它通過互聯網控制,可以用來檢查人不方便去的下水道,并實時向web瀏覽器上
    發表于 01-20 15:24

    分享款不錯的基于樹莓Raspberry Pi CM的聯網網關方案

    分享款不錯的基于樹莓Raspberry Pi CM的聯網網關方案
    發表于 06-15 07:01

    樹莓聯網開發的應用

    從Arduino開始接觸電子編程,也就是所謂的聯網開發吧。從最初的超聲波測距開始,到現在的各種開發,其實直在浪費時間考慮到底哪種技術,
    發表于 08-03 06:38

    如何利用樹莓派去設計聯網智能小車

    如何利用樹莓派去設計聯網智能小車?基于樹莓
    發表于 08-18 07:22

    如何利用樹莓實現聯網

    如何利用樹莓實現聯網
    發表于 10-19 06:58

    樹莓什么語言編程_樹莓python編程詳解

    樹莓非常廉價的、只有手掌大小的完全可編程的計算機。雖然樹莓的體積小,但是它的潛力無限。
    發表于 01-15 17:00 ?3.9w次閱讀

    樹莓python來進行編程的優點以及編程詳解

    樹莓非常廉價的、只有手掌大小的完全可編程的計算機。雖然樹莓的體積小,但是它的潛力無限。
    的頭像 發表于 01-17 14:10 ?2.2w次閱讀

    樹莓怎么

    連接樹莓和電腦.網線直連電腦,不經過路由器。這個方法最大的特點最少的工具玩樹莓
    的頭像 發表于 11-07 16:21 ?2.4w次閱讀

    樹莓 3 或開啟聯網革命的大門

    微型計算機也將很有市場。樹莓已經在學校里 成為了教授計算機科學的主要平臺選擇。這款設備在大學里很受學生的歡迎,它們被用于控制機器人或者
    發表于 04-02 14:51 ?292次閱讀

    網頁控制樹莓的GPIO引腳

    電子發燒友網站提供《網頁控制樹莓的GPIO引腳.zip》資料免費下載
    發表于 11-16 14:57 ?1次下載
    <b class='flag-5'>用</b>網頁<b class='flag-5'>控制</b><b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的GPIO引腳

    樹莓-搭建邊緣計算云平臺

    基于樹莓搭建邊緣計算云平臺
    的頭像 發表于 12-03 00:17 ?1617次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>-<b class='flag-5'>搭建</b>邊緣計算云平臺

    樹莓網關:聯網應用的新標桿

    的特點是體積小巧(大約信用卡大小),但功能齊全,足以支持多種計算任務。 樹莓經常被用作物聯網網關,收集設備數據,然后將數據上傳云平臺,并還可以用來接收來自云端的控制指令,
    的頭像 發表于 10-09 16:44 ?335次閱讀
    類<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>網關:<b class='flag-5'>物</b><b class='flag-5'>聯網</b>應用的新標桿

    樹莓gpio有什么,樹莓gpio接口及編程方法

    樹莓GPIO的用途 樹莓(Raspberry Pi)是款小巧、功能強大的單板計算機,廣
    的頭像 發表于 10-22 18:09 ?978次閱讀
    主站蜘蛛池模板: 日本吃孕妇奶水免费观看| 久久免费精品国产72精品剧情| 国产精品99久久久久久AV色戒 | 欧美人与动牲交ZOOZ特| 在线一本码道高清| 久久久久久九九| 长泽梓黑人初解禁bdd07| 久久九九亚洲精品| 在线成年av动漫电影| 久久毛片免费看一区二区三区| 伊人亚洲综合青草青草久热| 久久re这里视频精品15| 伊人久久国产免费观看视频| 久久青青草原| 99re6热这里在线精品视频| 男人把女人桶到高潮嗷嗷叫| 18禁在线无遮挡羞羞漫画| 毛片内射久久久一区| 97人妻丰满熟妇AV无码| 欧美色图一区二区三区| 成人性生交大片| 十分钟免费视频大全在线观看| 国产99精品视频一区二区三区| 熟妇的味道HD中文字幕 | 赤兔CHINESE最新男18GUY| 素人约啪第五季| 国内精品久久久久影院网站| 夜色88V精品国产亚洲AV| 久久亚洲成a人片| bl高h文合集| 手机在线免费观看毛片| 嗨嗨快播电影| 2021久久99国产熟女人妻| 欧美人成在线观看ccc36| 高清毛片一区二区三区| 亚洲蜜桃AV色情精品成人| 快播理论片| 国产AV99激情久久无码天堂| 亚洲男女羞羞无遮挡久久丫| 久久天堂网| 富婆大保健嗷嗷叫普通话对白|