目覚ましソフト、「PCアラーム Ver 1.3」を公開しました

【プログラム名】PCアラーム Ver 1.3 【動作確認済みOS】Windows 7/8/10 【必須フレームワーク】.NET Framework 4.5以上 【作者】Trance Cat 【作者サイト】http://www.trance-cat.com/ 【対応言語】日本語、英語、中国語   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 →→→→→→ダウンロード←←←←←←   =Ver 1.3 からの新機能= ・スリープ解除機能。パソコンがスリープ状態に入ってもアラーム発動時刻の一分前にスリープ状態が解除されるように、設定できる。 ・英語UIオプション ・UIをよりわかりやすく ・わかりやすいマニュアル   =説明・使用方法・注意= パソコン用の目覚まし・アラームソフトです。 ・フォームが邪魔な時は「フォームを隠す」ボタンで隠してください。隠さずに終了してしまうと、アラームは作動しません。隠されたフォームをもう一度、画面に表示させるにはタスクバー右側の「通知領域」にあるパソコンアラームのアイコンをダブルクリックします。 ・スリープ解除時刻が設定されたままアプリを終了しても、スリープ解除は有効です。スリープ解除をリセットするにはもう一度アプリを起動して「スリープ解除時刻をリセット」をクリックしてください。 ・「次のアラーム時刻の一分前にスリープを解除」をチェックしてアラームを有効にすると、パソコンはアラーム作動時間の一分前にスリープから起きます。なお、これはユーザーがAdministrator(管理者)でないと設定できません。最初はタスクを作成するだけなので設定できる可能性はありますが、のちのタスクの上書き、更新、削除は管理者でないとできない操作なので注意してください。 ・スリープ解除機能はスリープ解除タイマーの許可が有効になっていないと動作しません。スリープ解除機能を使用される場合は必ず以下の設定を行ってください。   =スリープ解除が動作するための必須設定= 1.「コントロールパネル→システムとセキュリティ→(電源オプション)コンピューターがスリープ状態になる時間を変更→詳細な電源設定の変更」まで移動する。 2.「スリープ→スリープ解除タイマーの許可→バッテリ駆動」の設定を「有効」にする。 3.「スリープ→スリープ解除タイマーの許可→電源に接続」の設定を「有効」にする。 これらの設定は管理者権限がないと行えません。   =スリープ解除タスクが登録されているかを確認する方法= Windowsの付属アプリ、「タスクスケジューラ(taskschd.msc)」を実行し、タスクスケジューラライブラリ内に「PC-Alarm」というタスクが登録されているかを確認する。   =言語= このソフトは日本語と英語、両方のデータが組まれています。どの言語を出力するかはシステム環境の言語に基づいているため、日本語以外のシステムをお使いの場合、UIは英語で表示されます。日本語/英語のUIを強制的に表示させるには同胞された「PCAlarm-Japanese.bat(日本語)」もしくは「PCAlarm-English.bat(英語)」を実行してください。   =開発用ソフト= Microsoft Visual Studio 2013 Express   =付属アラーム音声= 【トラック名】コーヒーの昼下がり 【トラックURL】http://dova-s.jp/bgm/play051.html 【作曲者】 稿屋 隆 【作者URL】http://dova-s.jp/_contents/author/profile000.html   =使用ライブラリ= 【ライブラリ名】Task Scheduler Managed Wrapper 【作者】David Hall 【URL】http://taskscheduler.codeplex.com/ 【ライセンス】MIT License Copyright (c) 2003-2010 David Hall   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 →→→→→→ダウンロード←←←←←←  

Windows 10のアップデート後、スタートメニューが開けなくなった

新年早々、自機のWindows 10に自動更新が入ったあと、スタートメニューが開けなくなっていたので解決策をずっと探しまわっては試していたわけですが、ようやく解決しました。 【症状】 ・Windows 10の更新後、スタートメニューが開かない。検索バーが作動しない。 ・スタートメニューの右クリックは正常に動作する。 ・新しいユーザーを作り、スタートメニューを開こうとすると開く。 ・Windowsの「イベントビュアー→Windowsログ→Application」内に「Microsoft.Windows.Cortana_cw5n1h2txyewy!CortanaUIのライセンス認証がエラーで失敗しました」というログがある。 解決にはこちらのサイト(https://i-bitzedge.com/tips/how-to-fix-can-not-open-start-menu-action-center-microsoft-edge-windows10)を参考にしたのですが、どれもうまくいきませんでした。最後の解決法に関してはC:\Users\ユーザー名\AppData\Local\Microsoft\Windowsにはたどり着いたものの、その中のUsrClass.datをどうしても削除できませんでした。新しいユーザーを作り、そこからコマンドラインで削除しようとしてもダメでした・・・が、最終的にはできました。そして直りました。以下は私がスタートメニューを直した手段です。(試す方は自己責任でお願いします) 【私が用いた解決手段】 1. スタートメニューを右クリックし、コントロールパネルを開き、新しいユーザーを作る。 2. このユーザーに管理者(Administrator)の権限を与える。(重要) 3. パソコンを再起動し、新しいユーザーでログインする。 4. コマンドプロンプトを管理者として実行し、「cd C:\Users\スタートメニューが動かない方のユーザー名\AppData\Local\Microsoft\Windows」を実行する。(問題のファイル(UsrClass.dat)のフォルダまで移動) 5. そのまま「ren UsrClass.dat UsrClass2.dat」を実行する。(念のため、UsrClass.datは削除せずに、UsrClass2.datに名称変更する) 6. パソコンを再起動し、前のユーザーとしてログインしてスタートメニューが直ったかを確認する。 私の場合、いくつかの以前のWindowsストアアプリの表示がおかしくなっていたので、この手段はWindowsストアアプリをあまり使わない方のみが検討すべきかと思います。 最初は新しいユーザーに管理者権限を与えていなかったために、削除できませんでした。だが、しかし、最初も最後もExplorerではなぜか「C:\Users\スタートメニューが動かない方のユーザー名\AppData\Local\Microsoft\Windows」までたどり着けませんでした。なので、操作はすべてコマンドラインで実行しました。    

TYPEMASTER Ver 2.0 を公開しました

タイピングソフト+パチスロソフトの「TYPEMASTER  Ver 2.0」です。Java(推奨:1.7以降)がインストールされていないと動きません。なお、ハイスコアは測定に使う文章のファイル(.datファイル)のハッシュをもとに保存しているので、.datファイルの中身を変更すると以前のハイスコアにアクセスできなくなるのでご注意ください。 BGMに使用している曲はhttp://unisp.web.fc2.com/index.htmlにて無料で配布されています。 このゲームに使用するため、MP3をわざわざ8-bitWAVに変換しているので、普通に聴くにはMP3を本家からダウンロードするといいでしょう。 このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 →→→→→→ダウンロード←←←←←←   【プログラム名】TYPEMASTER Ver 2.0 【推奨画面サイズ】1280×720以上 【動作確認済みOS】Windows/Macintosh/Linux (LinuxでのJavaのインストールは少々面倒かもしれません) 【推奨Javaバージョン】1.7以降 【プロジェクト名】TYPING11 【どのプログラムを実行すべきか】 1. Windows → TYPEMASTER-EXE.exe もしくは TYPEMASTER-EXE-debug.exe 2. Macintosh/Linux → TYPEMASTER-JAR.jar 3. Windows(EXEが失敗したとき) → TYPEMASTER-JAR.jar もしくは TYPEMASTER-JAR-debug.jar EXEバージョンはWindowsでのみ動作します。Windowsシステム使用の場合、EXEバージョンをお使いください。JARバージョンはWindows, Mac, Linuxで動作可能です。しかし、EXEバージョンと違い、Windowsではメモリの割り当てが不十分です。 そのため、EXEバージョンが動かなかった場合のみ、JARバージョンを試してみてください。 なお、プログラム名が-debugで終わるプログラムは自動的にコマンドラインを開きます。 もしも、-debugじゃないプログラムが開けなかった場合、名前が-debugで終わるプログラムも試してみてください。 テキスト設定方法 測定に使用するテキストは.datファイルに記載されています。 編集する際は元の例文を参考にして記述してください。また、空の行を記載しないよう注意してください。 なお、english.datは「英文」と「一分勝負」、japanese.datは「日本語文」、words.datは「用語暗記」の内容に使われています。 文の行を順番通りに表示するには「設定」スクリーンで「スクランブル無効」を選択してください。 トラブルシューティング 【Javaバージョン 確認方法】 もしもJavaがインストールされている場合、WindowsのコマンドラインもしくはMacintosh/Linuxのターミナルで「Java -version」と入力するとバージョンが表示されます。 【コマンドライン/ターミナルで「java.lang.UnsupportedClassVersion」と表示される】 Javaのバージョンが最新でないことを意味します。新しいJavaバージョンをインストールすれば解決するはずです。 【Macintoshで「開発元が未確認のため開けません」と表示される場合】 アドミニストレータアカウントにならば、セキュリティ設定を変えることができますが、もしもそういう権限がないユーザーなら、ターミナルからプログラムを実行することが可能です。 ターミナルでゲームディレクトリ内に移動し、「java -jar TYPEMASTER2-JAR.jar」をターミナルで実行すれば開けると思います。 エラー画面一覧 エラー 1: english.dat/japanese.dat/words.datが読み込めなかった時のエラー。削除していないか確認してください。 エラー 2: NullPointerException。バグが発生したときに表示される。暇があれば連絡してください。 エラー 3: 画像、音声ファイルがロードできなかった時のエラー。 今後(あればの話) Ver 2.0 は音ゲーを参考にした箇所もあったので、次回は本当に音ゲーに進化させようかなと思っています。 ファイルサイズを小さくするために、MP3形式にも対応させたいです。 ある程度の完成度に達したら、他の言語でもリリースしたいと思います。 それでは。 ゲーム作者 【ゲーム作者】Trance Cat 【サイトURL】http://www.trance-cat.com   以下素材元 音楽 【著作者/レーベル名】Unisphere 【URL】http://unisp.web.fc2.com/ 【ライセンス】クリエイティブ・コモンズ – 非営利 4.0 国際 ライセンス 【使用楽曲(曲名 – アーティスト名 – アルバム名)】 ・Renatus – Soleily – 地球やばいEP ・Wings(Original Mix) – Laf_R feat. The Strayer – 地球やばいEP ・First Sunrise – LafR – 日本やばいEP ・Blizzard – Soleily – Magik Motion 効果音 【サイト名】くらげ工匠 【URL】http://www.kurage-kosho.info/ 効果音 【サイト名】魔王魂 【URL】http://maoudamashii.jokersounds.com カラス効果音 【URL】http://taira-komori.jpn.org/animals01.html 大当たり効果音 【サイト名】龍的交響楽-Dragonic Symphony- 【URL】http://d-symphony.com/ オレンジ、ぶどうの絵 【URL】http://www.clker.com/ EXE生成用プログラム 【プログラム名】JSmooth 【URL】http://jsmooth.sourceforge.net/index.php   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 →→→→→→ダウンロード←←←←←←

JavaのdrawStringを右寄せにする方法

java.awt.Graphics.drawStringを右寄せにする方法を日本語で紹介しているサイトがなかったので投稿します。 gはGraphics2DのインスタンスでrightPositionは文字列の右端の位置(x軸)を表しています。このテクニックのかなめはFontMetricsでこれを使用することで文字列の幅をピクセル数として取得することができます。 例1 String s = “Hello World”; int rightPosition=100;//文字列の右端の位置 Font font1 = new Font(“SansSerif”, Font.PLAIN, 12);//好きなフォントを使用します g.setFont(font1); FontMetrics fontMetrics = g.getFontMetrics(); g.drawString(s, rightPosition – fontMetrics.stringWidth(s), y); 例2(AttributedStringを使用した例) Font font1 = new Font(“SansSerif”, Font.PLAIN, 12);//好きなフォントを使用します String s = “Hello World”; int rightPosition=100;//文字列の右端の位置 g.setFont(font1);//好きなフォントを使用します FontMetrics fontMetrics = g.getFontMetrics(); AttributedString astring = new AttributedString(s); astring.addAttribute(TextAttribute.FONT, font1); g.drawString(astring.getIterator(), rightPosition – fontMetrics.stringWidth(astring), y);

【作ってみた】引き出しからできたカラフルな真空管アンプ

初の自作真空管アンプ 高校生のときに初めて作った真空管アンプの紹介です。真空管は手元にある安価なものを6個使用しました。右の増幅に3つ、左の増幅に3つとふりわけられていて、整流回路にはダイオードを利用することにしたため、真空管は使いませんでした。そのとき、高校生だったもので、予算も限られていて、ATX電源のコンデンサー(一応松下製)を再利用して電源回路に組み込みました。 前段の電圧増幅には電流対電圧比が低い12AX7を利用しています。出力管には12AU7の片方が一つの真空管になっている6C4を利用しました。普段は出力管には使われない真空管ですが、電流対電圧比が比較的高い方なのでいけるなと思いました。この出力段ではこの6C4を並列にして、出力電流を増やしているつもりなのですが、正直1個でも足ります。 カップリングコンデンサにはオイルコンデンサー、出力トランスには春日無線変圧器のKA-1220、電源回路にはその前に組み立てた真空管アンプキットからのものを使用しました。 あと、ケースにはかなり凝りました(お金はかけていませんが)。実はこのケース引き出しなんです。処分することになった引き出しをマスキングテープやスプレー缶などを利用して、自分の好きな色に装飾しました。   今後の課題 初めての真空管アンプだったもので動いただけでも満足したのですが、音はイマイチですね。最初はハムノイズが大きくて、それを軽減するために整流回路の電圧降下をより大きくして、より大きな値のコンデンサで整流するようにしました。これにより、A電源とB電源の電圧は少しだけ低くなりましたが、ノイズは減りました。しかし、ノイズの一番の原因はこれではなく、多分設計ミスですね。12AX7での増幅を2段使用していて、しかもその間には減衰回路やトーンコントロール回路もないため、ゲインが高すぎるのです。設計段階でゲインを計算しなかったため・・・こうなりました。しかし、当初からなんとなくそんなことが起こるだろうなーと思ってゲイン調整ノブをちゃんとつけておきました(これ本当)。これで一応は普通のアンプとして利用できるようになっています。 あと、ケースは少し小さすぎるかなーという思いもあります。特に電源回路が出力トランスの真下にあり、しかもケースが木でできているので、多少の電磁誘導は起きているはずですよねw。 今後も真空管アンプも作ってみたいと思いますが、制作には非常にお金がかかり、非常に時間がかかり、高電圧を扱うし、設計には頭を使うので、正直まだ、実際にやってみようという段階には来ていないです。ただ、次の真空管アンプにはどういう真空管を使うかは決まっています。それだけです。それでは。

サイトURLを変えたとき、古いURLへのリクエストを新URLにリダイレクトする方法

URLをリダイレクトする方法は様々ありますが、このサイトのURLを変えたときは「301リダイレクト」という方法を使いました。それを実現させるには.htaccessというファイルに以下のようなことを記述します。 RewriteEngine on RewriteCond %{HTTP_HOST} ^sonota.trance-cat.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.sonota.trance-cat.com [NC] RewriteRule ^(.*)$ http://sonota.trance-cat.com/$1 [L,R=301,NC] これが何をするかというと、sonota.trance-cat.comとwww.sonota.trance-cat.comへのアクセスをすべてsonota.trance-cat.comにリダイレクトさせます。それもsonota.trance-cat.com/column/というURLもsonota.trance-cat.com/column/にリダイレクトしてくれるので、URLだけを変えた場合はこれが非常に便利です。 ご自身で利用する場合はsonota.trance-cat.comとsonota.trance-cat.comの部分をご自身のURLに入れ替えるだけです。 なお、この301リダイレクトはサーバーにmod_Rewriteという機能が搭載されていないと動作しません。たいていの有料サーバーはmod_Rewriteという機能がついてくるはずなので、使えるはずです。

Twitter4Jライブラリでツイッターボット作成中

→→→ツイッターボット「TweetBot 1.0β」を公開しました←←←   現段階 現在、JavaでTwitter4Jライブラリを使用したツイッターボットを作成中です。Twitter4Jライブラリを使うことによって、Twitter APIを簡単にJavaから操作することが可能になります。タイマー部分の論理はプログラム言語が違いますが、PCアラームと似たような感じです。 現段階では ・自動ツイート(間隔指定、例:毎10±5分、24時間おきにとか) ・自動相互フォロー(間隔指定、例:毎10±5分、24時間おきにとか) ・トレンド表示 ・指定したWOEID(場所)のトレンド表示 ・自分のタイムライン表示 ができています。   簡単な仕組み ツイートは「時間指定」ではないので、パソコンをシャットダウンしても支障は出ません。ツイートは.txtファイルで一行につき1ツイート記入する感じで、改行は\nで表します。もちろん、テキスト上の「\n」(改行コード)はエスケープされていて実際の改行コードではないので、プログラム内ではストリング内の「\\n」を「\n」に置き換えています。(str = str.replace(“\\n”, “\n”);)。これのことなんですが、最初は.replaceではなく、.replaceAllで置き換えようとしていたんですが、何度試してもダメだったんで、.replaceで片づけることにしました。この単純なコードに40分くらいかかりました。orz。。。今年最大の打撃です。 で、その.txtファイルに記載されたツイートを読み取り、「ツイート」が成功した後はそのツイートは.txtファイルから削除されます。まだツイートされていないツイートはそのまんまなので、途中でプログラムを切っても支障は出ません。 基本的な「認証」、「ツイート」や「フォロー」などはライブラリでサポートされているのでさほど面倒ではありません。 実行は古き良きコマンドラインからです。Windowsのタスクスケジュラーでパソコンを起動すると同時にコマンドプロンプトでボットを起動するように設定しています。   WOEIDとは WOEIDとは(Where On Earth IDentifier)(主の翻訳:一体、地球上のどこにあるんだ!?の識別子)の略で識別子は32ビットの数字であらわされています。アメリカのYAHOOが管理しています。 御覧のように秩父市の浦山口駅にも番号が割り当てられています。どんな場所でも割り当てられるようになっていると言ったほうが正確でしょうか。 浦山口駅:28364577 ツイッターではトレンドを取得するときの「トレンドの場所」を指定するためにWOEIDを使用しています。もちろん、浦山口駅のトレンドは取得不能ですが、ある程度大きな町ですとトレンドが表示できるようになります。試しにTwitter4JライブラリのgetAvailableTrendsでトレンドが表示できる場所を全部表示してみました。 2015年8月18日の結果です(PDF) これを見ると、ツイッターをどれだけの人が使用しているかなんとなくわかりますね。川崎市、チェリャビンスク、クラクフ、 ハイデラバッドなどかなりピンポイントな場所でもトレンド表示できます。 驚いたのは香港とハンガリー(ブダペスト)が載ってないんですね。香港は中国当局が規制しているのでしょうが、ハンガリーは・・・国民が単に興味がないんですかね。   実験結果 2年間放置していたアカウントで使用したところ、知らない間にフォローが500くらい増えてました。頻繁にフォローバックしているとほかのボットに察知されるんでしょうかねw ボットとしてはまだまだ他のと比べると劣りますが、少しずつ機能面や性能面で上げていきたい気がします。

目指せ!「モバイル・フレンドリー」なサイト!

目指せ!「モバイル・フレンドリー」なサイト! 最近、グーグルのサイトランキングにサイトがどれだけ「モバイル・フレンドリー」であることかが判定基準に加わりました。私なりに言えば「モバイル・フレンドリー」なサイトとはスマホやタブレットで見やすいサイトのことです。サイトが「モバイル・フレンドリー」であるかないかを判定するのにグーグルデベロッパーでは「モバイル・フレンドリー・テスト」というツールが存在します。 「モバイル・フレンドリー・テスト」URL:https://www.google.com/webmasters/tools/mobile-friendly/ スマホ向けにサイトを改良した結果、このツールでソノタブログはモバイル・フレンドリーであると認定されました。 やったー どうやってモバイル・フレンドリーにしたか このサイトではメタタグのviewportや画面サイズによってCSSスタイルを振り分けるMedia Queriesを使うことでサイトを「モバイル・フレンドリー」にしました。 viewportはサイトのヘダーに  <meta name=”viewport” content=”width=device-width, initial-scale=0.6″> のようなコードを入れることで指定できます。 また、Media Queries はCSSファイルに @media only screen and ( max-width : 1419px ) { スクリーンが1419px以下のときに実行したい内容を記述。 } @media only screen and ( max-width : 1419px ) { スクリーンが1420px以下のときに実行したい内容を記述。 } のようなコードを記述することで実現できます。たとえば、このサイトの右サイドバーの場合、1419px以下は「右サイドバーを本文の横に表示するのではなく、下に表示させる」ことをしていて、逆に1420px以上の場合は「右サイドバーを普通に本文の横に表示せよ」という内容のコードになっています。 また、このサイトでは採用していませんですが、.htaccessファイルでスマホやタブレットからのアクセスをモバイル専用のサイトに誘導するという手段もあります。規模の大きいサイトではこれをしているところが多いように感じます。 サイトをお持ちの方は一度サイトの「モバイル・フレンドリー」さを意識してみてはいかがでしょうか。 それでは良いサイト作りを~

【駄作】ペルチェ素子を使った小型冷蔵庫

ええ、栄養ドリンクのケースを使っています。 学園祭に出そうと思った 高校に通っていた頃に作った小型冷蔵庫(駄作)です。もともとは学園祭の出し物として出す予定でしたが、駄作(後ほど説明)だったので結局出しませんでした。仕組みは極めて簡単で電気的部品はペルチェ素子とファンしか使っていないです(電源回路は別)。 ペルチェ素子の冷たい側を冷気に変えるための(ヒートシンク)及び放熱するためのヒートシンクは古いパソコンからとってきたものです。放熱する側のヒートシンクはファン付きで電圧に応じてファン速度が変わります。ペルチェ素子は12Vのものです。耐水と断熱のため、栄養ドリンクケースの中は100円ショップで買った保冷バッグを切ってはり付けています。 デザイン性無視です。 動作中、一応、中のヒートシンクは凍り付きます。 なぜ駄作か まず、中の飲み物があまり冷たくならないこと(致命的)。 2つ目、電気食いすぎ。 3つ目、熱気がすごい。 はい、冷蔵庫として機能していないので駄作なのです。でも、一応、内部のヒートシンクは結露が凍り付くほど冷たくなります。でも、空間にその冷気が伝わらないんです。断熱が不十分だったの原因でしょうか。 でも、使い物にならないわけではなりません。冬はちょっとした卓上ヒーターとして使えます(笑)。

【チャージャー3号制作記】携帯型充電器、遂に完成

シンプル・イズ・ベスト 完成 【チャージャ3号制作記】もついに「チャージャー3号」(携帯型充電器)の完成をもって終わりを迎えることとなりました。過去の記事をご覧になりたい方は以下のリンクをクリックを、 1回目:【チャージャー3号制作記】PCB基板を作成してみた 2回目:【チャージャー3号制作記】携帯型充電器、部品実装+通電 今回使った黒色のケースは秋葉原の千石電商で買ったタカチのものを使用しています。ポイントは簡単にカバーを開け閉めできることで、それによってリチウムイオン電池の交換も容易になります。正直、ボタンやLEDをケースに装着してもよかったんですが、とてもめんどくさそうだったのでやめましたw。穴は取り付け孔を除くと、内部電池を充電するための充電ポートと外部デバイス(スマホなど)を充電するための出力用のUSBを通すための穴しかあけていないです。ドリルの穴あけは極めて容易でした。 爆弾じゃないお! スマホ充電中  結論・感想 少々大きいですが、普通に使えます。多分飛行機とかには持ち込めないでしょうがw スマホ2台以上充電する場合は予備の18650リチウムイオン電池を持っていくといいかもしれません。

実録!秩父遠征

  旅だ 今回、その他部部員3名で行ったのは埼玉県秩父市の浦山の消滅・限界集落群です。もともとは浦山口駅集合でしたが、本数が少ないため、結果的に御花畑駅で合流することになりしました。目的地へ行くための降車駅の浦山口駅は西武秩父駅直結の御花畑駅から2駅です。 まず向かったのは、駅から徒歩で行ける距離にある、橋立鍾乳洞(はしだてしょうにゅうどう)です。入場料は200円とお手軽。洞内は涼しく、非常に狭い箇所がたくさんあり、前へ進むには注意が必要です。 朝食は洞窟近くのそば屋でとる予定でしたが、「準備中」とのことでしたので日陰でバス待ちを兼ねて少し休憩をとることにしました。 橋立鍾乳洞入り口 栗山集落 鍾乳洞を見たあとは1日3~4便程度しか来ない秩父市営浦山線バスで「栗山」停留所まで行きました。「栗山」には栗山という消滅集落があり、そこを目指して、人気のない道を上っていきました。しかし、途中で舗装された道にさよならをし、傾斜が45度くらいありそうな道なき道を上ることになりました。幸い、その先には廃墟があり、しかもあまり荒らされていない様子でした(舗装された道から少し離れているからでしょうか)。 壁に掛けられたカレンダーは1988年の3月のままで停止していて、居間には1980年代のものと思われるナショナルのPana Color TH18-C16ブラウン管テレビが・・・。ちゃぶ台の上にはいまだに茶器と急須がおかれていて、27年間も放置されていたとは思えない様子でした。 1軒目の次に行った廃墟には1977年の5・6月カレンダーが未だにぶら下がっていました。外から伺っただけですが、1軒目と比べると、かなり中は荒れていました。2軒目を見た後は、道に合流し、道の先にも集落があるかと思い、しばらく道を歩きましたが、集落や廃墟らしきものは見当たらず、引き返しました(後ほど調べたらその先に集落はなかったので引き返して正解でした)。引き返した後は再び廃墟に遭遇し、3軒目には秩父警察署の張り紙があり、空き家が放火、破壊行為や盗難などの犯罪の温床になっているとのことでした。 谷沿いの大きい道へ戻った後は、大神楽方面へと向かいました。   大神楽集落 大神楽停留所付近に山奥へと続く道があり、その先に大神楽集落があります。舗装された道沿いにあり、一軒に関しては管理が行き届いていて、人が住んでいてもおかしくない様子でした。   薬師堂 大神楽より先の武士平を目指している途中、面白そうな建物を発見。後で調べると、薬師堂という仏堂でした。   コンピュータ その他にもUV-EPROMや74型ロジックICがのっているおもしろそうな基板を発見しました。ICのタイムコードを見る限り、おそらく1982年製だと思われます。基板の真ん中にはシャープ版のZ80 CPU、「LH0080」が数個配置されていて、そのころのコンピュータだと思われます。色々調べた結果、1982年製のシャープのMZ-2000かX1だと思ったんですが、基板の色(写真では青であるのに対し緑)やケースの色、部品の配置の違いなどから違うと判明。分かる方がいましたらコメントください。   武士平集落 武士平集落には廃墟らしき建物が数件ありましたが、こちらもちゃんと管理がされている様子でした。また、人が住んでいそうな家もあり、あまり詮索しないことにしました。ちゃんとした道は武士平で終わり、この先のたわの尾根を越えるには山道を進まなくてはなりません。   たわの尾根 上り坂の山道を進んだ後、たわの尾根につきます。たわの尾根には小さい馬頭観音の石像があり、供え物がされています。ここで少し休憩するといいでしょう。たわの尾根から茶平集落方面に向かう道はほとんど下り坂で楽です。 途中、清流に差し掛かり、私(管理人)はそこの水を飲みました。とりあえず、腹は壊さなかったです(笑)。清流の水は透明で荒川の水源にもなっているような場所なのでたぶんきれいです。   茶平集落 下り坂の道を進む途中、山の川をかける橋を渡った後に道が3つに分岐します。茶平は細い上り坂の先にあります。坂の上には警ら箱があり、集落はさらに奥にあります。人は一人も住んでいないですが、水道?や蛇口は設置され、墓などは管理されているようでした。家は6軒くらいあり、そのうちの1軒は完全に崩壊していました。規模は大きいのですが、中が見える家を見るとかなり荒らされていることがわかります。中には家の中に入れないように玄関に板を張っている家もありました。 山から帰還した我々を迎えたのは1991年に完成した寄国土(ゆすくど)トンネル。トンネルのレリーフは「浦山の獅子舞」をモチーフにしたデザインだそうです。   寄国土トンネル 寄国土トンネル内部。すごい反響します。 帰り 帰りは寄国土トンネル付近のバス停から市営バスを乗車して、一人300円払って西武秩父駅の近くまでバスを乗ることにしました。 途中、運転手から興味深い話を聞きました。運転手によると、この付近の集落の多くはもともと炭焼きで生計を立てていた家庭が多かったといいます。冬は4時間くらいしか日が当たらず、この低温により、木は固く育ち、木炭に向くものになるのだという。しかし、灯油が普及し始めると、多くの人々は集落を離れ、このように集落は廃墟化したのだという。 西武秩父駅では土産を買い、そばを食べ、帰りました。ああ、文明素晴らしや。

PCアラーム Ver1.2を公開しました

説明・使用方法:パソコン用の目覚まし時計です。Windows搭載パソコンで簡単に使用できます。 PCアラームの画面上の「フォームを隠す」をクリックすると、アプリケーションはいったんスクリーンから隠されます(終了しません)。もう一度、画面に表示させるにはタスクバー右側の「通知領域」というところにあるパソコンアラームのアイコンをダブルクリックします。 「フォームを隠す」ではなく、右上の罰点やファイル→終了をクリックするとアプリは終了し、アラーム(目覚まし)は作動しませんので、使うときは「フォームを隠す」かそのまま画面に表示させておいてください。また、パソコンが自動的にシャットダウンする場合やスリープする場合はアラームは発動しません。無事、アラームが発動すると、右下に通知されます。通知のエリアをクリックするとアラームは停止します。 音声ファイルはWindows Media Playerで再生できるものなら(多分)いけます。今のところ、(*.mp3; *.wav; *.wma; *.m4a; *.3gp; *.flac)が再生できることを確認しています。 Ver1.0とは違い、Ver1.2では曜日や時間、音声ファイルなどが「設定→詳細設定」で設定できるようになりました!これで、「平日の朝8時」や「水曜日の午後6時15分」などピンポイントでアラーム時間が指定できるようになりました。 いちいち起動するのが面倒くさければ、Windowsのタスク・スケジューラ(taskschd.msc)でパソコン起動時に自動的にPCアラームを起動するように設定できます。   動作環境:Windows Vista, 7, 8, 8.1, 10 Ver 1.0との違い:時間、曜日、音声ファイル、アラームメッセージなどの設定が保存できるようになりました。 今後:バグがあったら直します。 制作ソフト/言語:Microsoft Visual Studio 2013 Express for Desktop / C#   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 PCアラーム Ver1.2:ダウンロード

自作ヘッドホンアンプ

紹介 半年ほど前に作ったステレオ拡張回路付き、ヘッドホンアンプの紹介です。ここで紹介する「ステレオ拡張」とは難しそうですが、実際は非常に簡単で右の信号と左の信号の差を増幅するだけの話です。   「ステレオ拡張」の話 ステレオの音声の場合、音声信号は左と右にあわせて二つあります。通常、左の信号はLであらわされ、右の信号はRとしてあらわされます。しかし、少し角度を変えてみてみれば、LとRの信号の共通部分のCという信号も存在することがわかります。 ここでは左の信号のみに含まれる信号をL、右にのみ含まれる信号をRとします。 よって、右の信号は(L+C)としてあらわされ、右の信号は(R+C)としてあらわせます。曲によって違いますが、一般的にCには歌声(ボーカル)がのせられ、LやRには主にインストラメンタルがのせられます。 モノの音声の場合、LとRの信号の違いは存在せず、両方とも「C」です。しかし、ステレオからモノの音声を合成する場合、右と左、両方ともに、一般的に「0.5L+C+0.5R」の音声が送られます。 今回作ったステレオ拡張回路では前段の差動増幅回路で「(L+C)-(R+C)=L-R」と「(R+C)-(L+C)=R-L」の作動増幅を行い、いったん「C」の信号を排除します。次にこの信号をゲイン(A)が調整可能な反転増幅回路に送り、-A(L-R)と-A(R-L)の信号を出します。最後にこれらの信号をそれぞれ右の入力信号(R+C)と左入力信号(L+C)に加算し、出力波を合成します。 こうすると出力波はこのような式であらわされます。 片方:A(R-L)-L-C もう片方:A(L-R)-R-C 出力波の構成は中段の反転増幅のゲインが大きく関係していて、それによって、どれだけステレオを「拡張」したいかが調整できます。また、ゲインが0のときは終段の加算増幅回路は-(L+C)+0と-(R+C)+0の加算しかしないため、普通のヘッドホンアンプとして使用できます(信号は反転されますが、聞こえ方は変わらないです)。 Aを調整した場合の出力波は以下のようになります。  A= 出力波1 出力波2 A A(R-L)-L-C A(L-R)-R-C 0 -(L+C) -(R+C) 0.5 0.5R-1.5L-C 0.5L-1.5R-C 1 R-2L-C L-2R-C 2 2R-3L-C 2L-3R-C 5 5R-6L-C 5L-6R-C   仮想グラウンド オペアンプは大体、両電源で稼働するため、電池では「仮想グラウンド」を作る必要があります。今回、「仮想グラウンド」はカレントミラー回路というトランジスタで構成された回路で作りました。つかったトランジスタは日本で簡単に手に入る2SC1815とコンプリメンタリの2SA1015です。9V電池で稼働する場合、+電圧は+4.5V、-電圧は-4.5Vとなります。トランジスタの個体差により、グラウンド電圧が実際に「0V」にならない可能性がありますのであらかじめブレッドボードでテストしてから基盤に実装しました。また、入力につられて、グラウンド電圧が揺らぐことがありますが、個人的にはあまり差が感じられなかったので、ある程度の「揺らぎ」は許容しています。   使用するオペアンプ ICソケットを使用しているため、オペアンプは簡単に交換できるようになっています。最初は本当にオペアンプを変えただけで音が変わるか疑っていたんですけど、実際にオペアンプを変えて音の変化を感じられたので、色々試してみました。 どれか一つがいいというわけではなく、組み合わせが重要だと感じました。結局最後は初段(差動増幅)にOP275、中段(反転増幅)にOPA2134PAと終段(加算増幅)にNE5532の計3種を使うことにしました。 普通にヘッドホンアンプとして、一つのICオペアンプのみを通して聴く場合、OPA2134は湿っぽすぎて、OP275はシャリシャリしすぎている気がしました。なので、ニュートラルだと感じたNE5532を終段に使うことにしました。あくまでも個人的な意見なので、参考程度にしてください。   ケース ケースは近所の百円ショップで買いました。穴あけもさほど面倒ではなく、電池交換やオペアンプ交換の際、蓋が取り外せるのがいいですね。

BatchRename Ver1.0を公開しました

指定した文字列を一斉にフォルダ内のファイル名から除去する名称変更ソフト – BatchRename Ver 1.0を公開しました。ファイル数1万でもサクッと読み込んじゃいます。   開発について 今回、一番頭を悩まされたのはGUIライブラリの「JavaFX」の「textarea」に文字列をバンバン短期間に足していくと、なぜかエラーが表示されるということでした。そもそもなぜ、短期間で大量に文字列を追加するとエラーになるのか未だにわからないのですが、とにかく、対策を考えるまではかなり時間を食わされました。 設定保存機能の追加はそれほど大変ではなく、XMLを処理するライブラリを足して、色々ファンクションを書いたりしたら普通にうまくいきました。 このソフトは初めて作ったGUIソフトだったんで、βバージョンでは後先考えず、GUIを描写するクラスと名称変更のロジックをすべて同じスレッドで処理してました。おかげさまで、βバージョンでは大量のファイルを読み込むときには画面がフリーズしちゃったんですw。そこを今回、ロジックを別スレッドに移すことでフリーズする問題を解消しました。所謂、「マルチスレッド」というやつじゃないですか。 あと、すごい単純な問題 なんですけど、JavaにはGUIを作成するためのライブラリが「Swing」、「awt」と「JavaFX8」などがあって、中にはお互い全く同じ名前のクラスがあったりするんです(たとえば「Font」)。でも、使い方が違ったりする場合もあるので、イチイチ目的のクラスを調べるのが大変なんです。たとえば、「Java Font」ってしらべても「awt」のほうがトップで表示され、「JavaFX」のドキュメンテーションが表示されないんです。だから、やり直して、「JavaFX font」って調べなおすんです。また、エラーが表示されて、原因が間違ったライブラリのimport文(「import javafx.scene.text.Font」じゃなく、「import java.awt.Font」)であったりすると少しうんざりしちゃいます。まあそれだけです。   説明 指定した文字列を一斉にフォルダ内のファイルから除去するソフトです。サブフォルダを含めるというオプションもあり、これらの選択値は「設定→デフォルト設定」から選択できます。設定はXMLファイルに保存されます。   動作環境 Windows(確認済み)、Linux(Ubuntuで確認済み)、Macintosh(未確認)。すんません、Java 8 以降をダウンロードしていないと動きません。Ubuntuだと sudo add-apt-repository ppa:webupd8team/java -y sudo apt-get update sudo apt-get install oracle-java8-installer を実行して、Java 8をダウンロードしてください。   こんなことができます 写真フォルダ内の写真のファイル名からすべて「DSC」や「PIC」を外す、一斉にファイル名からホワイトスペース「 」やアンダースコア「_」をなくす、などなど。   使用方法 まず、まとめて名称変更したいファイルが集まっているフォルダを選択します。次に、サブフォ ルダを含める場合はチェックボックスをチェックし、「該当ファイル表示」を押し、変更が適応されるファイルを表示します。最後に「実行」を押せば、名称変 更がファイルに適応されます。除去したい文字列はwordlist.ini内で改行して区切って記述してください。 wordlist.iniの記述例: #一番上の行はあけておいてください。除去したい文字列は以下に改行して区切って記述してください。 abc def この場合、”abc123.jpg”は”123.jpg”に、”definitionabcd.txt”は”initiond.txt”になります。   Beta版との違い ・高速化(ファイルの読み取りにはjava.nio.file.DirectoryStreamをつかっているため、速い。) ・デフォルトフォルダなどの設定が保存できる ・マルチスレッド化 ・Beta版では大量のファイルを読み込むときは読み込みが終わるまで画面がフリーズしたが、Ver1.0ではそうならない ・読み込み中、名称変更中はプログレスバー(ProgressBar)を表示 ・ファイルやフォルダにアクセス権限がないときはテキストエリアにそのことを示すエラーが表示される ・その他のエラーも表示するようになった   今後:なんかバグがあったら直そうと思います   後から発覚したバグ(次のバージョンで修正されます) ・「フォルダ選択」をクリックした後、結局選択せずに「該当ファイル表示」をクリックするとNullPointerExceptionエラーになる。   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 指定文字列除去ソフト(Ver 1.0):ダウンロード ↓BatchRename V3.0 を公開しました。↓ BatchRename V3.0  

TYPEMASTER Ver 1.0

タイピングゲーム速度測定ソフト 説明 自分のタイピング速度を測定できるソフト(ゲームじゃないです)です。当初はゲームっぽくする予定でしたが、なにか途中で飽きたのでw、この段階での公開となります。タイプする文章はtextlist.datというファイルに保存されていて、自由に編集することができ、デフォルトでは表示される順番は行によってシャッフルされますが、設定画面で無効にできます。現在、アルファベットの文章にしか対応していません。   制作環境 NetBeans(サイトURL:https://ja.netbeans.org/)という無料でオープンソースのIDEでJavaという言語で書きました。個人的にJavaは結構好きです。   動作環境 Windows(確認済み)、Linux(Ubuntuで確認済み)、Macintosh(未確認)。すんません、Java 8 以降をダウンロードしていないと動きません。Ubuntuだと sudo add-apt-repository ppa:webupd8team/java -y sudo apt-get update sudo apt-get install oracle-java8-installer を実行して、Java 8をダウンロードしてください。   Windows。Java 7 とかでも動いた記憶があるんですが、定かではありません。とりあえずJava 8 で作ったソフトなので、8があれば動くはずです。 Javaのダウンロードはこちらから。https://java.com/ja/download/   使用方法 表示される文言はtextlist.datに保存されていて、自由に編集できます。 編集する際の改行箇所は例文を参考にして作成してください。 デフォルトでtextlist.datから読み取った行はシャッフルされます。 無効にする場合はプレイする前に「設定」で無効にしてください。   今後 暇があれば、もっと作りこんで「ゲーム」っぽくしたいですね。気が向いたら日本語文章にも対応させたいと思います。気の向くままに気長に。   このソフトが起こしうるいかなる損害も責任を負いかねます。同意の上、ダウンロードしてください。 TYPEMASTER1.0 :ダウンロード ↓Version 2.0 を公開しました。↓ http://www.sonota.trance-cat.com/typemaster-ver-2-0/