楽々PIC

水田除草と言うブログを書いていますが、PIC関連の記事が意外に人気で驚いています。 PICを使った電子工作に興味を持つ方が多いことを知って、一緒にPICを学ぶブログを作りたいと思いました。 「楽々PIC」は教材と言うよりも少し実用性?のある楽しい道具を作りながら学ぶブログを目指します。

回路図

RRP1320-3 回路案

PIC18F1320 を使った3つ目の電子工作は、フルカラーLED4個の発光制御です。 点滅は勿論、RGB各色16段階(滅灯含む)の輝度を制御し、16段階=4bit x 3色で12bit(4096色) x 4灯の表現力で光を演出します。 ユックリと穏やかに表情を変え、時には最短0.1秒の明滅を交えて花火やネオンサインを思わせる演出を可能にしたいと考えています。 お馴染みの赤外線リモコンで演出パターンを切り替えて楽しめるツールを狙います。

PICマイコンのソース電流とフルカラーLEDの最大損失、白色発光時のRGB各色のバランスを考慮して、下図の回路を想定しています。 動作確認と並行して製作に取り掛かります。

RRP1320-3回路図

フルカラーLEDをターゲットにしていますが、要するに12個のLEDの点滅及び輝度制御が可能な回路ですから、他の応用も考えられると思います。

LEDに振り込む電流が PICkit3 の供給能力を上回るため、ACアダプター必須の予定です。


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。




RRP1320-2 回路案

LCD と 赤外線リモコン受信機能を備えた温度制御装置 RRP1320-1 を紹介してきましたが、新しいシリーズとして RRP1320-2 を作り始めたいと思います。 RRP1320-1 は汎用タイマーと赤外線リモコンの設定機能を追加したら終了の予定です。

RRP1320-2 は赤外線リモコン及び(または)焦電センサー入力をトリガーに音声合成や RC サーボを動かす装置にしたいと考えています。

回路案は下図の通りですが、現時点では動作確認を済ませていません。

RRP1320-2回路案

以前に購入して手持ちがあると言う理由で、左上にシャープ製の測距センサーを書きましたが、安定供給が期待できるのか不明な為、「お試し」の範疇に成りそうです。

赤外線リモコン受信モジュールは、以前のものより安価な PL-IRM2161-C438 に代えてみました。 資料を見る限り出力信号の極性が逆のようですし、動作未確認なのでご注意ください。
上図で動作します。 2012/11/09

18番ピンに接続した LED を赤外線リモコンの送信側に使えれば複数の装置(PIC)が連携するシステムが出来るのではないかと楽しみにしています。

「楽々PIC」はこれからも様々な電子工作に挑戦します。


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。



ブレッドボード 3 配線図

 「RRP1320-1-01 概要」で紹介したドキュメントの一つにブレッドボード配線図があります。 回路図と一緒に使えば、ブレッドボードに回路を作る作業を容易にすると考えて作成しました。

役目を終えて分解したブレッドボードを、再構築する時にも便利なように思います。

BB配線図

上図は、ブレッドボード EIC-701 を採用しています。 楽々PICで扱う回路は規模が小さいので、このブレッドボードを標準ブレッドボードと位置付けて今後の製作と紹介を進める予定です。

アップロードしてから気付いたのですが、U3 の向きを表現し忘れました。 ブレッドボードの穴のアドレスで F31 が U3 の1番ピンです。

ブレッドボードで作っていれば、入出力インタフェース回路を容易に変更して試せるので便利です。 例えば FET でモーターを駆動する予定だけど、トランジスタで LED を点灯させてデバックしたり、ブザーに変えてみたりと言った場面では便利だと感じます。 ( FET のままでも LED やブザーを使えますが・・・)


ブレッドボード関連記事のインデックスはこちら → ブレッドボード 


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。




RRP1320-1 回路図

 以前、「楽々PICとは」と言う記事に、このブログを通して進めるPICの学習方針のようなものを次のように書いています。

 学習ツールのような基板と開発環境を動かしながら、一部のプログラムを変更してみて、思い通りの変化が得られるかを確かめて勉強する方が近道だと思います。 このブログは「教える」程の知識の無い私が書き進める都合上、「学習ツール」のように広く学べる基板を使うのではなくて、「楽しんで使える道具」を作りながら勉強することを狙います。

これまでに幾つかの機能を試して、私自身ある程度PICが使えることを確かめ、「楽しんで使える道具」を構成するパーツとしてのプログラムを作って来ました。 USB など、まだまだ勉強が必要なこともありますが、そろそろ「楽しんで使える道具」を具体化したいと考えていました。

様々なキーワードでブログを訪れてくれる様子を見ながら、ゼロから学ぶからこそ目に見える成果が少なく、退屈な作業の中で挫折しかねないアセンブラ初心者の方々を支援したいと思います。 そして、工夫次第で使える道具を作り、応用例を紹介する予定です。 応用例はマイコンを勉強中の方でなくても興味を持って貰えるものを目指します。 道具を構成するハードウェアはブレッドボードで作ります。 特に気に入ったり、繰り返し使いたい場合はユニバーサル基板等でより小型軽量に作ることも可能です。

その回路に名前を付けてシリーズ化します。 シリーズ最初の回路 RRP1320-1 は下図の予定です。

RRP1320-1_回路図


表示器としてLCDを採用し、タイマーやスイッチ、温度センサー、赤外線リモコンと言った入力をトリガーに FET 出力を作り出します。 LCD制御や、赤外線リモコンなどの制御をゼロから学ぶのではなくて、初めは動作確認されたプログラムを使い、その機能と他の入出力を結びつけるプログラムを自作するだけで「目に見える成果を出せる環境」を提供することで支援したいと思います。 そして、公開されているソースを見て、あるいは一部を変更して結果を確かめながらLCD制御や赤外線リモコンの制御も自作できるようになると思います。 

アセンブラは他の人が作ったソフトウェア資産を活用し難いと思いますが、同じハードウェアであれば再利用可能な形で提供できると思います。 例えばLCD制御はデータ・メモリーの所定の範囲(仮想V-RAM)に ASCII コードを書くだけで(見かけ)自動的にLCDに表示される機能を提供ます。 この仮想V-RAMは PIC18F1320 には無いけれど RRP1320-1 にはある SFR のような存在と言えそうです。 既に「LCDに自動転送」と言う記事で機能を確認済みですが、少しでも利用しやすいように調整中です。

RRP1320-1_1

以下のサイトでは、部品表やブレッドボード配線図、プログラムの使い方など詳細なドキュメントと一緒にプロジェクト一式をダウンロード可能な形で提供しています。

rrpdlc



以下は関連記事のインデックスにします。

RRP1320-1-01 概要 
 一部をブレッドボードに実現して、所定のデーター・メモリーの内容をLCDに自動転送するプログラムを作りました。 データ・メモリーの所定の範囲(仮想V-RAM)に ASCII コードを書くだけで(見かけ)自動的にLCDに表示される機能を提供ます。

RRP1320-1-02 概要 
  RRP1320-1-01 に赤外線リモコン受信機能を追加して、RRP1320-1-02 を作りました。 赤外線リモコンを受光するとLCDの2行目に受信コードを表示します。 登録できる赤外線コードは16個、これに登録外の場合も合わせて17個のサブルーチンを準備して、赤外線リモコン受信の都度、17個の中のどれかをサブルーチン・コールします。

RRP1320-1-03 概要 
 「汎用タイマーの構想」に基づいて、RRP1320-1-03 を作りました。 内臓クロックを使ったタイマーですから、3%程度の誤差があるとは思いますが、使える場面が多いと思います。 プレタイマー、イベントタイマー、イベントピッチと言った時間や、繰り返し回数と言った定数は所定の範囲内で変更可能です。

RRP1320-1-04 概要 
 RRP1320-1-03 に温度制御機能を追加しました。 パン作りのイースト発酵などに応用出来そうです。 温度制御用に加温用と冷却用の出力を準備しました。 各々 EEPROM に保存した温度を超えると動作します。


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。





PWM 4 回路図

 「PWM 3 速度変更」の続きです。 今回は、回路図とノイズ対策の話を書いてPWM関連記事を終わります。 <PICデバイス=18F1320> PWM制御対象はマブチモーター RE-140RA ( FET 2SK2232 でドライブ)です。

PWM関連の実験を終えた、RRP1320-0-7 の回路図は下図の通りです。 図をクリックして別ウィンドウで見ると、定数等も確認出来ると思います。 「音声合成LSI 2」で紹介した通り、回路変更(CPU端子の割り付け変更)を行っています。 RRP1320-0-5 以前のプロジェクトを試す場合はご注意ください。

RRP1320-0-7_circuit


FET のゲート抵抗漏れを修正しました。 2012/09/20日
LCDコントラスト調整用ボリューム配線の誤記を修正しました。 20012/09/21日

なお、この記事からダウンロード出来る、RRP1320-0-7 は、これまで紹介した全ての機能( LED点滅LCDに自動転送RCサーボ赤外線リモコン受信温度センサー音声合成LSIPWM)を含みます。


今回は、モーターのブラシとコミュテータ間で発声するノイズ対策について紹介します。 購入したままのマブチモーター(RE-140RA )を接続して動作確認するとノイズの影響で回路動作が不安定になります。 目に見える症状は以下の通りです。

(1) 赤外線リモコン受信は休みなくノイズを受信します。
(2) LCDが予定外の表示をすることもあります。
(3) PICkit3 が Failed to get PC. と言うメッセージを表示して Run 出来なくなる。
    パソコンと同期が取れなくなったと言うエラーです。
(4) Release 版をプログラムして PICkit3 を切り離しても同様(かえって悪い)です。
    頻繁にリセットするようです。

モーターの端子とケースの間にコンデンサを入れるのが一般的な対策ですが、先にモーターの電源を別電源にしました。 それぞれに異なるACアダプターで給電しても効果なし、モーター側を乾電池にしても変りません。

とうとう、モーターの端子とケース間をセラミックコンデンサー(103 0.01uF )で接続したところ、すっかり安定しています。 赤外線リモコンも安定しています。(モーター無しでも稀にノイズ受信していましたから同程度です。)

DSC00118

2本のリード線とケース間に、各々上図のようにコンデンサーを半田付けします。

DCモーターのノイズ対策は、コンデンサーを付けることが先決ですね。


以下で、一連の記事で紹介したソース・ファイル(プロジェクト)をダウンロード出来ます。
LHA書庫です。
 http://jyosou-robot.livedoor.biz/pic/RRP1320-0/RRP1320-0-7.lzh


PWM 関連記事のインデックスはこちら → PWM 


楽々PIC」は楽しい道具を作りながら学ぶブログを目指します。



ダウンロードコーナー
記事検索
アンケートに御協力下さい


アーカイブ
楽々PIC 宛てBlogMail


--- ご了承下さい ---

注意して記事を書いていますが、記事及びリンク先の情報による不利益について、一切責任を負い(負え)ません。
QRコード
QRコード
アクセスカウンター

    Atsuhiro Imai

    バナーを作成


    プロフィール

    jyosou_robot

    • ライブドアブログ