[HOME] 究極の鳥型グライダー | (C)inakakoubouKANAI |
PIC12F683を使った発見ブザーの製作 |
草むらに降りたときに発見ブザーがあると便利です。飛行中にトビに追われたとき、着陸を知らせたいときにも尾を上げるか、下げるとブザーを鳴ると便利です。その操作をPICにプログラミングして、100円ショップで買った防犯ブザーから取り出した圧電ブザーを慣らします。 |
1.使う部品 |
マイクロコンピュータ PIC12F683 | |
ソケット | |
ダイオード E102 | |
コンデンサー 0.1μF | |
抵抗器 10kΩ | |
トランジスタ 2SC1815Y | |
電子ブザー(または、防犯ブザーから取り出した圧電ブザーでも良い) |
2.防犯ブザーから圧電ブザーを取り出す |
100円ショップで買った防犯ブザーのフタを開けて、基板にカッターで傷を付けてニッパで切り、圧電ブザーの発信器を取り出します。 |
ブザー部分をケースを切り抜いて取り出し A の部分をショートします。 |
発信器と圧電ブザーを使います。 発信器の+と-にPICの回路をつなぎます。 |
3.配線 |
PICがブザーを鳴らす回路を作ります。 |
ダイオード、コンデンサー、抵抗、トランジスタ、ブザー、PICソケットを使います。 全部で150円程度です。 |
|
<抵抗R1> マイコンの出力電圧 = 5V ベースエミッタ間飽和電圧 = 1.0V ベース電流 = 負荷の電流 ÷ 直流電流増幅率 = 30mA ÷ 200 = 0.15 mA (2倍して0.3mA) 抵抗R1 = (マイコンの出力電圧 - ベースエミッタ間飽和電圧) ÷ ベース電流 = ( 5V - 1.0V ) ÷ 0.3mA = 10 kΩ |
プログラムを書き込んだPICをソケットに挿したら、完成です。 動作を確かめ、問題があったら、プログラミングからやり直します。100回ほど書き直しができます。 |
電子ブザーを使った発見ブザー |
圧電ブザーを使った発見ブザー |
4.プログラミングの準備 (費用:5000円程度) |
PICを使うために必要な物です。 | ||||||||||||||||||||
|
5.プログラミングソフトをセットアップする | |||||||||
|
6.PICの仕様 |
PIC12F683 詳しくはデータシートを調べる |
|
VDDは、電源+、VSSは、電源- GP0~GP2,GP4~GP5は入出力として使用でき 各ピンは最大25mAの電流が流せる。 GP3は入力専用で出力には使用できない。 |
|||||||||||||||||||||||||||
|
7.プログラムで何をするか、手順を考える |
受信機から、デジタル信号が出ます。 デジタル信号は、20msec程度の周期で、送信機のレバーがニュートラルのときの1.52msecを中心に1~2msec程度に変化します。 そこで、送信機のレバーを下げたときと、上げたときにブザーが鳴るようにしたいと思います。 |
||||
<手順> | ||||
1 | タイマー0を使って、0.01msecごとに受信機からのGP4を調べ、信号がONになっている回数を調べる。 | |||
2 | 信号が162回以上ONだったら、GP5をONにする。 | |||
3 | 信号が142回以上ONだったら、GP5をOFFにする。 | |||
4 | 信号が142回より短かったら、GP5をONにする。 | |||
8.C言語のプログラミングソフトの起動 |
C言語でプログラミングするには、MPLAB X IDE を起動して、以下の手順で行います。 |
(1)プロジェクトの作成からはじめます。 |
File → New Project を選択 |
Choose Project → Standard Project |
Select Device → Family = Mid Range 8-bit → PIC12F683 |
Select Header → 変更無し |
「4.Select Plugin Bord」はパス。 |
Select Compiler → XC8 |
Select Project Name and Folder → Project Name = PIPI → Encoding = ISO-2022-JP |
以上でProjectに PIPI が追加される。 |
(2)ソースファイルを開きC言語で記述する画面にします。 |
Projects の PIPI のSource File を選び、メニューから File → New File を選択する |
Choose File Tipe → Categries = MicrochipEmbedded → XC8 Compiler 、 FileTipe = main.c |
Name and Location → File Name = PIPI1 、 Extenion = c |
以上でC言語を記述するソースファイルの画面になる。 |
/* から */までの間の注釈欄を作品名などに書き換える。 |
(3)ソースにコンフィグレーションを書きます。 |
選択するだけで、コンフィグレーションが書き出されます。コンフィグレーションでPICの基本的な使い方を指定します。 |
MLAB X IDEの画面で、 Production → Set Configuration Bits を左クリックする。 |
Option を選択する。 |
を左クリックして、表示された記述をコピーして、コーディングのページにペーストする。 |
<コンフィグレーションの設定項目> |
FOSC:外部クロックを使うか、内部クロックを使うか → INTFCCLK内部を使う WDTE:ウォッチドッグタイマー(フリーズしたときに復帰させる処理を書くときに使う)を使うか → OFF使わない MCLRE:ハードウェアリセット(スイッチで再起動する)を使うか → OFF使わない CP:プログラムプロテクト(プログラムの読み出しを保護)を使うか → OFF使わない CPP:データプロテクト(データの読み出しを保護)を使うか → OFF使わない BOREN:ブラウンアウト(電源が不安定になったときの処理)を使うか → ONにしてブラウンアウト発生時にマイコンを停止する IESO:2段階クロック(外部クロックを使う前に内部クロックを使う)を使うか → OFF使わない FCMEN:バックアップクロック(外部クロックが壊れたら内部クロックを使う)を使うか → OFF使わない |
(4)メインルーチン、サブルーチンを書き加えます。 |
(5)PICに書き込む形式にビルドして完成です。 |
を左クリックしてビルドします。( → Clean and Build Main Project) |
Loding completed と表示されれば成功です。 |
9.PICとPICkit3をつなぎプログラムを書き込むアダプターを作る (費用:200円程度) |
PICのピンに直接、PICkit3をつながないで、ソケットを使ってつなぐようにすると便利です。 |
ソケットと10KΩの抵抗で作ります。 小さいソケットでも16ピンの穴があるので、 半分を使います。 レバーを動かして、PICを外したり、止めたりします。 |
10.PICへ書き込む |
MPLAB X IDE を起動してから、 パソコン→PICKIT3→書き込みアダプター→PIC をつなぎ 以下の手順を実行します。 |
プロジェクトが開いていなかったら、開きます。 |
書き込みツールを PICkit3に指定します。 |
供給するPowerを指定します。 |
電圧を4Vにします。 |
4Vにします。 他の電圧だとうまくいかないようです。 |
を左クリックして、書き込みます。 |
Verify completeと表示されれば成功です。 |
<TOP |