Показать сообщение отдельно
Непрочитано 07.02.2010, 06:36   #57
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: FAQ (ЧаВО) по PROTEUS для начинающих и не только.

4.12. Утилиты командной строки для работы с библиотеками SPICE и MDF моделей в Протеусе.
Так как мы уже вплотную занялись изучением моделей компонентов представленных в библиотеках ISIS, настало время познакомиться с несколькими программами, которые представлены в папке \BIN Протеуса и значительно облегчат нам последующую жизнь. Их четыре:
GETMDF.EXE – извлечение *.MDF из библиотек *.LML;
GETSPICE.EXE – извлечение *.MOD из библиотек *.SML;
PUTMDF.EXE – создание (добавление) библиотек *.LML из *.MDF файлов;
PUTSPICE.EXE – создание (добавление) библиотек *.SML из *.MOD файлов;
Это все консольные приложения и запускать их лучше из окна командной строки, чтобы после выполнения можно было проконтролировать результат выполнения, так как запуск из непосредственно из под Винды приведет к атоматическому закрытию окна и Вы не успеете отследить – что сделала утилита. Для тех, кто с компьютера «сдувает пыль» напоминаю, что в WinXP Командная строка (по другому Консоль или сеанс DOS) находится во вкладке Стандартные через ПУСК -› Все программы. Для того, чтобы не прописывать вручную длинные пути рекомендую данные утилиты скопировать в отдельную папку, размещенную в корневом каталоге любого жесткого диска. В примерах ниже я разместил их на F:\ProtUtil. Так как эти программы «самодостаточны», то кроме них туда будем копировать для «разборки» только файлы соответствующих библиотек.
Поскольку я, как и многие программисты – в меру ленив, то создал простейший командный файл Consol.bat, который запускает сеанс DOS и выводит меня в нужный каталог, а на Рабочий стол поместил ярлык с путем к этому файлу. Содержание файла самое тупое и для варианта с диском F: выглядит так:
Код:
@ECHO OFF
REM Открываем консоль DOS для WinXP на диске С: выглядит так:
C:\WINDOWS\SYSTEM32\CMD.EXE
REM Переходим на нужный диск в данном случае на F:
F:
REM Переходим в нужный каталог (папку) в данном случае ProtUtil
CD \ProtUtil\

Я нарочно расписал все поподробнее и в разных строках, чтобы легко было сообразить – где поправить под себя.Конечно, можно усовершенствовать данный «шедевр»: ввести выбор запускаемой утилиты и добавить запуск утилит с требуемыми ключами. Может на досуге и сделаю, если не одолеет все та же лень. Для наших целей пока сойдет и так. Результатом выполнения этого файла, созданного в текстовом формате (Notepad/Блокнот) и измененным расширением (.TXT меняем на .BAT) будет открытие командной консоли и переход в нужный каталог. После чего если ввести имя файла утилиты без ключей выскочит соответствующая подсказка (Рис. 80 ).
В данном случае имя утилиты getspice введено вручную (вводить можно и строчными и прописными буквами - для DOS это не существенно). Я умышленно не ввел никаких ключей и после нажатия клавиши Enter получил подсказку по необходимым ключам.
Полезный совет для «чайников» в консольных программах. После выхода в ожидание ввода (нижняя строка на рисунке 80) чтобы не набирать тест повторно можно воспользоваться клавишами навигации стрелка вверх / стрелка вниз на дополнительной клавиатуре для повтора нужного ввода. Если было введено несколько команд, их можно будет пролистать, выбрать нужный ввод и скорректировать параметры. Этот выбор действует только в пределах данного сеанса, т.е. после закрытия консольного окна кликом по кресту Х вверху справа введенные данные будут уничтожены и при следующем запуске недоступны.
В моем примере на Рис. 80 нажатие клавиши стрелка вверх вызовет повторное появление строки getspice, но теперь я добавлю нужные ключи в конце строки.
-L= ‹libname› – имя распаковываемой библиотеки *.LML (если не указан, то ищется PROSPICE.SML).
-F=‹modname› – имя файла, в котором будут сохранены извлекаемый компоненты (если ключ не введен, то модели будут сохранены в одномиенный с libname файл, но с расширением .MOD) .
-A – извлекает все модели из указанной библиотеки.
-D – стирает модели в библиотеке.
Так как в следующем разделе мы будем рассматривать модели диодов, то я, преследуя свои «шкурные интересы» изложения материала, хочу достать SPICE- модель столь популярного у нас в России выпрямительного диода 1N4007. Чтобы определить - где ее искать, выберем 1N4007 (именно со SPICE-моделью! Не перепутайте, там есть еще примитив) из библиотеки ISIS, поместим его в проект и в свойствах включим флаг Edit all Properties as Text. Имя библиотеки будет видно в соответствующей строке (Рис. 81 ).
Теперь копируем файл DIODESINC.SML из папки \MODELS\ Протеуса в нашу папку и запускаем извлечение моделей с соответствующими ключами (Рис.82 ).
В данном случае я стрелкой вверх вызвал повтор команды getspice, но добавил к ней два ключа. Результатом будет извлечение всех моделей из библиотеки DIODESINC.SML в файл DIODESINC.MOD. Этот файл затем можно открыть в любом текстовом редакторе и найти там интересующую нас модель, воспользовавшись поиском. К сожалению, GETSPICE в отличие от GETMDF не раскладывает файлы при извлечении в отдельные, а просто разделяет их в текстовом файле пустыми строками. Итак, если все набрано правильно, наше окно прокрутилось, показав отчет об извлечении файлов, после чего его можно благополучно закрыть.
Полученный файл DIODESINC.MOD открываем в любом текстовом редакторе и находим поиском текст 1N4007 строки будут выглядеть как показано ниже:
Код:
*Object DIODESINC.SML/1N4007
.MODEL 1N4007 D  ( IS=76.9P RS=42.0M BV=1.00K IBV=5.00U CJO=26.5P  M=0.333 N=1.45 TT=4.32U )
Собственно вторая строка, начинающаяся с обязательной точки, и есть SPICE запись параметров нашей модели диода. Копируем ее в отдельный текстовый файл, даем ему название 1N4007.MOD и сохраняем SPICE-модель для отдельно взятого диода.
Аналогично ведет себя и утилита GETMDF, но работает она уже с библиотеками .LML. На Рис. 83 приведен пример извлечения с помощью ее моделей из библиотеки ANALOG.LML. Каждая модель в данном случае извлекается в отдельный файл с именем модели. После этого их также можно просматривать и править в текстовом редакторе. Именно так я «добыл» модель трансформатора в предыдущем разделе. Полученные при этом файлы .MDF - Model Description Format (формат описания модели) также можно открыть в любом текстовом редакторе. По своей структуре они практически совпадают с файлами списка цепей .SDF, которые мы рассматривали здесь ранее в разделе 4.4.
На следующем рисунке (Рис. 84) представлен запуск утилит PUTSPICE.EXE и PUTMDF.EXE без дополнительных ключей для получения подсказок. Как видно из рисунка, ключи у них по назначению совпадают, поэтому разберем на примере PUTSPICE.
-L= ‹libname› – как и у предыдущих утилит служит для задания имени библиотеки .SML или .LML, которая создается или в которую добавляются файлы.
-C[=n] – служит для создания новой библиотеки с именем ‹libname› и опционально заданным количеством элементов n. Если n не указано, то создается пустая библиотека, если указано то с резервированием на n элементов. На что здесь хочется обратить внимание. Если создана библиотека из 10 элементов, то в ней может находится не более этого количества, меньше – сколько хотите. При попытке добавить 11-й элемент Вы получите сообщениие Library is Full и элемент не добавится, поэтому при создании библиотеки лучше перестраховаться и задать n чуть больше, чем нужно, но и злоупотреблять не стоит – экономьте дисковое пространство.
-D – удаляет исходные файлы с диска при помещении их в библиотеку.
На Рис. 85 приведены примеры операций с утилитой PUTSPICE.EXE. Если кого-то смущает, что на последних двух картинках вместо диска F: указан диск E:, то это лишь потому, что данные иллюстрации делались на моем рабочем компе, а там на F: у меня сидит Линь. Поэтому пришлось задействовать Е:. Надеюсь, особых затруднений этот материал у Вас не вызвал, а в дальнейшем он послужит хорошим пособием для создания собственных моделей и библиотек.
Рисунки 80, 81, 82
Рисунки 83, 84, 85
Миниатюры:
Нажмите на изображение для увеличения
Название: Pic_80.gif
Просмотров: 641
Размер:	8.8 Кб
ID:	4364   Нажмите на изображение для увеличения
Название: Pic_81.gif
Просмотров: 653
Размер:	14.4 Кб
ID:	4365   Нажмите на изображение для увеличения
Название: Pic_82.gif
Просмотров: 603
Размер:	9.5 Кб
ID:	4366  

Нажмите на изображение для увеличения
Название: Pic_83.gif
Просмотров: 644
Размер:	18.5 Кб
ID:	4367   Нажмите на изображение для увеличения
Название: Pic_84.gif
Просмотров: 605
Размер:	12.7 Кб
ID:	4368   Нажмите на изображение для увеличения
Название: Pic_85.gif
Просмотров: 674
Размер:	16.6 Кб
ID:	4369  


Последний раз редактировалось Halex07; 07.08.2010 в 10:48.
Halex07 вне форума   Ответить с цитированием
Эти 22 пользователя(ей) сказали Спасибо Halex07 за это сообщение:
ABrej (06.04.2010), avr123-nm-ru (12.04.2010), bozhko (07.02.2010), Chettuser (18.07.2010), Jorjick (08.02.2010), kuksin (15.02.2010), majorka65 (17.02.2010), nanogul (18.02.2010), Old_Monster (29.11.2011), OrangeMale (05.05.2012), ReLe1 (14.08.2011), sa502 (07.02.2010), stan.kot-79 (03.06.2023), Tischon (21.01.2011), Traan (16.09.2013), ValBag (19.02.2010), VooVoo (20.12.2014), ДимаК (21.06.2011)