FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ワイルドさおりんトラックス 012


サーボのトルクがヘボくて動作音が苦しそうですが、ちゃんとゆっくり動くよ!


#include <VarSpeedServo.h>  //動作速度の調整ができるサーボライブラリの読み込み
//#include <Servo.h>  //サーボライブラリの読み込み
int SERVO_SOCKET = 10;
VarSpeedServo servo;

#define NEUTRAL_VAL 1500 // NEUTRAL not use
#define MAX_VAL 1925 // High MAX not use
#define MIN_VAL 1075 // Low MIN not use
#define OFF_VAL // if get value under this, receiver or transmitter is off
#define HIGH_VAL 1550 // UP SIDE
#define LOW_VAL 1450 // DOWN SIDE

#define LMP_ON 255 //
#define LMP_OFF 0 //

#define OFF_DLAY 900 //
#define ON_DLAY 100 //

#define INPUT_PIN 3 // Input Pin Numver
#define OUTPUT_PIN 5 // Output Pin Numver
#define OUTPUT_PIN 6 // Output Pin Numver


void setup() {
Serial.begin(9600); // 9600bpsでポートを開く
servo.attach( 10 ); //Arduinoからサーボへのoutput用信号線を10番ピンに
pinMode( 9, INPUT );  //受信機ch5からの信号線を9番ピンに
pinMode( 3, INPUT );  //受信機ch6からの信号線を3番ピンに
pinMode( 5, OUTPUT ); //ブレーキランプ
pinMode( 6, OUTPUT ); //バックランプ
}


void loop() {
int val = 0;
unsigned int d_val; //LED用ch6(ch2とのミキシング)からのパルス幅
unsigned int s_val; //道板用ch5からのパルス幅
d_val=pulseIn( 3, HIGH ); //Get pulse width
s_val=pulseIn( 9, HIGH ); //
s_val = map( s_val, 1075, 1925, 0, 180);

if( 1075 <= s_val <=1925 ){
servo.write( s_val, 5 ); //低速1-高速255
//delay(10);
}


if( d_val > HIGH_VAL || d_val < LOW_VAL ){ //Pluse width is wide
analogWrite( 5, LMP_OFF ); //ブレーキランプOFF
}
else { // Stick is newtral range
analogWrite( 5, LMP_ON ); //ブレーキランプON
}

if( d_val > HIGH_VAL + 50 ){ //Pluse width is wide
analogWrite( 6, LMP_ON ); //バックランプON
}
else { // Stick is newtral range
analogWrite( 6, LMP_OFF ); //バックランプOFF
}





}

よく使われる Servo.h ではなく、
動作速度を簡単に調整できる VarSpeedServo.h と言うライブラリを使いました。
最初は writeMicroseconds( s_val, 10 ) とか書いて、
パルス幅でなめらかに動かしたかったのですが、なぜかエラーが出ます。
そこで、map関数でわざわざパルス幅を角度に置き換えて動かしています。
非効率かつ、動きがぎこちなくなっていささか不満です。
なんとかパルス幅指定で動かす方法を探し中です。

DSC_2578.jpg
本には、Arduinoから出力する電流は20mAぐらいにしましょう、と書かれています。
んで、マイクロサーボが動作時に流れる電流が約1.5A。

bLED_bkLED_slowServo.jpg
ですから、受信機からArduinoへは信号線だけ繋いで、
+-線は直接サーボに繋いでいます。



スポンサーサイト

テーマ : ラジコン
ジャンル : 趣味・実用

コメントの投稿

非公開コメント

No title

おお〜、新しい課題解決ですか!お見事〜!

No title

>ねこ太さん

どうもこんにちはです。(´∀`)ノ
コメントありがとうございます。

今回はライブラリに助けられました。
Servo.hライブラリをベースに自力でスピード調節されてる方もいましたが、
コードを見ても思った以上に複雑で、イマイチ理解できませんでした。
便利なライブラリを使ってさっさと先に進むか、
勉強のためあえて試行錯誤するか、悩ましいところです。


航続距離(cm)
外部サイト
最新記事
最新コメント
月別アーカイブ
カテゴリ
リンク
ランキング
にほんブログ村 その他趣味ブログ ラジコンヘリ・飛行機へ にほんブログ村 その他趣味ブログ ラジコン戦車へ
アフィリエイト
↓お買い物すると管理人が儲かります。(^q^)
素敵商品
こちらはアマゾンの審査に落ちたので、
買い物をしても管理人は儲かりません。
管理人のお気に入り商品を大紹介しています。
プロフィール

カゼハカセ

Author:カゼハカセ
・ラジコン飛行機で遊んでいます
・好きな35:F-35
・好きなMk.II:メルカバ Mk.II
・好きなランス・ヘンリクセン:フランク・ブラック
・好きなロボ:バトルフィーバーロボ
・好きなザブングルタイプ:ブラッカリィ
・好きなビラン:ビランビー
・好きなファム:トゥランファム
・好きなソルティック:マッケレル
・好きなビートル:マグナビートル、ダイビングビートル
・好きなデュナメス:ガンダムデュナメス
・好きなガンダム:ヘビーガンダム
・好きなザク:高速機動型ザク
・好きな月下:四聖剣機
・好きなレイバー:グリフォン、AVR-0
・好きなイングラム:2号機、AVS-98
・好きなサブマシンガン:MAC-10
・好きなマシンガン:MG3
・好きなショットガン:AA12
・好きなハンドガン:M93R AUTO9
・好きなガン:ガンナック(FC)
・好きなフォックス:スターフォックス(SFC)
・好きなトラック:ワイルドトラックス(SFC)
・好きなマリオ:スーパーマリオランド(GB)
・好きなバンガイオー:爆裂無敵バンガイオー(N64)
・好きなアレスタ:武者アレスタ(MD)
・好きなソニック:ソニックザヘッジホッグ(MS)
・好きなタクシー:クレイジータクシー(DC)
・好きなUSA:デイトナUSA(AC)
・好きな忍者:忍者くん~阿修羅の章~(AC)
・好きなダンディ:リモートコントロールダンディ(PS)
・好きなポヤッチオ:どきどきポヤッチオ(PS)

好きなアニメ
THE ビッグ・オー プラネテス 侵略!イカ娘 人類は衰退しました じょしらく キルミーベイベー あいまいみー 私がモテないのはどう考えてもお前らが悪い! TVアニメ「ミス・モノクローム -The Animation-」2013年10月よりTVアニメ放送中! TVアニメ「てーきゅう」 うーさーのその日暮らし ニンジャスレイヤー フロム アニメイシヨン プリパラ 干物妹!うまるちゃんR 不思議なソメラちゃん 弱酸性ミリオンアーサー ハッカドール THE・あにめ~しょん くまみこ ばくおん 鬼斬 魔法少女育成計画 けものフレンズ 宇宙よりも遠い場所 ゆるキャン△
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。