kwluk717 發表於 15-1-2018 18:19:42

渣古頭玩具加鏡頭發光發聲遙控及面部辨識Pan/Tilt自動追蹤

本帖最後由 kwluk717 於 15-1-2018 06:19 PM 編輯

渣古頭玩具加鏡頭發光發聲遙控及面部辨識Pan/Tilt自動追蹤

另名:
蘇格蘭場非工業用國際線路自動追蹤十六嘩佬發光發聲遙控左右垂直風油呔連面部辨識渣古頭玩具


仍然是Zaku exceed head 扭蛋玩具改造。原本設計路線是經歷不同階段性改動才到這個版本的,卻因太心急以至2.0只做了少許就著直接做7.0了。定名7.0是沒有原因的,只是跟了ultraman 漫畫發展而已 https://goo.gl/nTGNfv XD 。
此文貼於模型玩具版似乎有點離題,唯盡量多提模型改造方面,電改及軟件層面簡略提及便算,有需要才分享罷。

Link of my Zaku Head 1.0
https://www.facebook.com/media/set/?set=a.10155235367617917.1073741849.599312916&type=1&l=3129e88976

3大功能改造:
1.植入鏡頭,並面部追蹤功能
2.水平垂直活動
3.起動關閉燈光及聲效

Video Link
Startup/Shutdown LED/Sound Effect
_42kDtxn76g
Remote Control
Dsfs2h01EeI
Face Detection
hvfLrvNp9m4

https://goo.gl/jv7fvk
https://goo.gl/F9kAzf
https://goo.gl/S7NLTz
https://goo.gl/GkHdZt
https://goo.gl/imMY6F
https://goo.gl/qnGfvk

基本運作流程
- 由鏡頭經USB讀入畫面資訊至電腦,由openCV + Visual C++ 寫成的軟件辨識人面並輸出畫面坐標至Arduino's COM Port
- Arduino 讀入COM Port 資訊,調整 X, Y Servo 以使坐標恆常置中。

模型制作部份
眼部
- 見一般 Zaku II 頭部機械設計眼部都只有左右移動,但為了堅持可玩性,仍然強行設定為左右加少幅度上下移動。。。幸而網上發現竟有例外https://goo.gl/qHVtsZ,使得堅持合理化了。事實上,機械人何需要眼球可動? XD
- 眼部底盤用鋸鋸開,頂部亦然。
- 眼球約五元硬幣大小為~3mm直徑,PG 高達舊零件剛好大小相若。用了smoke color為主色。
- 眼球用回原有零件,內中開洞~7mm直徑以放入鏡頭(~6.5mm)。遮光罩?切自引擎改造套件,用了Liquid Chrome増強反光效果。為了有圓形可動空間,原有透明眼罩亦棄用了。
- 角膜?用透明套件打磨多重內圈扮成 Fresnel Lense 形狀,噴上透明紅+少量透明黃。用甲gel 固定在鏡頭外。

頭頂
- 頭蓋開合部份加了微動開關,用以啟動系統關閉狀態燈光及聲效。這個設定事實源於每次打開車頭蓋時的主觀願望而已XD。
- 始終覺得頭頂的主控口(?)應該要可開合,設計成以顏色及標誌分辦機械型號。既已在內開了大洞藏眼球,所以便再挖深點以切出頂蓋。

其他
- 動力管作了簡單刻線,為增加立體感。
- 內部作了不同程度打磨,為了騰出活動空間及塞進所有零件。
- 底部用透明膠板制作,跟前作一樣,開孔為可更換SD Card。
- 簡單舊化便完成了。

電改部份
鏡頭
網上購入原為簡約窺鏡用途之原件,已配備外環LED及USB接口,非常方便。

Servo
雙Servo分別控制水平及垂直方向,設計上可有L形或T形排法實現,不過礙於空間有限及考慮到視⻆問題,最後採用T形了。

DFPlayer
首次使用,功能完備的MP3 Player,獨立運作一流。可是 datasheet 說明不足,例如command 只提到0x01-0x11而其實還有0x12-0x16,0x12就是那常用的播放\mp3\ 內檔案功能,或許這是強國生產才有的隱藏指令罷XD。

IR receiver
用粒ir receiver 直駁和最簡單的library 便成了,除了資源用得較多之外,沒大難度。而控制方面就用家中棄用遙控,只需將內碼改為相應的ir code 便成。沒有的話用手機加ir blaster 亦可。

全體整合
是遇到最多困難的部份
    硬件
      1. USB 資源及電力 : 因為鏡頭及Arduino 均需要數據傳輸,兩個 USB 埠是需要的,而DFPlayer 亦需要外部穩定電源。堅持用單一 USB 還是USB Hub + 外置電源還是放棄用多個USB之間惆悵了好一段日子,最後一博試用標榜高速直推兩只1T 硬盤的USB Hub,這種非標準元件卻給問題解決了。

    主控軟件
      1. 主控程式改自instructables資源 http://www.instructables.com/id/Face-detection-and-tracking-with-Arduino-and-OpenC/,然而那是數年前的程式碼,於今天新版的openCV 及 Visual Studio Community 需要一定程度的改動才能執行。
      2. 幾經除錯及測試才發現源碼COM Library 只支援COM1-9而是非至256,而我又不懂用新版 Library ,因此Arduino 在連接的作業系統上(我用Windows 10)需要人手作相應改動來遷就。
    Arduino 程式
      1. 棄用servo.h 及 softwareserial.h,因它倆資源互斥加上softwareserial.h需用系統資源較大。(故此連帶DFPlayer_Mini_Mp3.h 都不用了)事實上加了irremote.h 亦衍生不少資源問題。
      2. 主控鏡頭當偵測到面部會不斷傳送 X,Y 資訊往COM Port,然而 Arduino 實際上不應全數回應,因會做成反應不同步及誤認X為Y或Y為X等現象,因此雙方需要有自動同步機制及有自動忽略過量數據功能。

Built #1
https://goo.gl/yadNPj
Built #2
https://goo.gl/NVaK9q
Built #3
https://goo.gl/DqbCyY
Built #4
https://goo.gl/EyRh1v
Built #5
https://goo.gl/RntW3K
Built #6
https://goo.gl/NiJhcd
Built #7
https://goo.gl/rFjctw
Built #8
https://goo.gl/gV8DQ1
VC++ Code
https://goo.gl/MPfJiQ
Arduino Code
https://goo.gl/VhVvU4
Desktop Icon
https://goo.gl/axBH3y
Overall Summary
https://goo.gl/zXYWDY

1.0 vs 7.0
https://goo.gl/UpK4fA
Zaku Camera 2
https://goo.gl/S3o6GJ


謝謝觀賞


JyhncA 發表於 15-1-2018 18:48:46

真是太厲害了! 感謝您的分享!

不曉得您有沒有打算將這個點子商業化? 這個構想比傳統式的監控器友善多了, 也比較能融入店面的擺設..



Lau 發表於 15-1-2018 18:59:04

好犀利呀!!

會量產嗎??

素組王 發表於 15-1-2018 19:58:33

雖然我唔明啲電子原理,但我係真心講句 - 勁到爆!

kwluk717 發表於 15-1-2018 23:25:28

Lau 發表於 15-1-2018 06:59 PM
好犀利呀!!

會量產嗎??

不會啦,制作時間成本太高{:3_146:}。
謝謝欣賞。

kuris_021 發表於 15-1-2018 23:57:09

兩個字犀利

go-go 發表於 16-1-2018 05:15:05

有趣, 效果不錯

kwluk717 發表於 19-1-2018 11:28:27

JyhncA 發表於 15-1-2018 06:48 PM
真是太厲害了! 感謝您的分享!

不曉得您有沒有打算將這個點子商業化? 這個構想比傳統式的監控器友善多了,...

這個解象度遠不及市面的高,當小玩意仍可,實際用途仍欠太多。

ROGERHUIHK 發表於 19-1-2018 12:45:28

很精彩和詳細的分享啊

多謝大大的無私

ccwnel 發表於 20-1-2018 10:12:12

勁!正!!謝謝您的分享。

disc1115 發表於 19-8-2020 00:03:45

:handshake:
正!!謝謝您的分享。
頁: [1]
查看完整版本: 渣古頭玩具加鏡頭發光發聲遙控及面部辨識Pan/Tilt自動追蹤