產品分類

      當前位置: 首頁 > 工業電氣產品 > 工業安全產品 > 安全觸邊

      類型分類:
      科普知識
      數據分類:
      安全觸邊

      全民創客時代,自己DIY一個智能手表

      發布日期:2022-04-17 點擊率:804 品牌:組態王_Kingview

      【導讀】說到可穿戴設備,我們一般首先想到的就是智能手表。買一個時尚的智能手表當然不錯,但作為一個創客,你也可以選擇和我一樣自己做一個!我給這個DIY的智能手表起名為Retro Watch,整個項目基于Android和Arduino開發板,項目的所有軟硬件設計都是開源的。你可以在Github下載源碼或貢獻自己的力量

       

      第一步:系統結構設計

       

      全民創客時代,自己DIY一個智能手表

       

      如上圖所示,Retro Watch的結構比較簡單:硬件平臺基于Arduino,上面只有一個控制按鈕。另外,我還開發了基于安卓系統的應用,讓手表可以通過藍牙和安卓設備進行連接,這樣我們就可以通過Retro Watch查看安卓設備上的RSS推送和系統通知了。

       

      第二步:組件準備

       

      因為我們要做的是一個智能手表,確保各個組件的小巧也是關鍵之一。

       

      全民創客時代,自己DIY一個智能手表

       

      Arduino微控制器

       

      我選擇的是最小巧的Arduino,Pro Mini,這是一個Uno R3的輕量級版本。上面甚至沒有USB接口芯片,所以還需要額外準備一個USB轉UART模塊。這款Arduino有兩個工作電壓不同的版本(3.3v/5v),我選擇的是3.3V的版本,因為藍牙模塊和顯示屏都支持3.3V,3.7V的LiPo電池也能正常使用。

       

      3.3V版本的Arduino的工作頻率為8MHz,5V版本的工作頻率為16MHz,但8MHz足夠使用了。

       

      一般Arduino Pro Mini的核心處理器件是ATmega328單片機,其RAM為2KB;而只配置有1KB RAM的ATmega128的Arduino版本是不夠用的。

       

      藍牙

       

      HC~06藍牙模塊比較常見。其中有一款帶有一個接口板,上面包含一個重置按鈕和一個LED,但體積也相對較大。鑒于接口板對本項目沒多大意義,還額外增加了成本,所以這里選擇的不帶接口板的HC~06。

       

      顯示屏

       

      我們需要一塊足夠小、功耗足夠低的顯示屏。我最后選擇了Adafruit的0.96英寸的128×64 OLED顯示屏,支持I2C,SPI,可以很方便地和Arduino進行連接。我這里選用的是I2C和SSD1306驅動芯片。

       

      電池

       

      我的選擇是3.7V LiPo電池,容量為140mAh。一般使用可堅持7小時。同樣,選擇電池的尺寸很重要。

       

      其它

       

      除了線材等組件之外,還需要用到一顆10 kΩ電阻(用于按鈕連接)。

       

      第三步:組裝

       

      整個系統的硬件結構連接圖如下所示:

       

      全民創客時代,自己DIY一個智能手表

       

      藍牙連接Arduino:

       

      ·VCC ~ 3.3V

       

      ·GND ~ GND

       

      ·TX ~ D2

       

      ·RX ~ D3

       

      OLED連接Arduino:

       

      ·GND ~ GND

       

      ·VCC ~ VCC

       

      ·SDA ~ A4(模擬引腳4)

       

      ·SCL ~ A5(模擬引腳5)

       

      如果使用的是SPI接口,則可以參考Adafruit教程按如下方式連接:

       

      ·D1 : MOSI ~ Arduino D11 (MOSI)

       

      ·D2 : MISO ~ Arduino D12 (MISO)(可選)

       

      ·D0 : CLK ~ Arduino D13 (SCK)

       

      ·DC : DC(數據命令)~ Arduino D8(或其它)

       

      ·CS : CS(芯片選擇) ~ Arduino D10 (SS)

       

      ·RES : RESET ~ Arduino D9 (或其它)

       

      按鈕:

       

      連接方式如圖,注意這里要用到一個10 kΩ電阻。

       

      全民創客時代,自己DIY一個智能手表

       

      電池連接Arduino:

       

      ·正極 ~ RAW

       

      ·負極 ~GND

       

      USB轉UART模塊連接Arduino:

       

      ·3.3V ~ VCC

       

      ·TXD ~ RXD

       

      ·RXD ~ TXD

       

      ·GND ~ GND

       

      安裝尺寸如下:

       

      全民創客時代,自己DIY一個智能手表

       

      [page]

      第四步:編譯Arduino代碼并上傳

       

      已經做好的Arduino項目可以在GitHub上下載。下載好了之后別急著編譯,還需要先配置一下開發環境。

       

      安裝圖形驅動:

       

      首先需要安裝圖形處理庫 Adafruit_SSD1306和Adafruit-GFX-Library,這樣才能在OLED上顯示圖像。(在某些開發環境下,Adafruit庫會與Robot_xxx庫產生沖突;如果發生了這種情況,備份Robot_xxx庫后將其從庫文件夾中刪除。)

       

      警告:如果你使用的是帶SH1106驅動的OLED,那就在GitHub上下載Adafruit_SH1106驅動。

       

      另外,本項目也支持u8glib了,你可以在其官方主頁下載支持Arduino的版本。

       

      復制位圖圖像頭文件:

       

      將RetroWatchArduino文件夾中的bitmap.h文件復制到路徑/Arduino安裝文件夾/Arduino/hardware/libraries/RetroWatch。如果沒有這樣的路徑,可以自己創建。

       

      修改源代碼:

       

      打開Arduino IDE并載入RetroWtchArduino.ino。如果你使用的引腳和本教程不一樣,需要對引腳定義進行修改:

       

      SoftwareSerial BTSerial(9, 8); //藍牙TX, RX連接引腳

       

      int buttonPin = 5; // 按鈕引腳

       

      display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // OLED I2C地址,使用你的地址替換Ox3D

       

      如果你使用的是u8glib,那么就載入RetroWatchArduino_u8glib.ino文件,然后注意以下代碼:

       

      U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE|U8G_I2C_OPT_DEV_0); //根據你選用的顯示屏進行修改

       

      SoftwareSerialBTSerial(2,3); // 藍牙TX, RX連接引腳

       

      int buttonPin = 5; // 按鈕引腳

       

      如果你使用的是Adafruit的圖形庫,并有使用到OLED的Reset引腳,那就將OLED的Reset和Arduino的D8引腳相連,當然也可以自定義:

       

      #define OLED_RESET 8

       

      Adafruit_SSD1306 display(OLED_RESET);

       

      編譯和上傳:

       

      以上步驟完成之后編譯上傳,成功之后顯示屏上面會顯示RetroWatch Arduino Logo和Adafruit Logo。Logo之后屏幕會顯示00:00,如下圖所示:

       

      全民創客時代,自己DIY一個智能手表

       

      第五步:安卓軟件及其源代碼

       

      因為Android 4.3之后的版本才支持從應用讀取通知信息,所以請確保你的安卓設備安裝的是Android 4.3或更新的系統版本。但如果你使用的是低于4.3的版本,可以使用另一個閹割版的應用:能夠通過智能手表接收通知,但無法讀取內容。應用源代碼可以在GitHub上查看,也可以直接通過Google Play Store進行安裝(RetroWatch或適合低版本系統的RetroWatch LE)。

       

      安卓軟件安裝之后檢查一下系統是否授予了其讀取通知的權限。

       

      接下來打開手機藍牙,將安卓手機和Arduino的藍牙進行配對。然后在RetroWatch軟件中選擇連接好的Arduino,界面上顯示“Connected”即表示連接成功。

       

      點擊菜單,選擇Data transfer to Watch(傳輸數據到手表),然后設備會用過藍牙將時間和信息傳輸到智能手表。

       

      因為手表硬件的性能有限,很多功能我們需要通過安卓應用實現,手表本身的主要功能是顯示。在安卓應用中,你可以設置可推送消息(僅支持英文字符顯示)和狀態通知(手機電池電量和信號強度等)的類型,也可以推送應用中訂閱的RSS(可以訂閱天氣RSS,用來在手表上顯示天氣)。更新每30分鐘同步一次。

       

      全民創客時代,自己DIY一個智能手表

       

      另外,應用中還提供了65個不同的顯示圖標,你可以自己定義設置。

       

      第六步:手表功能介紹

       

      安裝就緒之后就該探索一下我們的智能手表了。智能手表的系統按照以下模式工作:

       

      全民創客時代,自己DIY一個智能手表

       

      啟動顯示: 顯示Logo,手表啟動。

       

      時鐘顯示: 顯示與之相連的安卓手機上的時間。另外,時間的顯示還可以修改,目前提供了模擬顯示、數字顯示和混合顯示三種模式。如果你點擊一下按鈕,則手表進入緊急信息顯示模式。如果10分鐘內沒有什么數據更新和操作,則顯示界面會切換到待機界面。

       

      全民創客時代,自己DIY一個智能手表

       

      緊急信息顯示: 當用戶點擊按鈕或有新的緊急信息輸入時,手表進入這一模式。用戶可以再次點擊按鈕查看下一條信息,10秒不操作,手表也會自動顯示下一條信息。信息顯示完成之后,手表切換到普通信息顯示。因為RAM只有2KB,非常小。所以該智能手表最多存儲3條緊急信息,多于3條時則自動刪除最舊的信息。

       

      普通信息顯示: 緊急信息展示完成之后手表會繼續展示普通信息,點擊按鈕或5秒不操作就顯示下一條信息。信息顯示完成之后,手表切換回時鐘顯示。普通信息最多存儲7條。

       

      待機顯示: 如果10分鐘內沒有什么數據更新和操作,顯示界面會切換到待機界面。在這一模式下,手表界面僅顯示指示符(可在安卓應用中選擇)和hh:mm模式的時間,其功耗也降低了。在待機模式下點擊按鈕或收到新信息,手表進入時鐘顯示模式。

       

      第七步:外部結構制作

       

      你可以自己手工制作一個簡單的包裝:

       

      全民創客時代,自己DIY一個智能手表

       

      也可以下載3D文件制作一個造型炫酷的手表:

       

      全民創客時代,自己DIY一個智能手表

       

      當然,你完全可以選擇不戴手表,做個桌面提醒器也不錯:

       

      全民創客時代,自己DIY一個智能手表






       

      下一篇: PLC、DCS、FCS三大控

      上一篇: 貌不驚人的物聯網網關

      推薦產品

      更多
      主站蜘蛛池模板: 精品国产一区二区三区在线观看 | 精品一区二区三区在线播放| 乱中年女人伦av一区二区| 久久无码精品一区二区三区| 国产精品熟女视频一区二区| 精品欧洲av无码一区二区14| 精品久久久久中文字幕一区 | 精品一区二区三区免费| 欧洲精品免费一区二区三区| 精品国产aⅴ无码一区二区| 中文字幕一区二区三区永久| 亚洲日本一区二区一本一道| 日韩一区二区三区在线精品 | 国产成人无码一区二区三区| 国产精品视频免费一区二区三区 | 成人精品一区二区三区中文字幕| 日本一区二区三区在线网 | 日韩经典精品无码一区| 日本国产一区二区三区在线观看 | 成人无码精品一区二区三区| 日本免费一区二区三区| 国产一区二区三区在线2021| 激情内射亚州一区二区三区爱妻| 一区二区精品视频| 一区在线免费观看| 亚洲av高清在线观看一区二区| 国产成人无码精品一区不卡| 国产aⅴ一区二区| 精品无码一区二区三区爱欲| 亚洲男女一区二区三区| 亚洲av成人一区二区三区在线播放 | 偷拍精品视频一区二区三区| 国产成人精品亚洲一区 | 乱码人妻一区二区三区| 精品国产免费一区二区| 日韩一区二区在线观看| 日韩免费观看一区| 久久99精品波多结衣一区| 亚洲福利一区二区精品秒拍| 极品少妇一区二区三区四区| 精品国产亚洲一区二区三区在线观看 |