Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


Ответ
Опции темы

Proteus модели

Непрочитано 15.10.2017, 17:32   #2121
ProtAS-13
Вид на жительство
 
Регистрация: 17.03.2015
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 229 раз(а) в 131 сообщении(ях)
ProtAS-13 на пути к лучшему
По умолчанию Re: Proteus модели

Сообщение от olegprom19 Посмотреть сообщение
реально такой сделать с индикацией разными цветами?
Сообщение от Halex07 Посмотреть сообщение
Как Вы собираетесь реализовать "смешение" цветов в спрайтовой графике?
Реально. Ничего смешивать не надо - просто создать спрайты с разными цветами.
Для примера, см. прикрепленный файл (вырезка из Proteus VSM SDK).
ТС ничего не написал про то, что он собирается моделировать. Если только цифровую часть, то "курить" нужно примитив RTDPROBE в поразрядном (BITWISE) режиме, с обязательным использованием свойства ELEMENT, плюс, думаю, обвязка из дешифратора и простой логики (варианты м.б. разные, в зависимости от вида спрайтов - сегменты по отдельности, либо полная цифра).
Если же еще и аналоговую, то модель усложнится на токозадающие входные цепи.
Все это муторно и долго делать. ТС уверен, что ему это нужно? Что ТС этим добъется, с точки зрения работоспособности схемы?
Вложения:
Тип файла: pdf RTDPROBE.pdf (45.7 Кб, 0 просмотров)
Реклама:
ProtAS-13 вне форума   Ответить с цитированием
Непрочитано 15.10.2017, 19:06   #2122
olegprom19
Прописка
 
Регистрация: 08.04.2017
Сообщений: 100
Сказал спасибо: 40
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
olegprom19 на пути к лучшему
По умолчанию Re: Proteus модели

Будет только вывод цифры (в зависимости от сегментов) и цвета цифры в зависимости от выбранного анода (красный зеленый)
все сегменты в цифре будут одного цвета либо красные либо зеленые
т.е. у сегмента должно быть три состояния выкл, красный, зеленый
(в идеале 4 еще желтый, если оба анода включены)

таких схемы (как вы привели в пдф) должно быть видимо две для каждого катода...
к примеру элемент 0 (сегмент0) привязан к пробнику, ток есть первое состояние элемента, тока нет второе
а у меня должно быть ещё третье состояние когда ток есть на "другом" пробнике, или я чет путаю?!

в индикаторе где две цифры с общим анодом, в принципе реализовано похожее (только вторая цифра отражена рядом) или может там по другому

Последний раз редактировалось olegprom19; 15.10.2017 в 20:31.
olegprom19 вне форума   Ответить с цитированием
Непрочитано 15.10.2017, 22:15   #2123
ProtAS-13
Вид на жительство
 
Регистрация: 17.03.2015
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 229 раз(а) в 131 сообщении(ях)
ProtAS-13 на пути к лучшему
По умолчанию Re: Proteus модели

Сообщение от olegprom19 Посмотреть сообщение
или я чет путаю?!
Похоже разговор глухого со слепым. Чур я буду слепым
Для начала, вообще не хотел отвечать на Ваш самый первый вопрос, т.к. считаю неуважением к собеседнику, когда задается вопрос и даже не удосуживаются приложить datasheet на элемент и более подробно объяснить желаемый результат. Но Вам начали давать советы: от низзья до ..., поэтому не удержался.
Далее, похоже, Вы совершенно не поняли о чем я говорю, поэтому, объясняю с картинками (для сегмента A - остальные по аналогии):
1. Результат работы
2. Спрайты для сегмента A
3. Дочерний лист для сегмента A
З.Ы. Показан только принцип многоцветного индикатора - полярности и другие рюшечки - это уж сами.
Миниатюры:
Нажмите на изображение для увеличения
Название: NARG_0.jpg
Просмотров: 0
Размер:	144.2 Кб
ID:	120160   Нажмите на изображение для увеличения
Название: NARG_1.jpg
Просмотров: 0
Размер:	87.3 Кб
ID:	120161   Нажмите на изображение для увеличения
Название: NARG_2.jpg
Просмотров: 0
Размер:	212.7 Кб
ID:	120162  

ProtAS-13 вне форума   Ответить с цитированием
Непрочитано 16.10.2017, 08:23   #2124
olegprom19
Прописка
 
Регистрация: 08.04.2017
Сообщений: 100
Сказал спасибо: 40
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
olegprom19 на пути к лучшему
По умолчанию Re: Proteus модели

ProtAS-13, спасибо за ответ
логика включения сегментов понятна
у меня сложность с пониманием привязки "логики работы" к сегменту/ам
т.е. как нарисовать сегменты, и создать символы я разобрался
а вот создание dll mdf,

я предполагал 8 символов и 4 состояния у каждого (может rtprobe 4)
так видимо нельзя
в приведенной вами схеме 32символа (по 4 на сегмент) по 2 состояния

Последний раз редактировалось olegprom19; 16.10.2017 в 10:20.
olegprom19 вне форума   Ответить с цитированием
Непрочитано 16.10.2017, 11:52   #2125
OldDriver
Прописка
 
Регистрация: 12.02.2016
Сообщений: 107
Сказал спасибо: 22
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
OldDriver на пути к лучшему
По умолчанию Re: Proteus модели

Доброго дня, коллеги.
Из знатоков VSM SDK кто ни будь может мне помочь?
Непонятки вызывает логика функционирования IDSIMPIN::invert(). На что она влияет?
Исходные данные: Я в setup модуле нашел строку INVERT в параметрах.
Распарсил, нашел имя управляющего пина. Вызвал на нем invert().

И что дальше ? Где еще учитывать надо?
В simulate модуле и ishigh(Pin-›istate()) писал, и Pin-›isactive() все равно как срабатывал при HIGH так и срабатывает, в не зависимости от вызова или не вызова invert().
OldDriver вне форума   Ответить с цитированием
Непрочитано 16.10.2017, 13:09   #2126
TEHb
Почётный гражданин KAZUS.RUN
 
Аватар для TEHb
 
Регистрация: 27.06.2005
Сообщений: 1,387
Сказал спасибо: 19
Сказали Спасибо 210 раз(а) в 156 сообщении(ях)
TEHb на пути к лучшему
По умолчанию Re: Proteus модели

Сообщение от OldDriver Посмотреть сообщение
Непонятки вызывает логика функционирования IDSIMPIN::invert(). На что она влияет?
Она влияет на работу drivebool(), isposedge(), isnegedge()
TEHb вне форума   Ответить с цитированием
Непрочитано 16.10.2017, 13:41   #2127
OldDriver
Прописка
 
Регистрация: 12.02.2016
Сообщений: 107
Сказал спасибо: 22
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
OldDriver на пути к лучшему
По умолчанию Re: Proteus модели

Сообщение от TEHb Посмотреть сообщение
Она влияет на работу drivebool(), isposedge(), isnegedge()
Если пишется примитив "Задержка управляемая напряжением"
Есть цифровой пин EN(КАК в Delay_1), есть пин вход D и пин выход Q

Как методологически правильно написать такую логику?

Код:
// Цифровая компонента. Отработка измененмй входных сигналов.
VOID DVTD::simulate(ABSTIME time, DSIMMODES mode) {
	if (EN_PIN-›isactive()) {	// Если задержка разрешена
		Q_PIN-›setstate(time,
					 ((1 == FrontDelay || 3 == FrontDelay) ? cdelay : 0),
					 ((2 == FrontDelay || 3 == FrontDelay) ? cdelay : 0),
					 DeglitchTime, D_PIN-›istate());
	}
	else Q_PIN-›setstate(time, 0, 0, DeglitchTime, D_PIN-›istate());
}
cdelay и DeglitchTime уже определены.
Как надо написать что бы переключалась полярность разрешающего сигнала. Как это сделано в DELAY_1?
OldDriver вне форума   Ответить с цитированием
Непрочитано 16.10.2017, 14:44   #2128
ProtAS-13
Вид на жительство
 
Регистрация: 17.03.2015
Сообщений: 308
Сказал спасибо: 0
Сказали Спасибо 229 раз(а) в 131 сообщении(ях)
ProtAS-13 на пути к лучшему
По умолчанию Re: Proteus модели

Сообщение от olegprom19 Посмотреть сообщение
я предполагал 8 символов и 4 состояния у каждого (может rtprobe 4)
так видимо нельзя
в приведенной вами схеме 32символа (по 4 на сегмент) по 2 состояния
Что Вы понимаете под символами, а что под состояниями? Сначала следует разобраться в терминологии и основах. Приступим.
За отображение того или иного спрайта отвечает переменная STATE, которая может работать в двух режимах: последовательные состояния и поразрядный (BITWISE) режим.
Спрайты именуются по следующему принципу:
- Для последовательных состояний переменной STATE: ‹основное имя спрайта›_‹номер последовательного состояния, соответствующее переменной STATE›.
Пример: спрайт с номером 7SEG_7 будет выведен на экран при значении STATE равном 7. Спрайт 7SEG_13 - при STATE=13, и т.п. Усвоили?
- Для BITWISE (наш случай) режима: ‹основное имя спрайта›_‹номер разряда в переменной STATE›_‹значение этого разряда (0 или 1)›.
Пример: спрайт с номером NARG_0_0 (пустышка в сегменте A) будет выведен на экран, если разряд 0, переменной STATE равен 0. Спрайт NARG_0_1 (красный сегмент A) будет выведен на экран, если разряд 0, переменной STATE равен 1.
Спрайт NARG_8_0 (пустышка в сегменте A) будет выведен на экран, если разряд 8, переменной STATE равен 0. Спрайт NARG_8_1 (зеленый сегмент A) будет выведен на экран, если разряд 8, переменной STATE равен 1. Усвоили?
Свойство ELEMENT, работающее только в BITWISE режиме, как раз и определяет какой разряд в переменной STATE будет меняться, т.е., при подаче 0 на примитив RTDPROBE, со свойством ELEMENT=0 (LP1) - будет отображаться спрайт (NARG_ELEMENT_VALUE) NARG_0_0, а при подаче 1 - NARG_0_1. Усвоили?
Теперь считаем: у Вас 8 СЕГМЕНТОВ, которые могут отображаться 3-мя цветами, каждый из которых может быть либо включен (отображается цвет), либо выключен (отображается пустышка). Значит, спрайтов должно быть 8сегментов * 3цвета * 2значения = 48.
Очень надеюсь, что понятно объяснил, возможно, не только Вам.
Впрочем все это я уже описывал в своей древнейшей шпаргалке в разделе "Интерактивные примитивы (Real Time Digital Probe)".

Последний раз редактировалось ProtAS-13; 16.10.2017 в 14:46.
ProtAS-13 вне форума   Ответить с цитированием
Сказали "Спасибо" ProtAS-13
olegprom19 (17.10.2017)
Непрочитано 17.10.2017, 12:24   #2129
olegprom19
Прописка
 
Регистрация: 08.04.2017
Сообщений: 100
Сказал спасибо: 40
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
olegprom19 на пути к лучшему
По умолчанию Re: Proteus модели

а пробник rtprobe_4 На выходе дает два значения разряда?
Из FAQ
Сообщение от Halex07 Посмотреть сообщение
Ну и несколько слов о цифровых примитивах RTDPROBE. Однобитные примитивы индикаторов ведут себя предсказуемо: если на входе лог. 0, то соответствующий Target Element (символ) не активизирован, если на входе лог. 1, то он активизирован. В той же папке имеются многовходовые RTDPROBE. Детально я их не исследовал, но при беглой логика входов абсолютно непонятна – что-то похожее на исключающее ИЛИ

Последний раз редактировалось olegprom19; 17.10.2017 в 20:42.
olegprom19 вне форума   Ответить с цитированием
Непрочитано 17.10.2017, 13:02   #2130
OldDriver
Прописка
 
Регистрация: 12.02.2016
Сообщений: 107
Сказал спасибо: 22
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
OldDriver на пути к лучшему
По умолчанию Re: Proteus модели

Доброго дня(ночи), коллеги.
Предлагаю вашему вниманию модель управляемой напряжением задержки.
Модель программная. В архиве находится файл DVTD.dll которую надо положить в папку MODELS. В архиве приложен файл проекта, в правом углу которого расположено УГО и со скриптом описания. До начала симуляции необходимо создать такой элемент.(Выделить УГО и скрипт и 'MAKE Device'. Модель имеет два режима интерполяции диапазона зависимости T(V). Параметр MODE. Режим MODE=SINGLE означает линейную аппроксимацию по 2 точкам VMIN-TMIN, VMAX-TMAX. При значениях V меньше VMIN Т всегда равно TMIN. При значениях V больше VMAX T всегда равно TMAX.
Режим MODE=TABLE означает кусочно-линейную аппроксимацию по таблице значений. Параметр LENGTH=число означает размер задаваемой таблицы соответствий. Сами значения задаются в виде V(номер)=значение и T(номер)=значение.
Важным параметром является параметр DELAY=(UP/DOWN/BOTH) определяющий какие фронты задерживаем.
В проекте приведены два примера описания использования элемента.
В проекте приложен архив исходного кода проекта на VC2015.
Хотелось бы услышать критику. Что не удобно, что идеологически не правильно и прочее.
Миниатюры:
Нажмите на изображение для увеличения
Название: DVTD.png
Просмотров: 0
Размер:	12.0 Кб
ID:	120228  
Вложения:
Тип файла: rar DVTD.rar (33.1 Кб, 0 просмотров)
OldDriver вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
FAQ (ЧаВО) по PROTEUS для начинающих и не только dosikus Proteus 221 07.03.2024 22:45
Proteus: 3D модели Yahman Proteus 50 22.05.2020 16:48
Пример создания цифровой модели 1-wire Debugger for Proteus Lexx09 Proteus 27 21.04.2014 00:41
Создание модели для Proteus k000858 Proteus 1 04.02.2010 14:33
Создание 3-д модели для компонентов Proteus Noble_heart Proteus 10 22.01.2010 23:18


Часовой пояс GMT +4, время: 18:25.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.