2020年11月26日 星期四

自製 SONY NEX / Alpha 系列相機遙控器


這是別的計畫會用到的, 製作一個遙控器觸發 SONY NEX / Alpha 系列無反相機
這東西就是自拍或是不觸碰相機觸發用, 除此之外沒有其他用途, 它只能在拍照模式下使用
如果相機在檢視畫面模式就無法觸發, 甚至某些機型一開機會停在 NTSC 訊息時也無法觸發
休眠喚醒拍照什麼的就別想了, 無此功能, 就是個無線快門鈕而已

先放電路圖:

電路圖沒有含上上張照片裡的帶燈開關, 那個自己串個電阻隨便接在電源端即可, 我就不畫了
Mini51 MCU 工作電壓可從 2.5 到 5.5V, 其實不需要做 3.3V 穩壓
只是做別的東西時剛好改了個 USB 電源轉 3.3V, 懶得拆就直接用了
(即是上上張照片裡 USB 接頭附近那坨東西)
另外, 這紅外線 LED 用 2N7002 這顆 FET 控制, 這是原先 WT-16-B 這板子其他用途設計
應該可以用 2N4401 替代, 或是用 MCU 內的 open drain, 都可以試看看

韌體:sony-alpha-remote.zip
使用新唐 Mini51 系列 MCU, 操作方法參考前篇 在 ubuntu 上開發 nuvoton m051 實驗板

訊號資料來自:Sony NEX/Alpha Remote Control

簡單紀錄一下訊號格式

如上圖由上而下, 40KHz 訊號, 連續發 40KHz 訊號 600uS 後等 600uS 即是代表 bit 0
發 1200uS 後等 600uS 代表 bit 1, 發 2400uS 後等 600uS 代表 Preamble
Preamble 訊號在有線無線通訊裡都會用, 用來同步, 同時調整接收器訊號放大率 (AGC)
一個命令由 Preamble 後接 7-bit 命令和 13-bit 位址組成, 載波頻率和資料格式都和一般 CIR 不同
索索以前是走蘋果路線的, 就是搞不相容, 很討厭, 玩到快垮台時才開始遵循標準
以前索索的相機要插他們自己的 MS 卡, 雖然別家廠商可以製作這卡, 但吃這卡的設備幾乎只有他們家自己
我不能共用別家的記憶卡, 若索索的產品壞了, MS 卡只能扔拉機桶, 很浪費, 就像蘋果傳輸線一樣
現在索索就好很多了, 吃 SD 卡, 接 USB 標準接頭, PS4 週邊還可以接 PC, 這在以前都是不可能的

指令部份有三種, 注意程式裡 cmd = 0x5a 那行附近
我只需一個按鈕, 程式裡只有做一個按鈕, 有需要可以自己改
指令部份:

0x5A:觸發快門, 若此時相機設定為延遲兩秒就仍然會延遲兩秒
0x76:延遲兩秒觸發
0x09:開始錄影或停止錄影

位址部份都是 0x0B8F, 這些指令在 A6000 上驗過都能用, 老外在 NEX-5 上驗的, 應該全系列都能用
這數字和引用的文章不同, 但信號是一樣的, 老外文章算 bit 從後面算
我個人習慣從前面算, 畫圖時時間軸由左而右不是從前面算才正常嗎?
不知道為什麼那文章要從後面算, 可能老外比較喜歡從後面來(?)XD

紅外線 LED 用波長 940nm 的效果最好

上圖左是 940nm LED, 右邊則是 850nm LED, 兩種都是紅外線 LED
940nm 通常是遙控器在用, 850nm 則是監視器夜間打光用
目前測出來 940nm 發給 A6000 的有效接收距離可以比 850nm 的遠 1-2 公尺
測試結果:850nm 約 3 公尺, 940nm 約 4-5 公尺
同樣 940nm 不同廠商的 LED 也會有差, 但大多比 850nm 的遠

完成後突然想到, 可見光可以用麼? 於是...

這張是用紅光 LED 觸發的, 不過有效距離只剩 10 公分而已XD
表示紅光 LED 也是有發射紅外線, 只是比例少很多, 接著換別種顏色
波長遞減, 黃光 LED 有效距離則剩 4-5 公分, 綠光 LED 為 1-2 公分
藍光 LED 則是 0 距離也無法觸發, 波長太短, 可能完全沒有紅外線成份


這玩具原先是用現成的

這個露天上賣最便宜的 50 元就有, 我幾年前和別的配件一起購入, 順便買的
所以買來也沒用就直接庫存, 直到最近有需要, 結果是還可以用, 但連續觸發數十下
應該沒有超過 100 下, 然後它就掛了, 突然時有時無, 然後就再也無法觸發
我想這東西不是萬年不壞的麼, 應該只是接觸不良吧? 於是拆開接線

結果怎麼改都不會動, 這上面就只有三個零件, MCU, 電容, LED
如果照老廝三板斧肯定先幹 MCU, 可是這 MCU 是要燒韌體的, 光有料沒有用, 只能從料板搬
剩下電容和 LED, 這要壞的機率低到不行啊, 而且量一下電壓是有的, 沒有 5A 大短路XD
背面長這樣:

有預畫一堆按鈕, 這還是一版多用的, 換貼紙和韌體就能當別的產品出XD
拿另外一個遙控器出來比一下...

果然...XD

我自己的遙控器做出來, 了解其原理後想說這玩具能不能把它修起來
後來又做了一些實驗, 發現它也是 LED 一端接 VCC, 另一端拉低讓 LED 發光來控制
我每次上電常常有時 LED 兩端都高 (這樣是正常), 可是有時卻是一高一低 (恆亮, 異常)
我能懷疑的就剩電容了, 可能有問題導致 MCU 開機異常? 硬把它換了

經過這番操作後就每次送電都是兩端都高, 看來是電容掛了, 但不是短路那種掛, 而是失效
裸版測都正常, 就把它組起來, 想說輕鬆秒殺XD
結果組起來還是無法每次都觸發, 一下電源接觸不良, 一下按鈕接觸不良, 這板子似乎被我折騰壞了
所以我也不知道有沒有修好, 只能從信號看起來有改善, 有需要維修的用戶可以試試
但如果換了還是不行...那我也不知道該怎麼辦囉
還是自己用可靠的料搞一個吧, 這沒有很難 (假設有相關基礎知識XD)
若算我的計畫執行時間這大概是數一數二短的, 從看到老外文章到完成只花了一天XD

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。