テクニカルコーナー
せっかく面白いアイデアを思い付いても、それを実現させるための回路を考えるうちに興味が失せてしまったことは無いでしょうか?例えば、ここに3つのLEDを光らせるだけの回路があります。
この回路を改良して、LEDが時間を空けて順番に光る、『信号機』にするにはどうすればよいでしょうか?
これをアナログ回路で実現させるのは、なかなか難しそうです。
複雑な動作をディスクリートだけで実現させるのは難しい
マイコンは小さなコンピューターです。ロジック回路を組む代わりにプログラムを書き込むことで、複雑な動作をカンタンに実現できます。
マイコンを使えば複雑な動作を実現できる
今回は、マイコンの1つである“PIC12F675”を紹介します。このマイコンは、PIC(ピック)マイコンと呼ばれるもので、8ピンですがプログラム次第で高度な処理も可能です。サンプルプログラムを用意していますが、マイコンにプログラムを書き込むための機械(ライター)とアプリケーション(フリーソフト)が別途必要なので、敷居が高いと感じるかも知れません。ですが、PICマイコンを使えるようになれば、必ず電子工作の可能性が大きく拡がります。まずはマイコンの紹介をご覧いただき、これを機にぜひ試していただきたいと思います。
<参考:手軽に使えるマイコン『PIC12F675』>
「マイコン」と聞くと、大きくて端子が沢山付いたICを連想する方が多いと思います。PIC12F675は8ピンDIPタイプと小さく、低電圧・低消費電流で動作する、Microchip社製のワンチップマイコンです。今回は触れませんが、A/Dコンバーターやクロックも内蔵されていて、高度な処理が必要な用途にも使用できます。価格も200円程度なので高い機能の割に安価です。
この小さなICに多くの可能性が詰まっている
意外と単純なマイコンのはたらき:
PIC12F675には、“汎用入出力”(GPIO: General Purpose Input/Output)と呼ばれる、ロジック電圧(High/Low)を入出力できる『ポート』が6つあります(ただし3番ポートは入力専用)。ポートの入出力はプログラムで設定できます。例えば、0番ポートを出力ポートにして、1番ポートは入力ポートにするといったことができます。
・High/Lowを切り替えられる『出力ポート』
出力ポートの動作は、ロジック電圧のHighとLowを切り替えるだけです。冒頭の回路では、プログラムによってポートの出力切り替えることでLEDをON/OFFさせています。
PICが出力する電圧はPICに加えられている+/-電源です。というのも、PICの内部にはトグルスイッチがあって、それをプログラムで制御してPIC内部の+または-(GND)ラインに繋いでいるからです。
・High/Lowを読み取れる『入力ポート』
入力ポートは、加えられたロジック電圧「High」と「Low」を“1”と“0”で認識します。
上図の例では、右のスイッチがポートとGNDと繋いでいるので、ポートには0Vが入力されています。左のスイッチは抵抗を介して電源とポートを繋いでいるので、ポートには3V(*)が入力されています。後述しますが、PICはポートに電圧を加えていない状態を“0”、加えた状態は“1”と見なします。
*ポートの入力インピーダンスが極めて高いため、抵抗を介しても電圧降下はほとんどありません。
<参考:プルアップとプルダウン>
PICの入力ポートはインピーダンスが非常に高いため、抵抗で終端しないとノイズなどで電位が不安定になりがちで、電圧を加えていないのに電圧入力を検出してしまうことがあります。上の回路図にはスイッチと電源の間に抵抗器が入っています。ポートと電源ラインを抵抗で繋いでスイッチを押していない間は電源電圧を加えて電位をHighあるいは1に固定しておくことを「プルアップ」と言います。逆に、ポートとGNDを抵抗で繋いでスイッチを押していない間はGNDレベル(0)に電位を固定しておくことを「プルダウン」と言います。
プログラムを書き込む準備:
百聞は一見にしかず。とにかく、実際にPICを動かしてみましょう。2014年7月号の『デジタルを楽しもう』にもPICマイコン導入の記事がありますので参考にしてください。
http://fbnews.jp/201407/rensai/jh1nrr_digital_03_01.html
下記のツールを用意します。
・開発用アプリケーション(フリーソフト)
Microchip社のサイトから、インストーラーをダウンロードします。
http://www.microchip.com/ja/mplab/mplab-x-ide
・書き込み用アプリケーション(フリーソフト)
開発用アプリケーションのインストーラーに含まれていますので、同時にインストールできます。
・PICライター(プログラム書き込み機)
電子パーツショップで入手できます。
・PIC本体(PIC12F675)
・ICテストクリップ
PICにプログラムを書き込むときに、PICを挟んでライターと接続するためのツールです。
サンプルプログラムをPICに書き込む:
今回、2種類のサンプルプログラムを用意しました。ダウンロードしてPICに書き込んでください。
https://drive.google.com/open?id=0B_FIFCYEaSemS1U4TGhLWXlpRmc
サンプルプログラムの内容:
では、ブレッドボードにリード部品を挿入して回路を組み、PICマイコンの動作を見てみましょう。
ブレッドボード上に回路を組み込んだ例
・信号機
青→黄→赤→青→・・・というように、時間を空けて3つのLEDが順番に点灯します。「一定時間待ってから次の処理をさせる」というマイコンの機能を利用しています。マイコンに同じ処理を何度も繰り返させて、いわば時間稼ぎをさせているのです。
おもちゃの信号機に回路を組み込んだ例
PICのポートからは最大20mAが取り出せますので、ドライブ回路なしでLEDを点灯させることができます。
※電流制限抵抗の値は、使用するLEDによって変わります。My Project 7月号を参考にしてください。
・カップ麺タイマー
3分経過するとアラームが鳴る、カップラーメン用のタイマーです。LEDの点滅とアラームによって経過時間を表します。動作を開始するとLEDが点灯し、1分経つと点滅に変わります。さらに1分経つと点滅が速くなり、3分経った時点でアラームが鳴ります。
百円ショップで入手した密閉ケースに収めたところ
電源はトランジスタスイッチを介してPICへ供給しています。本タイマーを使っていない間はPICと電源が切り離されるため、待機電流がほぼゼロになります (手持ちのテスターでは“0.00mA”)。また、タイマーの起動にはプッシュスイッチを使わず、電極間を指で触れる『タッチスイッチ』を使いました。さらに、コーン紙がプラスチック製の防水スピーカーと気密性の高いプラスチックケースを使い、防水性を確保しています。
2本の電極を指で触れると、電極間に僅かな電流が流れてNPNトランジスタ(2SC1815)がONします。これによりPNPトランジスタ(2SA1015)のコレクタ-エミッタ間が導通してPICに電源が供給されます。PICが起動すると、直ちにGP5ポートをHighにしてスイッチONの状態を維持します。3分が経過してPICが動作を終えると、今度はGP5ポートをLowにしてトランジスタスイッチをOFFにします。こうしてPICが自分で自分の電源供給を断ちます。
スピーカーを鳴らすビープ音は、0.5ミリ秒間隔でポートのHigh/Low出力を切り替えて矩形波を生成しています。スピーカーはインピーダンスが低いため、PICのポートで直接駆動させると電源ラインの電圧降下が過渡的に生じます。そこで、電源ラインに22uFのコンデンサを入れて降下電圧を吸収させています。これが無いと、アラームが鳴ると同時に供給電圧がPICの動作電圧を下回り、動作が止まってしまいます。
<参考:無電源化へのアプローチ>
電池の代わりに、ペルチェ素子で回路を動作させられないか検討してみました。ペルチェ素子は、両面の温度差が大きいほど高い電圧が発生する発電素子です。しかし、お湯を注いだカップ麺のフタに乗せて起電圧を測ってみると1.1V程度でした。環境温度の低い冬でも、PICを動作させられる電圧(2V)を得るのは難しそうです。もし変換効率の良い昇圧回路を使えば、動作させられるかもしれません。
PICプログラミングは“レジスタ”操作がすべて:
では、PICのポートを制御するために、どのようにプログラミングしているのでしょうか?以下に基本的な仕組みを記載します。プログラミングの方法については下にある解説動画をご覧ください。
PICは内部に『レジスタ』と呼ばれる“箱”を持っています。そしてレジスタの中には『ビット』と呼ばれる8つの“仕切り”があります。
このビットの中に“1”か“0”を入れることがPICのプログラミングです。特定のビットに“0”を入れることをクリア、“1”を入れることをセットと呼びます。
ポートの入出力設定には、『TRISIO』という名前のレジスタを使います。このレジスタのビットに“1”か“0”を入れる、つまりセット/クリアすることでポートの入出力を設定します。
『TRISIO』レジスタのはたらき
『TRISIO』レジスタの各ビットはポート番号と連動していて、例えばレジスタの1番ビットをセット(“1”)すると1番ポートが入力ポートに設定され、2番ビットをクリア(“0”)すると2番ポートが出力ポートに設定されます。ただし、これはポートの入出力方向を設定しただけであって、実際に出力ポートからHighやLowのロジック電圧を出力するには、『GPIO』というレジスタのビットを操作します。
『GPIO』レジスタのはたらき(出力)
『GPIO』レジスタもビットとポートが連動しています。セット(“1”)したビットに対応するポートがHighになり、クリア(“0”)したビットに対応するポートがLowになります。
『GPIO』レジスタは入力ポートの状態を読み取るときにも使われます。ポートに加えられているロジック電圧がHighであれば対応するビットがセット(“1”)され、Lowであればクリア(“0”)されます。例えば1番ポートにHighが入力されると1番のビットがセット(“1”)され、3番ポートにLowが入力されると3番のビットがクリア(“0”)されます。「コンピューターは0と1だけで計算する」とおり、PICは入力ポートに加わるロジック電圧「High」と「Low」を“1”と“0”としてビットに取り込みます。
『GPIO』レジスタのはたらき(入力)
最後に:
SDRのように、ハードウエアで構成されていた回路はソフトウエアによる処理に置き換わりつつあります。ソフトウエアに部品は必要ありません。動作の変更や修正のためにハンダを付けたり外したりする必要がありません。実は、『信号機』と『カップ麺タイマー』のプログラムは全く同じソースファイルで、GP3ポートを電源に繋ぐかGNDに繋ぐかによって、実行するプログラムを切替えています。このように1つのソースファイルに複数のプログラムを記述して、実行させるプログラムをスイッチで選択するのも、1つのマイコン活用方法です。
一方で、今回のカップ麺タイマーのように、回路を工夫して便利で面白い動作を実現させることも出来ます。ハードウエアとソフトウエア、両方の楽しい要素を取り入れて遊ぶことが、電子工作の最高の楽しみ方だと思います。
いつも記事をご覧いただきありがとうございます。2016年の10月から1年間、毎月記事を担当させていただきましたが、今月で一旦終了となります。12月からリニューアルし、季刊になりますが、さらに充実した内容をお届けします。
My Project バックナンバー
2022.11.15
11月号後半の記事をアップしました
2022.11.1
11月号の記事をアップしました
2022.10.17
10月号後半の記事をアップしました
2022.10.3
10月号の記事をアップしました
2022.9.15
9月号後半の記事をアップしました
2022.9.1
9月号の記事をアップしました
2022.8.15
8月号後半の記事をアップしました
2022.8.1
8月号の記事をアップしました
2022.7.15
7月号後半の記事をアップしました
2022.7.1
7月号の記事をアップしました
2022.6.15
6月号後半の記事をアップしました
トップページに表示する表紙写真を募集中です。横1000x縦540ピクセルのサイズでご自慢の写真をメール添付でご送付ください。(infoアットマークfbnews.jp) 採用者には、月刊FB NEWSロゴ入りマグネットバーを送らせていただきます。 なお「撮影者: JL3ZGL」の様に表記させていただきますが、表記不要の方は、その旨合わせてご連絡ください。
2022.6.1
6月号の記事をアップしました
6月4日(土)、JH1CBX/3が14MHz SSBに初オンエアします。
入感がありましたらぜひお声がけください。
2022.5.16
5月号後半の記事をアップしました
2022.5.2
5月号の記事をアップしました
5月14日(土)、JL3ZGLはオペレーターにMasacoさんを迎えHAMtte交信パーティに
参加します。詳しくは4月号のニュースをご確認ください。
2022.4.15
4月号後半の記事をアップしました
2022.4.1
4月号の記事をアップしました
2022.3.15
3月号後半の記事をアップしました
2022.3.1
3月号の記事をアップしました
2022.2.15
2月号後半の記事をアップしました
2022.2.1
2月号の記事をアップしました
2022.1.17
1月号後半の記事をアップしました
2022.1.5
1月号の記事をアップしました
トップページに表示する表紙写真を募集中です。横1000x縦540ピクセルのサイズでご自慢の写真をメール添付でご送付ください。(infoアットマークfbnews.jp)
採用者には、月刊FB NEWSロゴ入りマグネットバーを送らせていただきます。
なお「撮影者: JA3YUA」の様に表記させていただきますが、表記不要の方は、その旨合わせてご連絡ください。
2021.12.15
12月号後半の記事をアップしました
2021.12.1
12月号の記事をアップしました
2021.11.15
11月号後半の記事をアップしました
2021.11.01
2021年11月号の記事をアップしました
2021.10.15
10月号後半の記事をアップしました
2021.10.01
2021年10月号の記事をアップしました
2021.09.15
9月号後半の記事をアップしました
2021.09.01
2021年9月号の記事をアップしました
2021.08.16
8月号後半の記事をアップしました
2021.08.02
2021年8月号の記事をアップしました
2021.07.15
7月号後半の記事をアップしました
2021.07.01
2021年7月号の記事をアップしました
2021.06.15
6月号後半の記事をアップしました
2021.06.01
2021年6月号の記事をアップしました
2021.05.17
5月号後半の記事をアップしました
2021.05.06
2021年5月号の記事をアップしました
2021.04.15
4月号後半の記事をアップしました
2021.04.01
2021年4月号の記事をアップしました
連載記事 Masacoの「むせんのせかい」はコロナ禍の影響により、取材ができない状況が続いており、状況が改善されるまで不定期掲載とさせていただきます。よろしくお願いいたします。
2021.03.15
3月号後半の記事をアップしました
連載記事「今月のハム」はコロナ禍の影響により、取材ができない状況が続いており、状況が改善されるまで不定期掲載とさせていただきます。よろしくお願いいたします。
2021.03.01
2021年3月号の記事をアップしました
2021.02.15
2月号後半の記事をアップしました
2021.02.01
2021年2月号の記事をアップしました
2021.01.15
1月号後半の記事をアップしました
2021.01.05
2021年1月号の記事をアップしました
2020.12.15
12月号後半の記事をアップしました
2020.12.01
2020年12月号の記事をアップしました
2020.11.16
11月号後半の記事をアップしました
2020.11.02
2020年11月号の記事をアップしました
2020.10.15
10月号後半の記事をアップしました
2020.10.01
2020年10月号の記事をアップしました
2020.09.15
9月号後半の記事をアップしました
2020.09.01
2020年9月号の記事をアップしました
2020.08.17
8月号後半の記事をアップしました
2020.08.03
2020年8月号の記事をアップしました
2020.07.15
7月号後半の記事をアップしました
2020.07.01
2020年7月号の記事をアップしました
2020.06.15
6月号後半の記事をアップしました
2020.06.01
2020年6月号の記事をアップしました
2020.05.01
2020年5月号の記事をアップしました
2020.04.15
4月号後半の記事をアップしました
2020.04.01
2020年4月号の記事をアップしました
2020.03.16
3月号後半の記事をアップしました
2020.03.09
JARD、eラーニングでのアマチュア無線国家資格取得を呼び掛けるお知らせを、臨時休校で自宅待機中の小中高生に向けて発表。詳しくはこちら。
2020.03.02
2020年3月号の記事をアップしました
2020.02.17
2月号後半の記事をアップしました
2020.02.03
2020年2月号の記事をアップしました
2020.01.15
1月号後半の記事をアップしました
2020.01.06
2020年1月号の記事をアップしました
2019.12.16
12月号後半の記事をアップしました
2019.12.02
2019年12月号の記事をアップしました
2019.11.15
11月号後半の記事をアップしました
2019.11.01
2019年11月号の記事をアップしました
2019.10.15
10月号後半の記事をアップしました
2019.10.01
2019年10月号の記事をアップしました
2019.09.17
9月号後半の記事をアップしました
2019.09.02
2019年9月号の記事をアップしました
2019.08.16
8月号後半の記事をアップしました
2019.08.01
2019年8月号の記事をアップしました
2019.07.16
7月号後半の記事をアップしました
2019.07.01
2019年7月号の記事をアップしました
2019.06.17
6月号後半の記事をアップしました
2019.06.01
2019年6月号の記事をアップしました
2019.05.20
5月号後半の記事をアップしました
2019.05.07
2019年5月号の記事をアップしました
2019.04.15
4月号後半の記事をアップしました
2019.04.01
2019年4月号の記事をアップしました
2019.03.15
3月号後半の記事をアップしました
2019.03.01
2019年3月号の記事をアップしました
2019.02.15
2月号後半の記事をアップしました
2019.02.01
2019年2月号の記事をアップしました
2019.01.18
1月号後半の記事をアップしました
2019.01.07
2019年1月号の記事をアップしました
2018.12.17
12月号後半の記事をアップしました
2018.12.01
2018年12月号の記事をアップしました
2018.11.15
11月号後半の記事をアップしました
2018.11.01
2018年11月号の記事をアップしました
2018.10.15
10月号後半の記事をアップしました
2018.10.01
2018年10月号の記事をアップしました
2018.09.15
9月号後半の記事をアップしました
2018.09.01
2018年9月号の記事をアップしました
2018.08.17
8月号後半の記事をアップしました
2018.08.01
2018年8月号の記事をアップしました
2018.07.17
7月号後半の記事をアップしました
2018.07.02
2018年7月号の記事をアップしました
2018.06.15
6月号後半の記事をアップしました
2018.06.01
2018年6月号の記事をアップしました
2018.05.15
5月号後半の記事をアップしました
2018.05.01
2018年5月号の記事をアップしました
2018.04.16
4月号後半の記事をアップしました
2018.04.02
2018年4月号の記事をアップしました
2018.03.15
3月号後半の記事をアップしました
2018.03.01
2018年3月号の記事をアップしました
2018.02.15
2月号後半の記事をアップしました
2018.02.01
2018年2月号の記事をアップしました
2018.01.15
1月号後半の記事をアップしました
2018.01.05
2018年1月号の記事をアップしました
2017.12.15
12月号後半の記事をアップしました
2017.12.1
12月号をアップしました
2017.11.15
11月号後半の記事をアップしました
2017.11.1
11月号をアップしました
2017.10.16
10月号後半の記事をアップしました
2017.10.2
10月号をアップしました
2017.9.15
What a healthy time! ~健康を応援する特別なお料理~/第3回 食物繊維たっぷり! 海藻の和風リゾット、FB Monthly Fashion/第9回 秋っぽい柄&色コーデ、子供の無線教室/第9回 「アンテナの形や大きさに注目!!」を掲載しました
2017.9.4
<速報>ハムフェア2017を掲載しました
2017.9.1
9月号をアップしました
2017.8.17
What a healthy time! ~健康を応援する特別なお料理~/第2回 和風のポトフ 納豆ソース添え、FB Monthly Fashion/第8回 夏のお出かけコーデ、子供の無線教室/第8回 「無線機にはどんなものがあるの?」を掲載しました
2017.8.1
8月号をアップしました
2017.7.18
What a healthy time! ~健康を応援する特別なお料理~/第1回 メロンの冷製スープ ナッツのアイスクリームのせ、FB Monthly Fashion/第7回 コットンTシャツコーデとボーイズコーデ、子供の無線教室/第7回 「電波はどうやって海外や宇宙に届くの?」を掲載しました
2017.7.1
7月号をアップしました
2017.6.15
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第9回 FB Girlsの野望 with ムースと甘エビのタルタル、FB Monthly Fashion/第6回 雨の日コーデと親子コーデ、子供の無線教室/第6回 「電波はいろいろなところで大活躍!!」を掲載しました
2017.6.1
6月号をアップしました
2017.5.15
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第8回 番外編 春うらら♪豪華弁当でお花見、FB Monthly Fashion/第5回 ブラウス&シャツを使ったコーディネート、子供の無線教室/第5回 「周波数によって変わる、電波の特徴」を掲載しました
2017.5.1
5月号をアップしました
2017.4.17
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第7回 ARDFの思い出 with 2種類のソースのカルボナーラ、FB Monthly Fashion/第4回 Gジャンを使ったコーディネート、子供の無線教室/第4回 「電波の性質を覚えよう」を掲載しました
2017.4.1
4月号をアップしました
2017.3.15
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第6回 初めてのQSOの思い出 with グリーンのアクアパッツァ、FB Monthly Fashion/第3回 ピンクを使ったコーディネート、子供の無線教室/第3回 「電波はどうやって伝わるの?」を掲載しました
2017.3.1
3月号をアップしました
2017.2.15
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第5回 FB Girlsの試験の思い出 withウマ辛和風スープ、FB Monthly Fashion/第2回 デニムと明るめニットのコーディネートを掲載しました
2017.2.1
2月号をアップしました
2017.1.16
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第4回 YLハムを増やす秘策とは?! withおなかにやさしいお料理、【新連載】FB Monthly Fashion/第1回 アウター別おすすめコーディネート(ライダース・ノーカラー・ダッフル)を掲載しました
2017.1.5
1月号をアップしました
2016.12.15
What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第3回 YLハムの行く年来る年 with ブイヤベースの洋風お鍋を掲載しました
2016.12.1
12月号をアップしました
2016.11.15
FB Girlsが行く!!~元気娘がアマチュア無線を体験~/<第3話>元気娘、秋の休日を楽しむ!!(後編)!、What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第2回 YLハムの悩み解決!with サケのフレンチトーストを掲載しました
2016.11.1
11月号をアップしました
2016.10.17
FB Girlsが行く!!~元気娘がアマチュア無線を体験~/<第3話>元気娘、秋の休日を楽しむ!!(前編)!、【新連載】What a tasty time! ~グルメYLたちのGirl'sトーク♥~/第1回 FB GirlsのプライベートQSO with 土瓶蒸しのリゾットを掲載しました
アマチュア無線関連機関/団体
各総合通信局/総合通信事務所
アマチュア無線機器メーカー(JAIA会員)
次号は 12月 1日(木) に公開予定
©2024 月刊FBニュース編集部 All Rights Reserved.