---
title: AnalogComputer_part3
tags:  #機械系のためのメカトロニクス #ltspice #analog computer #時定数 #積分器 #乗算器  
author: [下条誠](https://convert.docswell.com/user/m_shimojo)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/DJYMR59GJM.jpg?width=480
description: 回路モジュール化とサブサーキットについての補足説明です。また、Programをダウンロードできるようにしました 積分器の時定数は時間軸の伸縮のみに影響することを例示しました   １．階層化について 積分器のモジュール化 パラメータの受け渡し 回路シンボルとその編集 積分器モジュールを使ったアナログコンピュータ  ２．サブサーキット（subcircuit） 乗算素子AD633を使いたい ad633のダウンロードと設定 乗算器回路とテスト 非線形微分方程式で使ってみました  ３．時定数による変化 積分器のCを可変とするモジュールの作成 ばね‐質量‐ダンパー系 Van_der_pol方程式 Lorenz方程式 Hindmarsh–Rose neuron model
published: July 07, 25
canonical: https://convert.docswell.com/s/m_shimojo/KWVXQY-2025-07-07-090606
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/DJYMR59GJM.jpg)

2025.7.7
Analog Computer –part3
---補足の説明 ---
⚫ 回路モジュール化とサブサーキットについての補足説明です。また、
Programをダウンロードできるようにしました
⚫ 積分器の時定数は時間軸の伸縮のみに影響することを例示しました
Programは下記よりダウンロードできます。
https://github.com/m4881shimojo/LTspice
下
条
誠
電気通信大学名誉教授
https://researchmap.jp/read0072509/
The University of Electro-Communications
https://www.docswell.com/user/m_shimojo
Department of Mechanical Engineering and Intelligent System


# Page. 2

![Page Image](https://bcdn.docswell.com/page/V7NWDNL878.jpg)

はじめに
1. 今回は、すでに公開した「 Analog Computer -part1 」について補
足説明を行います。
2. 補足説明は、part-1で説明不足であった、階層シートとサブサー
キットについてです。
3. また、Programを一部DLできるようにしました。これによりLTspice
を実際に動作させることで、より理解しやすいと思います。
4. なお、LTspiceについては、間違いや誤解があると思います。その点
ご注意ください。
Programは下記よりダウンロードできます。
https://github.com/m4881shimojo/LTspice
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/YJ9XGR4XE3.jpg)

はじめに
この資料は、
Analog Computer -part1
https://www.docswell.com/s/m_shimojo/5P9EN1-2024-06-17-094921
とあわせてご覧ください。
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/GJ82VWQ9JD.jpg)

内 容
１．階層化について
✓ 積分器のモジュール化
✓ パラメータの受け渡し
✓ 回路シンボルとその編集
✓ 積分器モジュールを使ったアナログコンピュータ
２．サブサーキット（subcircuit）
✓ 乗算素子AD633を使いたい
✓ ad633のダウンロードと設定
✓ 乗算器回路とテスト
✓ 非線形微分方程式で使ってみました
３．時定数による変化
✓ 積分器のCを可変とするモジュールの作成
✓ ばね‐質量‐ダンパー系
✓ Van_der_pol方程式
✓ Lorenz方程式
✓ Hindmarsh–Rose neuron model
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/LJL25NXMER.jpg)

1．階層化について
⚫ LTspiceには「階層」があり、回路図を複数の階層構造（レベル）で
設計・管理できます。
⚫ これにより、大規模・複雑な回路を小さなブロック（サブサーキッ
ト）に分割して再利用や整理が可能になります。
例えば、参考資料を下記に示します
https://www.youtube.com/watch?v=wvfyT-OCaCM
https://spiceman.jp/ltspice-hierarchical-circuit-block/
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/47M83XL67W.jpg)

積分器のモジュール化
これは積分器回路モジュール
を表しています
初期値
6
𝑑 2 𝑥(𝑡)
𝑑𝑥(𝑡)
𝑚
+
𝑏
+ 𝑘𝑥(𝑡) = 𝑓(𝑡)
𝑑𝑡 2
𝑑𝑡
𝑚 = 1, 𝑏 = 1Τ5, 𝑘 = 1Τ2 , 𝑖𝑐: 𝑣0 = 1, 𝑥 0 = 2
積分器モジュール
この積分器モジュールの構造は次頁以降に説明します
mass-spring_lv2_real.asc


# Page. 7

![Page Image](https://bcdn.docswell.com/page/P7R5QNKNJ9.jpg)

積分器のモジュール化
モジュールは、
積分器回路と回路シンボルから構成されます
Int_lv2.asc
前頁の積分器モジュールは、積分器回路
と回路シンボルから作ります
積分器回路 ←自分で作る
Int_lv2.asy
積分器回路のモジュール化
自動でできるが
回路のシンボル
7
←編集可能
例えば、参考ビデオを下記に示します
https://www.youtube.com/watch?v=wvfyT-OCaCM


# Page. 8

![Page Image](https://bcdn.docswell.com/page/PJXK5NL87X.jpg)

積分器回路モジュール
8
これが積分器回路です。この回路をモジュール化します
初期値
具体的手順は参考文献を見てください（難しくありません）
INT_lv2 .asc


# Page. 9

![Page Image](https://bcdn.docswell.com/page/3JK56NLL7D.jpg)

パラメータの受け渡し
9
モジュール化した積分器に初期値を受け渡す方法です。
Paramsの紐づけ
右クリック
Int_lv2.asc
積分器の初期値(param)の
受け渡し方法
右図でvol=2とすると、その値が
積分器モジュールへ渡される
mass-spring_lv2_real.asc


# Page. 10

![Page Image](https://bcdn.docswell.com/page/LE3K6V36E5.jpg)

回路シンボルとその編集
右クリック
10
回路シンボルについての説明です
ほぼ自動で作成されます
このmodeで端子を移動
Int_lv2.asy
このmodeで掴み図形を
拡大縮小
無記入状態
編集可能
INT_lv2 .asy


# Page. 11

![Page Image](https://bcdn.docswell.com/page/8ED3V84M7G.jpg)

積分器モジュールと回路シンボル
11
Main回路から右クリックで呼び出せます
呼び出し方法例
Int_lv2.asy
Open Symbol
Int_lv2.asc
Open Schematic
右クリック
実際の回路では回路
BLOCKを右クリックす
ることで表示できます
mass-spring_lv2_real.asc


# Page. 12

![Page Image](https://bcdn.docswell.com/page/V7P4V8MQE8.jpg)

積分器モジュールを使ったアナログコンピュータ
それでは積分器モジュールを使って構成した
アナログコンピュータの例を示します
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/2JVXZN9P7Q.jpg)

ばね‐質量‐ダンパー系
𝑑 2 𝑥(𝑡)
𝑑𝑥(𝑡)
𝑚
+𝑏
+ 𝑘𝑥(𝑡) = 𝑓(𝑡)
𝑑𝑡 2
𝑑𝑡
13
𝑚 = 1, 𝑏 = 1Τ5, 𝑘 = 1Τ2 , 𝑖𝑐: 𝑣0 = 1, 𝑥 0 = 3
出力の時間変化
f(t)
位相面軌道表現
今回行っていない
mass-spring_lv2_real.asc


# Page. 14

![Page Image](https://bcdn.docswell.com/page/5EGV4KZQEL.jpg)

2．サブサーキット（subcircuit）
⚫ サブサーキット（subcircuit）とは、回路の一部を部品のよ
うにまとめて再利用可能にしたものです。
⚫ 複数の素子で構成された回路ブロックに名前と端子を定義し、
1つの部品のように扱うことができます。
.SUBCKT 名前 端子1 端子2 端子3 ...
（中身：回路素子の定義）
.ENDS
14


# Page. 15

![Page Image](https://bcdn.docswell.com/page/4JQ6GNLWJP.jpg)

乗算素子AD633を使いたい
まずAD633のLTspice用の回路(subckt)を製造元
からダウンロードする必要があります
電圧を1/10とする→
乗算素子AD633を利用する
ADD633 4象限 低価格 アナログ乗算器
X1 − X 2 ∗ 𝑌1 − 𝑌2 Τ10 + 𝑍
ADIのAD633は、8-PDIPまたは8-SOICパッケージの4象限アナログ乗算器です。このデバイスは、レー
ザー較正されているため、フルスケールの2%の保証された精度で信頼性と安定性を実現します。10MΩの
高い入力抵抗により、信号源のローディングはごくわずかです。AD633は、変調/復調や電圧コントローラ
の増幅など、高い信頼性と安定した性能を必要とするアプリケーションに最適です。(ANALOG DEVICES)
15


# Page. 16

![Page Image](https://bcdn.docswell.com/page/K7445GD171.jpg)

Subckt(ad633)のダウンロードから
（１）ad633のLTspiceライブラリsubcktファイルをDLする
analogDivice社よりDL
“ad633.cir”をDLで入手→利用するフォルダに格納する
.libなどの場合もある
（２）LTspiceでad633.cirを開く（作成中の回路図(.asc)と同じフォルダにあること）
.SUBCKTにカーソル
を置き、右クリック
右クリック
.SUBCKT
① CREATE SYMBOLを選ぶ
② 次のようのAD633.asyができる
番号でなくX1,X2,Y1,..
となっている場合が多い
自動的にできる
16


# Page. 17

![Page Image](https://bcdn.docswell.com/page/LJ14WDZ5JG.jpg)

ad633の設定
17
(3)番号を回路図の記号に直す
右クリック
大きさ形、文字位置は
変更できる
① 1番□を右クリックする
とウィンドウが現れる
② “X1”と入力
(４)Attributeを直す
始めから名前が付いていた場合、
ピン配列を好みで再配置するだ
けでよい
AttributeでEditorを選ぶ
右クリック
Xとする
ファイル名
•
”.SAUBCKT”の回路を記述してあるファイル名
を入れる。→ad633.cir
•
ただし、Defaultだと絶対番地となる
C:¥Users¥shiXX¥Desktop¥LTSpiceXX¥anaCon_lv2¥ad633.cir
•
これだとフォルダ構造などを変えるとad633
かみつかりませんとERRORがでる
•
このため、相対番地とした→ ”ad633.cir”
このためad633.cirは同じフォルダに入れておくこと！


# Page. 18

![Page Image](https://bcdn.docswell.com/page/GJWX6Y9WE2.jpg)

乗算器回路
例）それでは使ってみましょう
18
Mul_out = 𝑋𝑖𝑛 ∗ 𝑌𝑖𝑛 − 𝑣𝑜𝑙
mul_lv2.asc
mul_lv2.asc


# Page. 19

![Page Image](https://bcdn.docswell.com/page/4EZ6YX92E3.jpg)

乗算器のテスト
19
これは乗算器モジュールに正弦波入力を入力したときの出力結果です
Mul_out = 𝑋𝑖𝑛 ∗ 𝑌𝑖𝑛 + 3
Vol=3とした
Xin
Yin
Mul_lv2_test.asc


# Page. 20

![Page Image](https://bcdn.docswell.com/page/Y762D4D6EV.jpg)

非線形微分方程式で使ってみました
作成した乗算器をVan_der_pol方程式の
シミュレーションで使ってみました
20


# Page. 21

![Page Image](https://bcdn.docswell.com/page/G7523Q3574.jpg)

Van_der_pol方程式
𝑑2 𝑥(𝑡)
𝑑𝑥(𝑡)
𝑚 𝑑𝑡 2 + 𝜇 𝑥 2 − 1 𝑑𝑡 + 𝑥(𝑡) =0
21
𝜇 = 1.5, 𝑖𝑐: 𝑥ሶ 0 = 𝑥 0 ∗ 0.5, 𝑥 0 = 𝑥 0
.step param x0 list 0,0.5…..
𝑥2 − 1
van_der_pol-lv2.asc


# Page. 22

![Page Image](https://bcdn.docswell.com/page/9J24ZPZG7R.jpg)

Van_der_pol方程式
4.0, 2.0
Limit cycle
3.0, 1.5
2.0, 1.0
1.0, 0.5
0.5, 0.25
速度
22
0, 0
𝑑𝑥(𝑡)
𝑑𝑡
変位
𝑥(𝑡)


# Page. 23

![Page Image](https://bcdn.docswell.com/page/DEYMR5RGEM.jpg)

３．時定数による変化
積分回路の時定数(τ=CR)と物理モデルの関係については既に説明注)
しました。この関係を知っていれば、
“時定数は任意でかまいません“
注）
Analog Computer –part2
https://www.docswell.com/s/m_shimojo/K7RY2V-2024-07-31-095902
以下の例は時間軸の伸縮のみです。
これ以外は変化しません
23


# Page. 24

![Page Image](https://bcdn.docswell.com/page/VJNWDND8J8.jpg)

積分器のCを可変とするモジュールの作成
時定数を変更可能にしたモジュールを作りました
その積分器モジュール
Cをパラメータとした積分器
ここを変更すればよい
INT_lv2_u .asc
C容量
Param設定（初めだけでよい）
24


# Page. 25

![Page Image](https://bcdn.docswell.com/page/YE9XGRGX73.jpg)

ばね‐質量‐ダンパー系（RC=1）
25
𝑅𝐶 = 1.0 [𝑠]
Ｃ＝10uF


# Page. 26

![Page Image](https://bcdn.docswell.com/page/GE82VWV9ED.jpg)

時定数による違い
𝑅𝐶 = 1.0 [𝑠]
26
𝑅𝐶 = 0.5 [𝑠]


# Page. 27

![Page Image](https://bcdn.docswell.com/page/LEL25N5M7R.jpg)

Van_der_pol方程式
27


# Page. 28

![Page Image](https://bcdn.docswell.com/page/4JM83X36JW.jpg)

時定数による違い
𝑅𝐶 = 1.0 [𝑠]
28
𝑅𝐶 = 0.5 [𝑠]


# Page. 29

![Page Image](https://bcdn.docswell.com/page/PJR5QNQNE9.jpg)

Lorenz方程式
29
https://ja.wikipedia.org/wiki/ローレンツ方程式


# Page. 30

![Page Image](https://bcdn.docswell.com/page/PEXK5N58JX.jpg)

時定数による違い
𝑅𝐶 = 1.0 [𝑠]
30
𝑅𝐶 = 0.5 [𝑠]


# Page. 31

![Page Image](https://bcdn.docswell.com/page/3EK56N6LJD.jpg)

Hindmarsh–Rose neuron model
hindmarsh_neuron_u .asc
31


# Page. 32

![Page Image](https://bcdn.docswell.com/page/L73K6V6675.jpg)

時定数による違い
𝑅𝐶 = 1.0 [𝑠]
32
𝑅𝐶 = 0.5 [𝑠]
z(t)
膜電位x(t)
y(t)
z(t)は適応電流に相当し、スパイクのたびに増加し、発火率の低下につながる
https://en.wikipedia.org/wiki/Hindmarsh–Rose_model


# Page. 33

![Page Image](https://bcdn.docswell.com/page/87D3V8VMJG.jpg)

おわりに
•
退職後に購入したデスクトップPCのレスポンスが遅く感じられるようになった
ため、新たにPCを購入しました。CPUはCORE ULTRA 5、Memory16GB、
1TB-SSDの今では普通の構成です。
•
それに伴いソフトウェア環境の再構築を行いました。そして、LTspiceを動作さ
せたところ、以前作成した一部のプログラムが動作しません。原因は、サブサー
キットの絶対アドレス設定にありました。このため今回、これらを相対アドレス
設定に変更いたしました。そして、説明不足と指摘されたモジュール構造につい
ての説明を行うことにしました。
•
あわせて、一部LTspiceプログラムの公開を行うことにいたしました。いまだお
かしな箇所もありますが参考になれば幸いです。
Programは下記よりダウンロードできます。
https://github.com/m4881shimojo/LTspice
33


# Page. 34

![Page Image](https://bcdn.docswell.com/page/VJP4V8VQ78.jpg)

34


# Page. 35

![Page Image](https://bcdn.docswell.com/page/2EVXZNZPJQ.jpg)

35


