出窓

2022年5月17日 (火)

「壊れたオルゴールの人形」を回せ!

何時の頃か・・・壊れてしまったオルゴール。
ピアノの中にオルゴールが仕込まれています。
ピアノの天板の上、さらに円板があって、そこに
お人形さん二体と鳥さんが乗っています。
オルゴールを鳴らすとこの円板が回転するとともに
お人形さんと鳥さんがクルクルと回転します。

C11_20220517135301

動力はオルゴールのゼンマイ。
そのゼンマイが切れてしまって動かなくなってしまった
ので放置状態に・・・。
  ※「ゼンマイの巻きすぎに注意」っと書いてあるのに
   巻き過ぎたんでしょうなぁ。
   ゼンマイ終端の固定部が断裂していました。
C13_20220517135701
C12_20220517135301

「かわいいし、出窓にデビューさせてやりたい」という
女房殿からのリクエスト。
  ・音はいらない
  ・人形の乗った円板を回したい
  ・可能なら人形さんもクルクルなるように
という要求仕様。

ベースからゼンマイの機構部を取り外し・・・
「うまいこと取り付けられるモータはないかなぁ」と
部品箱を物色しますと、出てきました。
  ・ステッピングモーターとその駆動回路をごそごそ
ここに出てきましたユニポーラの「SPG20-1332」。
これがうまい具合に装着できました。
  ※SPG20-1332、秋月電子で買ったものですが、
   今はもう売り切れ状態です。
C14_20220517135301

お人形さんがクルクル回る仕掛け、巧妙に作られています。
C15_20220517135301
C16_20220517135301

ドライバー回路、「A4988」を使うため、ユニポーラを
やめて(中点タップをすっ飛ばし)バイポーラで使います。
1
パルス出力回路は簡単に「VCO 4046」を使いました。
C20_20220517140001

※人形さんの動きは、動画を見てもらわないと。
https://www.youtube.com/watch?v=fF6ch1IA0_8

| | コメント (0)

2022年5月 8日 (日)

「ダイソーの観覧車」を回せ! 回路図

緊急指令! 「ダイソーの観覧車」を回せ!
こんな回路で回します。

Dd12
ステップパルスを出すだけですので、もっと小さなマイコン
で良いのですが、「汎用性」ということでArduino-UNOを
(乗っているチップ ATmega328P)をベースにしました。

ドライバは「A4988」。
ゆっくり回すので1/16のマイクロステップで使っています。
1回転が32768パルス。
最大速度と加減速を半固定ボリュームで設定できるように
しておきました。

そうそう。
24Vから5Vを作っているロームのDC-DCコンバータBP5293-50
発熱しないんで小物の工作で便利に使っているのですが、
どうやらディスコンのようです。
秋月電子の在庫はまだ大丈夫のようですが、検索すると
 「終息品」「製造終了」「注文不可」
の案内が出てきます。

※追記
ユニバーサル基板に手組みした回路。
B01
Arudino-UNOとつなぐのではなく、28ピン・ソケットに実装した
Atmega328Pで動かしています。
左下の緑色基板が「A4988」ドライバ回路です。

※制御波形
Bb000_20220509145801

空いたポートにテスト用のパルスを出していますので
オシロを使えば処理時間が「見え」ます。

1msのタイマー割り込みで加速・減速処理をしています。
一定速度になると、周波数からOCR1A設定値を計算する
処理が無くなり、割り込みの処理時間が短くなります。
Bb001_20220509150101

24V電源がオフした時の「減速」処理です。
Bb002_20220509150201
電源ラインに入れたコンデンサに残ったエネルギー
を使って、急停止ではなくスローダウンできればという
ことで試してみました。
パルス周波数を4kHzまで上げると、先にコンデンサの
電圧が落ちてしまいます。

マイコンを使って制御しましたが、これくらいの処理なら
ステッピングモータを「ゆっくり回す」 回路のように、
「VCO:4046」を使ってパルス周波数を制御するほうが
簡単でしょう。
  ・電源オンで勝手に走り出せばよい。
  ・アナログ的にスローアップ、スローダウンできる。
  ・正逆回転制御は不要。

こしらえた制御プログラム、けっこう複雑です。
  ・16bitタイマーのOC1Aでパルス出力。
  ・タイマー2で1ms割り込み。
     この中で加減速制御
  ・速度、加減速設定ボリューム値はA/D割り込みで。
  ・割り込みと競合するwordデータの扱い。

※スケッチ: ・ダウンロード - wheel1.txt
   (ファイルタイプ、inoではなくtxtにしています)

※出窓に設置 (5月10日)
B02_20220510091701
音は静か。
モーターのドライブ周波数も気になりません。
周波数は約2kHz。
一回転32768パルスなんで、15~16秒で1回転。
A4988ドライバ基板の半固定抵抗、24V電源の電流と
して40mAちょいに調整。
  (制御回路の電流も含めて)
これで駆動トルクは十分。
長時間運転しても、モータの発熱は気になりません。


※youtubeに動画をアップ
  ・https://www.youtube.com/watch?v=G9pLAnvU-uU
音声がザワザワしているのは、再開したご近所の居酒屋さん。
(我がガレージじゃない)


| | コメント (1)

2022年5月 4日 (水)

緊急指令! 「ダイソーの観覧車」を回せ!

現在の出窓、「ピピちゃん」の鳥かごがそばにあるという
ことで、うるさい音が出るものは中止しています。
   モータを使って駆動するもの。
   車輪の音がうるさいもの。
   人感センサーで出窓の前に人が来た時だけ
   動かすようにしてるんですが、それでもうるさい
   のがありますんで。

光り物や静かに動くものが中心になっています。
  旧ブログ:出窓
  「ぶつかるLED」
  「跳ねるLED」
  電磁ブランコ

今朝撮った出窓。
いちおう「こどもの日」モード。
21_20220504093601
左端が「跳ねるLED」。 上方に「ぶつかるLED」。

横行ブランコ。 (電磁ブランコで、左右に揺れます)
22_20220504093601

コアラが乗った木馬が揺れます。
鯉のぼりが回転します。
23_20220504093601

今回は、ダイソーの観覧車
これを「回せ!」っという女房からの指令です。
11_20220504093601

中心軸を3mm径の真ちゅう棒にして、それを後方に延長。
壁を通り越して、裏側に取り付けたステッピングモーターで
回します。
12_20220504093601

モータ軸が5mmですので、樹脂製のカップラーを介して
つなぎます。 (仕事で使った残材があった)
13_20220504093601

ステッピングモーターは28BYJ-48 (DC5V)
14_20220504093601

この改造
2018.07.11 28BYJ-48 ステッピングモーター改造:時代遅れのアナログ爺さん:楽天ブログ
をして、ユニポーラからバイポーラ接続にしています。

試運転で使ったのはこの回路。
ステッピングモータを「ゆっくり回す」

マイクロステップ可能なドライバ回路を使うことで、
モータの駆動電流が調整ができるようになり、モータの
定格電圧によらず、例えば12Vや24Vで駆動できて
便利です。

出窓の人感センサー反応でDC24V電源が供給されるので、
それでスローアップして定速回転に。
電源断検出でスローダウンして停止へという制御を
組み込まなければなりません。

カップラーの様子。
31_20220504103101
カップラーは「アサ電子工業」 製。
        ↓
     オルダム継手 を出してます。


中心軸受けの様子。
32_20220504103101
3mm用スペーサーの上部をカットして真ちゅう棒が乗るように。
スペーサーは観覧車の支柱にハンダ付け。
33_20220504103101
フランジナットを観覧車中心部にハンダ付け。
そこに真ちゅう棒を通してさらにハンダ付け。
  ※白ペイントしたんで見えないけど・・・

※続き・・・
  ・「ダイソーの観覧車」を回せ! 回路図
     制御スケッチも

| | コメント (0)

2022年3月10日 (木)

温湿度センサーDHT11、ライブラリを使うと氷点下の温度がおかしくなるぞ!

出窓の結露対策回路、春めいてきたのでそろそろお片付け
ということで、製作時の記事へのリンクを示してしておきます。

2021年12月7日:湿度センサー「DHT11」がやってきた・・・けど!?
   ↑
氷点下での温度計算異常の発生を確かめています。

これに気が付かない原因・・・
  ・昔からあるライブラリにミスは無いだろう。
     それが、甘い!
  ・みんな、使っているし。
     氷点下まで温度を下げたことあるのかな?
  ・動いているし。
     暴走せずにそれなりの値は出てくるけど。
  ・欲しいのは湿度。 温度はおまけ。
     でもみなさん、温度を使ってるし。
  ・DHT11で氷点下なんて使わないぜ。
     屋外のデータを得ようとしたら、大阪でも
     氷点下になりますぜ。
  ・1℃桁が合ってればヨシ!
     みんな、1℃で満足してないでしょ。

みなさんが使っておられるライブラリに関する言及記事をピックアップ。
Arduino(アルドゥイーノ)始めます:ライブラリのインストールと温湿度センサDHT11をつかう
Arduinoで温度湿度センサDHT11の使い方
温度・湿度センサーDHT11を使ってArduinoで温度と湿度を計測する
などなど・・・

| | コメント (1)

2022年3月 8日 (火)

DHT11を使った出窓の結露対策用ヒータ制御回路 この1週間

3月になって、日差しも長くなり、そろそろ出窓の「結露」も終わりかと。
この1週間の様子です。
H31
「温度15℃以下」の時に「湿度70%以上」でヒーターをオン。
という制御にしています。

一番下の青線がヒーター駆動。
ヒーターonのとき、温度と湿度の波形幅が
広がっている(ヒステリシスでハンチング)様子が
見えています。


| | コメント (0)

2022年1月 3日 (月)

DHT11を使った出窓の結露対策用ヒータ制御回路 クリスマスから正月

クリスマスから正月へ、年越しの記録です。
H23
湿度90%を越えた日があったので、右の湿度値のスケールを
20%~100%に変えています。
現状、これで結露でのガラス曇りはほぼ解消してます。

| | コメント (0)

2021年12月24日 (金)

DHT11を使った出窓の結露対策用ヒータ制御回路 65%設定で

2021年12月20日のは「湿度60%」でヒーターをオンしていま
したが、電気代を抑える目的で設定を「湿度65%」にしてみま
した。
Cap035
これでも結露は出ませんでしたので(夜中も、トイレに起きた
ときにチェック)しばらくこれで運転します。

ヒータがオンしてから次にオフする湿度、センサー(DHT11)の
性能、「最小桁が1%」ということもあり「3%のヒステリシス」を
設けてあります。
65%でオンしたら、オフするのは62%まで下がった時になります。
今回のグラフ「▼▼▼▼」のところでその様子が現れています。

※温度も湿度も出窓内、適当に置いたセンサーでの様子です。
 サーミスタを窓ガラスに接触させて、外の温度の影響を計って
 みると面白いかも・・・です。

| | コメント (0)

2021年12月20日 (月)

DHT11を使った出窓の結露対策用ヒータ制御回路 60%設定で

土曜日の朝からヒータオン湿度を「60%」にして、2日間記録
してみました。
開始時はなかなかの結露で窓の内側下部は真っ白に。
H21-1
しばらくすると、結露が解消。
お昼になって暖かくなってきたということもあり、
時間軸7時間経過あたりで60%を切ってヒータが
オフになっている様子が見えています。
日曜の昼(時間軸30くらい)もヒーターの断続を
繰り返しています。
その部分を拡大すると・・・
H21-2
湿度変化によるヒーターの断続制御が見えています。
青線の値、温度軸で3がヒーターオン。
0でヒーターオフで、1が制御出力はオンだけれども、
ヒータを仕込んだアルミチャンネルに接触させた
サーミスタが過温検出して、ハードで(コンパレータで)
ヒータをオフしている様子です。

制御湿度の設定、どのくらいで結露が消えるのかを
試してみなくちゃなりません。
   ※電気代節約のため
とりあえず「60%」設定だと、結露ゼロということが判明。
今夜は「62%」にして試してみます。

※センサーの位置を自由にできるよう、50cmばかりの
 ケーブルを付けて制御回路と離すようにしました。
 今回は出窓の床から15cm、窓ガラスから20cmほど離れた
 ところに置いてみました。
 このあたりも、結露防止に影響があるかと。

| | コメント (0)

2021年12月13日 (月)

DHT11を使った出窓の結露対策用ヒータ制御回路試験

DHT11を使った出窓の結露対策用ヒータ制御回路 、10日(金)に
完成したんで、2日間、出窓の中に放置してみました。
  ※まだヒーターにはつながず、
   制御は無しで
1分間隔でこんなデータがシリアルで出力されます。
それを記録。
   1 19.4 59.0 3
   2 18.9 61.0 3
   3 18.6 62.0 3
    :
 3286 15.0 63.0 3
 3287 15.0 63.0 3
 3288 15.0 62.0 3
今朝、データを回収。

gnuplotでグラフに。
#gnuplt 5.2で
set term wxt 0
set grid
set colorsequence classic
set title "DHT11温湿度センサー テスト 2021-12-13"
set y2tics
set xrange [0:60] # 時間軸
set yrange [0:40] # 温度
set y2range [40:80] # 湿度
set xlabel "経過時間(時)"
set ylabel "温度(℃)"
set y2label "湿度(%)"
set grid
set xtics 6
set ytics 5
set y2tics 5
#set y2tics format "%3.2f"
set key right top
#set label "0.5C充電時間(分)" at 810,126
#set label "0.5C放電時間(分)" at 810,66
#set label "充電停止電圧(V)右目盛" at 810,36
#set label "2400サイクル目までの変化" at 1650,54
plot "h02.txt" using ($1/60):2 with lines lw 2 ti "温度(℃)" ,\
"h02.txt" using ($1/60):3 with lines lw 2 ti "湿度(%)" axes x1y2 ,\
"h02.txt" using ($1/60):($4*1) with lines lw 2 ti "on/off"

Cap004

湿度データ(緑線)が1%単位なので、デコボコ。
湿度だけスムージングすると、なめらかに。
"h02.txt" using ($1/60):3 with lines lw 2 ti "湿度(%)" smooth bezier axes x1y2 ,\
Cap003_20211213120401
ずっと暖かい天気が続いていましたんで、まだ結露は出ていません。
今週から寒くなるということで、今晩からヒーター制御を始めてみます。
ヒーターオンする湿度、とりあえず「70%」で試してみます。

 

| | コメント (0)

2021年12月10日 (金)

DHT11を使った出窓の結露対策用ヒータ制御回路

出窓の結露対策用ヒータ制御回路 のセンサーがおかしなことに
なっているのに気付いたのが11月29日。
湿度センサー「DHT11」がやってきた・・・けど!? を乗り越えて、
やっと回路と「スケッチ」が完成形に。
こんな回路に落ち着きました。
H11_20211210154301

ユニバーサル基板に組んだ回路を密閉容器に入れてます。
センサーは外出し。
11_20211210154401
  ※前に作ってあった回路を手直ししただけ。
   ガラス窓越しですが、長い間日光に当たって
   いたんで、以前のケースはモロモロに。
   ひどい状態の写真を撮る前に捨てちゃいました。
   珍しい状態(現象出現に時間がかかる)はなんでも
   記録に残さないかんかなぁ。

DHT11が出すデータ列はそのパルス幅で1/0が決まります。
今回のスケッチは、その測定に0.5μs(2MHz)クロックにした
タイマー1の「インプットキャプチャ」機能を使いました。
↓エッジ間のパルス数から1/0を判断しています。

Lレベル50μsの後に、データが0なら25μsのHパルス、
データが1なら70μsのHパルスとなっていて、その中間の
100μs、タイマー1のクロック数で200を判断の基準にして
1/0を判定しています。

オシロで見たその様子です。
B001_20211210154501

20ms幅の開始信号の後、DHT11からデータ列が出ています。
データ取得の間、割り込みは禁止していませんので、
1ms周期のタイマー割り込みとA/D変換割り込みは普通に
走っています。

データ列の終端付近を拡大してみると、
B002_20211210154501
DHT11のパルス間隔は勝手にハード(タイマー1)がカウントし
てくれますので、ソフトは↓エッジが来るのを待つだけ。

Adafruitのライブラリだと、ソフトでループカウンタを回すので
割り込み禁止にしておかないと、カウント値が狂います。
インプットキャプチャを使ってのパルスカウントはこんな時に
ためにあるようなものです。

最後の方で、整数の湿度データをfloatへ変換をしていますが、
その処理時間がどんなものかが見えています。

さて、実際に出窓へ置いて試運転です。
センサーの寿命がどんなものかが気になります。

※現在のスケッチ(txtにしています)
    ダウンロード - humidity3.txt

 

| | コメント (0)