2013年12月20日金曜日

Windows UpdateのCPU使用率が長時間100%になる

これは、ここ数ヶ月間の WindowsXP の月例 Windows Update で起きている、CPU使用率が長時間 100% になる現象です。この問題は WindowsXP をシングルコアCPUで使用している環境で発生するようで、長時間 CPU 使用率が 100% の状態が続き、その間のPC動作が非常に重くなり通常操作が困難な状態になってしまいます。またこの現象は Windows Update が終了すると収まります。

先月までは「古いPCだから仕方が無いなぁ」と諦め状態でこの現象を受け入れていましたが、今月の症状は、先月に増して長時間に感じたので解決策を調べてみました。分ったことを次月に役立てることができるように書き留めておきます。

原因は

「Internet Explorer の累積的なセキュリティ更新プログラム」の検出処理に起因する問題とされています。

対策は

「Internet Explorer の累積的なセキュリティ更新プログラム」を事前に単独インストールすることで回避できるようです。

方法は

実際に私が行った手順を次に掲げます。

  1. Windowsの自動更新を無効にする

    自動更新が始まるとSvchost.exeの CPU 使用率が 100% になってしまい操作に支障をきたすため一時的に無効にします。

  2. 適用する更新プログラムを取得する

    1. マイクロソフトのセキュリティパッチ情報

      マイクロソフトのセキュリティ TechCenter のウェブサイトに行き最新セキュリティ情報から、適用する更新プログラムの情報を調べます。項目のタイトル名は、例えば当月なら「2013 年 12 月のセキュリティ情報」です。

      セキュリティ TechCenter:
      http://technet.microsoft.com/ja-jp/security/bb291012.aspx

    2. 当月の「Internet Explorer 用の累積的なセキュリティ更新プログラム 」の番号を調べる。

      例えば、2013年12月の場合は

      Internet Explorer 用の累積的なセキュリティ更新プログラム (2898785) このセキュリティ更新プログラムは非公開で報告された 7 件の Internet Explorer に存在する脆弱性を解決します。・・・(以下省略)
      なので、番号は2898785です。

    3. 該当する更新プログラムを取得する。

      更新プログラムは Microsoft Update カタログか、Microsoft ダウンロード センターから取得します。

      例えば、更新プログラム番号が2898785WindowsXP用を検索するなら、キーワードにKB2898785 XPと入れて検索します。

      検索結果は複数表示されます。使用している CPU が x86 か x64 でファイルが違います、さらに適用する Internet Explorer バージョンでも IE6 IE7 IE8 用でファイルが違うので注意が必要です。ここから、使用環境に適合した更新プログラムをダウンロードします。

  3. 個別にIEの更新を適用する。

    先ほどダウンロードした更新プログラムを単独で実行しインストールします。

  4. Windowsの自動更新を有効に戻す。

    自動更新を行うため有効にします。

  5. 自動更新を行う。

    Microsoft Updateを実行し通常の自動更新を行います。事前に「Internet Explorer 用の累積的なセキュリティ更新プログラム 」を個別インストールしておくことで、自動更新がスムーズに進みました。

少し手間がかかりますが、今月はこの方法でうまくいきました。WindowsXP の残り期間も後わずかなので、そろそろ Windows7 へ移行する準備に取り掛かろうと思っています。



参考
「Windows XP や Windows Server 2003 環境において、Windows Update 実行時に Svchost.exe の CPU 使用率が 100 % となる、時間を大幅に要する」:日本マイクロソフト セキュリティ サポート部門 WSUS 担当チームのブログ

2013年12月3日火曜日

TiddlyWikiをレスポンシブデザインぽくする

いろんなメモを手軽に書きとめておくのに、とても便利なツールが TiddlyWiki です。 使い始めて 2 年ほどですが、今では便利で手放せないツールになっています。

( 追記:Dec 22, 2014
   現在は最新版の TiddlyWiki5 と区別するため、 TiddlyWiki Classic と呼ばれています。
  http://classic.tiddlywiki.com/ )

半年前にノート PC を新調(Windows XP のサポート終了が近づき止むを得ず。)して、画面サイズがスクエア液晶からワイド液晶に変わったことで TiddlyWiki の使い勝手に影響が出てきました。 その理由は画面幅が広がったのをいいことに、ウインドウを左右に並べて使うことが増えたからです。

(余談ですが、そんなに広い画面ではありません。 14 インチ 1024 x 768 から 14 インチ 1366 x 768 に変わっただけなので、物理サイズでは縦寸法が狭くなり横に広がった感じです。使い始めの時は少し後悔しましたが最近はだいぶ慣れました。 Retina ディスプレイの 15 インチ MacBook Pro がほしいです。)

TiddlyWiki の画面レイアウトは標準で 3 カラム構成です。画面左から 「メインメニュー」、「tiddlerコンテンツ」、「サイドバー」 とレイアウトされています。画面幅いっぱいにウインドウを広げて使うときは問題ないのですが、ウインドウ幅を狭めて使うときには左右のカラムがとても邪魔になります。 というのも、画面幅に応じて変化するのは中央の「tiddlerコンテンツ」の領域なので、幅が狭くなると使いづらくなってしまうのです。 

幅 600 px だとこんなかんじです。 ウインドウ幅の半分以上がメニューとサイドバーに占領されてしまいます。

そこで、ウインドウサイズに合わせてカラム数を可変するようにしてみました。  方法は、カスタムスタイルシートに css を追加、メディアクエリーでウインドウ幅に応じたメニューの位置やカラム数を変更しています。 ブラウザは Firefox を使用しています、IE8 だとうまく動かないかもしれません。

手順

  1. サイドバーの隠し tiddler タブMore-Shadowedから「StyleSheet」を開きます。

  2. 開いた「StyleSheet」に以下の内容を追加します。

  3. /*{{{*/
    #sidebar {
        right: 10px;
    }
    @media screen and (max-width: 1000px) {
      .headerForeground {
        padding: 1em 0px 1em 1em;
      }
      .headerShadow {
        padding: 1em 0px 1em 1em;
      }
      #mainMenu {
        float: right;
        width: 20%;
        text-align: left;
        position: relative;
        line-height: 1.4em;
        padding: 1em 0.5em 1em 0.5em;
        font-size: 1em;
        margin-right: 5px;
        margin-top: 10px; 
      }
      #sidebar {
        float: right;    
        right: 10px;
        width: 20%;
        margin-top: 130px;
        line-height: 1.4em;
        padding: 1em 0.5em 1em 0.5em;
        font-size: 0.9em;
      }
      #displayArea {
        margin: 1em 1em 1em 1em;
        float: left;
        position: absolute;
        width: 75%;
      }
      img{
        max-width: 100%;
        height: auto;
      }
    }
    @media screen and (max-width: 760px) {
      .header {
        height: 50px;
      }
      .siteTitle {
        font-size: 2em;
      }
      .siteSubtitle {
        display: none;
      }
      #backstageButton {
        top: 22px;
      }
      #mainMenu {
        float: left;
        width: 45%;
        text-align: left;
        margin-left: 10px;   
      }
      #sidebar {
        display: none;
      }
      #displayArea {
          margin-top: 0px;
          float: left;
          position: relative;
          width: 97%;
      }
    }
    /*}}}*/
    

これで、ウインドウサイズに合わせてカラム数を可変できるようになりました。 ただし、このままでは「サイドバー」にアクセスしづらいのでメニュー表示用の tiddler を作成しておきます。


メニュー表示用 tiddler を作成

  • 新規 tiddler を作成します。
  • 作成する tiddler のタイトル

    menu
    

    コンテンツに以下を追加します。

    <<search>>
    
    <<closeAll>> <<permaview>> <<newTiddler>> <<newJournal "DD MMM YYYY" "journal">> <<saveChanges>> <<slider chkSliderOptionsPanel OptionsPanel "options »" "Change TiddlyWiki advanced options">>
    
    <<slider chkSideBarTabsPanel SideBarTabs "SideBarTabs »" "View SideBarTabs">>
    

上記 menu をメインメニューに追加します。

  1. サイドバーの隠し tiddler タブMore-Shadowedから、「MainMenu」を開きます。

  2. メインメニューに 「menu」 へのリンクを追加します。

  3. [[menu]]
    

これで、画面左上のメインメニューのリンク「menu」から「サイドバー」にアクセスできるようになります。


画面レイアウト

ウインドウサイズを変えると、こんなかんじになります。


3 カラムレイアウト


2 カラムレイアウト


1 カラムレイアウト

追記:May 29, 2014
実際の動作がわかるように tiddlyspot に登録しました。 babooshka.tiddlyspot.com で確認できます。

追記:Jul 07, 2016
その後の改良版はこちら icm7216.github.io/MyTiddlyWiki/ に置いています。




改良その1:使いやすいタブメニューにする

上記のメニュー tiddler は、メニューコンテンツをひとつの tiddler に纏めただけなので見た目があまりよくありません。 そこで「tabsマクロ」を使って、タブメニューにしてみました。

TiddlyWiki の組み込みマクロ「tabsマクロ」は、タブを使って tiddler を表示するときに便利な機能です。 このマクロはとても便利なのですが、切り替えるタブごとに表示する tiddler を作る必要があります、そんなわけでチョト面倒です。 そんなときは「PartTiddlerPlugin」を併用すると、ひとつの tiddler だけでタブを実現できます。

上画像のタブメニューはこのような記述になっています。 前半部分は表示するタブのための記述、後半部分はタブを選択したときに表示する内容の記述です。 先ほど作った「menu」tiddler を書き換えて使います。

<<tabs txtMenuTab
  "file" "newTiddler  saveChanges" ./menu1
  "search" "search" ./menu2
  "SideBarTabs" "View SideBarTabs" SideBarTabs
  "about" "about" ./menu3
>>
<part menu1 hidden>
!File Menu
@@color:#000;background-color:#FFF;
<<newTiddler>> <<newJournal "DD MMM YYYY" "journal">> <<saveChanges>> <<closeAll>> <<permaview>> <<slider chkSliderOptionsPanel OptionsPanel "options »" "TiddlyWiki options">>
@@
</part>
<part menu2 hidden>
!Search Menu
<<search>>
</part>
<part menu3 hidden>
!about
[[TiddlyWiki|http://www.tiddlywiki.com/]] version <<version>>
</part>

同じタブメニューを「PartTiddlerPlugin」を使わずに、個別に tiddler を作るとこのようになります。

  • タブメニューmenuのtiddler
  • <<tabs txtMenuTab
      "file" "newTiddler  saveChanges" menu1
      "search" "search" menu2
      "SideBarTabs" "View SideBarTabs" SideBarTabs
      "about" "about" menu3
    >>
    
  • menu1の表示用tiddler
  • !File Menu
    @@color:#000;background-color:#FFF;
    <<newTiddler>> <<newJournal "DD MMM YYYY" "journal">> <<saveChanges>> <<closeAll>> <<permaview>> <<slider chkSliderOptionsPanel OptionsPanel "options »" "TiddlyWiki options">>
    @@
    
  • menu2の表示用tiddler
  • !Search Menu
    <<search>>
    
  • menu3の表示用tiddler
    !about
    [[TiddlyWiki|http://www.tiddlywiki.com/]] version <<version>>
    

タブが増えれば、同様に表示用の tiddler も増えることになるので、この「PartTiddlerPlugin」の便利さがよくわかりますね。

「PartTiddlerPlugin」はこのリンクからインポートできます。
abegoExtensions - UdoBorkowski's Extensions for TiddlyWiki


改良その2:タブメニューに、よく使うタグを登録する

TiddleWiki のタグ機能は tiddler の分類にとても便利です。 よく使うタグをこのメニューに登録しておけば、tiddler へのアクセスが便利になります。

たとえば、タグ名「memo」を登録する場合ならこのように記述します。 タグ名の一覧表示には「listマクロ」を使っています。

<<tabs txtMenuTab
  "file" "newTiddler  saveChanges" ./menu1
  "search" "search" ./menu2
  "SideBarTabs" "View SideBarTabs" SideBarTabs
  "about" "about" ./menu3
  "memo" "memo" ./menu4
>>
<part menu1 hidden>
!File Menu
@@color:#000;background-color:#FFF;
<<newTiddler>> <<newJournal "DD MMM YYYY" "journal">> <<saveChanges>> <<closeAll>> <<permaview>> <<slider chkSliderOptionsPanel OptionsPanel "options »" "TiddlyWiki options">>
@@
</part>
<part menu2 hidden>
!Search Menu
<<search>>
</part>
<part menu3 hidden>
!about
[[TiddlyWiki|http://www.tiddlywiki.com/]] version <<version>>
</part>
<part menu4 hidden>
!memo
<<list filter "[tag[memo]] [sort[-modified]]">>
</part>

タブメニューが、こんなかんじになります。 これでウインドウ幅が狭いときの使いにくさが改善できました。

2013年9月22日日曜日

WSMLアンテナ 2つのループを使う場合

前回は WSMLアンテナ を1つのコイル(ループ)として考察しました。

それでは、2つのループの場合はどうでしょうか。同じインダクタンスを持つ2つのループを並列接続したとき、その合成インダクタンスは(相互インダクタンスの影響が無ければ) 1/2 になります。 ループの並列接続によってインダクタンスを低減できれば、 S/L 比は大きく向上し誘起電流の増加が期待できます。

2つのループを並列接続したときの実際の合成インダクタンスは、ループ「配置」や「接続方法」によって、どのように変化するのでしょうか。今回は、この2つのループの合成インダクタンスを実験で確めてみました。



実験に使用するループについて

今回は、前回の実験(3月)の反省を踏まえて、同じサイズのループを使用しました。
(前回の実験では大きさの違うループを使ったので、効果がわかりにくい結果でした。)

  • ループの大きさ:直径 0.58m
  • ループの材料:アルミ・フラットバー(長さ1820mm、幅20mm、厚さ2mm)

今回使用したループの大きさは、前回使用したものより若干小さくなっています。これは材料の入手事情によるものです。

前回使用した直径 0.64m ループと同じものを追加製作するため、アルミ・フラットバー(長さ2000mm、幅20mm、厚さ2mm)を近くのホームセンターへ材料の買出しに出かけましたが、あいにく、(幅20mm、厚さ2mm)アルミ・フラットバーの店頭在庫品は、長さ 1820mm のみでした。

他に(幅20mm、厚さ3mm)アルミ・フラットバーなら、長さ 4000mm の在庫があったのですが、板厚 3mm で直径 1m 以下のループを製作するとなると、硬くて曲げ作業が困難に思えました。悩んだあげく(長さ1820mm、幅20mm、厚さ2mm)を購入しました。前回の直径 0.64m ループは無駄にできないので、再加工して直径 0.58m に寸法を修正して使用しています。

ところで、この 1820mm は中途半端な長さに思えますが、ちょうど 6尺=1間「けん」の長さです。材木などの建築資材と同ようにアルミ材も尺モジュールに合わせたものがあることを知りました。


実験の様子です。ループ間隔の位置合わせが容易にできるように、作業机の上にループをクランプで固定しました。 インダクタンスの測定は APB-1 と自作リターン・ロス・ブリッジを使っています。

下記のループの組み合わせで実験を進めていきます。

  • シングル・ループ
  • 平行配置
    • 「平行配置ー平行接続」
    • 「平行配置ークロス接続」
  • 8の字配置
    • 「8の字配置ー平行接続」
    • 「8の字配置ークロス接続」


シングル・ループ

はじめに、計算の基準となる2つのループ「L1」「L2」(直径0.58m)を測定しました。

下図中の黒い丸印は巻き始め位置を表しています。(シングル・ループの場合は、巻き始めの位置に意味はありません。)


測定結果

2つのループ(L1, L2)のインダクタンスを測定しました。
測定周波数: 0.3MHz, 10MHz(9.9), 20MHz(19.8), 30MHz(29.7)

下の表は(L1, L2)のインダクタンス測定値です。

測定したインダクタンス値のグラフです

L2 を測定したときの、 APB-1 のインピーダンス・アナライザ・モードのスクリーン・ショットです。

  • 赤色のグラフはインダクタンス、スケールは左側です。
  • 青色のグラフはインピーダンス、スケールは右側です。
  • グラフ右上のリードアウトは、上段が測定周波数とインダクタンス、下段が測定周波数とインピーダンスです。
  • リードアウトの数値はグラフに交差するカーソルの位置(矢印部分)の値を表しています。
  • リードアウトの文字色は、グラフ色と同一ではありません。

L1 のスクリーン・ショットは、L2 で上書きしてしまったので残っていませんが、L2 とほぼ同じでした。


測定結果から

同じサイズ(直径0.58m)で製作した2つのループ(L1、L2)のインダクタンスは、ほぼ同じ値でした。
このループを使用して実験を進めていきます。



「平行配置ー平行接続」

「平行配置ー平行接続」とは、平行に配置した2つのループの、巻き始め側と巻き始め側、巻き終り側と巻き終り側を接続した状態です。
下図中の黒い丸印は巻き始め位置を表しています。


測定結果

ループ間隔と周波数を変えてインダクタンスを測定しました。
ループ間隔: 0.05m, 0.1m, 0.2m, 0.3m, 0.4m, 0.5m, 0.6m
測定周波数: 0.3MHz, 10MHz(9.9), 20MHz(19.8), 30MHz(29.7)

下記の表上段はインダクタンスの測定値( Lt )、表下段は相互インダクタンス( M )です。
相互インダクタンスは計算値です。合成インダクタンスの測定値から下記の式を使って計算しました。

コイル記号の黒い丸印は巻き始め位置を表しています。

左のグラフは測定したインダクタンス( Lt )、右のグラフは相互インダクタンス( M )です。

上記の測定後に、ループ間隔を変えてパーシスタンス表示で記録しました。


測定結果からわかること

「平行配置ー平行接続」は、

  • 2つのループを貫く磁束が同一方向になるため、ループが和動的に結合している。
  • ループ間の結合が大きく、相互インダクタンスが大きい。
  • 2つのループの間隔 0.3m を中心にインダクタンスの変化を見ると、さらに間隔が近づく方向ではインダクタンスが上昇し、また離れる方向でもインダクタンスが上昇する。
  • ループ間隔を変えたときのインダクタンスへの変化は、15MHz 以下では変化が少なく、15MHz 以上では変化が少し大きい。
  • ループの間隔や周波数によってバラツキがあるが、この組み合わせの合成インダクタンスの値はシングル・ループのインダクタンスに対して、およそ 0.6倍 ~ 0.8倍 の大きさに減少する。

磁界の変化によって2つのコイルに誘起する電流の和 It は、L1 に流れる電流 I1 と、L2 に流れる電流 I2 の和ですから、It = I1 + I2と表すことができます。したがって「平行配置ー平行接続」は、誘起電流が増加する組み合わせであるといえます。



「平行配置ークロス接続」

「平行配置ークロス接続」とは、平行に配置した2つのループの巻き始め側と巻き終り側を、互いに交差するように接続した状態です。

下図中の黒い丸印は巻き始め位置を表しています。


測定結果

ループ間隔と周波数を変えてインダクタンスを測定しました。
ループ間隔: 0.05m, 0.1m, 0.2m, 0.3m, 0.4m, 0.5m, 0.6m
測定周波数: 0.3MHz, 10MHz(9.9), 20MHz(19.8), 30MHz(29.7)

下記の表上段はインダクタンスの測定結果( Lt )、表下段は相互インダクタンス( M )です。
相互インダクタンスは計算値です。合成インダクタンスの測定値から下記の式を使って計算しました。

コイル記号の黒い丸印は巻き始め位置を表しています。

左のグラフは測定したインダクタンス( Lt )、右のグラフは計算した相互インダクタンス( M )です。

上記の測定後にループ間隔を変えながら、パーシスタンス表示で記録しました。
見やすくするために縦軸の L と Imag のスケールを拡大しています。


測定結果からわかること

「平行配置ークロス接続」は、

  • 2つのループの磁束が向かい合う方向になり、ループが差動的に結合している。そのため、磁束を打ち消し合う関係になる。
  • ループ間隔の変化によるインダクタンスの変化が大きく、相互インダクタンスの変化も大きい。
  • ループ間隔を狭くするとインダクタンスが減少し、相互インダクタンスも減少する。
  • ループの間隔や周波数によってバラツキがあるが、この組み合わせの合成インダクタンスの値はシングル・ループのインダクタンスに対して、およそ 0.4倍~ 0.8倍 の大きさに減少する。

この2つのループは、次のような関係になっていると考えられます。

  • 向かい合うループの磁束が打ち消しあう
  • 逆起電力により電流が減少する
  • 磁束の大きさが減少する
  • インダクタンスが減少する
このように合成インダクタンスは大きく減少しますが、ループの誘起電流も同じように減少してしまいます。

磁界の変化によって2つのコイルに誘起する電流の和 It は、L1 に流れる電流 I1 と、L2 に流れる電流 I2 の和ですから、 It = I1 - I2 と表すことができます。したがって「平行配置ークロス接続」は、誘起電流が減少する組み合わせであるといえます。 インダクタンスが低下して S/L が向上しても、誘起電流が減少するのは良くありません。



「8の字配置」

「8の字配置」とは、上下にループを配置した状態です。2つのループは同一平面上にあり、ループ(水色)は、ループ(灰色)を同一平面で 180 度回転させた関係になります。

「8の字配置ー平行接続」は、
8の字に配置した2つのループを、巻き始め側と巻き終り側を、互いに接続した状態です。(下図左側)

「8の字配置ークロス接続」は、
8の字に配置した2つのループを、巻き始め側と巻き始め側、巻き終り側と巻き終り側を、互いに接続した状態です。(下図右側)
これは原典の 「パラレル・クロスド・ループ」 と同じ接続状態です。

下図中の黒い丸印は巻き始め位置を表しています。


測定結果

周波数を変えてインダクタンスを測定しました。
測定周波数: 0.3MHz, 10MHz(9.9), 20MHz(19.8), 30MHz(29.7)

下記の表上段はインダクタンスの測定結果( Lt )、表下段は相互インダクタンス( M )です。
相互インダクタンスは計算値です。合成インダクタンスの測定値から計算しました。

左のグラフは測定したインダクタンス( Lt )、右のグラフは計算した相互インダクタンス( M )です。

「8の字配置ー平行接続」

「8の字配置ークロス接続」


測定結果からわかること

「8の字配置ー平行接続」と「8の字配置ークロス接続」は、

  • 同一平面上にループが配置されているので、互いの磁束の影響が少なく、相互インダクタンスが小さい。
  • 接続方法が異なるので相互インダクタンスの極性に違いはあるが、インダクタンス特性はどちらも良く似ている。
  • この組み合わせの合成インダクタンスの値は、シングル・ループのインダクタンスに対して、およそ 0.5倍 ~ 0.6倍 の大きさに減少する。
  • 他の組み合わせと比較すると、周波数によるインダクタンスの変化は起伏が小さく 「かなり平坦」 である。

磁界の変化によって「8の字配置」の2のコイルに誘起する電流の和 It は、次のように分類できます。

  • 「8の字配置ー平行接続」は「平行配置ークロス接続」と比較すると、電気的に同じ回路になることがわかります。合成される誘起電流 It は、L1 に流れる電流 I1 と、L2 に流れる電流 -I2 の和ですから、It = I1 - I2と表すことができます。
    したがって「8の字配置ー平行接続」は、誘起電流が減少する組み合わせであるといえます。
  • 「8の字配置ークロス接続」は「平行配置ー平行接続」と比較すると、電気的に同じ回路になることがわかります。合成される誘起電流 It は、L1 に流れる電流 I1 と、L2 に流れる電流 I2 の和ですから、It = I1 + I2と表すことができます。
    したがって、「8の字配置ークロス接続」は、誘起電流が増加する組み合わせであるといえます。



インダクタンス測定値から電流比を計算する。

ループ面積とインダクタンス測定値から、ループのそれぞれの組み合わせ毎の電流比を計算します。 この計算には、10MHz(9.9MHz)のインダクタンス値を使用しました。


直径0.58m ループ単体と、2倍の面積を持ったループの組み合わせとの比較。

下表は、直径0.58m ループ単体の誘起電流の大きさに対して、直径0.58m ループを2つ組み合わせたときの電流比の計算結果です。
表の内容は上から順に

  • 「平行配置ー平行接続」の電流比。
  • 「平行配置ークロス接続」の電流比。
  • 「8の字配置ー平行接続」と「8の字配置ークロス接続」の電流比。
となっています。

上の表からは、「8の字配置ークロス接続」の電流比は 2.9倍、「平行配置ー平行接続」の電流比は 2.5 ~ 2.6倍 となっており、面積が 2倍のときの電流比は 2.5倍以上あることがわかります。
そして、この2つはどちらも誘起電流が増加する組み合わせなので、受信レベルの向上が期待できます。

もう一方の組み合わせ「8の字配置ー平行接続」の電流比は 2.9倍、そして「平行配置ークロス接続」の電流比は 2.6 ~ 3.7倍 と電流比が大きな値になっていますが、どちらも誘起電流が減少する組み合わせなので、受信レベルの向上は期待できそうにありません。


直径1m ループ単体と、0.67倍の面積を持ったループの組み合わせとの比較

下表は、直径1m ループ単体の誘起電流の大きさに対して、直径0.58m ループを2つ組み合わせたときの電流比を計算したものです。
上の表から順に

  • 「平行配置ー平行接続」の電流比。
  • 「平行配置ークロス接続」の電流比。
  • 「8の字配置ー平行接続」と「8の字配置ークロス接続」の電流比。
です。

誘起電流が増加する組み合わせの「8の字配置ークロス接続」の電流比は 1.4倍、「平行配置ー平行接続」の電流比は 1.2 ~ 1.3倍 です。

この2つの組み合わせは、直径1m ループの面積に対して僅か 0.67倍の面積ですが、直径1m ループと同等以上の電流比になることがわかります。そして、この2つはどちらも誘起電流が増加する組み合わせなので、直径1m ループと同等程度の受信レベルが期待できます。

誘起電流が減少する組み合わせの「8の字配置ー平行接続」の電流比は 1.4倍、そして「平行配置ークロス接続」の電流比は 1.2 ~ 1.8倍 と電流比が大きな値になっていますが、どちらも誘起電流が減少する組み合わせなので、受信レベルの向上は期待できそうにありません。



今回のまとめ

WSMLループ・アンテナ は、ループの誘起電流を増やす工夫がアンテナ感度の向上に繋がるという考えから、 このループ・アンテナをコイルの側面から考察してきました。

前回の考察を簡単に纏めると、

  • 誘起電流とS/L比
    • S/L比を大きくすると、ループの誘起電流が増加する。
    • S/L比が大きいループとは、「面積」が大きくて「インダクタンス」が小さいループである。
  • インダクタンスを低減する工夫
    • インダクタンスの低減は、S/L比を向上させ誘起電流を増やす。
    • インダクタンスの低減には、線径の太い導体あるいは表面積が大きい平板状の導体を使うと効果がある。
    • ループの巻き数は1ターンが良い。(インダクタンスは巻き数の2乗に比例して大きくなる。)
    • ループの面積を増やすよりも、インダクタンスを低減する工夫のほうが効率が良い。
  • 表皮抵抗
    • 導体の材料に銅やアルミニウムを使った場合の表皮抵抗は、表皮抵抗 RS よりもループのインピーダンス XL のほうがかなり大きいので
      XL >> RS となり、表皮抵抗がループ電流に与える影響は比較的少ない。
ここまでが前回の考察です。

そして今回の実験でわかったことは、

  • ループの並列接続
    • 並列接続したループは、インダクタンスの低減効果が大きい。
    • ループを並列接続したときのインダクタンスは、相互インダクタンスの影響を受ける。
    • その要因は、ループの配置や接続方法とループ間の結合状態(和動的・差動的)で磁束や誘起電流の方向が決まり、相互インダクタンスに影響を与える。
    • ループを並列接続したときの誘起電流の大きさは、ループの配置や接続方法の影響を受ける。
    • ループの「平行配置」は、接続方法によってループの結合状態が大きく変わる。
    • ループの「8の字配置」は「平行配置」よりもインダクタンスが小さく、電流比が大きい。

    • 2つのループが和動的に結合して誘起電流が増加するのは、「平行配置ー平行接続」と「8の字配置ークロス接続」の組み合わせ。
    • 2つのループが差動的に結合して誘起電流が減少するのは、「平行配置ークロス接続」と「8の字配置ー平行接続」の組み合わせ。

  • 2つのループと合成する誘起電流の方向
    • 2つのループを組み合わせたときの誘起電流の大きさを決める要因は、ループの面積とインダクタンス値( S/L比 )だけではない。
    • 2つのループを組み合わせたときの誘起電流の大きさは、 合成する 「誘起電流の方向」 で大きく変わる。
    • ループ間の結合状態(和動的・差動的)で誘起電流の方向が決まる。
ということです。

その結果 「平行配置ー平行接続」 は、原典の 「パラレル・クロスド・ループ」 の組み合わせである 「8の字配置ークロス接続」 と同じように、誘起電流が増える組み合わせであることがわかりました。

並列接続したループの効果はこのようになります。
シングル・ループの面積を 2倍 に増やしても、電流比は 1.3倍 しか増えませんが、2つのシングル・ループを並列接続して面積を 2倍 にすると、電流比は 2.5倍 以上得られる。
(「8の字配置ークロス接続」なら 2.9倍、「平行配置ー平行接続」なら 2.5 ~ 2.6倍。)

2つのシングル・ループを並列接続した面積が、直径1m ループの面積の 0.67倍 しかなくても、直径1m ループと同等以上の電流比が得られる。
(「8の字配置ークロス接続」なら電流比は 1.4倍、「平行配置ー平行接続」なら電流比は 1.2 ~ 1.3倍。)


次回は、これまで考察したことを、実際の受信レベルを比較して確めてみようと思います。

続きはこちら: WSMLアンテナ:ループの受信信号レベルを比較する

2013年8月9日金曜日

TiddlyFoxの最新版1.0alpha17がmozilla ADD-ONSに

TiddlyFoxの最新版が Mozilla の事前審査を無事に通過したようです。

インストールはmozilla ADD-ONSから

TiddlyFox extension for Firefox 1.0alpha17
https://addons.mozilla.org/ja/firefox/addon/tiddlyfox/

今回、事前審査を通過したことによって、最新版への自動更新が可能になりました。

ただし、何らかの理由でFirefoxの古いバージョンを使用しているユーザーは注意が必要です。Firefox20より前のバージョンのユーザーは、この最新版に更新すると設定の保存ができなくなってしまう。つまり、tiddlerの保存の都度に確認画面が表示されるそうです。

対応策としては、更新せずに以前の「TiddlyFox extension for Firefox 1.0alpha16」を使い続けるか、Firefoxを最新版に更新するかのどちらかでしょう。

Google groups のJeremyさんの投稿 に、今回の更新について書かれていました。一部引用

いまのところ最新版のTiddlyFoxは GitHub からのみ入手可能で、addons.mozilla.org (AMO)に置いてあるのはとても古いです。 ユーザーにとって良くないことは、古いバージョンは簡単にインストールできるのに、それを最新版に更新するのにはものすごく手間がかかること。

TiddlyFoxの最新版の承認をAMOに拒否されていたのは、旧バージョンの Firefox でユーザーの設定を保存するために非推奨のメソッドを使用ていたのが理由。そこで、この機能を削除したものを最新版としてリリースしました。

この最新版をAMOに承認してもらえれば、TiddlyFoxユーザーのアドオンの自動更新ができるようになります。問題は最新版に更新するとFirefox20より前のバージョンでは設定の保存ができなくなること。

TiddlyFoxの自動更新ができるようになれば、FirefoxのTiddlyWikiユーザーが利用しやすくなりますね。Jeremyさんありがとうございます。:)



TiddlyFox extension for Firefox の バージョン履歴のWebページには。 (prior to version 21)と書かれているのでFirefox21より前のバージョンが対象のようです。

2013年8月2日金曜日

WSMLアンテナをコイルの側面から考察してみる

はじめに

WSMLアンテナについて、今年の3月にいくつかの実験を行いましたが、中途半端な結果になってしまい消化不良を感じていました。

前の記事

その後、気になった事などを時間を見つけては暫く考察していましたが、気が付けば既に8月になってしまいました。その間に分らない事を調べたメモや実験を行った時のメモがだいぶ溜まってきたことや、年齢と共に記憶力の低下を感じる今日この頃ですので忘れないうちにそろそろ纏めに入ることにしました。



WSMLアンテナ

このアンテナは LZ1AQ Chavdar さんが開発された広帯域受信用アンテナで、正式名称は Wideband Active Small Magnetic Loop Antenna と言います。長い名称なので略して(日本国内では) WSMLアンテナ と呼ばれています。

WSMLアンテナは、ループに誘起した非常に小さな電流をアンテナ・アンプで増幅する方式のアクティブ・アンテナです。このアンプの特徴のひとつとして非常に低い入力インピーダンスであることが挙げられます。このことから、ループの誘起電流ができるだけ多く流れるような工夫が、このアンテナの感度の向上に繋がると考えられます。

また、WSMLアンテナのループエレメントは、見る角度を変えると「大きなコイルである」とも言えます。そこで今回は、WSMLアンテナをコイルの側面から考察してみました。



コイルに流れる電流

コイルに流れる電流の変化は磁界を発生させ、コイルを貫く磁界の変化は電流を発生させます。また、コイルに流れる電流の大きさと発生する磁束との関係はこのような式で表されます。

\[ \begin{multline} LI= N\Phi \\ \begin{array}{ll} {L} &: \text{インダクタンス [H]} \\ {I} &: \text{電流 [I]} \\ {N} &: \text{コイルの巻き数} \\ {\Phi} &: \text{磁束 [wb]} \end{array} \\ \quad \end{multline} \]

磁束は磁束密度とコイル(ループ)の面積で表すことができます。

\[ \begin{multline} \Phi = BS \\ \begin{array}{ll} {B} &: \text{磁束密度 [wb/}m^2\text{]} \\ {S} &: \text{コイル(ループ)の面積 [}m^2\text{]} \end{array} \\ \quad \end{multline} \]

さらに磁束密度は、磁界の強さと透磁率を使ってこのように表されます。

\[ \begin{multline} B = {\mu}H \\ \begin{array}{ll} {H} &: \text{磁界の強さ [A/m]} \\ {\mu} &: \text{透磁率 [H/m]} \end{array} \\ \quad \end{multline} \]

上記の式を整理すると、このようになります。

\[ \begin{multline} I= \frac{N\Phi}{L} = \frac{NBS}{L} = \frac{\mu NHS}{L} \end{multline} \]

これらの関係式から、コイルに流れる電流の大きさについてわかることは、 「面積」や「巻き数」、「磁界の強さ」が大きくなるとコイルの電流が増加する、「インダクタンス」が大きくなるとコイルの電流が減少するするということです。

ループの誘起電流を大きくするには「S/L比」を大きくする。これは「面積」が大きくて「インダクタンス」が小さなコイルを意味しています。コイルにはチョット厄介な条件ですが、この WSML アンテナにはそのためのアイデアが詰まっているようです。



空芯コイルのインダクタンス

空芯コイルのインダクタンスは、このような式で求めることができます。

\[ \begin{multline} \begin{array}{ll} L &=& \frac{\mu_0 NS}{I} \cdot \frac{NI}{b} \cdot k \\ &=& \frac{\mu_0 {N^2}\pi{a^2}}{b} \cdot k \quad[H] \\ \end{array} \\ \begin{array}{ll} {N} &: \text{コイルの巻き数} \\ {a} &: \text{コイルの半径 [m]} \\ {b} &: \text{コイルの長さ [m]} \\ {\mu_0} &: \text{真空の透磁率 [H/m]} \\ &: \mu_0 = 4 \pi \cdot 10^{-7} \\ {k} &: \text{長岡係数} \end{array} \\ \quad \end{multline} \]

この式から、インダクタンスは巻き数の二乗に比例して大きくなることがわかります。

前項でコイルの電流は巻き数に比例して大きくなることがわかりました。とは言うものの、巻き数を増やすほどインダクタンスの増加量が大きくなるので、ループの「S/L比」が悪くなってしまいます。そのため、ループの巻き数は 1 回巻きが適していると思われます。

式中の長岡係数は、「Lundinの近似式」を使うと精度良く求めることができます。(文末に資料を書いておきます。)



コイルの面積とインダクタンス

コイルの面積とインダクタンスは、互いにどのように関連しているのでしょうか。

直径 1m ループの面積を基準にして、面積を 1/4倍、1/2倍、2倍、4倍。さらに、線径を 1, 2, 4, 8, 16mmと変えて計算してみました。

「直径 1m・線径 4mm」のループの面積を基準にして見てみると、面積が 2 倍になるとインダクタンスは 1.5 倍に増加していき、面積が 1/2 になるとインダクタンスは 0.7 倍に減少しています。そして、線径が 2 倍になるとインダクタンスは 0.9 倍に減少していき、線径が 1/2 になるとインダクタンスは 1.1 倍に増加しています。

コイルの面積が同じなら、線径が太いものほどインダクタンスが減少することになります。このことから、ループの誘起電流を増やす(「S/L比」を良くする)には太い線を使うのが効果的なことがわかります。



コイルの面積と電流

コイルの面積と電流は、どのように関連しているのでしょうか。

「直径 1m・線径 4mm」のループを基準にして、インダクタンス比から電流比を計算してみました。

電流を増やすためコイルの面積を 2 倍に増やしても、電流比は 1.3 倍程度しか増えないようです。グラフを見ると電流比を 2 倍にするためには、面積を 4 倍にして線径を 2 倍にする、或いは面積を 3 倍にして線径を 4 倍にすればいいことがわかります。

誘起電流を増やすためにループの面積を大きくするのには広い空間が必要になりますが、ループの線径を太くするのならば必要な空間は少しで済みます。それでも大変そうです。



表皮効果

誘起電流を増やすためには、線径を太くするのが効果的なことがわかりました。しかし、太い銅線(または銅棒など)は高価で、ループの重量も重くなってしまうため、あまり現実的ではありません。

導体に周波数の高い電流が流れるとき、電流は導体の表面に偏って流れていき、ある深さより深い部分にはほとんど流れなくなります。この現象は表皮効果と呼ばれています。

このとき、流れる電流の大きさが $ e^{-1} $ に減衰する深さが表皮深さになります。流れる電流の周波数が高いほど、この表皮深さは浅くなっていきます。

表皮深さを求める式はこのように表されます。

\[ \begin{multline} \delta = \frac{1}{\sqrt{\pi f \mu \sigma }} \quad [m] \\ \begin{array}{ll} {\sigma} &: \text{導体の導電率 [S/m]} \\ {\mu} &: \text{透磁率 [H/m]} \\ {f} &: \text{周波数 [Hz]} \end{array} \\ \quad \end{multline} \] \[ \begin{multline} \mu = \mu_r \cdot \mu_0 \quad [H/m]\\ \begin{array}{ll} {\mu_r} &: \text{導体の比透磁率 [H/m]} \\ &: \text{銅やアルミニウム }{\simeq}1 \\ {\mu_0} &: \text{真空の透磁率 [H/m]} \\ &: \mu_0 = 4 \pi \cdot 10^{-7} \end{array} \\ \quad \end{multline} \]

例えば、1 MHz のときの表皮深さは、銅が 66 μm、アルミニウムでは 84 μm 程度です。 周波数が高くなると、ほとんどの電流は導体の表面だけに流れているような状態になります。このことから「導体の中心部分は無くてもいいのでは?」と考えることもできます。例えれば「中空の太い導体」でもいいのではと…
実際には、テレビ放送や FM 放送の受信アンテナに、アルミパイプが使われているのを見ることができます。

また、パイプを切り開いて平らに伸ばした形状、言い換えると表面積が多く取れる「薄い板状の導体」も同様です。この WSMLアンテナ の自作例にもアルミ平板などが、ループの材料としてよく使われています。



表皮抵抗

ループを流れる高周波電流は、表皮効果によって増大する抵抗からどのくらい影響を受けるのでしょうか。

円形断面の導体の場合、表皮抵抗はこのように計算することができます。

\[ \begin{multline} R_S = \frac{l}{D\pi\delta}\cdot\frac{1}{\sigma} \quad [\Omega] \\ (D \gg \delta) \\ \begin{array}{ll} {l} &: \text{ループの周囲長 [m]} \\ {D} &: \text{導体の直径 [m]} \\ {\delta} &: \text{表皮深さ [m]} \\ {\sigma} &: \text{導体の導電率 [S/m]} \end{array} \\ \quad \end{multline} \] \[ \begin{multline} \begin{array}{ll} \text{表皮深さ}{\delta}\text{を展開すると} \\ R_S = \frac{l}{D\pi}\cdot\sqrt{\frac{\pi{f}\mu}{\sigma}} \quad [\Omega]\\ \end{array} \\ \quad \end{multline} \]

四角形断面の導体の場合、表皮抵抗はこのように計算することができます。

\[ \begin{multline} R_S = \frac{l}{2(w+h)\delta}\cdot\frac{1}{\sigma} \quad [\Omega] \\ {(h \gg \delta, \quad w \gg \delta)}\\ \begin{array}{ll} {l} &: \text{ループの周囲長 [m]} \\ {w} &: \text{導体の幅 [m]} \\ {h} &: \text{導体の厚さ [m]} \\ {\delta} &: \text{表皮深さ [m]} \\ {\sigma} &: \text{導体の導電率 [S/m]} \end{array} \\ \quad \end{multline} \] \[ \begin{multline} \begin{array}{ll} \text{表皮深さ}{\delta}\text{を展開すると} \\ R_S = \frac{l}{2(w+h)}\cdot\sqrt{\frac{\pi{f}\mu}{\sigma}} \quad [\Omega]\\ \end{array} \\ \quad \end{multline} \]

上記の式を使って表皮抵抗を計算してみました。

次の図は、直径 1 m ループを銅線で作った場合の表皮抵抗です。
銅の導電率は、100(%IACS) の値を使用しました。

次の図は、直径 1 m ループをアルミ線またはアルミ平板( 20mm 幅)で作った場合の表皮抵抗です。
アルミニウムの導電率については、アルミ線はマグネットワイヤ用の 62(%IACS) を、アルミ平板は住宅建材用の 55(%IACS) の値を使用しました。

ホームセンター等では住宅建材用のアルミ平板が入手できますが、材質記号 A6063 を調べてみるとアルミニウム合金製でした。そのため導電率はアルミ線よりも少し低いようです。

どちらも線径を 2 倍にすると、表皮抵抗が 1/2 に減少することがわかります。アルミ平板の導電率は少し低いですが、その代わりに表面積を広くできるので表皮抵抗の低減に効果的なことがわかります。

導体の線径 1 mm の表皮抵抗は、周波数が 10 MHz になると表皮抵抗が 1 Ω 付近まで増加しています。はじめに計算した「線径 1 mm・直径 1 m」ループのインダクタンスは 4.9 μH でした。コイルのインピーダンスの式は\( X_L = 2{\pi}fL [\Omega] \) なので、この式から周波数 10 MHz のインピーダンスを計算すると 308 Ω になります。表皮抵抗 \( R_S \) よりもループのインピーダンス \( X_L \) のほうがかなり大きいです。

\[ X_L \gg R_S \]

このことから、表皮抵抗がループ電流に与える影響は比較的少ないと思われます。



ループのインダクタンス

現実世界のコイルは計算どおりにいかないもので、考えるだけでは解らないことがたくさん出てきます。後は現物で実験する他は無ので、いくつかの実験を行いました。ようやく最近になって実験結果を纏めを始めましたので、近いうちに続きを書こうと思っています。

追記:2013年9月22日 続きを書きました。
WSMLアンテナ 2つのループを使う場合


参考


Lundinの近似式

Richard Lundin さんが 1985 年に発表された、長岡係数を高精度に求めることができる近似式です。

Richard Lundin,'A Handbook Formula for the Inductance of a Single-Layer Circular Coil',Proc IEEE, Vol 73, p1428-1429, Sept.1985 (この文書へのリンクはありませんが、下記のwebサイトには解説資料があります。)

G3YNH,David W Knight さんの web サイト には、"Lundin's handbook formula"の解説資料があります。
このページ "Solenoid inductance and impedance calculation" 内。
タイトル名は「Part 1: Solenoid inductance calculation」です。
ファイル名は "Solenoids.pdf"、このファイルのP29-30にLundin's handbook formulaの解説が記載されています。

参考:プログラム例
http://abelian.org/tssp/formulae.html

2013年4月10日水曜日

Office 互換機能パックでxlsxファイルが開けない。

Office 互換機能パックで xlsx ファイルを開こうとすると「表示形式を追加できません。」や「セルの書式が多すぎるため、書式を追加できません」が表示される。




Excel 2000 や 2003 で xlsx 形式のファイルを開く場合は 「Word/Excel/PowerPoint 用 Microsoft Office 互換機能パック 」を使用することが多いと思います。このとき「スタイル数が 4,000 を超えた xlsx ファイル」を開こうとするとこのようなエラーが発生します。

Excel スタイルの上限数は、Excel 97-2003 では 4,000 個までですが、Excel 2007 以降では上限数が 64,000 個までとなっています。したがってスタイル数が 4,000 を超えた xlsx ファイルは、Excel 2007 以降で開くことができますが、それ以前の Excel 2000 や 2003 では開くことができないので、このようなエラーが発生します。



気付かないうちに増加するスタイル

Excelのスタイルとは「表示形式」、「配置」、「フォント」、「罫線」、「パターン」、「保護」等の、一連の書式設定をひとまとめにして名前を付けたものです。また、2 つ以上のセルが全く同じ書式を共有する場合は 1 つのスタイルが使用され、それぞれの書式設定に相違がある場合は各セルが異なるスタイルを使用します。

スタイルは、ブック内のシートコピーや、ブック間のコピーを行うときに一緒にコピーされます。そのため、シートを繰り返しコピーしながら使用している場合などは、気づかないうちにスタイルがかなりの数に増えてしまうことがあります。

例えばこんな使い方の場合です。現在使用中のシートをコピーして、次に使用するための新しいシートを作り、そのブックを次に使用する名前で保存する。このような操作を毎回繰り返す使い方です。例を挙げると、日報、週報、月報、集計表などです。このような例では、同じ体裁のシートを繰り返しコピーしながら使用していることがよくあると思います。ところがその結果、気付かないうちにスタイルが増加してしまうことになります。(このような場合はテンプレートを利用するのが得策かもしれません。)



スタイルを削除して xlsx ファイルを開けるようにする

通常の使い方で 4,000 以上のスタイルを使い分けることは先ず無いでしょう。増加したスタイルのほとんどは Excel が勝手にコピーしたもので、ユーザー自身は未使用のものだと思われます。

そこで、増加したスタイルをマクロで一括削除といきたいところですが。そもそも xlsx ファイルを開くために「Office互換機能パック」を使っているユーザーは、問題が起きている xlsx ファイルを開くことができません。したがって、マクロを使ってスタイルの削除を行うことができません。このような場合の便利なツールが XLStylesTool です。



XLStylesTool

このツールは「Office Open XML ファイル形式」のワークブック(xlsx 形式ファイル)から、すべての未使用のスタイルを取り除いてくれます。未使用のスタイルとは、ワークブックに定義されているが、どのセルにも使用されていないスタイルです。

ダウンロードは配布元のサイトから

.NET4.0 version of the XLStylesTool is now available | XLGeek's space:
https://sergeig888.wordpress.com/2011/03/21/net4-0-version-of-the-xlstylestool-is-now-available/

追記: March 4, 2016

Windows 8 以降は Windows App Store 版を使用します。

XLStylesTool – Microsoft ストアの Windows アプリ:
https://www.microsoft.com/ja-jp/store/apps/xlstylestool/9wzdncrfjptg


実行環境

インストールの必要はありません。ダウンロードしたファイルを展開後に実行するだけです。

実行環境ごとにいくつかのバージョンが用意されています。

  • XLCleanerDotNET4.0

    XLCleanerDotNET4.0 の実行には、Microsoft .NET Framework 4 Client Profile が必要です。(Microsoft .NET Framework 4 が入っていれば OK です。)

  • XLCleaner

    XLCleaner の実行には、Microsoft .NET Framework 3.5 Client Profile が必要です。(Microsoft .NET Framework 3.5 が入っていればOKです。)

他にもいくつかのバージョンがありますが、どちらも実行環境の違いだけのようです。今回 XLCleaner と XLCleanerDotNET4.0 をそれぞれ WindowsXP SP3 で試してみましたが、どれも同じように動作しました。



オプションの説明

実行ウィンドウにはいくつかのオプションがあります。通常はすべてチェックをつけて使用するとうまくいきます。

  • Force all cell styles to "Nomal"

    すべてのセルスタイルを強制的に「標準」にする。このオプションは、セルスタイルのプロパティを'標準'にリセットするだけで、既に適用済みのスタイル設定は変更しません。

  • Remove named ranges that contain references to external sources

    外部ソースへの参照を含む名前付きセル範囲を削除する。このオプションは、不正な名前付きセル範囲(#REF を参照する名前付きセル範囲)を全て取り除きます。

  • Unhide hidden named ranges (valid system generated names will remain hidden)

    非表示の名前付きセル範囲を再表示する。 (有効なシステム生成名は非表示のままです。)



使い方

注意!処理対象のファイルは上書きされます。大事なファイルはあらかじめバックアップを取るなどしておきましょう。

  1. XLCleaner を実行。
  2. Get Excel Fileボタンを押して処理対象の xlsx ファイルを指定。
  3. オプションの、全てのチェックボックスを選択。
  4. Process Fileボタンを押して処理を実行。(処理は数秒で完了します)
  5. xlsx ファイルに関連付けされている Microsoft Open XML Converter が起動して変換されたブックが Excel で表示されます。

オプションの Commit changes and open in Excel.(変更をコミットしてExcelで開く)を選択しないと処理が反映されませんので注意してください。

処理済みの xlsx ファイルは Microsoft Open XML Converter で今までどおりに開くことができます。



実行中のウィンドウ



処理前のスタイル数

スタイル設定を調べるマクロを使ってカウントしてみました。このファイルでは 40,962 個のスタイルが登録されていました。



処理後のスタイル数

未使用スタイルの削除処理後は、組み込みスタイルだけが残りました。このスタイルは Excel にはじめから登録されているものです。今回のケースでは 40,962 - 48 = 40,914 個の未使用スタイルが増加していたことになります。

このように、スタイルが増加して開けなくなった xlsx 形式のファイルを XLStylesTool ツールで処理することで、Excel 2000 や Excel 2003 で開くことができるようになります。



スタイルの多い xlsx ファイルを LibreOffice で開いてみる

LibreOffice calc は xlsx 形式のファイルを開くことが可能です。現在の最新版 LibreOffice 4.0.2.2 calc を使って上記の同じファイル bia13.xlsx を開いてみました。

ThinkPad T40 PentiumM 1.3MHz でファイルを開くまでの所要時間を計測しました。処理前の xlsx ファイルは開くまでの時間は 590 秒 でしたが、処理後の xlsx ファイルでは 64 秒で開くことができました。

処理前の xlsx ファイルの場合では PC がフリーズしたのかと思うくらい時間がかかりました。LibreOffice calc もスタイルの多いファイルは苦手のようです。

xlsx ファイルの関連付けを LibreOffice calc に変更すると、XLCleaner の処理完了後に LibreOffice calc で開くことができました。



参考:マイクロソフト・サポート技術情報
Excel で "別のセルの書式が多すぎます。" エラー メッセージが表示される

XLGeek, Thank you for the awesome tool.

2013年3月27日水曜日

WSML ループ単体の受信レベル

前回の実験では受信感度を高める要因のひとつ、S/L比を求めるためにループのインダクタンスを測定しました。その結果からは、S/L比が大きくても受信感度が低下する場合があることがわかりました。

ループの組み合わせ(配置と接続方法)と受信レベルとの関係はどのようになっているのでしょうか?今回はループの受信レベルを測定しました。



受信レベルの測定

今回の実験では、ループ・エレメントの受信レベルを(アンテナ・アンプを使用しない状態で)測定します。測定はAPB-1のスペクトラム・アナライザ・モードを使用しました。

APB-1の入力インピーダンス(50Ω)は、WSMLアンテナ・アンプの入力インピーダンス(約3Ω)に比べて大きいために測定結果に影響あるかもわかりませんが、受信レベルの相対的な比較できればよいと考えました。そのためインピーダンス整合をせずに直接接続しています。


測定周波数

APB-1のスペクトラム・アナライザ・モードでは、2つの測定カーソルが設定できます。今回設定する周波数は、1MHzと10MHzの付近から安定して受信できる放送局を選びました。

  • 1MHz付近からは、地元放送局 KBS京都1,143kHz (かなり強力)
  • 10MHz付近からは、ラジオ日経 9,595kHz

これらの周波数で受信レベルを測定しました。


受信レベルの測定結果

次の表は測定結果をS/L比順に並べ替えたものです。受信レベルの単位はdBです。

次の表は測定結果を1143kHzの受信レベルで降順に並べ替えたものです。

次の表は測定結果を9595kHzの受信レベルを降順に並べ替えたものです。

参考データ(以前の記録)

次の表は先日実験したときのもので、ループ単体の受信レベルを室内で測定したデータです。

次の表は少し前にベランダで実験したときのデータです。このときはループをWSMLのアンテナ・アンプに接続し、その出力を二分配後に、IC-R75とAR7030PLUSを接続して受信しました、そのときのSメーター指示値を記録しています。実際の使用に近い状態です。



今回のまとめ

今回はループの組み合わせ(配置と接続方法)と受信レベルとの関係を調べるため、ループ単体の受信レベルを測定しました。

今回の実験ではS/L比が同じような値でも、面積やインダクタンスが違う(約2倍)ループを使用しました。さらに実験場所が、建物の影響を受けやすい限定された空間(ベランダ)だったり、アンテナ・アンプを使用せずにAPB-1の50Ω入力に接続しました。そのため多ループ化の効果がわかりにくい結果になってしまいました。
1mシングル・ループを基準にすると他ループ化の効果が判りにくいですが、見方を変えて0.64mシングル・ループを基準にして比べると、他ループ化の効果が少し表れているようにも見えます。


周波数による各ループの組み合わせの特徴。

1143kHzでは、

  • インダクタンスが大きいループ(1mシングル)の受信レベルが高い。
  • 受信レベルが高い組み合わせは、1mシングルと8の字-クロス接続、そして◎(二重丸)配置と平行配置の各平行接続(この2つはS/L比が悪かった組み合わせ)。
  • 受信レベルが低い組み合わせは、0.64mシングル、◎(二重丸)配置と平行配置の各クロス接続(この2つはS/L比が良かった組み合わせ)、8の字-並行接続。
  • 各組み合わせ全体の受信レベルの差(最大値と最小値の差)は17.17dB。
  • ◎(二重丸)-平行接続は1.5MHzあたりに変な山が見えます、◎(二重丸)配置はLoop1にLoop2を内包した配置なので、互いのループが結合しているのでしょうか?
  • 以前に記録した211kHzでは、1mシングル・ループや◎(二重丸)-平行、8の字-クロスが良い結果でした。この結果は、今回実験した1143kHzの受信レベルと同じ傾向が出ています。

9595kHzでは、

  • 受信レベルが高い組み合わせは、平行-平行接続と1mシングル、そして◎(二重丸)配置の平行接続とクロス接続(この2つはS/L比が悪かった)。
  • 受信レベルが低い組み合わせは、8の字配置の並行接続とクロス接続、0.64mシングル、平行-クロス接続(これはS/L比が良かった)。
  • 各組み合わせ全体の受信レベルの差(最大値と最小値の差)は6.43dB。
  • この周波数の平行配置は接続方法の違で受信レベルに大きな差が出ました。特に平行接続が良く、これは低い周波数でもそこそこ良い結果を出しています。反対に、クロス接続の場合はどの周波数でも結果が良くありません。

周波数別の受信レベルの差は、1143kHzの(17.17dB)に対して9595kHzが半分以下の(6.43dB)。



今回の測定結果から、ループの組み合わせと受信レベルの関係についてわかったこと。

低い周波数帯(LWやMW)では、ループの組み合わせの違いが分かり易いです。そのなかで、8の字-並行接続や、平行と◎(二重丸)の各クロス接続は、シングル・ループに比べて大きく感度が低下する組み合わせということがわかりました。

低い周波数帯で受信レベルの値が近い、8の字-クロス接続と、◎(二重丸)-平行接続や、平行-平行接続は、低い周波数帯ではよく似た特徴がありますが、10MHz付近(9595kHz)になると特徴に違いが表れます。そのなかで平行-平行接続は、どちらの周波数でも受信レベルが良好なことがわかりました。

反対に、この10MHz付近(9595kHz)の結果には、よくわからない部分もあります。◎(二重丸)や8の字配置は、接続方法の違いによる受信レベルの差は僅かです。さらに不思議なことは、8の字-クロス接続よりも、8の字-並行接続の受信レベルが僅かに高い結果になりました。これは、LWやMWとはずいぶん違う結果です。他にも何か要因があるのでしょうか?
考えてみるとこの周波数(9595kH)の0.1波長は3.12mですが、これは1mループのループ長3.14mにとても近い長さです。このあたりが関係しているのでしょうか。

多ループ化については、同じサイズのループを使わないと効果が少ない(判りにくい)こともわかりました。

今回良い結果が出た平行-平行接続はとても興味深いです。機会があれば同じサイズのループを組合わせて追試してみたいですね。

次回は、ループの電流について考えてみます。
つづく



今回の測定結果を以下に記載します。(ループ・エレメントの受信レベルを、アンテナ・アンプを使用しない状態で測定しています。)

シングルループの特性

直径1.0m シングル・ループ

直径0.64m シングル・ループ


8の字配置の特性

8の字配置 クロス接続

8の字配置 平行接続


平行配置の特性

平行配置 クロス接続

平行配置 平行接続


◎(二重丸)配置の特性

◎(二重丸)配置 クロス接続

◎(二重丸)配置 平行接続