忙中閑話

四季の移ろい、花鳥風月を楽しみつつ
趣味はミニチュア木工、電子工作、旅行など

閑話・・・数字パズル、数独をVABマクロで解く(part3/3) プログラムの展開

2012-06-27 | 趣味
 VBAマクロはプログラムを組むのも面白いが、プログラムがうまく作動しているのかを途中を見るのもワクワクして楽しい。
 今回、計算の展開をコマ撮りして動画にしてみた。実際はもっと滑らかにできるのだがブログにアップできるファイル容量に限界があるようで、コマ抜きしてさらに4分割せざるを得なかった。


ステップ1
最初に問題のスペースのカラムのところに"123456789"を代入。
Ansewのカラムにも問題の数字を転写。
 


ステップ2
数字の判っているカラムの縦一列、横一列、該当するブロックすべの"123456789"からこの数字を抜く。数字を全て抜き終わって文字(数字)が1個になったらそのカラムの数字となる。さらにこの数字を縦、横、ブロックの文字を抜く。これの繰り返し。
難易度4クラスまでならこの操作で答えが出るが、この問題の場合は、残った文字が1個になるのは右端、上から3番目の”2"だけ。


この操作の最後の画面。残った文字が2個だけのカラムが、左1列目の1行目、同8行目、左から6列目の2行目の3箇所ある。


ステップ3
残った文字が2個だけのカラムの合計6個の数字を順に仮置きして計算を続ける。
まずは第1列1行目の”3”から始める。

これは正解なし。次の”9”、そして次のカラムの”1”も不正解。

そして次の”3”を仮置きして計算すると見事に正解が見つかった。



ただそれだけのことだが、プログラムを組んだことのある人はこの面白さがわかってもらえると思う。きっと。

閑話・・・数字パズル、数独をVABマクロで解く(part3/3)

2012-06-26 | 趣味
 数字パズルとは縦横9x9コマ、合計81コマに1~9の数字を縦一列、横一列、
3x3のブロック毎に重複しないで埋めてゆくパズル。朝日の土曜版に毎週載っ
ている数字パズルは数独と言っているが、今週分は最難関の難易度5。

これまでのプログラムは難易度4が限界で難易度5は解けなかった。
空のカラムにあらかじめ”123456789”の文字で埋めておき、判って
いる数字を使って縦、横、ブロックごとにその数字を消してゆく。各カラムの
消されずに残った数字が1個になれば、そのカラムの答えになる。その数字を
使ってさらに縦、横、ブロックごとにその数字を消してゆく。すべてのカラム
がわかるまでこれを繰り返す。

ところが難易度5の問題はこのプログラムだと途中で止まってギブアップ。

今週の問題では右から1列目、上から3行目のカラムが”2”となるだけ。



今まで、追加する条件でプログラム化がしやすい方法ががなかなか思いつか
なかったのだが、今回やや強引な方法をとることにした。
残りの数字が2個のところを選び、それぞれの数字を仮置きして答えが出るか
試してみるプログラムを加えてみた。
今週の問題では残りの数字が2個になるのは3箇所(赤丸の箇所)。
それぞれ2文字あるから最大6回試すことになる。



果たして、2個目のカラムの2番目の数字、つまり4回目の試考で答えが見つ
かった。答えはこれだ。 しかし・・・・




この無力感は何だ!  
筆記で解くとたぶん半日はかかるだろう。それがわずか10数秒。 

プログラムを組むのに試行錯誤を繰り返しそれ以上はかかった。
おまけに答えがわかったところで酬いなし。
プログラムを組む楽しさはあるが大いなる自己満足で終わる。







カーナビの地デジ化  取り付け編

2012-06-23 | 日記
 先日特売で購入した4x4フルセグの地デジチューナー。実際に車に取り付けて
映り具合をチェックしてみた。

取り付けは、アンテナ4本、電源、リモコン用の受光部、映像、音声の8本もの
ケーブルの引き回しが必要で、目立たないように配線するのが面倒だった。

一番の問題はチューナの設置場所。コンパクトとはいえ適当な空きスペースがない。
仕方がないので助手席側にある収納ボックスに設置することにした。余分なケーブ
ルもボックス内に収納。おかげで収納ボックス内はご覧のとおりケーブルだらけ
となった。

チューナー背部の入出力端子がボックスの底に当たらないようにやや長めの
ダンボール板に取り付けて保護している。

車内のケーブルのはできるだけ目立たないように配線した。



実際に市街および、山間部に出かけてみた。さすがフルセグ。
市街地だとアナログで見られた頻繁な画像の乱れは全くなく、電波が弱くなる
山間部でもワンセグに切り替わり画像の質もほどほどであった。
さすがにトンネル内や山際は受信が停止することがあった。
写真は山間部のとある駐車場で停車中に撮影。




これで1万円なら本当に安かった。
























庭の闖入者 ・・・ サワガニ

2012-06-23 | 日記
 車庫から自宅に入る時足元でなにやら動くものが・・・
甲羅の長さ2cmほどの小さなサワガニだ。梅雨のこの時期、植木鉢を動かしたり
したときひょっこり現れたりすることがある。なかには甲羅が5,6cm程もある
大物もいる。

清流に棲むといわれるサワガニ。しかしここは一応昔からの市街地で周りは住宅
ばかり、川らしきものは全くない。2,30mほど離れたところに幅、深さとも
20cm程度のミゾがあるだけだ。

このミゾは絶えずチョロチョロと澄んだ水が流れており、底地はサワガニが好む
といわれる砂礫だ。どうもここが繁殖地らしい。そして産卵等で清流を離れる。


池で金魚飼っているのでこの闖入者は困りものだが、サワガニに言わせると
自分たちは太古からの住人で、人間こそが闖入者だ というかも知れない。


しばしにらみ合い



しばらくすると繁みのなかに

カーナビの地デジ化に奮闘

2012-06-22 | 日記
 我が愛車のカーナビは6、7年前に必要にせまられて外付けでつけたもの。
初めての土地に転勤になり、休日のドライブや買い物で不自由したからだった。
方向音痴の自分にとって、地名や電話番号で検索すると目的地を探して道順
まで示して案内してくれるカーナビはまことにありがたい。
おかげで助手席の家人とのトラブルも全くなくなった。


 ただし、地図は8,9年のものだからそれ以後に開通した新しい道や橋は
当然地図にない。
そんな道を走ると、車は山中をさまよい、あるいは他人様の家を勝手に突っ
切ったり、川や海を上を飛んでいるようになる。そしてナビは何度もルート
変更の指示を繰り返す。


新しい地図を入れ替えればいいのだが、この最新地図がやたら高い。
今やカーナビの価格は購入当時より相当下がっており、地図代に少し足し
加えれば同クラスの最新式の小型のカーナビが手に入る。バックビュー
カメラやジャイロもつけ加えたし、これらも無駄になる。
旧版の地図でそれほど不自由ないのでやむなくそのまま使っている。
※最近、コンビニやスタンドの変転が激しい。どうして地図の更新が
  あれほど高いのか本当に理解に苦しむ。


そんなカーナビだが、昨年の地デジ化に伴ってテレビが映らなくなった。
テレビはめったに見ないが、やはり出先でニュースなどを見たいときがある。
ところが昨日、時間待ちでカー用品店にはいったところ、4x4フルセグ
の地デジチューナーの特売をやっていた。1、2ケ月ほど前に、新聞の折込み
広告で特売を見て、午後行ってみたら売り切れていたシロモノ。
早速購入した。


・・・・ところが、、、、
テレビへの出力ケーブルがRCA端子。我がカーナビの入力はミニジャック。
RCAxミニジャックの異端ケーブルの手持ちはあるが、長さが短か過ぎる。
おまけにミニジャックがストレート型なので設置したときケーブルが横に
張り出して邪魔になる。


そこで得意の100円ショップ品の改造。L型ミニジャックの延長コードと
RCA端子のケーブルを購入して繋ぎ替えることにした。
わずか315円で3m長のビデオ、音声ケーブルができる。

これらは導線が細くハンダ付けには難儀するが熱収縮チューブで絶縁する
などしてようやく完成。テスターでショートしていないかを確認。いいようだ。

実際に繋いで見てみると、アナログ変換による劣化はみられるもののやはり
ワンセグよりは相当鮮明に映る。

・・・あとは実車で確認。ただ接続ケーブルが多いので配線には苦労しそうだ。
なにしろアンテナ4本、リモコン受光センサー、ビデオ、音声のほか電源
と8本も必要なのだ。





ストレート型ミニジャックで接続
ケーブルが横に張り出して邪魔



L型ミニジャック
ケーブルが殆ど横に張り出さずスッキリ



映った
テレビに電源を入れたら無事映った。

クロユリ

2012-06-20 | 日記
 昨年GWに道の駅「白馬」で買ってきたクロユリ、今年もみごとに
芽を出しGW前後に花をつけてくれた。
花が萎んだ後も緑を保っていたが、とうとう2本とも地表部が枯れて
とうとう夏眠に入った。
 これから来年春まで北側の日陰で夏の猛暑を乗り越える。

 また来年! 



可愛い来訪者

2012-06-19 | 日記
 仏壇にお供えした残り物のご飯を目当てに、毎日朝晩スズメが我が家の庭にやってくる。時には待ちきれなくて、近くの紅葉の小枝に数羽が止まり盛んに鳴いて催促する。
縁側のガラス戸のすぐ外を飛び交ってアピールすることもある。台所の窓をつつく輩も
いるらしい。

木枯らしが吹く冬の寒い日、10羽ほどの群れが葉の落ちた紅葉の枝に止まって待つ姿
は、皆寒さを防ぐため全身の羽毛を立ててふっくらしておりいじらしくもある。

そうは言っても彼らはなかなか警戒心が強い。威さないようカーテンの影に隠れて
いるつもりでもカーテンのわずかな動きに驚いて逃げてしまう。縄文以来人里近辺で
生き延びてこれた所以なのだろう。


梅雨のこの日、ご飯の放ち方が悪く池の縁に落ちてバラけてしまった。さすがに水の中
は不得手と見えて慎重に水に入り食べていた。




塊をゲット!
食べずにそのまま飛び去る。


器用に一粒ずつ三粒まとめてくわえる!・・・ヒナ鳥養育中?
そのまま飛び去る。塊の場合は安全な場所まで持っていってそこで改めて食べるのか
と思ったがこれを見ると巣で待つヒナに与えるために持ち帰ったものと思われる。



どれがいいかな?慎重に選択


その他D、E
水は浅いが陸のようにはいかない。


庭石の間を飛び回る。


※冬の雀
寒さに耐えるため羽毛を立て全身を膨らましている。
11羽もの雀がお供えの残りご飯を待つ。

風呂用満水警報器  目覚し時計の利用

2012-06-18 | 電子工作
 我が家の風呂はいわゆる五右衛門風呂。ガス給湯、太陽温水器、薪焚きができる
優れものだ。冬の寒い日、下から薪で焚いた風呂は格別だ。体の芯から温まる。

今は太陽温水器がフル稼働。今年は梅雨に入っても晴れの日が続く。お百姓さん
には申し訳ないが正直いってありがたい。

しかし、旧式ゆえいまどき普通風呂に付いているコントローラーが全くない。
当然、満杯になったかどうか再三確認するため居間と風呂を往復する必要があ
り、確認を忘れてオーバーし溢れさせることも再三あった。


数年前、トランジスタがあれば簡単に満水警報器ができることをインターネット
で知り、不要となったトランジスタで自作してみた。
これが予想以上にうまくいき、以来、使い古しの電池なのに一度も電池交換する
ことなしにきちんと作動し非常に重宝している。


回路図
 

実機
 
 ケース:名刺ケース(タダ)
 抵抗:1kΩ(スクラップ)
 トランジスタ:SC2002x2ヶ(スクラップ)
 接水端子:モノーラルイヤフォンジャック(¥100)
 ブザー:目覚し時計部品(¥100)
 電池両端子:黄銅板を加工


・・・これに乗じて降雨警報器も作ってみた。接水端子を代え
れば原理的には同じ。

接水端子
 

実機
 

 雨を受ける接水端子は塩ビ板に銅細線を交互に張ったものだが間隔が1mm程度
あり少し間隔が広いようだ。小雨でテストしたら相当雨が降らないと作動しない。
これは失敗。



・・・これで終わるはずだったが・・・・

先日、ブザーの代用品として100円ショップで入手した目覚まし時計。
基盤のマイナス極とアラーム端子を短絡させてブザーの代用品としていたのだが
ここにトランジスタのE,C極を接続すれば警報回路としてそのまま使えること
がわかった。
これだとトランジスタ1個で済む。おまけに電池も1個の1.5Vでムーブメン
トのケースもそのまま使える。

回路図


実機
 
 
 
何のことはない。わざわざ壊してコイルや歯車、針など廃棄してしまったがトラン
ジスタや接水端子などを配線し再度組み立てれば時計としても使えるのだった。



後記
先日、息子夫婦の新築の家に泊まったら風呂から「お風呂が入れる温度になりました」
と聞こえてきた。モニターがしっかりついているようだ。我が家の浴温モニターは
熱帯魚水槽用の内外温度計。風呂焚きの際に焚口で湯温を見るためペットショップで
買ってきた。リード線が短かすぎたのでリード線を延長して使っている。
また赤ん坊(孫)の入浴の受け渡しを内線を使って風呂の内-外で連絡しあっていた。便利になったものだ。


100¥ショップ目覚し時計の分解~警報ブザーの部品取り

2012-06-14 | 電子工作
 「ピ、ピ、ピッ、ピ、ピ、ピッ、・・・・」と断続的に鳴る電子警報音
を出すのは結構面倒な回路が必要だ。
何かいい方法がないかと思案していたところ目覚し時計があるではないか。
今、目覚し時計は¥100ショップでが安く手に入る。
忍びないが、部品取りに新品を分解した。



目覚し時計
 一応、ライト付き。頭のボタンを押すとムギ球が点灯し文字盤を照らす
ようになっている。


分解1(表)
 透明アクリルのカバーグラスははめこんであるだけなのでマイナスドラ
イバでグラスの上下あるいは左右をすこしづつ引き出して外す。
時分秒、およびアラームセットの針を外す。



分解2(裏)
 ネジ2本を緩め裏のカバーを開けると本体が出てくる。
 本体もネジで止めてあるのでこのネジを取ると本体が外れる。
 本体の外に押しボタンスイッチとむぎ球がついている。
 ただしコードは粘着止め。


本体の分解
 四辺をノッチ付きストッパーを外し本体カバーを開ける。
 細かいプラスチック製歯車が多数見える。
 1秒周期でパルス信号がコイルに流れて、コイルの先の磁石付きの歯車
が一定角回転し針を動かす仕組みになっている。


基盤取り出し
 歯車を外し、コイルも要らないので切り離す。
 右下の部品が基盤。
 アラーム端子をマイナス極と短絡させると警報がなる。



 これだけの部品で構成されている。
Seikoが水晶式腕時計を世界に先駆けて実用化した時45万円。乗用車以上
の値段だったそうだ。これが今やたったの¥105。おそるべし技術革新。
おそるべしMade in China。そして大量のゴミも・・・。




閑話・・・数字パズル、数独をVABマクロで解く(part2)

2012-06-09 | 日記
 今日の朝日土曜版の数独クイズ、難易度5中の4。前回より若干難しくなった。
先のVBAマクロで解いてみた。

今度はスタート、終了の時間も表示できるようにプログラムを改定した。

難易度4まで2秒程度で解ける。しかし・・・・。

このプログラム、答えあわせに使うのだったらいいが、いきなりマクロだけで
解くと空しい気がする。

やはり、プログラムを組む時の試行錯誤の繰り返しが面白いのだと気づく。
早く難易度5が出てこないかなあ。


問題と解答例

金星の太陽面通過

2012-06-08 | 日記
 先日の金星の太陽面通過、専用メガネに変わるものがないか探しているうちに
とうとう見忘れてしまった。
次に通過するのは105年後だそうで、そう言われるとぜひ見ておかなくてはとも
思ったのだが、一方で黒い斑点が太陽面を移動するだけにそれほど興味がわかなか
ったのも事実。

そこででネットで画像を追ってみたのだが、日本の「ひので」から撮った画像と
NASAの動画が特にすばらしい。太陽のフレアを背景にした画像はちっぽけな
金星が宇宙空間でゆっくりと動いているのが実感できる。実にすばらしい。

続いてそんなちっぽけな金星の太陽面通過がなぜ105年先になるのか疑問が沸
いた。
約1.6年毎に金星、地球が並ぶ(合)・・・ということは105年の間に約65
回も出会う。それでもこの間太陽面を通過しないのは?

・・・・・・ で、ちょっと計算してみた。

金星の公転面は、地球の公転面に対してわずかに3.4度傾いている。が、地球
から見た見かけの傾きは8.8度。太陽を中心に上下に8.8度、上下で合計
17.6度も動くことになる。

これに対して、太陽の見掛けの大きさ(視角度)はわずか0.5度。実に太陽の
大きさの約30倍も上下する。

これではめったに重ならなくて当然だねえ。


太陽から出た光も地球まで届くのに8分もかかるとのこと。
やっぱり宇宙は壮大だ。


写真
http://image.itmedia.co.jp/l/im/news/articles/1206/06/l_sk_hinode_02.jpg

動画
http://www.youtube.com/watch?v=4Z9rM8ChTjY&feature=youtube_gdata_player

閑話・・・数字パズル、数独をVBAマクロで解く

2012-06-04 | 日記
 いわゆるコンピュータゲームはあまり好きではないが、マインスィーパー(地雷ゲーム)やgooの数字パズルのようにルールが単純で推理が複雑なゲームはいい。地雷ゲームなどはハイスコアー(最短時間)を更新しようとするあまり時折のめりこんでしまうことがある。地雷の在り処を最後までマークしないまま推理していく方法をとっているので余計に頭を使う。

 数字パズルの方はハイスコアーの記録が残らないので記録更新のワクワク感がないが10分間の時間制限を超えるとゲームオーバーとなってしまう。たまに残り1枚でゲームオーバーということもありこんな時は非常に悔しい思いをする。

 購読している朝日新聞の土曜版にも「数独」という数字パズルが出題されていて問題と前週の回答が掲載されるので毎週土曜日を楽しみにしている。
こちらの方は時間制限がない代わり難易度に5段階ある。
ルールは至極簡単。9x9の升目があり、縦一列、横一列、および3x3のブロックで1~9の数字を重複しないように入れてゆく。
あまりの単純さにVBAマクロで解答プログラムを組んでみた。


※プログラム(部分)


まず、数字が不明の欄に”123456789”をいれて置き、数字が判っている欄の縦1列、横1列、該当ブロックからその数字を消してゆく。たとえば3列目の4行目が”5”だとすると3列目すべての欄、4行目すべての欄、および1列目の4行目から3列目の6行目にかけたブロックすべての欄から”5”を消す。

この操作を数字が判っているすべての欄で繰り返す。

この操作が終わったら縦1列、横1列、該当ブロックごとに1個しかない数字を探し出す。これが解答の数字。

新たに数字が判ればまた前の操作でやったようにその数字を縦、横、ブロックごとにで消してゆく。


※実例 (6/2付け朝日の問題で)

問題のデータを投入。1個づつ丁寧に投入する。
 

スタートをクリックしてプログラムを起動するとあっという間に解答が出る(この問題では約3秒)
  



 この問題は難易度5のうちの3番目。このプログラムでは難易度4まではまず解ける。難易度5の問題はもう一工夫必要だ、たとえば2と5の組み合わせが縦、横、ブロックのいずれかに2箇所しかないとその2箇所が2か5ということになり、その2箇所の欄以外は2あるいは5が消せる。簡単だがプログラム化するとなると非常に難しい。

人間ならこの見分けを難なくやれる。コンピュータの性能アップは目覚しいが、こうして人間の判断をプログラム化しようとすると改めて人間の能力のすごさを感じられずにはいられない。


柿の種 発芽 (その後)

2012-06-02 | 日記
 先月初めに庭の片隅で発芽した柿の種。植木鉢に移植してその後順調に育っている。
 すでに3段目の双葉が出始めている。

 

 3週間ほど前のものは下の画像。発育が一番遅れた種も殻が完全に外れて順調に育っ
 ているのがわかる。殻を無理やり外したものは下葉が変形したままでなかなかもとに
 戻らない。やはり自然に任せるほうがいいようだ。
 それと、今まで気付かなかったが近くの椿の鉢にも1本柿の新芽らしいのが出てい
 た。ラッキー。
 


 ブドウ、イチジク、ミカンなども種を蒔いた(捨てた)が発芽したのは柿だけだっ
 た。

 「モモ・クリ3年、柿8年」が本当なら実が取れるまでになるのはまだまだ相当先。
 また柿は雑種性が強いらしいが、当然甘柿がなるかどうかも・・・。

庭の植物たち part3

2012-06-02 | 日記
久しぶりに庭の植物を写真に撮った。

まずアジサイ。平均的にはそろそろ梅雨入りしてもおかしくない時期なので
アジサイが開化し始めた。
アジサイにもいろいろ種類がある(らしい)。白、ピンク、紫。
     
     
 実は、梅雨のイメージが重なるせいかアジサイの花はあまり好きではない。
 やはり青空とマッチングする花がいい。

 次いでバラ。
我が家には紅白のバラが今満開。さすがに花の女王だ。散り始めると一枚づつ花びらが
落ちる。後始末が大変。
   

 池の周りのサツキもボツボツ花をつけてきた。今年は花が少し少ないようだ。
 

 アオイと萩(?)と?。
       

 狭い庭だが、野草好きの"家主"がところかまわず雑多な植物を植える。
 そしてもう植える場所が無いにもかかわらず次々と買ってくる。わずかな隙間を見つ
 けて、あるいは押し込ませて植える。その結果がカイオス状態。狭い庭が密林となっ
 ている。
 
  

LEDの点滅回路 自作(廃棄部品の再利用)

2012-06-01 | 電子工作
 テレビ、プリンターなどの電子機器には多数の電子部品が使われている。要らなくな
 った電子機器をただ廃棄するだけではもったいなく、何かに再利用できないかと思っ
 てこれらの廃棄電子機器から抵抗、コンデンサー、トランジスター、LED、スイッチなどの電子部
 品を抜き取ってストックしていた。

 今回、これらを組み合わせて2個のLEDを交互に点滅させる回路を組み立てた。
 トランジスタが作動するか不安であったが、実にうまく作動した。

 【試作】
 まずは1芯コードを使った配線で組み立て。1芯コード自体で形状を保持できるので
 ボードがなくても回路が堅持できる。これに単3電池ボックス(3V)とスイッチを繋
 いで出来上がり。仕様どおり2個のLEDが交互に点滅する。点滅周期はこの回路では
 およそ0.5秒。点滅周期はコンデンサーと抵抗の組み合わせで変わるらしいが、これく
 らいの周期がちょうど具合がいいので試していない。
 このままでも少なくとも1週間以上点滅を繰り返すが、これに光センサーを取り付け
 て見た。夕方暗くなると自動的に点滅する。
  
 回路全体        発光部詳細
 
 ハンダ付けが正直下手だが、まあ実用(?)は問題なし。

 光センサーをプラグで遮光すると点滅を始める。この回路もうまくいった。
 ただし、CdS光センサーは購入品(廃棄の電子機器には見つからなかった)。
 従って、CdS以外はすべて再利用品で製作したことになる。
  
 上のLEDが点灯      下のLEDが点灯

 暗闇の中で点滅させると結構目立つ。また、ウサギの人形の両眼にこのLEDを組み込
 んだら面白いのではないかと思う。赤およびピンクのフェルトを購入までしたが
 まだアイデア止まり。
 
 
 【コンパクト化】
 今度はボードも回収品を使って、黄のLEDで製作。やはりボードを使えば一体化でき
 コンパクトになる。試作品は電池やスイッチの接続がハンダ付けしていないので移動
 する度に接続部が外れることがあったが、一式取り扱えるのでやはり便利だ。
 電池の両方の端子も銅線を加工して製作しており、これもLEDの電流制限用の抵抗以
 外はすべて再利用品。
 ただし、光センサーは付設していない。

   
 正面          斜方          裏側

 ※裏側にはショート防止のため粘着テープを貼付した。
  裏側からみるとボードが再利用品であることが明らか。

  
 上のLEDが点灯     下のLEDが点灯

 これはカエルの人形に組み込んだら面白いのではないかと思っている。

 不要となった電子機器から部品を抜き取るのは結構根気が要るが、汎用の部品が
 多量に組み込まれており、再利用を考えると面白い。

 次は、水位警報機(降雨警報機)の自作を紹介する予定。