配線のまとめ進めました。
配線を戻していく前に足さないといけない機能があります。
まずはステップモーターの原点用スイッチ。
起動時にステップモーターの0点を決めてそこからどのくらい動かすかを指示しますので結構重要です。今まではこれなしでも結構動いていましたが、ステップモーター、回路保護のために必要です。
スイッチはいつもの小さなものを使用します。それぞれドアが完全に開いた状態でこのスイッチを押す位置に設置
うむ・・・・・・この辺になるとこれを作ったgyoさん以外の人にはどこに付けたのか分からないかも^^;
まっ、安全のためリミットスイッチつけました^^
次に12vの天井のライト等の調光の為にドロオフではVR使っていたのですが、熱でダレてまったく役に立たなくなりましたので、せっかく赤外線リモコンも使用できるようにしていますので、arduinoのPWM端子を使って調光用のプログラム投入w
今回はMOSFETを使用しました。
で~~~~っ!ここからが地獄の始まりww
arduinoでPWMの調光ですよね~これどう考えても無茶簡単ですよね!!
しか~し!!全然調光できないwてか12vの回路の電飾が全くつかない^^;
MOSFET使い慣れていないから端子間違えたかな~と何度確認しても問題なし・・・・・さらに調べるとPWMの波形が全く出ていない!てかHIGHにさえもなっていないw
arduinoですよ!たった一行analogWrite(3,vol_12v);と書いてvol_12vを指定すれば出来るずなのに、まったく波形が出てこない!
はい。これでかなりな時間つぶしましたww
ここまで読んで原因がわかられた方凄い!実は、ここまでですでに問題点が出ているんですよ^^;arduino特有てか私の無知の問題です。
とりあえず色々と確認しながら原因追及~。
まずは、arduino自体が壊れていないかの確認のためloopにanalogWrite(3,100);この1行のみで書き込んで確認。おおっ!ちゃんと調光できた状態で点灯した^^。数字を変えると明るさも変わります!当たり前かw
これで、MOSFETの回路とarduino が壊れていないのが確認できました。
となるとプログラムの問題。元のプログラムに戻して引数を使わずに先ほどのanalogWrite(3,100);を追加。点灯しない・・・・・。
そういえばarduinoのライブラリーの中にはタイマーを専用で使ってPWMを阻害するものもあった気が・・・・とりあえず何処が原因なのかプログラムのあっちこっちを削っては試してみるという原始的な方法に^^;
で、何度もプログラムの一部を消しては書き込んでテストを繰り返しました。
すると
赤外線リモコンの初期設定をすると点灯しなくなるのを発見!えっ!赤外線?タイマーとか使う?
ネットで検索・・・・・・・・・・・あった!
どうやら赤外線リモコン用のライブラリーのIRremoteにあるInfraredSend.pdeは37.9kHzをtone()関数を使って作り出しているそうなのですが、このtone()関数がタイマー2を使っているみたいでピン3,11のPWM出力を妨げるとの事。通常のデジタルピンとしては使用問題なしです。
なるほど∼ライブラリーを使って楽していた分こういった所に落とし穴があるわけですね^^;arduino上の表面のスケッチには表れないので全く原因がわかりませんでした。
それにしてもよりによって、なんで動かなくなるPWM端子を選んで調光始めたのかwほかのPWM端子は問題ないのにwこの辺の引きが私ならではなんでしょうねw
結局ほかのPWM端子に変更するとあっさり調光可能。4時間点灯試してみましたが発熱ほぼなしで大丈夫そうです^^
問題解決しましたので調光用の基板を設置
5V用の接続端子はgyoさんが纏められるようにコネクターをつけておられたのですが、それを拡張してより多くの端子が接続できるように
ただ、ここでも問題発生w
上の写真のコネクター部分よく見てください!私はこの時気が付かずに写真撮っていたのですが、この状態で通電w
なんかいつか嗅いだことある変な匂いがww
これは何かが焼けているw
はいwプラスマイナス逆刺しで赤外線受信モジュール昇天されました^^;配線の整理しながらコネクターの抜き差しをしょっちゅうしていましたのでその時間違えて刺した模様^^;
それにしてもまた配線がゴチャゴチャし始めましたので留め具買ってきて取り付けてみました。
まっ、最初よりはマシかな^^;
ジオラマ台から出てくる配線は基本的に、12Vアダプター用、5Vアダプター用と2種類のコネクターだけになりましたが、ジオラマ台の下にはスペースありますんで、この際これらのアダプターも内部に入れて延長コードに刺してその延長コードのプラグだけジオラマ台から出すというのも有りかもw
これでかなり設営時間短縮できるようになったと思います^^
あとはこの配線改修でちゃんと動くかですねwここが一番手間がかかりそうw
関連すると思われる記事:
- None Found
おはようございます(まだギリ朝w)
以前に掲載されていた改修前の写真と比べるとかなりスッキリしましたね。
Arduinoはライブラリが色々隠ぺいしてくれる分そういう罠もあるのですね。
しっかし、PWMも端子ごとに異なるtimer使って制御されてるとは、AVRってtimerを山のように積んでるんでしょうか?マイコンもアーキテクチャによっていろいろと特色があるものなのですね。面白い!timerが多いのは我々のような使い方にはwelcomeだな~。
電源逆刺しも安定のウッカリでwww もはやネタでわざとやってるとしか思えない(笑)
私はコネクターの逆刺しをできるだけしないように、オスメスともに1番ピンにマーカーで色(大抵は白)を塗っておくようにしてます。なんせ設計してる時の自分が組み立てるときの自分を信用してないんで(^^;
いつも小姑みたいですいませんが、最後の写真のコードクリップって金属製ですか?持ち運びとかするような用途だと、エッジで被覆がすれて最悪断線やショートってことが考えられるので、できれば樹脂製がよいように思います。
あー、こっちにリミットスイッチつけたんですね!ナルホド。
私はラックギアの端末部でつけようと思っていて、場所が混雑してきそうだなぁと
諦めていました。
PWMは、、、さすがの引きw
初めから全ての電気配線が確定していれば、地下に1ユニットにして
まとめて落とす方法が一番シンプルですね。
この際、各ユニット制御もシリアル通信で1本に纏めちゃうとかw
しかし、あのスパゲティをよくここまで整理整頓しました!
素晴らしい!
PWMが簡単だとお!?
(笑)
どれだけブログ訪問者がプログラムを理解しているのかわかりませんが、
なかなか制御は大変なものですよ。
その点6jiro先生はさらっとこなして
ただ関心しますね。すごいです。
あまぞんでPICライター注文したんで
そろそろPICのお勉強もやってみたいとおもいます。
なおさん こんばんは!
山登り後だからお疲れでしょう~w
配線の方は本数はむしろ増えましたがどうにかみられる範囲に収まったかなとは思います^^;
arduinoはライブラリーで楽できる反面こういうことが有るんですね~。
AVRではタイマーは0,1,2と3種類あります。タイマー0,2が8ビットでタイマー1が16ビットです。今回のピン3,11はタイマー2のOCRA2,OCRB2の2種類の端子が使えなくなった状態でした。
逆刺しはホントよくやっちゃうんですよね^^;もう定番ですwそのため臭いですぐにわかるようになってきましたw
今回のコネクターもちゃんと赤と黒で分けているので、これを見逃すと何をやっても無駄な気もしますww
なるほど!確かにあのコードクリップは金属です。こすれて断線とかの可能性もあるんですね~。実はもうこの改修終了してgyoさんに送るため包装したので、この辺はgyoさんよろしくですw
いつもためになる助言ありがとうございます!
gyoさん こんばんは!
ドアのリミッターは私も初めはラックギアの先端に付けようと思いましたが邪魔になるのでここにしました。ここなら場所とりませんからね^^。
このリミッターを付けたことで、扉が半開きになった時にリセットが行えるようになりました。
それと扉の開きっぱなしの件ですが、あれはセンサーの有効範囲内に何も対象物見当たらないときにセンサーが誤作動しているようです。そのため扉が開かない範囲に何かフィギュアの様な物を置くと誤作動はなくなります。何か扉の横に固定しちゃってくださいw
PWMは流石でしょw絶対引き当てますもんねw
全部なおさんのようにI2Cで制御できればいいのですが、それぞれのマイコンがやることが多すぎて私にはちょっと困難ですw
まっ、最終的な配線は極力少なくしましたのでそれでご勘弁下さい^^;
てつのさん こんばんは!
PWMはAVRやPICでの設定とかホント難しかったですよね~。その点arduinoならずいぶん簡単にできるようになっていますよね^^
なんかPICも最近ではMMCを使って簡単にできるようになったとか聞きます。(私はまだやった事ないのですが^^;)
てつのさんこそ、色々なものを扱えてプログラミングにも精通されていて尊敬しています!
PICをやられるなら、なおさんのことは当然ご存じと思いますので省略しますが、Vividさんのブログhttp://vividhobby.blog.fc2.com/ お勧めです^^
私には理解不能なスーパーPIC使いですよ^^
こんばんは
今日は久しぶりにRCへ行って、コメント遅くなりました!
「彼女」のタイマー処理隠しの「仕打ち」でしたか!(笑) ライブラリーでどのハードを使用しているかなんて、なかなか気づきませんよね。PICのMCCは、自分でPWMなどに使用するTMRを指定するので、ここまでの問題はないみたいです。
配線の留め具は、なおさんに一票! タイラップだけでも綺麗になりますよ。
by PICの呪縛から逃れることのできないVividより
Vividさん こんばんは!
arduinoさんのタイマー処理理解できていませんでしたw
そおうなんですよ〜。ライブラリーの中なんていちいちのぞいていないからどの様な処理がされているかわからない場合がほとんどです^^;まっ、みてもわからない場合がほとんどでしょうがw
あっ!MMCでなくてMCCですかwそうですよねarduinoほど隠されていないですよね〜。便利な様で不便な一面ですね^^;
この写真の後に、あの金具以外にもタイラップも多用して配線まとめましたw