エレショップblog

半導体・センサー・マイコン・電子工作キットほか、各種電子部品の専門店「共立エレショップ」から主に電子工作の関連情報をお届けします。 http://eleshop.jp/

カテゴリ: ハンダ付け不要/マイコン系

記事担当:
ハンダ付け不要-マイコン系


「3の倍数と3が付く数字」の日だけ休みたい、そんなことを思う初夏。

…と、懐かしいネタから書き出してしまいました。
世代的に分からない方もいるかもしれませんが、現在は落語家に転身された桂三度さんが「世界のナベアツ」という名前で披露していた「3の倍数と3が付く数字のときだけアホになる」という、1から40まで数字を数えながら3の倍数と3の付く数字を数えるときだけアホっぽい言い方と仕草をする文字通りのネタがあり、約10〜15年ほど前に流行りました。

実は、その当時にプログラマー界隈で「これってアルゴリズム」だとか「FizzBuzz問題」を連想したり等の話題になり、いろんなプログラム言語で3の倍数と3の付く数字を判定する「世界のナベアツ」プログラムを組むことが流行りました。

実際、僕も当時に某プログラミング言語用にサンプルを作ったことがあるのですが、このネタの内容はプログラミングを学ぶ上での入門用として最適な問題といえます。
せっかくなのでブログの記事として「micro:bit」で世界のナベアツプログラムネタやってみたいけど、もうやってる人いるだろうなぁと思いながらとりあえず簡単にネット検索してみたら検索結果の上位には見当たらなかったので、じゃあmicro:bitプログラミング初級者向けにサンプルを残すのもいいよね。

ということで、今回は「micro:bit」で世界のナベアツプログラムを組んでみたいと思います。

image_001

上の画像のプログラムはネタ同様に1から40までをカウントしながら数字を判定しています。
数字と表情をLEDモニターに表示、3の倍数と3が付く数字のときは表情が変わりブザー音が流れます。

3の倍数かは、数字を3で割って余りが「0」かどうかで判断しています。

3が付く数字かは、文字列処理を使っています。
数字を文字列として扱い、文字の中に「3」という文字があるかどうかをチェックしています。

実は当時、数字の判定には文字列処理を使わず数列の処理のみを使うべき、みたいな話もありまして。
…ということで、次は数列処理のみを使ったプログラム。

image_002

こちらのサンプルでは3の倍数については前のプログラムと同様の処理を行っていますが、3の付く数字については別の方法を使っています。

カウントしている数字から10を引く計算を10未満になるまで繰り返しています。
10未満になるまで繰り替えした回数が3なら30〜39の範囲内、つまり10の位が「3が付く数字」ということになるからです。
例えば35の場合、「35-10-10-10=5(10未満の数字)」と10を3回マイナスしているとなるわけです。

さらに、その10を繰り返しマイナスした後の数字が3であるかを調べることで1の位が「3が付く数字」であるかを判断しています。
13の場合は「13-10=3」、23の場合は「23-10-10=3」といった具合です。

実際の世界のナベアツさんのネタ同様、40まで数える内容にしているのでサンプルプログラムの数列処理のみを使うふたつ目の方法で正しく機能しますが、103を超える数字については3の付く数字の判定は正しく行えないのでご容赦ください。

あえて他言語のサンプル等を参考にせず作ってみたので、実際はもっとスマートな数列処理のみの方法があると思うのですが、ここまでしか作れませんでした。
この記事を読んで興味を持たれた方がいれば、チャレンジしてもらえたらと思います。


(記事:糖分)
更新予定:毎週木曜日(次回は7月6日です!) 

記事担当:共立プロダクツ
ハンダ付け不要-マイコン系


エレショップblog読者のみなさま。
マイコン、使ってますか?


次から次へと世に送り出されるマイコンボードを使いこなすのは大変ですが、最近では高水準言語やブロックプログラミングなどに対応するものや、液晶や内蔵センサー等を満載したモジュールなどもあり、思い付いたものを手軽に試作できるようになりました。
昨年の記事ではRP2040を搭載した超小型ボードをメインに、MicroPythonという言語でプログラムを書き、ちょっとした回路を組んで簡易温度計をつくりました。

前置きはこのへんで。
さて、ここに色も形状もミックスになった大量のLEDがあります。
01


これだけあれば、適当に光らせるだけでもそれなりにサマにはなるのですが、光り物はできるだけ明るさを揃えると綺麗に見えると思います。
でも、LEDって高輝度タイプやらお手頃価格なものやら、古いのやら新しいのやら、同じ電流を流しても見た目の明るさが全然違うんですよね。
具体的な型番がわかっていて、データシートがあるならばそれを見ればいいのですが(電子工作の基本です)、こういう正体不明な物はどう料理したものか…。

というわけで今回は、個人的に「ほしい!」と思っていた簡易LEDテスターを設計してみることにします。
機能はこんな感じを目標にしていこうと思います。
●LEDを差し込むだけで、指定した電流値(順方向電流)で点灯する。
●ボタン操作で電流値を変えられる。
●点灯中のLEDの順方向電圧がわかる。

特性のチェックが手早くできるならば、使わずに持て余しているような詳細不明のLEDも、よっしゃ使ってみるか!という気分になれるかもしれません。


主役となるマイコンボードは、今回はM5StickCを選びました。
02

親指サイズ(筆者調べ)の小型ボディカラー液晶操作用ボタンを内蔵。充電式バッテリーを内蔵しているのでケーブルなしでも動作OKと、ハンディサイズのガジェットづくりに丁度良いです。自作の回路を外付けするのに便利なGPIOヘッダーソケットもあります。
個人的に購入したにも関わらずあまり有効活用できていなかったのですが、今回のプロジェクトにはそれなりに適任と言えるのではないでしょうか。
(目玉の無線機能は今回使わないので役不足感はありますが…)


ここからは設計方針を決めながら回路を組んでいきます。
全部を説明すると長くなるので、要点だけをかいつまんで見ていくことにします。

LEDに流す電流をマイコンで制御するには、可変定電流回路を作るのが簡単です。詳しい原理などの説明は省きますが、こんな回路です。
03

トランジスタに流れる電流(I)は、オペアンプの+入力端子にかける電圧(ここではVCTLとします)と抵抗(R)から近似値を求めることができます。
目的の電流値になるように入力電圧(VCTL)を上下して調整できれば、計算通りの電流がLEDに流れてくれるはずです。

そのために必要となる任意の電圧をマイコンから出すには、M5StickCが持っているPWM(パルス幅変調)出力機能を使います。
04


PWMとは1本のピンから一定の周期でHレベルとLレベルを高速に繰り返し出力する機能で、HとLの時間の割合を変えると、平均の電圧が変わります。
これを抵抗とコンデンサで構成されたローパスフィルタ回路に通すことで、中間の電圧(M5StickCはHレベルが3.3Vなので、0~3.3Vの範囲)をつくることができます。

上記のPWM出力から作ったVCTLをもう一度マイコンで読み直し、電圧を調べます。
その電圧を抵抗値Rで割れば、現在LEDに流している電流、つまりLEDの順方向電流を求められます。
これが設定している電流値より高ければ、PWMの出力を下げて電流を小さくするように調整します。逆に現在の電流値が設定値より低ければ、PWMの出力を上げて電流を大きくします。

まとめると、メインとなる制御の流れはこんな感じです。
05


1.アナログ入力でVCTLのピンを読み取る。
2.読み取ったアナログ値(0~4095の数値)を、実際のVCTLの電圧値(?.??V)に変換する。
3.電流の現在値を計算で求める。(I=VCTL÷R)
4.電流の現在値と設定値を比較して、
現在値が設定値より高ければPWM出力を下げ、逆に低ければPWM出力を上げる。
(PWM出力を、次回さらに設定値に近づくように調整する)

これを1サイクルとして何回も繰り返せば、PWM出力の値が少しずつ補正されていき、設定値の電流に近づいた状態で安定していきます。

あと冒頭にも書きましたが、ボタンを押せば電流の設定値を何種類かワンタッチで切り替えられるようにしたいと思います。
実際に点灯するLEDを見て「何mA流せばこの明るさになるのか」が大まかにでもわかれば、LEDに直列に入れる抵抗値の計算もきっとはかどるはずです。


ということで駆け足で動作の説明をしてみました。
次回、エレショップで販売中の部品を使って、回路を実際に組み立てていきます。



お楽しみに!
06


(記事:ONE)
更新予定:毎週木曜日(次回は6月29日です!) 


【補足】
M5StickCはメーカー生産終了となり、現在(2023.06.22)は後継機種「★M5StickC Plus」(プラス)を販売しています。
画面が大型になり表示ドット数が増えている等の変更点がありますが、今回の作例であれば画面レイアウト以外はほぼそのまま流用できます。
これからM5StickCを始めてみようという方は、ぜひプラスをお試しください。

ここ最近でのマイコンボードでは一番の話題な「Raspberry Pi Pico W」を
色々使ってみようと思います。

Raspberry-Pi-Pico-W-1
無線LAN機能搭載 ラズベリーパイピコ W
Raspberry Pi Pico W
https://eleshop.jp/shop/g/gN3V312/


まずはボードそのままでは使いにくいので、こんなアクリルベースを作って取り付けてみました。
Raspberry-Pi-Pico-W-2


いきなり宣伝ですがこのアクリルベース、共立プロダクツより4月28日(金)に発売開始しました!
kpsb615f
Raspberry Pi Pico & Pico W用 シンプルアクリルベース
KP-SB615

https://eleshop.jp/shop/g/g402788/




テーブルに置いてそのまま使うのはどうかと考えている方や、マイクロUSB抜き差し時に直接基板を触りたくない方は、ぜひ購入ご検討ください。

次に、そのままでは使いにくいのでヘッダーピンを取り付けてみました。
Raspberry-Pi-Pico-W-3
通常ブレッドボードに挿す場合は下側に向けて足を付けますが、今回はアクリルベースがあるので
上側に向けて取り付けします。


さて、次に簡単に動作確認含めてLチカを行っていきます。
通常であれば基板上にあるLEDでLチカするのが多いと思いますが、Pico Wの場合、無線チップ経由でLEDが接続されているので、外部にLEDを付けて光らせていきます。
Raspberry-Pi-Pico-W-4


さっそくPico Wに取り付けてみます。
Raspberry-Pi-Pico-W-5


そして、Thonny上に簡単にプログラム書いて実行してみます。
Raspberry-Pi-Pico-W-6



Raspberry-Pi-Pico-W-7
LED光りました!!

次にPico W基板に搭載されている温度センサーを使用して室内温度を
計測してみようと思います。

Raspberry-Pi-Pico-W-8
プログラムを用意して実行。

Raspberry-Pi-Pico-W-9
Thonnyのシェルの項目を見ると温度がちゃんと測れています。
指を近づけたりするとちゃんと温度が上がっていきますね。


今回はここまで。
次回はPicoWの「W」の部分WiFiを使用して実験していきたいと思います。


担当:ヨジゲン 
更新予定:毎週木曜日(次回は5月18日です!) 

記事担当:
ハンダ付け不要-マイコン系


みなさんこんにちは。

アットホームなカフェが近い会社でおなじみの共立電子産業です。


あ、会社もアットホームですよ(笑)


…そんな会社から送る今回のブログの記事ですが、当社のネット通販サイト「エレショップ」では電子部品だけでなく、プラモデルのように組み立てられる工作キットや小中学生向けの小型コンピューター等の製品もそろっています。

そして昨今の半導体不足等の事情にもれず、小型コンピューターの中にはラズパイに代表されるように品薄状態のものが多い中、このブログ執筆段階ではエレショップのmicro:bitの在庫は多い状況なので、現時点では比較的手に入りやすくなっています。

…ということで、今回は低価格かつ初心者向けにピッタリの小型コンピューター「micro:bit」を用いたプログラミングの解説をしていこうと思います。

目次

はじめに

当記事では、micro:bitでプログラミング環境を導入できるまでの方法の解説は行っておりません。
micro:bitの公式サイトも含め、それらの解説はネット上に多く存在しているので、micro:bitでプログラミングを開始できるようになるまでの方法についてはそれらを参考にしてください。

今回使用するmicro:bit

micro:bitにはいくつかの機能やセンサーが内蔵されていて、ver.2からはさらにセンサー等が追加されています。
それらの機能を用いて実用的なツールをプログラミングしていこうと思います。

今回は、micro:bit V2.2ファーストトライセットの単四電池のものを使っています。

microbit_set

こちらの商品はセットの中にmicro:bit本体だけでなく、micro:bitを保護するカバーやパソコンと接続するためのUSBケーブル、micro:bitを動かすための電源となる電池ボックスと単四電池が一緒になっているので、これだけで外に持ち歩いて使えるツールを構築できます。

夜に持ち歩いている時だけ光るライトを作る

冬の季節になって、日が暮れるのもすっかり早くなりました。
夕方には暗くなるため、比較的早い時間帯でも街灯が少ない場所では道行く人の姿が見えづらい場面もあったりします。

そこで、夜道を歩いている時に、たとえば背負っているリュックやズボンのベルト通し等に点滅するライトを着けて、後方からくる自動車や自転車に、ここに人が歩いていますよとアピールするような事故の予防的な使い方のできるライトをmicro:bitで作ってみようと思います。

自転車のライトで、周辺が暗くて自転車が移動している時だけ光る製品がありますが、それをmicro:bitで再現してみようというわけです。

LEDを点滅させる

夜道にライトを光らせて周りにアピールする機能を製作するので、まずは、その基本部分であるLEDを点滅させてみます。

Sample_001


上記のサンプルプログラムを実行すると、micro:bitが起動している間はすべてのLED部分が常に光ったり消えたり… つまり、ライトが点滅します。

micro:bitのLEDは縦横5列ずつ並んだ計25個あり、命令(ブロック)の中で予め用意された光り方の形(顔の表情風やハート形等)がいくつかあるのですが、すべてのLEDが光っているパターンがないので、「LED画面に表示」というLEDのパターンを自由に作れる命令を使って、すべてのLEDを光らせています。

あとは「一時停止→表示を消す→一時停止」と処理を続け、それらが常に実行され続けることでLEDが点いてしばらく待って消えてを繰り返します。

一時停止は指定した時間だけプログラムの実行が止まります。
サンプルでは「200ミリ秒」=0.2秒間となります。

「表示を消す」で、すべてのLEDの明かりが消えます。

「ずっと」の中の内容はmicro:bitが起動している間は常に実行され続けるので、上記のプログラムは一番目の命令からラストの命令まで動いた後、また一番目の命令へと戻り… と、繰り返されることでライトが点滅し続けるというわけです。

周りの明るさを測る

夜に自動でライトが点くようにしたいので、micro:bitに周りの明るさを判定してもらわないといけません。
ということで、続いて明るさを測ってみたいと思います。

Sample_002


上記のサンプルプログラムを実行すると、Aボタンを押すと数値で、Bボタンを押すと棒グラフで、それぞれのボタンを押した時の明るさの値をLED画面に表示します。

micro:bitの明るさセンサーはLEDに含まれていて、0~255の範囲で明るさを数値化しています。

実際のところ明るさセンサーの精度はそう高くないようで、試したところ明るい部屋でも照明から離れた位置では数値が「0」を示していました。

続いて、前述とは少し違った明るさセンサーのサンプル。

Sample_003


こちらのプログラムは、周りの明るさを常に棒グラフでリアルタイム表示します。

LEDの点滅のプログラムでも説明したように「ずっと」の内容は常に実行され続けるので、最初の明るさセンサーのサンプルと違って、上記サンプルは明るさセンサーの値を常に棒グラフの形でリアルタイム表示させ続けるというわけです。

明るさセンサーが組み込まれているLED部分を照明に近づけたり遠ざけたり、あと懐中電灯の光を当てたり屋外で日光にかざしたりと、色々試しながら数値や棒グラフの変化を試してみてください。

移動しているかを判定する

夜などの暗い場所にいて、かつ動いている時にライトが点灯するようにしたいので、次は移動しているかどうかを判定してみます。

micro:bitには加速度センサーが付いているので、そちらの機能を使います。

Sample_004


上記のプログラムは、micro:bitが一定以上の速さで揺れる等の動きがあるとLEDが点灯し、あまり動いていない時は消えた状態になります。

micro:bitの加速度センサーには上下・左右・前後の方向と、あとそれらすべての方向への移動を数値化した「絶対値」とがあります。

方向 説明 ニュートラルの値
x 左右の方向。
Aボタン側が左で、Bボタン側が右。
0
y 前後の方向。
bicro:bitのマークやUSB接続端子のあるほうが前、5つの穴が開いているコネクタのほうが後ろ。
0
z 上下の方向。
micro:bitのマークやLED画面があるほうが上、USB接続端子やスピーカーがあるほうが下。
0
絶対値 x,y,zすべての方向。 1023


今回は、絶対値を利用して移動しているかを判定しています。
「もし」を使い、加速度センサーの絶対値を常にチェックして値が「1200」よりも大きい場合はLEDが点灯する命令を実行するようにしています。

今回はmicro:bitをバッグやズボン等からぶら下げて動くことを想定しているので、とにかくどの方向でもいいので動き(揺れ)を感じたら反応するようにしたかった為、サンプルでは「絶対値」を利用して、あまり激しくない動きでも反応するように加速度センサーの絶対値が1200より大きい場合のみLEDが点灯するようにしています。

命令の中に「揺さぶられたとき」というものがありますが、試したところかなりしっかりと揺らされないと反応しなかったので、今回は人が歩いた時の少しの揺れを判断する為に絶対値を使い、あまり激しくない動きでも反応するように絶対値が低めの値の場合に反応するようにプログラムしています。

暗くて移動している時だけ点滅するライト

ではいよいよ、これまでに作ったサンプルプログラムの内容を踏まえて、夜の暗い場所で移動している時だけ点滅するライトのプログラムを作っていきます。

Sample_005

上記サンプルを実行するとmicro:bitがある程度暗い場所にあり、さらに一定以上揺れている状態の場合に10回、LED画面が点滅し続けます。
周りが明るいか、あまり揺れていない状態ではLEDは点灯しません。

今回は「変数」を用いて予め判定に使う明るさと加速度の基準となる値を指定しています。

変数名 内容 サンプルで
指定されている値
明値 明るさの基準となる値。
明るさセンサーの値が指定値以下の場合はLED点灯。
10
動値 加速度の基準となる値。
加速度センサーの値が指定値以下の場合はLED点灯。
1200


変数は数字や文字列を入れる容器のようなもので、作った変数に数字等を代入して用います。

今回のサンプルでは変数「明値」が明るさ、変数「動値」が加速度の判断の基準となる値として使われます。
サンプルを試す際に明るさや揺れ具合の判定を環境に合わせて変えてみたい場合は、こちらの数字(10や1200の部分)を変更してみてください。

「最初だけ」に設定されている命令は、micro:bitが起動してすぐの一回のみ実行されます。
今回の変数は、いわゆるツールの初期設定のようなものなので「最初だけ」の中で指定しています。

そして「もし」を使い、明るさが変数「明値」以下かつ加速度が変数「動値」を超える場合にLED画面を200ミリ秒間隔で10回、点滅を繰り返すようになっています。
前にも書いているように「ずっと」の中で設定されている命令は常に実行されつづけるので、上記の「もし」の内容は常に動き続け、明るさや動きを判断してLEDを点滅させたり… をし続けるというわけです。

「くりかえし」は指定されている回数分、中の命令を実行し続けます。
サンプルの「10回」の部分が繰り返す回数となり、これを用いてLED画面を10回点滅させています。

サンプルでは動作の確認がしやすいように点滅する回数を10回にしていますが、実用性を考えるともう少し回数が多いほうがいいので、「10回」部分の数字を自由に編集して、色々試してみてください。

あとは、このプログラムを書き込んだmicro:bitにカバーを取り付け、そのカバーに細工してストラップ等を取り付ければ、バッグ等に着けられる夜道で点滅してアピールしてくれるライトの完成です。

上記のサンプルまででも使えるツールとはなっていますが、例えば実際に自分以外の第三者、つまり他人に使ってもらうと考えた場合にはツールとしては不親切です。
そして、まだ不完全な部分のあるプログラムなのでサンプルのプログラムを見て試すだけでなく、さらに解析し、改造して問題点の改良する等、いろいろ試しながらプログラミングの勉強のひとつの素材として活用してもらえれば幸いです。

BBC 教育向けマイコンボード micro:bit / マイクロビット / micro:bit V2.2
microbitV2r2a
micro:bit【V2.2】 ファーストトライセット 単4電池バージョン ▲航空便不可▲ / SK-MB-SETV22AAA
SKMBSETV22AAAa


micro:bit ムーブミニ MK2 バギーキットセット ▲航空便不可▲ / KEI-KIT5652SET
KEIKIT5652SETa



(記事:糖分)
更新予定:毎週木曜日(次回は12月29日です!) 

記事担当:共立プロダクツ
ハンダ付け不要-マイコン系


ラズパイピコと同じRP2040を搭載したお手頃マイコンボード「★XIAO RP2040」を使った電子工作記事の続きです。

今回は完結編
ということで、設計したものをユニバーサル基板で組み立てるところまで進めていきたいと思います。

仮組みした回路とプログラムの動作テストが終わったら、
XIAO RP2040のボード上の記憶領域に作成したプログラムを保存し、
電源を入れるだけで単体動作できるようにしよう・・・というのが前回の話。

RP2040で動くMicroPythonは、内部に持っているファイルシステムにファイルを置くことができます。
そこにmain.pyという名前のプログラムを転送することで、起動時に実行されるようになっています
今回使っているThonnyエディタは、MicroPythonデバイスへのファイル転送機能もついていますので
それを使ってプログラムをXIAO RP2040に保存します。

では早速★Thonny [https://thonny.org/]での作業を再開しましょう。
まだプログラムが動いている場合は、一度XIAOとの通信を止めてから
View>Filesと選択して、ファイルマネージャーを表示させます。
Filesを選択してファイルマネージャーを出します

ウィンドウの左にファイルマネージャーが表示されました。
上(This computer)がPCのローカルファイルのリスト、
下(Raspberry Pi Pico)がXIAO RP2040に格納されたファイルのリストです(最初は何もありません)。
上のリストから「main.py」を選んで右クリック>「Upload to /」を選択すると、XIAO RP2040に転送されます。
PCからXIAOに、main.pyを転送します

アップロードの進行状況を表すウィンドウが開き、完了すると消えます。
ウィンドウが消えて、下のファイルリストに「main.py」が表示されたら成功です。
30アップロードは数秒で終わります

これで、XIAO RP2040は実行時にプログラム本体を送り込まなくても
転送したmain.pyを起動時に実行してくれるようになります。
(PCではなく適当なUSB電源から給電して、マルチカラーLEDが点灯するか一度確認しておくと良いと思います)


それでは、ユニバーサル基板を使って仕上げの組み立てを進めます。

今回の回路を乗せる基板は小さいので、弊社で販売中の変わった基板を使ってみます。
それがこちら。シリコンハウス営業所のガチャガチャで販売中の「カプセル型ユニバーサル基板」です。
店舗正面入口外のガチャガチャで好評発売中!

ただ丸いだけの基板ですが、もちろんガチャガチャなのでカプセルに入った状態で出てきます。
この基板はカプセルの内寸にほぼフィットし、基板を中空に浮かせた状態にできるため
カプセル自体を簡易なケースとして利用できるのが特徴です。
(カプセルは完全な球形ではないため多少内部のガタツキや遊びがあります)

XIAOを基板に取り付けるためのヘッダーソケットを用意します。
残念ながら7ピンぴったりの物は取扱いがありませんので、★「8ピン」の物をカットして7ピンを作ることにします。
ヘッダーソケットの加工

全ての部品を乗せ終わった状態の基板のオモテ面はこちら。
マイコンやLEDの発熱が測定温度に影響を与えないように、基板の端にセンサーを置きました。
部品面のレイアウト

裏面の配線途中の状態。
まずは★「すずメッキ線」で、基板のマス目を使ってできる限りの配線を行います。
(電子部品から切り落とした余分なリード線を集めておくと同じように使えて便利です)
すずメッキ線での配線の様子

続いて配線しきれなかった箇所を絶縁された配線材でつないでいきます。
今回使ったのは★「ジュンフロン線(ETFE電線)」という樹脂製の被覆がついた単芯の配線材です。
太さがそれなりにあるため配線が密集する所には適しませんが、一番太い0.51mmの物はかなり頑丈で曲がりにくいので
耐久性のある作品に仕上がります(記事担当お勧めです!)。
被覆付きの電線で残りをつなぎます

今回は★「DCジャック」を付けた配線を、元々開いているカプセルの小さな穴に通し、XIAOの5Vピンから給電するようにしました。
カプセルに元々開いている穴を「電源配線の通し穴」や「温度センサーの通気孔」として使います。
カプセルの穴をそのまま使います
他にも、カプセルにもう少し大きな穴を開け直してUSBケーブルを通してTypeCコネクタから給電する方法も良いですね。

あとは基板の位置に注意しながらカプセルの蓋を閉めて、完成!!
(カプセルは片側が着色パーツなので、マルチカラーLEDの場所が悪いと色がわからなくなります…)
完成!

これを室温を測るのに適した場所(直射日光や空調の風があたらない所)に吊るしたり転がしたりしておくだけで、
大まかな暑さ寒さがわかって便利です。
作業環境の室温管理、冷え過ぎや熱中症対策にもつながるのではないでしょうか。

以上、ちょっとした電子工作の紹介でございました。
ホビー用途であれば、製品化されないような面白い道具やガジェットも自作できるのが楽しいですね。
実用目的なら既製品を買った方が早いし確実ではありますが、
自身で実際に考えて設計することは、ものづくりの大事な体験になると思います。

自分も作ってみようという方は、こちらから今回の作例のプログラムソースを入手できます。
内容は無保証となりますが、参考資料としてお役立てください。


皆さまもぜひ、便利で新しいマイコンボードで電子工作にチャレンジしてくださいね♪♪


●補足1:マルチカラーLEDについて
実は「XIAO RP2040」には基板上にマルチカラーLEDが搭載されています(しかも2種類あります)。
そちらを使えば表示用のLEDは本来不要となるのですが、
小さい基板上についているLEDのため遠くから見ようとするとなかなか見づらいと思います。
今回はそのような事情で、程よい大きさと明るさの砲弾型LEDを外付けで使うことにしました。

●補足2:MicroPythonについて
MicroPythonは、Pythonという言語の「実装」のひとつです。
PCやサーバーより性能面で非力な組み込み向けのマイコンを対象としている分、動かせるアプリケーションの規模などは多少制限を受けますが
言語としての特徴は一部を除いて揃っているので、PCで動作する普通のPythonの解説書がほぼそのまま使えると思います。
ハードウェア制御の部分(入出力ピン、アナログ、PWM、I2C等々…)などの、MicroPythonおよびRP2040固有の情報については
大変わかりやすい日本語のドキュメントがあります。今回の作例でも大いに活用させていただきました。



(記事:ONE)
更新予定:毎週木曜日(次回は6月2日です!) 

このページのトップヘ