【1限目】部品の確認と環境構築

目次

部品の確認

購入する教材についてはこちらを参考にしてください

あわせて読みたい
教材について 子どもたちにプログラミングを教えるにあたって、何を教材とするべきかいろいろと考えました。 ・マインクラフト 「プログラミングの入門に良い」とよく聞きます。実際...

キットに含まれるパーツが足りているかどうか確認しましょう。中華製あるあるになってしまうのですが、足りないことが多々あります。エンジニアたるもの最初は検品から始めましょう。

シールド

部品を取り付けるベースになる基板です。各種ICチップも付いているので取り扱いには気をつけましょう。

ネジ類

サーボ

実物は黒だったりします。ロットによって変わりますが、細かいことは気にしたら負けです。

ホイール

ギア付きモーター

減速ギアをつけることで力が増しています。

モーターブラケット

シールドにモーターを取り付けるためのアルミパーツです。

アクリルパーツ

上のパターンか、下のパターンのどちらかが入っています。なぜ2パターンあるのでしょうね?気にしたら負けなんだと思います。

電子部品

電子部品というくくり方もどうなんだ?と思いますが・・・。この中で一番大事なのが『ESP32』です。これがメインのコンピューターです。

ワイヤー

ジャンプワイヤー/ジャンパーワイヤーと、カメラ用のFPCワイヤー、XH端子用の5ピンケーブルです。

工具

プラスドライバーは大小2本入っていることもあるようです。ロットによっては1本かもしれません。細かいことは気にしたら負けです。

電池

電池はキットに含まれないので、個別に買う必要があります。18650電池というリチウムイオン充電池を使います。Amazonなどではモバイルバッテリーキットとして売られている物があるので、キットの中身の電池のみを使うのが安くて良いです。今回は以下のものを使いました。

環境構築

さて、部品の確認が終わったら、次はプログラミングの環境を作りましょう。プログラミングに主眼を置くなら、環境構築は親御さんが行ってしまっても良いかと思います。環境構築から学ぶことは殆どないので。

まずは適当なWindowsPCを用意しましょう。

Arduino IDEのインストール

プログラミングにはArduino IDEを使用します。以下のサイトからダウンロードして下さい。

[SOFTWARE]をクリック

[Windows]をクリック

あとは画面の指示に従ってインストールしてください。

インストールが終わったら起動しましょう。

ファイル(File)から基本設定(Preferences)を開きます。

言語はお好みで日本語を選んでも良いです。

追加のボードマネージャのURL欄に以下のURLをコピペします。

『https://dl.espressif.com/dl/package_esp32_index.json』

[OK]を押したら勝手にモジュールがロードされます。

次は[ツール]⇒[ボード]⇒[ボードマネージャ]を開きます

[検索をフィルタ]欄に『ESP32』と入力します

すると、『esp32 by Espressif Systems』というのが出てきます。似たようなものが他にも出てくるので間違えないようにして下さい。ESP32を開発しているEspressif社のものを選択しましょう。

[インストール]をクリックします。

※こちらの画面だと既にインストール済みのため、インストールボタンが表示されていません。ごめんなさい。

インストールするとESP32のボードが選択できるようになります。

[ツール]⇒[ボード]⇒[esp32]⇒[ESP32-WROVER module]を選びます。

CH340ドライバのインストール

つづいて、ESP32ボードとWindowsPCを接続するためのCH340ドライバをセットアップします。

ESP32とWindowsPCをUSBで接続して下さい。USBケーブルはキットの中に入っています。

接続したらデバイスマネージャを開きます。

もし以下のように認識できていたら、CH340ドライバのインストールはスキップして良いです。(おそらく大抵はインストールが必要です)

ドライバを以下からダウンロードしてください。

[Driver&Tools]のところにあるWindows用のEXEファイルをダウンロードしましょう。

ダウンロードしたら実行してください。

そして[INSTALL]をクリックします。「あ」っという間に終わります。

再度デバイスマネージャの画面に戻って、ちゃんと認識しているかどうか見て下さい。『USB-SERIAL CH340(COMx)』となっていたらOKです。COMのあとの数字は後で使うので覚えておきましょう。

PCA9685ライブラリのインストール

PCA9685はシールドに搭載されているICチップの型番です。LEDの明るさを調整するICなのですが、LEDの明るさ以外にも、モーターのスピードや、サーボの角度などPWMの制御全般に対して使える便利なICです。PWMについては大人のプログラミング教室で勉強するので、今は分からなくて大丈夫です。

あわせて読みたい
Project 4.1 PWM制御/Breathing LED 前回は複数のLEDをフォンフォンさせました。 https://kaneshige.org/?p=209 今回は単独のLEDの明るさを制御して「じわ~」っと光らせてみましょう。 本家freenoveのテキ...

さて、Arduino IDEに戻ります。[スケッチ]⇒[ライブラリをインククード]⇒[ライブラリを管理]と進みます。

[検索をフィルタ]欄に『PCA9685』と入力しましょう。

出てきたPCA9685ライブラリをインストールします。

※この画面では既にインストール済みなので[インストール]ボタンが表示されていません。ごめんなさい。

動作確認

さて、いよいよ動作確認です。うまく動くでしょうか。

サンプルコードをFreenoveのサイトからダウンロードしましょう。

freenoveのサイトから辿って下さい。

[Tutorial]をクリックします。

『FNK0053 Freenove 4WD Car Kit for ESP32』という行の[Download]をクリックします。

ダウンロードしたzipファイルの中の

『Freenove_4WD_Car_Kit_for_ESP32-master\Sketches\00.0_Servo_90』フォルダを開きます。

その中にある

『00.0_Servo_90.ino』というファイルをダブルクリックで開きましょう。Arduino IDEで開くと思います。

そうするとこんな画面になると思います。

マイコンと接続しましょう。

[ツール]⇒[ボード]⇒[esp32]⇒[ESP32 Wrover Module]を選択します。(先程選択したので既に選択されているはずです)

次にポートを選択します。

[ツール]⇒[ポート]⇒[COMx]を選択します。『x』はデバイスマネージャで確認したCOMポート番号です。

そうしたら、『書き込み』をします。これはコンパイルしてアップロードすることを言います。コンパイルとはプログラムのソースコード(Arduino IDEに表示されていた人間が読めるコード)を機械語に変換することです。

左上の『→』をクリックします。

下のコンソール画面に色々と表示されて『書き込み完了』と出れば大丈夫です。

シールドに電池を入れましょう。プラスとマイナスを間違えないように注意しましょう。

ESP32をシールドに取り付けます。向きを間違わないようにしましょう。

シールドの『Servo1』『Servo2』にそれぞれサーボを取り付けます。ワイヤーの色を間違わないようにしましょう。

サーボとはサーボモーターの略ですが、角度指定で固定できるモーターと言う感じの部品です。普通のモーターのように『ぐるぐる』とは回りません。指示した角度まで回り、止まります。ロボットアームなどによく使う部品です。今回のキットではカメラ(顔)の首振りに使います。

いよいよ電源を投入します。

シールドの電源ボタンを押すと、サーボが一瞬『ジッ』と鳴って動きます。

よーく見ていないと動いたのかどうかわからないですが、もしわからない場合はソースコードを以下のように変更して、再度実行してみてください。

【修正前】

#include "Freenove_4WD_Car_For_ESP32.h"

void setup()
{
  Servo_Setup();    //Servo initialization
}

void loop()
{
  Servo_1_Angle(90);//Set the Angle value of servo 1 to 90°
  Servo_2_Angle(90);//Set the Angle value of servo 2 to 90°
  delay(1000);
}

【修正後】

#include "Freenove_4WD_Car_For_ESP32.h"

void setup()
{
  Servo_Setup();    //Servo initialization
}

void loop()
{
  Servo_1_Angle(90);//Set the Angle value of servo 1 to 90°
  Servo_2_Angle(90);//Set the Angle value of servo 2 to 90°
  delay(1000);
  Servo_1_Angle(180);//Set the Angle value of servo 1 to 180°
  Servo_2_Angle(180);//Set the Angle value of servo 2 to 180°
  delay(1000);
}

13-15行の3行を追加します。

再度書き込みをして、シールドの電源ボタンを押すと、サーボが1秒間隔で『ジッ、ジッ』と動くと思います。可愛いですね。

しばらく眺めて満足したら、最初のコードに戻して、90度で止めておいて下さい。じゃないと、組み立て終わってから顔が明後日の方向に向いてしまいます。

お片付けをして今日の教室はおしまいです。

片付けるときは、必ず電池を外して、電池ケースに入れるように心がけましょう。通常の乾電池と違い、リチウムイオン電池はショートすると非常に危険です。(ものすごい勢いで放電し、発熱・発火します)
大人がしっかりと監督しましょう。

また、動作確認に使用したサーボは一旦外しておきましょう。

お疲れ様でした。

あわせて読みたい
【2限目】ロボットカーの組み立て 前回は部品の確認とプログラミング環境のセットアップ・動作確認を行いました。 https://kaneshige.org/?p=16 今回から組み立てを行っていきます。早い子は1時間で終わ...
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

金重総合研究所の主席研究員。
子供の頃から研究者を目指し、ライフワークとして日々様々な研究をしています。
経営・マネジメント・金融・DXあたりが本職です。
私を採用したい人、私と一緒に働きたい人、一緒に知識を肥やしていきたい人はぜひお声がけ下さい。

コメント

コメントする

目次