Re: ゼロから始める電子工作

リゼロって言いたかっただけです。さーせん。

ラズパイは触ってたけどあくまでコンピュータとしてであって、いままでまともな電子工作ってしたことなかった。色々と部品は買ってたりもしたが眠ってた。。。
というわけで、”Re”であり、ほぼ”ゼロ”からの出発なのです。嘘ではないです。

ちなみに一番最初に作成を目指すのはデータロガー。
ペットボトルロケットに搭載して機体の位置なんかを計測させようと思います。

とはいえ、まずはLEDを点灯させるところからはじめます。通称Lチカ。
そう、プログラミングで言うところのHello Worldです。こんにちは世界。

あと、制御にどのマイコンを使おうか迷ったけど、簡単なArduinoを使おうと思います。
マイコンってのはちっこいコンピュータと思っておいてください。
プログラムを書き込んで電子回路を制御するのに使います。
そのうちラズパイを使いたいなぁ。ZEROも入手しやすくなってきたみたいですし。

環境整備

ハード

実はずいぶん前にArduinoでいろいろするためのキットを買ってたのでした。
その名も”Arduino Sidekick Basic Kit”. 名前がカコイイ!
眠ってたのを起こしてあげます。なんで眠らせてたんだと自分でも不思議。

arduino-sidekick-kit

内容物は以下

  • Arduino本体
  • ブレッドボード(はんだ付けしないで色々回路を組んで実験するためのツール)
  • LED
  • 抵抗(抵抗だけなんで必要なの??と思うかもしませんが基本的な電気部品その1です)
  • コンデンサ(電気を貯めることができます。基本的な部品その2です)
  • サーボ(中にモーターが入っててラジコンとかロボットとか動かすのに使います)
  • センサーとかいろいろ
  • ブレッドボードと部品を繋ぐためのコード

そういや、基本的な部品その3のコイルってないのかな???

同じ内容のキットは既に販売終了して高価になってた。似たようなセットが売られているけど評価を見るとあまり品質は良くないみたい。

ちなみに、はんだごてとはんだは持ってるので今回は割愛。
適当に買ったものなので、はんだごてはちゃんとしたものを購入したほうがいいみたい。
はんだも鉛フリーじゃないやつが使いやすいので初心者は鉛フリーはやめたほうがいいらしい。
はんだ付けについては詳しいページを見つけたので、今後はこちらのおすすめにしたがって機材を新しくしていきたい。

ハンダ付け職人のはんだ付け講座

ソフト

ソフトはArduino用の開発環境を準備します。
このソフトでプログラムを作ってArduinoに書き込んで実行させます。

開発環境は以下から入手できます。

https://www.arduino.cc/en/Main/Software

今はwindowsもアプリなんて形態でもソフトが配信されているんですね。
ちなみに私はWindows10を使ってますが、慣れ親しんだデスクトップ環境を使っているので通常版でインストールしておきます。

準備方法は以下にまとめる予定。
Arduino開発環境の準備

Lチカ第1弾

もう我慢できない!ので早速Lチカやってみましょう。
一発目ということで、他の回路は繋がずにArduino上に配置されたLEDを光らせます。

ArduinoをPCとUSBで繋ぎます。
USBポートに繋いだだけでうまく認識されたみたいです。
ArduinoはCOMポートとして認識されてます。そのCOMポートと通信することでPCからArduinoを操作できます。なので、COMポート番号を調べます。

コントロールパネルを開きます。
ハードウェアとサウンド→デバイスとプリンターの中から「デバイスマネージャー」を開きます。

arduino接続01

ポート(COMとLPT)というところを開くとArduino Unoとして認識されていました。この後ろについてる「COM3」というのがCOMポートになります。

arduino-connect02

スケッチの作成

では、接続先もわかったので開発環境を立ち上げます。
インストールしたArduino IDEのアイコンをクリックして立ち上げます。
Arduinoは繋いだままです。

ちなみに、スケッチというのはArduino独特の言い回しみたいです。コンパイルする前のプログラムのことで通常はソースコードとかソースとか呼びます。

COMポートを先ほど確認したCOM3に設定します。
ツール→シリアルポート(最初はCOM1になってた)で、COM3を選択します。first-scketch01

一つ上に、「ボード: “Arduino/Genuino Uno”」と記載があります。
自分の使ってる機材はArduino UNOなので、そのままにしておきます。
今はArduinoではなく、Genuinoって呼ぶのかしら??Arduinoのページを見るとUS向けはArduinoで、Non US向けがGenuinoってなってた。時代は進んだっぽい。
他の種類のArduinoを使ってる人は自分の種類に合わせます。
たぶん、自動で選択されるっぽい?

ボード上のLEDを光らせるスケッチはサンプルがあるのでこいつを使います。

ファイル→スケッチの例→01. Basics →Blinkを選びます。
スケッチが書かれた新しいウィンドウが立ち上がります。

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
  delay(1000); // wait for a second
  digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
  delay(1000); // wait for a second
}

このスケッチでは、まずvoid setup()の中で出力させるピンを設定し、void loop()の中でポートの電圧を1秒ごとにHighとLowを切り替えてます。

出力させるピンには内蔵LEDがつながっているので、電圧がHighになると点灯し、Lowになると消灯するを1秒ごとに繰り返すので、LEDがチカチカします。

スケッチのコンパイルと書き込み

では、このスケッチをコンパイルしてArduinoにアップロードします。

コンパイルは下の図のようにチェック印ボタンを押します。
メニューのスケッチ→検証・コンパイルを選んでもよいです。
verify

今回はサンプルスケッチなのでエラーもないはず。

コンパイルが終わったプログラムをArduinoにアップロードします。
緊張の瞬間!
アップロードは以下の図の矢印ボタンを押すか、
メニューのスケッチ→マイコンボードに書き込むでいけます。
upload

うまくいけばARDUINOマークの横にあるLEDが1秒ごとに点灯⇔消灯を繰り返すはず。
led-blink

物理的な回路を作らなかったけど、今日はここまで。

参考

シェアする

  • このエントリーをはてなブックマークに追加

フォローする