2021年08月01日

CASIO のランナーウォッチ PHYS STR-300 のベルト交換

phys1.jpg

カシオのランナーウォッチ フィズ STR-300 は電池は10年持ちますが、バンドは数年で切れます。

phys2.jpg

交換用の純正ベルトは 2500円程度で、並行輸入品の本体が3000円台で買えることを考えると交換するか迷うところです。
そんなときは、Aliexpress。膨大な商品の中から合いそうな物を選びました。

phys_ali.PNG

送料込み US $2.58 で、バネ棒とピン外し工具も付いてました。

2週間ほどで到着。10分足らずで交換できました。

phys3.jpg

純正品と比べれば接続部の厚みが薄く、わずかに幅が短いのですが、
これなら数年で切れてもしょうがないかな。
眠っていた時計が復活して満足です。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2021年07月01日

引き出しにアクリルの仕切りをつけた

引き出し仕切り1.jpg

机の引き出しがごちゃごちゃっとしてたので、半分に仕切ってみたらどうだろうと。

さっそく、10x10x900mmのヒノキの片溝工作棒(溝幅2mm)と2mmのアクリル板をコーナンで買ってきて、卓上丸のこでカット。
引き出し仕切り5.jpg
アクリルの切断はカスがすごいのでお外でやりました。

10mmのスポンジ付き両面テープは見つからなかったので、ハサミでカットして使用。
引き出し仕切り2.jpg
ハサミのフッ素コーティングはそれなりに効果があるようです。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2021年06月01日

電車でGO!コントローラでTSマスコンをエミュレートしてBVEで遊ぶ。

dengo_ts_emu_c.jpg

Bve trainsim というPCで遊べる電車でGO的な鉄道運転シミュレーターがあるのですが、キーボード操作では風情がありませんよね。
ということで、プレイステーション版 電車でGOのコントローラを入手 ※ し、BVEで使ってみることにしました。
※ 勢い余って ワンハンドルタイプ(TCPP-20001)とツーハンドルタイプ(SLPH-00051)の両方をセットで購入。

BVEでマスコン型コントローラーを使う方法は、電車でGOのコントローラに古いタイプのPS2-USBアダプタ組み合わせる方法の他に、Master Controller For Train Simulator(通称TSマスコン)を使う方法もあります。
TSマスコンのインターフェースDLLのソースコードは開発元より公開されていて、動作に必要なコマンドはすべて記載されています。

入力デバイスプラグイン サンプルプログラム

解説記事(ぴよ軒ノート)

ということで、将来的に鉄道模型でも使えるように、電GOコントローラーの信号をArduinoで読み取り、TSマスコンの動作をエミュレートする手法を取ることにしました。

電GOコントローラーをArduinoで読み取るサンプルは、KeKe115さんが github で公開されています
中を見ると、ハンドルの位置は、ボタンの組み合わせで定義されているようです。
このソースをちょちょいと改造して、ハンドルポジションに応じたTSマスコンのコマンドを出すようにしたところ、あっさりとツーハンドルタイプでBVEを遊べるようになりました。
が、ワンハンドルタイプはなぜか動作しません。トライ・アンド・エラーでいろいろ調べたところ、どうやらワンハンドルマスコンはポーリング間隔が約65msを超えるとハンドル位置を取得できないことが判明。(流用元は100ms)
これを修正して無事にワンハンドルでも動くようになりました。
ボタンの状態を取得する処理をいれたついでに全面的に処理を見直したので、見た目はオリジナルからだいぶ離れていますが、概ね同じ処理をしています。
レバーサはセレクトボタン押下で「中立→前進→中立→後退」と遷移するようにしてあります。

github に公開していますのでMITライセンスの元、ご自由にどうぞ。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2021年04月01日

Trackball Explorerの支持球をジルコニア(ZrO2)に交換した

tbe1.jpg

購入から20年くらい経過し、今更感が半端ないのですが、
中国から2mmのジルコニアボールを入手して、支持球を交換しました。

tbe2.jpg

ZrO2かSi3N4(窒化ケイ素)か迷ったのですが、送料込みで安い方(20個で3.18USD)にしました。

Zirconia Ball.PNG

交換後は新品同様の滑り心地となり大満足です。(最初からこうしてくれてればいいのに…)
スイッチ類も生きているので、まだしばらく使えそうです。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2021年03月01日

GOLE1でADALM-PlutoとSATAGENを試してみる。

1.JPG

ja1syk/松本OMに触発されて、GOLE1にSATAGENをインストールしてみました。
自作435MHz BPFをトラジェネモードで測ってみたところ、ちゃんとした測定器で測った値とほぼ同じでした。
固定方法はGOLE1の裏蓋にネオジム磁石で貼り付けただけ…。

2.JPG
3.JPG
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2021年02月01日

2021年01月01日

プラレールの光るスニーカーの電池は交換不可

dy1.jpg

中にLEDが仕込まれていて、走るとLEDが光るスニーカーなのですが、
右足だけ光らなくなったので、電池を交換しようと分解してみました。

dy2.jpg

で、インソールの下の布をハサミで切って強引に取り出してみると
中の制御ユニットは電池も含めて樹脂で固められていて
交換は不可能なようでした。

dy3.jpg

ゴム系接着剤で貼り合わせて元に戻しておきました。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年12月01日

GNU Radio + ADALM-PLUTO を Windows10 + WSL/WSL2 + Ubuntu で使うためのメモ

GNU Radio + ADALM-PLUTO を Windows10/11 +WSL2 + Ubuntu で使うためのメモ

Changed block's category Core to Industrial IO..png

Windowsの機能の有効化または無効化で 「Linux用 Windowsサブシステム」と「仮想マシン プラットフォーム」を有効化
PowerShell で 「wsl --update」でLinux カーネルを更新

Windows Store から 希望のバージョンの Ubuntu を入手、もしくは、そのままPowerShell で wsl --install Ubuntu-2x.04 でインストール
install from store.png

インストールされたら、
sudo apt update
sudo apt upgrade
sudo apt install gnuradio libgtk-3-dev libgl1-mesa-dev xorg-dev
で必要なコンポーネントを入れる。

====== 以下の手順は 2024年4月 以前にWSLをインストール/アップデートした人向けで、WSLg がある場合はうまく動作しません ======

画面を出すために、VcXsrvをインストール
2 VcXsrv download.png
起動時に Disable access control にチェックを入れる
4 disable ac.png


nano ~/.profile
最終行に、
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
を追加。

source ./.profile で再読み込みすると gnuradio-companionが起動するはず。

====== WSLg で動いている場合は、起動はしますが実行時に qt で死にます。2024年10月の記事をご参照ください。 ======

OOT Block を作るために、
sudo apt install cmake liborc-0.4-dev swig
で、ビルドに必要なものを入れたら
任意のOOT Blockをbuildして
sudo ldconfig
とすれば良い。

ADALM-PLUTOは v3.8 では入れ方が異なるので
https://wiki.analog.com/resources/tools-software/linux-software/gnuradio
を見ておく。
この通り入れたら、ビルドは成功したけどカテゴリが core に移動していて
探すのに手間取ったので v3.7 と合わせるようにプルリクエストしておいた。(マージ済み)
https://github.com/analogdevicesinc/gr-iio/pull/89

ということで、WSL2上で Ubuntu18.04 + GNU Radio V3.7と
Ubuntu20.04 + GNU Radio V3.8が共存できましたとさ。
別途Linuxマシンを準備しなくていいので便利です。

ADALM-PLUTOはネットワーク越しに動作しているように見えるので
WSLから扱えます。gr-ad2 は残念ながら動作しませんでした。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年10月01日

公開情報からパーシャルチェックリストを作成する

パーチャルチェックの機能.png

2020年現在、日本のアマチュア無線局数はおよそ40万局ですが、このうち、JARLの国内4大コンテスト(ALL JA, 6m & Down, Field Day, 全市全郡)に 2015-2019の5年間で書類を提出した局は、およそ6000局(7M4MON 調べ)です。
コールサインのアルファベット・数字の組み合わせは膨大な数がありますが、コンテストに参加する局は、ほとんど上記の6000局のコールサインです。
そのため、過去の交信履歴等からある程度の予測と省力化が可能です。
コンテストロギングソフトでは、コールサインの一部を入力すると交信相手のコールサイン候補が表示されるパーシャルチェックという機能があります。
パーシャルチェックではコールサインだけではなくコンテストナンバーの候補も表示されます。
上記の国内4大コンテストのコンテストナンバーは RS(T) + 運用地の都府県・北海道地域番号または市郡区番号+空中線電力を表すアルファベット1文字です。
総務省の無線免許状検索ではコールサインで検索すると常置場所の市区町村名まで分かりますので、コンテスト書類提出局のコールサインとつき合わせて、パーシャルチェックのデータベースを作成しました。

詳しくは github の ctestwin.pck のリポジトリ をご参照ください。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年09月01日

Deskmini用オーディオセレクタ&節電出力I/Fの作成

deskmini_audiosel1.jpg

以前のPCでは休止状態・シャットダウン時にPS/2や内部の5Vからタップのリレーを駆動して
電源を連動させて、ディスプレイやスピーカーの電源を落としていました。
Deskminiでは残念ながらそれらの電源は容易には取得できません。

また、Deskminiはリアのオーディオ出力が無いのでスピーカーとイヤフォンを切り替えるには
フロントの3.5Φのケーブルを差し替える必要がありました。

どうにかならないかと調べると、マイクバイアスは連動して出ているようなので
マイクバイアスでフォトリレー(TLP225A)を駆動させて
BIOS設定によらず何故か出力されているUSBのVBUSでタップのリレーを
制御することにしました。

ついでにオーディオも切り替えるスライドスイッチも付けておきました。
固定はVESAマウントを取り付けるオプションの穴にインチネジで取り付けです。

deskmini_audiosel2.jpg

やりたいことが出来たので概ね満足です。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年08月01日

2020年07月01日

Desk Mini 110 と SST-NT09-115X の組み合わせはバックプレートが干渉する。

バックプレート加工後2.jpg

DeskMini 110 で1台組んだのですが、CPUクーラーのバックプレートが
ヒートシンクに干渉して取り付けできませんでした。
バックプレート干渉2.jpg

しょうがないので、
・超音波カッターでバックプレートをカット(硬い)
・ある程度切ったらラジオペンチでもぎとり、やすりがけ

バックプレート加工前.jpg

で無事に取り付けられました。

マザーボード側のヒートシンクもしくはバックプレートの形状が変わったんでしょうね。
実績があるものを選んだつもりでしたが……
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年06月01日

Windows10の大型アップデートを適用すると Linuxとのデュアルブート環境で grub rescue では救えない場合がある


「Windows 10 May 2020 Update」(バージョン2004)が公開され、WSL2を使いたいがために早速アップデートしたところ
何度か再起動したあとに「error: no such partition.」と出て止まってしまいました。

供試機のパーテーションはちょっと複雑で
[BIOS (Windows10 / Ubuntu 20.04), UEFI (Ubuntu18.04)]となっていました。
Windowsアップデートをすると Windows が Ubuntu 20.04 のパーテーションを触ってしまい
そこにインストールしてあった /boot/grub/i386-pc/normal.mod を
grubが見つけられずに止まってしまうようです。

調べてみると (hd0,msdos6)にLinuxが存在しているようですが、
unknown filesystem.jpg

grubを修復しようとしても error: file 'boot/grub/i386-pc/normal.mod' not found. で normal を指定できずubuntuが起動しません。
i386-pc normal.mod not found.jpg

BIOSで UEFI Boot を Enable として起動すると、Ubuntu18.04 が立ち上がりました。
Ubuntu 20.04 のパーテーションが見えないので嫌な予感です。

fdisk-l.png

grub rescue で見えていた (hd0,msdos6) は
ここにインストールしてある grub が見えていたようです。
どおりでPathが i386-pc ではなく
(hd0,msdos6)/boot/grub/x86_64-efi/
となっていた訳です。

で、Windowsの起動ディスクを作って起動したら
[アップデートの途中で〜〜。クリーンインストールしますか?] → はい >
[トラブルシューティング]> [詳細オプション]> [コマンドプロンプト] で
bootrec /fixmbr
bootrec /rebuildbcd
(rebuildbcd は不要だったっぽい。bootrec /fixboot はアクセスが拒否されて実行できず)
で再起動してアップデートの続きが始まりようやく復活しました。

なお、Windows10の起動ディスクは Ubuntu18.04 での dd コマンドではだめで、
Windowsマシンにisoファイルをコピーして、
rufus でパーティション構成をMBR、ターゲットシステムを BIOS(またはUEFI-CSM)として
USBメモリに書き込んだら起動できました。

で、ディスクの管理を見ると・・・
diskの管理.png
「空き領域」になってる!!!(大泣)

どなたかここから Ubuntu 20.04 を復活させる方法を御存知でしたらコメントください m(_ _)m
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年05月15日

AnalogDiscovery2 と LabVIEW 2020 で オーディオアナライザを作ってみる。

LabVIEW 2020 Community Edition 公開を記念して AnalogDiscovery2 を使用したオーディオアナライザーをLabVIEW 2020を使って作ってみました。
振幅が小さくなると歪み率が悪化する傾向がありますが、(100mVp-pで2.4%程度)
どうやらAD2の実力っぽいので、仕様ということにしておきます。
オーディオ機器の測定には実力不足ですが、アナログ無線機の12dB SINAD感度くらいは測れるのではないでしょうか。

AudioAnalyzer__with__AnalogDiscovery2p_sine.png

AudioAnalyzer__with__AnalogDiscovery2d.png

下記に公開してあります。
https://github.com/7m4mon/AudioAnalyzer_with_AnalogDiscovery2
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年04月02日

EXCEL VBAでGIPOを制御する方法4つ

計測器の自動制御をEXCEL VBAを使用して行う際、リレーの切り替えなどでGPIOを制御したくなることがあります。

そんなとき使える方法を4つ試してみました。
動作環境は Windows10 64Bit + Excel 2010 32bit です。

@.COMポートのRTS, DTR線を使う
シリアルポートにはRTS/CTS, DTR/DSR というフロー制御を行うラインがあり、
これを汎用のGPIOとして使うことができます。
他にも方法はあるかもしれませんが、activecell さんが作成された EasyComm を使用すると簡単です。
Comポートを開いたあと
ec.RTSCTS = True
ec.DTRDSR = True

等とすれば、RTS, DTR線をH/Lすることができます。

A.FTDI の FT232R(など)で Bit-Bang Mode を使う
FTDIの FT232Rなどのチップは、 Bit-Bang Mode というものがあり、信号線を独立して制御することができます。
サンプルプログラムは、西日本常盤商行の Bit-Bang Testサンプルにあります。
専用のGIPOピンがあるわけではなく、Bit7~0 がそれぞれ、 7:RI, 6:DCD, 5:CSR, 4:DTR, 3:CTS, 2:RTS, 1:RXD, 0:TXD に対応します。
秋月電子のAE-UM232R はもちろんOKで、Aliexpressで買った格安モジュールでも動作しました。

B.秋月電子で売っている USBIO-2.0 を使う
秋月電子で売っている USB接続デジタル入出力モジュール USB−IO2.0(AKI)もEXCEL VBAから扱うことが可能です。

バケさんの電子工作 で公開されている vbausbio.dll を C:\Windows\SysWOW64 コピーして、
uio_find で接続と初期化をした後、
Dim OutDat(7) As Byte
OutDat(0) = 1
OutDat(1) = 1
OutDat(2) = 2
OutDat(3) = 0
uio2_out(OutDat(0))

とやれば、GIPOに値を書き込むことができます。
入出力の設定は「USB-IO2.0制御サンプル」で先にしておくのが無難です。

C.SILICON LABS の CP2112 を使う
SILICON LABS の HID USB - SMBus/I2C ブリッジ CP2112 も Excel VBAから制御できます。
サンハヤトの Sample_MMCP2112_MMTXS03 からGPIO4を操作する部分を抜き出し、割と忠実にExcel VBAに移植してみたので、gistにあげておきます。

下準備として、SLABHIDDevice.dll と SLABHIDtoSMBus.dll を C:\Windows\SysWOW64 にコピーし、SLABCP2112.bas をインポートして、オブジェクト名を [CP2112_DLL] にする必要があります。
動作確認は MM-CP2112A を使用しました。

CP2112 vba.png

2020/12/02 追記
旧バージョンの「CP2112_SDK_Windows_XP_Vista.exe」はダウンロードできなくなっているようです。
そのファイルそのものを上げることはできませんが、参考までにCで作成したエクセルファイルをアップしておきます。
CP2112_Test.zip

感想:なんやかんや言っても Excel VBAは まだ現役ですよね。
posted by MON at 00:00| Comment(3) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年04月01日

フォルムのCNCフライス盤キットを復活させた話。

CNC0_MILL.jpg

フォルムのプロクソン マイクロフライステーブル + CNCセットを
2008年の年末で組み立てて、円を描くところまで動作確認を行いましたが
引っ越しやライフイベントが重なり、段ボール箱の中で眠っていました。

2020年の新年会でそんな話をしたところ、使いたいという後輩がいたので、譲る前に動作確認を兼ねて動かしたメモです。

CNCコントロールは、Mach3で行いました。
Windows Vista/7 (32bit)でもパッチを当てれば使えるらしいですが、Windows XP/2000の方が確実な気がします。
制御にはパラレルポート付きのパソコンが必要です。IRQの指定があるので、USB-プリンタ変換ケーブルはたぶん駄目で、PCI-パラレル変換なら行けるかもです。
Thinkpad R60 + アドバンスド・ミニ・ドック (2504) + Windows XP (32bit) は動作OKでした。
ドッキングステーションのパラレルポートと制御基板(アキラシステムのCNC基板3号機)をDsub25ピンオス-オスのケーブルで接続します。
制御基板は1/8マイクロステップに設定されていて、モーター(多摩川精機 TS3617N278)は 1回転あたり200ステップなので、Motor Tuning -> Steps per には1600を指定します。

CNC1_MOTOR_TUNING.PNG

円を描くWizardに対して文字を彫刻するWizardの軸は反転している(?)ので、モーターの Home -> Reversed のYの項目にチェックが必要です。

CNC2_HOMING.PNG

アルファベットの文字を彫るにはWizard -> Write(Text Engraving)を使用するのが便利です。

CNC3_WRITE_WIZARD.PNG

フォントは下記の種類から選ぶことが出来ます。

CNC4_WRITE_FONT.PNG

GCodeを生成するには、CMCに接続した状態で「Write」ボタンを押下します。
このとき、左上の座標は全てゼロにしていないと、開始位置がずれるので注意です。

描画後の終了位置を確認するには、Last Wizardでもう一度開くとX座標の欄に終了時のポジションが表示されます。
問題なければ「Return to Mach3」ボタンで戻ります。ワークから外れていたら文字の大きさやフォントを調整して再度「Write」します。
Gコードが生成されたら、テーブルを手動で動かして原点を合わせ、Resetボタンを押下してフライス盤と接続し、Cycle Startとすれば彫刻がスタートします。Z軸が上がったら忘れずにミルを回転させましょう。

CNC5_NURI.jpg

ホムセンの木材コーナーのイメージに引っ張られてペンキを買ってしまったのですが、アクリル絵の具で十分でした。むしろ屋外用のペンキは粘度が高くて切削時にカスが残るので使いにくい…いっぱいあるのに…
ワークの広さが横120mmは良いとしても、縦が40mmしかないので、制作物はかなり限られます。当時はY軸80mm拡張も販売されていたようですが……


トータルでかかった費用:13万円くらい。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2020年03月01日

14セグメントLEDを使った名札を作る。

浅草橋で去年10月に開催されていた「メーカーズフリマ2019」で、Maenohさんが作製された 8桁14セグLED基板を購入しました。

14seg_tokugawa.gif
(徳川15代将軍を順番に表示していく、全く役に立たないプログラム…)

I2Cの方が配線が楽なので、HT16K33(28ピン)を入手。制御は Arduino Pro mini にしました。
手持ちのタカチのプラケース (SW-130) に入れてみると、ぴったりサイズ。単4電池を2本入れるとギリギリです。低頭ネジでないと干渉してフタが入らないくらいです。
14seg_2.jpg
秋月の5Vの超小型昇圧DCDCとトグルスイッチをつけて、ケースに超音波カッターで窓を開けてハードウェアは完成。
ソフトウェアは基板の作成元が公開されていたものをそのまま使いました。

かかった費用は2000円くらいでした。
説明書などはありませんでしたが、作者が情報を公開されており、問題なく動きました。
posted by MON at 00:00| Comment(0) | 日記 | このブログの読者になる | 更新情報をチェックする
【今是昨非】http://nomulabo.com/