04/30: GW集中連載! 真空管アンプを設計しよう! その3
さて、出力管を6C4Cに決めたところで、次はロードラインを引く必要があります。古今東西の真空管のデータシートを収集しているサイトFrank's electron Tube Data sheets(ミラーサイト)がありますので、ここから6C4C(6S4S)[pdf]のデータシートを取得します。が、ちょっと微妙ですね。2A3[pdf]ので代用しましょう。
2A3のデータシートを見てみると、2.5KΩ負荷のロードラインが引いてあります。2A3の代表的な動作ポイントEp: 250V, Eg: -45V, Ip: 60mAとはちょっとズレていますが、そのまま流用しちゃいましょう。大雑把な設計でもちゃんと動作するのが、真空管のいいところです :-)
上記のロードラインは微妙に最適化されていません。前掲の書籍『情熱の真空管アンプ』等を参考に、最適なロードラインを探してみるのも、いい勉強になると思います。
さて、先程のロードラインに戻ります。シート上ではEg: -87Vまでしか引かれていませんが、これをEp軸と交わるところまで延ばすと、およそEg: -110Vあたりで交わります。つまり、この動作条件では、入力110Vp-pでフルドライブできるということですね。
フルドライブに必要な電圧が判明したところで、次は初段を設計しましょう。という感じで続きます。
04/29: GW集中連載! 真空管アンプを設計しよう! その2
なぜ真空管でアンプを作るのか。半導体アンプと真空管アンプの音質の違いについて、世間では侃々諤々喧々囂々議論があるようです。曰く、真空管アンプの方が音が暖かいなどなど。しかし、個人的には設計、部品集め、実装、音出し、メンテ、どれを取っても真空管アンプの方が手間が掛かる点が気に入っています。手間の掛かる子ほど可愛いということでしょうか。また、そのほんのりと暖かく光る姿に何となく心が和んでしまいます。
さて、具体的な話に進みましょう。先日、6C4C(6S4S)という直熱三極管を、かなり安価で入手しました。ロシアのSvetlana製で、いわゆるWinged C[G]ロゴが付いています。6C4Cは6B4Gのロシア版、6B4Gは6A3のオクタルベース版、6A3は2A3のフィラメント電圧6.3V版、2A3はオーディオ用途で一世を風靡した著名な真空管です。つまり、6C4Cは由緒正しい駄球[G]と呼んで過言ではないと思います。今回はこの球を使うことにしましょう。
この6C4Cをどのような回路で鳴らすか、が次の問題です。シンプルにシングルアンプ[G]にするか、広帯域とパワーを期待してプッシュプルアンプ[G]にするか。今回は、世間で話題の全段差動プッシュプルアンプ[G]を採用したいと思います。現在弊社オフィスで活躍しているEL34アンプも、この全段差動プッシュプルです。
全段差動プッシュプルの利点は、高音質であることに尽きます。シングルの音質とプッシュプルの広帯域を、比較的容易に実現できちゃうんですね。反面、プッシュプルのようなパワーは期待できません。しかし、騒音も公害として取り沙汰されるこの時代、広いホールや郊外の一戸建てでもない限り、パワーは不要でしょう。
その他、全段差動プッシュプルについての詳細は、このアンプを世に広めているサイト情熱の真空管と書籍『情熱の真空管アンプ』を参照して下さい。という感じで続きます。
04/28: GW集中連載! 真空管アンプを設計しよう! その1
折角のGWですので、短期連作として真空管アンプの設計について書いてみたいと思います。本業であるところのソフトウェア開発とはまったく関係ありませんが、クラフトマンシップの発揮、クリエイティビティの発露ということで納得して頂ければ幸いです。
さて、皆さんは真空管を見たことがありますか? TV等に利用されているCRT(cathode ray tube、ブラウン管)は真空管の一種です。ちょっと年長の方だと、TVやラジオに真空管が利用されていたのを見たことがあるかも知れませんが、現代では半導体にその地位を奪われてしまっています。
ではなんでそんな真空管をわざわざアンプに起用する必要があるのでしょうか? という訳で続きます。
04/24: @ITに記事が掲載されました

ITニュースサイト最大手の@ITさんに、弊社の紹介記事が掲載されました。パチパチパチパチ
若きベンチャーの挑戦
ケータイ同士が直接相互接続する日
記事では、動画も用いつつ弊社プロダクトのSpearとSpearMultiを紹介して下さっています。P2Pと言うとWinnyに代表されるブラックなイメージが先行しがちです。しかし、この優れた技術とケータイとを組み合わせることで、よりよいユーザ・エクスペリエンスを提供していきたい。そういう想いをお伝えできればと感じております。
今回はこのような形で大きく取り上げて頂きましたが、慢心することなく謙虚に努力を続ける(株)吉田鎌ヶ迫に、これからもご期待下さい。
P.S. 今日で創業4年目になります :-)
04/11: ファイナンシャル・プランナー
大学時代の友人が、某大手生保でファイナンシャル・プランナーをやっているとのことで、色々と相談に乗ってもらっています。とは言え、資産運用するほどの貯蓄もなし、保険を受けとるカミさんも子供もなし28歳独身なワタクシは何を相談しているのでしょうか?
まずは、給与明細と源泉徴収票の読み方を習いました。ううむ、そうなっていたのかと納得いたしました。外堀を埋めて、次が本題です。
実は、毎月の給料をもちっと賢く使いたいな、と。率直に言ってしまえば、無駄遣いを減らしたいな、と、そういうことです。まずは毎月の収支を明らかにするところから着手です。結果、かなり趣味に生きていることが判明。現状把握は大切ですね。
締めるお金があることが分かれば、それを減らせばいい訳です。実は来年に向けてちょっとした目標があり、まずはそれに向けて毎月の貯蓄をしっかりと行うことになりました。
正直、相談に乗ってもらうまでは懐疑的だったのですが、いや、いいですよファイナンシャル・プランナー。それが仕事だと言ってしまえばそれまでですが、各個人の事情に合わせてカスタマイズしてくれる訳ですから、提案が無理なくしっくりくるんですね。弊社のビジネスにも応用できる部分があるのではないかと、色々と勉強になりました。
さて、続きです。
java.sql.Statementクラスには、INSERT文にて自動生成されたキーを取得するためのAPIが提供されています。それが表題のStatement#getGeneratedKeys()メソッドです。このメソッドの返り値はjava.sql.ResultSetのインスタンスになっており、そこからキーを取得できるという訳です。
MySQLならResultSet#getIntでキーを取得できます。シンプルでいいですね。ところが、Oracleだとそう単純にはいきません。同様にgetInt()すると、メモリの位置っぽい感じの謎な数字が返ってきます。getInt()ではなくgetObject()で取得して確認してみると、oracle.jdbc.ROWIDなるクラスのオブジェクトであることが分かります。
このROWID、擬似的なカラムと言いますか、ポインタと言っていいと思います。このポインタがINSERT文で生成されたカラムを差しており、コレに対してSELECT文を投げることでようやく求めるキーが得られるという訳です。
» 続きを読む
MySQLには、新しいレコードをinsertする度にIDを自動生成してくれるauto_incrementというカラム属性があります。PostgreSQLではserialを利用できるようです。が、Oracleにはこれらの機能がありません。しかし、sequenceとtriggerを用いて擬似的にauto_incrementを実現することができます。
ここまでならwebにある情報で何とかなります。んでは次に、この生成されたID取得するにはどうすればよいか。MySQLならAPI経由で取得する方法がありますが、JDBC経由のOracleならどうでしょう? insertしたカラムをselectする? いえいえ、もっと楽な方法があるのです。
ということで次回に続きます。

