ラジオサーバーのレンタルを開始します

ご好評いただいております製品の ラジオサーバー の月払いレンタルを開始予定です。

ラジオサーバーは、日本に設置したラジオサーバーに外出先や海外からパソコン、スマホで接続し、radiko、radikoプレミアム、らじる★らじるのライブ聴取とタイマー録音が可能な製品で、これまでのラジオサーバーはハードウエア製品をご購入いただき、日本国内のご実家などに設置していただく必要がありました。

今回のレンタル版は、東京エリアの さくらのVPS(Virtual Private Server)上に現行ラジオサーバーのプログラムを移植したもので、ご契約いただいた方専用のサーバーをご用意する形となります。

お申込みから一週間程度の無料試用期間、初月は さくらのVPS契約の初期費用が加算されますので2千円程度、以降は月1200円程度で、契約縛り期間はなくいつでもご解約できるよう考えております。

おまけでPPTPのVPNサーバー機能も設定する予定ですので、海外のPCからradikoプレミアムの契約を行うことや、国内限定の動画サイトなどもご利用可能となります。 VPNサーバーだけのレンタルをご契約いただくより、自分専用のVPNサーバーをお持ちいただける点で安心感は高いかと思います。

サービス開始時は本店ページ( http://www.starstonesoft.com )ならびにこのブログで再度お知らせいたしますのでぜひご検討ください。


本日出荷分から製品仕様更新です

ラジオサーバー、ホームラジオ、VPNサーバーBOX2の各製品は、本日2017年3月25日出荷分からケースの色がこれまでの黒から白に変更となります。

その他変更点は以下の通りです。

ラジオサーバー高性能版:価格を千円値下げしました。

ホームラジオ高性能版:これまでオプションだった無線LAN接続が、価格据え置きで標準仕様となりました。 一度有線LANで設定を行ったあとは、LANケーブルを抜いて持ち歩くことが可能となりました。

ぜひご検討ください。


Wake On LAN リピータをバージョンアップしました

インターネット側からLAN内のPCなどをWake On LAN 出来るようにする機器、Wake On LAN リピータのハードウエア版シェアウエア版(Raspberry pi用)をv5.0にアップデートしました。

変更点は以下の通りです。

  • MagicPacketの転送機能が稀に落ちることがあったので、プロセスを監視して停止しているときには再起動する機能を追加。(Wake On LAN リピータの最も基本的な機能は、インターネット側から送信されたMagicPacketを、ルータのポート転送設定でWake On LAN リピータに転送すると、Wake On LAN リピータがそのパケットをLAN内全部のPCにブロードキャスト転送する機能です。)
  • IPアドレスを固定する設定をした場合に、これまではDNSサーバーのアドレスの設定項目がなかったため、正しくDNSサーバーに問い合わせをすることができなくなり、NTPサーバーに接続できなくなって時刻合わせができなくなる問題があったため、DNSサーバーを指定できるようにした
  • USB連動タップ操作機能で、これまでは手動でオン、オフを切り替えるのみだったが、新バージョンではアドレスを指定してping監視し、応答がなくなったら自動的にオフ→オンする機能を追加した。 また、毎日定時にオフ、オンが出来る機能を追加した。

設定、操作はすべてブラウザで行います(MagicPacketの転送機能は操作不要)が、最新バージョンの操作画面は以下のような構成です。 画像を見ていただくとどのような機器なのかすぐにおわかりいただけると思います。

rep1
メインメニュー
rep2
設定:ダイナミックDNSの設定。no-ip、mydns.jp, dyn.comに対応しています。
rep3
設定:ネットワーク設定。DHCP有効と、スタティックが選択可能です。
rep4
設定:日時設定
rep5
操作:手動でMagicPacketを送信
rep6
操作:日時指定で単発でMagicPacket送信予約。この機能はGETでデータを渡しているので、ほかのプログラムからWake On LAN リピータにMagicPacket送信予約を入れることが簡単に実現できます。(たとえば録画サーバーの電源を自動で入れるなど)
rep7
操作:日時、曜日指定で繰り返しMagicPacket送信予約。 毎朝事務所のPCの電源を自動で入れるような場合を想定しています。
rep8
操作:USB連動タップの操作。フリーズしたPCの電源を強制的に入れ直したり、ping監視を使って不調のルータ、モデムの電源を入れ直すことも可能です。

最後の画像のUSB連動タップ操作機能ですが、ハードウエア版はRaspberry pi の基板に改造がしてあり、USBポートの5V電源がオン、オフできるようになっていますので、USB連動タップを直接USBポートに挿し込めば使用可能です。

tap
サンワサプライ TAP-RE7U

シェアウエア版で連動タップ機能を使用するには、同様の改造をRaspberry pi基板に施さねばなりませんが、かなり難しいです。(USBコネクタを2個とも取り外し、下段側のGNDパターンに細いドリルで穴を空けて絶縁した上で新しいUSBコネクタを取り付け、GND足とGNDパターン間にPower MOS-FETをスイッチとして取り付け、ゲートの足をGPIOピンに配線します)

改造に代わり、リレーモジュールをつかえばUSB連動タップを購入しなくても直接AC100Vのオンオフも可能になりますのでそのほうが簡単ですが、ACを扱うため正しく配線しないと感電や火災の原因になりますので自己責任でのみお試しください。

たとえばこちら たった171円です。 (ここで紹介する基板が安全かどうかについてはご自身でご判断ください。 AC100Vはショートすると火柱が上がるほど強力です。)

relay

GND、VCCにはRaspberry piのGPIOのGND(6ピン)、5V(2ピン)を接続し、IN1、IN2にはそれぞれGPIOの3ピン5ピンを接続します。 必要なものはこの基板とジャンパーケーブル4本、そして安いテーブルタップを途中で切断してリレーの端子にネジ止めすれば完了です。

 


ラズベリーパイで温泉卵

フィリピンの卵は新鮮でなく、生卵を食べるには覚悟がいる。 先日買った、GENSANブランドの卵は賞味期限まで2週間もあるのにすでに腐っていた(白身と黄身が混じっていて、端っこが真っ黒)。

で、生卵同様、大好きな温泉卵を完璧に作るべく、ラズベリーパイで温泉卵製造機を作成しました。

使ったもの

  • Raspberry pi B (余っていた古いもの)
  • 4GBのSDカード、電源、LANケーブル類(余っていたもの)
  • 温度センサ(CircuitRocksで購入)
  • リレーモジュール(CircuitRocksで購入)
  • ジャンパー線10本(CircuitRocksで購入)
  • その他部品類(余っていた古いもの、詳細は画像ご参照ください)

要となる温度センサ(DS18B20)は、よく見かける防水タイプで長いケーブルつきのもので185ペソ、リレーモジュールは1チャンネルで250V10Aのもので147ペソ。 PayPalで支払いが出来、送料はメトロマニラは150ペソで、注文の翌日にLBCで配達されました。(フィリピンでは注文の翌日配達は驚異的に素晴らしいです!)

https://circuit.rocks/ 素晴らしい。

こちらが届いた部品の写真です。

Exif_JPEG_420
クリスマスカードつき
Exif_JPEG_420
タッパーに入っていました

センサとリレーは先例にならい、以下のように配線しました。

Exif_JPEG_420
試しに配線した様子

GPIOのピン番号
1 センサー電源3.3V(赤)
2 リレー電源 5V(オレンジ)
3 リレー信号線(黄色)
6 センサーGND(黒)
7 センサー信号線(青)
14 リレーGND(緑)

センサーの電源(赤)と、センサー信号線(青)の間には4.7kΩのプルアップ抵抗をつけています。(ビニールテープでまいてあるところに内蔵)

プログラム作りですが、いつものようにIPアドレスを音声で読み上げる機能をまずインストールします。

続いて、センサの動作を確認するため、以下のことを行いました。

apt-get update
apt-get upgrade

そしてapacheとPHPのインストール。

apt-get install apache2 php5

nano /boot/config.txt でconfig.txtファイルを開き、一番下に

dtoverlay=w1-gpio

を追加して保存。

nano /etc/modules を開き、一番下に

w1-gpio
w1-therm

を追加して保存。

一度再起動してから、

nano /var/www/temp.php でファイルを作成し、以下の内容を貼り付けて保存。(こちらを参考にさせていただきました)

その後、LAN内のPCやスマホで http://ラズベリーパイのIPアドレス/temp.php を開いて温度が表示されれば温度センサーはOKです。

続いてリレーの動作について、

WiringPiのインストール

git clone git://git.drogon.net/wiringPi
cd wiringPi
git pull origin
./build

リレーをテストするスクリプトを作成

nano /etc/RelayTest.sh でファイルを作成し

と書いて保存したあと、

chmod 755 /etc/RelayTest.sh

で実行権限を与えます。 そのあと、

/etc/RelayTest.sh を実行するとリレーがカチカチ言いながらオンとオフを繰り返せばリレーOKです。

ここまで確認できたので、ケースを買いに行きました。 AC220Vがリレーモジュールの裏側に出ているので、バラバラでは危ないのでケースに入れる必要があります。 ケースはAlexanにあった一番大きいプラスチックケースで45ペソでした。 行ったのはTimog Avenue branchですが、道路沿いの駐車スペースにホームレス家族が座っていて車を止めにくかったので、お店の前の駐車場に入ったんですが、入り口のスロープが急な上に途中で角度が変わっていて、車の底をジョリっと言わしてしまいましたので、お出かけの方はご注意ください。(googleストリートビューから拝借した画像ですが、奥の小さな建物がお店で店員さんが二人いますが暇そうです。 画像のガードマンさんが招き入れてくれるまま駐車場に入ろうとすると、ジョリっと言わしてしまいますので注意。)

alexan

で、ケースに収めたのが以下の画像です。

Exif_JPEG_420
ACは電源タップを途中で切断したようになっています
Exif_JPEG_420
ほぼギリギリでした

デジタルアンプとスピーカーは引き出しの中に眠っていた部品ですが、”調理をスタートしました”、”30℃です”、”31℃です”...”設定温度に達しました”、”調理を終了しました”という音声、およびLANケーブルを接続して起動したときには自分のIPアドレスを話すようにするためです。

実際に作成したプログラムの中身は需要がないと思いますので割愛しますが、もし知りたい方がいらっしゃいましたらメールでご相談ください。

※12月28日追記:イメージファイルをダウンロードできるようにしました。 8GBのSDカードに書き込んでください。 Raspberry Pi B, B+, Pi 2で起動できます。 SSH接続はユーザー名 root, パスワード raspberry です。 起動時に音声でIPアドレスが流れますのでイヤフォンを挿し込んで起動してください。

音声で読み上げられるIPアドレスをブラウザで開くと設定画面が表示されます。

browser

設定内容は、最高温度(この温度に達すると電源オフ)、最高温度からx℃下がったら再度オン、最高温度に達したあとx分経過で終了(オフ)、の3つです。

そして、最後に実際に使ってみた結果です。

Exif_JPEG_420
シンプルな炊飯器に卵と水、温度センサーを入れて蓋をしてスタート

設定は最高温度69℃、-0.5℃で再度スイッチオン、30分調理にしました。

結果ですが...卵の画像を撮るまえに、パンツの後ろポケットに卵を入れたのを忘れて座ってしまい、ポケットの中で卵がぐちゃぐちゃになったので画像なしですが、黄身が硬めで白身はゆるい感じだったようです。

問題は、炊飯器のヒーターはアルミダイキャストの大きな土台の下に入っているのですが、69℃で電源が切れたあとも高温に熱せられた土台の余熱で5分位は水温が上がり続け、最高75℃になってしまったことです。 余熱を持たないシンプルな電気ポットのようなものを使うと改善されるものと思います。

うまく調理できるようになれば、フィリピンでも温泉卵が食べ放題、その他お酒の燗をつけるのもの上燗、熱燗自由自在です。

12月25日追記

炊飯器以外に、家には電熱器(1200wと600wの切り替えスイッチつき)があったので、電熱器に小さな鍋を乗せ、蓋をせずに再度チャレンジしてみました。

設定は最高温度66.5℃、-0.5℃で再度スイッチオン、30分で調理終了にしました。 途中経過は、水温31℃からスタートで10分後に設定温度に達してスイッチ・オフ、その後5分ほど温度がゆっくり上がり続けて最高で69℃、その後5分で66℃まで下がってスイッチが入り、以降は約30秒スイッチオン、約1分40秒スイッチオフを繰り返しながら30分の調理時間が経過して終了しました。

早速水で冷まして割ってみたのがこれです。

完成

白身は柔らかく、黄身はトロッとしていて完璧です。 お正月用に卵をたくさん買ってくることにします。


福岡の病院でのタクシー突入事故について

先日来、大きなニュースとなっていた福岡の病院でのタクシー突入事故について、もう続報が出なくなってしまったようだ。 現在ドライバーは容疑者扱いで拘束されているのだと思うが、車が勝手に加速してブレーキが効かなかったという証言が真実であるならば、無実のまま単なる踏み間違いとして逮捕され、賠償を請求されることは、長く安全運転につとめてきたドライバーにとって死ぬほど無念なことだと思う。

警察が踏み間違いであることを証明できる証拠を示せるのであれば納得はいくが、それが出来ないならば車両の故障であることを証明せねばならない。 でも、警察官は自動車修理の経験者でも、コンピューター技術者でもないのできっと難しいだろう。

パソコンを長年使っている人は必ず経験していることで、Windowsのフリーズがあると思う。 Windows 2000以前ではOS自体の問題でしょっちゅうフリーズしていたのだが、以降はたまにフリーズやブルースクリーンに陥る程度に改善されている。 フリーズの原因は多数あると思うが、ソフトウエアのバグによるものと、ハードウエアの不調によるものに別れる。 ソフトウエアのバグは、製作者でも見つけるのは容易ではないし、ハードウエアはたとえばメモリの接触が多少悪かったり、静電気で壊れかかっている部品によって発生することもある。

同様の原因により、今回のタクシー(プリウスNHW20)に不具合が発生しないものか、いろいろな資料を見て考えてみた。

まず最初に思ったのは、アクセルペダルセンサーの不良による加速である。 最近の車は電子スロットル車がほとんどではないかと思うが、私自身の車(1999年のボルボS70)は、何度も電子スロットル本体が故障して苦労した。 原因は、電子スロットル本体についているスロットルポジションセンサー(二組のボリューム)の摩耗がメインだが、二組あるので片方がおかしくなると自動的にLimb Home Mode(びっこで家に帰る)に入ってノロノロ運転しか出来なくなるようになっている。 電子スロットルを開閉するためのアクセルペダルポジションセンサーも2系統になっており、片方がアナログ電圧、片方はPWMによるデジタル信号となっていて、こちらも片方が故障すれば警告灯が点灯する仕組みだ。

で、プリウスのアクセルペダルポジションセンサーがどうなっているのか調べたのだが、NHW11までは普通のボリュームが二組、NHW20からはホール素子を使った非接触センサーとのことだった。 (写真はインターネット上の掲示板から拝借しました)

NHW11まで
NHW11まで
NHW20以降
NHW20以降

アクセルペダルポジションセンサーの動作については、こちらのサイトに詳しく書かれているが、要は2系統の、それぞれ別のカーブをもつ可変電圧を出力するセンサを使い、ECU(Engine Control Unit)に入力された二つの電圧からアクセルペダルの踏み込み量を推定するという仕組みだ。

aps

上記の図で左側のセンサー部分の回路はボリューム2個で表記されているが、もしこのタイプのボリュームだと、GNDのケーブルが接触が悪くてGND側の電圧が0Vよりも上がった場合、アクセル開度は大きく見えてしまうので問題だ。

しかし、NHW20においては、こちらのサービスマニュアルにあるように、センサーはホール素子であること、それぞれのセンサーの電源、GND、出力はそれぞれ別のケーブルで独立してHV Control ECUに入力されているので、いずれかの線が切れたりショートしたりしても加速につながるような誤った信号を送る可能性はないと考えられるが、センサーに供給されている5Vの電源回路が故障して電圧が上がった場合は、相対的に高い電圧が出力されることになると思うので、HV Control ECU側の故障で発生する可能性はゼロではないと思う。 (この程度の故障ならば、間欠的に発生するものであっても簡単に再現できると思う)

aps_nhw20

アクセル系統の異常による加速、ということで考えると、アクセルペダルセンサーはHV Control ECUに接続されており、 HV Control ECUはメインのEngine Control Module に接続されている。 電子スロットルは Engine Control Module に接続されているので、HV Control ECUが誤ったアクセルペダル信号を検出するか、メインのECMがフリーズしているようなことがあれば、アクセルを踏み込んだ状態が維持されてしまう可能性はあるのだと思う。

接続図1
接続図1

では、ブレーキが効かなかった可能性はあるのかについて考えてみる。

私自身は実際のプリウスに乗ったこともじっくり見たこともないので知らないのだが、以前からプリウスのブレーキフルード交換は診断機がないと出来ない、という話は知っていた。(診断機はトヨタのディーラーや修理工場がもっている専用の機器で、コンピュータを制御する機能をもっているものである)。 NHW20ではどうなのか検索してみたら、こちらの修理工場さんのブログにかかれていた。 要約すると、ブレーキフルード交換(エア抜き)をするためには以下の手順でブレーキ制御禁止モードに移行しなければならないとのこと。

※訂正:下記手順は最新型のNHW30のものでした。 NHW20はやはり診断機をつないでモードを切り替えないと駄目なようです)

①パーキングブレーキをかけ、シフトポジンションP でIG-ON にする。

②シフトポジンションN で、ブレーキペダルの踏み込み、開放を5秒以内に8回以上行う。

③ シフトポジンションP で、ブレーキペダルの踏み込み、開放を5秒以内に8回以上行う。

④ シフトポジンションN で、ブレーキペダルの踏み込み、開放を5秒以内に8回以上行う。

⑤シフトポジンションP にする。

⑥ 電子制御ブレーキウォーニングランプ(黄)が点滅することを確認する

これだけやらないと、ブレーキキャリパーのブリードスクリューをゆるめてブレーキペダルを踏んでもフルードが押し出されてこないのだとしたら、普通の状態(ブレーキ制御モード)のときは油圧回路も電子制御頼みだということだろうか。 ちなみに、ブレーキペダルの Brake Pedal stroke sensor は Skid control ECUに接続されていて、Skid control ECUはブレーキのアクチュエータに接続されているので、多分メインのECMの動作とは独立しているのだと思うが、ECMがフリーズしていても正常に動作するのかはわからない。

manual2
接続図2

いろいろな可能性を考えてみたが、やはり実車をじっくり調べること、制御のロジックをメーカーが開示することがなければ想像にすぎないのだが、もし原因がECMのフリーズだったら証明するのは困難だろう。 車両は8年ほど問題なく動作していたようなので、もし8年間毎日10時間運転して、一度しか発生しないフリーズであれば、問題を再現させるのに何年もかかってしまうだろう。(問題がすべての同一型式の車両に発生するのではなく、いわば”ハズレ”のECMを積んだこの車両だけに発生すると仮定した場合)

もし自分がプリウスのようなブレーキ制御まで電子化されている車両に乗らなくてはならないのであれば(自分で買うことは絶対ないが)、電気的にECMをシャットダウンできるようなキルスイッチを追加しなければ安心できないと思う。 ごく簡単な、たとえば火災報知器のボタンみたいにカバーを指で押し破って押すような赤いボタンを車内に取り付け、ボタンを押せばECMのヒューズ部分でスイッチが切れるような単純なしくみでいいのではないだろうか。 button

ECMの電源を切れば電子スロットルは閉じるので、あとは運を天にまかせて電柱に突っ込んで止めるという手も可能だろう。

低燃費のためには電子制御は必須なのは十分理解できるのだが、絶対故障しないコンピュータはありえないので、たとえば違う設計のコンピュータが2台並列についていて、それぞれ別の技術者がソフトウエアを作ったもので、それぞれの計算結果が異なる場合はシステムをシャットダウンしてLimb Home mode(びっこで家に帰るモード)に入れるような処理になっていなければ、安心して運転することは出来ないと思う。 旅客機ならば可能だろうが、コストを削らなければならない車では無理だ、ということであれば、せめて手動でシャットダウンできる非常ボタンを取り付けてほしいと切に願う。 無実のドライバーが責任を押し付けられて刑務所に入れられるようなことがないように。

12月10日追記

EDRのデータは信頼できるのかについて。 事故原因の解明にEDRのデータ解析を行うとのことだが、EDR(Event Data Recorder)についてはこちらのサイトに詳しい解説がある。

文中には

In a Pennsylvania lawsuit related to the Toyota Prius unintended-acceleration controversy of 2009 and 2010, a team of Toyota engineers and NHTSA officials accessed the EDR of the car in question, showing that the driver was depressing the gas pedal instead of the brake, as he’d claimed.

とのことが書かれているが、ペンシルベニアで発生した意図しない加速について、EDRを解析したところ、ドライバーはブレーキを踏んでいたと話したが、実際はアクセルを踏んでいたことがわかったとのことだ。

しかし、EDRのデータの読み出しはOBD-II経由とのこと、ということはデータの取得もOBD-II経由でECMが出力したアクセルペダルポジションセンサー、ブレーキセンサーの値を記録しているということになる。 それぞれのセンサーから直接電線を引っ張ってきてEDRに接続しているのであれば間違いはないのだろうが、ECMがバグや故障で誤った解釈をしている場合は、OBD-II上に流れるデータも誤ったものになるはずである。

都合がいいことに、福岡県警は運転席のフロアマットが二重にしかれていたので、アクセルペダルにのしかかっていたんでは、という発表をしたようだが、その話とEDRの記録(がアクセルペダルを踏んでいたことを示唆した場合)をあわせて事件解決としていいのだろうか。

マットが二重なら、それで本当にアクセルペダルが踏まれたままになるのか、それは衝突時に衝撃で解除されるのかを再現実験で証明したとしても、必要条件は満たすが十分条件ではない。 事故当時にフロアマットがアクセルペダルを押していたことが証明されるわけではないからである。(もし事故後にもフロアマットがアクセルペダルを押したままの状態だったのであれば十分だが)

もし、EDRに事故当時の記録が残っていなかったとすれば、OBD-IIのデータが停止していたということになり、ECM故障(フリーズ?)の必要十分条件を満たすだろう。


3.2インチLCDでデジタル時計作りました(追記)

長年愛用していた、7セグLEDのデジタル時計(インド製)が故障して、時刻が止まったままになってしまった。 夜中でも時間が見やすいので重宝していたので、代わりを探していたが安くていいのが見つからない。

そんな折、以前の記事「ラズベリーパイ 役に立たないもの」で書いた、小さすぎて使いみちがない、ラズベリーパイ用3.2インチカラーLCDで時計を作ろうと思い立った。

使ったものは、以下の部品です。

  • 古いRaspberry Pi B
  • 3.2インチLCD (現在売り切れ中)
  • 余っていた4GBのSDカード

液晶は waveshare の 3.2インチLCDのコピー商品のようで、ドライバも互換性があり、waveshare のホームページからドライバ入りのイメージファイルをダウンロードすればそのまま使用可能なのだが、解凍して書き込もうとしたら、4GBのSDカードでは容量が足りず、新しいSDカードを買うのももったいない(というか、それならデジタル時計を買ったほうが楽)ので、Raspbian Wheezy の2015-05-05バージョンにドライバを入れて使用した。

すごく詳細な設定方法がこちらのサイトに解説されていたので参考にさせていただきました。

液晶が使えるようになったら、

を実行してブラウザ`chromiumとマウスポインタを非表示にする unclutter を入れます。

そして、

/etc/xdg/lxsession/LXDE-pi/autostart ファイルを以下のように書き換えます。

一番下の行の https://time.is/ja/just は現在時刻をブラウザ上で表示してくれるサイトのアドレスです。 このアドレスを変更すれば、ブラウザで表示できるサイトは起動時に自動的に全画面表示されます。 (たとえば自宅内の監視カメラのアドレスにするとか)

このデジタル時計のイメージファイルをGoogleドライブに入れましたので、よかったらこちらからダウンロードしてお試しください。 waveshare 3.2インチLCD互換品をもっていて使いみちがない方におすすめです。 Raspberry piはB、B+、2Bで起動します。 (保証なしですので、もし動かなくてもご勘弁ください。)

12月3日追記:12月2日から https://time.is/ に障害が発生しているようで接続することができなくなりました。 代わりに、 http://www.starstonesoft.com/testclock.htm に320x240ピクセルでちょうど表示できるデジタル時計を用意しましたので、上記 /etc/xdg/lxsession/LXDE-pi/autostart 内のアドレスを書き換えてください。 また、testclock.htm はOSで設定されているタイムゾーンの時刻を表示するため、そのままではUTCの時刻を表示します。 sudo raspi-config でタイムゾーンをお住まいの地域に修正してください。 SSHで接続するためのユーザー名、パスワードは raspbian のオリジナルと同じ pi, raspberry です。

時計のスクリプトは http://Clock.Bralla.com のものを参考にさせていただきました。


超高級版ホームラジオ完成

過去の記事で、Raspberry Pi用のI2Cオーディオ基板の Suptronics x400 について紹介をしたが、ようやくケースに収めて快適に使用できるようになった。

こちらが動作しているところ。 31年前に買ったスピーカー(PIONEER S-180D)といっしょに撮影した。

front

中身はこちら。ケース後方よりにRaspberry Pi 2 と Suptronics x400が二段重ねになったものを、両面テープつきの基板固定足で固定している。 Line outはケーブルでケース背面のRCAジャックに、ヘッドフォン端子も延長ケーブルを作ってケース全面の6.3mmヘッドフォン端子へと配線している。

side

続いて背面側。ケースにはもともと画像左端の電源スイッチ用の穴と、AC100V用の三極プラグを取り付けるための穴が開いていたが、三極プラグの穴を拡張して基板背面の端子がそのまま使えるようにした。 本当は穴なしパネルを使ってスピーカー端子、LAN端子、USB端子を背面に出したら美しいのだと思う。 左端の電源スイッチは電源用とはせず、x400基板上のオーディオアンプの有効、無効を切り替えるジャンパー端子に配線している。(ヘッドフォンで聞くときはメインアンプをオフにして使用するため)

back

こちらはボリュームシャフトの延長の図。ケースのボリュームつまみの穴の高さよりも2段重ね基板上のボリュームの位置のほうが高かったので、ユニバーサルジョイント2個とアルミパイプを使って連結した。 ケース側でボリュームつまみ、フロントパネル、シャフトともに金属のためガタガタしているうえにゴリゴリ感があるが、布をはさむとかグリスを塗るなどで改善できそう。 動きはスムーズです。

volume_shaft

古いスピーカーに最新のI2C DAC+デジタルアンプでradikoの音楽番組を聞いたり、iTunes内の曲をAirPlay経由で聞いたりしているが、美しく澄んだ音で楽しめている。

以下、今回使用した部品と購入当時の値段を一覧にしておく。

・Raspberry Pi 2  (RSコンポーネンツ)  4763円

・Suptronics x400 (GearBest) 26.01USドル(送料込)

・ケース 1506 full aiminum enclosure (ebay.com) 4222円(送料込)

・ユニバーサルジョイント6mm (Banggood) 2個 654円(送料込)

・6mmアルミパイプ1m (近所のホームセンター) 180円

・小物部品類(6.3mmステレオジャック, 3.5mmステレオミニプラグ, 3mm青色LED, 定電流ダイオード10mA, RCAジャック白, RCAジャック赤, スペーサーTP-20 4個, 貼り付けボスASR-6 4個)  (秋月電子)  690円

合計 13188円 (家にあった電線類、古いノートパソコン用ACアダプタは含まず)

満足度は高いのですが、加工が結構大変なので今のところ販売の予定はありません。


駄目な火災報知機

この家に住んで9年くらいになるが、これまでに二回、火事になりそうだったことがあった。

一度目は安物のテーブルタップのショートで、タップの挿しこみ部分から出火して布のソファーが燃え始めたところで消火器で消すことが出来た。 二度目はトラッキング火災になりそうな壁のコンセントで、仕事部屋で作業をしていたところ、どこからか”チリチリ”という小さい音が聞こえてきたので音の出処を探った所、壁のコンセントの挿しこみ部分から火花が出ているのを発見したことがあった。

そのようなわけで火災報知機は必需なのだが、これまで使っていた報知器は日本から持ってきた煙感知式で、すでに有効期限5年+3年経過していたので、6月に近所のハードウエアショップ(Handyman)で煙感知式の報知器を買いにいった。

売っていたのはYALE(鍵で有名なアメリカ製)の1600ペソと、Family guardというメキシコ製の460ペソだったが、迷わず安い方を買ってきて早速設置した。

その後2ヶ月、特に台所で料理しているときに誤報でアラームが鳴ることが多かったのだが、今日はなにもしていないのに鳴りっぱなしになり、電池を外して数時間後に電池を入れても最初から鳴りっぱなしになってしまったので、仕方なく取り外して古い日本製を復活させた。

こちらが駄目な報知器 Family guard FG200 の中身

左側の円筒形のものがセンサー、右側がブザーで、センサー上部の蓋部分には放射性物質を示すマークが入っているので、イオン化式煙感知器というものらしい。 上蓋部分にはアリのような小さい虫と、アリのオシッコ?風の茶色いシミがついているが、センサーや基板には濡れた場所はなかった。

基板を外してみたところ

センサーの円筒の下にICが組み込まれているらしい。 センサーをバラして見たい気もするが、被爆しそうで怖いし諦めることにするが、このままゴミ回収の日に出していいのかどうか悩ましい。(日本では放射性物質を使った報知器は、メーカーに返送するか日本アイソトープ協会に連絡して有償で引き取ってもらわなければ罰金50万円とのことだ)

フィリピンで火災報知機を買おうと思っている人がいたら、多少高くてもいいものを買うことをお薦めします。


ラズベリーパイ ネットワークが接続と切断を繰り返す

motionpie という、モーション検出機能つきの監視カメラソフトがあり、数年前から自宅の車庫の軒下に Raspberry pi B とこのソフト、Logitechのウェブカメラで簡単な監視カメラを設置していた。 映像はスマホのブラウザで確認でき、動きがあったときは静止画像としてSDカード内に保存されていて、同じくスマホから確認することが出来る。

設置当初、苦労したのは、車庫の軒下まで10mほどの距離があり、室内に5VのACアダプタを設置して、そこから車庫までUSB延長ケーブルで電源を引っ張っていくと、電線の抵抗で電圧が下がってしまい、Raspberry pi が起動出来ないことだった。 AC220Vを軒下まで引っ張っていくことは、雨漏りしたような場合に漏電、感電の危険があるので当初から考えず、代替策として室内にDC12VのACアダプタを設置し、太い電源コードで軒下まで12Vを持って行って、軒下に12V→5Vのカーチャージャーを設置してRaspberry pi の直前で5Vに変換する手だった。 当初これでうまく行っていて数年間の間、数ヶ月に一度SDカードのファイル破損で起動しなくなることはあったがほぼ問題なく動作していた。

ところが先週、監視カメラに全く接続できなくなり、修復に3日もかかってしまったのでその状況を記録しておこうと思う。

まず最初に疑ったのはいつもおSDカード破損だったので、SDカードを書き直してみたが駄目、SDカードを交換してみても駄目だった。 次に、長期間半透明のガレージの屋根(波板)の下にあったRaspberry piが日光や温度で劣化したのかと思い、基板を新しいものに交換してみたが変わらず駄目だった。

そこで今度は電源を疑い、カーチャージャーの5V出力側コンデンサの容量抜けで電圧が下がったのかと思い、コンデンサを交換(もともと470uFが付いていたが手持ちがなく220uFに。ICのデータシート上のリファレンスは100uFとなっていた。)してみたが変化なく駄目で、さらに新しいカーチャージャー(100円のもの)に交換してみたが、症状は変わらずであった。

この時点で、具体的な症状として、電源投入後にルータからIPアドレス取得はうまく行っているのだが、ping応答がほとんどなく、たまに応答する、という状態であることを確認した。

もしかしてネットワークケーブルの問題か、と思い、ネットワークケーブルの折れ曲がり箇所を直したり、当初PoEで給電しようとして切断していた不要ケーブル部分(100Base-TはLANケーブルの8本の配線のうち4本しか使っていないので、残り4本で電源を供給しようと配線を切断していた)を接続しなおしたが症状は変わらずだった。

で、もしかしたら再起動を繰り返しているのかと考え、電源電圧のチェックをしたのだが、Raspberry pi 接続状態で5Vの電圧は出ているように見えた。(少なくともデジタルマルチメータの表示上はそう見えた)

今度はでデジタルマルチメータでは見えない電源ノイズが悪さしているのか、と考え、秋月電子で購入したペン型のデジタルオシロを取り出して、12V側、5V側の電圧波形をしてみた。

pico

実際の波形は保存し忘れたので貼れないのだが、数十秒ごとに数十ミリ秒間、電圧が4V前後まで低下してから回復する、を繰り返していることがわかった。 なるほど、これはきっとカーチャージャーに対して負荷が高すぎて電圧が下がっているんだと思い、とりあえずコンデンサを追加してごまかせないかと下記のようなケーブルを作って追加してみた。

capacitor

USB延長ケーブルの途中で皮をむいて、電源の+/-間に壊れたマザーボードから取り外したコンデンサ470uFを5個直列にくっつけたものである。 これをカーチャージャー出力とRaspberry piのマイクロUSB電源ケーブルの間に入れて、電圧が下がるのを防ごうとしたのだが、結果は波形上はわずかに改善されたが、やはり4Vを下回ってしまい駄目だった。

最初から数年間使用していたカーチャージャーも、新しく交換したのも5V1Aのものだったし、Raspberry pi B の消費電力は300mA程度、ウェブカメラはUSBなので最大500mAとしても1Aまでは行かないから1Aのチャージャーで大丈夫、という先入観があったのがなかなか解決に至らなかった原因だが、結局近所の CDR king に行って5V2Aのカーチャージャーを買ってきて交換したところ、ようやく正常に動作するようになった。

数年間1Aのチャージャーで動作したのは、恐らく当初はそのチャージャーも1A目一杯流せたのだろうが、経年変化でコンデンサの容量が下がってだんだん電圧が不安定になり不調に陥った。そこで自分が交換したのが当初の470uFでなく200uFのコンデンサだったので回復せず、さらに別の1Aのチャージャーに交換したがそれはもともと1Aに至る前に電圧が下がってしまう粗悪品だったのだと思う。

故障には何事にも原因があるのだから、技術者としては最初からちゃんと測定器を使って原因を調べるべきだった。 そうすれば何度も脚立を上がったり下りたりしなくてもすぐに解決できたと思われる。


LANケーブルで音が変わるのか

このところアナログレコードが復権してきているという話を良く聞く。 しかし同時にハイレゾなデジタル・オーディオも普及しつつある。

自分は面倒なのは嫌いなので、30年前に買ったちょっと高価なターンテーブルも、数年後に安価になったCDプレーヤーに置き換わり、その後はmp3など音質は悪いが扱いが簡単なものへと移り、今はもっぱらラジオだ。

で、冒頭のアナログレコード復権だが、暖かい音がするとか、柔らかい音だとかいうことだが、これは確かにそうだと自分でも思う。 でも、一部オーディオマニアの方々が言っている、LANケーブルを変えると音が変わる(暖かい音になる?)とか、USBケーブルを変えると云々というのは納得が行かないのだ。

いずれもケーブルに乗るノイズが悪さをしているのでは、というのだが、それならジャージャーとかパチパチというノイズが聞こえていたのが静になるということではないのだろうか。 元々デジタルデータが通っているだけなので、ノイズが乗ってもデータにエラーが発生しないのであれば再生される波形には変わりがないはずであり、それが変わるのであれば、オーディオ回路まで回りこむノイズによるジャージャーパチパチだと思うのだ。 それがなくなると音が暖かくなるのだろうか。

自分自身の言っていることも根拠がないのが恥ずかしいのだが、長く続く論争に、どうしてデータで決着をつけないのか不思議に思っている。

たとえば、PC用のオーディオデバイスでも、24ビット192KHzで録音できるデバイスがあるのだから、それに適当なコンデンサマイクをつないで、LANケーブルを変える前と変えたあとの両方をWAVEファイルとして録音すれば、あとはその二つのファイルのデータを逐一比較すれば(演算で差分を取り出せば)本当に音が変わったのかどうかがわかるはずである。 また、どの部分が変わったら音が暖かく聞こえるのかも明らかになるのではないだろうか。

再生側も録音側も、クロック周波数が微妙に変動していれば波形がずれるではないか、と思うかもしれないが、そうであればそれぞれ100回ずつ再生してそれぞれを平均したあとで比較すればいいように思う。 そんなに難しいことではないと思うのだが...