HOMEへ戻る

キャノンのカメラにCHDKを導入する方法

CHDK導入までを紹介します

最近キャノンのデジカメ IXY DIGITAL 930IS を手に入れました
このカメラでインターバル撮影するには CHDKというファームウェアを
カメラに呼び込ませれば出来るそうです 実験してみました。
CHDKはロシアンファームなどと呼ばれ海外で作られたファームウェアです
キャノン製の一部のカメラだけに対応しています あくまでもやるのは自己責任です。
この説明も間違っているかも知れませんが自分の記録として残しています。

使用するカメラに対応するCHDKをダウンロードするのですが
カメラには製造された時期によりファームウェアのバージョンがそれぞれ違います
カメラのファームウェアのバージョンを確認するには ソフトを使います
説明しようと思ったのですが英語のサイトでうまく私には説明できません
詳しくは黒松内の雪の上さんの説明をよく読んでください。
ダウンロードしたファイルを解凍します その中にCameraVersion12.exeがありますのでそれを実行しますが
その実行前に 調べたいカメラで撮影したものなら どんな画像でもいいので1枚用意しておきます
CameraVersion12.exeを実行します 実行するとこのような窓がでます
01561.jpg
左下のBrowseボタンをクリックして 用意したカメラで撮影した写真画像を参照させます
すると下のような画面になり カメラの種類とバージョンが分かります
01562.jpg
カメラのバージョンは101Dという事が分かりました。

カメラバージョン最新版は→CameraVersion13.exe
からダウンロードできます

カメラの種類は日本名では IXY Digital 930IS ですが CHDKは英語で書かれており
海外で開発されたので日本語名ではありません 海外では違う品番で販売されています
北米での名前が左 真ん中にヨーロッパとアジアでの名前 そして右に日本名となっています
バージョンとカメラ名が分かればExitでこのソフトを終了させます
こんどはいよいよ対応するCHDKをダウンロードします
CHDKをダウンロード出来るサイトはここです

下はこのページを出して画像にしたものですが 対応するカメラの欄をみます
01564.jpg

こちらの名前で探しても目的のダウンロードするファイルは同じです
01565.jpg

目的のZIPファイルをこのサイトからダウンロードしてパソコンに保存します 解凍しなくてこのまま圧縮された状態でOKです

次にCard Tricksというソフトをダウンロードします
このCard Tricksを使う事でSDカードに先ほどダウンロードしたCHDKのファイルをコピーし
このSDカードからブート(起動)し カメラの機能が増えるのです
まずCard Tricksはこちらをクリックしてページを開きます
01566.jpg
ここからクリックしてダウンロードできるページに入りCard Tricksをダウンロードします
ダウンロード出来たら解凍しておきます
解凍して出来たファイルの中にCardTricks144.exeがありますので ダブルクリックし起動します
このような窓が出来ます
01567.jpg

2GBまでのSDカードを用意してパソコンに挿入し認識させドライブを確認しておきます
1.  SDカードのアイコンをクリックして今挿入したSDカードを指定します
2.  Format as FAT をクリックします このフォーマットはかなり時間がかかりますゆっくり待ちます
3.  Make Bootable のボタンを押し SDカードからの起動を可能にさせておきます これはすぐ終わります
4.  CHDK->Cardのボタンをクリックし先ほどダウンロードしたCHDKのzipファイルを参照させます
5.  するとzipファイルが解凍されてSDカードにコピーされます

コピーが終了したら Exitで終了します。
今コピーされたSDカードをカメラに入れて使えば普通に使えます
ただしフォーマットをしないでください フォーマットすると今までの苦労が水の泡です
カードをパソコンで見ると カードにCHDKフォルダが出来ています
01568.jpg
機能を増やす便利なスクリプトというのがいろいろ開発されているようですが
ここではインターバル撮影できるスクリプトを入手してみます
Ultra Intervalometerというスクリプトがこちらのページにあります
開くとこんなページです
01569.jpg
そこでスクリプトの部分だけをコピーしメモ帳に貼り付けます 図で赤い枠内の部分をコピー
01570.jpg
メモ帳の名前を付けて保存でult_intrvl.basとしてパソコンに保存します 拡張子をtxtではなくbasにします
そのult_intrvl.basを先ほどのSDカードのSCRIPTSフォルダにコピーします

面倒な方は以下に私の使っているult_intrvl.basをテキストで書いていますからこれを
SDカードのCHDK内のSCRIPTSフォルダにコピーしてもいいです

rem Author - Keoeeit
rem Written for S-Series
rem Should be okay on others
rem Use Endless mode with caution
rem See documentation for important info
rem first version
@title Ultra Intervalometer
@param a Delay 1st Shot (Mins)
@default a 0
@param b Delay 1st Shot (Secs)
@default b 40
@param c Number of Shots
@default c 300
@param d Interval (Minutes)
@default d 0
@param e Interval (Seconds)
@default e 2
@param f Interval (10th Seconds)
@default f 0
@param g Endless? No=0 Yes=1
@default g 1
p=a*60000+b*1000
t=d*60000+e*1000+f*100
if c<1 then let c=5
if t<100 then let t=100
if g<0 then let g=0
if g>1 then let g=1
if p<0 then let p=0
z=t*c
y=p+z
print "1 Cycle Time:", y/60000; "min", y%60000/1000; "sec"
goto "interval"
:interval
if p>0 then gosub "pause"
print "Shot 1 of", c
shoot
if c=1 then end
for n=2 to c
sleep t
print "Shot", n, "of", c
shoot
next n
if g=1 then goto "interval" else end
:pause
n=(a*60)+b
for m=1 to n
q=n-m
print "Intvl Begins:", q/60; "min", q%60; "sec"
sleep 930
next m
return


01571.jpg
これで空撮インターバル撮影できるSDカードの完成です
先ほどコピーしたult_intrvl.basはメモ帳で開きますので 必要に応じ数値など訂正して保存できます

ところで インターバル撮影するにはSDカードをロックして挿入します
01572.jpg
ロックしたSDカードを入れてカメラの電源ONすると SDカードからカメラのファームウェアが書きかえられ
カメラの機能が増える事になります
それではカメラの電源を入れてみます モニターに黄色いCHDKが出てファームウェアーが読み込まれます
01573.jpg
読み込みが終わるとこんななにも無い画面ですレンズはまだ引っ込んだままです
01574.jpg
カメラの右上の再生ボタンの▲を押すと 画面下にALTの文字がでます
01575.jpg
これでCHDKが使える事がはっきりしました
メニューボタンを押すとこんな画面に
01576.jpg

メニューボタンを押して出る一番上のExtra Photo Operationsから
01582.jpg
下のCustom Auto ISOに入ります
01583.jpg
ここで
Enable Custom Auto ISO   Custom Auto ISOのOn/Offを選択します
Minimal Shutter Speed     シャッタースピードの下限を設定します。
                   ここでの設定を維持するように、ISOが変化する事になります。
User Factor (1/FL/factor)  撮影者のホールディングの能力に合わせて設定します。
                   手ぶれが心配な人は増やし、自信のある人は減らします。
IS Factor (IS*Factor)     大きな数値を指定するほど、ISの効果が大きくなります。
Max ISO High (x10)      ISO Hiモードの時に利用される、ISOの上限を指定します。
                   ここで指定した値の10倍の値が適用されます。
Max ISO Auto (x10)      Auto ISOモードの時に利用される、ISOの上限を指定します。
                   ここで指定した値の10倍の値が適用されます。
Min ISO Auto (x10)      利用されるISOの下限を指定します。

01584.jpg


メニューではなくFUNCTIONを押して Load Script fromfileから
01577.jpg
必要なスクリプト ult_intrvl.basを選択しで読み込ませます
01578.jpg
この画面で設定を変える事ができます このスクリプトの便利な点は最初の撮影開始時間を
自由にすぐから30秒後とか1分後とかに変えられる事です
最初の1枚が凧が充分揚がった60秒後から撮影とかに変えられるから便利です
01579.jpg
カメラのシャッターを押すと カウント開始
01580.jpg
この場合20秒後に開始設定していたので 20秒後レンズが出てインターバル撮影を開始します
01581.jpg
また間隔を1秒に指定した時カメラの方でいろいろ作業に時間がかかるのか
約3.5秒に1回のインターバル撮影となりました
2にすると5秒間隔くらいかな 正確ではありませんが空撮には十分な機能です
CHDKでは他にいろいろな高機能をやれるそうですが英語の理解力が無い私には
これ以上他の設定は無理です 空撮が出来ればいいのでここまでは一生懸命取り組みました。

こういうマニュアルのような文書を作るのは大変疲れます あーあ疲れました
なぜ 面倒な事を書いているのかというと 自分がこの手続きをしばらくするとすっかり忘れてしまうからです
すぐ忘れる自分の為に書いているのですから もしこれを真似してやって出来なかったといっても
私は責任取れません あくまでもCHDKは自己責任でやってください
当然ページも変わるでしょうし ソフトのバージョンも次々変わっていると思います
でも興味があれば真似してやってみて下さい 面白いし便利なはずです
普通のロックしていないSDカードを使えば普通に今までどおりにカメラは使えますから
そんなに心配はいらないと思います CHDKの入ったSDカードをロックして
挿入した時だけ 起動時にSDカードのファームウェアを読み込むだけです。

記録した画像はカメラでフォーマットせず接続したパソコンから削除してください。