05.03.2011, 17:40
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus модели
Сообщение от Kabron
|
Вот хотел похвастаться моделью LM1881, но, похоже без великого и могучего Halex07 не разобраться.
|
К сожалению, отсутсвовал некоторое время "уминал" проект с госэкспертизой и было не до Казуса. Ну, все, проект утвердили, теперь включаюсь в работу.
Сообщение от Kabron
|
Что меня смущает еще: при добавлении в модель любого ТТЛ элемента в mdf файле появляется туева хуча ссылок на всевозможные модели
|
Этого и следовало ожидать, ведь я предупреждал - для создания моделей идеально подходят примитивы. "Всовывая" реальный TTL компонент в модель Вы автоматом тащите туда все его свойства, в том числе и прописанные для серии. Общие свойства для различных серий компонентов находятся в файле ITFMOD.MDF, об этом я тоже писал в FAQ. Вот ISIS и "впаривал" Вам в MDF все содержимое этого файла, а там и для логики и для МК - все до кучи. Ненавязчивый аглицкий сервис, так сказать.
Еще один аргумент в пользу примитивов "внутри" модели - они не имеют предустановленных свойств: задержек распространения (переключения), подтяжек к шинам питания и прочей требухи - почти все по умолчанию в нулях. В большинстве случаев это большой плюс. Когда надо, всегда можно включить только нужные свойства и только для конкретного элемента, или группы элементов. Собственно так и сделано у логики в Протеусе. Например, тот же 74HC05.
Код:
|
*MAPPINGS,16,VALUE
74HC04 : TDLHDQ=9n, TDHLDQ=9n, SCHMITT=[NULL], OCOPS=[NULL]
74HC05 : TDLHDQ=11n, TDHLDQ=9n, SCHMITT=[NULL], OCOPS=Q
74HC14 : TDLHDQ=14n, TDHLDQ=14n, SCHMITT=D, OCOPS=[NULL]
74HCT04 : TDLHDQ=11n, TDHLDQ=11n, SCHMITT=[NULL], OCOPS=[NULL]
74HCU04 : TDLHDQ=6n, TDHLDQ=6n, SCHMITT=[NULL], OCOPS=[NULL]
74LS04 : TDLHDQ=9n, TDHLDQ=10n, SCHMITT=[NULL], OCOPS=[NULL]
74LS05 : TDLHDQ=17n, TDHLDQ=15n, SCHMITT=[NULL], OCOPS=Q
74LS14 : TDLHDQ=15n, TDHLDQ=15n, SCHMITT=D, OCOPS=[NULL]
74LS19 : TDLHDQ=13n, TDHLDQ=18n, SCHMITT=[NULL], OCOPS=[NULL]
74S04 : TDLHDQ=3n, TDHLDQ=3n, SCHMITT=[NULL], OCOPS=[NULL]
74S05 : TDLHDQ=5n, TDHLDQ=4.5n, SCHMITT=[NULL], OCOPS=Q
7404 : TDLHDQ=12n, TDHLDQ=8n, SCHMITT=[NULL], OCOPS=[NULL]
7405 : TDLHDQ=40n, TDHLDQ=8n, SCHMITT=[NULL], OCOPS=Q
7406 : TDLHDQ=10n, TDHLDQ=15n, SCHMITT=[NULL], OCOPS=Q
7414 : TDLHDQ=15n, TDHLDQ=15n, SCHMITT=D, OCOPS=[NULL]
7416 : TDLHDQ=10n, TDHLDQ=15n, SCHMITT=[NULL], OCOPS=Q
*MODELDEFS,0
*PARTLIST,1
U3,INVERTER,INVERTER,OCOPS=‹OCOPS›,PRIMITIVE=DIGITAL,SCHMITT=‹SCHMITT›,TDHLDQ=‹TDHLDQ›,TDLHDQ=‹TDLHDQ›,TGQ=‹TGQ› |
В начале торчит карта (текстовый скрипт на дочернем листе модели начинающийся с ON MAP преобразуется при компиляции в *MAPPING - см. FAQ раздел 6.2). Карта общая на все инверторы, в т.ч. и на HC05. В зависимости от имени модели самому инвертору U3 в PARTLIST из нее прописываются те или иные свойства - задержки и т.п. В партлисте они прописаны только для U3, ну он здесь единственный, просто. Если бы за ним торчали еще примитивы, то какой смысл пихать им эти же свойства - плодить задержки, которые и так уже есть. Это было бы некорректно. вместо общей TDLHDQ=11n получили бы еще 11нан на следующем элементе.
Теперь по тому, что предложил vale1
Код:
|
*MODELDEFS,1
LM1881ITF : RSHI=20,RSLO=20,VUD=40%,VTL=15%,VHL=4%,VTH=50%,VHH =4%,V+=VCC,V-=GND |
Тоже "неПОЛИТкорректно" решать так вопрос. То, что написано в *MODELDEFS относится к внешним пинам всей модели, а не ее "унутренних" составляющих. В данном случае и входы и выходы аналоговые, а Вы пхаете им свойства для логики. В тоже время на внутренние элементы эти свойства совсем не влияют.Логичнее было бы сделать так, как в рассмотренном примере для HC05, причем если они не будут меняться то их можно просто нагло задать в свойствах (окно Avanced) конкретного элемента(ов) модели на дочернем листе и они пропишутся в строке партлиста для него при компиляции.
Ну и еще один полезный совет, который несколко "ускорит" обсчет модели симулятором. Нужны ли на выходе чисто аналоговые ключи? Ведь Вы управляете ими по входу цифровым сигналом - "да", "нет" - третьего не дано. VSWITCH - по входу работает как аналоговый компаратор, т.е. ISIS будет просчитывать для него кучу точек (итераций) при симуляции. Там в MIXED примитивах лежит DSWITCH - выход аналоговый, вход управления цифровой. Пример включения на дочернем листе модели ADC0808.DSN в папкеS AMPLES\Graph Based Simulation. Свойства описаны в хелпе по примитивам. Я бы применил его вместо чисто аналогового ключа, да и на входе может есть смысл подумать о применении элементарного одноразрядного примитива ADC из MIXED. И резистор подтяжки после него тогда окажется лишним.
Уф, целый доп. FAQ накарябал, заканчиваю. Удачи!
ЗЫ. Вот побольше бы таких "разборок" на форуме - даже отвечать было приятно, а то канючат через пост - "дайте" да "нет ли у кого".
Последний раз редактировалось Halex07; 05.03.2011 в 17:59.
|
|
|
Эти 4 пользователя(ей) сказали Спасибо Halex07 за это сообщение:
|
|
|
05.03.2011, 18:09
|
|
Частый гость
Регистрация: 21.02.2011
Сообщений: 10
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Proteus модели
Есть ли в протеусе модель термокамеры с термопарой (терморезистором, датчиком температуры)? Если нет, то как можно сделать обратною связь между нагревателем и термодатчиком?
|
|
|
|
05.03.2011, 18:19
|
|
Вид на жительство
Регистрация: 05.09.2007
Адрес: Новороссия ЛНР Рубежное -> РФ Калуга
Сообщений: 360
Сказал спасибо: 10
Сказали Спасибо 73 раз(а) в 58 сообщении(ях)
|
Re: Proteus модели
kvant000 Термопары в библиотеке TRXD
Да! забыл, обратная связь там только вручную.
__________________
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Чем больше слёз тем больше облегчения, в слезах и заключается лечение.
Не зли меня
|
|
|
|
05.03.2011, 19:37
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,588
Сказал спасибо: 704
Сказали Спасибо 4,353 раз(а) в 1,996 сообщении(ях)
|
Re: Proteus модели
Сообщение от Halex07
|
Уф, целый доп. FAQ накарябал, заканчиваю. Удачи!
|
За что огромное спасибо!
|
|
|
|
06.03.2011, 00:18
|
|
Временная регистрация
Регистрация: 06.04.2008
Сообщений: 91
Сказал спасибо: 20
Сказали Спасибо 127 раз(а) в 45 сообщении(ях)
|
Re: Proteus модели
Я такую цель и преследовал.Не затрагивать внутреннюю структуру модели,а показать как организовать цифровой интерфейс при желании.В целом замечание на
будущее полезно.Спасибо!
|
|
|
|
06.03.2011, 10:54
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus модели
Сообщение от kvant000
|
Есть ли в протеусе модель термокамеры с термопарой (терморезистором, датчиком температуры)?
|
Есть, но достаточно примитивная - OVEN. В свойствах нетрудно разобраться самостоятельно.
|
|
|
Сказали "Спасибо" Halex07
|
|
|
07.03.2011, 01:37
|
|
Частый гость
Регистрация: 21.02.2011
Сообщений: 10
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Proteus модели
Спасибо. Работает, простинькая модель, свойств немного, можно менять скорость наврева, а от где задать сопротивления нагревателя не нашол.
|
|
|
|
07.03.2011, 10:12
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus модели
Сообщение от kvant000
|
а от где задать сопротивления нагревателя не нашол.
|
Сопротивления нагревателя как такового там нет. Я ж предупреждал можно управлять даже цифровым сигналом. Если надо имитировать именно аналоговые свойства нагревателя (R спирали) поставьте параллельно входу нужный резистор. Есть только скорость (время) набора мощности от нуля до максимума цветами ив ступенчато в процентах - Heater Time Constant - имитирует инерционность нагревателя и мощность нагревателя Heating Power по умолчанию 1,2кВт. Дальше уже идут непосредственно связанные с температурой (то есть с выходом) параметры, понятные из названия:
Thermal Resistance to Ambient (°C/W) - приращение температуры на Ватт мощности оказыват влияние на скорость реакции системы.
Oven Time Constant (sec.) - иммитирует инерционность всей печки, т.е. некоторое продолжение нагрева, после отключения нагревателя и задержку на остывание.
Temperature coefficient (V/°C) -приращение напряжения на выходе T при изменении температуры
Ну и Ambient Temperature (°C) - начальная температура.
|
|
|
|
07.03.2011, 12:51
|
|
Прописка
Регистрация: 25.08.2007
Сообщений: 193
Сказал спасибо: 11
Сказали Спасибо 57 раз(а) в 33 сообщении(ях)
|
Re: Proteus модели
Сообщение от Halex07
|
Сопротивления нагревателя как такового там нет.
|
Сопротивление нагревателя 1ком плюс внутри OVEN источник ЭДС 1В, который можно скомпенсировать... Кстати, если кто не знает, OVEN можно использовать как холодильник(пиво охладить ), если поменять смещение на противоположное.
Последний раз редактировалось oleg_harp; 07.03.2011 в 15:44.
|
|
|
|
09.03.2011, 01:15
|
|
Прохожий
Регистрация: 23.12.2005
Сообщений: 3
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Proteus модели
Сообщение от Halex07
|
Ну и еще один полезный совет, который несколко "ускорит" обсчет модели симулятором. Нужны ли на выходе чисто аналоговые ключи? Ведь Вы управляете ими по входу цифровым сигналом - "да", "нет" - третьего не дано. VSWITCH - по входу работает как аналоговый компаратор, т.е. ISIS будет просчитывать для него кучу точек (итераций) при симуляции.
|
Я на текущий момент использую 74HC1G14 и меня очень интересует момент, когда входной сигнал уже не нол, но еще не единица - режим генератора. А ищу я ток потребления ИС при напряжениях ниже стандартных. Тут как раз нужно было бы АНАЛОГОВОЕ представление цифровой МС. И чтоб показывало верно ток потребления на данных, нестандартных режимах. А в стандартных моделях даже пина для подачи питания не показано по умолчанию. Где бы поживиться моделями?... В том числе для отечественных РД.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 04:21.
|
|