RCサーボコントローラ

RCサーボモータについてのエントリでは、RCサーボの個体差や機械的制約を吸収できるように、コントローラで調節できるようにするとよいということを書きました。
一例として、以前人力飛行機の操縦システムとして採用していた物を紹介します。実際に使っていたものはPICマイコンを用いたデジタル制御なのですが、今回はOPアンプと555をもちいたアナログ回路としてみました。


以下が回路図です。


001_20081103013228.png


アルゴリズムを式で表すと

[サーボ指示値]=[ゲイン]×([ハンドル]-[ハンドル初期値])+[サーボ初期位置]

となります。
これらの各パラメータと周波数を、それぞれ対応する半固定抵抗つかって調整することができます。

次にLTspiceでのシミュレーションを示します。抵抗のパラメータが少し異なってますが・・・(現実はシミュレーション通りには行かないこともあるということで勘弁してください。)


002_20081103013312.png

003_20081103013335.png



ハンドルのボリュームを変化させたときの各ノードの挙動を見るため、ハンドルを最小から最大まで2.5kΩステップでスイープさせたTran解析を行いました。グラフ中の黄緑で表されたパルス幅が変化しているのが読み取れます。付録としてこのシミュレーションのスケマティックを載せておきました。

今回は、面白がってアナログ回路で組んで見ましたが、半固定抵抗を多用していることもあり、信頼性においてマイコンを使ったデジタル制御のものよりも劣ります。というか普通はマイコンで作りますよね。

○付録
実際に作成した回路の外観です。


004.jpg

005.jpg


本エントリで使用した、LTspiceシミュレーションのスケマティックを載せておきます。

controller.asc
Version 4
SHEET 1 880 900
WIRE -640 -320 -736 -320
WIRE 336 -320 336 -352
WIRE -848 -304 -928 -304
WIRE -800 -304 -848 -304
WIRE -32 -304 -96 -304
WIRE 256 -304 192 -304
WIRE -96 -272 -96 -304
WIRE -32 -240 -96 -240
WIRE 336 -240 192 -240
WIRE -848 -176 -848 -304
WIRE -784 -176 -848 -176
WIRE -640 -176 -640 -320
WIRE -640 -176 -704 -176
WIRE -608 -176 -640 -176
WIRE -480 -176 -528 -176
WIRE -432 -176 -480 -176
WIRE -304 -176 -352 -176
WIRE -32 -176 -128 -176
WIRE 272 -176 192 -176
WIRE 336 -176 336 -240
WIRE 336 -176 272 -176
WIRE 336 -160 336 -176
WIRE -928 -144 -928 -304
WIRE -32 -112 -128 -112
WIRE 272 -112 192 -112
WIRE 336 -48 336 -96
WIRE -480 -32 -480 -176
WIRE -432 -32 -480 -32
WIRE -304 -16 -304 -176
WIRE -304 -16 -368 -16
WIRE 272 -16 272 -112
WIRE 272 -16 -304 -16
WIRE -928 0 -928 -64
WIRE -432 0 -480 0
WIRE -800 112 -848 112
WIRE -640 112 -720 112
WIRE -608 112 -640 112
WIRE -480 112 -480 0
WIRE -480 112 -528 112
WIRE -432 112 -480 112
WIRE -304 112 -352 112
WIRE 368 144 368 112
WIRE -32 176 -160 176
WIRE 272 176 272 112
WIRE 272 176 192 176
WIRE -304 224 -304 112
WIRE -304 224 -480 224
WIRE -160 224 -160 176
WIRE -928 240 -928 80
WIRE -848 240 -848 112
WIRE -848 240 -928 240
WIRE -800 240 -848 240
WIRE -32 240 -112 240
WIRE 368 240 368 224
WIRE 368 240 192 240
WIRE -640 256 -640 112
WIRE -640 256 -736 256
WIRE 368 256 368 240
WIRE -112 272 -112 240
WIRE 272 272 -112 272
WIRE -96 304 -96 -240
WIRE -32 304 -96 304
WIRE 272 304 272 272
WIRE 272 304 192 304
WIRE -480 320 -480 224
WIRE -416 320 -480 320
WIRE -304 336 -304 224
WIRE -304 336 -352 336
WIRE 272 336 272 304
WIRE 368 336 272 336
WIRE 368 352 368 336
WIRE -32 368 -96 368
WIRE 368 448 368 416
WIRE -928 496 -928 464
WIRE -640 496 -640 464
WIRE -368 496 -368 464
WIRE -928 608 -928 576
WIRE -800 608 -928 608
WIRE -640 608 -640 576
WIRE -528 608 -640 608
WIRE -368 608 -368 576
WIRE -240 608 -368 608
WIRE 0 608 0 560
WIRE -928 640 -928 608
WIRE -640 640 -640 608
WIRE -368 640 -368 608
WIRE 0 720 0 688
WIRE -928 752 -928 720
WIRE -640 752 -640 720
WIRE -368 752 -368 720
FLAG 0 720 0
FLAG 0 560 VCC
FLAG 368 112 VCC
FLAG 272 112 VCC
FLAG -96 368 VCC
FLAG 368 448 0
FLAG -160 224 0
FLAG 256 -304 VCC
FLAG -128 -112 VCC
FLAG 336 -352 VCC
FLAG 336 -48 0
FLAG -96 -272 0
FLAG -128 -176 Output
IOPIN -128 -176 Out
FLAG -928 752 0
FLAG -640 752 0
FLAG -368 752 0
FLAG -240 608 PGND
FLAG -416 352 PGND
FLAG -800 608 HANDLE
FLAG -528 608 NEUTRAL
FLAG -800 -336 NEUTRAL
FLAG -800 272 HANDLE
FLAG -928 464 VCC
FLAG -640 464 VCC
FLAG -368 464 VCC
FLAG 272 -112 CTRL
FLAG 272 -176 THRS
SYMBOL Misc\\NE555 80 272 R0
SYMATTR InstName U1
SYMBOL res 352 128 R0
SYMATTR InstName R1
SYMATTR Value 277k
SYMBOL res 352 240 R0
SYMATTR InstName R2
SYMATTR Value 4.7k
SYMBOL voltage 0 592 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V1
SYMATTR Value 6V
SYMBOL cap 352 352 R0
SYMATTR InstName C1
SYMATTR Value 0.1u
SYMBOL Misc\\NE555 80 -208 R0
SYMATTR InstName U2
SYMBOL res 320 -336 R0
SYMATTR InstName R3
SYMATTR Value 22k
SYMBOL cap 320 -160 R0
SYMATTR InstName C2
SYMATTR Value 0.1u
SYMBOL res -336 -192 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R4
SYMATTR Value 10k
SYMBOL res -512 -192 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R5
SYMATTR Value 22k
SYMBOL res -336 96 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R6
SYMATTR Value 10k
SYMBOL res -512 96 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R7
SYMATTR Value 22k
SYMBOL res -688 -192 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R8
SYMATTR Value 7.5k
SYMBOL res -704 96 R90
WINDOW 0 5 56 VBottom 0
WINDOW 3 27 56 VTop 0
SYMATTR InstName R9
SYMATTR Value 7.5k
SYMBOL res -944 -160 R0
SYMATTR InstName R10
SYMATTR Value 15k
SYMBOL res -944 -16 R0
SYMATTR InstName R11
SYMATTR Value 50k
SYMBOL res -944 624 R0
SYMATTR InstName R12
SYMATTR Value {R}
SYMBOL res -944 480 R0
SYMATTR InstName R13
SYMATTR Value {25k-R}
SYMBOL res -656 624 R0
SYMATTR InstName R14
SYMATTR Value 12.5k
SYMBOL res -656 480 R0
SYMATTR InstName R15
SYMATTR Value 12.5k
SYMBOL res -384 624 R0
SYMATTR InstName R16
SYMATTR Value 11.5k
SYMBOL res -384 480 R0
SYMATTR InstName R17
SYMATTR Value 13.5k
SYMBOL Opamps\\opamp -400 -80 R0
SYMATTR InstName U3
SYMBOL Opamps\\opamp -384 272 R0
SYMATTR InstName U4
SYMBOL Opamps\\opamp -768 -256 M180
SYMATTR InstName U5
SYMBOL Opamps\\opamp -768 192 R0
SYMATTR InstName U6
TEXT 120 544 Left 0 !.tran 0 50ms 15ms
TEXT 120 576 Left 0 !.lib opamp.sub
TEXT 120 608 Left 0 !.step param R list 7.5k 10k 12.5k 15k 17.5k


tag: サーボ LTspice パラメトリック解析 

comment

Secret

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoC強磁性CPAPICOPアンプecalj状態密度常微分方程式モンテカルロ解析odeトランジスタインターフェースDOSPDS5022スイッチング回路定電流半導体分散関係シェルスクリプト乱数レベルシフトHP6632A可変抵抗温度解析トランジスタ技術ブレッドボードR6452AI2C確率論セミナー数値積分反強磁性バンドギャップ熱設計非線形方程式ソルバ絶縁バンド構造偏微分方程式三端子レギュレータフォトカプラカオスマフィンティン半径ISO-I2CGW近似LM358A/DコンバータシュミットトリガLEDUSB数値微分サーボアナログスイッチ補間発振回路カレントミラー直流動作点解析TL43174HC4053PC817C単振り子FFTVESTA開発環境bzqlty電子負荷量子力学基本並進ベクトルパラメトリック解析標準ロジックチョッパアンプBSchLDAアセンブラブラべ格子2ちゃんねるイジング模型PWscf状態方程式仮想結晶近似キュリー温度Quantum_ESPRESSO熱伝導VCAスイッチト・キャパシタewidth最適化QSGWTLP621GGASMPMaxima失敗談位相図六方最密充填構造繰り返しスピン軌道相互作用相対論ランダムウォークFETgfortranコバルトスレーターポーリング曲線ラプラス方程式抵抗cygwin不規則合金格子比熱熱力学マントル条件分岐MCU井戸型ポテンシャルダイヤモンドQNAPUPS固有値問題シュレディンガー方程式自動計測ガイガー管詰め回路OpenMPTLP521ハーフメタルLM555ubuntufsolveブラウン運動平均場近似NE555ZnOTLP552QuantumESPRESSOxcrysdenCIF最小値最大値awkフェルミ面テスタ第一原理計算Ubuntu差し込みグラフFXA-7020ZR三角波過渡解析Writer509データロガースーパーセル起電力CK1026AACircuitMAS830LフィルタMBEP-10PGAトランスナイキスト線図ノコギリ波負帰還安定性EAGLEOPA2277PIC16F785CapSenseLMC6622SC1815入出力固定スピンモーメントFSMTeX結晶磁気異方性全エネルギーc/a合金multiplotgnuplot非線型方程式ソルバL10構造正規分布等高線ジバニャン方程式初期値interp1fcc面心立方構造ウィグナーザイツ胞半金属デバイ模型磁気モーメント電荷密度重積分SIC不純物問題ゼーベック係数cif2cellPWgui擬ポテンシャル二相共存ウルツ鉱構造edeltquantumESPRESSOフォノンリジッドバンド模型スワップ領域BaO岩塩構造ルチル構造ヒストグラム確率論マテリアルデザインフラクタルマンデルブロ集合キーボードRealforceクーロン散乱三次元疎行列縮退化学反応関数フィッティング最小二乗法Excel直流解析PCTS-110TS-112日本語パラメータ・モデル等価回路モデル文字列状態図陰解法熱拡散方程式HiLAPW両対数グラフCrank-Nicolson法連立一次方程式specx.fifort境界条件片対数グラフグラフの分割円周率ヒストグラム不規則局所モーメントGimpシンボル軸ラベル凡例線種トラックボール

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ