[Excel VBA活用例] LTspiceのSymbol生成

記事
IT・テクノロジー
今回は回路図を作る時よく使うExcel・VBAの簡単な紹介です。

LTSpiceを使って回路図を作る時、LibraryにないICを使いたいことがよくあります。例えばTIのICなどはSpiceモデルが提供されているので、それをLTSpiceで使えます。
その時まずはSymbolを作るのですが、効率よくやるためたたき台をExcelで自動で生成しています。
まずは名前と、Symbolの各サイドに配置するピン数、各ピンの名前を決まったフォーマットに記載します。
01_entryFormat.png

使ったマクロはそれらの情報を基にSymbolの各コマンドに変更、Textファイルに書き込むです。
変換の詳細な内容はここで省略しますが、例えばこのようなことを行っています:
・ピンの位置はピンの数から自動計算して、”PIN X Y SIDE OFFSET”として変換する。
・ピンの名前は”PINATTR PinName XXXX”で指定
・ピン番号は”PINATTR SpiceOrder X”
など

最終的に下記のような見た目になります:
02_symbol.png

これをそのまま使えますし、もう少し見た目を変えることもできます。とにかくピン名の入力などを簡単にできてみます。

ここでExcelのポイントを二つほど紹介します。
1)出力ファイルの選択
これは下記のコマンドを使います。
outFile = Application.GetSaveAsFilename(InitialFileName:=chipName + ".asy", FileFilter:="ASY Files (*.asy), *.asy")

FileFilterの部分で拡張子の部分を限定できます。また、InitialFileNameは選択画面が出る時のDefault値です。
03_select_file.png

2)ファイルへの書き込み方法
Textファイルを生成する時、Objectを使っています。下記のような記載でObjectを生成します:
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set outFileId = fs.CreateTextFile(outFile, True)
その後中身をWritelineで書くようにできます:
    outFileId.Writeline "XXXXX"
なお複数の行を一度書き込む時はWithが便利です:
        With outFileId
                .Writeline "XXXX"
                .Writeline "YYYY"
                .Writeline "ZZZZ"
        End With
最後にはファイルをCloseすることを忘れないようにする:
outFileId.Close

今回はLTspiceのSymbolをExcel使って生成する例を紹介した。
設計の仕事をする時色んなスクリプトを作っていますが、上記のコマンドはよく使用しています。
このような経験を色んな依頼に活かせればと思います。

サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す ココナラコンテンツマーケット ノウハウ記事・テンプレート・デザイン素材はこちら