電子工作

2020年7月 2日 (木)

マイナス出力の非絶縁AC/DCコンバータ実例

2020年6月18日:ちょこっと電源 ロームのBP5038A1 ただし非絶縁
で、非絶縁AC/DCコンバータの話をしていたとこでした。
この前、作動不良の空気清浄機を解体していたら、こんな電源回路が
出てきました。

11_20200702093401

ローム製マイナス出力の非絶縁AC/DCコンバータ「BP5035」
使われていました。

12_20200702093401

「なぜマイナス出力?」っと思われるかもしれませんが、
AC100Vで回るモータなどをトライアックで制御する時に
便利なんです。

トライアックの動作モードはこの4つ。
  ※ルネサスのデータシートから
     application-j.pdf
T1_20200702093401

T1、T2端子の+/-によりGをどう駆動するか、4種類の
パターンがあります。
I・IIIモードあるいはII・IIIモードで使います。
  ※T1が+の時Gを+で駆動するIVモードは特殊な石
   でしか使えません。

非絶縁電源との接続、こんな具合になります。
T0_20200702093501
制御マイコンのVCC(+電源)をトライアックのT1端子につなぎ、
G端子をGNDへ駆動することでトリガーします。

※実例
http://act-ele.c.ooco.jp/toukou/handa_ondo/hnd_sch1.png
ハンダゴテ温度調節器 トラ技 2008年4月号

| | コメント (0)

2020年6月27日 (土)

予告:マイコン型導通チェッカーをすべてアンプ付で頒布

私の仕事場:(有)アクト電子 で頒布している「マイコン型導通チェッカー」
現在は次の4つの区分でお届けしています。

頒布の区分(4種)(税込価格)
 アンプ無 キット  3,700円
 アンプ付 キット  4,250円
 アンプ無 完成品  4,750円
 アンプ付 完成品  5,350円

それを「アンプ付」に統一します。
しかし、価格はアンプ無しと同じに据え置きます。

今後、頒布の区分は以下の2つになります。
 マイコン型導通チェッカーキット 3,700円
 マイコン型導通チェッカー完成品 4,750円

まず「アンプ付って何?」の話を少し。
マイコン型導通チェッカー、導通の状態をATtiny25Vマイコン内蔵の
A/Dコンバータを使って読んでいます。
1.1Vの内蔵基準電圧に10bitのA/Dコンバータですから、1bitが約1mV。
測定電流が0.1mAですので、抵抗値10Ωで1bitが変化します。

これが抵抗値の分解能になり、0Ω~10Ω台でピ~と連続報知。
20~50Ωでピピピピと断続報知するようにしています。
「アンプ」は、より小さな抵抗を判断できるよう、「1Ω検出」
を目指して付加したものです。

※いきさつはこのあたりのブログ記事をどうぞ
2015年06月25日:導通チェッカーの検出抵抗値、1Ωを目指す
2015年08月31日:アンプ付き導通チェッカー(キット)の頒布

今後、キットであれ完成品であれ、このオートゼロアンプ「MCP6V01」
実装して(アンプ付にして)頒布するようにします。
そのかわり、次のように内容を少し変えます。

・抵抗検出レンジの切り替えは、プッシュスイッチを使います。
 これまでのスライドスイッチは使いません。
 プッシュスイッチを押すと、Lレンジ(0~5Ω)とHレンジ
 (0~50Ω)をトグルします。
 
・H/Lレンジの切り替えはモールスで知らせます。
 スイッチを押すと感度をトグルし、このように反応します。
    Lレンジになった「L=・-・・」。 (0~5Ω)
    Hレンジになった「H=・・・・」。 (0~50Ω)
    電池装着時はLレンジ(0~5Ω)になります。

・プッシュスイッチをレンジ切り替えに使ったので、
 これまでのパラメータ設定モードを無くします。
 また、パラメータ設定用半固定抵抗の添付をやめます。

・A/D変換入力の前に、常にアンプが入ることになります。
 過電圧保護用抵抗に自由度が増しますので、回路を理解される
 方は、
   ・もっと検出電流を小さく。
   ・もっと低い抵抗値に反応するように。
 などの改造も可能です。
   ※基本は頒布当初からの回路定数です。

・報知抵抗値の区分やブザー周波数などを変えたい時は、
 マイコンを再プログラムしなければなりません。
 これまでと同じようにソースファイルは公開しますので、
 必要な時は、ご自身で行ってください。

・使用する部品も少し変わります。
  シリコンダイオードが1SS133から1SS178あるいは1N4148に。
  RN1227の在庫が無くなりRN1226に。
  起動用電圧検出コンパレータをLMC7215IM5からMCP6541Rに。
  ブザー(マグネチック発音体)をSD1209T3-A1(TDK)からGT-111Pに。

このような内容で頒布を続けます。
※組み立て方法を記したHPは順次、更新していきます。

取り急ぎ、
・回路図
B0_20200627133301

・部品実装図
B3

・部品実装写真
B1_20200627133301

 

| | コメント (0)

2020年6月23日 (火)

小信号ダイオード・・・1SS133を使ってきたけれど

小信号ダイオード、昔々は1S9541S15881S2076
それらが無くなってからはロームの1SS133が常備品でした。
ところがこれも廃番に。
現在、秋月が東芝の1SS178 を売ってますんで、1SS133の代わりはこれを愛用しています。

世界的には1N4148 が汎用ダイオードです。
しかし・・・ DO-34パッケージのはずの1N4148を注文したら「大きいやん」っというトラブルに遭遇したことがあります。
ガラスの胴体部分が長くって、5.08mmピッチの基板穴に入らないのです。

手持ちのダイオードをちょっと見てみます。
31_20200623114301

上から、ロームの1SS133、東芝の1SS178。
そして3つ目がONセミコンの1N4148TACT。
一番下が1S954時代のダイオード。
これは挿入ピッチを7.62mmにしないと入りません。

1SS133のデータシートを見ると、ガラス部は2.7mm±0.3mm。
余裕で5.08mmピッチの穴に入ります。

1ss

ところが・・・ONセミコンの1N4148はこのように示されています。
1on

最小3.06mmで最大が4.56mm。
もし最大寸のが注文してやってきたら、5.08mmピッチの穴には寝かせて実装できません。

型番から形状サイズを拾い出すと「DO-34」と記されていて安心したのがアウトでした。
製造時期にもよるのでしょうけれど・・・
 (返品okだったので返品しちゃいました)

1N4148でもメーカー違いのVISHAY製1N4148はこんな形状。
1vi
最大3.4mmと記されているんで、まぁ大丈夫でしょう。

こんなトラブルに出会ってから1N4148を使う(注文する)のはちょいと躊躇するのです。
  ※面実装品だと関係ありませんが。


※追記
Digi-Keyで1SS133を調べると 台湾製の1SS133Mが現行品で出てきます。
  (知らなんだ)

※ダイオード関連の過去記事
2013年10月25日:逝くならきちんとどうぞ…
  中途半端に飛んだダイオードの話

2016年04月22日:1A定電流回路 「足」を測ってみる
  抵抗やダイオードの「足」の抵抗を測定






| | コメント (0)

2020年6月19日 (金)

「まる餅くん(R)」を回せ!

ご近所の町会からの指令!
タイガーの「まる餅くん」 の手動ハンドルを電動化せよ!と。
これを使うおばちゃん達から「ハンドルが重い。どうにかして」っとリクエストがあったそうな。

M11

これが実物。
M12

ハンドルを差し込む穴に、モータ軸を延長したカプラを差し込みます。
M13
M14

どのくらいのトルクが必要でどのくらいの回転数がよいのか不明だったんで、まずは安くてすぐに入るモノということで、DC12V16RPMのギヤードモータを買ってみました。
なかなか強力。
でも、ちょっと遅いか。30RPMくらいはいるかも。

これが制御ボックス。
M15

START/STOPスイッチと電源スイッチ。
そして、時間調整のツマミ。

その中。 手抜き配線。
M16

最初の要求仕様は、
 ・ボタンを押してスタート。 3回転して停止。
だったんですが、これだと回転を検出するリミットスイッチ(など)が必要になります。
だもんで、
 ・ボタンを押してスタート。 設定時間経過で停止。
となりました。
でも、回転がゆっくりなので停止させずに回りっぱなしにして、餅を切るタイミングを秒読みして知らせるだけで良いのではないかということで報知ブザーを繰り返して鳴らすことにしました。

こんな回路です。
A0
(クリックで拡大↑)

モータ駆動もリレーを使って手抜き。
(B接を使うと簡単にオフ時のブレーキを実現できるので)

28日の日曜日、実際の餅を使って試運転の予定です。
さて、どうなりますか。

※バックアップがわりにこれのソースファイル:ダウンロード - tm3rot.zip

 

| | コメント (9)

2020年6月18日 (木)

ちょこっと電源 ロームのBP5038A1 ただし非絶縁

AC100V入力DC5V出力(0.2Aあればいいんで1Wクラス)のAC/DCコンバータ(モジュール)を探していて、こんなのに遭遇。
ロームのBP5038A1
非絶縁型AC/DCコンバータというジャンル分け。

Aa1_20200618175101

面白そうなんだけど、100Vを整流する部分での部品点数がちょっと多い。
ヒューズも必須と記されてるし・・・
絶縁した入出力が不要の時の電源に使えそうなんで、メモ。


| | コメント (0)

2020年6月17日 (水)

LEDスペーサーじゃなくってソケットだった

ジャンク基板で遊んで(部品取りなど)いると、見たことが無いパーツに遭遇します。
今回はLEDスペーサかと思ったら、LEDのソケットでした。
11_20200617100001
表面実装形状のソケットです。
抜けないように片方の足(上の写真の左足)はハンダされてました。
12_20200617100001
フロント面からLEDを挿入。
LED足に段があっても入ります。
LEDの頭、基板端からの寸法を揃えられます。

過去、LEDスペーサはあれこれ使いましたが(マックエイトの)、こんなソケットを見たのは初めて。

| | コメント (0)

2020年5月21日 (木)

JIS C8708:2019充放電実験回路

バックアップがわりにJIS C8708:2019充放電実験回路とそのスケッチ(Arduino-UNOのブートローダーを焼いたATmega328Pで動かしている)をアップしておきます。

まず回路図。
Baycyc3b
これまでどおり、24V→5VのDC-DCコンバータを乗せています。
その理由:
・回路を置く作業ラックにDC24Vの電源が来ているから。
   FA用途の回路をテストしたりするんで、その絡み。
・0.5C充電の必要から、基板にDC5Vを直だと電流が大きくなり、
 電源配線でのドロップが気になるから。
ということです。
5V電源を基板そばに置き、電源配線を端子台などでしておけば
DC-DCコンバータは不要でしょう。

ICが6つ。抵抗が35本。コンデンサ27個。スイッチ3つ。
液晶が一つ。ヒートシンクに付けたパワーMOS-FETが二つ。
むちゃくちゃ大がかりな回路じゃありません。

そしてこれがスケッチ。 ダウンロード - batcyc3c1.zip
ファイルタイプを「ino」ではなく「c」にしています。
  inoだとArduinoのIDEが立ち上がってしまうんで。

設定パラメータ、前のよりちょい増やしています。
制御の操作で充放電の実行を中断した時、以前のバージョンでは
これを再開させる方法がありませんでした。
  (もういっぺん最初からになってしまう)
ちょっと不便なんで、「何サイクル目の充電あるいは放電から再開する」
という設定を設けておきました。
 "32 Brk cyc(50)"; 中断再実行時のサイクル (1~50)
 "33 Brk cnt(8)";  中断再実行時のサイクルカウント (1~8)
 "34 Brk dcg/chg"; 中断再実行時の放電(0),充電(1)区分
普通に最初から試験する場合はそれぞれに「0」を入れておきます。
cycとnct、どちらも0以外のときに試験再開の処理を行います。

| | コメント (0)

2020年4月28日 (火)

秋月のアナログテスター「7007」、可動コイル式メーターは発電機だった!

2015年01月21日:秋月のアナログテスター「7007」
2020年4月18日:秋月のアナログテスター「7007」その後

さらのこの続きが来ました。
ほんとに「捨てようか」っと思ったんですが、最後のあがき。
もう一度、ほんとにあかんのを検証。
11_20200428181501

テスターの回路基板を外して、メータそのものの直線性を見てみました。
直列に半固定抵抗を入れ、テスターの読みとフルスケールを合わせます。
45kΩほどで10Vに。

12_20200428181501

14_20200428181501
13_20200428181501

しかし・・・やっぱしダメ。
メータそのものの直線が出ていません。
回路に乗せてあるメータ保護ダイオードあたりがおかしくなったら、直線性が出なくなる症状になるかと期待したのですが外れでした。

こうなりゃほんとに捨てるぞ・・・その時、ちょうど・・・
マイコン型導通チェッカー、この基板をゴソゴソしていたのです。
バラしたテスターのレンジ切り替えダイヤルの上にこの基板がちょうど収まります。
せっっかくやから、テスターを箱として使ったろ」っと、導通チェッカーとして生き返らせました。
単4電池の電池ホルダーを付けてブザーの穴を開けて。
うまい具合に収まります。

15_20200428181501

で、せっかくのメータ、遊ばしておくのはもったいない。
導通チェッカーの電池消耗の目安にできるかと、こんな具合に配線しました。

17_20200428181501
2.5Vくらいでバッテリチェックの「?」目盛に合うように直列抵抗を選択。

ところが・・・
メータをつなぐと導通チェッカーのオートパワーオフが効かなくなったのです。
いつまで経っても電源が切れてくれません。
1分経過でオートパワーオフが働き、一瞬通電表示LEDが消えるのですが、直後「ピッ」と鳴って再起動。
これを繰り返します。
メータを外すとこれは起こりません。
正常な動作に戻ります。

『なんで????? どうして????』
メータをつなぐとおかしくなるなんて、初体験。

さて、その原因追及。
悩みました。

オートパワーオフでQ1がオフして、OP-AMP系電源が切れます。
正常ならIN+端子がちょっとプラス目で落ち着き(R4でちょっとだけプラスに持ち上がる)、次のクリップ接触を待つわけです。
ここに入れたメータ回路、Q1のオフと同時に指針がゼロに戻ります
その時、指針の動きでマイナス電圧が発生し(発電!)、それが18kΩの抵抗を通じてQ1のコレクタラインに伝わり、ほんの少し、実測-50mVほどマイナスになってしまうのです。
そのせいでIN+端子の電圧がコンパレータの比較電圧を下回ってトリガー。
再起動してしまうという流れになっていました。

対策は★印の位置に左向きにダイオード。
ダイオードの順方向電圧の働きで、ちょっとだけマイナスが伝わらなくなり、正常に動作するようになりました。
実績のある導通チェッカー回路、メーターを取り付けただけで動作不良をおこすとは・・・
原因が分かって納得できるまで、この動きが信じられませんでした。

オシロで波形を見るだけでなく、こんなテストも。
  ・指針を動かないようにしてたら(ピンセットで可動コイル
   を押さえつけ)、正常にオートパワーオフ。
  ・オートパワーオフ中、テスターを揺すったら(針が
   動く)再起動。

いやほんま、メータは発電機でした。


※追記 せっかくですんで、どんな電圧が出るかをオシロで

まず、誤作動状態(★位置にダイオードを入れてない時)
Mtr001
オートパワーオフでQ1がオフしてメータ指針が0Vに戻ります。
そのときのコイルの動きでマイナス電圧が発生。
それがR6、R1、R3を通ってコンパレータの+ピンに。
コンパレータが働き、出力パルスが出て再起動。
これを繰り返し、オートパワーオフが働きません。

次に、★位置にダイオードを左向きに入れた時。
メータから出てくるのはマイナス電圧なんでダイオードは
導通するはずなんですが、順方向電圧のドロップがあって、
誤作動には至りません。
Mtr000
コンパレータの+ピンはプラスの電圧を保っています。

| | コメント (1)

2020年4月24日 (金)

Arduino-UNO + SDカードでシリアルデータロガー 完成形

※完成形とタイトルにしたけど、まだ完成じゃありませんです。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2020年4月22日:遅ればせながらArduinoでSDカードの完成形。
こんな回路です。

Rxbff_sd1

OpenLog を真似て、16MHzクロックのATmega328Pを3.3Vで動かしています。
ケースはタカチのSW-120を使いました。
電池電圧チェッカーで使っているケースなんで、在庫があったから。

11_20200424165601

12_20200424165601

使い方を忘れたらいかんので、シールをペタペタ。
13_20200424165601

14_20200424165601

前記事からの変更点。
・通信待機時の記録までの時間を10秒に。
・フラッシュ実行を3分に。
・フラッシュの書き込みカウントを4096バイトに。
3分にしたのは、1分ごとのデータ取得が多いから。
頻繁にフラッシュするとSDカードにやさしくない(かもしれない)から。

バックアップがわりに、スケッチの最新版。
    ダウンロード - rxbff_sd1a.zip


※オシロで見たSDカードをアクセスする様子

まず、「begin」して「DIR」確認、
そして、目的ファイルの検索とオープン。
RX0000.TXTがある状態で、追加書き込みオープンするまで。
Bb000

ファイルRX0000.TXT~RX0010.TXTが存在していて、
RX0010.TXTをオープンするまで。
Bb001

9600bpsで連続受信している時、512バイト(受信バッファ)ごと
に行われる書き込み処理。
Bb002
たまにちょいと長いパルスが出てくる。


※ログファイル名、RX0000.TXT~RX9999.TXTまでを
想定しているわけですが、サーチし始めるのはRX0000が
いつも最初になります。
わずか10ファイルで0.2秒ほどかかっているので、ファイルの
番号が大きくなると起動がどんくさくなってしまいます。
だもんで、ある程度ファイル番号が進んだら、
・記録ディレクトリをWin環境でリネームしてしまう。
 ディレクトリLOGの下にファイルを作りますんで、
 LOGをLOG_A123などとリネームしてしまうと、
 新しいLOGが作られてRX0000.TXTから再スタート
 できます。
・この時、ついでにWin環境でLOGディレクトリ(フォルダ)
 を作っておけば、LOGに作成日付が記録されます。
   勝手に作る場合は2000年1月1日と年月日固定
・LOG下にファイルを残したい場合は、
 RX0000.TXT~をABC_0000.TXT~と一括リネーム。
 するとLOG下に新しいRX0000.TXTが作られます。
   コマンドプロンプトを起動して
     REN RX*.TXT ABC_*.TXT


| | コメント (1)

2020年4月22日 (水)

遅ればせながらArduinoでSDカード

2020年3月20日:256kBシリアルデータ記録回路とりあえず完成
↑は基板に乗せたEEPROMへのデータ保存でしたんで、容量が限られています。
  (フロッピディスクにも満たない)
やっぱSDカードへの記録だろうと、ネットをあれこれ探し回っておりました。

で、まずこんなのがあるのを発見。
OpenLog - スイッチサイエンス

シリアルデータのログ、「これでエエやん」なんですが、あれこれ手を加えるとなると(例えばスイッチ付加)チップから配線を直出ししなければなりません。
それにソフトも。
可能ならArduinoの標準的環境で手作りしたい。
  ※OpenLogのスケッチ、読んでみましたが
   SDカードのエラー処理、リセット・電源再投入でしか
   回復できない。

※参考
オープンソースロガーOpenLog V4互換モジュールの製作 - アキバ通いと旅

こんなあんなで、
ラジオペンチさん: Arduinoで作るSDカードを使ったデーターロガー
などを読みながら、どうしたものか思案中です。

●悩みどころ
・SDカードを抜き差ししたい。 SW操作でログのon/off。
 抜く時はログ書き込みを停止。 挿してSW onで再開。
 この時、別のSDカードを入れても処理できるように。
 SDカードのエラーが起きた時に止めたらダメ。

・文字受信のたびにファイルのオープン・クローズを
 繰り返してたらその回数が気になる。
 FAT上、連続したデータを書き込む位置は変化するけど、
 ファイル名といっしょにファイルサイズを記憶している
 場所、頻繁にクローズ処理していると、この特定部分の
 書き込み回数が多くなってしまう。
 だもんで、ログ中はオープンしっぱなしで書き込み実行。
 クローズするんじゃなく、たまにフラッシュさせるような
 処理かしらと。
 書き込み回数を見て、ファイル名を変えるか。

 ※昔々、RXマイコンで作った装置(仕事)はこんな具合に処理。
    運転には人が関わるんだけど、保存データの
    確認なんて、システム替えやトラブルが有っ
    た時くらい・・・という装置。

   ・SDカードの他にEEPROM、それにバックアップRAM
    エリア付のRTC ICを搭載。
      (日時データが必要だったんでRTCは必須)

   ・計測データ数など常に変化する値は、RTCの中の
    バックアップRAMを使って保持。
       (何度でも書き込み出来る)

   ・計測データそのものはEEPROMに一次保存。
     (特定場所だけ書き込み回数が多くなるという
      ことは無く、全域同じように書き込み回数が
      増える)

   ・EEPROMが一杯になる、あるいは定時起動や手動操作
    でEEPROMの保存データをSDカードに転送。
    この書き込みは一瞬だし、何度も行わない。
    普通の運転中はSDカードを抜いていてもOK。

   ・EEPROMへの一次保存データはバイナリ。
    SDカードへ書き込む時に文字に変えCSVファイルで。


こんなのでした。

SDカードに作ったファイルの頻繁なオープン・クローズ、
書き込み回数の面でちょいと気になります。

仮に書き込み可能回数10万回としたら・・・
1分に1回の書き込みで、1日あたり1440回。
すると、70日ほどで10万回を突破。

とりあえず作ってみたのが・・・
・ディレクトリ名「LOG」を作る。
・その下に「RX0000.TXT」というファイル名でログファイルを
 作り記録開始。
・スイッチ長押しで、次番号のファイル「RX0001.TXT」を作成。
・スイッチ短押しでファイル名の数字のいちばん大きいファイル
 にログデータを追加書き込み。
・いったんファイルをオープンしたらスイッチ操作で記録を止める
 までクローズしない。
  ※これだとあんまりなんで、タイマーでフラッシュ操作を
   入れるつもり。


※実験中  ブレッドボードじゃない
11_20200422102301
Arduino-UNOとSDカード間(5V~3.3V)は、レベル変換IC
TXS0104(仕事試作の残り)でつなぎ。
SDカードの基板はサンハヤト。 これも試作での残り物。


OpenLogのATmega328P、3.3V電源を使って16MHzで動かしてるのが面白い。
データシートだと、2.7Vで10MHz。 4.5V以上で20MHz。
この間、直線的に電源電圧と最高周波数が関連するとのこと。
4.5V - 2.7V = 1.8V。 この間が10MHzだから、
ということは、1.0Vあたり5.55MHz。
3.3Vだと、(3.3V-2.7V)*5.55 + 10MHzで13.33MHz。

※バックアップがわりにスケッチをアップロード
  ・ダウンロード - rxbff_sd1.zip

 

| | コメント (4)

より以前の記事一覧