齢寿天任せ

写真付きで日記や趣味を書くならgooブログ

SEPP トランジスタ・アンプを作ってみた

2021-05-18 14:20:28 | 電子工作

SEPPは、シングルエンディッド・プッシュプル・アンプのこと。出力トランスが不要の回路構成(OTL、アウトプット・トランスレス)になるのが最大のメリット。出力トランスは今となっては、入手が難しい部品。しかも、音質があまりよろしくない印象がある。今回、参考にしたのは、RFワールド・ウェブ・ブックス「ラジオで学ぶ電子回路」の「第13章 オーディオアンプ」。トランジスタによるA級シングルアンプ、B級プッシュプルアンプ、そしてSEPPアンプの動作原理と回路図が記述されている。

今時、個別部品のトランジスタでわざわざアンプを作る時代ではないけど、その昔、ラジオ少年だった頃、SEPPアンプは、憧れで、いつか作ってみたいと思っていた。たまたま、部品箱の一山いくらで入手したトランジスタの中に、コンプリメンタリ構成が可能なものがあったのがきっかけである。もう一つのきっかけは、前記のドキュメントの回路に、ダイオードが利用されていなかったことである。SEPPアンプといえば、終段のベース回路に、何故かダイオード(定電圧のバイアスと温度補償のためらしい)が数本挿入されているのが常で、これが型番指定で入手し難い。前記のドキュメントでは、同じ型番のトランジスタを向かい合わせで実装し、ベースとコレクタを直結してやればダイオードの代わりになるとあった。なるほどと思った。

使用したトランジスタは、中華のS8050(NPN型)とS8550(PNP型)。最大コレクタ電流が500mAで割と大きく、1Wぐらいは出る。しかも安い(まとめて買うと10円/個以下)。あと、定番の2SC1815(オリジナルは東芝)を初段に使用した。これらのトランジスタ、パッケージはモールドタイプで同じなのにリード線の配置が異なる。中華は、EBCの順、東芝はECBの順である。注意が必要。理由は不明であるが、ベースには、入力があり、さらに固定バイアスを掛けるので部品が集中する。真ん中にあるより外側にある方が都合が良いと思うがどうだろう。

回路上、2Ωと指定されていたR2~R5は、手持ちの都合で、3Ωに変更した。またR1は、1KΩから430Ωに変更、VR1は、100KΩに固定した。電源は、UCBからの5V供給に変更。終段のエミッタの電圧が、2.5VになるようVR1を調整する必要があるが、100KΩでは、2.1V位になった。出力特性として、若干歪みがあるかもしれない。以上を、5cmx7cmの基盤上にステレオ構成で実装した。なお、ドキュメントの最後にある入力側の平衡回路は実装していない。

使用してみた感じでは、音質は好印象、音量も十分、歪もそんなに感じない。まずは、成功の部類か。利得が高いので、入力は10KΩ:1KΩ(GND側)に分割減衰した。ボリュームは必須だと思う。

電源はUSBから取るようにしたが、驚いたことが2つ。スマホの充電アダプタから取ると、DC-DCコンバータの発振周波数がそのまま聞こえる。これはダメ。パソコンから取るとマウスを動かす度に、「ギュルギュル」と雑音が入る。これもダメ。結局、スマホのモバイルバッテリーから電源を取るようにした。


みずほ銀行からマイレージクラブカードの更新ができなくなりますというハガキがきた

2021-05-03 20:47:51 | 日記

マイレージクラブカードは、クレジットカード機能付きのキャッシュカードである。だいぶ昔、マイレージクラブに入会時にキャッシュカードから切り替えた記憶がある。以来、クレジットカードとしては利用せずにいた。それでも、有効期限になると自動更新されていた。どうも、その方針が変わったらしい。これも、みずほ銀行の、個人顧客切り捨ての一環かなと思う。

ハガキには、有効期限前にクレジットカード機能を利用するか、コールセンターに連絡せよとあった。両方とも無視すると、クレジットカードなしのキャッシュカードに強制切り替えになるともあった。新しいキャッシュカードは、郵送してくれるそうだが、期限切れのマイレージクラブカードはキャッシュカードとして使えなくなると書いてある。これ、住所変更してない人はどうなるんだろう。ある日突然、ATMから引き出しができなくなるのではないか。例のATMによるキャッシュカードの飲み込みより怖い話だと思う。

結局、楽天市場で、いつものカードではなく、マイレージクラブカードを使って、用のないものを買ってしまった。


マイナンバーカードの問題点

2021-03-07 18:05:22 | 日記

政府はマイナンバーカードの普及に躍起である。肝いりのマイナポイントは、チャージ額はクリアしたが、コロナ禍もあって、利用額はクリアできていない。期限が延長になってホッとしている。3月から、マイナンバーカードが健康保険証として使えるようになったと広報されている。現状、マイナンバーカードには、問題点がいくつかあって、また、問題になる点を追加するのかと思う。

マイナンバーカードには、2種類の電子証明書が格納されている(できる)。分かりにくい政府の呼称をそのまま使うと「利用者証明用電子証明書」と「署名用電子証明書」である。問題点は、後者の電子証明書である。この中には、個人を識別する4情報(氏名、住所、生年月日、性別)が含まれている。問題点の一つは、住所が含まれていることに起因する。このため、引越しをして住所が変わると、マイナンバーカード内の電子証明書を書き換えなければならないという手間が生じる(※)。この電子証明書の書き換え装置はどこにでもあるというものではなく、以前、マイナンバーカードの前身である住基カードの頃、たまたま、支所で住所の変更をしたところ、電子証明書の書き換えは本庁でないとできないと言われ、わざわざ本庁までいって電子証明書を書き換えてもらったことがある。今でも、余分な手続きが必要で、窓口が違ったりして、不便極まりない。そもそも、署名用電子証明書の仕組みとして、「住所」は必須ではない。署名した文書を解読した時に、「氏名」があれば十分である。

※「利用者証明用電子証明書」には、住所が含まれていないので、住所変更してもそのまま使える。一方、マイナンバーカードには、券面記載事項も格納されているので、住所変更時には、この書き換えも必要となる。偽造防止に必要ということになっているが、これも使い道が殆どがないので止めて欲しい。今のマイナンバーカードの使い方はスマホで写真を撮って送るというのが一般的なので、券面記載の変更で十分である。

一方、この署名用電子証明書の使い道は殆どないのが現状である。以前は、e-taxによる確定申告において、確定申告書の送信時に、この署名用電子証明書による署名を要求されたが、最近は、IDとパスワードに切り替えられ、マイナンバーカード自体が必要ではなくなった(IDとパスワード発行時には必要)。さらに指摘すると、なんらかの手続きにおいて、電子証明を求められ、この署名用電子証明書を利用すると、個人を識別する4情報(氏名、住所、生年月日、性別)がダダ漏れになる。その様子は、ここに紹介されている。したがって、余程信頼がおける送付先に書類を送る時にしか、この署名用電子証明書は利用できないのである(使ってはいけないといっても良い)。前記の確定申告書の送付時には、そもそも送付する確定申告書に住所や生年月日が記載されているので「署名用電子証明書」内の情報自体は不要である。

結論として、「署名用電子証明書」から、「住所」は除いて欲しいものである(生年月日、性別も)。こんな基本的な問題を放置している状況で、マイナンバーカードが健康保険証として使えるようになった場合に、デリケートな健康情報が、ダダ洩れにならなければよいが。

 


ESP32-DevKitCによるインターネットラジオの製作

2021-03-05 14:28:01 | 電子工作

【最後に追記があります】

ESP32-DevKitC(以下ESP32)を使って、インターネットラジオを作成する実験を行ってみて、結構使えることが分かったので、実用的なものを作成しようと思った。インターネットラジオ局のデータストリーム(MP3)を音声にデコードする部分はライブラリがそのまま利用できるので、インターネットラジオの操作機能を実現する部分(Arduinoのスケッチプログラム)を製作すれば良い。なお、ESP32とはWiFiで接続するために、WiFiのアクセスポイントが必要であり、そのSSDとパスワードは、Arduinoのスケッチ内に記述する必要がある。

目標機能は以下の通り。

・インターネットラジオ局を予め複数設定して置き、切り替えができる。
・音量の調整ができる。
・60分程度で省電力モード(スリープ)になるスリープ機能。
・表示機能を付ける。

さらに、これらを、ブラウザからも操作可能とする。また、新たなインターネットラジオ局を見つけた時に、それが実際に聴けるかどうか確認するため、一時的なURLを設定できる機能も実現することにした。

表示装置には、SD1306 128x64 OLED表示装置を利用した。ESP32にはI2C(アドレスは既定のまま)で接続する。AmazonやAliexpress(※1)で数百円で購入できる。表示される文字数の制限があるので、アーティスト名、曲名の表示は気休め程度である。日本語は表示できない(ブラウザには表示できた)。他に音量、インターネットラジオ局名も表示する。なお、ブラウザからアクセスした場合にも、同様な表示を行う。したがって、この表示装置自体は無くてもよいことになる(起動できたかどうか確認する時など少しだけ不便)。
※1Aliexpressには一般のクレジットカードではなく、プリペイドカード(記名式のもの。匿名のものは利用不可)を使うことを強く推奨。

上記の目標機能の操作は、タクトスイッチ(4個接続)を押して行う。ブラウザから操作する場合には、それぞれのボタンが表示されるので、クリックすればよい。したがって、タクトスイッチが無くても、パソコンやスマホから操作はできる(タクトスイッチは省略可)。結局、最小構成は、ESP32とI2SのDACがあればOKである。

インターネットラジオ局のURLは、shoutcast.com (”LISTEN”メニューをクリック)から、m3uファイルをダウンロード(※2)すると、その中に記述がある。ただし、キチンと再生されたらラッキーである。まず128Kbps、MP3のものを選択すること。データストリームに何かしら細工がしてあるものは残念ながら正しく再生できない(例えばradikoがそう)。また、chunk形式のものは音が途切れる。適切なインターネットラジオ局を見つけるのは、なかなか難しく、苦労が必要。折角、見つけたと思っても、URLが変わることがある。
※2ブラウザによってダウンロードアイコンをクリックしてもダウンロードできないことがある。例えばIEがそう。

実際に使ってみて、十分実用になると感じた。ただ、常時150Kbps程度の通信が必要なので、回線状況によっては、やはり音が途切れることがある。WiFi接続も不安定な場合(距離や競合、電子レンジの影響)は、音切れが生じる。

機能を拡張しながら、色々評価してみて、結局、ブレッドボードから、ユニバーサル基板に実装し直し、MAX4410のヘッドホンアンプを追加後、 写真のように、古いLANルータのケースに収めて実用にしている。電源は、スマホの充電アダプタ(5V)を流用し、古マウスのUSBケーブルで接続。音声出力はオーディオジャック経由でスピーカー(ステレオ)に接続している。さらに興味のある方、Arduinoのスケッチプログラムや操作方法などは、GitHubを参照頂きたく。

【追記】

・このインターネットラジオで2年以上楽しんできた、asia DREAM radioのURLがサーバーの更新で2023/5/5に変更されました。新しいURLは以下の通りです(スケッチプログラムの中に記述してあるURLの書き換えが必要)。

  • J-Pop Sakura "http://cast1.torontocast.com:2170/stream"
  • Japan Hits "http://cast1.torontocast.com:2120/stream"
  • J-Pop Powerplay "http://kathy.torontocast.com:3560/stream"

新しいサーバーは音声が前より途切れがちな感じです。なお、asia DREAM radioサイトのWINAMPの設定ファイルをダウンロードすると拡張子plsのファイルの中にURLが記述されてます。

・Arduino IDEに追加するボードマネージャのesp 32 by Espressif SystemsにはVersionが、2.0.xと1.0.xがありますが、2.0.xでは音がでません。1.0.xを使ってください。1.0.6で動作を確認してます。

・MP3のデコードを行うライブラリは、更新され、かなり変わってます。最新のものを使うとコンパイルエラーになります。当時のライブラリはGitHubのスケッチプログラムの”src”フォルダに保管してあります。

 


みずほ銀行から、1年間記帳がないので通帳が使えなくなりましたというメールが来た

2021-02-17 15:06:16 | 日記

2021/2/20 追記あり

正確には、メールのタイトルは「【重要なお知らせ】通帳を発行しない「みずほe-口座」への自動切替のご連絡」というもの。「通帳を発行しない」ので、通帳への記帳はできない(つまり「通帳」として使えない)とのこと。毎年、1月末に、1年間記帳がない口座は、自動的(強制的に)「みずほe-口座」に切り替えになる。最近のメガバンクの個人顧客切り捨ての風潮を苦々しく思っていたが、ついに極まった感がある。ちなみに、「みずほe-口座」に切り替わった口座を、「通帳口座」に戻すには、「本人」が窓口に行かなければならないとのこと。「本人」は「代理人」でも良いかどうかを、コールセンターに問い合わせたが、埒が明かなかった。しょうがないので、取引支店に電話でクレームを伝えたら、記帳なし期間を1年間延長(つまり「みずほe-口座」への自動切替を1年猶予)してくれた。

そもそも「みずほe-口座」の使い方も分からない。キャッシュカードがない場合に、切り替わった「みずほe-口座」から、どうやって預金を引き出すのか、問い合わせました。以下回答です。

「当初キャッシュカードを発行されていない場合には、お近くの窓口でご本人確認ができる資料・お届け印により、お引き出し可能となります。口座番号の確認のため、使用できなくなった通帳もお持ちいただけるとスムーズにお手続きいただけます。」

本当に通帳が使えなくなるんだ。ダイレクト口座を持ってなくて、パソコン、スマホに馴染んでいない人はパニックだよね。

こういう事態を避けるための裏技を考えて見た。みずほ銀行の「みずほe-口座」のQ&Aに「通帳単位(1冊)ごとに判定されます。そのため、総合口座通帳に含まれるすべての口座が切替対象であった場合のみ、総合口座通帳の口座がみずほe-口座に切り替わります。(切替対象外の口座がある際は総合口座通帳の口座はみずほe-口座に切り替わりません)」とあり、定期については、「期間+1年」は記帳が無くても切り替わらないとも記述があったので、総合口座の10年定期にすれば(ほぼ)大丈夫かもしれません。問い合わせてみました。以下回答です。

「総合口座(普通・定期・貯蓄預金)のお取引が毎年1月末までに、すべての預金項目が通帳記帳されなかった時点で、みずほe-口座となります。定期預金の場合は、預入期間中記帳いただけないことから、預入期間+1年間の間記帳がない場合にみずほe-口座への切替対象となります。ご指摘の通り、定期預金の満期がまだ到来していない場合は記帳しなくても切り替わりません。」

裏技使えそうです(みずほ銀行のことですから、後出しでルール変わりそうですが)。

 


ESP32-DevKitCでインターネットラジオを作ってみた

2021-02-03 13:49:21 | 電子工作

ESP32は、WiFi、Bluetoothが搭載されたマイコンです。ESP32-DevKitCは、PCとUSB接続ができる開発ボードです。開発環境はArduinoIDEに追加でインストールすることができます。ESP32-DevKitCは、Amazon、AliExpress、秋月電子などで入手できます。30PINの物と38PINの物がありますが、小振りの30PINの物が扱いやすいです。

開発ボードをブレッドボードに載せると幅を取るため、配線に難儀します。そのため、ブレッドボードを2枚並べて使います(2枚目の電源ラインは取り外す)。音を出すため、ESP32とDACのボードを、I2Sで接続します。DACボードは、UDA1334が搭載された物を使いました。PCM5102が搭載されたボードも同様に使えます(下記のGitHubを参照)。

インターネットラジオ局にアクセスして、MP3のデータストリームをダウンロードし、デコードするESP32側のプログラムは、GitHubにありますので、これを利用させて頂きました。感謝です。ESP32とUDA1334の接続は、GitHubのadditional_info/ESP32_I2S_UDA1334A.JPGを参照してください。ライブラリとして、Audio.hの追加が必要で、これはsrcディレクトリにあります。GitHubからZIP形式でダウンロードし、ArduinoIDEにライブラリとして取り込むと手っ取り早いです。

GitHubサンプルソースのI2Saudio.inoをコピーし、その中の変数ssidとpasswordを、実際にアクセスするWifiポイントのものに書き換えた後、ESP32に書き込むと、インターネットラジオ局(ドイツ?)が再生されます。インターネットラジオ局を変更したい場合は、ソース中の変数、audio.connecttohostのところを書き換えてください。

写真注 小型のスピーカーを接続。PINの接続は変更してます。


電子工作するならAliExpressを利用しない手はない

2021-01-31 13:20:59 | 電子工作

電子工作をする場合に、部品の入手が中々厄介です。秋葉原に行けるならともかく、地方では無理。通販の定番は、秋月電子やaitendoですが送料が障害、まとまった購入でないと二の足を踏んでしまいます。Amazonでも入手できますが、どうしても割高。そこでAliExpressの登場です。

一例を挙げると、 Si4703 FM ラジオチューナーボード。Amazonでは、¥637(送料込み)。AliExpressでは、¥250(同)。ESP32の開発基板。Amazonでは、¥900位(送料別)。AliExpressでは、¥512(送料込み)。FMラジオのキット。Amazonでは、¥549(送料込み)。AliExpressでは、¥228(送料込み)。利用しない手はないと思います。難点は到着まで時間がかかることと支払いの2点。前者は、輸送がハンドキャリーだったり、第三国を経由したりするので、平均4週間位かかります(大金払って直送10日間も可能ですが)。これは、前広に注文することで何とかクリアするしかないです。

支払いの点ですが、クレジットカードは使えます。しかし、彼の国のことですから、心配な点があります。そこで、登場するのが、プリペイドカードです。プリペイドカードは審査がなく、個人情報の確認が緩い(書留郵送や本人受け取り郵便)です。私の場合、Dカードプリペイド(無記名)とWebMoney(無記名と記名の2枚)を取得しました。発行手数料もなく、年会費もありません。当初、WebMoney(無記名)を使用していたのですが、突然、無記名のものは海外通販には利用できなくなり、急遽、WebMoney(記名)を追加取得しました。WebMoneyのプリペイドカードは、スマホにアプリをインストールし、そこから申し込む方式です。スマホの利用が信用担保になっているようです。AliExpressで注文すると、即座にスマホのアプリに反映されます。難点は、利用履歴がスマホからしかアクセスできない点でしょうか。チャージはセブン銀行ATMでできます。クレジットカードや銀行口座からのチャージもできますが、最低額が3000円なので利用していません(用心のため、購入の都度、1000円単位でチャージ)。

AliExpressの利用状況ですが、電子パーツを主に数十回の利用で、不着はゼロ、輸送中の破損1件(返金済み)です。意外と優秀です。ただ、一般に、梱包が緩いので壊れやすい物は要注意です。物品のトータルな品質については、所謂、中華品質(日本のようにキッチリしてないというか緩い。雑音が許容範囲外で即ジャンク箱行きとか)です。高価なものは自己責任で利用してください。他にも細かい注意点は多々あります(例えば電気製品は、プラグが違うとか日本の規格に適合してない。衣類のサイズは中国規格(微妙に合いません)。等々)。あと、11月11日は、「独身の日」で、大セールがあります。


Si4703搭載FMラジオチューナ評価ボードによるFMラジオ その2

2021-01-30 11:45:33 | 電子工作

Si4703搭載FMラジオチューナ評価ボードを使ったFMラジオを製作したが、選局・音量の調節はパソコンが繋がっていないとできないという難点があった。
どうせパソコンを点けているならRadikoで聞けばと云われそうなので、パソコンなしで、選局・音量の調節ができるようにする。
最小スペックは、タクトスイッチを選局に1個、音量の大小に2個付ければ良いのだが、選局時には何回もタクトスイッチを押さなければならない上に、どの局を受信しているか分からなくなる。
そのため、放送局ごとに専用のタクトスイッチを割り当てることにした。この地方では、FM局がコミュニティ局も含めると10局以上あるので、音量調節も含めるとタクトスイッチが12個は欲しい。
問題点は、Arduinoでは、それだけのタクトスイッチを直接制御できない(おまけに配線の数がとんでもない)ことである。
そこで、Aitendo(パーツ屋さん)をサーチして、いいものを見つけた。16個のタクトスイッチを搭載したキーパッドである。このキーパッドには、PCF8574が載っているので、AruduinoからはI2Cで制御できる。配線は、4本で済む。
このキーパッドの制御には、ライブラリが2つ必要である。
Keypad_I2C.h (Github)
Keypad.h
プログラムでは、Keypad.hのexamplesフォルダにあるHelloKeypad.inoが3x4のキーパッド対応なので、4x4用に改修して利用している。


// keypad
const byte ROWS = 4; //four rows
const byte COLS = 4; //four columns
char keys[ROWS][COLS] = {
  {'f','b','7','3'},
  {'e','a','6','2'},
  {'d','9','5','1'},
  {'c','8','4','0'}
};
// Digitran keypad, bit numbers of PCF8574 i/o port
byte rowPins[ROWS] = {0, 1, 2, 3}; //connect to the row pinouts of the keypad
byte colPins[COLS] = {4, 5, 6, 7}; //connect to the column pinouts of the keypad

実際のキーパッドのタクトスイッチとの対応は、左上から右下へ、’0’、’1’、’2’、…、’e’、’f’の順に対応している。 ’0’から’b’までは、各FM局の選局に対応させ、’e’、’f’は音量調節に使用する。プログラムはGithubを参照(利用は自己責任でお願いします)。
なお、最後の選局結果と音量を記憶しておくため、ArduinoのEEPROM機能を利用している。

(注)このキーパッドは部品のキットなので、60か所位ハンダ付けが必要です。また、ICのソケットとピンヘッダは付属してませんでした。

100均のホビーケースに入れてみました。黒色のタクトスイッチで選局します。黄色と赤色のボタンは音量調整用です。電源には、壊れたマウスのUSBケーブルを使ってます。中身の写真も載せておきます。Si4703基板、Arduino NANO、レベル変換基板が並んでます。



Si4703搭載FMラジオチューナ評価ボードによるFMラジオ

2021-01-30 11:16:16 | 電子工作

sparkfunのSi4703搭載FMラジオチューナ評価ボードの中華ものが、Amazonで安く(500円位)出ていたのでFMラジオを製作してみた。
このボードには、アンプも載っていて、オーディオジャックもあるので、直ぐに鳴らすことができ、使い勝手が良い。
Si4703は、I2Cで制御できるので、手元にあったArduino nanoと組み合わせることにした。
Arduino nanoとの接続は、以下の通り。 Aruduino側が5Vで3.3VのSi4703側と直結できないので、電圧レベルの変換(変換基板はAmazonサイトにあり)を行っている。

 Arduino      Si4703
 3.3V - 3.3V(VCC)
 GND    - GND
 A4  - (5V-3.3V) - SDIO (I2C)
 A5  - (5V-3.3V) - SCLK (I2C)
 D2  - (5V-3.3V) - RST
 D3  - (5V-3.3V) - GPIO2

試しに鳴らしてみるには、Sparkfunのサイトを参照して、DOCUMENTSタブにあるHookup Guideを参照すると良い。

まずライブラリ Si4703_Breakout.h をArduino IDEにインストールする。Hookup GuideのInstalling the Libraryの節にライブラリへのリンクがあるので、Si4703_Breakout.zipファイルをダウンロードする。Arduino IDEからこのファイルをライブラリにインクルードしてやれば良い。

Si4703_Breakout.zipファイルを解凍すると、examplesフォルダがあるので、その中のスケッチSi4703_Radio_Test.inoをArduino IDEに読み込む。次に、このスケッチをコンパイルしてAruduinoに書き込む。
あとは、Arduino IDEのシリアルモニタを起動してやれば、Hookup Guideにあるような画面が表示される。


FM局のプリセット選局コマンド”a”,"b"やSEEK UP/DOWNのコマンド”u”,"d"を入力して何かレスポンスが表示されればスケッチが動いている。

ただし、このままでは欧州での設定のままなので、日本向けにするためにはちょっと細工が必要である。Arduino IDEのライブラリのソースを変更する。既定だと…\Documents\Arduino\libraries\Si4703_BreakoutフォルダにあるSi4703_Breakout.cppの29行目辺りと150行目辺りの2行を以下の様に変更する。これで、受信周波数が76-108MHzに変更され、ワイドFM対応となる。

29行目辺り
newChannel -= 7600; 
150行目辺り
 si4703_registers[SYSCONFIG2] |= (1<<6);

あとは、スケッチ中のFM局のプリセット選局コマンドの周波数をローカルのFM局の周波数に変更してやれば良い。void loop()関数のコマンド”a”,"b"の処理のところで例えば以下のように変更する。

channel = 825; // 82.5MHz NHK FM

オーディオジャックに接続したケーブルがアンテナになっていて、受信感度は室内でも十分実用になる。