加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

HUD眼鏡

2019/08/19
375
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(3)
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

本文首發(fā)于DF創(chuàng)客社區(qū),作者:robo027

原文鏈接:http://mc.dfrobot.com.cn/thread-296363-1-1.html

為什么是眼鏡?

13世紀(jì)被發(fā)明,從當(dāng)時(shí)成為貴族們的玩物到今天幾乎人手至少一副,眼鏡,不管是結(jié)構(gòu)還是功能都沒有什么大的變化.不過,隨著現(xiàn)在的科技日新月異,VR,AR技術(shù)的出現(xiàn),讓我們多多少少也都嗅到了一絲"眼鏡革命"馬上要來了的氣息.
我對于眼鏡的改造欲就如同中學(xué)時(shí)期我們對待歷史書上的人物畫像一樣,總覺得那時(shí)他們少了一副帥氣的眼鏡,之前我就做過一個(gè)"焊錫保鏢"眼鏡

現(xiàn)在又耐不住了,眼鏡作為穿戴物,掛在臉上,作用如果還只是保護(hù)眼睛,校正視力是不是有點(diǎn)對不起咱這張臉.當(dāng)你在騎車,駕駛,騰不開手的同時(shí)又需要獲取來自手機(jī)上的信息,怎么辦?這時(shí)"第二屏幕"的需求產(chǎn)生了,
它一定具備"不影響你正在執(zhí)行工作,不剝奪你的正常視線范圍,簡單操作或不需要用手操作即可完成重要的交互"這樣一些主要特性.

"HUD"和"AR"
這兩個(gè)詞我想大家都不陌生,我就按我的理解簡單介紹一下,HUD原本是戰(zhàn)斗機(jī)上把儀表盤數(shù)據(jù)投射到擋風(fēng)玻璃上的技術(shù),現(xiàn)在民用了就成了我們常說的"抬頭顯示",功能說白了就是把方便你開車的一些信息投射到前擋風(fēng)上.
AR技術(shù)呢,俗稱虛擬現(xiàn)實(shí)技術(shù),目前它最有價(jià)值開發(fā)方向就是做AR眼鏡,什么是"虛擬現(xiàn)實(shí)"?其實(shí)中間少了兩個(gè)字"虛擬輔助現(xiàn)實(shí)"其中一個(gè)重要的功能就是能在真實(shí)的視覺畫面中對指定的目標(biāo)進(jìn)行虛擬標(biāo)識描述并只反映在你的鏡片上,也就是說你從鏡片中看到的畫面是真實(shí)和虛擬并存的,比如下面這個(gè)應(yīng)用場景 翻譯功能,能夠把看到的英語實(shí)時(shí)翻譯成中文顯現(xiàn)在眼前.過不了多久應(yīng)該就能走進(jìn)我們的生活了.感覺有了它走遍天下都不怕.
還有更多實(shí)用的功能推薦大家百科一下.所以講了這么多,它除了基本類似HUD的投射功能外,還應(yīng)該具備圖像識別物聯(lián)網(wǎng)功能.
而下面我的作品充其量也只能算個(gè)HUD眼鏡的半成品.因?yàn)檎f實(shí)話能力有限,手上的材料也有限.比賽時(shí)間也快到了,所以只能先這樣了.
成像原理
人眼的焦距范圍是25mm-50mm左右,我不可能把OLED直接放到自己的眼前,那樣就跟把臉湊到電視前看一樣,即便看的到上面的字,那也會擋住自己的視野,
所以最理想的方案就是參考谷歌眼鏡的微型投影加半透棱鏡的方法
主要研究的部分就是這個(gè)微型投影怎么實(shí)現(xiàn),就關(guān)于凸透鏡焦距的選擇,里面涉及到一些公式計(jì)算很復(fù)雜,告訴大家兩個(gè)簡單方法,要么淘一塊70-100mm焦距的菲涅爾透鏡,塑料的又比普通的凸透鏡薄很多方便你剪裁.
要么和我一樣直接拆掉一個(gè)VR盒子,取透鏡.
至于近似眼的問題,我不是近視,我那副眼鏡也是平光鏡,所以效果不清楚,但是我想畫面光通過你的眼鏡校正的,最終看到的是校正后的成像,所以理論上應(yīng)該沒有問題.

定位
什么都要小
因?yàn)槠聊坏拇笮≈苯記Q定眼鏡旁邊這個(gè)"家伙"的截面積.所以這個(gè)0.66的OLED肯定不行,好在發(fā)現(xiàn)DF商城有更小的屏幕,而且整個(gè)模塊都不大.首選!
http://www.dfrobot.com.cn/goods-1188.html
電源:電池也是我拆了我娃的玩具尋到的小鋰電池
主控一定要能聯(lián)手機(jī)(我輕描淡寫了,事實(shí)上這涉及到太多專業(yè)知識)所以我根據(jù)能力最開始羅列了三種方案:

Arduino promini+hc06

Esp32或Esp8266(能玩)

nRF52(只是聽說)

查資料,對比,發(fā)現(xiàn)nRF52系列的功耗有絕對優(yōu)勢.秉承"只選對的,不選會的"原則淘了兩塊,面對這兩塊陌生的超低功耗多協(xié)議SoC藍(lán)牙芯片(我認(rèn)為大概就是,除了有藍(lán)牙能力自己還能跑程序).只能默默啃資料了...
點(diǎn)亮屏幕
所需:開發(fā)工具: j-Link (用于對nrf52832的swclk swdio端口進(jìn)行燒寫程序,固定引腳號)
cp2104或CP2102(Tx,Rx串口下載,TX,RX,引腳號會因?yàn)閰f(xié)議棧的不同可能會變)如果有JLINK 這個(gè)基本可以不用
板子:nRF52832+Breakout板(方便你用杜邦線實(shí)驗(yàn))
0.5英寸SPI接口(默認(rèn))OLED模塊

接線方式: jlink可以給它倆供電

這里主要下載軟件就是nrfconnect安裝過程中也會安裝一些支持包驅(qū)動什么的默認(rèn)就好,打開軟件,你會發(fā)現(xiàn)它其實(shí)是一個(gè)宿主軟件,在里面可以直接下載所需要的小程序.
這里我們僅需要下載programmer程序 打開programmer,界面介紹:

從圖中我們可以看到一個(gè)完整的程序一般由引導(dǎo)程序+協(xié)議棧+應(yīng)用程序(由下到上)三部分組成,

在拖入S132_2.0.HEX后我們發(fā)現(xiàn)完成了下面兩層,還差一層應(yīng)用程序,

這就要靠IDE編譯了.打開ArduinoIDE選擇示例程序u8g2--- page_buffer---helloworld,

別慌編譯,要改改代碼,里面有很多//U8g2_屏幕種類,我們的屏幕//U8g2_LD7032有兩個(gè),第一個(gè)SPI第二個(gè)i2C,I2C要改電路,直接用默認(rèn)的SPI方式就好,也就是取消注釋第一個(gè)//LD7032,然后把引腳改成你實(shí)際的連線就行了.
需要說明的是OLED可以選擇連NRF52832硬件SPI(HW)或軟件SPI(SW),如果選軟的,在選擇引腳上就自由一些.這里選SW.
嫌麻煩直接Copy "U8G2_LD7032_60X32_1_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 17, /* data=*/ 18, /* cs=*/ 28, /* dc=*/ 30, /* reset=*/ 14);"引號中的內(nèi)容插入到里面就好.

接下來不是點(diǎn)下載,我們是需要這個(gè)程序編譯后的hex文件,所以先另存為到一個(gè)位置,然后在點(diǎn)Arduino的項(xiàng)目--導(dǎo)出已編譯的二進(jìn)制文件.這時(shí)候我們需要的應(yīng)用層就做好了,接下來回到nrfconnect界面添加剛剛保存程序路徑下剛編譯好的hex文件,這個(gè)軟件很好理解,左邊框框里是現(xiàn)有固件,右邊框框其實(shí)就像個(gè)沙盤,布置好了點(diǎn)右下角的erase&write過不了多久就燒寫好了,這時(shí)OLED就顯示出內(nèi)容了,這個(gè)部分,僅僅只是為了調(diào)試OLED,大家不妨多試一下U8G2的其他例程.

制作
LD7032 0.5inchOLED
Nrf52832(重新買了個(gè)更小的)
1A充電板
AMS1117(降壓3.3v輸出)
鋰電池包
開關(guān).按鈕各一
4PIN杜邦母座(引出SWD編程接口,方便以后改程序)
廢舊cd碟片一張,
菲涅爾透鏡(或VR盒子拆下的透鏡)
接線方式:
oled和Nrf52832接線上文有,僅加了一個(gè)按鈕(po.20)
電源方案:

總體如下:


外殼部分:



功能的實(shí)現(xiàn)
目前還在研究,這里我用了一個(gè)開源項(xiàng)目micooke/arduino-nRF5-smartwatches目前暫時(shí)只能夠?qū)崿F(xiàn)傳感器的數(shù)據(jù)讀取,和時(shí)間顯示.
步驟:1,ArduinoIDE添加第三方硬件[backcolor=rgba(27, 31, 35, 0.05)]https://micooke.github.io/package_nRF5_smartwatche...
2,開發(fā)板管理器打開,刷新后,搜索nrf5 smartwatchs下載安裝
3,安裝好后,在IDE上這樣設(shè)置
[backcolor=rgba(27, 31, 35, 0.05)]
4選擇示例程序并在第二欄LD107_OLED.h下注釋原來的引腳設(shè)置添加U8G2_LD7032_60X32_1_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 17, /* data=*/ 18, /* cs=*/ 28, /* dc=*/ 30, /* reset=*/ 14);

另存為項(xiàng)目,然后導(dǎo)出編譯后的hex文件.
接下來就和前面調(diào)試屏幕時(shí)的步驟,打開NRFconnect選擇softdevice+剛剛編譯好的hex,燒寫.




后記
這個(gè)項(xiàng)目沒完,因?yàn)檐浖矫孢h(yuǎn)遠(yuǎn)沒有達(dá)到我的預(yù)期:
1能夠有APP的支持,能夠推送手機(jī)上的消息,
2能夠和手機(jī)上的導(dǎo)航對接顯示簡要的導(dǎo)航信息.
我不是工程師,很多東西缺乏技術(shù)與經(jīng)驗(yàn),采用這款我完全陌生的nrf52832作為主控,主要是保證續(xù)航能力,并且它支持藍(lán)牙5.0,我預(yù)留了SWD接口也是為了未來能夠有一些突破.
同時(shí)也希望有興趣的朋友能夠幫助我一起完善它.

  • 132854fwt8sk833zsz0hc3.jpg
    描述:圖片

相關(guān)推薦

電子產(chǎn)業(yè)圖譜