忍者ブログ

あやの

NゲージをベースとしたDCCについての日記を 書いています。 ある程度貯まりましたら、鉄道模型のDCCのまとめサイトに まとめています。 借りている容量が最大に達しましたので、移転します。 ★移転先:http://maison-dcc.sblo.jp/

2024/03    02« 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  »04
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

しばらく向かっていませんでしたが、納期があると仕事が進むというかw
なんとか、サーボモータアクセサリデコーダ(ポイント用ですね)と
サーボモータファンクションデコーダができました。
DCCの配線(赤・黒)とサーボモータの配線(茶:com・赤:-5V・黄:sig)

手元に電解コンデンサがなかったので、タンタルコンデンサ16V-100uFを実装



確認したのは、右の白いサーボモータHobbykingで売っているHK-5320
左のはリニアタイプのサーボモータ
1.5g Goteck Servo Micro Digital Analog Servo Loading Linear Actuator Servo inm  https://ebay.us/byE5vF 

ソースはqittaに上げました。
DCC サーボモータアクセサリデコーダ
https://qiita.com/masashi_214/items/09dc328c95dfb61fd161 

DCC サーボモータファンクションデコーダ(DCC Servo Function Decoder)
https://qiita.com/masashi_214/items/14ea9cd830f56a31ccf8 


動画
こんな感じ(^^; や、こんな感じ。メカ部がいまいちなので、ギクシャク

補足説明
・ON/OFFの状態を都度EEP-ROMに書き出しています。
・ファンクションデコーダの方はコマンドステーションの起動時に一度0を送るようなので、
 一旦OFFになります。

CV値
DCC サーボモータアクセサリデコーダ
CV01 : 3 DCCアドレス
CV08 : xx  デコーダーリセット
CV17 : 0 DCCアドレスXX  XXYY
CV18 : 0 DCCアドレスYY  XXYY
CV60 : 8    位置0時のパルス幅 8で500uS
CV61 : 36 パルス幅 36で2400uS
CV62 : 180 ON時の角度
CV63 : 0 OFF時の角度
CV64 : 0 電源を切る前の角度(未使用)
CV65 : 20 On時の速度 20:2000msec
CV66 : 20 Off時の速度 20:2000msec
CV67 : 0 電源を切る前のON/OFF情報


CV値
DCC サーボモータファンクションデコーダ
CV01 : 3 DCCアドレス
CV08 : xx  デコーダーリセット
CV17 : 0 DCCアドレスXX  XXYY
CV18 : 0 DCCアドレスYY  XXYY
CV60 : 8    位置0時のパルス幅 8で500uS
CV61 : 36 パルス幅 36で2400uS
CV62 : 180 ON時の角度
CV63 : 0 OFF時の角度
CV64 : 0 電源を切る前の角度(未使用)
CV65 : 20 On時の速度 20:2000msec
CV66 : 20 Off時の速度 20:2000msec
CV67 : 0 電源を切る前のON/OFF情報
CV68 : 4 ファンクション番号


配布は悩み中。タンタルコンデンサ付けたり、リード付けるのがメンドくさい・・・。
(作業時間に対する価格が釣り合わない(^^;

拍手[0回]

PR
以前作ったのは、ファンクッションタイプでしたので、今回はアクセサリタイプ
を作ってみました。







くわしくはこちら


拍手[1回]

久しぶりに、DCC用サーボモータスケッチを動かしたら、すっかり忘れていて、
思い出しながらソースをいじっていました。

このまま進展無いのもアレなので、SmileFunctionDecoder Servoセットとして、
通販のページに追加しました。
Webページも記事を追加しました。
在庫数0ですが、最近、出張ばかりで自宅にいないので(^^;


こんな感じに、HobbyKingのHK-5320を接続した状態で動作確認した上で
配布しようかなと考えています。

スケッチは読みやすい様に改良中です・・

前に色々確認したDCC servoの記事はこちら。

拍手[0回]

今日も、わけのわからない書き込みですw
SmileFunctionDecoder使って、サーボモータ用のスケッチ(プログラム)を
作っているんですね。

■やった事
 オシロスコープで5Vラインとサーボモータ制御線を観察
 サーボモータの制御終了後、現在の角度をCV値としてEEP-ROMに書き出すようにした。
 線路電圧が掛かった最初に前回の最終角度を読みだし、コマンドステーションから
 送られていくるコマンドと比較して、角度スーイープ処理を入れて初期角度を設定
 するようにした。
■わかった事
 5V系に電解コンデンサを33uFつけてみたが、電圧降下にあまり効果がなかった。
 (三端子レギュレータの供給能力不足)
 サーボモータを急変させると電流が多く流れる。
 起動時に前回の角度を読み出す方法はうまくいった。
 DCS50Kは前回のファンクッションの状態を覚えており、
 最初F4=offしばらくして、F4=onを送ってくるので、前回onで終わらせた状態を
 EEP-ROMに記録しているのに、一度サーボモータがoffになって、またonになる
 動きが見られた(どうしようもない・・・)
■次やる事
 パンタグラフステートマシンも同様の処理を加えて動作確認
 パンタグラフとサーボモータ間の光ファイバロッドの修理

----

以下の波形は黄色がサーボモータの制御波形、水色がデコーダの5V
サーボモータの角度を急変させた時、2.82Vまで低下しています。
5Vラインに電解コンデンサを足しても、大差ありませんでした。
数百uFくらい積まないとだめなんでしょうね)

多少5Vがドロップしても動くので良しとします?!


プログラムはこんな感じに、サーボモータの制御完了時に現在の角度を書き出す様に
しました。


analogWriter()関数を使っていると、シリアルデバックコマンドの関数がメモリに
入りきらないので外してカット&トライでデバックしていましたが、
中々取れないんで、夕飯以降はw
analogWrite()関数を全部コメントアウトして、シリアルデバックしていました。

※サーボモータの動作がないので、数値だけでデバックする事になります。
ステートマシンで作ってあるので、ステートと現在の角度をシリアル出力させるだけで、
分岐条件とか目に見えるので、すぐバグが見つかります。

間違って、Dcc.setCV(initDeg.nowDeg); と書いていました。
※変数initDegはCV番号では無く、初期角度を格納している変数w
 CV_initDegと書く必要がありました。


拍手[0回]

今日も、訳の分からない書き込みです。

■やった事
 サーボモーターにトルクを掛けた時の電流波形を取得する。
■わかった事
 トルクを掛けている時は、5V-100mA以上流れている事。
 波形ではイマイチ分からなかった。
■次やる事
 SmileFunctionDecoder用サーボモータ用スケッチのバグ取り。


以前にAllegroのACS712というホール素子タイプの電流センサをゲットしました。
検出回路と絶縁されているので、PWM波形と電流を一緒に観測する事が
できたりして、色々便利そうです。

・全体的な出力誤差 1.5% (TA = 25°C) 結構悪い・・・ホビーユースという事で・・・
・1.2 mΩ の内部導体抵抗 すごく低いので良いです。
・5.0 V、単一電源動作 電源は5Vだけで良いので、便利です。
・ほぼゼロの磁気ヒステリシス

0Aで、VIOUT端子に2.5Vが出力されています。

↓アマゾンで買えます。レンジが色々あるのですが、5Aタイプが良いかな。


ごちゃごちゃしていますが、SmileFunctionDecoderにサーボモータの
HK-5320の電源ラインに、ACS712電流センサを割り込ませてあります。
VIOUTに電圧テスターと、デジタルオシロで波形を観測しています。


ピーと音がするACアダプタだなーと思って、5Vラインを見たら、
リップルのすごいこと・・・


負荷が軽いから、こんなもんでしょうか・・・↓これを使うのをやめて、もう一つ5Vの
ACアダプタがあったので、そっちを使いました。


もう一個のACアダプタは若干5Vを超えているので、0A時にVIOUT端子は2.780Vでした。


サーボモータを手でトルクをかけて「み゛ー」とさせると、2.793Vになります。
ACS712は、185mVで1Aなので、軽く100mA以上流れています(^^;
テスターは実効値表示なのでピーク電流はもっと流れているでしょう・・・
SmileFunctionDecoderの三端子レギュレータが熱くなるわけです(^^;


オシロスコープの波形ではよくわかりませんでした(^^;

さて、一応、
某所でちゃんとした電源と測定器を使って、ACS712のデータを取りました。
こちら。

基準電流発生器が見つからなかったので、直流電源の定電流モードを使って、
DMMの電流レンジで電流値を合わせながら測定しました。
そこそこリニアリティはありそうですね。
数十mAクラスは、数mVの変化しか見えないので、オシロスコープではちょっと見えなさそう。
(結果的に、見えませんでした・・・アンプで増幅させないとダメですね。)

DCC電源を入れた瞬間、PWMを発生させた瞬間にギュンとサーボモータが動いてしまうので、
対策しないとダメです・・・
せっかく、光ファイバロッド(^^;直したのに、また千切っちゃいました・・・
ゼムクリップを伸ばしたロッドを試してみましたが、ロット自体を垂直駆動ができないと
うまくパンタグラフを上下させる事ができませんでした。
パンタグラフもパンタスパーク用にLEDをアロンアルファでくっつけたやつなので、
可動がスムーズでないので、新品を買ってきてから再トライしたほうがよさそうです。

拍手[1回]

ブログ内検索

プロフィール

HN:
あやのすけ
性別:
非公開
| HOME Next >>
Copyright ©  -- あやの --  All Rights Reserved
Design by CriCri / Material by もずねこ / powered by NINJA TOOLS / 忍者ブログ / [PR]