あやの
NゲージをベースとしたDCCについての日記を 書いています。 ある程度貯まりましたら、鉄道模型のDCCのまとめサイトに まとめています。 借りている容量が最大に達しましたので、移転します。 ★移転先:http://maison-dcc.sblo.jp/
なんとか形になりましたの、パンタグラフ昇降スケッチの紹介します。
例の小型サーボモータを使って、SmileFunctionDecoderの応用例として、
パンタグラフ昇降を想定した、サーボモータを動かしてみました。
ちなみに、プログラム内でこんなパターンを作っておきます。
参考にした動画はこれでです。
パンタグラフが架線にあたり、一度跳ね返っている動作を模擬しましたw
下ろすときも、なんとなく跳ね返っている動作を入れました。
ATtin85のPWMは8bitしかないので、細かな角度設定が実は難しいです。
周波数も狙った値にできなくて、キャリアは236Hzです(いいのかな?)
0〜90degの分解能は1.3degです。(中途半端ですね・・・)
なので、サーボモータの移動量はfloatで計算させています。
メモ
Arduino使って、状態遷移を使って動かす場合、一定の時間で駆動される(イベントドリブン)
プログラムを作る場合、状態遷移部分に定期的にアクセスする必要があります。
処理が重くなっていないかを確認するのに、I/Oピンに信号を出力させて、
オシロスコープで波形を確認して周期を確認します。
digitalRead()で読み込んだ値に!を付けて反転させて、digitalWriteで出力させ、
波形でみると、こんな感じにパタパタするので、上記のプログラムの場合、10ms周期でアクセス
される為、ちゃんと動いていることが確認できます。
digitalWriter(O3,!digitalRead(O3)); の組み合わせはちょっと便利です。
シリアルデバックする際に、float内の変数を出力させようと、sprintf を使っていましたが、
ちゃんと表示されず、変だなと思ったらArduinoはdtostrf()を使わないとダメだそうです。
例の小型サーボモータを使って、SmileFunctionDecoderの応用例として、
パンタグラフ昇降を想定した、サーボモータを動かしてみました。
ちなみに、プログラム内でこんなパターンを作っておきます。
//panta patern
//Cmd,Time,deg
//O:出力,E:終了
byte upptn[7][3] = {{'O',0,0},{'O',4,90},{'O',4,70},{'O',4,90},{'4',5,80},{'O',4,90},{'E',0,0}};
byte downptn[5][3] = {{'O',0,80},{'O',4,0},{'O',2,10},{'O',2,0},{'E',0,0}};
動画では、F4は単純に200msで0degから90degを動かしています。
F3がパンタグラフの昇降を模擬させています。
動画では、F4は単純に200msで0degから90degを動かしています。
F3がパンタグラフの昇降を模擬させています。
参考にした動画はこれでです。
パンタグラフが架線にあたり、一度跳ね返っている動作を模擬しましたw
下ろすときも、なんとなく跳ね返っている動作を入れました。
ATtin85のPWMは8bitしかないので、細かな角度設定が実は難しいです。
周波数も狙った値にできなくて、キャリアは236Hzです(いいのかな?)
0〜90degの分解能は1.3degです。(中途半端ですね・・・)
なので、サーボモータの移動量はfloatで計算させています。
メモ
Arduino使って、状態遷移を使って動かす場合、一定の時間で駆動される(イベントドリブン)
プログラムを作る場合、状態遷移部分に定期的にアクセスする必要があります。
処理が重くなっていないかを確認するのに、I/Oピンに信号を出力させて、
オシロスコープで波形を確認して周期を確認します。
digitalRead()で読み込んだ値に!を付けて反転させて、digitalWriteで出力させ、
波形でみると、こんな感じにパタパタするので、上記のプログラムの場合、10ms周期でアクセス
される為、ちゃんと動いていることが確認できます。
digitalWriter(O3,!digitalRead(O3)); の組み合わせはちょっと便利です。
シリアルデバックする際に、float内の変数を出力させようと、sprintf を使っていましたが、
ちゃんと表示されず、変だなと思ったらArduinoはdtostrf()を使わないとダメだそうです。
PR
ブログ内検索
カテゴリー
最新記事
(12/31)
(12/31)
(12/29)
(12/23)
(12/18)
リンク
プロフィール
HN:
あやのすけ
性別:
非公開