So-net無料ブログ作成

PICの導入 [フジミ SPINNER 製作記]

パトランプの再現に、PICを導入しました。

スピナーには、ルーフに14個のパトランプが光っています。
下面にも点滅しているランプが6個あり、合計で20個のLEDが点滅している事になります(-_-;)
これらのLEDひとつひとつに、点滅回路を作るのはものすごく大変な作業ですね。
故障も多くなりますし、消費電力もバカになりません。

そこで、今回はPICマイコンを使ってみる事にしました。
PIC(ピックと読みます)とは、ワンチップの中にCPU・メモリ・I/Oが納まっており、プログラム次第で色々な制御が出来るマイコンです。
用途に合わせて実に様々なPICが販売されていて、メモリ容量や扱える制御ピンの数などで、最適なチップを選べます。
A/D変換機能付きやUSB制御まで搭載されたものまであります。
プログラム次第で、電飾以外でもモーターの制御や音を作る事だって出来ちゃいます。

大変便利なPICですが、残念ながら誰でも簡単に出来るものではありません(-_-;)
それなりの開発環境やPICにプログラムを書き込む専用のライター、そして最大の難関であるプログラミングの知識が必要になります。
幸い、ボクはZ80という8ビットのマイコンでプログラムを組んでいた経験がありましたので、割とスムーズに環境が整いました(^^♪
PIC開発環境.jpg
まず、自分の用途に合ったPICを選択して、データシート(英文)から初期設定のパラメータを解読します。
パソコンを使って、アセンブラやC言語でプログラミングを行います。
出来たプログラムを、パソコンでコンパイルしてPICが理解できるコードに変換します。
PICライタを使って、PICにプログラムを書き込みます。
書き込んだチップを基盤に差して動作確認して完成です。

開発ソフトは制約はありますがフリーソフトで手に入りますし、PICライタも通販で入手可能です。
多少のコストは掛かりますが、環境は割りとすぐにそろえる事ができると思います。
でも、PICの使い方を理解してプログラムを作る事は、未経験者には相当困難な事になると思います(-_-;)
プログラミング言語を習得するという事は、新たに英語やフランス語を覚えるようなもので、文法やセオリーを知らないと1行も書けません。
PICの話題だけや、プログラムの話題だけでそれぞれ専用のサイトが作れるほど、膨大な知識と経験が必要になります。
よく、フォトショップやエクセルのマクロ、ホームページデザインと同じ様なものと勘違いされる方がおりますが、それはアプリケーションが用意した書式を使っているだけです。
PICのプログラムはハードウェアと直結しており、OSやアプリケーションそのものを作る様なものだとお考え下さい(ちょっと大げさかも)

今までこのブログでは、みなさんがすぐに応用出来る様な回路を紹介してきましたが、今回ばかりは詳しい解説を省略せざるを得ませんm(__)m
こんな便利なデバイスがあるという事を紹介するだけに留めさせて頂きます。
もし、興味がある方は、ネットに情報がたくさんありますので覗いてみて下さい。
PICの持つ可能性に、きっと驚くと思います(^_^*)

さて、PICを使えばLEDの制御は全てプログラムで行いますから、回路はとっても簡単になります。
PIC LED回路.jpg
今回は18ピンのPIC、16F88を使用しました。
9Vの電源から5Vの電圧をレギュレーターで作っている他は、I/OピンにLEDを繋ぐだけという、とってもシンプルな回路となります。
PICは内部でCPUとメモリが完結していますので、ピンは電源以外全てI/Oに使えます(設定は必要です)。
実際に製作した、実験回路です。
P1100526.JPG
部品点数が少ないので、消費電力も低く抑えられます(^^♪
電源の最大容量に問題がありますが、ちゃんと動作してくれたので結果オーライです(^_^*)
こんなシンプルな回路でパトランプが再現できるのか、不安に思うかも知れませんが、複雑な動作のほとんどはソフトウェアで行う事になります。
今回はプログラムでPWM(パルスワイズモジュレーション)制御を行い、ふわっと点いてスーッと消える動作を行います。
しかも、14個全てが別々のタイミングで光ってくれないと、常に同時に光るLEDが出来てしまいますので、わざと同期させないようにします。

実際の点灯の様子は、YouTubeに動画としてアップしました。
同じ実験基盤に、違うプログラムが入ったPICを差替えています。
プログラム次第で、どんな点滅も作れる事が伝わって頂ければ幸いです(^^♪

こんなに素晴らしい、無限の可能性を秘めたPICを、詳しくご紹介できないのは大変残念なのですが、ここは模型の製作ブログですので、あまりに専門的な解説は避けたいと考えました。
ご質問や導入の方法、プログラミングに関する質問もお受けできませんのでご了承下さい。
ご理解の程、よろしくお願い致しますm(__)m

現在、2つのブログランキングへ参加しています。
1日1回、応援のワンクリックをぜひお願いしますm(__)m
人気ブログランキングへ にほんブログ村 その他趣味ブログ 模型へ


コメント(30)