PR

【PythonでmBot2プログラミング】CyberPiモジュールの読み込み

Python
この記事は約5分で読めます。

本記事では、CyberPiのPython APIを利用する際の、cyberpiモジュールのインポートについて解説します。

Pythonの基本概念である「モジュール」「オブジェクト」「関数」の基礎知識と、CyberPiライブラリにおけるそれらの使い方を紹介します。

APIとは

API(Application Programming Interface)は、ソフトウェアやハードウェアが外部のプログラムとやり取りをするためのインターフェース(接点)です。
簡単に言うと、『決められたルールに従って機能を利用するための仕組み』です。

cyberpiライブラリをインポートすることで、CyberPiや、mBot2センサーなどの各機能を簡単に利用できます。

Pythonにおける「モジュール」「オブジェクト」「関数」とは?

CyberPiのPython APIの中で、例えばmBot2を前進させる場合、次のAPIが利用できます。

cyberpi.mbot2.forward(speed = 50, t)

Pythonでは、「cyberpi」がモジュール、「mbot2」がオブジェクト、「forward」が関数、といったように分解できます。

これは、コードを整理し、再利用しやすくするために用意されている概念です。

それぞれを解説していきます。

モジュール

モジュールとは、関連するコードをまとめたファイルやライブラリのことです。

Pythonでは、モジュールをインポートすることで、他の場所で定義された関数やクラス、変数を利用することができます。

CyberPiライブラリでは、「cyberpi.py」というCyberPiに関連するコードがまとめられたファイル(モジュール)があるイメージです。
このモジュールをインポートすることで、CyberPiの様々な機能を利用できます。

オブジェクト

オブジェクトとは、「データ」と「データを扱う関数」をまとめた構造体のことです。

例えば、cyberpi モジュールの mbot2 オブジェクトには、「回転速度」や「回転角」といったデータや、前進や回転をする関数がまとめられています。

cyberpi モジュールには、mBot2を制御するための様々なオブジェクトが用意されています。

代表的なものを紹介します。

オブジェクト名内容
mbot2mbot2の一般的な動作制御
quad_rgb_sensorクアッドRGBセンサー
ultrasonic2超音波センサー
audioCyberPiのマイク・センサー
ledCyberPiのLED
consoleCyberPiのディスプレイ
controllerCyberPiのボタン
wifiCyberPiのWi-Fi接続
cloudCyberPiのクラウドサービス(IoT)
eventCyberPiのイベント

関数

関数とは、特定の処理を実行するコードのまとまりです。

例えば、mbot2 オブジェクトであれば、mBot2を前進させる forward() 、mBot2を右回転させる turn_right() が関数にあたります。

CyberPiモジュールのインポート方法

CyberPiをPythonで操作するためには、まず cyberpi モジュールをインポートします。

インポートの方法にはいくつかの種類があります。

基本的なインポート

import モジュール名

CyberPiの全ての機能を利用できますが、コードが長くなりがちです。

import cyberpi

cyberpi.mbot2.forward(50, 1)  # 50RPMで1秒間前進

特定のオブジェクトのみインポート

from モジュール名 import オブジェクト名

特定のオブジェクトのみをインポートし、コードを短縮できます。

from cyberpi import mbot2

mbot2.forward(50, 1)  # 50RPMで1秒間前進

全てのオブジェクトをインポート(非推奨)

from モジュール名 import *

モジュール内の全てのオブジェクトをインポートし、コードを短縮できます。
ただし、どの機能がどこから来ているのか分かりにくくなるため、一般的には推奨されません

from cyberpi import *

mbot2.forward(50, 1)  # 50RPMで1秒間前進

インポート方法まとめ

インポート方法メリット使用例
import cyberpi全ての機能を利用可能。cyberpi.mbot2.forward(50, 1)
from cyberpi import mbot2特定の機能のみインポートしてコードを短縮mbot2.forward(50, 1)
from cyberpi import *
全ての機能を利用可能。
コードを短縮するが非推奨
mbot2.forward(50, 1)

まとめ

今回は、CyberPiのPython APIを利用するためのインポート方法について解説しました。

用途に応じて適切なインポート方法を選び、効率的にCyberPiを活用しましょう!

タイトルとURLをコピーしました