近代的無反相機都具備了藍芽、WIFI等無線模組,讓使用者以手機操控各式功能,但若是早期機型,就得退回到"原始"的信號線控制方式,而且既然是線控,就有機會搭配開發板,以程式控制相機,下面是最近以Arduino操控GF1對焦與拍攝的操作筆記。
控制GF1的信號線為直徑2.5mm的TRRS線,印象中此種線材都是用在耳機,而且目前市面上,大多是3.5mm或是6.3mm,很難買到2.5mm。就算好不容易買到,又會發現買錯了。原來2.5mm線還區分成TRRS和TRS兩種產品,TRRS會有三個圈,TRS是兩個,多出來的圈,據說是用於"平衡",但就更難買到,價格也要800至1000等級。最後是購買相機快門線之類產品,僅僅100元就解決線材問題(連結)。
TRRS內部有四條線,僅需要使用前兩條,也就是TR,改造時,就在兩條線間,依照下面方式插入三個電阻和三條導線。
紅線
2k歐姆
←-- line A
32.7k歐姆 (33k替代)
←- line B
3.2k歐姆 (3.3k替代)
←--line C
白線
測試方式為,
一、將2.5mm信號線插入相機後,打開相機電源。
二、若完全不接觸,相機應該是待機狀態(此時電阻則是37.9k)。
三、將line A和line B接觸(此時總電阻約5.2k),發現相機開始執行自動對焦。
四、將line A和line C接觸(此時總電阻約2k),就會發現相機開始自動拍攝。或許還有更多複雜功能,但目前為止已經可滿足全需求。參考資料(連結)。
自動化的概念是以兩個繼電器,分別控制A B(對焦)和A C(拍攝)的連結和斷開。對ARDUINO使用者來說,繼電器多半是為了解決控制板電流小,無法控制大功率物件,較少類似這種單純控制線路連通。
這次使用的繼電器,不是以往的機械式,改採體機小,操縱容易的光耦合式。光耦合的價格便宜,也沒有使用次數限制,同時也能承受非常大電壓( 30V以上 ),實用性非常高,例如手邊LETEX 219-1 LT219-1,SPEC(連結)。購自露天(連結)。甚至還可以利用牠開關快速的特性模擬PWM。
如圖,圓圈端連結到ARDUINO的5V電源,另一邊搭配2.2k電阻,接入PINMODE,當程式中設定HIGH(5V)時,另一端是接通狀態,設定LOW時,另一端改為斷電,程式如下。
const int focus = 7;
const int shoot = 8;
void setup() {
pinMode(focus, OUTPUT);
pinMode(shoot, OUTPUT);
digitalWrite(focus, LOW);
digitalWrite(shoot, LOW);
}
void loop() {
digitalWrite(focus, LOW);
delay(2000);
digitalWrite(focus, HIGH);
delay(2000);
digitalWrite(shoot, LOW);
delay(2000);
digitalWrite(shoot, HIGH);
delay(10000);
}
//end
沒有留言:
張貼留言