*

C言語でEV3開発(8)-opOUTPUT_POWERコマンド

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

どもです。
今回のエントリーでは、EV3でモーターを動かします。

なお、今回のエントリーでもUbuntu/Eclipseでのクロス環境を前提として、本文を作成します。

(1). ポートのオープン/クローズ
InteligentBoxのポートのオープンです。
ここで指定するポート名には、”/dev/lms_pwm”を指定します。
実際のコードは、以下。

(2). プログラムのスタート
EV3上でモーターを動作させるためには、プログラム内で以下の「コマンド」を実行する必要があります。
・opPROGRAM_START
・opOUTPUT_START

そして、これらのコマンドを実行するためには、以下のコードを実行します。

opPROGRAM_STARTコマンド

opOUTPUT_STARTコマンド

(3). モーターを動かす
モーターを動かします。
そのためには、以下のコマンドを実行します。
・opOUTPUT_POWER

このコマンドでは、前述の2つのコマンドの様にコマンドコードを実行するだけではありません。
動作させるためは、動作するスピード/パワーを指定する必要があります。
スピード/パワーは、-100~100で指定します。単位は、”%”です。
そして、実際のコードは以下の通りです。

(4). モーターを止める
モーターを止めます。
これには、2通りの方法があります。
1.opOUTPUT_POWERコマンドで、powerに0を指定する。
2.opOUTPUT_STOPコマンドを実行する。

それぞれのコードは、以下の通りです。
1.opOUTPUT_POWERコマンドで、powerに0を指定する場合のコード:

2.opOUTPUT_STOPコマンドを実行する。

もちろんですが、これらの処理ではそれぞれ違いがあります。
opOUTPUT_POWERコマンドを使用した場合には、再度モーターを雨後層とした場合には、再度opOUTPUT_POWERコマンドを実行すればモーターの動作を開始できます。
しかし、opOUTPUT_STOPコマンドを実行した場合には、再度opOUTPUT_STARTコマンドを実行する必要があります。
また、opOUTPUT_STOPコマンドでモーターの動作を止めた場合、opOUTPUT_POWERでパワーを0にせずに再度opOUTPUT_STARTを実行すると、すぐにモーターの動作が開始されます。

このような違いがあるので、モーターを止める手順については注意が必要です。

(5). プログラムのストップ
モーターの動きを停止します。
このためには、以下の順番でコマンドを実行する必要があります。
・opOUTPUT_STOP
・opPROGRAM_STOP

opOUTPUT_STOPについては、既出なので割愛します。

opPROGRAM_STOPは、以下のコードで実行します。

(6). ポートのクローズ
これは、特筆することないです。

以上、モーターを動作させる際の、基本的な手順を示しました。
次回は、モーターを動作させる他のコマンドについてのエントリーを作成します。

関連記事

SEN0193_0114_eye_catch

土壌湿度センサーの出力値の比較:SEN0114とSEN0193

どもです。 今回も、センサーの性能、測定結果を比較してみた結果について書きます。 1.比較し

記事を読む

cygwin_my_image

Windows10/cygwinの音を消す

どもです。 最近、Windows10/cygwinで作業をする場面がありました。 このcyg

記事を読む

think_about_utest

単体テストの効率化を考える(6)-スタブの自動生成ツール

どもです。 「単体テストの効率化について考える」の6回目です。 1回目から5回目まではコチラ

記事を読む

think_about_utest

単体テストの効率化を考える(2)-スタブの戻り値

どもです。 「単体テストの効率化について考える」の2回目です。 (1回目はコチラ:単体テスト

記事を読む

ADT7310_DHT11_eye_catch

温度センサの出力値の比較

どもです。 今回は、センサーの性能、測定結果を比較してみたので、それについて書きます。 1.

記事を読む

MY_MFC_LOGO

MFCプログラミング(1):CFileまたはCStdioFileクラスを使用してファイル出力

どもです。 突然ですが、仕事でMFCを使用することになりました。 MFCはこれまで触ったことがな

記事を読む

eclipse_4.3_kepler

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

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

記事を読む

RasPi_Qt

Rasbianの新しいバージョンが出たので、クロス環境を更新してみた。(その後)

どもです。 前回、Linux/RaspberryPiでのQt(QtCreator)のクロス開発

記事を読む

RasPi_Qt

QtでRaspberryPi/GUI開発(11)-SPI通信をしてみた(その3)

どもです。 えー。 「Qtで…」とか書いておきながら、今回もやっぱりQtは出てきません。 そろ

記事を読む

toppers

C言語でEV3開発(22)-ロギング機能

どもです。 前回は、モーターの出力を制御する方法について記載しました。その際に、モータ/車体が期待

記事を読む

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

think_about_utest
VisualStudioで実行した単体テストの結果の出力(3)-テスト実行からレポート生成までをツールで自動化

どもです。 前々回、前回と、VisualStudio/C#での単

think_about_utest
VisualStudioで実行した単体テストの結果の出力(2)-出力ファイルの読める化

どもです。 前回の続きです。 前回は、VisualStud

think_about_utest
VisualStudioで実行した単体テストの結果の出力(1)-ファイルへの出力

どもです。 最近、VisualStudio/C#でよく開発してい

think_about_utest
単体テストの効率化を考える(6)-スタブの自動生成ツール

どもです。 「単体テストの効率化について考える」の6回目です。

think_about_utest
単体テストの効率化を考える(5)-スタブの自動生成への入力

どもです。 「単体テストの効率化について考える」の5回目です。

→もっと見る

PAGE TOP ↑