【完整畢業設計分享】自動跟隨機器人設計方案

【完整畢業設計分享】自動跟隨機器人設計方案

北京单场奖金计算公式 www.ygpyvk.com.cn 介紹

先看視頻,視頻中是一個簡單的2輪模型的小型機器人,在這我們只介紹自動跟隨的方案,牽扯到機器人底盤移動等其他控制部分,在這不做過多贅述了。
如果讀者有機器人相關控制基礎或者做過智能小車類的項目,很容易處理好。

成品視頻:

https://v.qq.com/x/page/n05379v9lxy.html


電路相關文件

電路圖文件
原理圖.rar
描述:原理圖
分享到:
收藏 (26)
電子硬件助手小程序 電子硬件助手小程序

電路城電路折扣劵獲取途徑:

電路城7~10折折扣劵(全場通用):對本電路進行評分獲??;

電路城6折折扣劵(限購≤100元電路):申請成為賣家,上傳電路,審核成功后獲取。

(版權歸張巧龍所有)

版權聲明:電路城所有電路均源于網友上傳或網上搜集,供學習和研究使用,其版權歸原作者所有,對可以提供充分證據的侵權信息,本站將在確認后24小時內刪除。對本電路進行投訴建議,點擊投訴本電路反饋給電路城。

使用說明:直接使用附件資料或需要對資料PCB板進行打樣的買家,請先核對資料的完整性,如果出現問題,電路城不承擔任何經濟損失!

換一批 more>>

大家都在看:

繼續閱讀

  • STM32F4音樂頻譜搞起來!

    硬件: STM32F407單片機?;贗LI9341控制器的TFT液晶屏(320x240像素)。簡單運放前級放大。USB供電。預留32*64點陣屏接口。軟件: ADC12位采集,采樣率40Khz,DMA儲存。4096點FFT運算(基于官方DSP庫)。STM32cubeMX創建HAL庫工程,頻譜半天跑起來。---------------------------------------------------原理圖經過驗證可以正常工作,但實際液晶屏引腳順序與圖紙相反,實際使用中需要把屏幕裝在有器件的一面,也可以自己動手修改重新打板。祝大家搞得愉快。遇到問題可以私信或者加q ,943703865,注意備注來源,大家一起交流學習。
    來自:DIY創意產品時間:2019-09-10 stm32 單片機 diy制作
  • 51單片機紅外??匭〕?安卓舊手機+AgoraRTC=遠程視頻監控小車

    手機應用介紹1)用手機替代網絡攝像頭,更智能,更省電;2)支持紅外??贗婢咭?爻?; (移動功能,需要配套本設計紅外??匭〕擔?)人臉跟隨;(娛樂功能,需要配套本設計紅外??匭〕擔┦褂梅椒ǎ?、安裝應用,分別在兩部手機上安裝;2、將兩部手機連入互聯網(WiFi,或4G);3、把其中一部手機放到紅外??贗婢叱瞪?;4、需要注冊appID,兩部手機用同一個appID使用時,先將小車上電。將兩部手機連接到互聯網,打開我們事先編寫好的安卓軟件,小車上的手機選擇小車模式,另一部手機選擇控制模式便可以進行操作了,畫面右側控制小車的運動,左側則是速度的控制。目錄一、 創意來源二、 項目概述三、 優勢四、 功能五、 制作材料六、 詳細介紹七、 參考文獻一、創意來源當今在安防監控領域,大多數民用監控設備有幾大弊端:位置固定:大多數設備位置固定,不便移動,即使有一些可以攝像頭可以轉動,但是仍然無法實現對大部分區域的監控,比如一些存在死角的位置就不會被監控(床底,墻角等等),因此小車的可移動性監控有較為突出的優點。應用在家庭監控領域較為合適,尤其是家中無人的時候。有線傳輸,電源線:大多數是有線傳輸,即使有一些是無線傳輸,但是仍要被束縛在電源線上。而本小車就不同了,可以直接裝個充電寶做備用電源價格昂貴:當今一套完整的監控設備成本較高。而本小車利用了過時淘汰的手機,大大節約了成本,一定程度上控制了廢舊手機的污染?;詰苯竇囁厴璞剛廡┤鋇?,構造出了基于安卓的視頻控制小車。二、項目概述本設計是將安卓技術、單片機技術、無線通信技術等相關技術應用到視頻監控系統中,可實現視頻監控系統的設備移動化,由可移動監控平臺、控制軟件兩部分組成。使用安卓手機作為控制端,通過無線網絡對監控平臺進行移動方向、速度的控制,平臺上的攝像頭實時采集視頻圖像信號并通過無線WiFi網絡將視頻信號實時傳輸到手機端觀看,然后可實時拍照錄像并可實時存儲。由于監控端可移動,可以在無人進入的情況下獲取危險環境的視頻圖像。具有控制方便,監控靈活,??榛?,可拓展性強等優點,可應用于兒童陪伴機器人、家庭安防、圖像采集等領域。三、優勢:設計之初不完全是為了DIY,我是希望能夠做出一款實用便宜易用的產品,所以沒有采用常用的DIY開源硬件方案例如arduino,而是選擇了價格便宜,應用廣泛的STC89C52RC單片機芯片來做控制方案。當然也相信大家能理解我為什么會選擇android手機來做智能小車大腦。1. 我們制作的智能小車拋開性能低下、操作復雜的單片機,使用移動終端作為控制端,利用移動終端(例如手機,電腦,平板)的高性能處理器和低廉的價格,降低了研發成本和研發難度。2. 通過移動網絡或者本地局域網進行連接,可以在任何地方,使用任何設備即可對小車進行遠程???,對家庭安全進行防護。3. 與WIFI IP camera對比:1)可以到處跑,因為不需要插著電源線;2)省電,待機長,所以不用擔心充電問題。3)監控聲音情況。四、功能:1)實時視頻(android手機攝像頭開發)2)紅外??爻擔⊿TC89C52RC )3)人臉檢測追蹤(android手機編程)下面是 人臉跟隨演 和 制作過程 的視頻:五、制作材料:1)控制板包括:STC89C52RC單片機最小系統紅外??亟郵找惶寤?閂S1838BL293D電機驅動???)小車底盤(淘寶上面有非常多的小車底盤賣,自己任?。?,3)馬達:TT馬達 2個4)輪子:2個5)鋰電池:2200mAH 兩節7.4V + 充電器(可用充電寶代替)6)杜邦線若干7) 車載手機支架(有車一族,不用的車載手機支架可以利用)總共約200左右,如果去掉5)7)剩下的也就100出頭六、詳細介紹0設計文檔資料里的畢設論文只是預覽,具體文檔請查看這兩個鏈接[1]:DIY遠程視頻??匭〕礫2]:DIY遠程視頻??匭〕擔ǜ郊郝畚模?相關技術Android攝像頭自定義相機開發、Android人臉檢測(FaceDetector)API開發、Android紅外??乜?、Android網絡實時音視頻傳輸開發、單片機紅外解碼及電機控制 ?;詘滄康氖悠悼刂菩〕道昧四芊⑸浜焱廡藕諾陌滄烤墑只魑誦?,通過WiFi將手機或電腦監控端與車載手機控制端相連接,繼而間接實現手機或電腦監控端對小車的控制。通過手機或電腦端向手機發送指令,然后手機執行指令向小車發射紅外信號進行相應控制,并調用車載手機攝像頭將小車前方的圖像信息回傳給手機或電腦監控端。另外,小車還可以對人臉進行檢測跟隨,根據人臉在視頻中位置,不斷調整小車方向直到人臉位于屏幕中心,增強娛樂性。3相關代碼小車端單片機代碼安卓手機端代碼 特別說明:車載手機通過紅外??匭〕?,雖然紅外的??氐目刂憑嗬脛揮?0m左右,無法繞過障礙物進行???。但發射紅外??匭藕諾氖只圖茉諦〕瞪?,可以將手機的紅外發射器和紅外接收器放在一塊固定住。雖然并不是所有的安卓手機都有紅外發射器,但都有3.5mm的耳機接口,紅外信號的38kHz頻率在音頻范圍內,可以用耳機接口外接的紅外發光二極管發射紅外??匭藕?。如果使用藍牙來完成對小車的控制,小車上需要配備藍牙??橛朧只信潿醞ㄐ?。而且并不是所有的手機都支持藍牙,早期的一些安卓智能手機就不支持藍牙。而且藍牙需要配對連接,紅外??匚扌枧潿粵?,省去等待時間。相比藍牙???,紅外??槌殺靖?。所以采用紅外??嗇J?。 下面是遠程手機端演示下面是遠程電腦端演示七、 參考文獻國內外對于該類應用場景的研究: 手機機器人_百度百科https://baike.baidu.com/item/%E6%89%8B%E6%9C%BA%E6...Chap小家伙入門級編程機器人教育套件家庭版 – RoboSpace https://www.robospace.cc/chap/派寶機器人 Padbot T1 | 您的桌面智能萌寵 https://www.padbot.cn/t1Botiful:Skype臨場互動機器人 //mobile.163.com/12/0729/16/87JIKNOV0011665S....https://www.kickstarter.com/projects/1452620607/bo...Romo:讓智能手機變身機器人 //www.ifanr.com/175468https://www.kickstarter.com/projects/peterseid/rom...https://www.kickstarter.com/projects/peterseid/rom...掌上看家:摸索視頻應用的O2O模式 //www.techweb.com.cn/news/2012-10-25/1249261....打造零成本安防方案,掌上看家將你的舊手機改造成安防攝像頭//tech.163.com/14/0923/11/A6QRTAQN00094ODU.ht...Mindhelix 把廢手機變成智能家居的一部分 //www.shejipi.com/31209.html阿福管家(Alfred) //www.360doc.com/content/17/0106/00/30371403_...舊手機天堂?Hippo幫你用安卓手機DIY專屬硬件 //www.pcbeta.com/viewnews-67118-1.html科技玩具Romo:用iPhone整一個機器人“玩” https://www.leiphone.com/news/201406/d-romo.htmlRomo活潑又聰明,多虧iPhone做大腦 https://www.guokr.com/article/68607/IOIO在Android手機中的應用與研究 //www.21ic.com/app/opto/201304/179778.htm使用android IOIO和安卓手機制作視頻??匭〕擔刂頻頻目?、實時視頻傳輸、方向控制)//blog.sina.com.cn/s/blog_8265bd790102vhpa.ht...【DIY】遠程手機??爻?androidbot https://blog.csdn.net/xpp012/article/details/77964...Android實踐:做一個可視頻交互的智能小車 https://blog.csdn.net/weixin_33786077/article/deta...StarRTC,AndroidThings,樹莓派小車,公網環境,視頻???一)準備工作//blog.starrtc.com/2018/07/11/starrtc-android...樹莓派視頻??匭〕?+ iOS / Android / web應用https://www.jianshu.com/p/d0c8b51e9647變廢為寶+舊手機做一個家庭遠程安防機器人 //www.sohu.com/a/160959116_793365[創意DIY] 手把手教你用iPhone變身賣萌??匭〕?/bbs.elecfans.com/m/forum.php?mod=viewthread&tid=307662&extra=page=29極品智能飛車 wifi和Android控制小車(獲獎作品原創)//www.ygpyvk.com.cn/circuit/1342/#/details用手機 DIY 一個 Wifi-Robot https://www.eefocus.com/embedream/blog/15-09/31969...低成本DIY視頻預覽??匭〕礹ttps://blog.csdn.net/cjnewstar111/article/details...可以在外面??丶依锏氖悠低ɑ暗鬧悄芐〕礹ttps://blog.csdn.net/lindev/article/details/50433...舊手機+Arduino的巔峰之作—視頻監控機器人 ,異地遠程??兀ㄉ杓譜柿峽垂蠶恚?/www.ygpyvk.com.cn/circuit/3170手機目標跟蹤尋跡小車+藍牙SPP通信,附APP和Arduino源碼//www.ygpyvk.com.cn/circuit/6375做一個??爻檔筆只Ъ?小伙子很有想法 //www.iqiyi.com/w_19rx3g75bt.html自制iphone第一人稱視頻??匭〕?/blog.sina.com.cn/s/blog_7355abc2010115ah.ht...桌面智能管家機器人-- 小氪 //www.ygpyvk.com.cn/bbs/thread-48752-1-1.html能控制所有智能家居的機器人管家設計(硬件+程序源碼+論文)//www.ygpyvk.com.cn/circuit/4808M1 Rover https://hackaday.io/project/161460-m1-roverM1 Rover:無人自動駕駛機器人,與Arduino兼容//www.ygpyvk.com.cn/articles/397468/p1掃地機器人+手機,改造成安防機器人https://v.youku.com/v_show/id_XNDIzNTg4Nzk0MA==.ht...PlusBot手機外設機器人https://www.bilibili.com/video/av63968166日本3D打印手機神器 能跑能送快遞堪比機器人//m.56.com/c/v84757613.shtml一款手機機器人,安裝上感覺手機長出手指頭了,真是太有意思了//v.qq.com/page/x/0/b/l0792m0kcab.html你的手機也可以是機器人的大腦,做一臺自己專屬的RoboMasterhttps://v.youku.com/v_show/id_XNDI5NTY4MDMyNA==.ht...Turn Your Phone Into a Robot https://www.instructables.com/id/Turn-Your-Phone-i...MobBob DIY Arduino robot controlled by Android smartphone https://m.youtube.com/watch?v=myOZJADSjpYMobBob:主體是智能手機的3D打印機器人//www.3dhoo.com/news/guonei/13482.htmlMobBob V2 - Smart Phone Controlled Robot https://www.thingiverse.com/thing:990950Oddwerx - Autonomous Smartphone Robots https://www.kickstarter.com/projects/ologic/oddwer...Rover Robot https://www.shaperobotics.com/portfolio-item/build...BalDroid - Balancing Robot: Android Phone + IOIO-OTG board https://m.youtube.com/watch?v=45Q1tHr1-h4Voice Controlled Robot (VCR)//voicecontrolledrobotusingandroid.blogspot.c...Mobile Controlled Robot with & without Arduino https://m.youtube.com/watch?v=mVAWew_48KkHow to make a Skype Controlled UGV - DIY Spy Robot - IoT Project https://m.youtube.com/watch?v=WrENPS1xk6A Android™ Based Robotics: Powerful, Flexible and Inexpensive Robots for Hobbyists, Educators, Students and Researchers原文鏈接://www.socsci.uci.edu/~jkrichma/ABR/abr_background.html下圖是用Google瀏覽器翻譯出來的譯文
    來自:DIY創意產品時間:2019-09-03 51單片機 diy制作 畢業設計
  • MPU9150 九軸IMU慣性單元???運動數據???PCB&原理圖

    MPU9150 九軸IMU慣性單元???運動數據???PCB&原理圖.改設計采用2.54排針 十分精簡美觀。比一元硬幣還小點。
    來自:可穿戴設備時間:2019-04-19 diy制作 四軸飛行器 飛控
  • 8x8x8光立方

    該設計采用51單片機控制,采用74hc573驅動二極管,顯示各種圖形,總共采用512個藍色led,是動手制作,使用51單片機很好的練習
    來自:DIY創意產品時間:2019-09-05 51單片機 diy制作
  • 無線點陣屏DIY

    該設計采用STM32作為主控MCU,手機app控制,實時顯示手機app上內容在點陣屏上,可用作畢業設計。
    來自:DIY創意產品時間:2019-09-05 stm32 diy制作 畢業設計
  • 齊天大圣之隨身探測器之無連線板

    本文首發于DF創客社區,作者:機器貓_齊天大圣原文鏈接:【腦洞大賽】齊天大圣之隨身探測器齊天大圣之隨身探測器之無連線板 (第三代)現在學Arduino的很多,但是能天天玩的不多,除了編程就是編程,最多搭建一些網絡上已有的課件,自由發揮的余地不多。。。arduino有很多傳感器,能否把arduino作為一個探測器(傳感器獲取數據),檢測身邊事物或探究大自然奧秘的一個起點。。。比如,一個溫度傳感器,可以檢測水溫,室溫,室外,陽光直射,背陰面,動植物生長環境溫度,等等,不同地點,不同對象,不同部位,不同狀態,溫度都會有不同。。。第一代試樣: 用Nano擴展板,和傳感器 第二代:電路部分總裝: 總體外觀: 傳感器: 手機藍牙接收到的數據: 數據可以是整合的,也可以是單一的目前結構正在優化中,體積還要小,操作簡易化,數據讀取直觀化。最重要的是創客化,人人都能學都能用!arduino只是工具,好好利用這個工具,讓人們走進大自然,探索宇宙。。。大概是在5~6年前學的Arduino編程,就半天時間,算是入門了。。。 這么多年來還是只會復制粘貼,不過我不再害怕了,不懂英文,不會編程也沒關系,總結了一套簡單的加減法(非可視化編程),用幾個小時就教會了一點都不懂得學生! arduino就是一個“萬用表”,要用就旋轉開關,和使用注意事項就ok,沒必要懂里面的結構和工作原理,如果有時間,自己有喜歡,可以慢慢深入下去。。。 你看那前面黑洞洞,定是那賊巢穴,待俺趕上前去,殺他個干干凈凈!《隨身探測器》是被逼出來的,快速成型,立馬能使用,開開心心玩起來,認認真真探索身邊的奧秘。。。 目前做到7個傳感器同時獲取數據(可單選或多?。?,外加藍牙和OLED顯示器,只可惜時間急了一點,洞洞板采用飛線,等有時間了,再學畫板子,可以做到真正的無連線版。后期還可以做的小一點,針對淘寶賣家不同傳感器和傳感器引腳不同,方便自由添加新傳感器等,靈活應對,還有《隨身探測器》的另外一半還沒想好怎么做,輸出或控制,怎么與外部連接,還是裝在玩具車上(氣球無人機上),加上攝像頭,遠距離探測。。。
    來自:Hackaday Prize 2019時間:2019-08-19 diy制作
  • DIY屬于你的智能家居系統,zigbee,esp8266,51單片機

    本文首發于DF創客社區 作者:2877137721原文鏈接:DIY屬于你的智能家居系統,zigbee,esp8266,51單片機DIY家庭智能家居控制系統(2)51,zigbee,esp8266相關附件于原文下方下載【介紹】隨著微功耗處理器以及通訊芯片的發展,以往較為耗能的有線通訊方式越來越阻礙了通訊網絡的發展,于是一大批的無線通訊方案應運而生,例如NBIOT,藍牙4.0,zigbee等等。同時微功耗無線處理器的流行使得傳統家電帶上了智能的色彩,智能家居必將是未來家庭的必備。某些高科技企業也在揶揄這塊市場,紛紛推出了自家的智能家居解決方案,比較知名的有米家方案以及阿里智能的解決方案。但是回到現實的使用上來說,每個家庭的條件環境其實不一樣,同樣的產品未必在每個家庭上都可以使用方便,所以個性化的定制產品才可以更好的方便我們的生活。 于是在暑假期間,萌生了DIY一套智能家居方案的想法,具有各種智能開關和傳感器等節點,并且對接物聯平臺實現聯網控制以及數據的上傳。由于家庭中將會使用到的智能設備種類繁多,所以我將采用??榛納杓撲悸?,即采用核心板加外圍功能部分的思路,像搭積木一樣的構建各個智能設備。大家有同樣想制作的想法可以參考。 截至發帖前,我完成了智能網關,智能墻壁開關,無線??乜匾約拔尷咂笳鏡納杓浦譜?,之后有新的設備加入的話,我會及時的更新?!咀急甘孿睢? 完成這個涉及到多方面的項目,需要的硬件設備以及開發環境較多,所以我先大概給出一個列表:軟件篇: Arduino IDE:用于給ESP8266編程使用 KEIL uVision5 :用于給51單片機編程使用 串口調試器:用于監控單片機輸出數據 lceda設計軟件:繪制電路原理圖,設計PCB電路板 硬件篇: NodeMCU開發板一塊 億佰特zigbee??槿舾桑ㄊ詠詰閌慷ǎ?STC8F2系列單片機若干 核心的主要控制器件在此列出,其他元器件會在制作過程中一一說明?!局譜鞴獺課夜瓜肓艘徽胖悄薌彝サ耐繽仄送?,大家可以欣賞以下,后期圖上的設備都將加入進來: 由于涉及到多個設備的設計制作,所以本個報名貼先奉上智能家居核心板,智能網關以及無線氣象站的制作過程:#制作過程之核心板篇#>>>本項目使用zigbee網絡進行智能家居之間的通信。好早之前就接觸過zigbee組網,對于這種低成本低功耗的網絡還是抱有很大信心的。這里講解選擇這個網絡的幾大理由: mesh結構的網絡很適合智能家居的控制結構,在入網的任何一個節點都可以訪問到所有節點的數據,這點很適合網關控制各個設備。低功耗使得終端設備甚至可以采用電池供電,使得所有的模組都盡量可能的無線化。多跳傳輸,無線方案中最大的問題就是數據發送的不穩定以及障礙物對信號的遮擋導致數據無法正確傳輸,而ZigBee的多跳恰好解決了這個問題,節點會自動選擇優質的傳輸路線多跳傳輸,保證信號質量。總結一下:zigbee網絡確實是好,但是對于我這種比較懶惰的人并不想去學習那復雜的傳輸理論以及zigbee通訊芯片的編程,于是我選擇上網購買ZigBee???,最后選擇了一種小型的串口轉zigbee???,比較方便單片機通訊。 說到??榛?,那么就需要核心的控制板。本質來說就是將單片機以及購買的zigbee??榧傻揭徽諾緶釩逕?,并且預留各種接口,方便后期移植到各種設備上,這樣一張電路板就可以適用各種智能家居設備了。 在保證功能足夠的同時,體積也是我需要考慮的問題,如果核心板做的過大,會導致無法安裝到某些空間狹小的智能設備中,所以小體積是我所著重考慮的?;詼嚳矯嬋悸侵?,stc8F2k08s2進入了我的視線,小巧的sop16封裝以及簡單的外圍電路,足夠的IO口(14個)。這款芯片成為了核心板的控制單片機。于是一番繪制原理圖以及PCB之后,成品大概明朗了: 焊接好的成品如下: 這將會成為以后所有我的智能家居方案的核心控制板。#制作過程之智能網關篇# 完成了核心板的制作,網關成為了下一個比較關注的對象,因為家中的所有智能設備的控制以及通訊都會由他來完成,包括鏈接到互聯網上傳數據,所以說對于網關的硬件選取也是重中之重。上聯互聯網,下接zigbee小型通訊網,網關擔任了一個家庭控制中心的角色,對于它的選擇我認為esp8266是個不錯的方案,可以支持arduino ide編程,這對于不太了解網絡通訊協議的我來說是個好消息,因為在arduino的編程中,我可以借助強大的庫函數來完成我想要的功能。 ESP8266是一個擁有了近80Mhz的主頻的32位處理器,內置了wifi模組省去了網線,并且擁有豐富的外設以及較高的性能,可以勝任智能網關的工作。當然,近期樂鑫發布的ESP32系列芯片也會是個好的選擇,更高的主頻以及wifi藍牙雙模的設計讓其擁有更加方便的接入方式,由于手頭上正好有一塊ESP8266,所以沒有采用性能更好的ESP32。這樣我需要對ESP8266進行片上編程,并調用它的串口和zigbee??橥ㄐ?,當zigbee的節點收到其他設備發來的數據的時候,ESP8266可以對其處理或者通過WiFi上傳到云平臺,整體的設計思路就是這樣。 為了方便網關節點的狀態顯示以及相關信息讀取,為以后的調試提供便利,我決定給網關添加了顯示屏屏,這樣方便信息的讀取以及調試工作。最終選擇了下面的這塊4.3寸的串口組態觸摸屏。 完成了zigbee節點核心板的設計以及網關的硬件選擇,整個智能家居系統的主要部分就構建完成了,我先不講解程序的編寫,因為我將會在調試好每一個智能設備之后,再對網關進行編寫對應設備的接口程序。即完成一個智能設備的開發之后再對接網關,使其加入到家中的zigbee網絡,實現聯動控制或者聯網控制,因為畢竟我使用的ZigBee模組只是起一個通訊的作用,具體的功能實現還是靠核心板上的單片機來完成。這種開發方法叫做迭代開發,對于較為龐大的項目是一種較好的解決方案。搭建好的智能網關。 #制作過程之無線氣象站篇# 接下來我將會進行首個智能設備的制作,我將會從制作這個設備的緣由開始,一步一步去實現我想要的功能,帖子篇幅較長,請慢慢觀看。1.起因: 說到氣象站這個東西,一般大家都會覺得氣象局才需要這個東西去量測各種氣象數據(溫濕度,氣壓,風速風向,紫外線強度等等),而我們得知當天的氣象數據多半是靠手機上的天氣軟件來查看的,但是這樣帶來一些問題:手機上獲得的數據往往不能代表區域中所有的數據,如果我們可以在家中自己搭建一個氣象站,這樣就可以得知最實時的,最精確的數據,最具有參考性。同時,氣象站的各種數據輸出還可以在以后為我帶來更加合適的穿衣建議,以及可以和家中的其他設備聯動,比如室外光線弱會自動開啟室內電燈之類的。2.氣象數據選擇 氣象數據有很多種類,我選擇了幾項對生活影響較大的參數:溫度、濕度、氣壓、光照強度、紫外線強度。選擇這些參數的原因,基于以下幾方面: 溫濕度數據可以給讓我知道外面是高溫還是低溫,干燥還是濕潤,這對一些出行需要攜帶的衣物以及保濕工作起到很好的參考作用。氣壓數據很能說明接下來的天氣情況,相信大家都知道雨前蜻蜓低飛的原因,就是因為氣壓較低,如果當前測得的氣壓較低,那么周邊高氣壓的區域的空氣會向低氣壓區域流動,低氣壓區域的空氣就是越聚越多,導致空氣上升,遇冷凝結,造成降雨。所以氣壓數據可以很好的預報將來是否會有降雨發生。光照強度以及紫外線強度可以很好提醒我是否需要防曬以及攜帶墨鏡等等,因為并不是光照強度越大紫外線強度就越大的,前者表示了照明強度,單位是勒克斯,后者表示了紫外線的強度,單位是瓦每平方米。在中國近赤道的城市,太陽的紫外線強度普遍比其他城市大,但是光照強度并不會比一些“火爐”城市大。這就是為什么有的太陽光看起來不耀眼,實際上很傷害我們的皮膚。3.傳感器選擇 這個氣象站由于需要長時間使用,那么在倡導節能減排的今天,低功耗是必須要考慮在內的。所以對于傳感器的選擇,我使用了一些采用iic接口通訊的數字傳感器,既可以保證數據的精確,也可以設置傳感器進入低功耗的模式。下面是我所 使用的傳感器,輸入這些名字就可以在某寶搜索到 : SHT20 :溫濕度傳感器BMP280:氣壓傳感器VEML6070:紫外線傳感器BH1750:光照強度傳感器 4.代碼的編寫: 這么多傳感器的調試是一個比較費時費力的工作,我耗費了幾乎一周的時間來調試這些傳感器,索性終于都可以正常的輸出數據了。下面用一張表來解釋氣象站的代碼邏輯: 可以看到,在程序開始執行之后,首先初始化了各個傳感器以及設置他們的工作模式,然后四個傳感器紛紛進入低功耗模式節省電力。由于氣象站需要在每次間隔一段時間后上傳所有的傳感器數據,所以我在這里用到了STC8系列單片機所帶有的掉電喚醒定時器,這個定時器在單片機進入掉電模式之后仍然可以運行,這樣定時器在設定時間到來之后就會喚醒單片機,這時候單片機就可以依次喚醒所有傳感器并且獲取數據,然后再次進入掉電模式,等待下一次喚醒。這樣我使用所有傳感器都帶有的低功耗睡眠模式以及單片機的掉電模式很大程度上節省了電力,使得這個氣象站使用電池供電成為可能。5.實物的焊接制作調試好了所有的傳感器,下面就是把他們焊接到一起了,我使用洞洞板來焊接四個傳感器。 焊接好了之后,實測待機狀態下的電流數據11uA: 單片機喚醒,采集傳感器數據,使用zigbee??櫸⑸涑鋈ナ鋇惱宓緦魘?8mA 綜合來說,待機狀態下的電流數據幾乎可以忽略不計(微安級),而在發射狀態下,其電流可以達到28ma左右,但是畢竟此狀態下需要的時間極少(800ms左右,包括收集傳感器數據以及發送)所以氣象站決定采用鋰電池供電,我采用了比傳統鋰聚合物電池穩定許多的18650電池(很害怕鋰聚合物電池鼓包)。 但是采用了電池供電的設備,免不了更換電池或者充電的苦惱,所以進過一番設計過后,一個永遠都不用充電的氣象站誕生了: 由于氣象站長期在室外(我家陽臺上),所以我沒有浪費室外較好的太陽能資源,于是我購買了一個太陽能電池板以及一個太陽能充電器,這樣在晴天太陽能就可以給電池補充電力,在沒有太陽的情況下,則使用鋰電池來給氣象站供電,下面是太陽能電池板在多云天下的輸出電壓: 鋰電池用的是一個2200mah的18650電池,根據理論計算,滿電的18650電池大概夠氣象站續航: 這樣的續航成績保證了連續近一個半月可以用純靠電池供電,加上太陽能電池板晴天下近9小時的電力輸出,這下可以永遠不需要充電了??!但是為了考慮周全一點以及?;さ緋?,我給18650電池增加了一個?;ぐ?,這樣即使極端環境下,電池也不會過放了。6.氣象站輸出數據測試 現在氣象站可以正常的定時喚醒了,我開始準備測試數據是否正常,鏈接zigbee的協調器節點到電腦上,打開氣象站的電源,可以看到每隔一段時間,串口都會輸出一些數據: 下面是對一幀數據的解讀:(當前的測試位置是氣象站放在室內上,當天晴天) 經過16進制到10進制換算后,可以得到當前的氣象數據: 濕度:64.8%溫度:32.08度氣壓:100194帕斯卡光照強度:213勒克斯紫外線強度:1(室內幾乎為0,此數據請參考VEML6070的數據手冊,作進一步分析)可以看到氣象站的數據正確無誤,所以接下來就是針對網關的開發了7.網關對應程序的編寫: 由于ZIgbee協調器節點是采用串口通信的方式,于是需要ESP8266的串口來于協調器節點進行通信,所以我使用了Arduino自帶的軟串口庫,這樣我可以隨意定義兩個io口作為串口使用。 網關對于氣象站來的數據需要分為接受,處理,上傳到物聯平臺共3個過程,所以我一部分一部分的講解如何處理。 接受過程: 從之前的氣象站測試數據圖來看,一幀數據一共有近20多個字節,所以當一幀數據到來時,我一次性的將其從串口取出,并且依據數據的格式,從中獲取節點類型,節點編號,指令類型,數據長度等信息。 得到了這些數據之后,就方便我的網關去判斷到底數據來自哪個設備,從而執行相關的程序。那么現在我的網關憑借節點類型知道了是無線氣象站發來的數據,接下來就進入到數據處理的過程了。 處理過程:大家可以看出,氣象站發來的數據全部是16進制的,所以我需要將其轉換成整數型變量,以便發送到物聯平臺。在氣象站的數據包中,取其中數據如下: 經過一些移位操作,我獲得了所有的數據(十進制格式),下面就方便我上傳到物聯平臺了! 對接物聯平臺過程: 這次我使用的物聯平臺是貝殼物聯平臺,是免費的,只要注冊一個賬號即可使用,并且有手機APP以及微信小程序,這樣給我以后的控制提供了很多選擇。連接方式是采用TCP鏈接,即我的網關需要不停的發送心跳包來保持一個在線的狀態,建立好TCP鏈接之后,只需要向服務器不停的上傳數據,這些數據就可以正常的在手機上查看了。這里借用貝殼物聯通訊協議中的一個圖片來說明。 得益于Arduino眾多的庫文件,只需要幾行代碼,就可以鏈接到自家的WIFI并且建立一個TCP鏈接了。 之后的事情變得簡單了許多,由于貝殼物聯平臺的通訊格式采用的是json字符串(這也是大多數物聯平臺網站要求的通訊格式,即智能設備發送給服務器,服務器反饋回數據都是這個格式),所以我添加了一個用于處理json字符串的json庫,這樣我的智能網關就可以處理來自服務器的數據了。 至此對接物聯平臺的工作就完成了,下面開始演示!【照片演示】 編寫好代碼,并且用arduino自帶的millis函數來讓ESP8266每隔5s上傳一次氣象站發送來的數據,下載代碼到ESP8266后,登錄貝殼物聯手機端,我查看到了這些信息: 此時ESP8266成功的收到了zigbee協調器發送來的數據,并且成功的將數據的格式轉換了過來,上傳到了服務器。 至此,我實現了氣象站以及網關的設計,電路搭建以及數據的上傳。給家里添加了相對準確的氣象參考數據,并且只要我的手機有網絡的情況下,隨時可以查看家中的氣象數據,給家庭帶來了很大方便。接下來智能墻壁開關,無線??乜氐納杓浦譜魑一岢中⑻?,以及其他更多的智能設備加入?!鞠喙匚募蜃試礎?在這里我附上全部各個傳感器的調試代碼(基于STC8系列單片機開發),所以你如果也使用了STC8系列的單片機,可以直接使用。#制作過程之智能墻壁開關篇#下面是介紹智能墻壁開關的設計,核心就是使得家里墻壁開關智能化,可以聯網控制,達到場景聯動,智能控制等目的。我嘗試就家中的傳統開關進行改造,但是發現拆開之后內部空間實在不夠,沒法完成改裝 于是嘗試網購新的開關,尋找空間大些的墻壁開關,后來我找到了專門生產觸摸智能開關外殼的廠家,購買了幾個觸摸墻壁開關的外殼,內部空間較大,適合改造 由于是觸摸面板,所以我準備使用觸摸??樽魑淙?,那么這就帶來了一個問題,控制方式的轉變。傳統的墻壁開關,開關的位置(抬起,按下)代表了不同的開關狀態,現在變成觸摸??楹?,每一次觸摸,代表的是開關狀態的變化,即觸摸一次,開關的狀態變化一次(開變成關/關變成開),所以在代碼的邏輯中,我會注意到這個控制模式的變化。關于執行機構,也就是一充當原來機械開關的器件,我準備使用繼電器來代替。繼電器可以讓我使用單片機輸出的信號去控制220V交流電壓的通斷,并且提供良好的隔離以及絕緣性能。 1.代碼的編寫:選擇了繼電器以及觸摸??櫓?,我在面包板上搭建了電路,接下來就是編寫代碼了 對于 智能開關節點,我將zigbee??榕渲貿閃寺酚善鶻詰?,這樣做的好處是,墻壁開關同時扮演了一個路由器的角色,看可以協助一些遠距離的終端節點完成多跳數據傳輸。。例如我想在臥室使用一個無線開關(下一章將會說到)去控制家門口的燈光,直接將數據發送到家門口的智能開關上或許信號強度不夠造成通信失敗,這時我在客廳增加一個路由器節點之后,無線開關的信號便可以傳輸到家門口的智能開關上。 同樣的,為了響應國家節能減排的號召,我給單片機配置成了空閑模式以節省功耗,但是空閑模式下單片機沒法正確及時的檢測到觸摸按鍵的按下,所以我使用單片機的外部中斷來檢測觸摸按鍵,當觸摸按鍵按下時,單片機檢測到電平變化,引發中斷,喚醒單片機,使得單片機執行相關指令。 當zigbee??槭盞嚼醋災悄芡氐氖菔焙潁ɡ綾蘸峽鼗蛘叨峽兀?,其輸出數據引發的串口中斷也會喚醒單片機,這時候單片機會執行收到的指令,隨后再次進入空閑模式。 此外,為了更好的檢測每個開關的狀態,每次開關有動作之后,會將當前的狀態上報給智能網關,以便網關檢測家中所有的開關狀況。 2.開關的測試:鏈接zigbee的協調器節點到電腦上,打開智能開關的電源,可以看到每當我觸摸開關,對應的繼電器都會動作,并且協調器節點串口都會輸出一些數據: 下面是一幀數據的解讀 測試完畢,智能開關達到了我想要的功能,下面就是針對我購買的外殼設計PCB板了3.智能開關PCB的設計與制作:對于購買的外殼,我先找到了一張廠家提供的CAD圖紙,上面標有了一些基本尺寸,這樣方便我去設計一塊合適的PCB板。將之前在面包板上搭建的電路,繪制成原理圖之后效果如下: 轉換成PCB文件后,經過簡單的元件擺放以及布線后,完成的效果如下: 將交流高壓部分和直流低壓部分開槽隔離,提供了較好的抗干擾特性。而反面則設有zigbee??橐約暗テ奈恢?。 約幾天后,我收到了制作好的板子。 同時到來的還有一些元器件。 焊接過程太繁瑣無聊,略去。焊接好之后的效果圖 安裝上觸摸??櫓?,使用雙面膠將觸摸??檎程諉姘宀A?。 燒錄程序,合上外殼背后使用標簽標明出接線口定義,方便安裝。 使用智能開關替代家中的傳統開關。 4.網關對應程序的編寫:這部分的程序主要是網關接受物聯平臺發來的控制指令json字符串,然后解碼翻譯,最后通過zigbee網絡告知智能開關引起相應動作。所以其核心在于接受服務器的json字符串,解釋其含義。同樣的,還是使用Arduino的json庫來處理這些信息,查閱物聯平臺的通訊協議手冊,發現采用如下格式: 所以只需要解讀say指令后面附帶的指令即可,于是很快的,一個使用else if語句的并列結構就寫好了,程序對收到的字符串依次判斷,如果相同則發送指令給智能開關。 上傳程序到ESP8266,開始測試!5.綜合測試安裝智能開關到位,接上網關的電源,觸摸觸摸開關,電燈可以正??艄乇?拿出手機,打開物聯平臺,按下開啟電燈按鈕,電燈開啟。 測試完畢至此,我實現了智能開關的設計,電路搭建以及使用網絡控制。并且支持各種功能擴展(定時開關,和人體傳感器聯動等等),升級空間十分大,并且可聯網控制,給生活帶來了很大方便。:#制作過程之智能墻壁開關篇#下面是介紹智能墻壁開關的設計,核心就是使得家里墻壁開關智能化,可以聯網控制,達到場景聯動,智能控制等目的。我嘗試就家中的傳統開關進行改造,但是發現拆開之后內部空間實在不夠,沒法完成改裝 于是嘗試網購新的開關,尋找空間大些的墻壁開關,后來我找到了專門生產觸摸智能開關外殼的廠家,購買了幾個觸摸墻壁開關的外殼,內部空間較大,適合改造 由于是觸摸面板,所以我準備使用觸摸??樽魑淙?,那么這就帶來了一個問題,控制方式的轉變。傳統的墻壁開關,開關的位置(抬起,按下)代表了不同的開關狀態,現在變成觸摸??楹?,每一次觸摸,代表的是開關狀態的變化,即觸摸一次,開關的狀態變化一次(開變成關/關變成開),所以在代碼的邏輯中,我會注意到這個控制模式的變化。關于執行機構,也就是一充當原來機械開關的器件,我準備使用繼電器來代替。繼電器可以讓我使用單片機輸出的信號去控制220V交流電壓的通斷,并且提供良好的隔離以及絕緣性能。 1.代碼的編寫:選擇了繼電器以及觸摸??櫓?,我在面包板上搭建了電路,接下來就是編寫代碼了 對于 智能開關節點,我將zigbee??榕渲貿閃寺酚善鶻詰?,這樣做的好處是,墻壁開關同時扮演了一個路由器的角色,看可以協助一些遠距離的終端節點完成多跳數據傳輸。。例如我想在臥室使用一個無線開關(下一章將會說到)去控制家門口的燈光,直接將數據發送到家門口的智能開關上或許信號強度不夠造成通信失敗,這時我在客廳增加一個路由器節點之后,無線開關的信號便可以傳輸到家門口的智能開關上。 同樣的,為了響應國家節能減排的號召,我給單片機配置成了空閑模式以節省功耗,但是空閑模式下單片機沒法正確及時的檢測到觸摸按鍵的按下,所以我使用單片機的外部中斷來檢測觸摸按鍵,當觸摸按鍵按下時,單片機檢測到電平變化,引發中斷,喚醒單片機,使得單片機執行相關指令。 當zigbee??槭盞嚼醋災悄芡氐氖菔焙潁ɡ綾蘸峽鼗蛘叨峽兀?,其輸出數據引發的串口中斷也會喚醒單片機,這時候單片機會執行收到的指令,隨后再次進入空閑模式。 此外,為了更好的檢測每個開關的狀態,每次開關有動作之后,會將當前的狀態上報給智能網關,以便網關檢測家中所有的開關狀況。 2.開關的測試:鏈接zigbee的協調器節點到電腦上,打開智能開關的電源,可以看到每當我觸摸開關,對應的繼電器都會動作,并且協調器節點串口都會輸出一些數據: 下面是一幀數據的解讀 測試完畢,智能開關達到了我想要的功能,下面就是針對我購買的外殼設計PCB板了3.智能開關PCB的設計與制作:對于購買的外殼,我先找到了一張廠家提供的CAD圖紙,上面標有了一些基本尺寸,這樣方便我去設計一塊合適的PCB板。將之前在面包板上搭建的電路,繪制成原理圖之后效果如下: 轉換成PCB文件后,經過簡單的元件擺放以及布線后,完成的效果如下: 將交流高壓部分和直流低壓部分開槽隔離,提供了較好的抗干擾特性。而反面則設有zigbee??橐約暗テ奈恢?。 約幾天后,我收到了制作好的板子。 同時到來的還有一些元器件。 焊接過程太繁瑣無聊,略去。焊接好之后的效果圖 安裝上觸摸??櫓?,使用雙面膠將觸摸??檎程諉姘宀A?。 燒錄程序,合上外殼背后使用標簽標明出接線口定義,方便安裝。 使用智能開關替代家中的傳統開關。 4.網關對應程序的編寫:這部分的程序主要是網關接受物聯平臺發來的控制指令json字符串,然后解碼翻譯,最后通過zigbee網絡告知智能開關引起相應動作。所以其核心在于接受服務器的json字符串,解釋其含義。同樣的,還是使用Arduino的json庫來處理這些信息,查閱物聯平臺的通訊協議手冊,發現采用如下格式: 所以只需要解讀say指令后面附帶的指令即可,于是很快的,一個使用else if語句的并列結構就寫好了,程序對收到的字符串依次判斷,如果相同則發送指令給智能開關。 來自:Hackaday Prize 2019時間:2019-08-14 diy制作
  • 全自動微縫涂膠貼標機

    本文首發DF創客社區,作者:DFBktToa_yB原文鏈接://mc.dfrobot.com.cn/thread-289777-1-1.html現在市場上有一種紙做的環保筆很流行,一個朋友就是做這種筆用紙管的,但是這種紙管樣式太單一很難跟其他人有差異化,為了增加賣點需要在表面貼一層花紋紙來讓產品更好看更有特點,現在市場上流行的是一種表面壓了軟木的牛皮紙,厚度在0.4mm左右跟名片的厚度差不多不過沒那么硬,就是下圖這種; 貼這種紙目前是兩種做法,一種是螺旋式的機器卷繞,優點是貼的牢不容易松,缺點是縫隙略大而且由于縫隙是螺旋式的所以不管從哪個角度看都能看到縫隙;還有一種是人工貼,貼出來是豎直的一條直縫,縫隙小且只有人面向直縫那個方向時才會看到縫隙,將來容易做成類無縫,缺點是人工貼太慢還不容以把控質量成本自然就高。那個朋友傾向于朝直縫貼紙這個方向發展,所以他找我設計了這款機器,能將包括木紋紙在內的 各種花紋紙 在線涂膠并貼在紙管的表面,重點是縫隙要小,決定縫隙大小的主要因素是紙管外徑的一致性和紙張長度的精確性,這臺機器用步進電機送紙激光切斷,確保了紙張長度的精確性,還能一機多用對各種直徑的紙管和各種樣式的花紋紙都能輕松適配,初定速度:1根/秒。在確定用激光這種方案之前還走了不少彎路,雖然做之前做了充分調研,看了各種干、濕貼標機還有圖中這種電子行業的看似很高級的貼標機, ,比較過后發現市場上現有的機器都不行,不適用,綜合成本可靠性等權衡之后確定了方案,畫了設計圖,買了配件,加工好之后拿回來裝配,這是第一次裝配的樣子(沒錯,這次失敗了,確實還有第二次): 看到上邊第三張和第四張圖了嗎,就是放在桌子上锃光瓦亮的小零件,就這個東西,來來回回費了好大力氣,最終以失敗告終,所以第一版就這么結束了。(可能我有預感不會那么順利,所以第一版并沒有做機架,因為我知道還要改,機架做了也白做——蹲在地上干活真費勁)。經過討論,切紙的工序換成激光,用激光把涂了膠水的紙切斷,經過一段時間的重新設計、加工、才買配件,第二版開始裝配了,這一次我做了機架并預留了配電箱的位置(預感這次沒問題): 上邊的第三張圖,裝配基本完成了,配電板先用木板臨時裝一下,然后開機運行;另外比較慚愧的是本人不會編程,所以用了這種指令式的可編程控制器,對于像我這種不會寫程序的機械狗來說非常合適,價格也不貴,推薦: 下面是運行視頻的截圖: 這是成堆的紙管自動落料到輸送帶上一根根排列好的樣子, 這張圖是經過涂膠、切斷、卷貼之后成品出來的樣子。速度 1根/秒(能變速),適用于不同直徑的管子、圓瓶、圓棒以及不同厚度、硬度的各種紙張、標簽等。下面是卷出來的成品圖特寫,可以看到中間的縫隙即便是用相機拍出來都已經很小很小了,人眼看著的效果會更好一點,但是兩端縫隙還是稍大,這是因為激光切割頭的Y軸加速度太小,調整Y軸的加速度之后兩端縫隙也變得和中間一樣了(沒拍照),再切掉兩頭的5mm就算成品了(還需要再做一個自動切頭的小裝置);再之后加裝外殼、配電箱、防護板等等東西,就算完成了。哎,一把辛酸淚。。鄭曉偉17717372392
    來自:Hackaday Prize 2019時間:2019-08-19 diy制作
  • 基于Processing語言的可編程LED特效燈

    本文首發于DF創客社區,作者:曉慶原文鏈接://mc.dfrobot.com.cn/thread-296806-1-1.html1.簡介這是一款十分炫酷的可編程LED特效燈,例如人造火焰、雪花飄落等動態的效果。通過processing語言可以編程生成各種顯示效果,提供豐富多樣的交互方式,包括音樂,聲音,傳感器和其他東西在內的輸入??梢雜τ糜諭砘?,酒吧等場所,營造特殊光影效果。硬件:樹莓派3B+開發版 x 1Fadecandy 開發板 × 11米LED燈帶 × 2電源開關 × 1軟件:Processing優勢:提供非常絢麗的LED顯示顏色,顯示效果可以編程。提供非??犰諾慕換シ絞?,比如聲音反饋、與 API 連接并獲取喜歡的服務、IFTTT集成、語音識別,以及許多其他功能。進度:作品已完成,已上傳先看一段炫酷的視頻吧(溫馨提醒:視頻中某些光線的變化模式或者閃光燈的方式,可能會引起極少數人出現癲癇癥狀。如有不適請立即停止觀看)。配合音樂享用效果更佳2.原理說明 整個LED顯示效果由部署在服務器(Windows/Mac/Raspberry/IOS/Android)processing語言生成,processing 的sketch實例能夠通過采樣點轉換位圖。樹莓派作為服務器的角色,給fadecandy傳輸指令從而間接驅動燈條。采樣點發送到fadecandy開發板,由fadecandy驅動8x15 的LED陣列,LED的光透過漫反射的PVC塑料管呈現出來。Processing Processing是一種具有革命前瞻性的新興計算機語言,它的概念是在電子藝術的環境下介紹程序語言,并將電子藝術的概念介紹給程序設計師。它是Java 語言的延伸,并支持許多現有的Java 語言架構,不過在語法(syntax) 上簡易許多,并具有許多貼心及人性化的設計。Processing可以在Windows、MAC OS X 、Linux 等操作系統上使用。目前最新版本為Processing 3。以Processing 完成的作品可在個人本機端作用,或以Java Applets 的模式外輸至網絡上發布。官方網站:https://processing.org下載地址:https://processing.org/download/ 效果很明顯。顏色非常好,有時亮度也很高。這是一種控制光源陣列的很棒的方法,這意味著就算你不必是專業程序員,只需通過在 Photoshop 中制作的內容就做到很酷的效果。這里不得不提openprocessing.org 這個網站,它提供了豐富的草圖并支持在線編輯工具。Processing還附帶了一個很棒的工具用于瀏覽和安裝所需要的庫。 Fadecandy 采用了Micah Elizabeth Scott的Fadecandy開發板來。她一直在從事藝術和互動實驗的燈光特效工作。正如她在網站(https://www.misc.name/fadecandy)上展示的那樣,大多數普通的LED 控制器在混合色調或顯示正確的色彩時效果很差。于是,她制作了Fadecandy開發板來解決這些問題。更好的是,它可以通過USB 連接到大小型計算機,還可以嵌入到計算機(像樹莓派一樣)進行控制。也可以直接與Processing 進行接口,Processing 也可以在樹莓派上使用,完全可以滿足這種小規模的需求。樹莓派 Raspberry Pi是一款針對電腦業余愛好者、教師、小學生以及小型企業等用戶的迷你電腦,預裝Linux系統,體積僅信用卡大小,搭載ARM架構處理器,運算性能和智能手機相仿。在接口方面,Raspberry Pi提供了可供鍵鼠使用的USB接口,此外還有快速以太網接口、SD卡擴展接口以及1個HDMI高清視頻輸出接口,可與顯示器或者TV相連。Ws2812 LED燈帶 這個可控制的多彩LED燈帶,不過多介紹。制作過程軟件準備 1. 在Mac/Windows和樹莓派上下載并安裝processing 3(https://processing.org/download/),2. 下載并安裝fadecandy軟件到樹莓派(https://github.com/scanlime/fadecandy/releases),調試過程中可以把fadecandy部署在Mac/Windows上。3. 下載processing的sketch。硬件準備 1. 樹莓派3B2. 淘寶海外代購fadecandy開發版3. ws2812 60珠LED燈帶2米。4. 直徑5cm,長度30cm的PVC管。5. 直徑10cm,長度30cm的漫反射PC管。6. 5V 6A電源。制作過程LED 燈的布局LED 我在某寶購買了兩個1米長的帶60個LED 的WS2812防水燈帶,一個5V,6A, 30W 的電源 和一個 Fadecandy 開發板。沿著PVC 管四周纏繞8條垂直的燈帶,每條燈帶上帶15個燈,這樣的高度和 LED 密度,可以改善LED燈的分辨率。 將燈帶固定在PVC管上 完成外殼的部分 我會根據燈帶展開的形式,決定燈帶的長度。我采用光擴散PC管覆蓋在LED燈的周圍。 采用了Autodesk Fusion 360 軟件自行設計了燈的底座外殼,采用3D打印機耗時兩天打印出來。 我希望燈能夠放在房子里的任意一個角落,而不是一直通過 USB 連接電腦。這意味著我需要選擇小型的獨立的計算平臺與我的設計相匹配,需要能運行 Fadecandy 服務器并運算為LED供電的 Processing sketch。將軟件部署在樹莓派3B+,并集成為一個獨立的LED燈。 成品化 產品外觀 配合Andriod APP控制 顯示效果 通過Processing 的IOS客戶端控制特效燈 配合IOS App顯示效果
    來自:Hackaday Prize 2019時間:2019-08-15 diy制作
  • 基于NB-IoT的智慧路燈監控系統(DF創客社區)

    本文首發于DF創客社區,作者:不脫發的程序猿【腦洞大賽】基于NB-IoT的智慧路燈監控系統(項目簡介)項目背景 每當夜幕降臨,城市中各種各樣、色彩繽紛的路燈亮起,為城市披上了一層絢麗的外衣。但在這絢麗的外表下則隱藏著巨大缺點: 1)能源浪費:由于城市的夜晚進入后半夜后,人們已經開始休息,街上人流量開始減少,有些地段在特殊時段根本不需要過多的路燈照明,導致能源浪費,增加了不必要的成本; 2)維護困難:由于使用人工巡檢,需要大量人力,而路燈數量龐大,路燈實時狀態不能及時獲取,導致路燈故障維護、排查效率極低。需求分析 路燈管理平臺的建設,是智慧城市的一個重要組成部分,不僅能夠實現城市及市政服務能力提升,也是智慧城市的一個重要入口,可促進“智慧市政”和“智慧城市”在城市照明業務方面的落地。以往在路燈管理上存在著很多問題,例如路燈開關、巡查、維護基本靠人力,重點地段晚上需要派人巡視,以保證設備的齊備率;路燈發生故障時,檢修人員無法確定路燈精確位置;管理人員對路燈無法進行分時段控制、無法監控路燈整體狀態;路燈保持常亮狀態效率低、不節能。針對以上問題,本系統設計的智慧路燈監控系統結構圖如下所示: 具體功能如下: 1)路燈節點支持自定義控制方式,可支持自定義時間控制策略和多樣化控制(兩側路燈全亮、全關、隔桿高亮等)兩種方式。 2)根據所在環境光照強度,自動調節路燈亮度,低功耗節能減排。 3)斷電?;?,電壓電流超過安全閾值,路燈自動斷電。 4)路燈故障自動報警,GPS精確定位,可從手機APP、微信小程序、PC端和Web平臺可視化監控路燈信息,隨時可調取任何一處路燈信息。 5)實時采集路燈節點工作狀態、電壓、電流、功率、功率因數、耗電量、產生二氧化碳、頻率、環境光照度和路燈狀態數據,實現統計分析和歷史查詢。 6)根據路燈節點歷史數據,使用機器學習算法,分析路燈使用狀況,構建精準城市路燈畫像。 總之,基于NB-IoT技術的城市道路智慧路燈監控系統有著廣闊的前景和寬廣的需求。功能設計 基于NB-IoT技術的城市道路智慧路燈監控系統,在每個照明節點上安裝一個集成了NB-IoT模組的單燈控制器,單燈控制器再經運營商的網絡,與路燈控制平臺實現雙向通信,路燈控制平臺直接對每個燈進行控制,包括開關燈控制、光照檢測、自動調節明暗、電耗分析等操作。智慧路燈實物圖如下所示: 與傳統“兩跳”方案不同,基于NB-IoT技術的解決方案不需要網關,每個NB-IoT路燈控制器直接接入運營商的NB-IoT網絡,即可與控制平臺通信,如下圖所示。 基于NB-IoT技術的城市道路智能路燈監控系統包括感知層、網絡層和應用層。 感知層由單獨的路燈控制??楹蚇B-IoT終端構成。道路上的每個路燈都安裝1個路燈控制???,路燈控制??楣芾礪返頻目?、負責數據信息的采集和監控路燈的運行狀態,它通過NB-IoT網絡與NB-IoT終端進行無線通信;NB-IoT終端將路燈控制??椴杉氖菪畔⑸洗絅B-IoT基站,將應用層中的手機或監控中心的管理命令下達到路燈控制???,對感知層的路燈進行管理和監控,使用AI技術賦能,構建精準城市路燈使用狀況畫像分析。網路層由NB-IoT基站和Internet網絡構成。Internet網絡主要應用4G的LTE平臺,將感知層的數據信息實時地傳送到應用層,同時將應用層的控制命令傳送到感知層。智能路燈監控系統網絡架構如下圖所示。 本系統設計方案具有以下優勢: 1)對路燈的控制上,采用分時段的3種控制策略,可以實現分時間段控制道路兩側路燈全亮模式、自動調整模式(根據環境光照強弱或電壓電流閾值)、終端聯控模式,在滿足照度需求的情況下,實現對電能的節省。 2)通信方式所采用的是中國電信的NB-IoT網絡,拓撲簡單、部署成本低,NB-IoT采用DRX模式,實現終端的實時在線,這種通信方式更適合靜止的和低移動性且需要下發指令的場景。 3)利用GPS地理信息管理系統,可以在手機APP、微信小程序PC應用和Web平臺界面上直觀定位每個路燈的位置,便于維修人員確定故障路燈地址、及時維修。 4)高精度數據采集與通信技術,可采集路燈節點工作狀態、電壓、電流、功率、功率因數、耗電量、產生二氧化碳、頻率、環境光照度和路燈狀態數據,數據精度達到小數點后兩位。 5)智能化設計,使用機器學習算法,實現對路燈使用狀態的分析和評估。 本項目目前已經完全實現,演示視頻如下所示: 基于NB-IoT的智慧路燈監控系統(設備選型)基于NB-IoT的智慧路燈監管系統在感知層可實現實時采集路燈節點的工作狀態(亮滅狀態)、電壓、電流、功率、功率因數、耗電量、產生二氧化碳、頻率、環境光照度、路燈亮度、路燈故障地理位置11種傳感數據信息。 路燈控制終端節點主要由主控制器、NB-IoT無線通信???、GPS???、光強檢測???、電能檢測??橐約笆涑隹刂頗?樽槌?,路燈控制節點??橛布滴鍶縵巒妓荊? 1、主控制器 主控制器選用STM32L432KC超低功耗單片機作為微控制器,NUCLEO-L432KC 開發板是首個集成一款QFN32微型封裝微控制器的Nucleo-32開發板,板載一顆STM32L432KCU6 微控制器(UFQFPN32),允許用戶直接使用ARM在線開發工具,板載Arduino Nano針腳布局可簡化功能擴展,集成的ST-Link調試器/編程器支持大容量存儲器和無探針調試,可以完全滿足智慧路燈節點數據處理的基本要求。 2、NB-IoT無線通信??楹虶PS??? NB-IoT通信??椴捎霉募偷納蝦R圃禕C20通信模組,以及SIM卡座、串口電路、濾波天線、復位電路組成,由電源??楣┑?。BC20支持GNSS,內置GNSS???,支持GPS定位,北斗雙模定位,實現衛星對路燈節點定位,極大方便用戶使用。本??榻郵綻醋災骺刂破韉穆返剖凳弊刺?、路燈節點功耗傳感數據以及??榛袢〉腉PS數據等信息,通過Internet將數據發送給華為IoT云平臺,并接收用戶通過Intemet發送來的控制命令。 3、光照檢測??? 光強檢測??槔霉庹漳?榧觳饌飩綣庹漲慷?,并將信號通過ADC方式傳入主控制器,根據環境光照強弱自動調節路燈節點亮度。 4、輸出控制??? 輸出控制??槭褂肶YAC-3S ???,該??椴捎迷翱煽毓?,輸入與輸出光耦完全隔離,通過單片機IO口輸出PWM調節占空比去改變220V交流電壓從而達到調光調速調節功率等功能。 5、電能檢測??? 電能檢測??椴捎肬ART接口和RS485接口,支持與PLC通信,刷新速度500MS,可讀取電壓、電流、功率、電能和頻率因數參數通過RS485或UART口輸出16進制數據。設計有繼電器???,結合路燈節點耗能情況和閾值報警,用戶設置多種模式(分時間段控制道路兩側路燈全亮模式、自動調整模式、隔桿亮燈模式和深夜模式)實現路燈智能管理。 電能檢測??椴捎肬ART接口和RS485接口,支持與PLC通信,刷新速度500MS,可讀取電壓、電流、功率、電能和頻率因數參數通過RS485或UART口輸出16進制數據。??檣杓樸屑痰縉髂??,結合路燈節點耗能情況和閾值報警,用戶自定義設置多種模式(例如:分時間段控制道路兩側路燈全亮模式、自動調整模式、隔桿亮燈模式、深夜模式等)實現路燈智能管理?;贜B-IoT的智慧路燈監控系統(硬件開發)本節將進行嵌入式硬件編程開發,通過電能檢測??槭迪質凳輩杉返平詰愕繆?、電流、功率、總耗電量、功率因子、路燈開關狀態、耗能產生二氧化碳、光照度、路燈亮度、環境光照度、GPS位置11種傳感數據,通過NB-IoT模組實現對華為云物聯網平臺數據上傳及下發獲取,達到聯動控制效果。 1、開發軟件 嵌入式硬件開發使用STM32CubeMX和Keil5實現,STM32CubeMX搭建NUCLEO-L432KC開發板GPIO底層配置,Keil5實現NUCLEO-L432KC開發板編程開發。STM32CubeMX 是 ST 意法半導體近幾年來大力推薦的STM32 芯片圖形化配置工具,也是配置和初始化 C 代碼生成器(STM32 configuration and initialization C code generation),也就是自動生成開發初期關于芯片相關的一些初始化代碼。STM32CubeMX 包含了 STM32 所有系列的芯片,包含示例和樣本(Examples and demos)、中間組件(Middleware Components)、硬件抽象層(Hardwaree abstraction layer)。 STM32CubeMX簡介、下載及安裝參見:https://blog.csdn.net/m0_38106923/article/details/89458297 Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發系統,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏匯編、鏈接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(μVision)將這些部分組合在一起。運行Keil軟件需要WIN98、NT、WIN2000、WINXP等操作系統。如果你使用C語言編程,那么Keil幾乎就是你的不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環境、強大的軟件仿真調試工具也會令你事半功倍。 Keil5簡介、下載、安裝及破解參見:https://blog.csdn.net/m0_38106923/article/details/89492257 2、STM32CubeMX底層環境搭建 使用STM32CubeMX搭建NUCLEO-L432KC開發板GPIO底層配置,主要配置微控制器晶振、定時器、PWM接口、UART1、UART2、ADC接口和LED狀態指示燈接口,具體實現如下: 3、Keil5編寫控制??槭迪執? 在Keil5開發環境中需要編寫硬件基礎底層配置功能、電能電耗檢測功能、GPS定位功能、環境光照檢測功能、NB-IoT模組通信功能和云端交互功能。 NB-IoT模組配置實現代碼可至原文查看: 更多點擊鏈接查看:基于NB-IoT的智慧路燈監控系統(硬件開發)基于NB-IoT的智慧路燈監控系統(云端部署及訓練)物聯網平臺包括數據管理、設備管理和運營管理等能力,可以實現統一安全的網絡接入、各種終端的靈活適配、海量數據的采集分析,從而實現新價值的創造。物聯網平臺向各行業提供強大的API開放能力,支撐各行業伙伴快速實現各種物聯網業務應用,滿足各行業客戶的個性化業務需求;同時,物聯網平臺支持無線、有線等多種接入方式,可以實現海量化、多樣化的設備接入。 本系統采用華為的OceanConnect物聯網聯接管理平臺,OceanConnect是華為云核心網推出的以IoT聯接管理平臺為核心的IoT生態圈。該平臺具有豐富的協議適配能力,支持海量多樣化終端設備接人,而且還提供數據存儲、數據顯示、數據分析、歷史查詢等功能。 硬件設備接入華為云物聯網平臺,具體操作可參見:NB-IoT使用CoAP協議接入華為IoT平臺、NB-IoT BC20模組使用LWM2M協議接入華為IoT平臺 本博文將簡要介紹NB-IoT智慧路燈系統云端部署和機器學習訓練模型云端搭建的實現過程。 1、華為云端部署 第一步:定義Profile 第二步:編解碼插件開發 第三步:設備連接后在線測調,查看數據是否正確。 2、華為云端Web開發 通過拖控件方式開發獨具特色和風格的Web應用,這里我原配置基礎上增加設備狀態功能、傳感器監控功能和規則功能三個界面。 設備狀態功能如下所示: 傳感器監控功能如下所示: 規則功能如下所示: 3、機器學習訓練模型云端搭建 第一步:建立項目工程 第二步:建立訓練數據神經網絡 第三步:建立測試數據神經網絡基于NB-IoT的智慧路燈監控系統(PC應用開發)作為IoT云平臺的數據交互PC客戶端,對平臺的數據進行展示,實現本地與遠程終端的數據交互,進而展現出依賴云平臺的應用使用的具體場景,進一步展現云品臺的優勢。 1、項目結構 整個使用常規的傳統的三層架構,同時引入MVVM架構模式,屬于混合型架構設計,將各個層次之間實現理論解耦,提高了系統各個層次之間的獨立性和可拓展性。 結構說明如下: HandyC.HW:項目實際入口,表現層,實際用戶操作邏輯的輸入輸出部分。 HandyC.HW.ViewModels:與表現層與之對應的視圖實體類部分,對用戶交互邏輯的主要實現處理???,同時在該項目中進行相關數據實體和視圖實體的相互轉換工作。 HandyC.HW.Data:用于處理來自于IoT平臺的數據源,為業務層提供需求的數據結果。 HandyC.HW.Service:項目的實際業務邏輯處理,組織數據層提供的數據。 HandyC.HW.Tools:項目整體結構中需要使用到的基礎輔助類集合,包括網絡請求相關類,緩存,數據序列化和反序列化,特殊數據格式處理等。 對應測試項目與之對應,前綴為Test.*,此處忽略 2、系統組織架構 系統組織架構分為兩個大的功能???,平臺監管以及數據采集兩個???,平臺監管主要是對設備實時動態進行監管,數據采集,處理來自IOT云平臺的歷史相關數據并展示。 3、使用技術 網絡通信相關技術(數據接口請求)WPF(UI框架)MvvmLight(MVVM框架)依賴注入簡單緩存LiveCharts(圖標框架)HandyControl(WPF組件框架)非對稱雙向認證(Https)AutoMapper(DTO轉換框架) 4、開發環境與工具 開發環境:Windows7 sp1、.Net Framework 4.7.2開發語言:C#開發工具:MicrosoftVisual Studio professional 2019(VS 2019) 5、功能介紹設備管理頁面的主頁面,紅框區域內為設備統計,包含了對當前設備的設備類型、設備狀態、設備的協議類型的相關統計信息,屬于設備總體的一個統計信息。設備列表中展示的是當前的存在的設備,以卡片的方式展示出來,包括設備的名稱、設備的型號、設備的編號等預覽。 顯示設備的詳細信息。 設備的實時數據顯示頁面,能夠動態實時請求道IoT平臺上的設備下發的最近歷史信息。 云平臺聯動主頁中的卡片為一卡片一設備,點擊設備卡片,可以對設備進行聯動模式控制,可支持三種聯動模式,終端聯控模式、自動調光模式和分段定時模式。默認手動模式,可以通過手動直接下發指令到IoT平臺,通過平臺將命令通知對應的設備執行,點擊控制按鈕進行云平臺掛載設備的開啟和關閉。 用戶可以通過點擊切換至定時模式,設定時間后,將點擊發送定時設備,等待設定的命令發送至IoT平臺。 命令下發成功是接收到的反饋信息。 自動模式與手動模式的操作類似,用戶通過開啟和關閉實現對IoT平臺上掛載的設備的執行模式的設定,關閉時,設備默認執行,為上一次的模式運行狀態,開啟時,變更為根據實際的自動條件進行自身狀態的控制。 設備歷史數據顯示頁面,主要功能為查詢功能,用于顯示從IoT平臺獲取到的當前設備對應的歷史記錄信息,可通過查詢條件進行更加細致數據查找。 點擊每條記錄的操作列按鈕,能夠獲取到該條記錄的詳細信息。 下圖的頁面為命令歷史數據的主頁面,默認顯示第一個設備的相關歷史數據,能夠查詢到多端給設備發送的相關命令指令歷史信息。 通過點擊每條記錄末尾的數據明細,可以查看到當前命令記錄的具體信息。 6、核心代碼 PC端主要分為兩個部分,一個是通過https請求雙向認證獲取到來自于IoT平臺提供的相關Api接口的目標數據,將數據進行處理根據View的需求進行相關的ViewModel處理之后展示到頁面中;一個是需要PC端與IoT平臺上的掛載設備進行數據交互時,實現本地命令的發送,進而間接控制設備的數據響應。 鑒定權限代碼至原文查看:基于NB-IoT的智慧路燈監控系統(PC應用開發)基于NB-IoT的智慧路燈監控系統(手機應用開發)通過與華為云平臺進行數據對接及聯動控制,為此開發智慧路燈APP控制系統。 1、系統總體描述 本系統共分為九個??椋合低車己?、用戶登錄、掃碼綁定、設備定位、設備狀態、歷史查詢、設備控制、畫像分析和系統設置。每個??槎雜ζ涓髯緣墓δ?,通過設備的定位、設備的實時狀態及設備控制能夠全方位監控路燈的耗能量及使用情況?;穹治鲆部啥閱車胤交蚰秤沒Ы寫笫軦I分析得到監測數據,并且能夠實時向用戶推送用電情況,并為其用戶進行合理的用電安排及方案。 2、使用技術 2.1、基礎技術 系統總體使用java語言進行開發; 在界面設計及展示部分使用HTML搭配CSS技術使其界面美觀大方; 框架設計使用MVP模式進行設計使其系統結構清晰明了; 數據對接使用HTTP和OkHttp3協議,大大降低數據處理難度;且提高了數據的完整性和實時性。 2.2、核心技術 登錄界面使用視屏背景技術將登錄界面進行高度美化; 在設備定位??櫓惺褂玫諶礁叩碌贗糞DK進行開發; 在云平臺對接時使用華為云平臺相關??榻涌誚鋅?; 使用Clendar相關類進行日期選擇設計; 使用Zxing二維碼掃描分析技術進行掃碼分析; 使用Echart技術進行數據實時顯示圖表分析; 在畫像分析??槭褂肁I大數據分析獲取數據實例。 2.3技術亮點 對第三方技術的合理運用; 對MVP開發框架的組合設計; 對API接口的清晰掌握; 對各種相關工具類的開發及調用; 結合大數據AI分析進行功能設計。 3、開發軟件 系統環境:Windows 10 開發環境:Android Studio 3.0,JDK 8.0 運行環境:Android 5.0級以上 接口測試軟件:Postman 6.5版本 控制軟件:Git 打包發布軟件:Android Studio (Generate Signed APK) 軟件簽名:iot_project.jks 4、功能概述 4.1、系統導航 首次進入APP當進入導航界面,導航界面中介紹APP的Logo、簡單描述、路燈模型、路燈功能分類及路燈運行方式。 4.2、用戶登錄 用戶登錄界面使用視屏作為頁面背景,通過輸入用戶名及密碼進行系統登錄。系統的用戶名及密碼在系統后臺統一進行注冊。 4.3、掃碼綁定 用戶登錄成功后將自動跳轉至掃碼界面,跳轉界面后會對該移動設備進行權限訪問,用戶需要同意所有權限才能正常使用該系統。授權后進行二維碼掃描。此時需要對路燈上的二維碼進行掃碼,通過掃碼得到該路燈的設備信息,從而在主界面中可查看該路燈的其他信息。 4.4、設備定位 此??櫓薪愿蒙梟璞附猩璞付ㄎ?,觀察其設備所在的具體位置,并能夠查看當前地方的天氣環境。此處的設計也是為后來的管理方便,對每一個路燈設備能夠全方位的進行查看。 4.5、設備狀態 此??榻運諫璞傅乃行畔⒔惺凳輩榭?,有電壓、電流、功率、功率因子、總耗電量、光照度、路燈開光狀態及路燈耗能所產生的二氧化碳量。 4.6、歷史查詢 此??槭嵌愿寐返撲惺蕕睦凡檠?,通過對歷史數據的查詢可分析出該設備在本周、本月及本年的所有用電量情況。這樣就能夠合理的對路燈用電量進行管理。 4.7、設備控制 此??槭嵌月返頻腦凍炭刂?,共分為三個模式分別為:終端聯控模式、分段定時模式及自動調光模式。三種模式分別對應三種不同的路燈控制,可遠程也可自動,充分達到了用電量的控制。 4.8、畫像分析 此??檣婕傲舜笫軦I分析功能,將華為云機器學習服務分析的數據結果下發至該系統,系統對其數據進行圖文的可視化展示,清晰的可以查看到城市區域日常用電情況及地方用電情況(由于數據量較少,所以設計的是本人七月份的個人用電畫像)。 4.9、系統設置 系統設置功能共分為以下幾點:系統設置、修改密碼、關于我們、系統更新及退出登錄。 5、核心代碼 數據獲取核心代碼至原文查看:基于NB-IoT的智慧路燈監控系統(手機應用開發)
    來自:Hackaday Prize 2019時間:2019-08-13 diy制作
銷量
281
查看
4849
參數名 參數值
發布于 2018 年 08 月 23日
更新于 2018 年 11 月 26日
相關文章

Moore8直播課堂

tracer ??