対応ロボット:Qmcum(QX-001R3J)

クムクムロボットを動かすサーボモーターをコントロールする関数を使って、足を一歩後ろへ下げてみましょう。クムクムロボットは前に歩いていけるだけでなくサーボモータを使用して後ろ方向にも歩く事が出来ます。右足を上にあげ、左足を使って右足を後ろに持っていきます。最後に右足を下に下ろすと後ろへ一歩足を下げる動作の完成です。

連続で両足を動かして後ろ方向に歩かせてみましょう。

ソースコード


import qumcum
 
qumcum.motor_power_on(500) # 動作時間500msecでモータ電源をONにします
qumcum.motor_pos_all(0, 90, 90, 90, 90, 90, 180) # まっすぐ起立したときの位置へ動くよう指定します
qumcum.motor_start(True) # モータを動かします
qumcum.wait(1)

for i in range(5):
    qumcum.foot_up(1) # 右足を上に上げる
    qumcum.motor_start(True) # モータを動かします
    qumcum.wait(1)
    qumcum.foot_forward(2) # 左足を前に出す
    qumcum.foot_up(2) # 左足を上に上げる
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_down() # 足をおろす
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_up(2) # 左足を上に上げる
    qumcum.motor_start(True) # モータを動かします
    qumcum.wait(1)
    qumcum.foot_forward(1) # 右足を前に出す
    qumcum.foot_up(1) # 右足を上に上げる
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_down() # 足をおろす
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)

関数

qumcum.foot_up( )

qumcum.foot_down( )

qumcum.foot_forward( )

角度指定だけではモータはきません

モータは7個あるので、ひとつだけかしたい場合同時何個かしたい場合があります。そのため、モータをかす関数は、角度指定する関数と、実際にモータを回転させるための関数がかれています。

硬いモータを手で無理やり回さない

モータ電源をONにする関数を実行すると、モータには電源が入り、モータは手で無理やり回すことはできなくなります。
クムクムの顔や腕を、少し回そうとしてみたとき、硬くて動かない時はモータに電力が送られて固まっているときなので、無理やり手で回さないでください。

ちょっとれてらないはモータに電源っています。
一度モータの電源をプログラムでONにするとロボットのスイッチをるまでモータはロックされますのでけてください。

クムクムのモーター

クムクムの顔や手足を自由に動かすために、サーボモーターというモーターが使われています。
扇風機
やプラモデルなどについているモーターは、電気を流すとぐるぐる回転をして、電気を止めると回転が止まります。しかし、好きな数だけ回転をさせたり、好きな位置で回転を止めることができません。
サーボモーターは、モーターと沢山ののギアーなどを使って作られた特殊なモーターで、回る角度や速度を好きなように決めることができます。
クムクムに使っているサーボモーターは、ラジコンなどに使っているものと同じものを利用しており、回転角度は0~180度(半回転)の間好きな位置で止めることができます。

2つのクムクムPythonプログラミング

クムクムによるPythonプログラミング方法には、①簡易エディターでまずはPythonを理解する ②APIとVSCodeなどを使ってインターネットサービスなどを利用したPythonプログラミングを行う 2つの方法があります。
クムクムサイトでは、前者①②を主に使用しロボットをPCに用意されたPythonの命令をBluetoothで順序良く送り出すことでコントロールすることを学びます。
ここではまず①の方法でPythonの基礎をしっかり身に着けることを目的とします。

簡易エディタープログラミングについて

クムクムサイトに用意されているWEBエディターは、ご自分のPCにPython環境を準備する必要がなく、簡単にPythonを使ってクムクムを動かすことのできる統合環境です。
WEBブラウザーだけでクムクムとも簡単に通信ができるため非常に便利なのですが、残念ながらPythonが得意とするインターネットサービスの利用ができません。
ですので、例えば、「お天気予報サイトへ行きお天気情報を取得してクムクムと連携させる」といったことはこの環境では作れません。
あくまで、Pythonの文法とプログラミング手法を理解する簡易ツールとしてご理解ください。
もし、インターネット接続プログラムを作りたい場合には弊社Youtubeサイト、VSCodeによるクムクムPython環境の準備 をご覧の上、VSCodeとPythonの環境をPCにセットいただきプログラミングを行います。

Pythonプログラミングの方法

詳細は 「Pythonではじめよう」をご覧ください。
下記は、当マニュアルから要点を抜粋します。

①WEBエディターを起動します。

②エディタとクムクムを接続します

※PCにはBluetooth機能が必要です
声クムクム(QX-001R3J)はWEBから接続できるようにファームが書き換えられていなければ使えません。

③クムクムとブラウザーの接続確認を行います

※ブラウザーエディタ右上橋の接続ボタンをクリックし、クムクムがちゃんと動作するか?確認します。
※動きがおかしい場合や途中で止まる場合など、原因は電池充電不足です。

④プログラムを書いて実行します

エディター上にプログラムを書き、RUNボタンをクリックしてクムクムへプログラムを送信して動かします。

必ず必要なお作法

Pythonでは、標準に用意されている文法以外を使用する場合、import という命令を使って使いたいライブラリーを読み込む記述をします。
インターネットに接続していろいろな処理をするプログラムを作りたいときや、特殊な装置を動かしたい場合など必要な時に必要な機能を読み込んで使います。
クムクムをコントロールするコマンドも、標準のPythonにはない特別な命令なので、プログラムの最初でimport qumcumと記述しクムクムのライブラリーを読み込みます。

※注意 クムクムエディターでimportできるライブラリー
クムクムエディターはPythonの基礎をクムクムを使って学ぶためだけに用意されているので、マニュアルの2ページに記載されたライブラリーしかimportすることができません。
インターネットやAIなどのライブラリーはWEB上のクムクムプログラムからはセキュリティー上使用することができません

Pythonについて

◆誰がいつ創ったの?

Python(パイソン)はオランダ出身・アメリカ在住プログラマーであるグイド・ヴァン・ロッサムによって創り出されたプログラミング言語です。
1991年にはPythonの設計哲学をリリースし、2000年にはPython2.0を2008年にはPython3.0をリリースし、2021年6月にはC言語についで2位のランキングを獲得している、今最も注目を浴びているプログラミング言語です。

◆なんで今そんなにPythonなの?

Pythonがこんなに人気のあるのは「学びやすく便利な上将来性がある」ことが大きな理由で、具体的には以下5つの点が人気の理由として挙げられます。

◆Pythonの特徴

①簡単でわかりやすい
Pythonは、プログラムの記述ルールが明確に定義されています。C言語のように勝手気ままにプログラマーの癖で書くことは許されません。ですから、学習もしやすく、また誰が作っても読みやすく理解しやすくメンテナンス性にも優れていて、改造や修正もやりやすいプログラミング言語です。

②どんなパソコンでも動く
専門的に言うと、プラットフォームを限定しないといいます。
つまり、WindowsやMac、Linuxなど同じプログラムがそのまま他のパソコンで動きます。Pythonは、C言語のように機械語に翻訳されて動く言語ではないので、Windows用やMac用などそれぞれ専用にプログラムを作る必要がありません。

③コントロールの手段が豊富
多くのプログラマーが、いろいろな処理やいろいろな装置に使えるライブラリーをどんどん開発し、ネット上に公開しています。
自由に使える優秀なライブラリーがたくさんあります。しかも、Pythonのライブラリーは無料のものが多いため、手軽にいろいろなプログラムを作っていくことが可能です。

④動かしながら作れる
Pythonはインタプリタという形式で動くため、プログラムは作るとすぐに実行して瞬時に試すことができます。
C言語のように機械語に変換してから動くまで待つといったわずらわしさがありません。作ってすぐに結果を見ることができるので、気軽にトライ&エラーを繰り返すことができ、初心者の習得にも向きます。

⑤これからの時代に必要な処理が簡単にできる
Pythonにはインターネットを利用したライブラリーや、AI・ビッグデータの処理や統計分析などこれからの時代に必要な処理を実現できるライブラリーがたくさんあります。
大量のデーターベースを利用し、AIで判定して装置を動かしたりすることはこれからの時代には絶対に必要な処理でこの先、間違えなくPythonでのプログラミングは必要で伸びていく技術です。

◆なぜクムクムとPythonのなのか

これまでの時代は、「ハードはハード」「ソフトはソフト」「データはデータ」と切り分けられており、技術者の知識も腕もそれぞれ切り分けられていました。
しかしこれからの時代における装置(ドローンや自動運転の車、ロケット、空飛ぶ車、そして外科手術ロボットなど…)は自分自身以外とどんどん通信を行い、日々増なく「総合的に理解し利用できる技術」です。
ふえ続ける新たな知識データベースを利用して、どんどん新しい動きができるように変化成長をする装置になります。
これらの技術に対応できるエンジニア・プログラマーに求められるのは、「切り分けられた技術」ではクムクムでは、ロボットやPythonそしてインターネットサービスにおけるデータなをどを総合的に学ぶことでこれから必要な「先端IT技術」をマスターすることができます。

文部科学省の科学技術・学術政策研究所は、2035年には「量子化コンピューター」の実用化と「空飛ぶ車」という未来の科学技術の予測をまとめました。2019年4月23日に経済産業省が発表した「IT人材需給に関する調査」では2030年に「従来型IT人材」が10万人余ると発表していますが、 4月24日同報告書を紹介した日本経済新聞の記事には「先端人材55万人不足 経産省試算 30年、AIやIoT」という見出しを付けています。10万人余る「従来型IT人材」とは受託開発や保守運用を担うエンジニアで、 55万人不足する「先端IT人材」とは「AIやビッグデータ、IoT等、第4次産業革命に対応した新しいビジネスの担い手として、付加価値の創出や革新的な効率化等により生産性向上等に寄与できるIT人材」と定義しています。

◆クムクムロボット公式サイトのマニュアル
https://qumcum.com/wp-content/uploads/2022/08/start_python.pdf

◆Scratch(スクラッチ)で動く3Dロボット「3D-WEBクムクム」β版
https://personal.qumcum.com/home3d/robo-real/

◆クムクムロボット(アマゾンQumcumストア)
https://www.amazon.co.jp/stores/Qumcum/page/FFCFA57A-F592-49A0-9F23-3D90514E5E61?ref_=ast_bln

◆Youtubeにはたくさんの動画を載せています
https://www.youtube.com/@qumcum/

対応ロボット:Qmcum(QX-001R3J)

クムクムロボットを動かすサーボモーターをコントロールする関数を使って、足を一歩後ろへ下げてみましょう。クムクムロボットは前に歩いていけるだけでなくサーボモータを使用して後ろ方向にも歩く事が出来ます。右足を上にあげ、左足を使って右足を後ろに持っていきます。最後に右足を下に下ろすと後ろへ一歩足を下げる動作の完成です。

連続で両足を動かして後ろ方向に歩かせてみましょう。

ソースコード


import qumcum
 
qumcum.motor_power_on(500) # 動作時間500msecでモータ電源をONにします
qumcum.motor_pos_all(0, 90, 90, 90, 90, 90, 180) # まっすぐ起立したときの位置へ動くよう指定します
qumcum.motor_start(True) # モータを動かします
qumcum.wait(1)

for i in range(5):
    qumcum.foot_up(1) # 右足を上に上げる
    qumcum.motor_start(True) # モータを動かします
    qumcum.wait(1)
    qumcum.foot_forward(2) # 左足を前に出す
    qumcum.foot_up(2) # 左足を上に上げる
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_down() # 足をおろす
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_up(2) # 左足を上に上げる
    qumcum.motor_start(True) # モータを動かします
    qumcum.wait(1)
    qumcum.foot_forward(1) # 右足を前に出す
    qumcum.foot_up(1) # 右足を上に上げる
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)
    qumcum.foot_down() # 足をおろす
    qumcum.motor_start() # モータを動かします
    qumcum.wait(1)

関数

qumcum.foot_up( )

qumcum.foot_down( )

qumcum.foot_forward( )

角度指定だけではモータはきません

モータは7個あるので、ひとつだけかしたい場合同時何個かしたい場合があります。そのため、モータをかす関数は、角度指定する関数と、実際にモータを回転させるための関数がかれています。

硬いモータを手で無理やり回さない

モータ電源をONにする関数を実行すると、モータには電源が入り、モータは手で無理やり回すことはできなくなります。
クムクムの顔や腕を、少し回そうとしてみたとき、硬くて動かない時はモータに電力が送られて固まっているときなので、無理やり手で回さないでください。

ちょっとれてらないはモータに電源っています。
一度モータの電源をプログラムでONにするとロボットのスイッチをるまでモータはロックされますのでけてください。

クムクムのモーター

クムクムの顔や手足を自由に動かすために、サーボモーターというモーターが使われています。
扇風機
やプラモデルなどについているモーターは、電気を流すとぐるぐる回転をして、電気を止めると回転が止まります。しかし、好きな数だけ回転をさせたり、好きな位置で回転を止めることができません。
サーボモーターは、モーターと沢山ののギアーなどを使って作られた特殊なモーターで、回る角度や速度を好きなように決めることができます。
クムクムに使っているサーボモーターは、ラジコンなどに使っているものと同じものを利用しており、回転角度は0~180度(半回転)の間好きな位置で止めることができます。

2つのクムクムPythonプログラミング

クムクムによるPythonプログラミング方法には、①簡易エディターでまずはPythonを理解する ②APIとVSCodeなどを使ってインターネットサービスなどを利用したPythonプログラミングを行う 2つの方法があります。
クムクムサイトでは、前者①②を主に使用しロボットをPCに用意されたPythonの命令をBluetoothで順序良く送り出すことでコントロールすることを学びます。
ここではまず①の方法でPythonの基礎をしっかり身に着けることを目的とします。

簡易エディタープログラミングについて

クムクムサイトに用意されているWEBエディターは、ご自分のPCにPython環境を準備する必要がなく、簡単にPythonを使ってクムクムを動かすことのできる統合環境です。
WEBブラウザーだけでクムクムとも簡単に通信ができるため非常に便利なのですが、残念ながらPythonが得意とするインターネットサービスの利用ができません。
ですので、例えば、「お天気予報サイトへ行きお天気情報を取得してクムクムと連携させる」といったことはこの環境では作れません。
あくまで、Pythonの文法とプログラミング手法を理解する簡易ツールとしてご理解ください。
もし、インターネット接続プログラムを作りたい場合には弊社Youtubeサイト、VSCodeによるクムクムPython環境の準備 をご覧の上、VSCodeとPythonの環境をPCにセットいただきプログラミングを行います。

Pythonプログラミングの方法

詳細は 「Pythonではじめよう」をご覧ください。
下記は、当マニュアルから要点を抜粋します。

①WEBエディターを起動します。

②エディタとクムクムを接続します

※PCにはBluetooth機能が必要です
声クムクム(QX-001R3J)はWEBから接続できるようにファームが書き換えられていなければ使えません。

③クムクムとブラウザーの接続確認を行います

※ブラウザーエディタ右上橋の接続ボタンをクリックし、クムクムがちゃんと動作するか?確認します。
※動きがおかしい場合や途中で止まる場合など、原因は電池充電不足です。

④プログラムを書いて実行します

エディター上にプログラムを書き、RUNボタンをクリックしてクムクムへプログラムを送信して動かします。

必ず必要なお作法

Pythonでは、標準に用意されている文法以外を使用する場合、import という命令を使って使いたいライブラリーを読み込む記述をします。
インターネットに接続していろいろな処理をするプログラムを作りたいときや、特殊な装置を動かしたい場合など必要な時に必要な機能を読み込んで使います。
クムクムをコントロールするコマンドも、標準のPythonにはない特別な命令なので、プログラムの最初でimport qumcumと記述しクムクムのライブラリーを読み込みます。

※注意 クムクムエディターでimportできるライブラリー
クムクムエディターはPythonの基礎をクムクムを使って学ぶためだけに用意されているので、マニュアルの2ページに記載されたライブラリーしかimportすることができません。
インターネットやAIなどのライブラリーはWEB上のクムクムプログラムからはセキュリティー上使用することができません

Pythonについて

◆誰がいつ創ったの?

Python(パイソン)はオランダ出身・アメリカ在住プログラマーであるグイド・ヴァン・ロッサムによって創り出されたプログラミング言語です。
1991年にはPythonの設計哲学をリリースし、2000年にはPython2.0を2008年にはPython3.0をリリースし、2021年6月にはC言語についで2位のランキングを獲得している、今最も注目を浴びているプログラミング言語です。

◆なんで今そんなにPythonなの?

Pythonがこんなに人気のあるのは「学びやすく便利な上将来性がある」ことが大きな理由で、具体的には以下5つの点が人気の理由として挙げられます。

◆Pythonの特徴

①簡単でわかりやすい
Pythonは、プログラムの記述ルールが明確に定義されています。C言語のように勝手気ままにプログラマーの癖で書くことは許されません。ですから、学習もしやすく、また誰が作っても読みやすく理解しやすくメンテナンス性にも優れていて、改造や修正もやりやすいプログラミング言語です。

②どんなパソコンでも動く
専門的に言うと、プラットフォームを限定しないといいます。
つまり、WindowsやMac、Linuxなど同じプログラムがそのまま他のパソコンで動きます。Pythonは、C言語のように機械語に翻訳されて動く言語ではないので、Windows用やMac用などそれぞれ専用にプログラムを作る必要がありません。

③コントロールの手段が豊富
多くのプログラマーが、いろいろな処理やいろいろな装置に使えるライブラリーをどんどん開発し、ネット上に公開しています。
自由に使える優秀なライブラリーがたくさんあります。しかも、Pythonのライブラリーは無料のものが多いため、手軽にいろいろなプログラムを作っていくことが可能です。

④動かしながら作れる
Pythonはインタプリタという形式で動くため、プログラムは作るとすぐに実行して瞬時に試すことができます。
C言語のように機械語に変換してから動くまで待つといったわずらわしさがありません。作ってすぐに結果を見ることができるので、気軽にトライ&エラーを繰り返すことができ、初心者の習得にも向きます。

⑤これからの時代に必要な処理が簡単にできる
Pythonにはインターネットを利用したライブラリーや、AI・ビッグデータの処理や統計分析などこれからの時代に必要な処理を実現できるライブラリーがたくさんあります。
大量のデーターベースを利用し、AIで判定して装置を動かしたりすることはこれからの時代には絶対に必要な処理でこの先、間違えなくPythonでのプログラミングは必要で伸びていく技術です。

◆なぜクムクムとPythonのなのか

これまでの時代は、「ハードはハード」「ソフトはソフト」「データはデータ」と切り分けられており、技術者の知識も腕もそれぞれ切り分けられていました。
しかしこれからの時代における装置(ドローンや自動運転の車、ロケット、空飛ぶ車、そして外科手術ロボットなど…)は自分自身以外とどんどん通信を行い、日々増なく「総合的に理解し利用できる技術」です。
ふえ続ける新たな知識データベースを利用して、どんどん新しい動きができるように変化成長をする装置になります。
これらの技術に対応できるエンジニア・プログラマーに求められるのは、「切り分けられた技術」ではクムクムでは、ロボットやPythonそしてインターネットサービスにおけるデータなをどを総合的に学ぶことでこれから必要な「先端IT技術」をマスターすることができます。

文部科学省の科学技術・学術政策研究所は、2035年には「量子化コンピューター」の実用化と「空飛ぶ車」という未来の科学技術の予測をまとめました。2019年4月23日に経済産業省が発表した「IT人材需給に関する調査」では2030年に「従来型IT人材」が10万人余ると発表していますが、 4月24日同報告書を紹介した日本経済新聞の記事には「先端人材55万人不足 経産省試算 30年、AIやIoT」という見出しを付けています。10万人余る「従来型IT人材」とは受託開発や保守運用を担うエンジニアで、 55万人不足する「先端IT人材」とは「AIやビッグデータ、IoT等、第4次産業革命に対応した新しいビジネスの担い手として、付加価値の創出や革新的な効率化等により生産性向上等に寄与できるIT人材」と定義しています。

◆クムクムロボット公式サイトのマニュアル
https://qumcum.com/wp-content/uploads/2022/08/start_python.pdf

◆Scratch(スクラッチ)で動く3Dロボット「3D-WEBクムクム」β版
https://personal.qumcum.com/home3d/robo-real/

◆クムクムロボット(アマゾンQumcumストア)
https://www.amazon.co.jp/stores/Qumcum/page/FFCFA57A-F592-49A0-9F23-3D90514E5E61?ref_=ast_bln

◆Youtubeにはたくさんの動画を載せています
https://www.youtube.com/@qumcum/