ぱなりラボラトリー通信

電子・機械工作、天文趣味の60代です
義母が大阪に住む姉のところに遊びに行くことになり、留守番・猫の世話、その他、懸案となっている作業もあり、伊豆へ。
当の猫はもともとうちで飼っていたものだが、こちらに連れてきて3年になろうか。すっかり馴染んで、となり近所まで巡回して、愛されている。私たちが到着した夜には、歓迎にと(?!)ネズミを捕ってきた。謝するに余りあり。
イメージ 1

力いっぱいブラッシングすると気持ち良さそうにうっとりしている。夏毛への抜け替わる時期なのか、こんなにとれた。もともと白い猫だが、さらに白くなり、かろやかになった。亡くなった義父はこの猫からノミなどを取り去るのがとても上手だった。
イメージ 2

電気柵の設置するために、下準備・調査で畑に行くと、カエルがのんびりしている。このあたりの水場へは少し距離がある。この後どうするのだろう。
イメージ 3

畑をまわって、電気柵のポールや電線などのみつくろいをする。ここには、大昔に植えられた枇杷の木もあり、大粒の実がたわわに。採ってたべてみると、まだ緑のところもあり、あと3〜4日というところか。
イメージ 4

義母がイチゴの苗を置いていたら、大きくなってできていたとのこと。ネット、ビニールなどなんの防護もなく、これがホントの路地もので甘い。
イメージ 6

畑に植えてあったソラマメの最終版を採って地魚を合わせて、こんなかんじで夕食。シンプルだけどフレッシュ。
イメージ 5

翌日から、いろいろと作業。これまでセンサーライトだった、外灯をEEスイッチを点けて夜になると点灯するようにした。安全・防犯のためにはこれが良いと思う。電気工事士の資格は?という突っ込みは無しね。コンセントのこちら側ですから。あと、法律上、電気工事はできないけど、電気主任技術者三種の免許はある。
イメージ 7

畑の電気柵はポールを立てて、配線も準備したが、高圧電源の接続はもう少しあとに。家のまわりには、Aliexpressから購入したイノシシよけの超音波忌避装置を設置する。動物センサーが付いており、検知すると、超音波で発振とLEDが点滅するしかけ。その超音波は私の耳には、聞こえない。どれだけ効果があるかわからないが、これで、イノシシが少しでも敬遠してくれれば良いのだか。
見守りカメラのネットワークの点検をしたり、視界が広がるように枝を切ったり、位置を再調整したりする。
イメージ 8

いくつかの作業を終えて、レモン畑へ。前回は蕾だったが、花が咲いて、結実しているものもある。
イメージ 10

それでも、このように売れるレモンもまだ残っていた。高枝切り鋏を使ってコンテナふたつ分くらい採れただろうか。
イメージ 9

レモンは、果季が長く、虫にも強く、チマチマと稼がせてくれる。栽培する農家も増えており、競争もあるのだが。

次回は、電気柵の本格作業、夏草刈りなどなど。6月中は行けないので7月初旬になるかなー。

開く コメント(0)

Astronomy Linux 18.04版へのリモートアクセスの解決策を教えていただいたので、持ち出し用のNote PCで使うために、USBメモリにインストールすることにした。
前のバージョンをそのようにしてあり、構成のイメージはこういう感じで、
イメージ 1
Biosの設定により、起動する順序を、
 1.USB DISK
 2.内部HDD
 3.CD-ROM
となるようにしてある。
Astronomy Linux をインストールする際に、Bootloader をUSBメモリになるようにしてやると、電源ON にすると、LinuxのBootloader が立ち上がって
イメージ 2
Astronomy Linux 、Windows どちらでも選択して起動できるようになる。このスタイルの良いところは、本体のHDDに影響を及ぼさないことで、USBメモリを抜けばそのままWindowsが起動する。
USBメモリには書き込みの寿命があるので劣化を避け、高速で処理するために、
 1.SWAPを設定しない
 2.あまり参照しないLogファイルなどをRAM DISKに
 3.WORKエリア、処理DATAをHDDに
などの配慮が必要になる。起動時には、すこし時間がかかるが、さほど違和感なく使用できる。

早速インストール開始、細かい設定が必要なので「それ以外」を選択。
イメージ 3

USBメモリにパーティションを作って、Bootloader のインストール先をUSBメモリにしてスタート。
イメージ 4

最後のところでこんなメッセージが出て、撃沈。
イメージ 5

ちなみに、Astronomy Linux 新バージョンでは、16.04でも18.04でもNGとなる。今のところ、旧版のソフト群でも問題ないし、このNote PCをリモートデスクトップで操作することはないだろうから、動いているシステムは触らないほうが良いのか。

開く コメント(4)

たくさんの天文ソフトをプリインストールしたパッケージAstronomy Linux の新しいバージョンがリリースされたので、観測用のPCにインストールしてみた。ISO イメージは4GB近くあり、Ubuntu 16.04 版はこちらから、18.04 版はこちらからダウンロードできる。USBメモリに焼いて起動して、通常のUbuntu のインストールラーで何のトラブルも無く日本語版をインストールできた。
動作中の画面は、こんな感じ。
イメージ 1

大学や研究機関で開発されたLinuxで動作する主だった天文ソフトがすぐに使えるようになっている。アイコンから起動する形にはなっておらず、ターミナルからのコマンド起動になるが、画像から位置を解析する Astrometry.net も入っている。当然ながら、解析に必要な星のデータは別途ダウンロードする必要がある。

こちらの記事を参考に Windows からリモートデスクトップでアクセスする設定を行い、うまくできるようになった。その様子。
イメージ 2

以前のAstronomy Linux のバージョンでは、どうやっても Windows からのリモートデスクトップ接続が設定できなかった。VNCソフトを使えばできたのだろうが。新しいバージョンでも 18.04 版では、リモートデスクトップを可能にするため、
 $ sudo apt install xrdp lxde
を実行すると、指定されたソフトがありませんというエラーとなってインストールできない。OSのバージョンは新しいほうが良いのだろうが、Ubuntu16.04 で不自由はなく、プライベートネットワークでの運用なのでそのまま使うことにする。

開く コメント(1)

サンプルプログラムやいくつかのWEBを参照して、PlutoSDRのRESET プログラムを作成した。プログラムの構成はシンプルに、
 ・デバイスをOPEN
 ・PlutoSDRの電源回路の「切」コマンドの送信
 ・PlutoSDRの電源回路の「入」コマンドの送信
 ・デバイスのクローズ
となる。

FT232R はUSBシリアルとしてそれなりに使われているので、他のデバイスを間違って操作しないように Production Description でOPENするように。
イメージ 1

FT Prog ユーティリティを使って Production Description を変更、初期値の「FT232R USB UART」から「FT232R PlutoCont」に変更。

イメージ 4
デバイスマネージャーで見たとき COM16、COM23 は、同じFT232RLモジュールを接続しているのだが、複数挿していても明示的にOPENできて、コントロールすることができる。

ソフトは一回の操作だけなので、コンソールモードで作成、こんなふうに動作する。
イメージ 2

エラー処理も実装したので、FT232RL USBシリアルを挿していないときや別のデバイスのときなどには、
イメージ 3
となるようにした。
これで、リモートデスクトップで操作しているときでも、PlutoSDRをリセットできるようになった。

参考までにVB2008 のリストを掲載。
参照設定で FTD2XX_NET.dll が必要となります。
-------------------------
Imports FTD2XX_NET
Module Module1

    Sub Main()

        'ハード関係の宣言
        Dim PlutoFTDI As New FTDI
        Dim ft_status As FTD2XX_NET.FTDI.FT_STATUS
        Dim ftdiDeviceCount As UInt32 = 0

        '書き込みバッファとかその他変数
        Dim write_byte(1) As Byte
        Dim written_byte_num As UInt32 = 0
        Dim PowerON As Byte = &H0        'リレー OFF
        Dim PowerOFF As Byte = &HFF        'リレー ON

        'FTDI FT245初期化
        ft_status = FTDI.FT_STATUS.FT_OK

        'Device名をFT232R PlutoCont  EEPROMを変更しておく
        ft_status = PlutoFTDI.OpenByDescription("FT232R PlutoCont")
        If ft_status <> FTDI.FT_STATUS.FT_OK Then
            Console.WriteLine("デバイスが見つかりません")
            Console.WriteLine("接続を確認してください")
            System.Threading.Thread.Sleep(8000)
            Exit Sub
        End If

        'リセットやパージ処理
        ft_status = PlutoFTDI.ResetDevice()
        If ft_status <> FTD2XX_NET.FTDI.FT_STATUS.FT_OK Then
            Console.WriteLine("デバイスのリセットに失敗しました")
            Console.WriteLine("接続を確認してください")
            System.Threading.Thread.Sleep(8000)
            Exit Sub
        End If

        ft_status = PlutoFTDI.Purge(FTDI.FT_PURGE.FT_PURGE_RX Or FTDI.FT_PURGE.FT_PURGE_TX)
        If ft_status <> FTD2XX_NET.FTDI.FT_STATUS.FT_OK Then
            Console.WriteLine("デバイスの Purge に失敗しました")
            Console.WriteLine("接続を確認してください")
            System.Threading.Thread.Sleep(8000)
            Exit Sub
        End If


        '通信設定
        PlutoFTDI.SetTimeouts(0, 0)
        PlutoFTDI.SetLatency(100)
        PlutoFTDI.SetBaudRate(115200)

        'Bit Bang OutPutモードで起動
        ft_status = PlutoFTDI.SetBitMode(&HFF, 1)
        If ft_status <> FTD2XX_NET.FTDI.FT_STATUS.FT_OK Then
            Console.WriteLine("Bit Bang OutPutモードに失敗しました")
            Console.WriteLine("接続を確認してください")
            System.Threading.Thread.Sleep(8000)
            Exit Sub
        End If

        'Power OFF/ON Command Send

        Console.WriteLine("PlutoSDR をリセットします")

        write_byte(0) = PowerON
        ft_status = PlutoFTDI.Write(write_byte, 1, written_byte_num)
        System.Threading.Thread.Sleep(1000)

        write_byte(0) = PowerOFF
        ft_status = PlutoFTDI.Write(write_byte, 1, written_byte_num)
        System.Threading.Thread.Sleep(3000)     '3秒間電源OFFにする

        write_byte(0) = PowerON
        ft_status = PlutoFTDI.Write(write_byte, 1, written_byte_num)
        System.Threading.Thread.Sleep(1000)

        '接続をクローズしてプログラム終了
        ft_status = PlutoFTDI.ResetDevice()
        ft_status = PlutoFTDI.Close()
        Console.WriteLine("プログラムを終了します")
        System.Threading.Thread.Sleep(8000)

    End Sub

End Module



開く コメント(0)

以前に購入した Pluto-SDRは人工衛星の受信やいろいろな実験にけっこう稼働率が高い。なかなか性能も良いのだが、使いかってかいまいちのところも。
 ・PCとの接続はMicroUSBであり、接触不良となりやすい
 ・SDR#などでSDRソフトの負荷が大きいのか人工衛星追跡ソフトなどと併用して
  使ったりしているときにハングアップする
ハングアップしてしまうとSDRソフトを再起動しても修復されないことが多い。このときは、USBコネクタを抜いて挿しなおすしかない。RTL ドングルではソフトの再起動で復元するのに。Pluto-SDRは内部でLinuxが動いているとのことでそのせいだろうか。
そんなわけで、外部からRESETできる機能を組み込んでシールドも考慮して金属ケースに組み込んでみた。

まずは、RESET回路の検討、USBコネクタを抜き差しするのと同様な機能ということで、Pluto-SDRの電源をON/OFFするように考えた。Arduino NANOなどを使ってリレーで制御するという回路でいいかと。一つのI/Oポートがあれば良いので、なるべくシンプルにということでいろいろと調査した結果、USBシリアルFT232RL USB UARTボードを使えそうなことがわかった。一般的には通信に使うのだが、Bit Bang モードを使うことにより I/O操作ができる。
データシートやWEBでの記事を参照して、回路はこのように。
イメージ 1
一回路しか必要ないのでトランジスタで駆動してもよいのだが、専用のドライバICの手持ちがあり、かつシンプルになる。FT232RL USB UARTからの制御はRX(Bit1)からでイニシャル状態でリレーがOFFつまり、Pluto-SDRの電源ONとなる。これらを基板に組み込んでこんなふうに出来上がった。
イメージ 2

FT232RLボードはMiniUSB、Pluto-SDRはMicroUSBなのでこれらを頑丈な USB TYPE-B で引出す。ケースに固定するようにAitendoから基板 With USBコネクタのKitを購入、変換延長コネクタとして組立。接続してみると、動作しない。
いろいろと調査した結果、なんとプリント基板の間違い。USBコネクタのシールドがD+と接続されるようになっている。向かい側のGNDと接続するつもりのはずが、コネクタのPIN配置を見間違えたようだ。Aitendo では、この基板をたくさん売っているんだよねー、指摘してあげないといけないだろうか。
イメージ 3

基板を削って D+ とシールドを切り離し、ケースを加工して、両方のUSBはTYPE-B コネクタで接続するようにこんなふうに組み込み。Pluto-SDRの基板はSMAコネクタのみで固定。スペーサも入れてケースに固定してやりたいところだが、加工寸法採りが面倒なのと、日常的に力がかかるような操作をしないので良しとする。この状態で ICの発熱状態を確認したところ、ほとんどのものがほんのりと暖かい程度。ヒートシンクは必要ないようだ。
イメージ 4

ふたは殺風景なので、元箱から切り取って、ロゴを貼り付けた。動作時に点灯するLEDが見える位置に小穴を空けたが、部屋が明るいと青LEDが点灯しているがわかりにくい。
イメージ 5

制御ソフトはサンプルコードもあるので、表示などを考慮した専用のものを作る予定。ネットで見つけた Big Bang Test という、FT232RL USB UARTを使ってI/Oコントロールができるソフトを使ってテストしてみた。
イメージ 6
このように設定して「送信」をクリックすると、リレーが動作して Pluto-SDR の電源がOFFとなる。市場にコントロールできる

が、こんな表示が出て FT232RL USB UART への接続も断となり、
イメージ 7
さらにこんな表示がでて、
イメージ 8
再接続しないと制御できない。

FT232RL USB UART 単独でテストしているときにはこのようなことは無かったので、どこか、配線を間違えたのかと思ったが、このソフトは、USBの入り切りがあると接続をリセットして再検出を行う仕様のようだ。なので、Pluto-SDR のリモートで電源をOFFにするとFT232RL USB UART へ接続もリセットされたわけだ。USBメモリを抜き差ししても同様な動作をする。
わかるのに半日もかかった。ともあれ、動作はうまく行っているので、専用ソフトが完成するまでは、こういうことを念頭において使うことにする。


開く コメント(1)

[ すべて表示 ]


.


プライバシー -  利用規約 -  メディアステートメント -  ガイドライン -  順守事項 -  ご意見・ご要望 -  ヘルプ・お問い合わせ

Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事