Python

この記事は Raspberry Pi 勉強会 の一部です。

  1. Python とは
  2. Python プログラム
  3. Python から GPIO を制御する

教科書
愛知大学「Python によるプログラミング入門」

参考書
  • Pythonスタートブック
  • Raspberry Piで学ぶ電子工作


Python とは

Python(パイソン)は、汎用のプログラミング言語です。
P のつく3つの代表的なプログラミング言語の一つです。
他の2つは Perl と PHP です。

Raspberry Pi の Pi (パイ) は、パイ生地の他に、Python のことでもあるそうです。


プログラム言語の歴史

プログラム言語は、色々な分類があります。
今回は、コンパイル型、インタプリタ型、関数型言語 (Functional) に分けていますが、その違いは本質的なものではないです。
インタプリタ型も、開発者がコンパイルを意識していないだけで、動的コンパイル などの手法が用いられています。
一般的なプログラム言語は、手続き型プログラミング (Procedura) が主流ですが、関数型言語の特徴を取り入れた マルチパラダイムプログラミング言語 も増えてきています。
Python もその一つです。

名前の由来

名前の由来は、イギリスのテレビ局 BBC が製作したコメディ番組『空飛ぶモンティ・パイソン』である。
Python という英単語が意味する爬虫類のニシキヘビが Python言語のマスコットやアイコンとして使われている。

Python 諸々

  • Python のバージョン系列
  • Python のライブラリ

Python プログラム

教科書
愛知大学「Python によるプログラミング入門」
Python の会話モード
プログラムの実行法
Python 文法
  • 定数
  • 変数と式
  • プログラムの構成
  • ファイル
  • 基本関数

プログラミング手法

  • 構造化プログラミング
  • オブジェクト指向プログラミング

サンプルコード

  • もっとも簡単なサンプル (hello)
  • カレンダー

Python から GPIO を制御する

LEDの接続は Raspberry Pi の GPIO を参照ください。

LED点灯

下記をコマンドを実行します。
$ python
>> import RPi.GPIO as GPIO
>> GPIO.setmode(GPIO.BCM)
>> GPIO.setup(17,GPIO.OUT)
(点灯)
>> GPIO.output(17,GPIO.HIGH)
(消灯)
>> GPIO.output(17,GPIO.LOW)
>> exit()

TESTING A CONNECTED LED IN PYTHON

サンプルコード

  • LEDの点滅
  • LEDの明暗 (PWM)
  • タクトスイッチの読み取り
  • サーボの制御
  • WiringPi

補足資料

  • RPi.GPIO の PWM
  • 連続回転サーボ