*

C言語でEV3開発(9)-opOUTPUT_SPEEDコマンド

公開日: : 最終更新日:2015/04/30 マインドストーム/EV3, 開発

どもです。
今回のエントリーでは、前回に引き続きEV3のモーターを動かしていきます。
ただし、単純にモーターを動かすのではなく、EV3のファームウェアで用意されている「コマンド」を使用して動かしてみます。

(1). コマンドとは?
「とは?」と書いたものの、説明するまでもなく、そのまま「命令」です。
具体的には、前回のエントリで使用した「opPROGRAM_START」や「opOUTPUT_START」が、それにあたります。
EV3でモーターを動かす際には、この「コマンド」を使用します。
これまた前回のエントリーで紹介した「opOUTPUT_POWER」が、具体的な「モーターを動かすためのコマンド」になります。
EV3では、これらのコマンドが様々用意されております。

(2). opOUTPUT_SPEEDコマンド
今回紹介するコマンドです。
前回のエントリーで使用していたコマンドです。
コマンドのフォーマットは、以下の通りです。

バイトインデックス内容
1コマンドコードopOUTPUT_SPEED(0xA5)
2チャンネル-
3スピード-100~100(%)

なので、実際にコマンドデータを実行する場合には、以下のようにデータを設定します。

あとは、これをwrite関数に書き込めばモーターが動作します。
(ただし、あらかじめopPROGRAM_START/opOUTPUT_STARTコマンドを実行しておく必要があります。)
なお、powerにマイナスの値を設定した場合には、回転方向が逆になります。

(3). 動かしてみた
というわけで、opOUTPUT_SPEEDコマンドを使用してモーターを動作させるためのサンプルプログラムを載せます。

上記のコードですが、ほとんどの部分は前回のエントリーから変更はありません。
変更箇所は、コマンドの実行手順です。

L.106~L.107です。
前回は、実行順序は逆でした。つまり、「opOUTPUT_START」→「opOUTPUT_SPEED」の順番で実行していました。
しかし、今回は「opOUTPUT_SPEED」→「opOUTPUT_START」の順番で実行しています。
現在、原因は不明ですが、この順番で実行しないとモーターが動作しません。

というわけで、実際に動かしてみた場合の動画です。

さて。
今回は、モーターを動かす一番簡単な(と、私が勝手に思っている)コマンドについて紹介しました。
次回は、同じようにモーターを動かすためのコマンドを引き続き紹介していきます。
では。

関連記事

raspberry-pi

RaspberryPiで物体検出(2)-白線検出への挑戦(2):輪郭検出による白線検出(実機編)

どもです。 今回は、前回に引き続きOpenCvを用いて道路の白線検出について、です。 1.今

記事を読む

python

VisualStudioCommunityでのPython開発環境構築

どもです。 最近、VisualStudioでのPython開発を始めました。 その際の環境構築に

記事を読む

eclipse_4.3_kepler

elicpse/CDTでのgdbでのソースを追従したデバッグができない問題

どもです。 今回のエントリーは、Eclipse上でgdbを利用したデバッグ中に発生する問題について

記事を読む

no image

C言語でEV3開発(12)-opOUTPUT_TIME_POWERコマンド

どもです。 今回のエントリーでは、これまた前回に引き続き、モーターを動かすためのコマンドについて書

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(6):pigpioを使用したチャタリング対策

どもです。 前回のエントリーで、pigpioを使用したボタンを使用したLEDの点灯/消灯について書

記事を読む

OpenCvLogo

RaspberryPiで物体検出(1)-白線検出への挑戦(1):輪郭検出による白線検出

どもです。 今回は、OpenCvを用いて道路の白線検出について、です。 1.今回の環境 O

記事を読む

no image

C言語でEV3開発(15)-TOPPERS/HRP2 EV3 で PID制御

どもです。 今回のエントリーは、コレまでのエントリーから内容を変えて、モーターの動作の制御をします

記事を読む

toppers

C言語でEV3開発(25)-Q_Learningを実装してみた…が!?

どもです。 今回の内容は、「失敗しました」という内容です。 最近、流行になっている深層学習/

記事を読む

toppers

C言語でEV3開発(24)-APIの実行時間を測定してみた。

どもです。 今回、以前から気になっていた、開発環境/プラットフォームであるTOPPERS HRP2

記事を読む

python

Ev3開発サポートツール(4)-Pythonによるグラフ表示

どもです。 前回のエントリーで、VisualStudioCommunityでのPythonの開発環

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

GitHub
C/C++のスタブを自動生成するツールを公開しました

(テーマ) C/C++のスタブを自動生成するツールを公開しました

Arduino_Logo
フォトレジスタを使ってみた-Arduinoで光検出

どもです。 今回は、タイトル通り「フォトレジスタの使い方」です。

no image
PC自作2019 – Windows10への移行

どもです。 突然ですが、PCを交換しました。 1. 何があ

RasPi_Qt
QtでRaspberryPi/GUI開発(12)-gpioの状態をGUIに反映する

どもです。 今回は、gpioピンの状態(HIGH/LOW)の変化を画

raspberry-pi
RaspberryPi起動時にpigpiodがスタートしないようにする

どもです。 これまでpigpioを使用してRaspberryPiから

→もっと見る

PAGE TOP ↑