*

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

RaspberryPi3を購入しました

どもです。 突然ですが、「Raspberry Pi3 model B」を購入しました。 今回のエ

記事を読む

no image

C言語でEV3開発(10)-opOUTPUT_CLEAR_COUNTコマンド

どもです。 前回のエントリーのラストで、「モーターを動かすコマンド」と書きましたが、今回紹介するコ

記事を読む

google_test_top

C言語でEV3開発(5)

どもです。 今回のエントリーは、前回のエントリーでちくっと触れた、「単体テスト」について、です。

記事を読む

google_test

C言語でEV3開発(6)

どもです。 今回のエントリーは、前回のエントリーの続き、google testでの単体テスト環境に

記事を読む

no image

Windows-QtCreatorでのデバッグ

どもです。 更新の間隔が空いてしまいました。 久しぶりの更新です。 最近、Qtを触り始めま

記事を読む

no image

C言語でEV3開発(7)

どもです。 今回のエントリーでは、いよいよEV3を動かしていきます。 新しい環境に対して、最もよ

記事を読む

toppers

C言語でEV3開発(18)-モードの遷移の設計-コマンド通信処理の準備

 どもです。  今回は、前回紹介したEv3とBluetoothで通信する機能を

記事を読む

toppers

C言語でEV3開発(16)-TOPPERS/HRP2 EV3 で Bluetooth割込み

どもです。 今回は、EV3 の環境をTOPPERS/HRP2 EV3RT で作成したアプリをPC上

記事を読む

eclipse_oxygen

Eclipse/CrossCompile環境でプロジェクトをクリーンできない

どもです。 今回は、Eclipseでクロスコンパイル環境を作成した場合、を実行すると「指定されたフ

記事を読む

OpenCvLogo

OpenCvによる画像サイズ変更

どもです。 最近、カメラの動画をOpenCvで加工する、ということに挑戦し始めました。 しか

記事を読む

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="">

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

どもです。 前回のエントリーで、pigpioを使用したボタンを使用し

RasPi_Qt
QtでRaspberryPi/GUI開発(5):pigpioを使ってみた

どもです。 RaspberryPiを購入して、LEDも手に入れたので

RasPi_Qt
QtでRaspberryPi/GUI開発(4):イベントハンドラの設定

どもです。 前回のエントリーで、「タッチスクリーンを買った」と書きま

raspberry-pi
RaspberryPi3対応のタッチスクリーンを買いました

どもです。 ついに、念願のRaspberryPi3対応のタッチスクリ

no image
QtでRaspberryPi/GUI開発(3):ためしに時計を作ってみた(其の参)-StyleSheetの適用

どもです。 前回のエントリーでは、グループ化されたボタンに対するイベ

→もっと見る

PAGE TOP ↑