全年9月12日の投稿[8件]
2024年 この範囲を時系列順で読む この範囲をファイルに出力する
本業が忙しい今日この頃ですが、ニシキ工業さんの「UW-B1560N-RO」を使った客席テーブルの寸法出しはしています。
バランスを取るのが難しいですね。座席のアームレストに手前の脚を置く場合、背もたれの傾斜分(150~180mm)脚をオフセットしたいのが私の好みですが、通常のテーブルの脚は四つ角に付いています。奥行き600mmのテーブル面に奥行450mmの脚を取り付けるのがいいのかな?またぐ脚は使用頻度が少ないので捻じ込みでもいいのかな?などと考えていたりもします。
検討中の意匠図です。

#ガチ工作
バランスを取るのが難しいですね。座席のアームレストに手前の脚を置く場合、背もたれの傾斜分(150~180mm)脚をオフセットしたいのが私の好みですが、通常のテーブルの脚は四つ角に付いています。奥行き600mmのテーブル面に奥行450mmの脚を取り付けるのがいいのかな?またぐ脚は使用頻度が少ないので捻じ込みでもいいのかな?などと考えていたりもします。
検討中の意匠図です。

#ガチ工作
2023年 この範囲を時系列順で読む この範囲をファイルに出力する
以下を参考に少し試してみました。
「Programming FTDI devices in Python: Part 1」
Open DMX USB や FT232RL が実装されたデバイスが手元にありませんので何ともですが、pip で ftd2xx をインストールするとVSCode ではそれらしい関数の候補が出ます。候補が出るということはアクセスできる可能性が高いという事です。
> pip install ftd2xx
pywin32 もインストールされます。
「ftd2xx」のサイト見ますと、「ftd2xx は、ctypes を使用した FTDI の D2XX DLL の単純な Python ラッパーです。」とあります。
システムコールを直球で使えるってことだと思われます。
「jlbrogdon/dmx_controller」
ここで使われている関数とは呼び出す文言が違いますが、VSCode で表示される関数の候補にはそれと思われる関数が存在しています。
明日以降になりますが FT232RL が実装されたデバイスを繋げた状態で色々テストしてみましょう。
今考えているアイデアでいけるなら Open DMX USB の制御が Python で完結します。
これはいいかも
「Ftd2xxドライバー説明」
本家の資料では理解出来なかったことが分かりやすく書いてあります。欲しかった資料そのものです。
「ftd2xx.py」
「xiangruili/RTBox_py」
これらの資料で行けそうな予感がムクムク。
ENTTEC 純正の Open DMX USB と DMXチェッカーを事務所に置いてきたことを後悔。
すでに帰宅して呑んでいるので取りに行けませんので明日以降ですね。
それにしても、敷居が高いと思っていた DLL をここまで簡単に使えるとは予想外です。
ドライバに対する DLL があれば、少なくともC/C++なら簡単にアクセスが可能で、それを単純なラッパーにしてしまえば Python からストレスなくアクセス出来てしまうのです。
この辺りの手段は手にしたいですねぇ~。
#Python #器具の製作
「Programming FTDI devices in Python: Part 1」
Open DMX USB や FT232RL が実装されたデバイスが手元にありませんので何ともですが、pip で ftd2xx をインストールするとVSCode ではそれらしい関数の候補が出ます。候補が出るということはアクセスできる可能性が高いという事です。
> pip install ftd2xx
pywin32 もインストールされます。
「ftd2xx」のサイト見ますと、「ftd2xx は、ctypes を使用した FTDI の D2XX DLL の単純な Python ラッパーです。」とあります。
システムコールを直球で使えるってことだと思われます。
「jlbrogdon/dmx_controller」
ここで使われている関数とは呼び出す文言が違いますが、VSCode で表示される関数の候補にはそれと思われる関数が存在しています。
明日以降になりますが FT232RL が実装されたデバイスを繋げた状態で色々テストしてみましょう。
今考えているアイデアでいけるなら Open DMX USB の制御が Python で完結します。
これはいいかも
「Ftd2xxドライバー説明」
本家の資料では理解出来なかったことが分かりやすく書いてあります。欲しかった資料そのものです。
「ftd2xx.py」
「xiangruili/RTBox_py」
これらの資料で行けそうな予感がムクムク。
ENTTEC 純正の Open DMX USB と DMXチェッカーを事務所に置いてきたことを後悔。
すでに帰宅して呑んでいるので取りに行けませんので明日以降ですね。
それにしても、敷居が高いと思っていた DLL をここまで簡単に使えるとは予想外です。
ドライバに対する DLL があれば、少なくともC/C++なら簡単にアクセスが可能で、それを単純なラッパーにしてしまえば Python からストレスなくアクセス出来てしまうのです。
この辺りの手段は手にしたいですねぇ~。
#Python #器具の製作
Open DMX USB を扱うには FTD2XX.dll をコールするのが肝らしい。
チンプンカンプンな領域なのでこれから勉強ですが、次のサイトがヒントになりそう。
「PythonからDLLを使う」
「Python から DLL を利用する」
「C++で書いたコードをPythonで動かすには【pybind11】」
以下も参考になりそう。
「USBを使って制御できるリレーモジュールをpythonで動かしてみる」
「Programming FTDI devices in Python: Part 1」
上記の記事と以下を合わせるといけるのかな?
「jlbrogdon/dmx_controller」
#Python
チンプンカンプンな領域なのでこれから勉強ですが、次のサイトがヒントになりそう。
「PythonからDLLを使う」
「Python から DLL を利用する」
「C++で書いたコードをPythonで動かすには【pybind11】」
以下も参考になりそう。
「USBを使って制御できるリレーモジュールをpythonで動かしてみる」
「Programming FTDI devices in Python: Part 1」
上記の記事と以下を合わせるといけるのかな?
「jlbrogdon/dmx_controller」
#Python
ENTTEC 純正の Open DMX USB を入手しました。
しかし、先日調べたネタではデバイスの認識すらしません。README.md を読み返したところRaspberryPi用でした。動かなくても仕方ない。
調べ直したところGitHubに次の様なモノがありました。
「PyOpenDmxUsb」
README.md を読む限り、Windows 上の Python で Open DMX USB を扱う代物のようです。
使い方が少し難しいようですが、調べてみる価値はありそうです。
追記
「PyOpenDmxUsb」
は予想外に簡単でした。
1)pip で pywin32 をインストール
> pip install pywin32
2)GitHub からダウンロードしたファイルを メインの Python ソースがあるフォルダにまとめる。
・フォルダ「PyOpenDmxUsb-master」内の「C#」フォルダにある「DMXServer.exe」。
・フォルダ「PyOpenDmxUsb-master」内の「Python」フォルダにある「DMXClient.py」。
あとは、サンプルプログラムを参考にソースを書きます。
from DMXClient import DMXClient
import time
dmxClient = DMXClient("PODU")
dmxClient.connect()
while True :
for i in range( 256 ) :
try :
dmxClient.write([1, i, 2, i])
time.sleep( 0.1 )
except KeyboardInterrupt:
dmxClient.close()
break
break
DMX の アドレス001とアドレス002をカウントしていくだけの動作を確認出来ました。
コマンドコンソールか PowerShell から DMXServer.exe を起動してから上記の Python コードを実行します。
> .\DMXServer -n PODU
この後、別コマンドコンソールから Python コードを実行します。
DMXServer.exe を起動してから本プログラムを実行する手順が少し面倒だし Python らしくない。
出来ることなら Python モジュールとして import して使えるようにしたいと思います。
DMXServer.exeのC#ソースが付属しているので、これを参考に Python モジュールを作れたらいいのかな?
#器具の製作
しかし、先日調べたネタではデバイスの認識すらしません。README.md を読み返したところRaspberryPi用でした。動かなくても仕方ない。
調べ直したところGitHubに次の様なモノがありました。
「PyOpenDmxUsb」
README.md を読む限り、Windows 上の Python で Open DMX USB を扱う代物のようです。
使い方が少し難しいようですが、調べてみる価値はありそうです。
追記
「PyOpenDmxUsb」
は予想外に簡単でした。
1)pip で pywin32 をインストール
> pip install pywin32
2)GitHub からダウンロードしたファイルを メインの Python ソースがあるフォルダにまとめる。
・フォルダ「PyOpenDmxUsb-master」内の「C#」フォルダにある「DMXServer.exe」。
・フォルダ「PyOpenDmxUsb-master」内の「Python」フォルダにある「DMXClient.py」。
あとは、サンプルプログラムを参考にソースを書きます。
from DMXClient import DMXClient
import time
dmxClient = DMXClient("PODU")
dmxClient.connect()
while True :
for i in range( 256 ) :
try :
dmxClient.write([1, i, 2, i])
time.sleep( 0.1 )
except KeyboardInterrupt:
dmxClient.close()
break
break
DMX の アドレス001とアドレス002をカウントしていくだけの動作を確認出来ました。
コマンドコンソールか PowerShell から DMXServer.exe を起動してから上記の Python コードを実行します。
> .\DMXServer -n PODU
この後、別コマンドコンソールから Python コードを実行します。
DMXServer.exe を起動してから本プログラムを実行する手順が少し面倒だし Python らしくない。
出来ることなら Python モジュールとして import して使えるようにしたいと思います。
DMXServer.exeのC#ソースが付属しているので、これを参考に Python モジュールを作れたらいいのかな?
#器具の製作
2022年 この範囲を時系列順で読む この範囲をファイルに出力する
茨城県沖に世界でも屈指の規模の油ガス田がありそうだとのこと。
地元のこんな話は嬉しいですね。
程度はともかく、茨城県には日本国内のどこかにある自然、資源、産業、施設が一通りあります。食材も全国No.1の生産量を誇る物が多く、北海道に続いてNo.2も驚く程多い。意外なのは日本酒の生産量が圧倒的なNo.1であること。無いのは活火山とサンゴ礁くらいでしょうか。そこに「原油生産世界一」なんて追加されたら悪い気はしません。
こんな地の利の割に心意気や地域の歴史や文化に自慢出来るところがありませんので「何でもあるけど何にもない所」と勝手に呼んでいます。魅力度ランキングが物語っているのでこれ以上はいいか(笑
話を戻しますが、原油をほぼ100%輸入に頼ってきた日本にこんな資源があるとは驚きです。採掘には高度な技術と莫大な投資が必要でしょうが、採算がイマイチでも採れるという事実を構築すべきです。十分に喰って安心して寝られることがより良い生活の基本ですが、ロシアとウクライナの件に影響を受けているヨーロッパ各国の様子を見るなら、資源と農畜水産物を十分に確保することは重要だと思うのです。
戦争などあってはいけませんが、無いことと足元をみられることがそれを引き起こす原因であることは多いので、社会を維持するのに最低限必要なモノを自国内で確保することは平和を維持するためにも必要なことでしょう。身勝手な欲張りが欲しがらない程度ってのも大事かもしれませんケド。
#雑談
地元のこんな話は嬉しいですね。
程度はともかく、茨城県には日本国内のどこかにある自然、資源、産業、施設が一通りあります。食材も全国No.1の生産量を誇る物が多く、北海道に続いてNo.2も驚く程多い。意外なのは日本酒の生産量が圧倒的なNo.1であること。無いのは活火山とサンゴ礁くらいでしょうか。そこに「原油生産世界一」なんて追加されたら悪い気はしません。
こんな地の利の割に心意気や地域の歴史や文化に自慢出来るところがありませんので「何でもあるけど何にもない所」と勝手に呼んでいます。魅力度ランキングが物語っているのでこれ以上はいいか(笑
話を戻しますが、原油をほぼ100%輸入に頼ってきた日本にこんな資源があるとは驚きです。採掘には高度な技術と莫大な投資が必要でしょうが、採算がイマイチでも採れるという事実を構築すべきです。十分に喰って安心して寝られることがより良い生活の基本ですが、ロシアとウクライナの件に影響を受けているヨーロッパ各国の様子を見るなら、資源と農畜水産物を十分に確保することは重要だと思うのです。
戦争などあってはいけませんが、無いことと足元をみられることがそれを引き起こす原因であることは多いので、社会を維持するのに最低限必要なモノを自国内で確保することは平和を維持するためにも必要なことでしょう。身勝手な欲張りが欲しがらない程度ってのも大事かもしれませんケド。
#雑談
とまぁ、バックアップは正常に機能するようになったのですが・・・
長期間バックアップしていなかったのと、過去10年以上のデータをアーカイブ化して入れ物を変えたので24時間経っても初回動作が終わらない。
動作チェックには丁度いいっちゃいいのですが、ネット経由なのでまだまだ終わりそうにありません。
#サーバー
長期間バックアップしていなかったのと、過去10年以上のデータをアーカイブ化して入れ物を変えたので24時間経っても初回動作が終わらない。
動作チェックには丁度いいっちゃいいのですが、ネット経由なのでまだまだ終わりそうにありません。
#サーバー
レゲエのフェスは天候にも恵まれ平穏無事に終わりました。
本番10時間の2デイスでしたが、交代しながらの本番対応だったので長い休憩がありました。
クラシックバレエやオペラの現場が控えているのでその準備を進めたかったのですが、超爆音のレゲエを聞きながらクラシック系のことを考えるなんて無理ムリ。
なので、久しぶりにサーバーのガチメンテをしてました。SSHやVPNで遠隔操作が出来るので場所を選ばず操作出来ます。
本当に久しぶりのガチメンテでしたが、いろんな問題が出てくる出てくる。
一番の問題はVPNを介した遠隔ファイルバックアップが止まっていたこと。サーバー間をVPNで繋いでいたのですが、バックアップ側のTLS(認証の暗号化処理)が古くてVPNが接続していなかったのです。つまり、本体のOSをバージョンアップしてから数か月間バックアップが機能していなかったというオチ・・・。バックアップですから本体が堅調なら問題ないのですがコレはよくない。
ところが、調べてみたらTLSを新しくするにはOSそのものをバージョンアップしないといけないとのこと。遠隔でやるのは怖いけど、主システムとは無関係なサポートサーバーなので落ちてもいいから作業を進める。幸い素直にバージョンアップが済んでVPNも復活しました。debianを使っていますが、バージョンアップはコマンドを3つ走らせるだけなので簡単。ただし、時間がかかるのに途中で質問に答えねばならんので付きっ切りになるのは頂けませんが・・・。
こんなことがあると欲しくなるのがエラーを知らせてくれる何か。今回の場合は「バックアップに問題あるかもよ!」というシンプルなお知らせ。実行結果を診断して自動的に送信されるメールってことになるでしょうか。
Linuxは凄いと思ったのがこういった処理。bashと呼ばれるコマンドラインにはメール送信機能が普通にあります。単なるコマンドラインですから、cronで直接実行も可能ですし、cronから呼び出されるスクリプトファイル(古い言い方ですとバッチファイル)に仕込んでおいてもいい。私ごときがやりたいと思うことの大半はbashで出来ちゃうLinux。難しいのは数多ある機能を知ることと使いこなすことでしょうか。
ちなみにシンプルなテキストメールを送るだけならこんな感じ
$ /bin/echo -e "メッセージ本文" | /usr/bin/mail -s "メールのタイトル" root
rootってのは固定されたシステム管理者のアカウント名。この場合は宛先になりますが、これだけでは誰にも転送されません。メールデーモンにroot宛のメールを転送する設定をしなければなりませんが、転送すればスマホでも何でも受信出来ます。
コマンドの間にある"|"はパイプと呼ばれる機能です。上記ではechoで出力された文字列をmailに本文として引き渡すという意味になりますが、シンプルながら応用の幅が無限大なこんな機能を考えた人は天才。
さらにです、バッククウォート(日本語キーボードならシフトキーを押しながら[@]キーで出るチョン)で囲めばコマンドの返り値をメール本文にも出来るそうな。
$ /bin/echo -e `/bin/date` | /usr/bin/mail -s "日時" root
これはdateという現在日時を表示するコマンドの結果をメールするだけですが、固定されたテキストもコマンドを実行した結果も区別無く扱えるということです。
bashでのテキストの扱いには正規表現に代表される難解さがありますが、パイプと合わせてこの辺りを覚えたら驚くほど色んなことが出来ます。
[コマンドを実行] → [その結果を判別] → [管理者へメッセージを送信]
こんなことが特別なアプリを使うことなくコマンドラインの組み合わせで出来てしまうのです。シンプルなモノをシンプルな方法で組み合わせて無限の可能性を産むと言ったら言い過ぎでしょうか。
コンピュータを扱うことにかけては神レベルの天才達が作ったとはいえ、LinuxというかUNIXは本当にスゲー。
#サーバー
本番10時間の2デイスでしたが、交代しながらの本番対応だったので長い休憩がありました。
クラシックバレエやオペラの現場が控えているのでその準備を進めたかったのですが、超爆音のレゲエを聞きながらクラシック系のことを考えるなんて無理ムリ。
なので、久しぶりにサーバーのガチメンテをしてました。SSHやVPNで遠隔操作が出来るので場所を選ばず操作出来ます。
本当に久しぶりのガチメンテでしたが、いろんな問題が出てくる出てくる。
一番の問題はVPNを介した遠隔ファイルバックアップが止まっていたこと。サーバー間をVPNで繋いでいたのですが、バックアップ側のTLS(認証の暗号化処理)が古くてVPNが接続していなかったのです。つまり、本体のOSをバージョンアップしてから数か月間バックアップが機能していなかったというオチ・・・。バックアップですから本体が堅調なら問題ないのですがコレはよくない。
ところが、調べてみたらTLSを新しくするにはOSそのものをバージョンアップしないといけないとのこと。遠隔でやるのは怖いけど、主システムとは無関係なサポートサーバーなので落ちてもいいから作業を進める。幸い素直にバージョンアップが済んでVPNも復活しました。debianを使っていますが、バージョンアップはコマンドを3つ走らせるだけなので簡単。ただし、時間がかかるのに途中で質問に答えねばならんので付きっ切りになるのは頂けませんが・・・。
こんなことがあると欲しくなるのがエラーを知らせてくれる何か。今回の場合は「バックアップに問題あるかもよ!」というシンプルなお知らせ。実行結果を診断して自動的に送信されるメールってことになるでしょうか。
Linuxは凄いと思ったのがこういった処理。bashと呼ばれるコマンドラインにはメール送信機能が普通にあります。単なるコマンドラインですから、cronで直接実行も可能ですし、cronから呼び出されるスクリプトファイル(古い言い方ですとバッチファイル)に仕込んでおいてもいい。私ごときがやりたいと思うことの大半はbashで出来ちゃうLinux。難しいのは数多ある機能を知ることと使いこなすことでしょうか。
ちなみにシンプルなテキストメールを送るだけならこんな感じ
$ /bin/echo -e "メッセージ本文" | /usr/bin/mail -s "メールのタイトル" root
rootってのは固定されたシステム管理者のアカウント名。この場合は宛先になりますが、これだけでは誰にも転送されません。メールデーモンにroot宛のメールを転送する設定をしなければなりませんが、転送すればスマホでも何でも受信出来ます。
コマンドの間にある"|"はパイプと呼ばれる機能です。上記ではechoで出力された文字列をmailに本文として引き渡すという意味になりますが、シンプルながら応用の幅が無限大なこんな機能を考えた人は天才。
さらにです、バッククウォート(日本語キーボードならシフトキーを押しながら[@]キーで出るチョン)で囲めばコマンドの返り値をメール本文にも出来るそうな。
$ /bin/echo -e `/bin/date` | /usr/bin/mail -s "日時" root
これはdateという現在日時を表示するコマンドの結果をメールするだけですが、固定されたテキストもコマンドを実行した結果も区別無く扱えるということです。
bashでのテキストの扱いには正規表現に代表される難解さがありますが、パイプと合わせてこの辺りを覚えたら驚くほど色んなことが出来ます。
[コマンドを実行] → [その結果を判別] → [管理者へメッセージを送信]
こんなことが特別なアプリを使うことなくコマンドラインの組み合わせで出来てしまうのです。シンプルなモノをシンプルな方法で組み合わせて無限の可能性を産むと言ったら言い過ぎでしょうか。
コンピュータを扱うことにかけては神レベルの天才達が作ったとはいえ、LinuxというかUNIXは本当にスゲー。
#サーバー