So-net無料ブログ作成

Kato SoundBoxをArduinoで操作する。その2 [SoundBox]

 続きます。
 RS485ではうんともすんとも言いませんが、オシロで見ると、ちゃんと232Cのような信号が出ています。
 初期信号.png

 ここは基本に戻って、まずはスマートコントローラ単体にしてUSBシリアルに繋いで確認です。
 つなぐ場所は、下の写真のコネクタで、
re_DSC02497.jpg
 
 一番根本(GNDに繋ぐ)と一番先っぽ(RXに繋ぐ)です。これで、受信できるはずです。
 で、ArduinoIDEのCOMモニタでめでたく受信できました。
38400bpsで受信.png

 他のCOMモニタでも確認して、こんな信号が出ています。38400bpsで3.3V系です。
01000001:
02000002:
03000003:
04000004:
 あとでわかりますが、 [LF](命令) : という形式です。
 ということで、送り出しの命令はわかりましたので、送受信がどう行われているかを確認するために、SmartControllerとSoundBoxをつなぎます。
re_DSC02495.jpg

 かなりぐちゃぐちゃな写真ですが、SmartController→ブレッドボードでUSBシリアルのRXで受け→SoundBoxとミニプラグケーブルをつないでいます。
 そうしたら、下記のように、送受信が見えるようになりました。
送受信.png

 こんな信号が送受信されています。
01050307: 0105030007.
01040005: 0104000104.
01050307: 0105030007.
01040005: 0104000104.
01050307: 0105030007.
01040005: 0104000104.


 分かったのは後ですが、[LF](SmartControllerから送信): (SoundBoxから送信).となっています。
 あとは、SmartControllerからファンクションとかスピードとか動かしてやって、どんな信号が出ているか解析するだけです。多分。
 その3に続く。

コメント(0) 

Kato SoundBoxをArduinoで操作する。その1 [SoundBox]

 秋のDCCFestの時にスマイラー様に、「KatoのSoundBoxをDCCから操作して音はBluetoothで飛ばして、電車から音を出す。をしたいので、SoundBox貸してください。」と頼みましたら、快く貸してくださいました。で、Yaasan様に「DCCから制御したいので、前分解していたKatoのSmartController貸して下さい。」と頼んで、こちらも快く貸していただきました。ということで、タダで、Smart ControllerとSound Boxを入手したので(いや、借りてるだけですが)、早速、DCCから制御する前段階としてSmartControllerとSoundBoxの通信プロトコルの解析です。
re_DSC02494.jpg
 まずは、SmartControllerのおさらいです。Yaasan様の記事とゆうえん・こうじ様のコメントによると、二線式のよくある双方向通信じゃないか?とのことでした。で、通信波形もYaasan様の記事からなんか、普通の232Cチックです。
 風のうわさでRS285じゃないのか?という話も聞いたので、こっそり、AmazonでRS485通信ができるとかいうUSB接続のコンバーターを買ってみました。
 これで、実験環境は完璧です。で、SmartControllerとSoundBoxの間にRS485をつないで、PCでモニターしてみましたが、なんかデータが全くでない・・・。ということで、RS485コンバーターはお蔵入りです。
 その2へ続く・・・。

コメント(0) 

近隣の電車のスピードメーター調査 [電車]

 あやのすけ様がDSairのSkinにサムネイル表示を追加しました。UIってのはちょっと変えただけで、分かりやすくなるものですね。
 スピードメータの違いを見るために、この頃乗った電車のスピードメーターを確認してみました。
 まず、江ノ電300形。全体。
re_IMG_20181006_145824.jpg

メーター拡大
re_IMG_20181006_145735.jpg

次に江ノ電10形。全体。
re_IMG_20181008_095605.jpg

メーター拡大
re_IMG_20181008_095620.jpg

小田急8000形 8558。全体
re_IMG_20181012_141811.jpg

メーター拡大
re_IMG_20181012_141845.jpg

 雰囲気重視(つまり適当)な私としては、小田急は、旧国鉄の最高速違い(150km/h最高速は設定できないけど)。江ノ電は、旧国鉄の20km/hとかの節目のところを三角から太い直線にして、最高速を80km/hにするぐらいなので、作るほどでもないかという感じです。
 それよりも、隣の圧力計を再現したいところですが、スマホだと、画面が小さくて残念なことになりそう。スピードメータ―のタップで速度制御しつつ、圧力計側は動作の空気を読んで、圧力を上げたり下げたりとなるんでしょうか?いや、圧力計の動きを再現するんなら、スピードメーターのタップでなく、マスコンの力行とかブレーキとか使いたいですし・・・。

コメント(0) 

DSair2 チャレンジキットの組み立て [DSAir]

 昨日のDCCfestの飲み会でDSair2チャレンジキットを渡されたので、組み立てました。
 DSairとの大きな違いは、
(1)CV読み書きができる。(DSairは書き込みだけ)
(2)ケースが豪華になった(DSairは汎用Arduinoケース)
(3)ArudinoNanoベースなので、USBによる制御ソフトアップデートが可能。(DSairはマイコンを直接書き換える必要があるので、不具合時のアップデートの難易度が高い)
でしょうか?
 現状は専用スケッチがないので、DSair相当の機能しか確認できませんが。

 まずはキット内容。
re_DSC02479.jpg

 ケースと基板と表面実装部品の数々・・・。組み立てる前に確認しないと「後で部品が無い!」というのは避けたいので。
re_DSC02480.jpg

 で、約1時間後にとりあえず表面部品は付きました。半田ごてやルーペ、ピンセット、フラックス、半田吸い取り線などを駆使しています。
re_DSC02481.jpg

 苦労したところはIC5の辺り、C4,C6を先につけたため後からIC5をつけるのに苦労しました。先にIC5をつけるべきでした。
 あと、部品表のR13が回路図にもシルクにも見当たらないような気がしました。
 また、ICはクリームハンダ向けに考えている思われ、IC2など、ちょっとはんだ付けてきているのか不安な感じではあります。

 で、表面実装部品以外も付けていって、完成。
re_DSC02482.jpg

 LEDはケースでの位置を確認して、その状態ではんだ付け。
re_DSC02483.jpg

 ケースに固定して、
re_DSC02484.jpg

 ArduinoNanoを付ける前に、12Vで通電させて、ArudinoNano用の5V,SDカード用の3.3Vが出力されていることを確認します。

 そして、スケッチを書き込みます。書き込む前はLED点滅のスケッチが入っており、Nanoの青いLEDとDSair2のRUN LEDが点滅しました。なんでRUN LEDも点くのだろう?
 Arudino IDEの1.8.7で書き込む場合は、書き込むボードはArudinoNanoですが、プロセッサーをATMega328Pでなく、ATMega328P(Old Processor)にする必要がありました。1.6.8では普通にATMega328Pを選び書き込めました。FlashAirは外しておきます。なんとなく、電力を食いそうなので。

 で、まあ、写真の通り、見るだけ君によるチェックでは、ちゃんと動いておりました。
re_DSC02485.jpg

 DSair2の大きさですが、DSmainR5、Katoの鉄道模型コンテスト開催記念コキ107と比べるとこのぐらいの大きさです。結構小さいです。
re_DSC02487.jpg

 専用スケッチがリリースされたら、いろいろ試していきたいと思います。



コメント(0) 

DSAir用のUIを切り替えられるようにする [DSAir]

 ゆうえん・こうじ様から、
 「ところで今のDSairで、複数のUIを切り替えて使うということはできるのでしょうか?
それとも一枚のFlashAirには、ひとつのUIのList.htmしか設定できないのでしょうか?」

 と聞かれて、Yaasan様のブログには、複数のアプリを選択するというものがあり、やり方は、

「List.htmからリンクを貼ればいいだけなんです。
<a href="htmlファイル名">りんく</a>とするだけです。
なお、URL直入れは、List.htmしか許可されてません、リンクで飛ばないとだめです。」

とのことで、確かにできました。
List.htmを
----
<!doctype html>
<html>
<head>
<title>DSair Select</title>
<meta charset="utf-8" />
<style type="text/css">
body{
font-size: 2em;
}
</style>
</head>
<body>
DSair<br>
Skin Selector<br>
<a href="/SD_WLAN/List_org.htm">Original</a><br>
<a href="/SD_WLAN/List_E217_2.htm">E217</a><br>
<a href="/SD_WLAN/List_E233_2.htm">E233</a><br>
<a href="/SD_WLAN/List_kyuukoku_2.htm">旧国鉄</a><br>
</body>
</html>
----
としたら、こんな画面になります。(適当です)
キャプチャ_R0v_SkinSelector.png

そして、各ページをクリックするとE217系は
キャプチャ_R0v_E217_2.png

E233系は
キャプチャ_R0v_E233_2.png

旧国鉄は
キャプチャ_R0v_旧国_2.png

という感じで、各ページで普通にDSairを操作できました。なお、OriginalはDSairの通常のものになりますが、スピードメータの刻みを変更しているため、外部のStorage.jsも含めオリジナルのソースから少々変えてしまっています。

 なお、E217,E233,旧国鉄共に、スピードメータの0km/h、最高速度のメーター角度を変えています。
オリジナルはスピードメーターの円の真右方向を0度として、そこから時計回りに135°行ったところを0km/h、そこから270°行ったところが最高速度になっています。
 これをE217系などは、144°行ったところを0km/hにして、そこから252°行ったところを最高速にしています。E233系を見たらそうなっていたので、というだけですが。
 ソースはこちらです。参考にどうぞ。
コメント(2) 

DSAir用のUIを変更する(E233系風) [DSAir]

 やる気が途切れないうちにもう一つ。E233形風です。ただし、E217系風同様、最高速が違っていたりします。SD_WLANフォルダ(R0v_E233)はこちらです。
 これも昨年のJR鎌倉車両センター公開で撮ってきているので、それに合わせて作りました。
キャプチャ_R0v_E233.png

 一応、写真を撮った本物はこうです。
E233_本物.png

 こうなると、最高速に合わせて、目盛りを少し可変にしたくなりますが、どうしようか?
 あと鎌倉車両センタ―で写真撮っていて、簡単にできそうなのは、E259系ですかね?速度表示が外側なので、ちょっとデザイン的に難しいかも。

コメント(5) 

DSAir用のUIを変更する(E217系風) [DSAir]

 こういうのはやる気になったときにさっさとやらないと、後では、どこを変えるかすらわからなくなるものなので、やってしまいます。
 今度はE217系風です。昨年のJR鎌倉車両センター公開で撮ってきているので、それに合わせて作りました。ただしメーターの最高速が違うので、そこらへんは手抜きです。
キャプチャ_R0v_E217.png
 一応、SD_WLANフォルダ(R0v)はこちらです。


コメント(0) 

DSAir用のUIを古い電車風にする(その2) [DSAir]

 DSairのR0vに対応したものを作ってみました(こちら)。
 ただし、レイアウト、CVなど確認していません。(マイコンのほうはバージョンを上げていないので)
 ちょっとだけデザインを変えました。FWDとかを下のほうにして、スピードメーターの文字を縦長にした、ぐらいですが。
キャプチャ_R0v.png

コメント(0) 

DSAir用のUIを古い電車風にする(その1) [DSAir]

 3週間!ぶりの更新になりますが、まあ、なかなか進まない時には書くこともないもので。DSAirのアプリでも作ろうかと思って勉強を始めたのが2週間前・・・。最初は1ハンドルマスコン風の何かを作ろうかと画策しましたが、JavaScriptとかjQueryとかHTMLとかCSSとか、40代の頭に新たに入れるには新鮮すぎてやめました。
 ただし、UI部分の見た目と動作が書いてあるList.htmを読んで、他にjQueryやJavaScriptの入門Webサイトや入門書の立ち読みでなんとなく構造だけはわかりました。ここまでが、先週です。
あとはここら辺を確認。
DSairアプリの作り方
FlashAirアプリの作り方(環境編)
 で、自分のメモのために書くと、DSAirから呼ばれるUIのList.htmは
・headタグ内のstyleタグに、大まかな設定を書く
・headタグ内のScriptタグに動作をJavascriptで書いて、外部ファイルのスクリプトを使ってDSAirにGet命令を送り操作する。JavaScriptはCに似ているような言語。
・bodyタグ内にはUIの見た目の構造とどういう命令が呼ばれるかの紐づけが書かれている。
という感じの構造です。
 で、今回やったことは、UIの中でもスピードメーターを古い電車風にするということです。
 まずは、色です。国鉄の運転台は灰緑色3号らしいです。RGBの指定では、#3B6063です。
 で、headタグ内のstyleタグに背景を灰緑色3号にするように書き込んでいきます。いろいろやったら一日がかりで、どうにか背景をすべて灰緑色3号にできました。ここで、一番苦労したのはタブ部分で、「どうしてもCab,Acc,Configの右側が白から変わらん!」が続いていましたが、ulタグにIDを振ってやって背景を指定したら、うまくいきました。
 次に、スピードメーター本体です。こっちはわりとわかりやすくて、描画部分は、headタグ内のscriptタグの中で、
(1)function drawMeterBackground(inScale) ・・・メーターの背景や文字盤の目盛りを書く。
(2)function drawMeter(inSpeed, inScale)・・・(1)の命令を呼んで背景を書いた後、進行方向、スピードの値、メーターの針、中心の灰色の丸、を書く。
です。ここら辺を直していけば、国鉄風の速度計になります。

 具体的には、
・メーターの背景は黒から白へ変更
・文字盤のフォントもなんとなく変更
・目盛りは丸から線に変更。一番小さい丸と次に小さい丸は細線と太線にして、一番大きい丸は三角の描画に変更
・メーターの針は赤から黒へ変更、三角の形もよくある5角形の形に変更。
・メーター中心の灰色の丸も大きくする。
・適当に全体のバランスを整える。
という作業をして、完成したのがこちらです。もちろん最大速度は120km/hに設定します。
PCのクロームで見ると
キャプチャ.png

スマホで見ると
Screenshot_20180929-171622.jpg

 とりあえずはいい感じかなと思い、実際にDSAirに入れて確認して、見るだけ君での確認ではちゃんと動いているようでした。ただし、私の持っているバージョンはR0p(4/22)で、最新ではありません。
最新のもの(R0v)と差分を確認したら、割とありそうです。やる気があったら、最新用のに載せようと思います。最新だと複数アプリから起動するものを選べるのかしら?
一応、FlashAirに入れるWD_LAN部分(R0p相当)の改造ソフトはこちらです。WinMergeなどのソフトで、Yaasan様のオリジナルと比較していただくことで、どこら辺をいじれば、スピードメーターのパラメータを変更できるかがわかると思います。なお、私は実環境でのテストは全くしておりません。

コメント(0) 

Mint缶コントローラ(試作版)にレーザーカッターでアクリルの箱を作り失敗 [レーザーカッター]

 レーザーカッターでMDFを加工していましたが、CO2レーザーは透明アクリル板も切れるので、それをやってみました。せっかくなので、最近作ったミント缶コントローラの箱を作ってみます。
re_DSC02465.jpg

 久しぶりにインクスケープでお絵かきをしていたのですが、どうも寸法がうまく出ません。半日ぐらい発狂しそうになりながら確認してって、原因がわかりました。
 編集→Inkscapeの設定で、ツールの所で、
・仮想境界枠
・幾何学的境界枠
の二つが選べるのですが、なぜか設定が仮想境界枠になっており、例えば50mmの正方形を重ねても線の太さも加味されてしまうため、100mm*50mmの長方形にならない!という状態で、全く作図になりませんでした。幾何学的境界枠を選んで、やっと、ヘンテコな端数が出ない作図が出来るようになり進むことができました。

 で、基板の寸法や、TwayDCCさんの箱の型紙を参考に、箱を作って、2mmのアクリル板をカットしてみました。レーザー出力30%で、送りは10mm/sです。(MDFの時は30%.13mm/s)
 うまくできました。
re_DSC02473.jpg

 まあ、うまくいったのはここまでで、ミント缶に合わせてみたら干渉やらいちずれやらで、大変な感じです。透明アクリルなので、干渉部分にマジックで印を付けました。
re_DSC02475.jpg

 削ったり、削った途中に割れたりで、まあ、一応入りました。
re_DSC02477.jpg

 端子部分もなかなか、今回のは破たんしています。
re_DSC02478.jpg

 今回は、アクリルレーザーカットできたということで良しとします。
 アクリルの上面板は基板の上15mmとして、プッシュボタンを20mmとすれば入りそうな気がしますので、ボタン高さを変えて、カット寸法も変更をして、もう一回やってみようと思います。
 アクリルはMDFほど煙は出ませんでしたが、MDFはわりと香ばしい臭いだったのに対し、アクリルはウンコ臭いです。秋になり、近所の家も窓を開けていると思うので、時間帯でいつやろうかなあという感じです。

コメント(5)