第3回 プログラミングとは

プログラミングについて説明します。

プログラミングとは

今までの記事では「プログラミング」や「プログラム」という言葉を使ってきましたが、具体的な中身がよくわからないままでしたよね。すみませんでした…

プログラミングの入門書を読むと「プログラムとは、コンピュータをどのように動作させるかを記述した指示書です」というように説明されています。この説明を聞いても分かったような、分からないような、なんだかフワフワした感じになります。

この記事では、プログラム、プログラミングの中身について具体的に理解を深めようと思います。

まず、用語についてもういちど整理しておきます。

  • 「プログラム」
    Arduinoボードがどのように電子部品を制御するか、という動作内容を書いたもの。つまりコンピュータをどのように動作させるかを書いた指示書になります。
  • 「プログラミング」
    「プログラム」を作成する作業

また「プログラム」を作成する人のことを「プログラマ」と呼んでいます。

それでは、この「プログラム」のイメージを具体的に見てみましょう。

 

プログラムのイメージ

基礎編パート1ではキッチンタイマーを作るわけですが、具体的にはArduinoをキッチンタイマーとして動作させるためのプログラム(指示書)を作っていきます。

指示書といっても、どのような内容で書くのか想像つきませんよね。そこで今回の記事では、この指示書の内容がどのようなものになるのか、具体的にみていきます。

ただ、キッチンタイマーを例に説明すると複雑になってしまいますので、もっと簡単な例でこの指示書がどのような内容になるのか一緒に見ていきましょう。

これから、ArduinoボードにLEDを接続して、

「LEDを1秒ごとにつけたり消したりする」

場合、どのようなプログラム(指示書)になるかを例にして説明します。

サンプル回路

なお実際のプログラムは英単語を使って作成しますが、イメージをわかりやすくするために、もしプログラムを日本語で作成するとしたらどのようになるか説明します。

プログラミングの経験がないと、おそらくプログラムはこのような内容になるのではないか、と思うのではないでしょうか。

プログラム例

残念ながらこのような内容のプログラムを作成してもArduinoは理解することができないんです。Arduinoが理解できる指示は限られているんです。

この限られた「指示」はどのようなものか説明します。

まず、Arduinoボードの端子にはそれぞれ番号が割り当てられています。

Arduino端子番号

この端子に接続した電子部品を制御するために、以下の指示が用意されています。

  • 「Arduinoボードの〇番端子のスイッチをONにする」
    ○には数字を入れることができます。Arduinoはこの指示を受けると、指示された数字の端子のスイッチをONにします。
    実際の指示の例: 「Arduinoボードの10番端子のスイッチをONにする」
  • 「Arduinoボードの○番の端子のスイッチをOFFにする」
    ONの時と同様、○には数字を入れることができます。Arduinoはこの指示を受けると、指示された数字の端子のスイッチをOFFにします。
    実際の指示の例: 「Arduinoボードの10番端子のスイッチをOFFにする」
  • 「○秒間何もしない」
    ○には数字を入れることができます。Arduinoはこの指示を受けると、指示された数字の時間、何もしない状態になります。
    実際の指示の例: 「1秒間何もしない」

それでは、以下のように組み立てた状態で、LEDを1秒ごとにつけたり消したりという動作を3回行う場合、プログラムはどのようになるか一緒に考えてみましょう。

サンプル回路

上の画像は、Arduinoボードの10番端子にLEDを接続しています。

さて、先ほどの3種類の指示をうまく組み合わせて1秒ごとにLEDをつけたり消したりを3回行う場合、プログラム(指示書)はどのように作成すればよいか、一緒に考えてみましょう。

「1秒ごとにLEDをつけたり消したりする」というのは、実際の動作としては「LEDをつけて」→「1秒間そのままの状態にして」→「LEDを消して」→「1秒間そのままにして」→「LEDをつけて」、、、という動作を繰り返せばよさそうですよね。

このように考えると、先ほどの指示を以下のように組み合わせればLEDを1秒ごとにつけたり消したり3回行うことができます。

  • Arduinoボードの10番端子のスイッチをONにする
  • 1秒間何もしない
  • Arduinoボードの10番端子のスイッチをOFFにする
  • 1秒間何もしない
  • Arduinoボードの10番端子のスイッチをONにする
  • 1秒間何もしない
  • Arduinoボードの10番端子のスイッチをOFFにする
  • 1秒間何もしない
  • Arduinoボードの10番端子のスイッチをONにする
  • 1秒間何もしない
  • Arduinoボードの10番端子のスイッチをOFFにする

Arduinoプログラムイメージ

プログラミングとは、自分が考えた動作をするように、用意されている指示をうまく組み合わせて指示書(プログラム)を作成する、という作業になります。

これから、用意されている指示にはどのようなものがあるのか、それらをどのように組み合わせれば思った通りに動かすことができるのか、ということを一緒に習得していきます。

繰り返しになりますが、実際のArduinoのプログラムはローマ字を使って(英単語を使って)で作成する点に注意してください。

 

スケッチ

Arduinoではプログラムのことを「スケッチ」と呼んでいます。そこで、このシリーズでは今後「プログラム」「スケッチ」という用語を使用します。どちらも同じ意味です。

ところで、Arduinoではプログラムのことを「スケッチ」と呼ぶのには理由があるのですが、その理由を理解するためにはプログラミングの基礎をある程度理解している必要があります。

そこで「スケッチ」と呼ぶ理由は、基礎編パート1の最後に説明します。

 

 

更新履歴

日付 内容
2019.6.27 新規投稿