電子工作

LEDドライバ

| コメント(0)

 MCUでスキャンするのが面倒くさくなったので(笑)。

TM1630
 TM1630

 深圳の半導体メーカーTitan Micro Electronics(天微电子股份有限公司)のデバイスで多桁LEDドライバとキースキャン入力の複合デバイスであるTM1630を使ってみました。
 MCUとはSTB, DIO, CLK3線で通信し、桁スキャンは内部のレジスタに書込んだデータに従ってデバイスが行ってくれます。輝度も7段階に変更できて最大桁数5桁(7セグメントのみの場合)あるいは4桁(7セグメント+1セグメント)のLEDをダイナミックドライブします。MAXIMのMX7291/MX7221と同様に使えますが、桁数が少ない分かなりデバイス価格が抑えられていて手を出しやすくなっています。
 TM1630と同じく秋月電子で販売されている上位デバイスであるTM1637はArduinoのライブラリがあったのですが、こちらはライブラリが見つかりませんでした。通信は普通にクロックをパタパタさせてストローブで確定という74HC595に似た仕様でしたので練習も兼ねてライブラリ化してみました。

サンプルスケッチ動作中
 プロトシールドでサンプルスケッチ動作中
 (上下逆なのは小数点を別の用途で使うために左上表示にしています)

 ライブラリ:TM1630.zip
 リンクを右クリックでリンク先ファイルをダウンロードして下さい。
 ライブラリはZIP形式のライブラリをインストールする事で利用できるようになります。
 スケッチ例として1桁点灯の簡単なサンプルを入れてあります。

 LED表示機能はArduino Diecimila(秋月互換ボード), Uno, Nanoで動作確認しています。
 信号線のピン配置はTM1630.hの中で次のように定義していますが、ヘッダファイル読み込み後、メッソッドbegin()の呼出し前に定義し直せば変更できます。
#define TM1630_STB 13
#define TM1630_DIO 12
#define TM1630_CLK 11

 あと使用上の注意が1点。
 デバイスの仕様なのか、キー読み取りをして輝度設定を行っても有効になりません。
 データシートのフローチャートでは表示データ送信後に輝度設定を行い、その後にキースキャンするという流れになっていて、初期状態もしくはキースキャンでは無く何らかの表示データの送信を行った後でないと輝度設定が有効にならない様です。キースキャンを行ってその値を見て輝度設定を行っても一向に反映されないのでかなり悩みました。

 ライブラリはGPL v.2に準拠したものとし、無保証かつ使用した事により生じたいかなる不具合・事故その他の事象一切に対して作者は責任を有しません。利用に当たっては使用者の自己責任の下で行うものとします。
 と、まあ、こんなお約束事を一応書いておきますが、ご自由にご利用下さい。

デジタルパワーアンプ

| コメント(0)

 ずいぶん前(2013年1月頃)に筐体に組込んで製作していたのをリニューアル。

TPA3123D2パワーアンプ
 TPA3123D2パワーアンプ
 デザイン共通化なので見た目はほぼ同じです

 基板だけ製作し終えてどうしようかと放置していたのを、デジットのオーディオキット製作体験会の時にやっつけでフロントパネルを作って筐体化したものの不満が残っていて燻っていたのをリニューアル。

TPA3123D2パワーアンプ(旧)
 当時の製作物の様子

 なんか悔しかったのかどうでも良かったのか(笑)古い方のフロントパネルのまとな写真はありません。リニューアル前にも撮影すらしていないという・・・。
 ロッカースイッチを電源スイッチに使っていたのですが、アンプの中身がスカスカなため押し込むとアンプ筐体ごと移動してしまい大変押しにくい状態だったのがすごく使いづらかったため、トグルスイッチに変更し、パイロットランプの位置も中央だったのを最近製作しているアンプ類の汎用的なデザインへと変更しました。
 しばらく会社のモニター・スピーカーに接続して使っていたのですが、電源をオン・オフする度にイラっとしていたのはやっと解消されました。
 また、フロントパネルに実装していた3.5φmmステレオミニジャックも配線ごと撤去してやりました。ボリュームのノブとパネルの隙間も大きいので可変抵抗器のパネル取付をオフセットして、ほぼ隙間無しにノブが付けられるように取付け方法を変更。
 本当に自分で見ていてイライラするぐらいデザインや配置が適当でしたね。
 とりあえず「繋いで鳴れば良いや」的ないい加減さで製作してしまい、じっくり考察・デザインしてから製作しておくべきだったと悔やまれます。

筐体内部
 筐体内部

 製作したキットDAMP-3120NWの説明書と回路はほぼ同じです。
 電源強化の25V/15,000μFの電解コンデンサーの端子にカプトンテープを被せて筐体内での短絡防止をしています。
 実は1回接触させてヒューズを飛ばした事があったので・・・(苦笑)。

 入力を一度分岐基板に通しているのは将来的にレベルメータ内蔵を想定しているためです。当初は直結させていたのですが、レベルメータ用にさらに可変抵抗の端子に配線を増やすを避けるために分岐基板を間に挟むことにしました。

 個人的な音の感想ですが、すっきりとした高音まで良く延びた音です。
 最近のデジタルパワーアンプデバイスは、ほとんどが放熱器不要で小さい外形なのですが、リニアアンプの頃の大掛かりな基板や放熱器から比べると音も良く、本当に隔世の感がありますね。

便利小物(#12)

| コメント(0)

 汚れを拭払したりするのに使う溶剤をお手軽に。

ハンドラップ
 ハンドラップ

 汚れを落としたり、フラックスの洗浄にイソプロピルアルコール(IPA)を使っているのですが、毎回フタ付き容器から小分けして使うのも面倒くさいですし、口から滴下できる細い口の容器もいちいち蓋を閉める面倒なので、ずいぶん昔の職場で使っていた物をふと思い出して購入。

 溶剤を瓶に入れ、上部の皿を押すとポンプで下から吸い上げて来て皿に溜まる仕掛けです。
 基本的には常時フタが締まっている状態なので蒸発もほとんどありませんし、万一倒してしまってもドバドバこぼれる事もありません。脱脂綿やティッシュ等で複数回ポンピングするとしっかりと濡れるまで湿す事が簡単に出来ます。もちろん皿に溜まった状態ならば綿棒などにも湿す事ができます。
 必要な時に必要なだけ出せますので大変便利です。強燃性や引火性の高い液体を扱う時は近くに火気が無いよう注意が必要ですが、普通の環境ならほぼ心配無く安全に取扱できるでしょう。

 グリセリンを入れておけばコットンに染ませて顔に塗る等すれば保湿剤として化粧品代わりにといった少量の液体を手軽に扱えるようにできていて、一度使うと手放せなくなります。

デジタルパワーアンプ

| コメント(0)

 熱くならないアンプ、いや、暑くならないアンプ。

TPA3110デジタルアンプ
 TPA3110デジタルアンプ

 モジュール基板はヒートシンクに隠れて型番が見えませんが本当なら(笑)TPA3110D2を使ったD級オーディオ・パワーアンプの中華なモジュールをメインにしてお手軽アンプを製作しました。
 居間にある純A級アンプがかなり発熱していて、そのせいで部屋が暑くなるため部屋が暑くならない(熱くならない)アンプに代打として運用する目的です。空調を掛けた時に、たぶん部屋の温度は早く下がるだろうと期待しています。

 TPA3110D2は8〜26Vと広い電源電圧範囲で動作し、12Vの電源電圧で片チャンネル10Wの出力が得られます。電源電圧が16V取れれば片チャンネルで15W出せますが、通常の個人宅だとそんな出力は持て余すだけでしょう。
 各種保護回路が充実していて、可変電力リミッタ、入力のDC検出回路、出力側は短絡保護と過熱保護がなされていて、異常状態から正常状態に戻った時に自動復帰する事ができます。

筐体内部
 筐体内部

 始めに電源増強にとデカップリングコンデンサに15,000μFを付けると電源電圧の立ち上がりが遅過ぎてフォールトします。外した状態でも定格1.0A程度のショボい電源で立ち上がりが遅いと同様にフォールトするようで初めは電源をオンにして直ぐに音が出なくなってしまってどういう現象なのか訳が判りませんでした。
 加えて、このモジュールの外部端子の表記がどうも怪しくて、完成後にスピーカーを鳴らしてみると定位がおかしく、広がってぼやけています。どうも左右の位相が逆の様でしたので片方のチャンネルのスピーカー接続をプラス・マイナスを逆にすると落ち着きました。デバイスのピン配置から推測するに表記の'R側は正しい様ですがL側は極性が逆の様で、結局L側の極性を逆にしてスピーカー端子に接続しています。

 今回もフロントパネルを半透明にしてレベルメータを仕込みました。

レベルメータまわり

レベルメータまわり
 レベルメータまわり

 レベルメータは以前に製作したレベルメータデバイスのLA2284を今回も使用して、Bluetoothオーディオ同様に上部レールガイドにアルミL型アングルを保持具として組み込みをしています。
 筐体に組み付けるとパイロットランプやボリュームの端子と干渉するのでこの幅でなければ組み付けできません。おかげで裏側をお見せできませんがUEWを使って高密度配線です。

 音質的には改めて評価をする予定ですが、ちょっと試聴した段階では良いとも悪いともなんとも判断しかねる感じです。スピーカーとの相性もあるでしょうし、色々試してみようと思います。

UNO R3 互換ボード

| コメント(0)

 秋月製Arduino UNO R3互換ボード。

AE-ATMEGA-UNO-R3
 AE-ATMEGA-UNO-R3

 最近発売開始されたArduino UNO R3互換ボード。
 秋月電子からはArduino Duemilanove互換になるAVR ATmega用のマイコンボードもありますが、こちらはボードサイズ・形状ともUNO R3と互換です。
 オリジナルよりもかなりお求めやすい価格です。キットと完成品の価格差はわずかですが、やっぱり「作る楽しみ」を充足させたかったのでキットを購入し、サクッと製作。

 先般製作したISPシールドを載せてブートローダー書込み器として常用しようかと導入。
 キットとは言え表面実装部品はすでに実装済みなので、コネクター類しかハンダ付けする部分はありません。ATmega328PはDIP品ですので、もし破損しても交換ができます。
 キットに付随していたATmega328Pはすでにブートローダーは書込み済みの上、ピン配置がわかるラベルが貼付済みの親切品。
 USBコネクタのケースが、ケースのシールドと干渉して短絡等しないようにカプトンテープを貼っておきます(なので金色に見える)。
 ArduinoISPのスケッチを書込んでISP書込みの動作を確認。あたりまえですがなにも問題なく正常に動作します。
 海外の互換ボードでは通信用のチップが中華なUSB〜シリアル変換のCH340だったりしてドライバーをインストールする必要があるかも知れません。私の場合macOS Mojaveではそのまま対応しているので、プラグ&プレイでした。

 ボードを良く観察するとオリジナルのUNO R3とほぼ同じです。VIAの径が大きいのと、通信用のATmega16Uの水晶発振器が表面実装タイプになっているぐらいでしょうか。あとはJP2のシルク印刷が省かれているぐらいで互換の完成度は高いです。
 他の互換ボードと同じく、ボード情報を取得してもボード名とシリアル番号が取得できないのは仕方の無いところでしょう。

ISPシールド

| コメント(0)

 市販はされているようなのですが自作。

Arduino ISPシールド
 Arduino ISPシールド

 Arduinoブートローダーを書込む作業に手っ取り早く実現するためにISPシールドを製作しました。
 macOSのArduino IDEでブートローダーの書き込みは普通にAVRISP mkIIが使えるのでそれでも良かったのですが、いままで製作しているATmega328Pのボードはすべて内部クロック動作だったので外部水晶発振子を付けた基板が1つもありませんでした。
 初めは外部クロックをつけただけのISP書込み基板を製作しようとしていたのですが、どうせならとISPもできてArduino UNOをライターとして使えるシールドとして製作する事にしました。それほど頻繁にブートローダーを書込む事もありませんし書込み専用基板とするよりもなんとなくカッコイイので(笑)。

 回路はオープン・ハードウェアなので公開されています(回路図)。
 ZIFソケットに300milのタイプの物があれば良かったのですが、生憎手元には600milのワイドソケットのものしか無かったのでそれを使って実装。基板上の面積をかなり専有しますがなんとか全てを実装できました。
 これでライター側となるArduinoにArduinoISPのスケッチを書込んで、このシールドを載せればArdiono IDEから書き込み機をArduino as ISPとして選択して「ブートローダーを書き込む」とする事で簡単にブートローダーを書込む事ができます。
 詳細についてはArduino本家のサイトに"Arduino as ISP and Arduino Bootloaders"として詳細が記載されていますのでご参照ください。

マウスボタン交換

| コメント(0)

 非常に製品寿命は長いのですが、やはりこういう故障はやってきます。

Logicool M590
 Logicool M590

 会社で使用しているBluetooth接続マウスであるLogicool M590の調子が悪くなってきました。
 通常一番クリックで酷使する左ボタンの調子がどうも良く無く、クリックを認識しなかったり、しても押し込む力を入れないと押された状態にならなくなってきました。
 やっかいなのはこの症状が不定愁訴状態で、機嫌の良い時は全く問題ないのですが、症状が出始めるとしばらく継続するので、地道にストレスが溜まります。
 クリック程度であれば押し方次第でなんとか誤摩化せますが、ドラッグしようとして掴めない時はかなりイラっとします。たまにしか使わない家のPCならいざ知らず、毎日常用している仕事使いのマウスの不調は困ります。

 そんな訳で、マウスのボタンを交換してしまいました。
 修理に出すという選択肢もありましたが、すでに製品保証が切れてしまっているのでロジクールの神対応も頼れません。修理すると製品を買うぐらいの費用が発生しそうだったので、どうせ製品保証が無いのなら自分でスイッチ交換!となった次第。
 以前にもマウスのボタンスイッチ交換はしていましたが、同様になんとかなるだろうと簡単に考えていました。

左右ボタンスイッチ
 マウスの左右ボタンスイッチ
 ボタン部が赤い物が左右ボタンで押されるタクトスイッチ

 静音マウスのボタンスイッチは私が所有していた以前の物と違いマイクロスイッチではなく、タクトスイッチが採用されています。しかも形状が見た事の無い底上げされたもの。
 これには困りました。電子部品店の店頭でこんな部品は目にした事がありません。
 四本足ではなく二本足ですし、形状も大きく異なります。仕方なく通販サイトで探すと怪しい中国出品者が出しているものが見つかり増したので勢い付けてえいやぁ!と購入。絶対にパチモン(笑)だと思いますが、部品が付け替えできるのであれば今後同じ状態に陥ってもまた交換すればよいだけなので注文して到着を待ちました。
 同じ品番でも高耐久品を使用しているとの噂がありますが、一般流通していないのであきらめましょう。

オリジナルと購入品
 オリジナルと購入品

 なんか微妙に違うのですが寸法等は同じなようなので交換をしてしまいます。

 マウスを分解するには+0のドライバーとピンセットが必要ですので用意しましょう。

底部のネジ
 底部のネジ

 Unifying接続のドングルをマウスの底から抜くと、奥にネジが見えます。
 以前交換したマウスに比べて設計がエレガントになっていて、このネジ1つで分解して内部にアクセスできるようになっていて、スライダーの下に隠れているネジ等は一切ありません。

メイン基板
 メイン基板

 メイン基板とサイドボタンを接続するケーブルがコネクタで接続されていますので、注意してコネクタをピンセット等を使用して引き抜き、センターホイールを注意して取外す(すこし力を加えると噛み合わせ部分から抜けます)と、この状態になりますので、黄色い丸印の3ヶ所のネジを取り外すと本体から分離でき、メイン基板の裏側にアクセスできます。
 基板をマウス本体から外す時に針金状の電池電極が付いてきますので壊したりしない様に注意して真上に引き上げましょう。

 基板の裏側に半田ごてを当てて十分にハンダを溶かしてスイッチを引抜き、抜いた後のスルーホールの中のハンダを吸取り線や吸取り器等を使用してハンダを除去します。片側の端子は基板上のコントローラーでバイス側に接続される細いパターンなので注意してスイッチを引き抜いて下さい。決して力技で引き抜こうとはしないように。
 使用されているハンダが鉛フリーなのでちょっと厄介ですが、鉛入りハンダを追いハンダしてやるとかなり楽になると思います。基板の汚れが気になる人はスイッチを取り除いた後、アルコールでフラックス等を清掃すると良いでしょう。

 取付けスルーホールが奇麗になれば新しいスイッチをハンダ付けすれば完了です。
 後は分解と逆の手順で組み立てて、電池を入れて電源をオンにし動作確認できれば修理は完了です。
 M590はボタンクリック音がほとんどせず使用感が非常に良いBluetooth接続できるマウスです。Unifying接続と違って、PC本体のUSBポートを1つ占用しないので助かります。電池寿命も単三1本で2年と非常に長く、1.2Vの充電池を使っても交換まで1年ぐらいは平気で使用できます。
 デバイス類の損傷などの電気的故障でなければ今回のようなスイッチ交換でまだまだ使えそうです。良い製品を作ってくれて感謝ですね。

 最後にお約束です。
 今回の分解およびスイッチ交換はメーカーの保証する物でもなく当サイトでも保証を謳う物ではありません。交換を実施する場合は皆様の自己責任で実施して下さい。当サイトおよび管理者は、ご自身で行った結果により生じる不具合、事故、故障等の一切を保証致しません。

コントロールアンプ(2台目)

| コメント(0)

 デッドストック活用プロジェクト。

TA7630
 TA7630P

 もう忘れるぐらい昔に購入していたデバイス。部品ストックの整理をしていてなんと3本も見つかりました。作らずに購入してしまう癖はなんとかならないものなのか・・・。
 実際に過去に何度か製作にトライしているのですが実製作に至らない状態だったので改めて、リスタートしました。
 データシートに記載しているアプリケーション回路の回路図のピン配置がデバイスの物理的ピン配置と異なるのでデータシートを見ながら回路を組もうとして判りにくく、挫折していたのだと思います(今にして思い返してみると:苦笑)。ですので今回はデータシートの回路からデバイスの物理的ピン配置に手描きですが回路図を書き直して製作に挑みます。

 以前に製作したコントロールアンプ部に使われていたAN5836と良く似たコンセプトの単電源でDC電圧制御による音量・左右バランス・高音・低音の調整をできるデバイス。実際に動かす回路構成も良く似ていますが、このTA7630は単電源でも両電源でも使えるようになっていて電源電圧もある程度の範囲が使える点がちょっと違うところ。最大電圧14Vなので車載を想定したものでしょう。
 細かい差異ですがAN5836は入力のDCカットコンデンサに無極性の指定がありましたがTA7630は有極性のコンデンサがアプリケーション回路に掲載されていました。

TA7630Pアンプ基板
 TA7630Pアンプ基板

 パッケージがDIPで左右対称に機能が割り振られているピンが並んでいます。
 SIPだったAN5836は制御ボリュームへの配線引き出しを一方向へまとめられましたが、こちらは左右に分散させるしかありません。ちょっと配線の取り回しで長くなりそうな予感がします。
 今回は音が通る部分にバイアスへの抵抗はありますが、制御回路には音信号そのものが通る部分にはありません。なので全てカーボン抵抗で組むことにしました。
 電源のデカップリングコンデンサと入出力のDCカットコンデンサ以外の音の通り道に関連しない部分全て標準品。制御電圧のデカップリングコンデンサも標準品で組んでみました。先のコントロールアンプはこの部分もオーディオ向けコンデンサを使用しましたが、たぶん民生品でこのデバイスを使ったものがあったしたら、そんな高価なコンデンサを使うはずも無いだろうと予想して、オーディオ向けでは無い品種であえて組んでみました。

 とりあえずは基板が完成しましたが、これをどうしたものかと。
 先のコントロールアンプに組込み直しても良いのですが別の筐体を用意した方が良さそうなので、前回同様切替とサラウンド(風)プロセッサの基板を作って組込むか悩み中。

複合センサー

| コメント(0)

 ちょっとグレードアップしました。

BME280使用環境モニタ
 BME280使用環境モニタ

 前回に気温・湿度センサーであるDHT22を用いてモニタリングするものを作りましたが、今回はセンサー部を変更して気温・湿度に加えて大気圧を測定できるセンサーBME280を用いてモニタリングできるようにしました。
 センサーは3.3V使用なのですが、LDOレギュレーターにMOSFETを用いて5V信号をやり取りできる回路を付加したものです。元々のセンサーが小さいのもありますが、全ての部品が表面実装の小さい部品ばかりなのでモジュール基板も極小です。

BME280モジュール
 BME280モジュール基板

 センサーとのデータ授受にはI2Cを用いますが、センサーを使用するためにライブラリがありましたので有難くそちらを使わせて頂きました。ライブラリのデフォルトのI2Cアドレスが0x77だったのですがモジュールは0x77ですので、その部分だけ使用前に別途設定するようにすればサンプル・スケッチのままでほぼ手を加える必要はありませんでした。
 BOSCH製のBME280センサーのレスポンスがDHT22に比べると大変早く、分解能も高いため、少しの変化でも数値が変化します。センサーのドキュメントによると部屋のドア開閉程度でも気圧変化を得られるそうで、hPaではなくPaの桁で測定データを読み出せます。これは机の上下の気圧差が得られるぐらいで、ノイズや外来要因で数値が目紛しく変化してしまい表示がちらつきます。
 サンプル・スケッチでは50msで回していましたが、ぜんぜん落ち着かないので測定を5秒に1回としました。用途的にセンサーの能力を使い切るほどの桁精度が不要ですね。

 今回はI2Cのデバイスが複数繋がるため+5V・GND・SCL・SDAをバス接続できる子基板(便利小物(#11))を作ってそちら経由でArduinoと接続しました。
 単に4列のヘッダピンでそれぞれの列が繋がっているだけですが、I2Cを使う上で複数のデバイスとやり取りする場合には必須なのかもしれません。

便利小物(#11)

| コメント(0)

 色々増えて来たので。

I2Cバックプレーン
 I2Cバックプレーン

 大層な言い回しですが単純に並列配線したバス基板です。
 黒色以外のピンヘッダが手に入ったので色分けで信号線を示すように製作。
 黒(GND)赤(+V)黄(SDA)青(SCL)となっています。この順序はArduino nanoのI/O基板に出ているI2Cバスのピンヘッダの順序と合わせています。
 いろんなI2Cバス接続のモジュールを試すのに直付けではないのでピンの順序が違っていても対応できますし、コネクター接続なので簡単に付けたり外したできてテストには大変便利です。

次のページ