🗐 電装工芸日記 - 舞台照明機器の製作とか -

能登半島地震で被災された方々にお見舞い申し上げます。

or 管理画面へ

タグ「RaspberryPi」を含む投稿(時系列順)[60件]

Icon of admin
 ライトアップや客席テーブルver4.5などの取り急ぎの物件に区切りが付いたので、Art-Netの実験を始めていこうかなと。
 その為にもRaspberryPiの整備からです。7インチの公式タッチパネルディスプレイを使った開発機を組みましょう。

#[Art-Net] #[RaspberryPi]
Icon of admin
 公式7インチディスプレイを使ったRaspberryPiの開発機を作ろうとしていますが、自分で部品を作るのは面倒なので公式のケースをオーダーしました。
Raspberry Pi 4B 専用 & 7インチ タッチスクリーン液晶用ケース 公式メーカー
 イチイチお金がかかるのは問題ですが、基板や配線を保護する筐体を3Dプリンタで自作すると設計とプリントで膨大な時間がかかりますし、消費するフィラメントのコストも無視できませんので、これならいいだろうといったところです。

 公式ディスプレイを用いる主な理由は将来的な入手性です。一般的に部品としてのモニタパネルは足が早く、1年後に同じ物が手に入らないなどザラですが、公式品なら数年後でも同じ物が手に入る可能性が高いと思うのです。
 解像度は800x480ですが組み込み用途なら不足でもありませんし、タッチパネル機能を加味すれば安価な部類です。公式品ですから接続に不安もありません。
 何よりも、組み込みとして作る場合にワイヤリングのメリットがあります。HDMIやUSBで接続となるとパッケージする際にコネクタ類が邪魔になりますが、専用のリボンケーブルならスッキリ収納出来ます。

#[RaspberryPi]
Icon of admin
 ケースが入荷したので、開発機のRaspberryPiを組みました。
 寸法ズレが酷いケースですが、ネジ穴を調整して収める物が収まりました。
 配線の保護は期待通りなのでいいかなぁ・・・と思いつつ、価格の割に酷いので二度と買わないと思う。
 今はアップデート中なので電源を切れませんが、ACアダプタで使える様にDCコネクタを付けて可搬性を高めましょう。電源は専用USB端子ではなくGPIOに入力した方が何かと良いのです。

 ・・・と、DCコネクタのハーネスは作りましたが、ケースに穴を空けるドリルが手元にない。
 日を改めて仕上げます。

#[RaspberryPi]
Icon of admin
 本業も工作も取り急ぎの課題が無い状況です。精神的に追われる感覚が無いのは久しぶりです。
 Art-NetをRaspberryPiで扱う研究の準備は進めていますが、気持ちとしてはユッタリしております。
 ヒマってことは稼ぎが無いことでもあるので、あまり良い状況でもないのですが・・・

 Art-Netを扱うRaspberryPiでは同一ゼグメントのIPアドレスを振った2つ以上のNICを別ゾーンとして扱うことが肝になります。入力のArt-Netと出力のArt-Netを1つのRaspberryPiで扱うには必要条件です。
 この状態はサーバーやネットワークを複雑に組むと発生し得ることなので可能だと思うのですが、私が適切な設定やプログラミングを出来るかは別問題なので、その研究というか勉強をするワケです。

 となると、実験用に複数のRaspberryPiが必要です。
 1台は公式7吋モニタで組んだ方が後々の表示作りで都合が良いと思いますが、他はモニタを持たずにSSHでアクセス出来れば済むので、数台をまとめられる箱もあるといいですね。
 この様な箱は既製品にもあるにはありますが、RaspberryPiを束に出来るだけで、電源が考慮されいないだけでなく組んでしまうとGIPOに触りにくい状態になります。これじゃダメです。
 作るのも面倒なので改めて探してはみますが、キレイにカットしてキレイに塗装した1枚板に必要な物を取り付ければそれでもいいのかな?とも思っております。

#[Art-Net] #[RaspberryPi]
Icon of admin
 Art-Netを扱うためにはNICのアドレスを設定しなければなりません。
 手計算した値をOSに手打ち設定をしてもいいのですが、どうせなら自動設定にしたい。NICのMACアドレスとArt-NetのOEMコードがわかれば人が判断する要素は無く計算も単純なのですから。
 アプリケーションはPythonで書くつもりですが、OSの自動設定はbashスクリプトで書くのが自分流です。なぜなら、PythonでOS設定を変更すると結局はbashコマンドを発行するのですから同じ事です。なんでもかんでも高級言語を使えばいいってもんでもないんです。
 やることは、MACアドレスを文字列で取得し、必要な部分を切り出し、一部の文字列を数値に変換して計算し、IPアドレス起こしてコマンド文字列を作って実行するだけです。Linux(UNIX)は標準コマンドだけでこういったスクリプトを簡単に作れます。
 わたしはググってコピペするだけですけどね。

#[Art-Net] #[RaspberryPi]
Icon of admin
 現場での長い待ち時間でArt-Netのアドレスを自動設定するスクリプトを書いてみました。動作確認は自宅でないと出来ませんが、設定ファイルには適切に書き込みがされていると思います。OEMコードは聞き馴染みがないメーカーさんのを拝借してテストを進めます。
 RaspberryPiの7インチモニタと一体型ケースは良い感じです。ほとんどの操作はssh経由でパソコンから行うので、起動ログが読めて配線を守ってくれたら当面は十分です。

追記
 自宅で動作試験とバグ取り。問題なし。
 Rasbianにドライバが入っているUSB-etherを購入し、2つ目のNICを構成したらPythonの試験プログラムを作成開始です。

#[RaspberryPi]
Icon of admin
 2つ目のNICも動作OKと思われます。
 将来的にwi-fiでも送信したいので出力側のNICをブリッジ接続にしました。ブリッジ接続とは複数のNICを束ね、内部からは1つの仮想デバイスとして扱う方法です。ハブを作る方法でもあります。
 wi-fiはhostapdでルーター化してブリッジに組み入れることができます。試験的ではありますが、ウチのwi-fiルーターの1台はこの方法を用いてRaspberryPiで作ってあります。
 Pythonのsocketの動作が実デバイスと仮想デバイスで違いがあるとは思えないけれど、最初から仮想デバイスでやっておけばいいかなと。

#[RaspberryPi]
Icon of admin
 またしても現場にて長い待ち時間。
 DMXのパケットデータを表示するプログラムを作成中。ANSIエスケープシーケンスを用いた表です。
 試験用ではありますが、データを表示する何ががあると開発が進め易いと思われます。

#[RaspberryPi] #[Python]
Icon of admin
 ANSIエスケープシーケンスを組んでて思ったのですが、大昔のN-BASICみたいだなと。書式こそ違いますが、COLOR命令やLOCATE命令を思い出す風味です。N-BASICリアル世代。
 ANSIエスケープシーケンスはテキスト画面の制御コードを文字列としてprintします。画面の文字を消去しろとか、カーソル位置を何処にしろとか、引き続いて表示する文字列の色をどうしろとかを命令ではなくコードで渡すのです。大昔のVT100などで用いられたテキスト表示の制御方法ですが未だに使えるとは驚きてす。さすがUNIXの末裔。

#RaspberryPi
Icon of admin
 ANSIエスケープシーケンスですが、RaspberryPi上のPythonでは期待する動画が出来ないかもしれません。形にはなるのですがチラつきます。
 開発作業用と画面の試作を兼ねてDMXスロットの値を一覧表示する画面を作っています。値の表示は遅くとも0.1~0.2秒くらいで更新しなければなりませんが、前の表示が完了していないのに次の表示が実行されているような感じで、行単位での一瞬の点滅が不規則に発生します。
 細かいことはともかく、これではダメです。

 動画を表示出来るのですからテキスト画面の更新を0.1秒間隔でやるなど楽勝だろうと思っていたのですが、そもそもテキスト表示の書き換えにこんなレスポンスは不要だと作られているのかもしれません。
 基本的な動作だけに余裕を持って動いてくれないと困ります。

 RaspberryPiの作り的に、ANSIエスケープシーケンスでテキスト画面を構成するより、グラフィカルな画面に今どきの方法で表を書いた方がいいのかもしれません。

#RaspberryPi #Python

■当面の課題

桜のライトアップの季節です。花粉症の季節でもあります。
自分は平気ですが、花粉症の部下は死にそうな顔をしています。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

  • 投稿者名:
  • 投稿年月:
  • #タグ:
  • カテゴリ:
  • 出力順序:

■日付検索:

■カレンダー:

2022年1月
1
2345678
9101112131415
16171819202122
23242526272829
3031

■カテゴリ:

■最近の投稿:

最終更新日時:
2024年5月4日(土) 05時49分51秒