忍者ブログ

あやの

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

2026/08    07« 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  »09
×

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

おととい、広角度計器速度計のデモをお見せしましたが、針がイマイチでした。
検証してみました。
言語はExcel VBAを使いました。

■その1
以下のような、プログラムで作りましたが、線1本なので味気がありません。

Sub test()

    ActiveSheet.DrawingObjects.Delete

    Pi = 3.14

    ox = 100

    oy = 100

    For i = 0 To 360 Step 45

        x = Cos(i * Pi / 180)

        y = Sin(i * Pi / 180)

        ActiveSheet.Shapes.AddLine x * 100 + ox, y * 100 + oy, x * 10 + ox, y * 10 + oy

    Next i

End Sub




■その2
針を太らせるために以下のような、プログラムで作りましたが、角度によって開きが異なります。
※現在のDCC速度計のアルゴリズムと同等

Sub test2()

    ActiveSheet.DrawingObjects.Delete

    Pi = 3.14

    ox = 100

    oy = 100

    For i = 0 To 360 Step 45

        x = Cos(i * Pi / 180)

        y = Sin(i * Pi / 180)

        ActiveSheet.Shapes.AddLine x * 100 + ox, y * 100 + oy, x * 10 + ox + 5, y * 10 + oy + 5

        ActiveSheet.Shapes.AddLine x * 100 + ox, y * 100 + oy, x * 10 + ox - 5, y * 10 + oy - 5

    Next i

End Sub





■その3先っぽもSin,Cosを使う必要があるんだねということで。
良い感じになりました。

Sub test3()

    ActiveSheet.DrawingObjects.Delete

    Pi = 3.14

    ox = 100

    oy = 100

    Angle = 60

    For i = 0 To 360 Step 45

        x1 = Cos(i * Pi / 180)

        y1 = Sin(i * Pi / 180)

        x2 = Cos((i * Pi + Angle) / 180)

        y2 = Sin((i * Pi + Angle) / 180)

        x3 = Cos((i * Pi - Angle) / 180)

        y3 = Sin((i * Pi - Angle) / 180)

        ActiveSheet.Shapes.AddLine 100 * x1 + ox, 100 * y1 + oy, 10 * x2 + ox, 10 * y2 + oy

        ActiveSheet.Shapes.AddLine 100 * x1 + ox, 100 * y1 + oy, 10 * x3 + ox, 10 * y3 + oy

    Next i

End Sub






■原理はこんな感じで、(x1,y1)を起点として、(x2,y2), (x3,y3)の座標を演算して表示させています。



拍手[0回]

PR
塩漬けにしていた、Ateml製マイコン Cortex-M0+コアのSAMD21を使った、DCCデーダーを
ちょっとやってみようと情報を仕入れたら、
最新版のNmraDccのコメントに

2017-01-19 added STM32F1 support by Franz-Peter

おー、STM32F1に対応したみたいです。



Franz-Peterさん、goodです!

Webサイトがあるのかなーとググってみたけど、http://ww.stummiforum.de/ かなー
と思うけど開きませんでした。
ドイツは遠かった。

Arduino zero(M0)のCortex-M0でもうごくかな?!



拍手[0回]

ずっと、SmileFunctionDecoderLightに掛かりっきりでしたが、久しぶりに
DCC速度計のスケッチをいじりました。
デジタルより、アナログ表示のほうが見やすいかなと思い画面を作ってみました。


久しぶりに、三角関数触りましたw

拍手[0回]

基板を見積もったら、配布価格一枚当たり2500円になってしまいます。
基板の大きさがコストアップに大きく影響しています。
基板寸法を8mm x 95mmにして、テープLEDと併用をして安くしようかなと考え中。
新幹線に入れる場合は、テープLEDを5mmほど切り詰めれば140mmになり、ちょうど入ります。




うーん、テープLED使った瞬間、魅力を失いましたw
SmileFunctionDecoderでいいじゃんという気持ちが強くなったので(^^;

Smile Function Decoder Light は、妄想で終わらせます。

SmileFunctionDecoder完成品をポッチっとw

拍手[0回]

DRCでOKでもなんか気になるので、パターンを2倍に印刷して、回路図と塗りつぶしを
行います。
(2倍でもチェックしづらいw)



大きさと分割位置はこんな感じ。
7.8mm x 140mm x 0.8mm 新幹線に取り付けても室内の左右が暗くなりません!



シルク、パターンを修正して整えました。


拍手[0回]

ブログ内検索

プロフィール

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