2020年9月20日日曜日

次なるお遊びは・・・

 まず手持ちのガジェットで使途を考える

1)RaspberryPi B : SoCのパワーもないしBGMでそんなに高音質なものも求めないのでUSB-DACと組み合わせて我が家のオーディオシステムの中に戻してVolulmioで時折音楽をたのしむのに使う。

2)Raspberry Pi ZeroWH:NFJの5102A使用のDACでハイレゾ音楽再生に使おうかと思っていたけどUSB-OTGでlinuxで遊ぶ方が面白いので当面はこちらにする。zero系はいざというときに画面を用意するのに苦戦しそうなのでDACの繋ぐならraspi4のほうが良いと思う。
ちょっと気が付いたのだけどOTG経由でrpzにつなぐようにしてからWSL Terminalが起動しなくなった。これは要調査。それとインターネットの共有でWifi無しでも使えたら無印Zeroが使えるのに・・

3)arduino uno : atmegaなどのROMライターとしても使えるので手持ちで・・・

4)ESP8266:完成度の高いcpm8266とarduino ideで実験できるunitとして各種実験用

5)nucleo stm32-f401re: arduino ideで書いてみたらFPUが使われていないっぽいのでmbedでも利用してみてから考える。いいと思うのだがwio terminalとSoCがダブるので中途なイメージ

6)wio terminal:microSDを奢ってruncpmを試したりいろいろと書けそう
  5)と同様FPUを使いこなしたい

気になっているパーツはESP32でRAMを活用すると面白いのか?

それと手持ちのガジェットの有効活用を本気で考えるのならやはりmacbook pro(2014)をどうにかしないともったいない

2020年9月7日月曜日

raspberry pi zeroの環境を設定したよ

 ガジェットでarduino ideで共通のソースでベンチして遊んでいたんだけど

やはり限界もあってraspberry pi 系も遊ばなきゃってことで環境を設定して使えるようにした。

USB-OTGでSSHでターミナルからログインできるようにしてみた。

これだけでaptによるソフトウェアのインストールとかできるのかと思ったけど上手く行かない。とくにこだわりもなかったのでwifiに繋げてあげてdnsが効くようになったらaptできた。

母艦とのファイル交換がめんどくさいのでWinSCPでファイルのやり取りが出来た。



調子に乗ってVNCもやろうとしてみたけど最初に弄っていたころの設定が邪魔するのかうまくいかない。まあ上記でc言語やpythonのソースをPC側で書いたものを送って実行することはできるので急がずに楽しんでやっていきたい。

2020年9月6日日曜日

ちょっとガジェットに触れてみた。

すべてarduino ideで同じasciiart.inoを使って手持ちのガジェットを使ってみた。
 結果は
    aurduino uno (16MHz) 1093mS
    esp8266        (80MHz)  172mS
    nucleo F401RE (84MHz) 185mS
    wio terminal  (120MHz) 284mS
どうにもwio terminalの遅さが腑に落ちない。

 F401REとwioはFPU付きだからクロック比よりもっと早くていいと思う。 

まだまだ知らないことが多いのう。
 nucleoはコンパイル時間が永い。
 wioはLCDがついているのでいろいろと遊んでみたい。

2020年8月30日日曜日

遊ばなきゃ!~デジタル小物を愛でる

ここのところコーディング三昧で楽しかったけど、欲求不満。  

やはり電子工作的なことを楽しみたい。
 ここのところ触れてなかったデジタル・ガジェットを弄りたい。
 新しいのを買うばかりなのもつまらないので手持ちのものを再検証。

手持ちのデジタル・ガジェットたち
全てUSBはついている
なまえSoCClockFlashROMRAMIO
Arduino UnoATmega32816MHz32KB2KBEEPROM 1KB
ESP8266Xtensa LX10680MHz4MB96KBwLAN(技適無・NG)
Nucleo F401REARM Cortex-M484MHz512KB96KB
Wio TerminalARM Cortex-M4(+FPU)120MHz512KB192KBLCD,WLAN,μSD
Raspberry pi 1BARM1176JZF-S700MHz512MBSD
RasPi ZeroWHARM1176JZF-S1GHz512MBWLAN,μSD

ちょっと表が本文エリアからはみ出そうだけどまあいいか
とりあえずはraspizeroとnucleoをいろいろ弄ってみよう。
まずはRaspberry pi zeroをusbケーブルだけで使えるようにセットしてみる。

2020年8月14日金曜日

Excelでデータベース ~ 或いは今更のADO ~

 最近Excelを扱うプログラムをいくつか書いた

で、Excelでデータベースが扱えたら便利な気がした。

思い出したのがadodbを使えば楽にSQL構文でいろいろなデータソースを扱えるということ。

※そもそもaccessのVBAで書いていたころはあまりスピードも変わらなかったし別のリソースを読みこむということもなかったのでadoを使わず専らdaoを使っていた。フィールド名などのデータ構造もdaoであれば一元で扱えた。adoだとadoxが必要になる

で、recordsetの扱いとしては比較的似たコードになるとはいえ今更ながらのado入門(正確には最初にどちらかにするために弄ったときに一通りは書いたので再入門)を果たすこととなった。

こちらのサイトなどを参考にさせていただきつつExcelでいくつかの条件を付けてSQLを流してシートに抽出するマクロを用意した。

元データとしては「なんちゃって個人情報」さんで5000行のcsvを利用

いろいろと条件を変えつつベンチをとってみたがどうしても単一のテーブルからwhereで条件をつけてデータを抜くような単純なものになるので結構実行速度は速かった。またそのような使い方ではデータベースソースを置く媒体(SSD,HDD,NAS,USB,MO)でさほど速度も変わらなかった。
(例外的にMOでだけaccdbが遅くなったがもっとも複雑な構造なので遅い媒体上では不利なのかもしれない。)

皮肉なものでaccessでCOMを使って裏でexcelを起動してxlsxのファイルなどを作成・更新する時間が惜しいので速くなる方法を調べていてtransferspreadsheetに行き着いたんだけどc#ならclosedXMLでexcel無しに直接ファイルを操作できるので速いのにって調べているうちに小さなシステムで顧客の各PCにはaccessはないのだしexcelのファイルをexcelのマクロで扱う方が起動時間の分速くなるかなって思って考えているうちに今回の仕儀とあいなりました。こういう情報もあることだしexcelである程度まとまったデータはadoで扱おうと思う。

2020年7月19日日曜日

いまさらrubyをインストールした

最近のメイン開発機になっているdellに本当にいまさらなrubyを入れた。

pythonあるのでいらないと思うし今後の発展はコミュニティの感じからしてちょっと期待できないかもだけど、最近wslでawk触るのが増えて「あ、これrubyだと楽なんじゃね」と思うときもあって実際、ワンライナーとか楽しく使えるんで感謝なのだ。
で、ものはついでとdellの表(Windows側)に入れてなかったので導入。
まあ、利用シーンは多くはないけどとりあえず。
サイズをみたら「Ruby27-x64」で、msysでちょうど1GBぐらい。
まあ今後のSSDの容量の減り具合を見て消すかもしれないけど・・・

むしろwslでshell+sed+grep+awkの世界の方が楽しいのかも・・
で、pythonはワンライナーはおいらの力じゃ遠く及ばず書けないけどvscodeの力とか借りれば小さなツールは作れるので人に利用してもらうときはそれで・・・
rubyでまとまったコードを書くことはあんまりないけど思い付きでちょこちょこ書きたいときあるよね。
ずっと使うんじゃなくてその場で使い捨てるワンライナーに毛の生えたようなやつ。
あれ、書きたいんですよ、rubyで。
vs codeでcode runnerいれてるんだけどvbとかコンパイル系は引っかかったりするんですな。
やはりcode runnerに似合うのはスクリプト系だよな

(200925)あれから2か月、新しいネタと思っていろいろ試す中rubyの新ネタは入ってこない。
rubyでできることで僕が書けるようなことは基本、他の言語でも書けるのでrubyを書き始める瞬間がこの期間に全くやってこなかった。もう心は古代のBASIC達と同じようにいつでも消せるような感じになっている。言ってみれば冷めたって感じかね。なんだか寂しい。
前はあれだけrubyって凄いって燃えたのになぁ 飽きっぽいのが悪いのかな

2020年7月12日日曜日

ついに改心したのか?!C#三昧 週末すらpython+DjangoでWebシステムの研究

ここしばらくまともなコンピューティングをしていた。

客先のシステムの問題解決にExcelやAccessのVBAを触ったり
今後のためかつAccess未導入の環境でもRunTimeを入れずにデータベースシステムを稼働させるべくC#でデータベース系の演習を繰り返した。
週末は別のことをすると決めていたのでそれすらpython+DjangoでWebシステムの研究というか演習にあてていた。

しかし時折鎌首をもたげてくる衝動があってついに我慢できなくなって
今日はWSLの環境にあわせて使用できるターミナルを導入した。
導入したターミナルソフトはその目的の通りWSL Terminalだ。
導入の動機は最初WSLを入れたころはWindowsのGUIとVcXsrvでX11のGUIを共存して使えたら面白いと思っていた。
しかしLinuxってやはりCUI中心の環境だしLinux側で作るGUIなんて使わないんですね。もっとLinuxオンリーになったら使うのかもしれないけど現状はWindowsネイティブのGUIのほうが楽チン。
で、せめてLinuxのターミナルぐらいは・・って考えても漢字の変換があんまり芳しくない。
ターミナルの呼び出し前にfictx-mozcのautostartとか必要だったりあんまり使ってて楽しくないのだ。むしろubuntuのwsl標準ターミナルの方がWin側のIMEが使えるので楽だったりする。
最近はLinuxのHomeをwinの指定の場所にできたりするのでvs codeで弄ってvs codeのなかで呼び出すターミナルのシェルをwslのbashに指定できたりするのでますますwslのGUIが必要だと思えなくなっている。
言語遊びのためならCUIで十分だもの
実際のところmonoでvbとかcsで開発するのならvs code+wsl bashでfdcolneとか動かしたらlinuxの開発環境は僕には不要に思える


しかしねWSL Terminalはいろいろと楽しませてくれるのです。
このブログでもかなり前に取り上げたsixelグラフィックが扱えるらしいんです。ちょっと活用を考えてみます。

(200713)昨日の上の記述でvs codeでwslのshをコンソールで呼べるから便利とかほざいてちょっと得意げだったんですが(それすらおいらの手柄じゃないから)
こんな記事を発見。なんかvs codeにremote-wslって機能が付加されてたみたい。ネイティブでx11で動くvs codeをwin側とは別に用意するようなアプローチよりはずっとスマートでいい感じ。ますますwslに嵌りそう。

dosvaxj3が更新されていた。

 最近、エミュレータ系をあまり触っていなかったのだけど久しぶりに見てみたらタイトルのようにdosvaxj3が更新されていた。 on emulatorでセルフにcなどのソースを書いて実行するのに母艦側の特定のフォルダをドライブとしてマウント出来たり普通に母艦のimeで漢字が入力でき...