作成者別アーカイブ: Eleken

Eleken について

こんにちは

フィルムコンデンサの種類と使い分け

一般的に、アナログ回路などでコンデンサの特性が回路上重要になる場合、100pF – 100nF 程度の容量値ではセラミックコンデンサではなくフィルムコンデンサを使用します。回路図上ではコメントで表記したり、値に「*」記号を付加して区別したりします。たとえば私の書いた回路図では、下図のようになっています。

例1:半導体カーブトレーサ(未公開)

例2:ミリオーム計

赤枠で囲ったコンデンサはその特性が重要になるのでフィルムコンデンサ指定です。とくに例1の積分コンデンサにはポリプロピレンコンデンサを指定しています。ミリオーム計ではこの点について質問をいただきましたので、説明が必要でしたね。

なおフィルムコンデンサを種類指定で購入する場合、そこらの小売店だと型番、種類が曖昧で販売していることがあるので、信頼できる店で購入することが望ましいです。たとえばポリプロピレンフィルムコンデンサ指定で探す場合などは RS コンポーネンツで購入するといいと思います。

で、フィルムコンデンサといってもいろいろありますので、当記事では各コンデンサの特徴と損失係数 D をみていきます。

損失係数 D とは

(適当なイメージ図)

損失係数はひとことで言うと、コンデンサのコンデンサ成分とよけいな成分の割合です。理想的なコンデンサは損失 0 ですが、実際は ESR (等価直列抵抗) に代表されるような損失があります。これは、コンデンサに AC 電圧を付加したときの電流の位相(理想は90°)としてみることができます。上図のように、両成分の割合=90°からの位相差 δ の正接 (tanδ) をとったものが D です。したがって理想的なコンデンサであれば D=tanδ=0 となり、これが高いほど波形ひずみや。フィルムコンデンサのカタログでは D の % 表示、電解コンデンサのカタログでは tanδ で表記することが多いです。なお D は LC メータで計測できます。

誘電体吸収とは


コンデンサに電荷の溜まった状態で両端子を短絡させると、当然端子間の電位差は 0V となります。ところがこの状態から端子間を開放して少し経つと両端子間に電位差が現れます。このような現象を誘電体吸収といいます。誘電体吸収は損失係数とは無関係で、誘電体の材質により現象の起こりやすさが変わります。
実際に誘電体吸収を観測しようとすると少し大変(シールドをしっかりして、J-FET 入力 OPAMP を使えば可能だと思います)なので、別の機会にゆずります。

いろんなフィルムコンデンサ

手元にあったコンデンサをみていきます。どうもパ行が多くややこしいので、文中では PET コンデンサ、PP コンデンサ、PS コンデンサなどと略すことにします。

PET: ポリエチレンフィルムコンデンサ(ポリエステルフィルムコンデンサ)

金属箔とPET (ポリエチレンテレフタレート) フィルムを巻いたもので、フィルムコンデンサの中でも一番安価で、一般的に使われます。おおむね耐圧 50-200V 程度で、100pF – 1uF 程度の容量値の製品が手に入ります。マイラコンデンサと呼ばれることがありますが同じものです。温度係数>0。

メーカによって黄色や白の透明外装だったり、茶色かったり、ガムのような形状だったりしますが、最近のものであれば性能はどれも変わりありません。

 
 

写真のように、いずれも D = 0.003 程度を示します。セラミックコンデンサ (D=0.008 – 0.05) や電解コンデンサと比較するととても低い値であり、大抵のアナログ回路にはこれで十分です。フィルムを巻いている関係で高周波回路に向かない点と、誘電体吸収が若干ある点に注意が必要です。良い特性を要求される積分コンデンサにはあまり向きません。(INL 0.1% 程度悪化します)

M-PET: メタライズドポリエチレンフィルムコンデンサ

ポリエチレンコンデンサの高耐圧版で、1kV 程度までの製品があります。また、自己回復作用(いったん短絡しても、電源を入れなおすと回復する)を持ちます。それ以外の性能はポリエチレンコンデンサとほとんど同じです。上記コンデンサを積層型にしたものもあり、同容量・同耐圧ならば小型になります。いろんな形状があります。


      

D=0.3% – 0.5% と、実測上、通常の PET コンデンサよりも高い損失係数を示す傾向にあります。一番右側は DF コンデンサで、-55/+125℃範囲品です。

PP: ポリプロピレンフィルムコンデンサ

PET のかわりに PP (ポリプロピレン) を使用したもので、高耐圧コンデンサとしてポピュラですが、それ以上にコンデンサとしての性能が優れています。そのかわりにやや高価です。おおむね、ポリエチレンコンデンサと同様の容量範囲の製品が入手可能です。温度係数<0。

左側の製品のように、見た目からは PET コンデンサと区別することは難しいです。

写真のように D=0.000 と非常に低い値を示すので、ここで PET との違いを判断できます。PP コンデンサは誘電体吸収もほとんど示しません。これらの特性から計測器の(とくに 積分型 ADC の)積分コンデンサに最適です。D=0 ということから AC を流してもほとんど発熱しませんので、高電圧 AC のカップリング、分圧コンデンサとしても適しています。
一番左のは巨大なコンデンサですが、強電になると損失による発熱が無視できないわけで、損失の少ない PP コンデンサが使われます。

PS: ポリスチレンフィルムコンデンサ

日本ではスチロールコンデンサ、スチコンと呼ばれることがほとんどですが、要するにポリスチレンを巻いたコンデンサです。コンデンサとしての性能は優れていますが、耐圧がポリプロピレンコンデンサほど高くないことと、誘電体吸収は PET コンデンサよりも少し大きいようです。高い容量の製品はなく、100p – 10nF くらいが一般的な容量レンジです。また、熱に弱いため半田付けの際は注意が必要です。またこの性質のため SMD 化は不可能であり、古くからあるコンデンサですが、いまや絶滅危惧種です。温度係数<0。


D=0.000 と測定限界以下です。すばらしい。右側のは NEC の50年前のコンデンサです。

PET-PP: ポリエチレン・ポリプロピレンコンデンサ

フィルムコンデンサを使用して時定数回路を作ると温度による変化が問題となります。ポリエチレンコンデンサは温度係数>0、ポリプロピレンコンデンサは温度係数<0 です。そこで、ポリエチレン、ポリプロピレンの両方を使用して、温度係数を常温で 0 に近づけたものがこのコンデンサです。これを使えば、抵抗側で温度係数の補償をすることなく、広い温度範囲で比較的安定な発振器やタイマ回路を作ることができます。しかしながら、今は PEN (ポリエチレンナフタレート) コンデンサに置き換わってしまい、絶滅危惧種です。


上写真は日精 AWS シリーズ(現行品ではない?)ですが、D =0.2% なのでちょうどポリエチレン、ポリプロピレンの中間になっています。

まとめると

  • 損失係数でみると、ポリプロピレン (PP) コンデンサ>ポリスチレン (PS) コンデンサ>ポリエチレン (PET) コンデンサ>メタライズドポリエチレンコンデンサの順で良好。
  • 積分コンデンサなど性能が重要なコンデンサには、PP コンデンサを使用すべし。
  • PP コンデンサと PET コンデンサは損失係数の測定で判別可能。
    • 見た目で区別できないので、測定機器がない場合には信頼できる店で購入。
  • PET コンデンサの見た目で性能に違いはなさそう。

 

シンセリコーダーの製作 その3

シンセリコーダーのケースを作りました。
リコーダーっぽさが出てきた感じがします。

プロトタイプ版なので、中身の基板の都合で径や穴位置は本物とだいぶ異なります。

これはコントロール基板で、Finger, Breath 情報表示や、ピッチを変えられるようにしています。

NanoPi リモコンサーバの製作

最近どうにも暑く、帰宅時の部屋の熱気がたまりません。外出先からエアコンをつけたい…ということで、Linux ボードの NanoPi NEO 2 を使ってさくっとリモコンサーバを作ってみました。


右側の基板で IR 送信、受信を行っています。下側の基板が NanoPi NEO 2 です。ケースはそのうち。


こんな感じのページからエアコンなどの操作ができます。

とりあえず詳細は Web サイトのほうにアップロードしましたので、よろしくおねがいします。

シンセリコーダーの製作 その2

GW を利用してシンセリコーダーの改良をしていました。

上がプロトタイプ1号機、下がプロトタイプ2号機です。
1号機では指検出にメカニカルスイッチを使用していましたが、2号機ではタッチセンサに変更しています。
あわせて、基板配置の変更、センサキャリブレーションの自動化と、マウスピースの設計変更を行いました。
マウスピース部分は 3D プリンタで出力しています。

このプロジェクトではおもちゃではなく楽器を作りたいので、息の検出は当然肝となる部分で、いろいろ試した結果気圧センサを使用しています。
マウスピースと気圧センサは試行錯誤の結果、上記写真のように取り付けています。
気圧センサの出力は、横にある LM324 で増幅してマイコン (ATmega8) に入力されます。
基板は以前製作した便利な細長ユニバーサル基板を使用しています。

指使いを検出するタッチセンサには上記写真に見えるように、ピンヘッダを使っています。
タッチセンサ(メカニカルな接点を使用しないスイッチ)は大きく分けて非接触型と接触型に区別されます。
静電容量を利用する非接触型はそれなりに広くパターンを設ける必要があり、リコーダーのサミング(穴を半分だけ空けること)検出が難しそうなので採用しませんでした。
接触型にもいろいろあり、商用周波数からのノイズを拾うものや、接触抵抗を検出するものがありますが、今回はセンサ端子の浮遊容量に電荷を貯め、端子の電荷が指を通して放電されることを検出する方式を採用しています。

上から。

基板に誤って触れるとセンサが誤検出するので、サイドカバーをつくってつけました。
どうも直径に対して長さが足りない気がしますが、「リコーダー 寸法」とかで検索しても値が出てこないのであまり気にしないことにします。

下側の穴(左手親指)はサミング検出のため、上記写真のように 2 組のセンサ接点を配置しています。

ちょっと演奏しづらかったので、片方の接点のみ位置を微妙に調整しました。
これで大分、リアルリコーダーの感覚に近づきました。

太陽電池駆動式・導通チェッカの製作


太陽電池で駆動する導通チェッカを作りました。
電池不要でメンテナンスフリーかつ常時電源 ON なので、テスタで導通チェックするときのように、いちいちスイッチやレンジを切り替える必要がありません。
作業机の上に 1 つ置いておけば、使いたいときすぐ使えて便利です。

Schematics (PDF)

Source Code (AVR Assembly for ATtiny11L / ATtiny13A)

上図に回路図を示します。測定電流 1mA (パルス測定) で、約 100 Ω以下のときブザーが鳴るようになっています。消費電流の関係で BOD やリセット IC を使用していないので、うまく起動しないときはテスタリードで RESET ピンをタッチしてください。

MCU は ATtiny13Aを使用しています。当初は ATtiny11L を使用予定だったのですが、このチップは WDT 用クロックを内蔵 RC 発振器として共用しており、電源電圧により発振周波数が 10 倍以上変化するという致命的な問題があるため、途中で tiny13A に変更しました。プログラムはアセンブラですが、GCC でアセンブルできるようになっています。

この製作のキーパーツはアモルファス太陽電池で、松下のアモルトンの 3V 出力品 (開放時 4V) を使用しています。アモルファス太陽電池は通常の単結晶シリコン太陽電池と感度特性が異なり、可視光域の感度が高いため、室内の蛍光灯下の動作に適しています。いわゆるソーラー電卓に使われている太陽電池ですが、電卓用の 1.5V 品ではなく、3V 品を採用しています。

蛍光灯下の動作に適していますといっても、太陽電池の出力はたかだか数 10 uA しかありません。圧電ブザーの駆動には数 mA の電流が必要なので、電気二重層コンデンサに一度充電してまかなうことにしています。

プログラムのだいたいのダイアグラムを上図に示します。テスタリード開放のとき Power Down Sleep モードに入り、INT0 割り込みを待ちます。このときの消費電流は 1uA 以下です。抵抗値のチェックはコンパレータを使用して、0.1V 基準電圧と比較します。


ケースの中身はこんな感じで、見てのとおり適当な基板の切れ端に実装しています。
テスタリードとケースは 3D プリンタで作成しました。テスタリードの先っぽは MAC8 CD-2 です。

 

 

シンセリコーダーを作りたい 1

現在平行して作成中のものがいくつかあります。
シンセリコーダーもそのひとつ。
最終的にはウィンドシンセ (Wind Synthesizer) のように、PC に MIDI IN としてつなげるリコーダーをイメージしています。
おうちでリコーダーを吹こうと思っても、都内の住宅事情では騒音になるためなかなか難しいですね。
シンセリコーダーさえあれば、時間を選ばずリコーダーが吹けるわけです。深夜にリコーダーを吹く是非は置いておきましょう。
残念ながら?「電子リコーダー」は製品として存在していたようですが、自作電子楽器の題材としてはおもしろいかな、と思います。

しばらく試行錯誤していたのですが、ある程度演奏できるプロトタイプ1号機ができてきました。
見た目のリコーダー度はまだまだ 20% くらいです。


上半分が USB 基板、下半分がリコーダー基板。
このプロトタイプで確認したかったことはウィンドシンセの心臓部であるブレスセンサと通信線の電源重畳の動作です。
スイッチ(リコーダーでいう穴)はディテクタスイッチを使っていますが、いずれタッチセンサに置き換え予定です。リコーダーの場合、半開判定が必要な穴が3つもあるので、静電式タッチセンサの採用は難しいです。必然的に接触式になるのですが、これはこれで調整が面倒なことはわかっているのであとまわし。


マウスピース?部分は 3D プリンタで作っています。
リコーダー基板には音程確認用の圧電ブザーを載せています。
ここにヘッドホンをつければスタンドアローンで動くので、某笛マンガに出てくる珍笛のようなものができあがります。
なおコントローラは ATmega8 です。


ブレスセンサはふつうの気圧センサを試してみましたが、応答性は問題なさそうです。
耐湿性が一番の問題ではありそうですが、実際の製品ではどうしているのでしょうか。

USB 基板(右側)と LED 基板(左側)。LED 基板はスイッチ状態とブレス値などを表示します。
USB コントローラには PIC18F14K50 を使用しています。
最近良く使うので汎用の PIC18F14K50 ユニバーサル基板を起こしてしまいました。
茶色の配線はリコーダー基板への配線で、+7V 電源供給と半二重通信を 2 本の線で行っています。

ある程度予想はしていましたがやはりディテクタスイッチでは演奏しづらいので、プロトタイプ2号機ではタッチセンサを試す予定です。
もうひとつ、私のリコーダー演奏が下手なことが最大の問題です。

AVR HVS (High Voltage Serial) ライタの作成

最近になって AVR HVS ライタを製作したので、ここで紹介します。

完成写真

いきさつ

最近 ATtiny11 という古めのチップを(大量に)入手したのですが、
この書き込みは ISP 非対応ということに、入手後になって気づきました。

2018 年現在、AVR マイコンのプログラミングインタフェースをリストにすると、おおむね以下の通りです。

以前からの品種でサポート
SPI ISP: ほとんどの品種でサポート
HVS (High Voltage Serial): 8ピン tiny13A 等, 12V 必須
HVP (High Voltage Parallel): 16ピン以上, 12V 必須

新しい品種でサポート
TPI (Tiny Programming Interface): tiny10 等
PDI (Program and Debug Interface): XMEGA系

AT90S / tiny / mega を中心に使用する限り、AVRISP のような SPI ISP 書き込みに対応した
ライタさえ持っていれば、「少数の例外を除いては」ほとんどの品種に対応できます。

ところが tiny11 は「少数の例外」にあたり、プログラミングインタフェースは HVS のみに対応しています。
HVS 対応のライタは持っていなかったので新しく作る必要に迫られました。

設計

製作にあたって下記の条件を定めました。
(1) USB で動作すること (IF, 電源共)
(2) MCU は ATmega8 を使用すること (手持ちの関係)
(3) 既存のソフトウェアを使用できること
(4) 安価であること

(1)(2) を満たすライタがネット上に公開されていればそのまま使いたかったのですが
条件に合うものが見つからなかったので、回路と FW は新たに作ることにしました。

ホスト側ソフトウェアは私が作ると中途半端な実装になりそうなので、
既存の HVS 用ソフトウェアに対応することが望ましいです。
ちょうど、neko JAVA さんが USB 対応のパラレルライタを公開されていたので、
ホスト側ソフトウェアはこれをそのまま使用できるようにします。
FW の実装は v-usb ベースですが、HVS / HVP 実装部分でソースコードを参考にさせてもらいました。

回路図:

FW ソースコード: 180219_YLE_HVS_Writer_Source
ホスト側ソフトウェア: 本文参照

動作

HVS + tiny11 で FLASH 書き込み、読み込みできることを確認済み。
HID なのでドライバは不要です。
HVP (High Voltage Parallel; 高電圧パラレル) も一応実装していますが、動作は未確認です。

動作速度は正直言って遅い(tiny11 Program + Verify で 1 分以上)です。
FW は v-usb ベースにしており USB1.1 LS なので、interrupt 通信の
ポーリング間隔の制約からオリジナルの 10 倍程度遅いと思います。
tiny11 のようなページを持たないマイコンの FLASH を書く場合、
このライタのプログラムが 1バイトあたり 3-4 個の interrupt 通信するので
ほとんどの時間を通信待ちに費やすことになります。
このへんはプログラムの変更で 3 倍ほど改善可能ですが、
「(2) 既存のソフトウェアを使用できること」なのでそのままにしています。

PIC18F2450 など USB2.0 FS 対応マイコンに移植すればもっと高速になるでしょう…。

SOP の AVR の書き込みは、写真のようなアダプタ (aliexpress で ¥600) により行っています。

MPLAB X IDE のメモリ使用量を削減する

PIC の開発では MPLAB X IDE を使用していますが、MPLAB は起動するだけで大量のメモリを消費することが難点です。


たとえば私の環境では 32bit PC で起動時 430MB、スクリーンショットがありませんが 64bit PC で 800M-1GB、これでは他のソフトを立ち上げているとすぐにメモリ使用量がいっぱいになってしまいます。

これは起動時に JRE がヒープ領域を確保するためであり、MPLAB の読み込む設定ファイル mplab_ide.conf を書き換えるとヒープサイズを調整できます。

ファイルのコメントによると「-J-mx」以下でヒープサイズの上限を指定するようです。
デフォルト値はインストール時の環境に依存し、32bit OS だと 「-J-Xms256m -J-Xmx512m」
サイズを小さくしすぎると動作が極端に遅くなります。
PIC18F を使用するだけなら 「-J-Xms96m -J-Xmx128m」で十分動きます。

ファイル書き換え後再起動すると、起動時のメモリ使用量は 210MB と半分近くになりました。

3Dプリンタで半固定抵抗のつまみを作る

試作品の動作中に半固定抵抗を調整するとき、毎回ドライバを差し込んで・・・というのはいかにも操作性が悪く、ダイヤル式のつまみがほしい。
もちろんつまみ付きの基板取り付け型 VR は存在しますが、入手しづらかったりサイズが大きかったり、何かと使いづらいのです。

そんなわけで、下図のような半固定抵抗用つまみのモデルを 3DCAD で作り、先日買った 3D プリンタで印刷します。
うちに大量ストックしている NOBLE の VM6CK という VR がおあつらえ向けの形状(摺動子と連動する円形カバー、太く深いドライバ溝)だったので、それにマッチするようモデリングしています。

プリントするとこんな感じ。

便利に使えています。

3Dプリンタを購入した

去年の話になりますが、3D プリンタを購入しました。
3D プリンタはこれが1台目です。

入手容易な 3D プリンタには大きく分けて XYZ 3軸型のものと Z 軸のみのデルタ型の2 種類があるようで、
デルタ型のほうがかっこいいのでこちらを選びました。
amazon にあるものから、Anycubic というメーカの Kossel Plus リニアガイドタイプを買いました。
aliexpress などにもありますが、送料を考えると amazon 購入の方が安い気がします。


こんな感じの結構大きい箱で届きます。
組み立てキットなのでマニュアルどおり組み立てます。
どうでもいい話ですが、これと本 1 冊を同じ日に注文したら、
なぜか amazon 側でまとめられて超巨大な段ボール+大量の緩衝紙で届きました。
別配送にした方が効率よい気がするのですが。

付属のフィラメント色はランダムと説明文にありましたが、黒色のものがついていました。
変な色でなくてよかった。

組み立てていくうちに問題発生。


写真のように、ヒートヘッドの軸が折れていることに気づきました。
途中まで組んでから気づいたので、最初から折れているのか私の不注意で折ってしまったのか判断がつきません。
最初に全ての部品をチェックするべきでした。
まあ、この程度なら、瞬間接着剤でうまくつければ使えそうなので、補修してこのまま組み立て続行です。

で、ブログを編集していて気づくのですが

最初の写真を拡大すると、折れてるのがしっかり写っていますね!
輸送中に折れたものと思いますが、この箱
デリケートなヒートヘッドの梱包としては、ちょっと不十分な気がします。


組み上げると、カラーボックスの上に置けるくらいのサイズになります。
この部屋にはここしか平地がないので。

マニュアルは決して不親切ではないけど、下手な人が組み立てるとちゃんと動かないような気がします。

簡単なキャリブレーション後、Thingiverse の 3DBenchy をプリント (積層厚 0.2mm)すると、こんな感じになりました。
 

電子工作するうえで 3D プリンタの使い道はけっこうあって、
簡単に mm 単位の精度が出せるので、
たとえば基板固定用の支持具などを作れば、プラ板加工に比べてはるかに楽できます。

(以前作ったユニバーサル基板用の固定具)