今回は回路図を作る時よく使うExcel・VBAの簡単な紹介です。
LTSpiceを使って回路図を作る時、LibraryにないICを使いたいことがよくあります。例えばTIのICなどはSpiceモデルが提供されているので、それをLTSpiceで使えます。
その時まずはSymbolを作るのですが、効率よくやるためたたき台をExcelで自動で生成しています。
まずは名前と、Symbolの各サイドに配置するピン数、各ピンの名前を決まったフォーマットに記載します。
使ったマクロはそれらの情報を基にSymbolの各コマンドに変更、Textファイルに書き込むです。
変換の詳細な内容はここで省略しますが、例えばこのようなことを行っています:
・ピンの位置はピンの数から自動計算して、”PIN X Y SIDE OFFSET”として変換する。
・ピンの名前は”PINATTR PinName XXXX”で指定
・ピン番号は”PINATTR SpiceOrder X”
など
最終的に下記のような見た目になります:
これをそのまま使えますし、もう少し見た目を変えることもできます。とにかくピン名の入力などを簡単にできてみます。
ここでExcelのポイントを二つほど紹介します。
1)出力ファイルの選択
これは下記のコマンドを使います。
outFile = Application.GetSaveAsFilename(InitialFileName:=chipName + ".asy", FileFilter:="ASY Files (*.asy), *.asy")
FileFilterの部分で拡張子の部分を限定できます。また、InitialFileNameは選択画面が出る時のDefault値です。
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使って生成する例を紹介した。
設計の仕事をする時色んなスクリプトを作っていますが、上記のコマンドはよく使用しています。
このような経験を色んな依頼に活かせればと思います。