{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "オリジナルの作成:2015/06/14\n", "\n", "ArduBlockのインストール方法は、Arduino勉強会/C0-子供のためのArduinoその1を参照してください。\n", "\n", "最新の1.8.xのArduino IDEではArduBlockは動作しません。Arduino 1.6.4をご使用ください。(2017/11/12)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# C1-ArduBlockをはじめよう\n", "## LEDチカチカ\n", "電子工作の定番は、なんと言ってもLEDを点滅させるLチカです。 ArduBlockを使ってLEDチカチカを作ってみましょう。\n", "\n", "### スケッチの作り方\n", "Arduino IDEを起動して、ツールメニューからArduBlockを選択すると以下の画面がでます。 左のパネルには、スケッチに使う部品のボタンがあり、右の広いパネルにスケッチを描いていきます。\n", "\n", "\n", "\n", "最初に制御ボタンをクリックして、以下のように制御部品の一覧が表示されますので、 「ずっと 実行」をスケッチパネルまでドラッグします。 部品を間違えたときには、部品パネルにドラッグすると消えます。\n", "\n", "\n", "\n", "「ずっと 実行」は、その中の処理をずっと繰り返す部品です。 以下の様に左上に配置します。\n", "\n", "\n", "\n", "次に、ピンボタンをクリックして、「デジタルピンに値を設定」をスケッチパネルにドラッグし、\n", "\n", "「ずっと 実行」の右端にもっていくと、カチッと音がして「デジタルピンに値を設定」が 「ずっと 実行」の中にセットされます。\n", "\n", "\n", "\n", "\n", "\n", "次にユーティリティーボタンをクリックして、「待つ ミリ秒」部品をドラッグし、 先ほどの「デジタルピンに値を設定」の下にドラッグするとまたカチッと音がして、 「ずっと 実行」の中にはセットされます。\n", "\n", "\n", "\n", "「デジタルピンに値を設定」、「待つ ミリ秒」をもう1回ずつセットしると、\n", "\n", "以下の様になります。ここで、最初の「デジタルピンに値を設定」の#の右となりの番号を13に変更し、 2個目のデジタルピンに値を設定」の番号も13に変更し、HIGHからLOWに変更します。\n", "\n", "\n", "\n", "ここまでできたら、保存ボタンをクリックしてスケッチを「LEDチカチカ」という名前で保存します。\n", "\n", "### 動かしてみる\n", "できたスケッチをArduinoに書き込むには、アップロードボタンをクリックします。 注意深くみているとArduinoのTXとRXのLEDがすばやく点滅したあとにその上のLEDが1秒間隔で チカチカ点滅します。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## スイッチを使う\n", "こちらは、Arduino勉強会/C0-子供のためのArduinoその1を参照してください。\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 電圧を測る\n", "電圧を測るには、アナログ入力を使います。アナログ入力には、A0からA5の6個のピンが使えます。\n", "\n", "### ブレッドボードの配線\n", "電圧を変えるために、10KΩの半固定抵抗を使います。 スイッチサイエンスからブレッドボードにそのままささる、 つまみの大きい半固定抵抗 10KΩ が販売されているので、1個あると便利です。\n", "\n", "\n", "\n", "以下のようにブレッドボードに10KΩの半固定抵抗を差して、線を結びます。\n", "\n", "\n", "\n", "### スケッチを描く\n", "以下の手順でスケッチを描いていきます。\n", "\n", "- 「制御」ボタンから「ずっと 実行」をドラッグ\n", "- 「ユーティリティー」ボタンから「シリアル出力」をドラッグ\n", "- 「数値・定数」ボタンから「メッセージ」をドラッグ\n", "- 「数値・定数」ボタンから「真偽値を文字列に」をドラッグ\n", "- 「ピン」から「アナログピン」をドラッグ\n", "\n", "値を変更する箇所は、以下の通りです。\n", "\n", "- メッセージをSensor =に変更\n", "- アナログピンの#の番号を1から0に変更\n", "\n", "以下のようなスケッチが完成したら保存ボタンで「電圧を測る」の名前で保存します。\n", "\n", "\n", "\n", "### 動かしてみる\n", "アップロードボタンをクリックしてスケッチをArduinoに書き込みます。\n", "\n", "\n", "\n", "Arduino IDEのツールメニューからシリアルモニタを選択すると、電圧の値が0から1023の間の値で表示されます。\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 距離を測る\n", "秋月で400円で買える、超音波距離センサ HC-SR04 を使って、距離を測ってみましょう。\n", "\n", "\n", "\n", "### ブレッドボードの配線\n", "以下のようにブレッドボードにHC-SR04を差して、線を結びます。\n", "\n", "\n", "\n", "\n", "### スケッチを描く\n", "以下の手順でスケッチを描いていきます。\n", "\n", "- 「制御」ボタンから「ずっと 実行」をドラッグ\n", "- 「ユーティリティー」ボタンから「シリアル出力」をドラッグ\n", "- 「数値・定数」ボタンから「メッセージ」をドラッグ\n", "- 「数値・定数」ボタンから「真偽値を文字列に」をドラッグ\n", "- n「ピン」ボタンからから「超音波」をドラッグ\n", "- 「ユーティリティー」ボタンから「待つ ミリ秒」をドラッグ\n", "\n", "値を変更する箇所は、以下の通りです。\n", "\n", "- メッセージをDistance =に変更\n", "- 超音波のTrigger #を8、echo #を9に変更\n", "- 待つ ミリ秒を500に変更\n", "\n", "\n", "\n", "### 動かしてみる\n", "アップロードボタンをクリックしてスケッチをArduinoに書き込みます。\n", "\n", "\n", "\n", "Arduino IDEのツールメニューからシリアルモニタを選択すると、超音波センサからの距離がcm単位で表示されます。\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## サーボモータをまわす\n", "サーボのテストには秋月で400円で買えるマイクロサーボ9gを使います。 ちょっとした工作に便利な一品です。\n", "\n", "\n", "\n", "### ブレッドボードの配線\n", "以下のようにブレッドボードに半固定抵抗を差して、マイクロサーボと線で結びます。\n", "\n", "\n", "\n", "\n", "### スケッチを描く\n", "以下の手順でスケッチを描いていきます。\n", "\n", "- 「制御」ボタンから「ずっと 実行」をドラッグ\n", "- 「ピン」ボタンからから「サーボ」をドラッグ\n", "- 「ユーティリティー」ボタンから「マップ」をドラッグ\n", "- 「ピン」ボタンからから「アナログピン」をドラッグ\n", "- 「ユーティリティー」ボタンから「待つ ミリ秒」をドラッグ\n", "\n", "値を変更する箇所は、以下の通りです。\n", "\n", "- サーボのピン番号を9に変更\n", "- アナログピン#を0に変更\n", "- マップのまでを255から179に変更\n", "- 待つ ミリ秒を100に変更\n", "\n", "\n", "\n", "### 動かしてみる\n", "アップロードボタンをクリックしてスケッチをArduinoに書き込みます。\n", "\n", "半固定抵抗のつまみを回すとサーボの方向が変わります。\n", "\n", "" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, "nbformat": 4, "nbformat_minor": 0 }