ngspice трудности с чтением модели диода

Я новичок в SPICE, и поскольку мне нравится использовать программное обеспечение с открытым исходным кодом, я попробовал ngspice. У меня есть простая схема с несколькими резисторами, одним конденсатором и одним диодом. Мой код в .cir-файле выглядит так:

      Simulation of pushbutton for wake and wifi request

* Models  
  .include 1N4148.txt

* Netlist  
  V1 vcc GND 3.3
  C1 vcc gpio14 5u
  R1 vcc gpio14 10k
  R2 gpio14 Din 220R
  D1 Din Dout 1N4148
  V2 Dout GND 3.3 dc 0 pulse (0 3.3 1u 1u 1u 1 1)

* analysis  
  .control
  tran 50u 200m

plot vcc rst

.endc
.end

Найденная в инете модель диода выглядит так (в txt-файле 1N4148):

      ******************************************
*1N4148  
*VRRM = 100V  
*IFRM = 450 mA   
*trr  = 4ns  
*  
*Package: SOD 27  
*  
*Package Pin 1 : Cathode  
*Package Pin 2 : Anode  
*  
*Simulator: PSPICE  
*  
******************************************  
*
.SUBCKT 1N4148 1 2   
*
* The resistor R1 does not reflect   
* a physical device. Instead it  
* improves modeling in the reverse  
* mode of operation.  
*  
R1 1 2 5.827E+9   
D1 1 2 1N4148  
*
.MODEL 1N4148 D   
+ IS = 4.352E-9   
+ N = 1.906  
+ BV = 110  
+ IBV = 0.0001  
+ RS = 0.6458  
+ CJO = 7.048E-13  
+ VJ = 0.869   
+ M = 0.03  
+ FC = 0.5  
+ TT = 3.48E-9   
.ENDS

Вывод в ngspice:

      Note: Compatibility modes selected: ps a

warning, can't find model 'd' from line
    d1 din dout 1n4148 d

Circuit: simulation of bushbutton for wake and wifi request

Error on line 11 or its substitute:
  d1 din dout 1n4148 d
could not find a valid modelname
    Simulation interrupted due to error!

Я не понимаю, как правильно реализовать включенную модель, и, честно говоря, я не могу найти хороший учебник в виде текста или видео. Так что, возможно, что-то не так в моем списке соединений, или в моей модели, или в моем файле инициализации ().

Мне очень нравится получать подсказки по моей проблеме или хороший учебник с описанием комбинации определения модели и определения списка соединений. (возможно, мой английский не достаточно хорош, но и руководство пользователя мне не помогло)

Для лучшего понимания я попытался использовать разные названия моделей и типов и попытался использовать их перед линией диода, например
илии так далее. Перепробовал много комбинаций....

1 ответ

Ваша модель диода представляет собой модель подсхемы, которая начинается с токена .subckt и заканчивается токеном .ends.

Модель подсхемы создается линией X (см. руководство Ngspice, глава 2.5).

Таким образом, диодная линия будет читать

      XD 1 2 1N4148

где 1 — анод, 2 — катод (напротив номера вывода на упаковке, действительно очень запутанный в файле модели).

Другие модели диодов 1N4148 из Интернета используют строку .model, например

      .model 1N4148 D (...)

Только эти модели из строки .model создаются с помощью

      D1 1 2 1N4148
Другие вопросы по тегам