エレショップblog

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

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


最近、プログラミングをして動かすロボットが増えてきたように思います。
これはたぶん、2020年に小学校でプログラミング教育の必修化が検討されていることを受けて増えてきているんじゃないかと思うんです。
★共立エレショップにも色々と面白そうなキットが増えてきましたが、さて…では何から始めようかな?と悩む人も多いのではないでしょうか。

ということで。
今回は私的にビビッと来た★「mBot」というロボットを作ってみたいと思います!
色は★「ブルー」★「ピンク」があります。
私は「ブルー」を選びます。
mBot-24
正面に顔が付いててなんだかかわいくないですか?
どうせ作るならカワイイ方がいいですもんね。
 
さてこの★「mBot」ですが、説明書が英語なんです。英語分からないし、めちゃくちゃ難しそう…と思っても大丈夫!
何故なら、英語がとてつもなく苦手な私でも出来たからです!ムフー
説明書はイラスト満載で、英語が読めなくてもなんとなく作り方がわかるようになっているんです!
ただし、やっぱりつまずく所がいくつかあったので、写真とともに解説しますね。

では、箱を開けてみましょう!
mBot-1mBot-2

箱の内側に簡単な作り方が描いています。
こう見ると、「えっ…こんなに部品あるの?」って思っちゃいそうなんですけど、大丈夫!
ちゃんと手順通りに組み立てればあっという間に出来上がりです。

中身はこんな感じ。
mBot-3
細かい部品も一つ一つが個別にしっかりパックされています。

そして、私今回一番感動したのがコレ!
mBot-4
付属のドライバなのに、凄くしっかりしたドライバだと思いませんか?!
手にフィットしやすいですし、何より安っぽくない!
そして、作業進めてアレ?って思ったんですが、六角レンチが必要な場面があったんですね。
探したんですが、六角レンチ無いなー…これは自分で用意するのかなー…面倒くさいなー…なんて思いながらドライバーをいじくっていると…
これやーん!!!ってなったんです。
mBot-5
いやぁ、まさかプラスドライバの反対側が六角レンチだったなんて。
と言う訳でドライバの軸を反対に挿し込むと六角レンチになるという素敵なギミックまで付いていたんです!
このドライバだけで「mBot」買う価値ありますよ!(なんちゃって)
 
 
さてさて、では組み立てを始めましょう!
まずは「M3×25mm Screw」「M3 Nut」を使ってモーターを取付けます。
mBot-6
このキットですが、そこまでネジの種類が多くないので、名前が分からなくてもなんとなく分かりますから安心してくださいね!

本体の中にモーターをセットして、モーターの軸を外に出します。
そこをさっきのネジとナットで留めるんですね。
mBot-7
反対側も同じように取付けてくださいね。
mBot-8

次はタイヤの取付け。
まずはホイールにタイヤをかぶせます。
mBot-9mBot-10

タイヤが出来たら先ほど取付けたモーターの軸にネジで取付けます。
「M2.2×9mm Self-drilling Screw」がすぐに分からなかったんですが、長さが9mmなのはこれしかないので、これを使用してくださいね。
mBot-11

次はミニタイヤとセンサーです。
色々なセンサーがあるので、該当する形のセンサーがない?!なんてことになりますが、ちゃんと裏表を確認すると見つかるので落ち着いて調べてくださいね。
ひっくり返したり斜めから見たり、見る方向を変えるとイラストの形になりますよ。
mBot-12mBot-13

こんな感じで、英語が読めなくても説明書のイラストを頼りに組立てていくことが出来るんです。

さて。
ここで私が詰まったポイントです。
それがココ。
mBot-14

順番的にケーブルを取り付けるんだろうなぁ…
たぶんこのケーブルを使うんだろうなぁ…
mBot-15
と言うのは分かるんですが…え、どこがどうなってるの?と作業が止まりました。

よく見ると、お腹のところに差し込み口があります。
mBot-16

目(センサー)の後ろにも差込口があります。
mBot-17

多分それぞれにさっきのケーブルを挿すんでしょうね。
その後お腹側に挿したケーブルと、モーターについているケーブルを穴を通して背中側に出します
これで、このイラスト箇所は完成でした。
mBot-18

さて、ここからもイラストを見ながらサクサクっと進めていきましょう!
たまに英語の部品説明を見て、あー、コレこういう名前なんだー。なんて、思いながら組み立てます。
ちょっとした英語の勉強にもなって一石二鳥ですね。

電池ケースは2パターンあります。
★リチウムバッテリー単3電池(4本)と選べます。
mBot-19mBot-20
私はひとまず単3電池で作りました!

これで完成です!
と言いたいところなのですが、まだもう一つやらねばならぬことがあります。
それが、配線。
モーターから出た線とセンサーから出た線を本体に接続します。

その前に確認です。
mBotの左右なんですが、人間と同じで目(センサー)を前にして、右側が「Right」左側が「Left」になります。
mBot-21

なので、左側にある「Left」のモーターから出ている線を「M1」へ、右側にある「Right」のモーターから出ている線を「M2」へ繋いでください。
目の後ろから出ている線は「3」へ。前輪(お腹の下)から出ている線は「2」へ繋いでくださいね。
mBot-22

これで完成です!やったー!!!
mBot-23mBot-24


むふふ、可愛い。
mBot-25

では早速電池を入れて動かしてみましょう!
スイッチを入れて、モードを選択します。
モード選択のボタンはココ!
mBot-26

説明書には「mBot has 3 pre-set modes:IR control mode,obstacle avoidance mode and line-following mode.」とあります。
翻訳してもらうと「mBot 3 事前設定モード: IR コントロール モードがあり、障害物回避モードおよび次のライン モードがあります。」となります。
ようするに、初期設定で「IRコントロールモード」「障害物回避モード」「ラインモード」があるっていうことですね。
箱の中には「ラインモード」で遊べる大きな紙が同梱されていたので、これを使ってみます!
mBot-27

わ、なにこれちゃんと動く!当たり前なんですけど、面白い!!
付属のリモコンもついているんですが、Bluetoothでスマートフォン・タブレット・パソコン端末などと接続も出来ます
そこでプログラムを組んでmBotにもっと複雑な動きをさせることも出来るんですって!

次に機会があれば★「mBot」のプログラミングで遊んでみたいと思います!


是非、楽しんでみてくださいね!

(記事:オカポン)
更新予定:毎週木曜日(次回は4月6日です!)




★記事内で紹介した商品は、こちらから購入できます!★

商品
型番
個数
一括注文
リンク先
【ブルー】mBot v1.1 Blue(Bluetoothバージョン)
英語版(日本語テキスト付)
MBOT-BL-BT 1個 こちらから→
単3形アルカリ電池4本パック LR6R/4S 1個
リチウムイオンポリマー電池 3.7V 860mAh ▲航空便不可▲ DTP603048(PHR) 1個
※個数を記入していますが、リンク先ページ内で変更可能です。

★記事内で紹介した商品は、こちらから購入できます!★

商品
型番
個数
一括注文
リンク先
【ピンク】mBot v1.1 Pink(Bluetoothバージョン)
英語版(日本語テキスト付)
MBOT-PK-BT 1個 こちらから→
単3形アルカリ電池4本パック LR6R/4S 1個
リチウムイオンポリマー電池 3.7V 860mAh ▲航空便不可▲ DTP603048(PHR) 1個
※個数を記入していますが、リンク先ページ内で変更可能です。

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


先週に引き続き、Arduino超初心者編です。

前回(★「電工女子、Arduino(アルドゥイーノ)を知りたいです!」)ArduinoIDE(アルドゥイーノ アイ・ディー・イー)をPCにインストールしました。
12arduino8

今回はArduinoIDE内にある「スケッチ例」を利用して、次の手順でLEDを点滅させてみたいと思います。

[ステップ1]
Arduino UNOのデジタル13番ピンに挿したLEDを1秒間隔で点滅させる

[ステップ2]
Arduino UNOのデジタル13番ピンに挿したLEDを3秒間隔で点滅させる


先に動画をご覧ください。


まずは、Arduino IDE(PC上)とArduino UNOの設定をします。

(1)Arduino UNOとPCをUSBケーブルで接続します。
 2-Arduinoつなぐ

(2)Arduino UNO上の「電源LED(緑色)」が点灯しているのを確認
3-電源LED

(3)Arduino IDEのメニューバー「ツール」>>>「ボード」から使用しているArduinoの種類を確認
私は「Arduino/Genuino UNO」を選択。(自動的に設定されていました)
4-ボード選択

(4)Arduino IDEのメニューバー「ツール」>>>「シリアルポート」を確認
(こちらも自動的に設定されていました)
5-ポート選択

これで、Arduino IDEとArduino UNOの設定は完了しました。

次に「Blink」のスケッチをArduino UNOに書き込んでいきます

(1)PC上のArduino IDEのメニューバー「ファイル」から、「スケッチ例」>>> 「01.Basics」>>>「Blink」の順番に開いていきます
6-スケッチ例

(2)Arduino IDEに「Blink」のスケッチ例が表示されます。
7-Blinkスケッチ

(3)「マイコンボードに書き込む (「→」マーク)」をクリック
8-マイコンボードに書き込む

(4)書き込んでいる最中はArduino UNO上の「TX」「RX」のLEDがビカビカっと点滅します。
9-TX_RX点滅

(5)書き込みが無事終わり、「TX」「RX」のLEDが消灯

(6)Arduino UNOの「GND」と「デジタル13番ピン」にφ5の砲弾型LEDを挿します。
10-ピン説明

※電流制限のための抵抗(220Ω)を使用してください。
※LEDには極性がありますから注意してください。
「GND」にマイナス端子(LEDの端子の短いほう)、「13」にプラス端子(LEDの端子の長いほう)を挿します。

(8)GNDとデジタル13番ピンに挿したLEDが1秒間隔で点滅します。→正常動作しています。[ステップ1]成功!
11-13番ピンが1秒間隔点滅

(9)Arduino IDEの「Blink」のスケッチに書かれている「delay(1000)」の数値を変更します。
  「delay(1000)」を「delay(3000)」と書き換えます。(2箇所あります)
12-delay書き換え

(10)GNDとデジタル13番ピンに挿したLEDが3秒間隔で点滅します。→正常動作しています。[ステップ2]成功!
13-13番ピンが3秒間隔点滅

Arduino UNOでLEDを点滅(制御)させることができました!^o^v
が、謎だらけ。。。

疑問1.なぜデジタル13番ピンにLEDを挿したのか。他のピンじゃだめなの?
疑問2.「delay(1000)」って点滅速度を変えるコードなの?そもそもスケッチの内容を理解できていない。

「Blink」のスケッチを見ながら、ひとつずつ疑問を解消していきましょう。
14-Blinkスケッチ

まずは「疑問1.なぜ13番ピンにLEDを挿したのか。他のピンじゃだめなの?」

「Blink」のスケッチの中に「LED_BUILTIN」というコードがありました。
そして、「LED_BUILTIN」というコードについて、www.arduino.ccのページを見ると、このような記述が。。。
13-1-LED_BUILTIN
https://www.arduino.cc/en/Reference/Constants
つまり、「LED_BUILTIN」とはArduino UNOのデジタル13番ピンのことを指すみたいです。(゚A゚;)ゴクリ.
IDEのサンプル例に書かれている「Blink」のスケッチは、デジタル13番ピンに挿したLEDの制御例、ということですね。

次なる疑問。
「delay(1000)」て点滅速度を変えるコードなの?そもそもスケッチの内容を理解できていない
そうなんです。
Arduino IDEからArduinoボードにスケッチを書き込む手順はわかったのですが、肝心なのは、そのスケッチ(Arduino IDEに書いた)の内容。

まず、「/*」「*/」「//」注目!
・Arduinoのスケッチにおいて、「/*」「*/」「//」内の文章は「コメント」である
・「コメント」とはArduinoの指令内容(スケッチ)に関する説明文やメモのようなもの。
・変更しても、削除しても、Arduinoの指令内容(スケッチ)に直接影響を及ぼすものではない
とあらかじめ先輩スタッフさんに教えてもらっていました。

なので、コメント(Arduinoの指令内容(スケッチ)に関する説明文)の部分をざっくり和訳してみました。
15-読み解く

うんうん。なんとなく意味がわかってきました
いえ、まだまださっぱりなんですが、丁寧にコメントを入れてくれているおかげで、Blinkのコードの意味が理解できてきました。

次にコード(Arduino言語)を見ていきましょう。
コメントは「変更しても、削除しても、Arduinoの指令内容(スケッチ)に直接影響を及ぼすものではない」とのことだったので、「Blink」のスケッチからコメント部分を省いてみました。

結果、こんな感じ↓
-----------------------------------------
void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);  
  delay(1000);                      
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);                  
}
-----------------------------------------

わ!めっちゃ短かくなった!!^o^
と喜んではみたものの、このコードの意味はやっぱりわからず…(´-ω-`)ションボリです。

digitalWrite」やら「delay」やら、、、Arduino言語、むずかしい・・・。

と、思ったところで、再度、Arduino IDEのメニューバー「ヘルプ」へ。
「ヘルプ」>「リファレンス」をクリックすると、、、
16-リファレンス1

ブラウザにジャンプして、ページが表示されました。
これ、Arduino言語の辞書的なページなんです。
17-リファレンス218-リファレンス3

例えば
、「delay」。
「Blink」のスケッチ例の中に出てきましたね。
「delay(1000)」って書いてました。
19-delay

リファレンスを見ると、「()内で指定された時間、プログラムを一時停止する」指令だということがわかります。
「()」内に表示する数字はms単位。1000ms=1秒。
「delay(1000)」はつまり、『1秒間プログラムを一時停止するコード』ということになります。

そして、「digitalWrite(LED_BUILTIN, HIGH)」。
「digitalWrite(LED_BUILTIN, LOW)」は出力に関する指定をするコードみたいです。
20-digitalwrite

Arduino IDEの「スケッチ例」>>> 「01.Basics」>>>「Blink」の内容はつまり、
『Arduino UNOのデジタル13ピンに挿したLEDが、1秒間点滅(状態で一時停止する)→1秒間消灯(状態で一時停止する)を繰り返す』という内容だったんですね!

おー!!理解できたときの快感!たまらないです!!^^

そして、念には念を。
先輩スタッフさんの言うとおり「コメントは変更しても、削除しても、Arduinoの指令内容(スケッチ)に直接影響を及ぼすものではない」というのは真実なのか・・・?
(べつに先輩スタッフさんを疑ってるわけじゃないですよー(^_^;))

「Blink」のスケッチからコメント部分を削除した内容(コードのみ)で正常動作するのかを試してみました。
21-コードのみ

無事正常動作しました。
22-13番ピンが1秒間隔点滅



ふっふっふっふ。無事成功。
少し理解もできました。満足、満足。^^

ところで、再度IDEを見ると「検証(コンパイル)」ボタンと「マイコンに書き込む」ボタンがあることがわかります。
「検証(コンパイル)」してから、「マイコンに書き込む」べき?
でも、いきなり「マイコンに書き込む」をクリックしても問題なく動作したし、どうなんだろう?

再び先輩スタッフさんに聞いてみたところ、
「マイコンに書き込む」をクリックすると、検証(コンパイル)してくれる。
エラーが出たら、どうせ書き込みできないんだから、「検証(コンパイル)」→「マイコンに書き込む」の順でクリックしても、
「マイコンに書き込む」だけクリックしてもどっちでもいいよ。試しながらスケッチしている時は「検証(コンパイル)」をしながら作業したりするよ』
とのことでした。
23-コンパイル
※「検証」をクリック
24-書き込み
※「マイコンボードに書き込む」をクリック

来週はこれを利用して、店頭にディスプレイしている作例をご紹介していきたいと思います。

それはまた次週!

(記事:ぐっちさん)
更新予定:毎週木曜日(次回は3月30日です!)

★記事内で紹介した商品は、こちらから購入できます!★

商品
型番
個数
一括注文
リンク先
Arduino UNO Rev3 A000066 1個 こちらから→
USB2.0 ケ-ブルA-B 1m 2AB-10 1個
Arduinoをはじめよう 第3版 ISBN9784873117331 1個
LED 5φ 赤 ★受注単位有★ L-513ET 5個
カーボン抵抗 1/4W 5% ★受注単位有★ 220Ω 10個
※個数を記入していますが、リンク先ページ内で変更可能です。

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


昨年末から★シリコンハウス一階、上りエスカレーターの横(左手)のエリアに電工女子の作品の一部を展示しております。


新年の目玉展示として設置していた「イケメン獅子舞君」。
1獅子舞君

ご来店されたお客様(小学生ぐらいの男の子でした)が「おぉ! (゜ロ゜)!」とリアクションされているのを見て、めっちゃ嬉しかったです。
ありがとうございます!!^^

今回、私が作ったのはペーパークラフトで作った獅子舞君の頭の部分だけ。

人体を感知し、音楽と一緒に舞を披露する、いわば心臓部は当社開発のお兄さんに作ってもらったベースボードの成せるわざなのでした。


2土台ボード

★「プチロボMS5L」★「人感センサー」★「録再ボード」★Arduino(アルドゥイーノ)で制御していました。

開発のお兄さんがArduinoのプログラムを作っているのを隣りでじーーー・・・っと見ているうちに
Arduinoってすごい!何でもできるんやん!」と若干勘違いしつつ、心の中でつぶやきました。
自分でArduinoを操れるようになりたい・・・」と。。。(小声)(´-`).。oO

だけど、そもそもArduinoって何?どうやって使うの?
「プログラミング!」と聞くだけで軽く拒絶反応を起こしてしまう私にでもできるの?
数日悩みましたが、ここは勢いで乗り切るのだ!!

まずは★Arduino UNO(アルドゥイーノ ウノ)本体を購入しました。
3My-Arduino

買うことで自分を追い詰めてみました。^o^;
買ったからには、やらねばねっ!

Arduino本体の他に必要なものパソコンと、USBケーブル(Arduinoとパソコンを接続するため)です。
4USBケーブル

ArduinoでのプログラミングにはArduinoIDE(アルドゥイーノ アイ・ディー・イー)というソフトを使います。
ArduinoIDEをパソコンにインストール→ArduinoIDEでスケッチ(プログラム)を作成→Arduino本体にその内容を書き込むことでLEDやサーボモーターなどを制御することができるのです。

そうそう。
Arduinoで使用する、ひとまとまりのコードのことは「プログラム」ではなく、「スケッチ」と呼ばれているそうです。
「プログラム」「プログラミング」と言われると、なんとなく「難しいこと!」という先入観がありましたが、
スケッチ」と言われると、「楽しくお絵かき!」的な親近感がわくのは私だけでしょうか。^^

ということで、まずはArduinoIDEをパソコンにインストールしていきましょう。

ArduinoIDEはArduino ccのホームページからフリーでダウンロードできます。

2017年3月時点での最新版は「ARDUINO 1.8.1」です。

インストール手順は使用するパソコンのOSによって異なります。
私が使用するパソコンはWindows7なので、Windows版のインストール手順をご紹介していきますね。

まずは、Arduino ccのホームページにアクセス。

「Windows Installer」を選択して、
5Arduino1

「ダウンロード (JUST DOWNLOAD)」をクリック
6Arduino2

「使用同意」を確認して「Agree (同意)」をクリック
7arduino3

インストールするものの内容を確認して、「Next (次へ)」をクリック
8arduino4

ファイルがインストールされる場所を確認して、「Install (インストール)」をクリック
9arduino5

インストールが始まります。
10arduino6

しばらく待って・・・インストール完了!簡単でした!
「閉じる (Close)」をクリックして、セットアップ画面を閉じます
11arduino7

デスクトップを見ると、Arduinoのアイコンが出ています
これが「Arduino IDE」です。
12arduino8

早速、起動させてみましょう。
13arduino9

ここにスケッチを書き込んでいくんですが、何をどう書いていいのやら。。。(゚A゚;)ゴクリ.
14arduino10

なので、まずはArduino IDEがどんなソフトなのかを見ていくことにします。
「ファイル」「編集」「スケッチ」など、メニューバーがエクセルみたい。
なんだか見慣れた感じで、緊張感が少し緩和されます。^^
そして、「ヘルプ」をクリックしてみたところ、「初心者向けガイド」の文字が!!
こりゃありがたい!
15arduino11

早速クリックしてみると、、、
16arduino12

おぉ!いきなりブラウザにジャンプして、ページが表示されました!
17arduino13

Getting Started with Arduino on Windows (WindowsでArduinoを始めよう)」
おぉ!!Arduinoを始める手順が書いてあります!
(↓Google Chromeのウェブページ翻訳を利用しました)
18arduino14

Arduinoを始めるために必要なものの説明から、Arduino IDEのインストールLED点滅のスケッチ例まで書いてあります!!
めっちゃ親切じゃないですか!こりゃありがたい!!
では、これから先はこのページを見ながらLED点滅のスケッチをArduinoに書き込み(アップロード)していきたいと思います



それはまた次週!

(記事:ぐっちさん)
更新予定:毎週木曜日(次回は3月23日です!)



★記事内で紹介した商品は、こちらから購入できます!★

商品
型番
個数
一括注文
リンク先
Arduino UNO Rev3 A000066 1個 こちらから→
USB2.0 ケ-ブルA-B 1m 2AB-10 1個
Arduinoをはじめよう 第3版 ISBN9784873117331 1個
※個数を記入していますが、リンク先ページ内で変更可能です。

★記事内で紹介した商品は、こちらから購入できます!★

商品
型番
個数
一括注文
リンク先
プチロボMS5L WR-MS5L 1個 こちらから→
人体赤外線感知素子 KP-IR612 1個
ボイスレコーダー2【基板完成品】 VREC-40 1個
Arduino UNO Rev3 A000066 1個
※個数を記入していますが、リンク先ページ内で変更可能です。

このページのトップヘ