Aitendoで買い込んでおいた蛍光表示管モジュールである。FUTABA製らしいが、データシートは既にAitendoにもなくなっていた。電子工作をされている人が保存されているのが見つかり、こちらにも控えをとった。
Arduinoで作ったニキシー管時計の要領で、もう少し低圧を発生させればよさそうだ。表示管の在庫は2台あります。
流行の温度センサーDS18B20使って温度も10桁ならば時間と同時に表示が出来ますね。
Aitendoで買い込んでおいた蛍光表示管モジュールである。FUTABA製らしいが、データシートは既にAitendoにもなくなっていた。電子工作をされている人が保存されているのが見つかり、こちらにも控えをとった。
Arduinoで作ったニキシー管時計の要領で、もう少し低圧を発生させればよさそうだ。表示管の在庫は2台あります。
流行の温度センサーDS18B20使って温度も10桁ならば時間と同時に表示が出来ますね。
スペック割れの嫌疑をかけられていた中華市場のDS18B20ですが、問題解決いたしました。
結論は、使い方のスペック割れで1Wireのスペックを満たしていないソフトウェアで利用していたことが判明しました。オリジナルのソフトウェアではリセットパルスが333uSで480uSの規格を割っていました。この問題は、おそらくシステムクロックの動作速度変更を行った段階で、1Wireのタイミング修正を行わなかったことに起因していると思われます。システムクロックの周波数からソフトウェアタイミングが自動的に算定されるようなdefineを指定することで解決されるはずですが、組み込み案件では、こうした問題で実機確認で終わりがちなので注意が必要ですね。
あいにくと8952(8051)のコンパイラでフリーで使えるものにはコードサイズの生成制限などがあり、とりあえず逆アセンブルしてHEXファイルからパッチすることにしました。
当該の1WireのバスラインはAT89S52のPort1のビット0を使っているので書かれているMCUかからイメージファイルをHEX形式で吸い出して、それからD52.EXEでリバースアセンブルして二箇所の修正ポイントを割り出して、リセットパルスとタイミングパルスのコードをバイナリで修正しました。結果は解決となりました。ただしくロジアナも解釈メッセージをつけて、デバイスが応答しているのも確認とれるようになりました。
さて、困っているセンサーデバイスの不良と、それによってもたらされるキットの対応が問題だったのだが、少し進展があった。
DS18B20は、本来はパラサイト給電で複数のデバイスをつけられるのが売りなのだが、この温度計機能つき時計のようにスポット一箇所のみである場合には、センサーを探索する必要はない。
まず、ここでパスとしているデバイスの検査は既存の時計キットにソケットをつけて交換動作で確認していた。
ところが検査環境を変えてパラサイト給電での試験をArduinoで組んだところ動作しないということが判明した。この点を見直して給電配線を変えたところ、探索ロジックが動作するデバイスがここでいうところのPass品であることがわかり、何らかのパラサイト給電に対するハード資源がおかしいということが判明した
failしていたデバイスもアドレスを指定しない(SkipROM)のコマンドで進めたところ温度センサーとしての動作には問題がないことがわかった。
中国市場で出回っている安い価格のDS18B20は故障モードロットが混在しているあるいは不良で落ちたデバイスが市場に出回っているように見える。使い方しだいで活用は出来るとしても、こうしたデバイスが混入していることを前提にするとものづくりは成り立たないかもしれないが、設計段階でこうしたデバイスを受け入れられることもキット必要なことなのかも知れない。
レトロな映画で最近も見かける表示器だが数字のエレメントが重なり0-9あるいは単位などの表示ものもあるようだ。高専に入学したころ(1971)には、電子計算機室という名前で、実際にはこの表示器のついた大型電子卓上計算機が並んでいる部屋だったりもした。当時はSONY製やカシオ製の電子式卓上計算機が鎮座していた。ルート計算ができるモデルがあったが、計算をすると途中経過の表示などが確定していくさまでは表示が前後する形のこの表示管の味わいがありました。このチューブはソケットの上部から覗くようになっていてパネル面につけるタイプのものなのだろう。現在はロシアで生産しているようで、ソケットと合わせてチューブを購入した。中身はネオンサインと一緒で高圧200V程度をかけて当該のエレメントが点灯するようになる。
真空管のソケットタイプではなく、ニキシー管の専用のソケットになっているらしい。
これを立てて取り付けるパネルを3Dプリンターで作成した。
制御基板はATMEGAでArduino開発ベースとなっていた。基板には、高圧発生回路、フォトドライバー、高圧対応のBCDデコーダとなり、別にリアルタイムクロックのモジュールとi2cで接続する形だ。
配線自体は、基本的に横一線で同じエレメントを数珠つなぎとしてアノードを各自に配線する。
制御基板やrtcモジュールを載せるシャーシも3dで作成した。ここにニキシー管パネルを立てる
配線の終わったニキシー管パネルをつけた。
これを落とし込む100円均一で買った木製ボックスにいれてみた。
この窓からニキシー管が見える予定。
全体を接続して動作確認をしてみると点灯しない文字があるのでデバッグ開始
今回のキットはチェコの方の作品だが、基板の改版とコードのメンテナンスがシンクしていないようで、atmegaからの引き出しピンが私の入手した基板ではあっていないようだ。古い基板をくれたのかもしれない。ソースは開示されているので修正することにして、まずケースに収めてつけてみた。こんな感じ
問題点は、明らかになり基板のバージョンが古いらしいこととソースコードとマッチしていないことだった。基板をソースコードに合わせて修正してソフトを書き戻した。RGBとTICKのLEDにPWM制御をかけたいらしく仕様変更があったようだ。最新の図面は提供されていないがソースには、そのように書かれている。基板のパターンも訂正されていないのでパターンカットとジャンパーで筆者がしたであろう状態にしている。予備の基板が一枚あるので、作りたい方は、ジャンパーのみ実施していただく必要がある。パターンカットは実施済。
表示できない文字や配線していないはずの小数点が表示されるなどの挙動がありさらに追及するとニキシー管のソケットナンバリングと向きが想定外になっていて180度異なっていたことが判明した。スペックシートとまったく反転しているのには驚いた。下記のスペックシートをみて、実際のTUBEを正立で見た際に天が12ピンではないのだとは・・・・。
ソケットを180度回すだけの配線の余長があったので幸いでした。
操作キーは秋月の基板を天板のアクリルにとめつけて操作ボタンとLEDを出すことにしたのだが、基板加工機を使ってNCマシンの代行にさせようとしたのだが失敗してしまった。アクリル加工には基板加工とは違って出来るだけ発熱をしないようにしないといけないのだ。ドリル径より大きな穴をスイングしてあけさせようというのは周辺が溶け出してしまいみっともない形になった。1mm程度のドリルで上下の打ち抜きのみをさせるように次回はしたいと思います。
出来上がりを確認してみると1,2,5の文字が表示できないという現象となり74141がおかしいようだ。ついてきたパーツはロシア製の互換チップのK155だったが、中華マーケットに手配をかけたが、いまさら秋葉原にもなさそうなので、入荷したら再開しよう。
原因は、基板のパターン間違いだった。A-Dが入れ替わっていた。途中表示をしなかったのは、10進デコーダの範囲外となっていたからだった。うーん、困ったものでしたがソース修正して無事表示が出るようになりました。
予備の基板がありますので、作りたい方はNIXIE管の手配で作れそうです。
追加のバグ報告 アノードの出力ピンがコネクタ順で時刻の10位と1位が入れ替わっていました。なぜか、この基板設計した人は間違ったままにしていたようです。表示がおかしいので、ソース側で修正しつつ、基板の間違いを確認しました。
作者からソースコードの旧ハード(Revisionなし)に対応するものが提供されましたが、若干の相違があったのでレポートを返しておきました。
時刻表示もOKです
カレンダー表示もOKです
里で利用しているUbunutuマシンは、以前自宅で使用していたATOMが搭載されているShuttleのslim PC XS35だ。mini-PCIにWifiモジュールが搭載さているということだったが、うまく動作していなかったので有線LANで接続していた。RTLのWifiデバイスだったようで、課題があったようでBIOS更新で解決するらしいということで更新しようとしたのだがURLにあるようなダウンロードパスは既に更新されていて最新BIOSらしいものを取り入れることにした。
更新前のバージョンは1.08と立ち上げから確認できた。BIOS更新用に作成するのは最近ではUSBブートメディアだ。BIOS設定の画面からブート順序を確認して最初のブート対象としてUSBドライブが選択されていた。
USBブートメディア作成を実施して、ShuttleのサイトからのBIOS更新用のメディアをコピーして。マシンをリブートすると懐かしいWindows98のスプラッシュが表示され、武骨なDOSプロンプトが現れた。Shuttleからもらったデータに入っていたBATCHファイルでFLash書き換えを実施して更新した。書き換え確認をしようと、ブート中にDELキーを打鍵しても効かなかったが、立ち上がったUbuntuシステムは内蔵WLANを認識してくれました。
14.04LTS
XS35 Shuttle
ちびでぃーのProの書き換えの過程でFuseを誤って書き込みISPでも動作しなくなった。
リセッターの基板(HVPP)を取り出してきて基板もろとも処置しようとしたのだが、対策がいるようだ。
スパゲッティになっている小さな基板がちびでぃーのPro。 真ん中の基板がリセッターです。 リセットに成功するとグリーンLEDが点灯してエラーだと黄色のLEDがつく。 詳細はDEBUGポートにシリアルターミナルをつないで確認する。